@vellumai/web 0.10.9-dev.202607162023.cfcbc5d → 0.10.9-staging.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (434) hide show
  1. package/dist/assets/{AnimatePresence-DqW6iWlh.js → AnimatePresence-TZWSGjkI.js} +1 -1
  2. package/dist/assets/{BundleConfirmPage-CQYO7UBl.js → BundleConfirmPage-C02c50EO.js} +1 -1
  3. package/dist/assets/{Combination-BJXmG5wD.js → Combination-Cd_aWAsj.js} +1 -1
  4. package/dist/assets/{a2a-invite-BgcNY6-0.js → a2a-invite-BgVgm24S.js} +1 -1
  5. package/dist/assets/{about-page-XGv9RAQu.js → about-page-vayMMPxH.js} +1 -1
  6. package/dist/assets/{account-page-CCZpTHv1.js → account-page-BYVwf7xV.js} +1 -1
  7. package/dist/assets/{account-shell-CMUnYZ1B.js → account-shell-DaECsri2.js} +1 -1
  8. package/dist/assets/{acp-run-detail-panel-_lrMbea8.js → acp-run-detail-panel-D7Shyx6k.js} +4 -4
  9. package/dist/assets/activity-steps-panel-CuI8SWWZ.js +1 -0
  10. package/dist/assets/{add-credits-modal-ByK3VreF.js → add-credits-modal-B2t4geb6.js} +1 -1
  11. package/dist/assets/advanced-page-MbQr5gTH.js +1 -0
  12. package/dist/assets/ai-page-BbtSlOOr.js +1 -0
  13. package/dist/assets/animated-avatar-DMwzREGQ.js +1 -0
  14. package/dist/assets/{api-DZe5KrFW.js → api-D2xHldt2.js} +1 -1
  15. package/dist/assets/api-DHuLwcqq.js +1 -0
  16. package/dist/assets/{api-key-screen-I0bww5Lq.js → api-key-screen--mSD5piK.js} +1 -1
  17. package/dist/assets/archive-0aqysuyd.js +1 -0
  18. package/dist/assets/archive-page-Y2o3PaeP.js +1 -0
  19. package/dist/assets/arrow-left-DI9551VI.js +1 -0
  20. package/dist/assets/{assistant-feature-flag-store-Em1V67lp.js → assistant-feature-flag-store-4edQKaeq.js} +1 -1
  21. package/dist/assets/assistant-identity-store-CX03CK8q.js +1 -0
  22. package/dist/assets/assistant-status-panel-CdoOjV0m.js +1 -0
  23. package/dist/assets/auth-store-B8a9KLUt.js +2 -0
  24. package/dist/assets/background-task-detail-panel-Dj6SWg-M.js +1 -0
  25. package/dist/assets/ban-CVKGuUAQ.js +1 -0
  26. package/dist/assets/{bell-V9BYKY__.js → bell-BQLonLMp.js} +1 -1
  27. package/dist/assets/billing-page-BAtqAcvw.js +3 -0
  28. package/dist/assets/{bookmark-CjHh36q4.js → bookmark-CNrithFf.js} +1 -1
  29. package/dist/assets/{bookmarks-page-CcR6dcce.js → bookmarks-page-BdcQABPJ.js} +1 -1
  30. package/dist/assets/{brain-Ci5ws6Wl.js → brain-BLDXGaUy.js} +1 -1
  31. package/dist/assets/browser-WjU02SUS.js +2 -0
  32. package/dist/assets/{bug-BMI_6ziD.js → bug-BsuQ5ciQ.js} +1 -1
  33. package/dist/assets/{build-state-CpukAixd.js → build-state-CTWX014G.js} +1 -1
  34. package/dist/assets/button-amTXFI-2.js +1 -0
  35. package/dist/assets/calendar-h-mv1itX.js +1 -0
  36. package/dist/assets/card-Bv5O5juh.js +1 -0
  37. package/dist/assets/channels-page-route-DoG1IfDg.js +9 -0
  38. package/dist/assets/chat-0L0NBUcq.js +1 -0
  39. package/dist/assets/chat-markdown-message-B6ba9Nea.js +2 -0
  40. package/dist/assets/check-DFNrQERi.js +1 -0
  41. package/dist/assets/checkbox-EdyezNqo.js +1 -0
  42. package/dist/assets/{chevron-down-DwIPfcCg.js → chevron-down-qD-re7AW.js} +1 -1
  43. package/dist/assets/chevron-left-BMF1xNfR.js +1 -0
  44. package/dist/assets/chevron-right-DqqmezXC.js +1 -0
  45. package/dist/assets/{chevron-up-B8xt61zY.js → chevron-up-3jCod9LW.js} +1 -1
  46. package/dist/assets/{chunk-5KNZJZUH-SU6Q_tDT.js → chunk-5KNZJZUH-DdS6bb-3.js} +1 -1
  47. package/dist/assets/{circle-alert-_RJjkRGu.js → circle-alert-zOqdmf25.js} +1 -1
  48. package/dist/assets/circle-check-VSiny8yl.js +1 -0
  49. package/dist/assets/{client-feature-flag-store-DHTSpK-i.js → client-feature-flag-store-Bm7cFUky.js} +1 -1
  50. package/dist/assets/{client-identity-QIUgW_5B.js → client-identity-C5bng1El.js} +1 -1
  51. package/dist/assets/{clipboard-copy-sWUyFbCT.js → clipboard-copy-DF6K1xc6.js} +1 -1
  52. package/dist/assets/{cloud-off-Cj66Ozsp.js → cloud-off-Db1nySkc.js} +1 -1
  53. package/dist/assets/cn-C36Yvcac.js +1 -0
  54. package/dist/assets/code-Czx7d7SK.js +1 -0
  55. package/dist/assets/{command-palette-C_DIgz5Q.js → command-palette-3Kt4aKqv.js} +1 -1
  56. package/dist/assets/{command-palette-window-page-gW0wAaqm.js → command-palette-window-page-Ce_JAimQ.js} +1 -1
  57. package/dist/assets/community-page-BwkGsQOO.js +1 -0
  58. package/dist/assets/composer-focus-8EISjLd_.js +1 -0
  59. package/dist/assets/{confirm-dialog-kE8y7s20.js → confirm-dialog-CSkhRFRk.js} +1 -1
  60. package/dist/assets/{connect-page-B_EAqO2L.js → connect-page-GobyNuEq.js} +1 -1
  61. package/dist/assets/{consent-controls-BKoyAFQL.js → consent-controls-C7ZF8P6y.js} +1 -1
  62. package/dist/assets/{contacts-gateway-MdTfmafh.js → contacts-gateway-DfyjoqNo.js} +1 -1
  63. package/dist/assets/contacts-page-route-mJdb0p-P.js +1 -0
  64. package/dist/assets/conversation-list-fetchers-_PUdRqRZ.js +1 -0
  65. package/dist/assets/conversation-selection-CfSCgJxD.js +1 -0
  66. package/dist/assets/copy-Cn1FKrEp.js +1 -0
  67. package/dist/assets/{cpu-CEyjQpZz.js → cpu-BJuB2Khn.js} +1 -1
  68. package/dist/assets/{credential-entry-page-DFpp1yyh.js → credential-entry-page-CRTZY2VD.js} +1 -1
  69. package/dist/assets/credentials-page-D7wWekUv.js +1 -0
  70. package/dist/assets/{credit-card-BY-vD21O.js → credit-card-BuyWdO9t.js} +1 -1
  71. package/dist/assets/danger-zone-redirect-page-BwbAORqw.js +1 -0
  72. package/dist/assets/debug-page-b1M-_rZF.js +4 -0
  73. package/dist/assets/{deploy-dialogs-B3xWKJ80.js → deploy-dialogs-3Mkwr6Lr.js} +1 -1
  74. package/dist/assets/detail-card-GPqFZVmX.js +1 -0
  75. package/dist/assets/{detail-panel-stop-button-D3RATpA-.js → detail-panel-stop-button-B89ORnF4.js} +1 -1
  76. package/dist/assets/developer-page-BepHaWqd.js +1 -0
  77. package/dist/assets/{device-settings-DXp9L4iB.js → device-settings-BBwtGKJb.js} +1 -1
  78. package/dist/assets/devices-page-Bvgt1Qx3.js +1 -0
  79. package/dist/assets/{diagnostics-7I2vE_qb.js → diagnostics-BjIFTbZd.js} +1 -1
  80. package/dist/assets/{dictation-overlay-page-BRyRajlm.js → dictation-overlay-page-DlScWKYV.js} +1 -1
  81. package/dist/assets/dist-BItmZQO6.js +1 -0
  82. package/dist/assets/{dist-Btg1osd6.js → dist-CxHeCOEv.js} +1 -1
  83. package/dist/assets/{dist-CxzJhU4a.js → dist-DqmYHxdg.js} +1 -1
  84. package/dist/assets/{dist-URk13ITj.js → dist-HJ505Xnn.js} +1 -1
  85. package/dist/assets/document-viewer-page-7mbMVgWm.js +1 -0
  86. package/dist/assets/{domain-field-DKKi4dF-.js → domain-field-C5a2iMot.js} +1 -1
  87. package/dist/assets/{download-B6XjnEzx.js → download-CAuK-nZ6.js} +1 -1
  88. package/dist/assets/dropdown-ByHOpeOU.js +1 -0
  89. package/dist/assets/earn-credits-modal-BLyGdcsU.js +1 -0
  90. package/dist/assets/effective-timezone-DYvVVpXt.js +1 -0
  91. package/dist/assets/emails-page-kA5rCqOM.js +1 -0
  92. package/dist/assets/esm-B0Io_iMT.js +2 -0
  93. package/dist/assets/esm-BgQ9CqZD.js +2 -0
  94. package/dist/assets/esm-C9MocOv0.js +2 -0
  95. package/dist/assets/esm-CWRflJ6T.js +2 -0
  96. package/dist/assets/esm-D_FdLNK8.js +1 -0
  97. package/dist/assets/esm-bqqA92jW.js +2 -0
  98. package/dist/assets/esm-k-oyYh2U.js +2 -0
  99. package/dist/assets/{external-link-Cczz6xJ4.js → external-link-Dqpx9nRm.js} +1 -1
  100. package/dist/assets/feature-flag-catalog-CM5COdiW.js +1 -0
  101. package/dist/assets/{file-C8pjlmtk.js → file-DsyJLS2u.js} +1 -1
  102. package/dist/assets/file-editor-CgjwckHX.js +1 -0
  103. package/dist/assets/file-markdown-ZKvQUuGy.js +2 -0
  104. package/dist/assets/{file-text-DA128T4K.js → file-text-CYJz-GvF.js} +1 -1
  105. package/dist/assets/format-date-cTplgJ8P.js +1 -0
  106. package/dist/assets/general-page-yhD_Wuar.js +1 -0
  107. package/dist/assets/{globe-inD5tOKN.js → globe-4qSOWE2N.js} +1 -1
  108. package/dist/assets/{haptics-DcKMA71D.js → haptics-Dgz3Ixf7.js} +2 -2
  109. package/dist/assets/{hard-drive-BXh9qCfi.js → hard-drive-rDxhoRUm.js} +1 -1
  110. package/dist/assets/hatching-screen-trN-MWFq.js +1 -0
  111. package/dist/assets/home-page-route-CmuFehkr.js +1 -0
  112. package/dist/assets/{hosting-screen-CfNJYjlS.js → hosting-screen-Cxg-qKjE.js} +1 -1
  113. package/dist/assets/identity-page-route-CEUFy067.js +1 -0
  114. package/dist/assets/impersonate-version-flag-BhxfH6iZ.js +1 -0
  115. package/dist/assets/index-CkKSY1-Q.js +209 -0
  116. package/dist/assets/index-CnqTir5A.css +2 -0
  117. package/dist/assets/{info-DLFMsCl-.js → info-DsOyuMO9.js} +1 -1
  118. package/dist/assets/input-CoUmPnRU.js +1 -0
  119. package/dist/assets/{inspect-page-CfY2ujI9.js → inspect-page-T3Y4-Vmv.js} +4 -4
  120. package/dist/assets/integrations-page-Ock6mFN1.js +1 -0
  121. package/dist/assets/intelligence-layout-DzdGg3IO.js +1 -0
  122. package/dist/assets/{key-round-BggUE1Ns.js → key-round-CD3JWrs1.js} +1 -1
  123. package/dist/assets/keyboard-shortcuts-page-CG1twx2C.js +1 -0
  124. package/dist/assets/library-detail-page-C2iWMOjx.js +1 -0
  125. package/dist/assets/library-page-BC0GGthr.js +1 -0
  126. package/dist/assets/{link-2-YnZe-oMg.js → link-2-4bMylQ5v.js} +1 -1
  127. package/dist/assets/list-row-D5MFdbkH.js +1 -0
  128. package/dist/assets/llm-dimension-Tz2Fx8qB.js +1 -0
  129. package/dist/assets/loader-circle-Cz7opInR.js +1 -0
  130. package/dist/assets/{local-mode-BPFvxPXz.js → local-mode-Bskd5bsT.js} +2 -2
  131. package/dist/assets/local-settings-lVNyIOJ_.js +1 -0
  132. package/dist/assets/{log-in-Xv-AVlu8.js → log-in--aqELu3z.js} +1 -1
  133. package/dist/assets/{login-flow-Btlym91C.js → login-flow-DdiUXQhA.js} +1 -1
  134. package/dist/assets/login-page-CGmLnOmi.js +1 -0
  135. package/dist/assets/{logout-page-B6cf9X3l.js → logout-page-4e8K14KD.js} +1 -1
  136. package/dist/assets/logs-layout-wJKzizjg.js +1 -0
  137. package/dist/assets/{memory-router-playground-page-Butejuyj.js → memory-router-playground-page-FZC-VIVr.js} +1 -1
  138. package/dist/assets/menu-Dy5QbnTj.js +1 -0
  139. package/dist/assets/messages-BnurE-6y.js +13 -0
  140. package/dist/assets/{metric-card-BL3uTxnv.js → metric-card-cvhtzRdM.js} +1 -1
  141. package/dist/assets/middleware-pbPQ0upo.js +1 -0
  142. package/dist/assets/{minimize-2-B8VHIj-G.js → minimize-2-Clnet2W7.js} +1 -1
  143. package/dist/assets/{misc-D0u5tzSd.js → misc-DnHIYCE9.js} +1 -1
  144. package/dist/assets/{mobile-sidebar-drawer-Cp2poD2Q.js → mobile-sidebar-drawer-BN_mMpOa.js} +1 -1
  145. package/dist/assets/modal-D5nLWNN9.js +1 -0
  146. package/dist/assets/{monitor-Cy7Q70-7.js → monitor-DfbL8_59.js} +1 -1
  147. package/dist/assets/{moon-jDX7sipq.js → moon-B8qiwjrW.js} +1 -1
  148. package/dist/assets/mutation-error-Bk_4pjgm.js +1 -0
  149. package/dist/assets/{native-biometric-D5yxuTSN.js → native-biometric-Dy5Vb7o0.js} +1 -1
  150. package/dist/assets/native-file-H6DBFhbO.js +2 -0
  151. package/dist/assets/notice-DkcNAP8O.js +1 -0
  152. package/dist/assets/notifications-page-D8wbor2x.js +1 -0
  153. package/dist/assets/{oauth-complete-page-C5fVZrbG.js → oauth-complete-page-Ce1AmHXp.js} +1 -1
  154. package/dist/assets/{oauth-popup-complete-page-CU1OWA7c.js → oauth-popup-complete-page-M9ID8MBR.js} +1 -1
  155. package/dist/assets/page-shell-1qU5DIUF.js +1 -0
  156. package/dist/assets/{pairing-page-AOzsN6ID.js → pairing-page-COwbBOrn.js} +1 -1
  157. package/dist/assets/panel-item-CouW2A55.js +1 -0
  158. package/dist/assets/password-reset-page-DfUZ0wSh.js +1 -0
  159. package/dist/assets/{pencil-BOTCmXXR.js → pencil-CUIr0IFo.js} +1 -1
  160. package/dist/assets/platform-detection-DJWRuZPt.js +1 -0
  161. package/dist/assets/{platform-loopback-page-CdI4JgOZ.js → platform-loopback-page-MtmBE9rf.js} +1 -1
  162. package/dist/assets/{plugin-detail-page-Dhg5mNZ7.js → plugin-detail-page-jrt28WVX.js} +1 -1
  163. package/dist/assets/plugins-page-BkFE86Ch.js +1 -0
  164. package/dist/assets/plugins-surface-B3Ro34dC.js +1 -0
  165. package/dist/assets/plus-DItfr5ux.js +1 -0
  166. package/dist/assets/popover-CFL4WZTr.js +1 -0
  167. package/dist/assets/prechat-BBwYr5Qb.js +1 -0
  168. package/dist/assets/prechat-names-Cjl3JzzN.js +1 -0
  169. package/dist/assets/prechat-route-CyUlbfqD.js +1 -0
  170. package/dist/assets/prefs-BLNqdDWZ.js +1 -0
  171. package/dist/assets/privacy-page-DD2N7jR3.js +1 -0
  172. package/dist/assets/privacy-screen-CiInQmTP.js +1 -0
  173. package/dist/assets/progress-bar-Ca8gmE3B.js +1 -0
  174. package/dist/assets/{provider-callback-page-qq15ztlr.js → provider-callback-page-apRb9-js.js} +1 -1
  175. package/dist/assets/{provider-key-DqjTE9QV.js → provider-key-B-hx1r3c.js} +1 -1
  176. package/dist/assets/{provider-signup-page-C-pmI_mG.js → provider-signup-page-ajKQp8fF.js} +1 -1
  177. package/dist/assets/{quick-input-page-joZ1snmq.js → quick-input-page-Bfry352-.js} +1 -1
  178. package/dist/assets/react-query.gen-GVQbBTEp.js +1 -0
  179. package/dist/assets/react-query.gen-LsPzqPq6.js +1 -0
  180. package/dist/assets/{refresh-cw-BkscUrbN.js → refresh-cw-DevIHL7J.js} +1 -1
  181. package/dist/assets/{remote-gateway-session-CT3EVXMA.js → remote-gateway-session-CBKZhJak.js} +1 -1
  182. package/dist/assets/{repeat-BRYsTqh_.js → repeat-C8Im6j--.js} +1 -1
  183. package/dist/assets/research-mock-page-D_q1_UFd.js +1 -0
  184. package/dist/assets/research-onboarding-route-CWQvTAZs.js +63 -0
  185. package/dist/assets/{resize-errors-yH10K9Qq.js → resize-errors-DqIkO0UI.js} +1 -1
  186. package/dist/assets/{resolved-assistants-store-CVjq_nhD.js → resolved-assistants-store-DAzPZ1eV.js} +1 -1
  187. package/dist/assets/review-terms-screen-DQscfsQA.js +1 -0
  188. package/dist/assets/{risk-C5kUSSLu.js → risk-CGuJt8eV.js} +1 -1
  189. package/dist/assets/routes-DYcJgn9k.js +1 -0
  190. package/dist/assets/save-aD5JFIZf.js +1 -0
  191. package/dist/assets/schedules-Dz6392n3.js +1 -0
  192. package/dist/assets/{sdk.gen-C9GJEKYV.js → sdk.gen-CFgJ4K6f.js} +1 -1
  193. package/dist/assets/sdk.gen-CmKfVpgB.js +1 -0
  194. package/dist/assets/security-page-PDmclL0z.js +1 -0
  195. package/dist/assets/select-assistant-screen-NbYyB8gd.js +1 -0
  196. package/dist/assets/{setting-row-BrTO4FAb.js → setting-row-imtQqr9o.js} +1 -1
  197. package/dist/assets/settings-layout-CXwmK0bq.js +1 -0
  198. package/dist/assets/share-feedback-modal-8FYv2LvY.js +1 -0
  199. package/dist/assets/shortcut-keys-B2EE-634.js +1 -0
  200. package/dist/assets/{sidebar-tree-Cs6cFnG2.js → sidebar-tree-DXcgyQSp.js} +1 -1
  201. package/dist/assets/{signup-page-E1B2kmMT.js → signup-page-7ln71c_p.js} +1 -1
  202. package/dist/assets/{signup-shell-CXHoTWnE.js → signup-shell-DCGARCES.js} +1 -1
  203. package/dist/assets/site-favicon-BXY4qlvA.js +1 -0
  204. package/dist/assets/skill-detail-page-D-KI1GRv.js +1 -0
  205. package/dist/assets/{skill-detail-panel-7sTZP8ra.js → skill-detail-panel-B6dgeIjw.js} +1 -1
  206. package/dist/assets/skill-icon-CgzIQCTT.js +1 -0
  207. package/dist/assets/{skills-DB0adgHl.js → skills-D0rhLW1_.js} +1 -1
  208. package/dist/assets/skills-page-BANGKYGT.js +1 -0
  209. package/dist/assets/sound-manager-CRFoAxE4.js +1 -0
  210. package/dist/assets/sounds-page-B5nmCucp.js +1 -0
  211. package/dist/assets/{sparkles-BK3KXCjl.js → sparkles-PGiR5v1g.js} +1 -1
  212. package/dist/assets/{src-clcV9W6_.js → src-DZbMXyC2.js} +39 -39
  213. package/dist/assets/stat-square-CTHnQ1jc.js +1 -0
  214. package/dist/assets/step-indicator-dots-B-KCGh9e.js +1 -0
  215. package/dist/assets/subagent-detail-panel-B-XO_qpq.js +4 -0
  216. package/dist/assets/{subagent-store-CaWptCjh.js → subagent-store-B4PMGakL.js} +1 -1
  217. package/dist/assets/system-events-page-3D8JNX2E.js +1 -0
  218. package/dist/assets/system-events-redirect-page-CXWqj4sU.js +1 -0
  219. package/dist/assets/tag-CV4v7fRF.js +1 -0
  220. package/dist/assets/{theme-preferences-D58K1K0j.js → theme-preferences-D1vs2UH8.js} +1 -1
  221. package/dist/assets/{theme-stage-page-nI4ojIYO.js → theme-stage-page-9uebvm3N.js} +1 -1
  222. package/dist/assets/{tiptap-document-editor-CpP7BiuD.js → tiptap-document-editor-BQsMI5MK.js} +2 -2
  223. package/dist/assets/toast-xTp-xwYL.js +1 -0
  224. package/dist/assets/toggle-CDfguvUz.js +1 -0
  225. package/dist/assets/{tool-detail-panel-hAWze9O3.js → tool-detail-panel-C6bS4xqt.js} +1 -1
  226. package/dist/assets/{triangle-alert-CnjNKhNx.js → triangle-alert-Z0Gq0IuB.js} +1 -1
  227. package/dist/assets/typed-storage-BRvgA7pX.js +1 -0
  228. package/dist/assets/typography-D5f7kt80.js +1 -0
  229. package/dist/assets/{upgrade-cancel-page-DkyUk5eu.js → upgrade-cancel-page-DFVxgGMD.js} +1 -1
  230. package/dist/assets/{upgrade-success-page-Bm_OLV34.js → upgrade-success-page-CmS8UX41.js} +1 -1
  231. package/dist/assets/usage-page-J9DnhUSp.js +1 -0
  232. package/dist/assets/{profile-metadata-VB4MBtgt.js → usage-window-CCdJWJ0U.js} +1 -1
  233. package/dist/assets/{use-active-assistant-id-DpxCpOc4.js → use-active-assistant-id-CGeH4Gl6.js} +1 -1
  234. package/dist/assets/use-bus-subscription-Cslzk2dW.js +1 -0
  235. package/dist/assets/{use-edge-swipe-back-ChhW2Yn_.js → use-edge-swipe-back-CGjL1V81.js} +1 -1
  236. package/dist/assets/use-invite-link-dialog-DiQ0mtix.js +1 -0
  237. package/dist/assets/use-is-org-ready-B5vVKY9m.js +1 -0
  238. package/dist/assets/{use-onboarding-login-B24xPYHP.js → use-onboarding-login-CymKDO-T.js} +1 -1
  239. package/dist/assets/{use-reduced-motion-ztQz2c8x.js → use-reduced-motion-BPBlq9_a.js} +1 -1
  240. package/dist/assets/use-skill-actions-DgIZqg7U.js +1 -0
  241. package/dist/assets/use-skill-categories-573c1Oen.js +1 -0
  242. package/dist/assets/{use-skill-detail-files-Ddn5JjrQ.js → use-skill-detail-files-omgWFzAG.js} +1 -1
  243. package/dist/assets/{user-plus-KuzSTM_D.js → user-plus-DMh4_UTz.js} +1 -1
  244. package/dist/assets/utils-xg2dl_KJ.js +1 -0
  245. package/dist/assets/{viewer-store-3OqDWGlU.js → viewer-store-90zmUKZ4.js} +1 -1
  246. package/dist/assets/voice-page-CDyjR4fA.js +1 -0
  247. package/dist/assets/weather-forecast-display-C5EykzzK.js +1 -0
  248. package/dist/assets/web-8CyK9syi.js +1 -0
  249. package/dist/assets/web-BRWcXGs9.js +1 -0
  250. package/dist/assets/web-CKE5sM1b.js +1 -0
  251. package/dist/assets/web-CTmLPP3c.js +1 -0
  252. package/dist/assets/web-CU5yzmqR.js +1 -0
  253. package/dist/assets/web-ClHk8mQB.js +1 -0
  254. package/dist/assets/web-CyGs80Wd.js +1 -0
  255. package/dist/assets/web-Qpx2h8tK.js +1 -0
  256. package/dist/assets/{welcome-screen-CwMgCfoH.js → welcome-screen-Dz0Avnjt.js} +1 -1
  257. package/dist/assets/workflow-detail-panel-D-1Pxr3t.js +1 -0
  258. package/dist/assets/workflow-store-CDrDxW5J.js +1 -0
  259. package/dist/assets/workspace-page-D5FdWIRh.js +1 -0
  260. package/dist/assets/x-CkSVp1Ok.js +1 -0
  261. package/dist/index.html +142 -140
  262. package/package.json +1 -1
  263. package/dist/assets/activity-steps-panel-BKxs_GpV.js +0 -1
  264. package/dist/assets/ai-page-DAUTMyhs.js +0 -1
  265. package/dist/assets/animated-avatar-g_UuqPoB.js +0 -1
  266. package/dist/assets/api-VMxx8fMz.js +0 -1
  267. package/dist/assets/app-types-XM5qKBD0.js +0 -1
  268. package/dist/assets/archive-redirect-page-CzfenZ5a.js +0 -1
  269. package/dist/assets/arrow-left-C2re-gYj.js +0 -1
  270. package/dist/assets/assistant-identity-store-CgJwLRMd.js +0 -1
  271. package/dist/assets/assistant-status-panel-6Llvpw1M.js +0 -1
  272. package/dist/assets/auth-store-Vekcn1rg.js +0 -2
  273. package/dist/assets/background-task-detail-panel-9D4qDvVk.js +0 -1
  274. package/dist/assets/ban-Bvfp1f1I.js +0 -1
  275. package/dist/assets/billing-page-BIXRwKAk.js +0 -3
  276. package/dist/assets/browser-804KO6w7.js +0 -2
  277. package/dist/assets/button-BQVYX8n_.js +0 -1
  278. package/dist/assets/card-D8zyWtZh.js +0 -1
  279. package/dist/assets/channels-page-route-BW5Er71R.js +0 -9
  280. package/dist/assets/chat-DAoOaufm.js +0 -1
  281. package/dist/assets/chat-markdown-message-BEx5IwnO.js +0 -2
  282. package/dist/assets/check-CkQjevXL.js +0 -1
  283. package/dist/assets/checkbox-DpJ6rimy.js +0 -1
  284. package/dist/assets/chevron-left-mpHv5ahd.js +0 -1
  285. package/dist/assets/chevron-right-DDgSinGu.js +0 -1
  286. package/dist/assets/circle-check-DWe3QGcN.js +0 -1
  287. package/dist/assets/clock-YYSFOsux.js +0 -1
  288. package/dist/assets/code-D1zl7aOd.js +0 -1
  289. package/dist/assets/community-page-DmSpoKI5.js +0 -1
  290. package/dist/assets/consent-C8XzlZzW.js +0 -1
  291. package/dist/assets/contacts-page-route-B5ihu406.js +0 -1
  292. package/dist/assets/conversation-list-fetchers-CRj2YEra.js +0 -1
  293. package/dist/assets/credentials-page-BCwpTieE.js +0 -1
  294. package/dist/assets/danger-zone-redirect-page-D5PMgW3x.js +0 -1
  295. package/dist/assets/debug-page-CxXAWEQK.js +0 -4
  296. package/dist/assets/detail-card-DKCRsPCl.js +0 -1
  297. package/dist/assets/developer-page-CO7ynw7D.js +0 -1
  298. package/dist/assets/devices-redirect-page-CULscA9R.js +0 -1
  299. package/dist/assets/dist-Df9Kbc9v.js +0 -1
  300. package/dist/assets/document-viewer-page-wGxEjJ6s.js +0 -1
  301. package/dist/assets/dropdown-CuE5AuVj.js +0 -1
  302. package/dist/assets/effective-timezone-Cp9o8K5B.js +0 -1
  303. package/dist/assets/emails-page-Bj3jGaiH.js +0 -1
  304. package/dist/assets/esm-Bg_CV71l.js +0 -2
  305. package/dist/assets/esm-C-NQQXQk.js +0 -1
  306. package/dist/assets/esm-CfdeJFC3.js +0 -2
  307. package/dist/assets/esm-D6qOHXq4.js +0 -2
  308. package/dist/assets/esm-DhG5lsUR.js +0 -2
  309. package/dist/assets/esm-Dr3kF6_n.js +0 -2
  310. package/dist/assets/esm-M2XAj3Ql.js +0 -2
  311. package/dist/assets/eye-C2rSrbD-.js +0 -1
  312. package/dist/assets/eye-off-BQ9J3pF2.js +0 -1
  313. package/dist/assets/feature-flag-catalog-8sgxMZlC.js +0 -1
  314. package/dist/assets/file-editor-zaQWhFtF.js +0 -1
  315. package/dist/assets/file-markdown-CRSoMt9c.js +0 -2
  316. package/dist/assets/folder-open-7DKBH5WB.js +0 -1
  317. package/dist/assets/general-page-laeNeI8F.js +0 -1
  318. package/dist/assets/hatching-screen-BeThiAoY.js +0 -1
  319. package/dist/assets/home-page-route-DcRfMT7t.js +0 -1
  320. package/dist/assets/identity-page-route-C-K0OkH_.js +0 -7
  321. package/dist/assets/impersonate-version-flag-DRJTfKcP.js +0 -1
  322. package/dist/assets/index-CJ9siVL4.css +0 -2
  323. package/dist/assets/index-DglwxsvA.js +0 -211
  324. package/dist/assets/ingest-DflLdJTp.js +0 -1
  325. package/dist/assets/input-6HVXMszw.js +0 -1
  326. package/dist/assets/integrations-page-tzKO6Tqd.js +0 -1
  327. package/dist/assets/intelligence-layout-DmOQmOQL.js +0 -1
  328. package/dist/assets/keyboard-shortcuts-redirect-page-DrBxlgF7.js +0 -1
  329. package/dist/assets/latest-assistant-text-PVDAChQ2.js +0 -24
  330. package/dist/assets/library-detail-page-D1qABwGL.js +0 -1
  331. package/dist/assets/library-page-Cc3ZzzQX.js +0 -1
  332. package/dist/assets/list-row-spYsDF9a.js +0 -1
  333. package/dist/assets/loader-circle-C9QrtO3C.js +0 -1
  334. package/dist/assets/local-settings-C-dW2vkq.js +0 -1
  335. package/dist/assets/login-page-JVOSAvMk.js +0 -1
  336. package/dist/assets/logs-layout-BktGpFvY.js +0 -1
  337. package/dist/assets/memory-page-route-CAcOOaPn.js +0 -1
  338. package/dist/assets/menu-B672pBEP.js +0 -1
  339. package/dist/assets/messages-Bh85VLCd.js +0 -13
  340. package/dist/assets/mic-Dmvwrxe8.js +0 -1
  341. package/dist/assets/modal-bIQsMU63.js +0 -1
  342. package/dist/assets/mutation-error-BSB3r4np.js +0 -1
  343. package/dist/assets/native-file-CHp_Tbhe.js +0 -2
  344. package/dist/assets/notice-B8UI-BOp.js +0 -1
  345. package/dist/assets/notifications-page-U2jH4rfU.js +0 -1
  346. package/dist/assets/onboarding-store-Bxw_JVDh.js +0 -1
  347. package/dist/assets/page-empty-state-CgRBJsiJ.js +0 -1
  348. package/dist/assets/page-shell-lgSjRrZ-.js +0 -1
  349. package/dist/assets/panel-item-CegzTp_l.js +0 -1
  350. package/dist/assets/password-reset-page-CNCeaWWO.js +0 -1
  351. package/dist/assets/personality-page-DAlsAWJR.js +0 -1
  352. package/dist/assets/platform-detection-l1iKz8jP.js +0 -1
  353. package/dist/assets/plugins-page-CpdP0Jsz.js +0 -1
  354. package/dist/assets/plugins-surface-DXytDI7x.js +0 -1
  355. package/dist/assets/plus-D54jrPDF.js +0 -1
  356. package/dist/assets/popover-rW459udD.js +0 -1
  357. package/dist/assets/prechat-jJWDBLel.js +0 -1
  358. package/dist/assets/prefs-Od3axSSC.js +0 -1
  359. package/dist/assets/privacy-page-KhIuDaMZ.js +0 -1
  360. package/dist/assets/privacy-screen-D4cNMe58.js +0 -1
  361. package/dist/assets/progress-bar-Wa6qo8OT.js +0 -1
  362. package/dist/assets/provider-catalogs-mEOdGGoF.js +0 -1
  363. package/dist/assets/puzzle-0_oQwgsv.js +0 -1
  364. package/dist/assets/react-query.gen-B-P32qsC.js +0 -1
  365. package/dist/assets/react-query.gen-CWfp8GEM.js +0 -1
  366. package/dist/assets/research-mock-page-D45wW9I_.js +0 -1
  367. package/dist/assets/research-onboarding-route-DJiO0r-Z.js +0 -42
  368. package/dist/assets/review-terms-screen-D48F_rvC.js +0 -1
  369. package/dist/assets/routes-GPGveWZ8.js +0 -1
  370. package/dist/assets/schedules-CTsHce7J.js +0 -1
  371. package/dist/assets/schedules-page-B4wPERNe.js +0 -1
  372. package/dist/assets/sdk.gen-Z7XkRg5O.js +0 -1
  373. package/dist/assets/security-redirect-page-BjDQGfTt.js +0 -1
  374. package/dist/assets/select-assistant-screen-Ds8S0lHD.js +0 -1
  375. package/dist/assets/settings-divider-CCCamAH8.js +0 -1
  376. package/dist/assets/settings-layout-TGkB8Eny.js +0 -1
  377. package/dist/assets/settings-wSv59mkN.js +0 -1
  378. package/dist/assets/share-feedback-modal-409NP3X1.js +0 -1
  379. package/dist/assets/shield-check-kgUZeU9b.js +0 -1
  380. package/dist/assets/site-favicon-Bsh4glAL.js +0 -1
  381. package/dist/assets/skill-detail-page-jMIyfUs_.js +0 -1
  382. package/dist/assets/skills-page-D3OTDTES.js +0 -1
  383. package/dist/assets/sounds-redirect-page-SALIbUWr.js +0 -1
  384. package/dist/assets/start-screen-ByKXdi-m.js +0 -1
  385. package/dist/assets/subagent-detail-panel-jSEOh5tT.js +0 -4
  386. package/dist/assets/system-events-page--AiaEwyg.js +0 -1
  387. package/dist/assets/system-events-redirect-page-DCoGGk63.js +0 -1
  388. package/dist/assets/tag-D0AE0-aA.js +0 -1
  389. package/dist/assets/toast-CZmbu5xl.js +0 -1
  390. package/dist/assets/toggle-CWrJ2t4S.js +0 -1
  391. package/dist/assets/typed-storage-D_VAgmkX.js +0 -1
  392. package/dist/assets/typography-Cqi8q9o7.js +0 -1
  393. package/dist/assets/usage-redirect-page-BRSD2lQL.js +0 -1
  394. package/dist/assets/use-assistant-identity-details-CmVqcz5B.js +0 -1
  395. package/dist/assets/use-invite-link-dialog-CqDYf0rC.js +0 -1
  396. package/dist/assets/use-is-org-ready-CZIgoXmP.js +0 -1
  397. package/dist/assets/use-skill-actions-T8UKexNG.js +0 -1
  398. package/dist/assets/use-skill-categories-CURWXK_d.js +0 -1
  399. package/dist/assets/utils-DvUW9GK8.js +0 -1
  400. package/dist/assets/voice-page-CXudm9dD.js +0 -1
  401. package/dist/assets/weather-forecast-display-CtBYS3RS.js +0 -1
  402. package/dist/assets/web-2Lv7tn-v.js +0 -1
  403. package/dist/assets/web-BMkUTu6e.js +0 -1
  404. package/dist/assets/web-BRNP0DmG.js +0 -1
  405. package/dist/assets/web-D9chpugB.js +0 -1
  406. package/dist/assets/web-DJgVPE0A.js +0 -1
  407. package/dist/assets/web-DL2EEVnA.js +0 -1
  408. package/dist/assets/web-DbZvx-GY.js +0 -1
  409. package/dist/assets/web-DguPzvKS.js +0 -1
  410. package/dist/assets/workflow-detail-panel-Dna_IU6V.js +0 -1
  411. package/dist/assets/workspace-page-ClmjoyUi.js +0 -1
  412. package/dist/assets/x-BYcSiJRX.js +0 -1
  413. /package/dist/assets/{app-info-Clwt3pCt.js → app-info-BxdEjcok.js} +0 -0
  414. /package/dist/assets/{avatar-bundled-components-ELDcio1Z.js → avatar-bundled-components-CMIiT9CS.js} +0 -0
  415. /package/dist/assets/{avatar-svg-compositor-D7Dy9s1k.js → avatar-svg-compositor-DQyPgWSC.js} +0 -0
  416. /package/dist/assets/{browser-timezone-viO2H3SD.js → browser-timezone-B2VEIYkv.js} +0 -0
  417. /package/dist/assets/{bundle-mjs-CK9sN9wG.js → bundle-mjs-BZt35okJ.js} +0 -0
  418. /package/dist/assets/{conversation-store-CnRrUeSu.js → conversation-store-CynXqAcO.js} +0 -0
  419. /package/dist/assets/{createLucideIcon-Bjb-Kuq7.js → createLucideIcon-IRfcSUxS.js} +0 -0
  420. /package/dist/assets/{dist-DyRKd0bN2.js → dist-RkT480s0.js} +0 -0
  421. /package/dist/assets/{edge-swipe-arbiter-store-a9LiewmS.js → edge-swipe-arbiter-store-VEaUoy3F.js} +0 -0
  422. /package/dist/assets/{emoji-catalog-data-D8lRMt3A.js → emoji-catalog-data-Cp4IpzLe.js} +0 -0
  423. /package/dist/assets/{environment-store-BX22hkIL.js → environment-store-Bxe2pTvW.js} +0 -0
  424. /package/dist/assets/{format-file-size-DOE-vGl6.js → format-file-size-BLrV7wUA.js} +0 -0
  425. /package/dist/assets/{native-deep-link-CbHUZ2h_.js → native-deep-link-CPCbJkSt.js} +0 -0
  426. /package/dist/assets/{onboarding-step-layout-zvLUIT7j.js → onboarding-step-layout-Cup_f9lB.js} +0 -0
  427. /package/dist/assets/{optimistic-lifecycle-DTggtDfs.js → optimistic-lifecycle-C4YFdBr3.js} +0 -0
  428. /package/dist/assets/{pointer-DcD0Nt7Z.js → pointer-qy7F2Zff.js} +0 -0
  429. /package/dist/assets/{proxy-B6mdWM9d.js → proxy-Cadlowdl.js} +0 -0
  430. /package/dist/assets/{research-onboarding-persistence-C4LT0Ekr.js → research-onboarding-persistence-D_h0dT1o.js} +0 -0
  431. /package/dist/assets/{sdk.gen-8pCB8ehU.js → sdk.gen-CenbOmmb.js} +0 -0
  432. /package/dist/assets/{status-badge-pill-0N6rTEBg.js → status-badge-pill-B_ninpnM.js} +0 -0
  433. /package/dist/assets/{three-dot-indicator-DNuHHwtA.js → three-dot-indicator-BuZzHFUJ.js} +0 -0
  434. /package/dist/assets/{use-copy-to-clipboard-BCTXSMa-.js → use-copy-to-clipboard-Ap1ESW2j.js} +0 -0
@@ -0,0 +1 @@
1
+ import{r as e}from"./chunk-jRWAZmH_.js";import{B as t,G as n,H as ee,I as te,J as r,K as ne,L as re,Q as ie,R as i,U as a,V as o,W as s,X as c,Y as ae,Z as oe,q as l,z as se}from"./local-mode-Bskd5bsT.js";function u(e){return ie(re,e)}function ce(e){return oe(te,e)}var le=i([`end_turn`,`max_tokens`,`max_turn_requests`,`refusal`,`cancelled`]),ue=n({type:a(`acp_session_completed`),acpSessionId:r(),stopReason:le}).strict(),de=n({type:a(`acp_session_error`),acpSessionId:r(),error:r()}).strict(),fe=n({type:a(`acp_session_spawned`),acpSessionId:r(),agent:r(),parentConversationId:r(),parentToolUseId:r().optional(),task:r().optional()}).strict(),pe=i([`agent_message_chunk`,`agent_thought_chunk`,`user_message_chunk`,`tool_call`,`tool_call_update`,`plan`]),me=n({type:a(`acp_session_update`),acpSessionId:r(),updateType:pe,content:r().optional(),toolCallId:r().optional(),toolTitle:r().optional(),toolKind:r().optional(),toolStatus:r().optional(),rawInput:c().optional(),rawOutput:c().optional(),locations:t(n({path:r(),line:s().optional()})).optional(),messageId:r().optional(),seq:s().optional()}).strict(),he=n({type:a(`acp_session_usage`),acpSessionId:r(),usedTokens:s(),contextSize:s(),inputTokens:s().optional(),outputTokens:s().optional(),costAmount:s().optional(),costCurrency:r().optional()}).strict(),ge=i([`idle`,`thinking`,`streaming`,`tool_running`,`awaiting_confirmation`]),_e=i([`assistant_turn`,`user_turn`,`global`]),ve=i([`message_dequeued`,`thinking_delta`,`first_text_delta`,`tool_use_start`,`preview_start`,`tool_result_received`,`confirmation_requested`,`confirmation_resolved`,`context_compacting`,`message_complete`,`generation_cancelled`,`error_terminal`]),ye=n({type:a(`assistant_activity_state`),conversationId:r(),activityVersion:s(),phase:ge,anchor:_e,reason:ve,requestId:r().optional(),statusText:r().optional()}),be=n({type:a(`assistant_text_delta`),text:r(),messageId:r().optional(),conversationId:r().optional()}),d=n({type:a(`assistant_thinking_delta`),thinking:r(),messageId:r().optional(),conversationId:r().optional(),timestampMs:s().optional()}),f=n({type:a(`assistant_turn_start`),messageId:r(),conversationId:r().optional()}),p=n({type:a(`avatar_updated`),avatarPath:r()}),m=n({type:a(`background_tool_completed`),id:r(),conversationId:r(),status:i([`completed`,`failed`,`cancelled`]),exitCode:s().nullable().optional(),output:r().optional(),completedAt:s()}),h=n({type:a(`background_tool_started`),id:r(),toolName:r(),conversationId:r(),command:r(),startedAt:s()}),g=n({type:a(`compaction_circuit_closed`),conversationId:r()}),_=n({type:a(`compaction_circuit_open`),conversationId:r(),reason:a(`3_consecutive_failures`),openUntil:s()}),v=n({label:r(),description:r(),pattern:r()}),y=n({label:r(),scope:r()}),b=n({label:r(),scope:r()}),x=n({filePath:r(),oldContent:r(),newContent:r(),isNewFile:o()}),S=i([`allow_once`,`allow_always`,`reject_once`,`reject_always`]),C=n({optionId:r(),name:r(),kind:S}),w=i([`sandbox`,`host`]),T=n({type:a(`confirmation_request`),requestId:r(),toolName:r(),input:l(r(),c()),riskLevel:r(),riskReason:r().optional(),isContainerized:o().optional(),executionTarget:w.optional(),allowlistOptions:t(v),scopeOptions:t(y),directoryScopeOptions:t(b).optional(),diff:x.optional(),conversationId:r().optional(),persistentDecisionsAllowed:o().optional(),toolUseId:r().optional(),acpToolKind:r().optional(),acpOptions:t(C).optional()}),E=n({type:a(`contact_request`),requestId:r(),channel:r().optional(),placeholder:r().optional(),label:r().optional(),description:r().optional(),role:r().optional()}),D=i([`PROVIDER_NETWORK`,`PROVIDER_RATE_LIMIT`,`MANAGED_USAGE_LIMIT`,`PROVIDER_OVERLOADED`,`PROVIDER_API`,`IMAGE_TOO_LARGE`,`PROVIDER_BILLING`,`PROVIDER_ORDERING`,`PROVIDER_WEB_SEARCH`,`PROVIDER_NOT_CONFIGURED`,`PROVIDER_INVALID_KEY`,`MANAGED_KEY_INVALID`,`CONTEXT_TOO_LARGE`,`BUDGET_YIELD_UNRECOVERED`,`MAX_TOKENS_REACHED`,`CONVERSATION_ABORTED`,`CONVERSATION_PROCESSING_FAILED`,`DISK_SPACE_CRITICAL`,`UNKNOWN`]),O=n({type:a(`conversation_error`),conversationId:r(),code:D,userMessage:r(),retryable:o(),debugDetails:r().optional(),errorCategory:r().optional(),connectionName:r().optional(),profileName:r().optional()}),k=i([`created`,`renamed`,`deleted`,`reordered`,`seen_changed`]),A=n({type:a(`conversation_list_invalidated`),reason:k}),j=i([`memory_v3`]),M=n({type:a(`conversation_notice`),conversationId:r(),source:j,code:D,userMessage:r(),errorCategory:r().optional()}),N=n({type:a(`conversation_title_updated`),conversationId:r(),title:r()}),P=i([`disabled`,`ok`,`warning`,`critical`,`unknown`]),F=i([`agent-turns`,`background-work`,`remote-ingress`]),I=n({enabled:o(),state:P,locked:o(),acknowledged:o(),overrideActive:o(),effectivelyLocked:o(),lockId:r().nullable(),usagePercent:s().nullable(),thresholdPercent:s(),path:r().nullable(),lastCheckedAt:r().nullable(),blockedCapabilities:t(F),error:r().nullable()}),L=n({type:a(`disk_pressure_status_changed`),status:I}),xe=n({id:r(),surfaceId:r(),author:r(),content:r(),anchorStart:s().optional(),anchorEnd:s().optional(),anchorText:r().optional(),parentCommentId:r().optional(),status:r(),createdAt:s(),updatedAt:s()}),R=n({type:a(`document_comment_created`),conversationId:r(),surfaceId:r(),comment:xe}),z=n({type:a(`document_comment_deleted`),conversationId:r(),surfaceId:r(),commentId:r()}),Se=n({type:a(`document_comment_reopened`),conversationId:r(),surfaceId:r(),commentId:r()}),Ce=n({type:a(`document_comment_resolved`),conversationId:r(),surfaceId:r(),commentId:r(),resolvedBy:r()}),we=n({type:a(`document_editor_update`),conversationId:r(),surfaceId:r(),markdown:r(),mode:r()}),Te=n({type:a(`error`),message:r(),code:r().optional(),category:r().optional(),errorCategory:r().optional(),requestId:r().optional(),conversationId:r().optional()}),Ee=n({type:a(`generation_cancelled`),conversationId:r().optional()}),B=n({id:r().optional(),filename:r(),mimeType:r(),data:r(),sourceType:i([`sandbox_file`,`host_file`,`tool_block`]).optional(),sizeBytes:s().optional(),thumbnailData:r().optional(),fileBacked:o().optional(),filePath:r().optional()}),De=n({type:a(`generation_handoff`),conversationId:r().optional(),requestId:r().optional(),queuedCount:s(),messageId:r().optional(),attachments:t(B).optional(),attachmentWarnings:t(r()).optional()}),Oe=n({type:a(`home_feed_updated`),updatedAt:r(),newItemCount:s()}),ke=n({kind:i([`plugin`,`workspace`]),id:r()}),Ae=n({type:a(`hook_event`),conversationId:r().optional(),hookName:r(),owner:ke,detail:l(r(),c())}),je=n({type:a(`identity_changed`),name:r(),role:r(),personality:r(),emoji:r(),home:r()}),Me=i([`approved`,`rejected`,`answered`,`cancelled`,`superseded`]),Ne=n({type:a(`interaction_resolved`),requestId:r(),conversationId:r(),state:Me,kind:r()}),Pe=n({type:a(`message_complete`),messageId:r().optional(),conversationId:r().optional(),source:i([`main`,`aux`]).optional(),attachments:t(B).optional(),attachmentWarnings:t(r()).optional()}),Fe=n({type:a(`message_dequeued`),conversationId:r(),requestId:r()}),Ie=n({type:a(`message_queued`),conversationId:r(),requestId:r(),position:s()}),Le=n({type:a(`message_queued_deleted`),conversationId:r(),requestId:r()}),Re=n({type:a(`message_request_complete`),conversationId:r(),requestId:r(),runStillActive:o().optional()}),ze=n({type:a(`navigate_settings`),tab:r()}),Be=n({type:a(`notification_intent`),sourceEventName:r(),title:r(),body:r(),deliveryId:r().optional(),deepLinkMetadata:l(r(),c()).optional(),targetGuardianPrincipalId:r().optional(),silent:o().optional()}),Ve=n({type:a(`open_panel`),panelType:r(),data:l(r(),c()).optional(),conversationId:r().optional(),surfaceId:r().optional()}),He=n({type:a(`open_url`),url:r().min(1),title:r().optional(),conversationId:r().optional()}),V=n({id:r(),label:r(),description:r().optional()}),H=n({id:r(),question:r(),description:r().optional(),options:t(V),freeTextPlaceholder:r().optional()}),Ue=n({type:a(`question_request`),requestId:r(),questions:t(H),question:r(),description:r().optional(),options:t(V),freeTextPlaceholder:r().optional(),conversationId:r().optional(),toolUseId:r().optional()}),We=n({type:a(`relationship_state_updated`),updatedAt:r()}),Ge=n({type:a(`secret_request`),requestId:r(),service:r(),field:r(),label:r(),description:r().optional(),placeholder:r().optional(),conversationId:r().optional(),purpose:r().optional(),allowedTools:t(r()).optional(),allowedDomains:t(r()).optional(),allowOneTimeSend:o().optional()}),Ke=n({type:r(),content:r().optional(),text:r().optional(),result:r().optional(),input:l(r(),c()).optional(),toolName:r().optional(),isError:o().optional(),toolUseId:r().optional()}).passthrough(),qe=n({type:a(`subagent_event`),conversationId:r(),subagentId:r(),event:Ke}).strict(),Je=n({type:a(`subagent_spawned`),subagentId:r(),parentConversationId:r(),label:r(),objective:r(),isFork:o().optional(),parentToolUseId:r().optional()}).strict(),U=i([`pending`,`running`,`awaiting_input`,`completed`,`failed`,`aborted`,`interrupted`]),W=n({inputTokens:s(),outputTokens:s(),estimatedCost:s()}).strict(),Ye=n({type:a(`subagent_status_changed`),subagentId:r(),status:U,error:r().optional(),usage:W.optional()}).strict(),Xe=n({type:a(`sync_changed`),tags:t(r().min(1)).min(1),originClientId:r().min(1).optional()}),Ze=i([`tool_start`,`tool_complete`,`status`]),Qe=n({type:a(`tool_output_chunk`),chunk:r(),conversationId:r().optional(),toolUseId:r().optional(),subType:Ze.optional(),subToolName:r().optional(),subToolInput:r().optional(),subToolIsError:o().optional(),subToolId:r().optional(),messageId:r().optional()}),$e=n({pattern:r(),label:r()}),et=i([`anthropic-native`,`brave`,`perplexity`,`tavily`,`firecrawl`]),tt=i([`default`,`firecrawl`]),nt=n({rank:s(),title:r(),url:r(),domain:r(),faviconUrl:r().optional(),snippet:r().optional(),age:r().optional(),score:s().optional()}),rt=n({query:r(),provider:et,resultCount:s(),durationMs:s(),results:t(nt),errorMessage:r().optional()}),it=n({url:r(),finalUrl:r(),provider:tt.optional(),status:s(),contentType:r().optional(),byteCount:s(),charCount:s(),truncated:o(),title:r().optional(),domain:r(),faviconUrl:r().optional(),redirectCount:s(),durationMs:s(),errorMessage:r().optional(),mayRequireJavaScript:o().optional()}),G=n({webSearch:rt.optional(),webFetch:it.optional()}),at=n({type:a(`tool_result`),toolName:r(),result:r(),isError:o().optional(),diff:x.optional(),status:r().optional(),conversationId:r().optional(),imageData:r().optional(),imageDataList:t(r()).optional(),toolUseId:r().optional(),messageId:r().optional(),riskLevel:r().optional(),riskReason:r().optional(),matchedTrustRuleId:r().optional(),isContainerized:o().optional(),riskScopeOptions:t($e).optional(),riskAllowlistOptions:t(v).optional(),riskDirectoryScopeOptions:t(b).optional(),approvalMode:r().optional(),approvalReason:r().optional(),riskThreshold:r().optional(),activityMetadata:G.optional(),completedAt:s().optional()}),ot=n({type:a(`tool_use_preview_start`),toolUseId:r(),toolName:r(),conversationId:r().optional(),messageId:r().optional(),previewStartedAt:s().optional()}),st=n({type:a(`tool_use_start`),toolName:r(),input:l(r(),c()),toolUseId:r().optional(),messageId:r().optional(),conversationId:r().optional(),startedAt:s().optional(),previewStartedAt:s().optional()}),ct=n({type:a(`ui_surface_complete`),conversationId:r(),surfaceId:r(),summary:r(),submittedData:l(r(),c()).optional()}),lt=n({type:a(`ui_surface_dismiss`),conversationId:r(),surfaceId:r()}),ut=n({id:r(),label:r(),style:i([`primary`,`secondary`,`destructive`]).optional(),data:l(r(),c()).optional()}),dt=n({type:a(`ui_surface_show`),conversationId:r(),surfaceId:r(),surfaceType:r(),title:r().optional(),data:l(r(),c()),actions:t(ut).optional(),display:i([`inline`,`panel`]).optional(),messageId:r().optional(),persistent:o().optional(),toolCallId:r().optional()}),ft=n({type:a(`ui_surface_update`),conversationId:r(),surfaceId:r(),data:l(r(),c())}),K=n({type:a(`usage_progress`),conversationId:r(),inputTokens:s(),outputTokens:s(),estimatedCost:s(),model:r()}),pt=n({type:a(`usage_update`),conversationId:r(),inputTokens:s(),outputTokens:s(),cacheCreationInputTokens:s().optional(),cacheReadInputTokens:s().optional(),totalInputTokens:s(),totalOutputTokens:s(),estimatedCost:s(),model:r(),contextWindowTokens:s().optional(),contextWindowMaxTokens:s().optional()}),mt=n({type:a(`user_message_echo`),text:r(),conversationId:r().optional(),messageId:r().optional(),requestId:r().optional(),clientMessageId:r().optional()}).strict(),q=i([`running`,`completed`,`failed`,`aborted`,`cap_exceeded`,`interrupted`]),ht=n({type:a(`workflow_completed`),runId:r(),conversationId:r().optional(),status:q,agentsSpawned:s(),inputTokens:s(),outputTokens:s(),summary:r().optional()}).strict(),gt=n({type:a(`workflow_leaf_finished`),runId:r(),conversationId:r(),seq:s().int(),status:i([`completed`,`failed`]),label:r().optional(),inputTokens:s().optional(),outputTokens:s().optional(),resultSummary:r().optional()}).strict(),_t=n({type:a(`workflow_leaf_started`),runId:r(),conversationId:r(),seq:s().int(),label:r().optional(),phase:r().optional(),promptSummary:r().optional()}).strict(),vt=n({type:a(`workflow_progress`),runId:r(),conversationId:r().optional(),agentsSpawned:s(),phase:r().optional(),label:r().optional(),message:r().optional()}).strict(),yt=n({type:a(`workflow_started`),runId:r(),conversationId:r(),toolUseId:r().optional(),label:r().optional()}).strict(),bt=`syntheticAgentErrorMessage`,xt=`compactionAgent`,St=3e4,Ct=n({cursorInTextField:o().optional().describe(`Whether the cursor is in an editable text field when dictation started`)}).passthrough().describe(`Dictation context (app name, window title, bundle ID, cursor state, selected text)`),wt=n({transcription:r().describe(`Raw speech transcription`),context:Ct,profileId:r().describe(`Optional dictation profile ID`).optional()}),J=n({id:r(),filename:r(),mimeType:r(),sizeBytes:s(),kind:r(),data:r().optional(),thumbnailData:r().optional(),fileBacked:o().optional()}),Tt=n({pattern:r(),label:r()}),Et=n({label:r(),description:r(),pattern:r()}),Dt=n({scope:r(),label:r()}),Ot=n({requestId:r(),title:r().optional(),description:r().optional(),toolName:r().optional(),riskLevel:r().optional(),riskReason:r().optional(),input:l(r(),c()).optional(),allowlistOptions:t(v).optional(),scopeOptions:t(y).optional(),directoryScopeOptions:t(b).optional(),persistentDecisionsAllowed:o().optional()}),kt=n({requestId:r(),entries:t(H)}),At=i([`approved`,`denied`,`timed_out`]),Y=n({id:r().optional(),name:r(),input:l(r(),c()),result:r().optional(),isError:o().optional(),imageData:r().optional(),imageDataList:t(r()).optional(),imageAttachmentIds:t(r()).optional(),startedAt:s().optional(),previewStartedAt:s().optional(),completedAt:s().optional(),confirmationDecision:At.optional(),confirmationLabel:r().optional(),riskLevel:r().optional(),riskReason:r().optional(),matchedTrustRuleId:r().optional(),autoApproved:o().optional(),approvalMode:r().optional(),approvalReason:r().optional(),riskThreshold:r().optional(),riskScopeOptions:t(Tt).optional(),riskAllowlistOptions:t(Et).optional(),riskDirectoryScopeOptions:t(Dt).optional(),activityMetadata:G.optional(),scopeOptions:t(y).optional(),pendingConfirmation:Ot.optional(),pendingQuestion:kt.optional()}),jt=n({id:r(),label:r(),style:r().optional(),data:l(r(),c()).optional()}),X=n({surfaceId:r(),surfaceType:r(),title:r().optional(),data:l(r(),c()),actions:t(jt).optional(),display:r().optional(),persistent:o().optional(),completed:o().optional(),completionSummary:r().optional(),toolCallId:r().optional()}),Mt=n({subagentId:r(),label:r(),status:r(),error:r().optional(),conversationId:r().optional(),objective:r().optional()}),Nt=n({acpSessionId:r(),agent:r().optional()}),Pt=n({id:r(),toolName:r(),conversationId:r(),command:r(),startedAt:s(),status:i([`completed`,`failed`,`cancelled`]),exitCode:s().nullable(),output:r(),completedAt:s()}),Ft=n({appUrl:r().optional(),webUrl:r().optional()}),It=n({emoji:r(),op:i([`added`,`removed`]),actorDisplayName:r().optional(),targetChannelTs:r()}),Lt=n({channelId:r(),channelName:r().optional(),channelTs:r(),threadTs:r().optional(),sender:n({displayName:r().optional(),externalUserId:r().optional()}).optional(),messageLink:Ft.optional(),threadLink:Ft.optional(),eventKind:i([`message`,`reaction`]).optional(),reaction:It.optional()}),Rt=n({type:a(`text`),text:r()}),zt=n({type:a(`thinking`),thinking:r(),startedAt:s().optional(),completedAt:s().optional()}),Bt=n({type:a(`tool_use`),toolCall:Y}),Vt=n({type:a(`surface`),surface:X}),Ht=n({type:a(`attachment`),attachment:J}),Ut=ee(`type`,[Rt,zt,Bt,Vt,Ht]),Wt=n({id:r(),mergedMessageIds:t(r()).optional(),clientMessageId:r().optional(),role:i([`user`,`assistant`]),timestamp:r(),attachments:t(J),toolCalls:t(Y).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks (the tool_use variant). Flat list of tool calls.`}).optional(),surfaces:t(X).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks (the surface variant). Flat list of surfaces.`}).optional(),textSegments:t(r()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Text segments split by tool-call boundaries.`}).optional(),thinkingSegments:t(r()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Reasoning text extracted from thinking blocks.`}).optional(),contentOrder:t(r()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Positional "<type>:<index>" content ordering (e.g. "text:0", "thinking:1").`}).optional(),contentBlocks:t(Ut).optional(),subagentNotification:Mt.optional(),acpNotification:Nt.optional(),backgroundEventNotification:o().optional(),backgroundToolCompletion:Pt.optional(),slackMessage:Lt.optional(),queueStatus:i([`queued`,`processing`]).optional(),queuePosition:s().optional()}),Gt=n({status:I}),Kt=a(`notification`),qt=i([`new`,`seen`,`acted_on`,`dismissed`]),Jt=i([`low`,`medium`,`high`,`critical`]),Yt=i([`security`,`scheduling`,`background`,`email`,`system`]),Xt=i([`heartbeat`,`memory_consolidation`,`schedule`,`auto_analysis`,`user`,`other`]),Zt=n({id:r(),label:r(),prompt:r()}),Qt=i([`emailDraft`,`documentPreview`,`permissionChat`,`paymentAuth`,`toolPermission`,`updatesList`]),$t=n({kind:Qt}),en=n({id:r(),type:Kt,priority:s().int().min(0).max(100),title:r().optional(),summary:r(),timestamp:r(),status:qt.default(`new`),expiresAt:r().optional(),actions:t(Zt).optional(),urgency:Jt.optional(),conversationId:r().optional(),detailPanel:$t.optional(),category:Yt.optional(),noteworthy:o().optional(),fromAssistant:o().optional(),metadata:l(r(),c()).optional(),sourceType:Xt.optional(),sourceKey:r().optional(),sourceLabel:r().optional(),createdAt:r()}),tn=i([`deterministic`,`assistant`]),nn=n({id:r(),label:r(),icon:r().optional(),prompt:r(),source:tn}),rn=n({greeting:r(),timeAwayLabel:r(),newCount:s().int().min(0)}),an=n({items:t(en),updatedAt:r(),contextBanner:rn,suggestedPrompts:t(nn)}),on=n({id:r(),category:i([`voice`,`world`,`priorities`]),text:r(),confidence:i([`strong`,`uncertain`]),source:i([`onboarding`,`inferred`])}),sn=n({id:r(),name:r(),description:r(),tier:i([`unlocked`,`next-up`,`earned`]),gate:r(),unlockHint:r().optional(),ctaLabel:r().optional()}),cn=n({version:a(1),assistantId:r(),tier:ae([a(1),a(2),a(3),a(4)]),progressPercent:s(),facts:t(on),capabilities:t(sn),conversationCount:s(),hatchedDate:r(),assistantName:r(),userName:r().optional(),updatedAt:r()}),ln=n({key:r(),label:r(),ms:s()}),Z=n({phases:t(ln),ttftMs:s().nullish(),totalToFirstTokenMs:s().nullish(),providerDurationMs:s().nullish(),firstTokenKind:i([`thinking`,`text`]).nullish()}),un=n({provider:r().nullish(),model:r().nullish(),status:r().nullish(),inputTokens:s().nullish(),outputTokens:s().nullish(),cacheCreationInputTokens:s().nullish(),cacheReadInputTokens:s().nullish(),stopReason:r().nullish(),requestMessageCount:s().nullish(),requestToolCount:s().nullish(),responseMessageCount:s().nullish(),responseToolCallCount:s().nullish(),responsePreview:r().nullish(),toolCallNames:t(r()).nullish(),estimatedCostUsd:s().nullish(),durationMs:s().nullish()}),Q=n({kind:r(),label:r().nullish(),role:r().nullish(),text:r().nullish(),toolName:r().nullish(),data:c().optional(),language:r().nullish()}),dn=n({name:r().nullish(),message:r().nullish(),code:r().nullish(),provider:r().nullish(),statusCode:s().nullish(),retryAfterMs:s().nullish(),apiErrorCode:r().nullish(),apiErrorType:r().nullish(),apiErrorParam:r().nullish(),requestId:r().nullish()}),fn=n({id:r(),createdAt:s(),requestPayload:se(),responsePayload:se(),provider:r().nullish(),summary:un.nullish(),requestSections:t(Q).nullish(),responseSections:t(Q).nullish(),agentLoopExitReason:r().nullish(),callSite:r().nullish(),error:dn.nullish(),latency:Z.nullish()}),pn=n({nodeId:r(),score:s(),semanticSimilarity:s(),recencyBoost:s(),type:r().optional()}),mn=n({reason:r(),semanticUnavailable:o(),fallbackSources:t(r())}),hn=n({enabled:o(),degraded:o(),provider:r().nullable(),model:r().nullable(),degradation:mn.nullable(),semanticHits:s().nullish(),mergedCount:s().nullish(),selectedCount:s().nullish(),tier1Count:s().nullish(),tier2Count:s().nullish(),hybridSearchLatencyMs:s().nullish(),sparseVectorUsed:o().nullish(),injectedTokens:s().nullish(),latencyMs:s().nullish(),topCandidates:t(pn),injectedText:r().nullable(),reason:r().nullable(),queryContext:r().nullable()}),gn=n({slug:r(),finalActivation:s(),ownActivation:s(),priorActivation:s(),simUser:s(),simAssistant:s(),simNow:s(),simUserRerankBoost:s().optional(),simAssistantRerankBoost:s().optional(),inRerankPool:o().optional(),spreadContribution:s(),source:r(),status:r()}),_n=n({d:s(),c_user:s(),c_assistant:s(),c_now:s(),k:s(),hops:s(),top_k:s(),epsilon:s()}),vn=n({turn:s(),mode:r(),concepts:t(gn),config:_n}),yn=n({slug:r(),source:r(),pinned:o(),sectionOrdinal:s().nullable().optional(),sectionHeading:r().nullable().optional()}),bn=n({turn:s(),live:o(),selections:t(yn),injectedText:r()}),xn=n({messageId:r().nullish(),conversationKey:r().nullish(),conversationId:r().nullish(),conversationKind:r(),conversationTotalEstimatedCostUsd:s().nullish(),logs:t(fn),memoryRecall:hn.nullable(),memoryV2Activation:vn.nullable(),memoryV3Selection:bn.nullish()}),Sn=n({type:r(),content:r(),toolName:r().optional(),isError:o().optional(),messageId:r().optional(),toolUseId:r().optional(),input:l(r(),c()).optional()}),Cn=n({subagentId:r(),objective:r().optional(),status:U.optional(),usage:W.optional(),events:t(Sn)}),wn=n({seq:s().int(),kind:i([`agent`,`workflow`]),label:r().optional(),phase:r().optional(),promptSummary:r().optional(),status:r(),resultSummary:r().optional(),inputTokens:s().optional(),outputTokens:s().optional(),createdAt:s().nullable()}),Tn=n({runId:r(),status:q.optional(),agentsSpawned:s().optional(),inputTokens:s().optional(),outputTokens:s().optional(),phase:r().optional(),leaves:t(wn)}),En=n({title:r().optional(),subtitle:r().optional(),body:r().optional(),metadata:t(n({label:u(),value:u()})).optional(),template:r().optional(),templateData:l(r(),c()).optional()}),Dn=ne(e=>{let t=(typeof e==`string`?e.split(`,`):Array.isArray(e)?e:[]).map(e=>typeof e==`string`||typeof e==`number`?String(e).trim():``).filter(e=>e.length>0);return t.length>0?t:void 0},t(r()).optional()),On=n({prompt:u().optional(),acceptedTypes:Dn,maxFiles:ce().int().positive().optional().catch(void 0),maxSizeBytes:ce().positive().optional().catch(void 0)}),kn=e({ACPOptionKindSchema:()=>S,ACPOptionSchema:()=>C,AcpSessionCompletedEventSchema:()=>ue,AcpSessionErrorEventSchema:()=>de,AcpSessionSpawnedEventSchema:()=>fe,AcpSessionUpdateEventSchema:()=>me,AcpSessionUpdateTypeSchema:()=>pe,AcpSessionUsageEventSchema:()=>he,AcpStopReasonSchema:()=>le,AllowlistOptionSchema:()=>v,AssistantActivityAnchorSchema:()=>_e,AssistantActivityPhaseSchema:()=>ge,AssistantActivityReasonSchema:()=>ve,AssistantActivityStateEventSchema:()=>ye,AssistantEventEnvelopeSchema:()=>An,AssistantEventSchema:()=>$,AssistantOutboundAttachmentSchema:()=>B,AssistantTextDeltaEventSchema:()=>be,AssistantThinkingDeltaEventSchema:()=>d,AssistantTurnStartEventSchema:()=>f,AvatarUpdatedEventSchema:()=>p,BackgroundToolCompletedEventSchema:()=>m,BackgroundToolStartedEventSchema:()=>h,CALL_SITE_COMPACTION_AGENT:()=>xt,CALL_SITE_SYNTHETIC_AGENT_ERROR_MESSAGE:()=>bt,CapabilitySchema:()=>sn,CardSurfaceDataSchema:()=>En,CompactionCircuitClosedEventSchema:()=>g,CompactionCircuitOpenEventSchema:()=>_,ConfirmationDiffSchema:()=>x,ConfirmationExecutionTargetSchema:()=>w,ConfirmationRequestEventSchema:()=>T,ContactRequestEventSchema:()=>E,ContextBannerSchema:()=>rn,ConversationAttachmentBlockSchema:()=>Ht,ConversationContentBlockSchema:()=>Ut,ConversationErrorCodeSchema:()=>D,ConversationErrorEventSchema:()=>O,ConversationListInvalidatedEventSchema:()=>A,ConversationListInvalidatedReasonSchema:()=>k,ConversationMessageAttachmentSchema:()=>J,ConversationMessageSchema:()=>Wt,ConversationMessageSurfaceSchema:()=>X,ConversationMessageToolCallSchema:()=>Y,ConversationNoticeEventSchema:()=>M,ConversationNoticeSourceSchema:()=>j,ConversationSlackMessageSchema:()=>Lt,ConversationSubagentNotificationSchema:()=>Mt,ConversationSurfaceBlockSchema:()=>Vt,ConversationTextBlockSchema:()=>Rt,ConversationThinkingBlockSchema:()=>zt,ConversationTitleUpdatedEventSchema:()=>N,ConversationToolUseBlockSchema:()=>Bt,DEFAULT_TOOL_EXECUTION_TIMEOUT_SEC:()=>120,DictationContextSchema:()=>Ct,DictationRequestSchema:()=>wt,DirectoryScopeOptionSchema:()=>b,DiskPressureBlockedCapabilitySchema:()=>F,DiskPressureStateSchema:()=>P,DiskPressureStatusChangedEventSchema:()=>L,DiskPressureStatusResponseSchema:()=>Gt,DiskPressureStatusSchema:()=>I,DocumentCommentCreatedEventSchema:()=>R,DocumentCommentDeletedEventSchema:()=>z,DocumentCommentReopenedEventSchema:()=>Se,DocumentCommentResolvedEventSchema:()=>Ce,DocumentEditorUpdateEventSchema:()=>we,ErrorEventSchema:()=>Te,FactSchema:()=>on,FeedActionSchema:()=>Zt,FeedItemCategorySchema:()=>Yt,FeedItemDetailPanelKindSchema:()=>Qt,FeedItemDetailPanelSchema:()=>$t,FeedItemSchema:()=>en,FeedItemSourceTypeSchema:()=>Xt,FeedItemStatusSchema:()=>qt,FeedItemTypeSchema:()=>Kt,FeedItemUrgencySchema:()=>Jt,FileUploadSurfaceDataSchema:()=>On,GenerationCancelledEventSchema:()=>Ee,GenerationHandoffEventSchema:()=>De,HomeFeedResponseSchema:()=>an,HomeFeedUpdatedEventSchema:()=>Oe,HookEventOwnerSchema:()=>ke,HookEventSchema:()=>Ae,IdentityChangedEventSchema:()=>je,InteractionResolutionStateSchema:()=>Me,InteractionResolvedEventSchema:()=>Ne,LLMCallErrorSchema:()=>dn,LLMCallSummarySchema:()=>un,LLMContextSectionSchema:()=>Q,LLMRequestLogEntrySchema:()=>fn,LatencyBreakdownSchema:()=>Z,LatencyPhaseSchema:()=>ln,LlmContextResponseSchema:()=>xn,MemoryCandidateSchema:()=>pn,MemoryDegradationSchema:()=>mn,MemoryRecallLogSchema:()=>hn,MemoryV2ActivationLogSchema:()=>vn,MemoryV2ConceptRowSchema:()=>gn,MemoryV2ConfigSnapshotSchema:()=>_n,MemoryV3SelectionLogSchema:()=>bn,MemoryV3SelectionRowSchema:()=>yn,MessageCompleteEventSchema:()=>Pe,MessageDequeuedEventSchema:()=>Fe,MessageQueuedDeletedEventSchema:()=>Le,MessageQueuedEventSchema:()=>Ie,MessageRequestCompleteEventSchema:()=>Re,NavigateSettingsEventSchema:()=>ze,NotificationIntentEventSchema:()=>Be,OpenPanelEventSchema:()=>Ve,OpenUrlEventSchema:()=>He,PendingToolConfirmationSchema:()=>Ot,QuestionEntrySchema:()=>H,QuestionOptionSchema:()=>V,QuestionRequestEventSchema:()=>Ue,RelationshipStateSchema:()=>cn,RelationshipStateUpdatedEventSchema:()=>We,RiskScopeOptionSchema:()=>$e,SSE_REPLAY_RING_AGE_LIMIT_MS:()=>St,SSE_REPLAY_RING_COUNT_LIMIT:()=>200,ScopeOptionSchema:()=>y,SecretRequestEventSchema:()=>Ge,SubagentDetailEventSchema:()=>Sn,SubagentDetailResponseSchema:()=>Cn,SubagentEventEventSchema:()=>qe,SubagentInnerEventSchema:()=>Ke,SubagentSpawnedEventSchema:()=>Je,SubagentStatusChangedEventSchema:()=>Ye,SubagentStatusSchema:()=>U,SubagentUsageStatsSchema:()=>W,SuggestedPromptSchema:()=>nn,SuggestedPromptSourceSchema:()=>tn,SurfaceActionSchema:()=>ut,SyncChangedEventSchema:()=>Xe,ToolActivityMetadataSchema:()=>G,ToolOutputChunkEventSchema:()=>Qe,ToolOutputChunkSubTypeSchema:()=>Ze,ToolResultEventSchema:()=>at,ToolUsePreviewStartEventSchema:()=>ot,ToolUseStartEventSchema:()=>st,UISurfaceCompleteEventSchema:()=>ct,UISurfaceDismissEventSchema:()=>lt,UISurfaceShowEventSchema:()=>dt,UISurfaceUpdateEventSchema:()=>ft,UsageProgressEventSchema:()=>K,UsageUpdateEventSchema:()=>pt,UserMessageEchoEventSchema:()=>mt,WebFetchMetadataSchema:()=>it,WebSearchMetadataSchema:()=>rt,WebSearchProviderIdSchema:()=>et,WebSearchResultItemSchema:()=>nt,WorkflowCompletedEventSchema:()=>ht,WorkflowJournalResponseSchema:()=>Tn,WorkflowLeafFinishedEventSchema:()=>gt,WorkflowLeafSchema:()=>wn,WorkflowLeafStartedEventSchema:()=>_t,WorkflowProgressEventSchema:()=>vt,WorkflowRunStatusSchema:()=>q,WorkflowStartedEventSchema:()=>yt}),$=ee(`type`,[ue,de,fe,me,he,ye,be,d,f,p,m,h,g,_,T,E,O,A,M,N,L,R,z,Se,Ce,we,Te,Ee,De,Oe,Ae,je,Ne,Pe,Fe,Ie,Le,Re,ze,Be,Ve,He,Ue,We,Ge,qe,Je,Ye,Xe,Qe,at,ot,st,ct,lt,dt,ft,K,pt,mt,ht,gt,_t,vt,yt]),An=n({id:r(),conversationId:r().optional(),seq:s().int().optional(),emittedAt:r(),message:$});export{On as a,Gt as c,bt as d,K as f,En as i,St as l,$ as n,Tn as o,kn as r,Cn as s,An as t,xt as u};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-BQVYX8n_.js";import{m as r,u as i}from"./chunk-5KNZJZUH-SU6Q_tDT.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./input-6HVXMszw.js";import{t as s}from"./dropdown-CuE5AuVj.js";import{t as c}from"./is-electron-y5bNUVyG.js";import{c as l}from"./routes-GPGveWZ8.js";import{mn as u}from"./index-DglwxsvA.js";import{a as d,i as f,n as p,o as m,r as h,s as g}from"./provider-key-DqjTE9QV.js";import"./onboarding-step-layout-zvLUIT7j.js";var _=e(t(),1),v=a();function y(){let e=i(),[t]=r(),a=t.get(`hosting`),y=c(),b=p(),[x,S]=(0,_.useState)(()=>b?.provider??f.id),[C,w]=(0,_.useState)(()=>b?.key??``),[T,E]=(0,_.useState)(()=>b?.model??m(b?.provider??f.id)??``),[D,O]=(0,_.useState)(()=>b?.baseUrl??``),[k,A]=(0,_.useState)(()=>b?.customModels??``),j=g(x)??f,M=j.models??[],N=j.requiresKey,P=M.length>0,F=x===`openai-compatible`,I=(!(N&&!F)||C.trim().length>0)&&(!P||T.trim().length>0)&&(!F||D.trim().length>0&&k.trim().length>0);return(0,v.jsx)(u,{children:(0,v.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-col items-center ${y?`min-h-full px-8 pt-21 pb-4 electron-prechat-type`:`px-6 py-16`} text-[var(--content-default)]`,children:[(0,v.jsx)(`h1`,{className:y?`text-title-large`:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:`Connect a Model Provider`}),(0,v.jsx)(`p`,{className:`text-center text-body-medium-lighter text-[var(--content-tertiary)] ${y?`mt-3.5`:`mt-3`}`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:`Choose the model provider your assistant should use.`}),(0,v.jsxs)(`div`,{className:`flex w-full flex-col gap-4 ${y?`mt-8`:`mt-10`}`,style:{animation:`fadeInUp 0.5s ease-out 0.4s both`},children:[(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,v.jsx)(s,{"aria-label":`Provider`,value:x,onChange:e=>{let t=g(e);t&&(S(t.id),w(``),E(m(t.id)??``))},options:d.map(e=>({value:e.id,label:e.displayName}))})]}),M.length>0&&(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Model`}),(0,v.jsx)(s,{"aria-label":`Model`,value:T,onChange:E,options:M.map(e=>({value:e.id,label:e.displayName}))})]}),F&&(0,v.jsxs)(v.Fragment,{children:[(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Base URL`}),(0,v.jsx)(o,{type:`text`,placeholder:`http://localhost:1234/v1`,value:D,onChange:e=>O(e.target.value),fullWidth:!0})]}),(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Models`}),(0,v.jsx)(o,{type:`text`,placeholder:`model-1, model-2`,value:k,onChange:e=>A(e.target.value),fullWidth:!0}),(0,v.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Comma-separated model identifiers exposed by your endpoint.`})]})]}),N&&(0,v.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,v.jsx)(o,{type:`password`,label:`${j.displayName} API Key`,placeholder:j.apiKeyPlaceholder??`Enter your API key`,value:C,onChange:e=>w(e.target.value),className:`touch-mobile:text-[16px]`,fullWidth:!0}),j.docsUrl&&(0,v.jsxs)(`p`,{className:`self-start text-body-medium-lighter text-[var(--content-tertiary)]`,children:[`Don't have it?`,` `,(0,v.jsx)(`a`,{href:j.docsUrl,target:`_blank`,rel:`noreferrer`,className:`text-[var(--content-default)] underline`,children:`Get an API key here`})]})]})]}),(0,v.jsxs)(`div`,{className:`mt-8 flex w-full flex-col ${y?`gap-2.5`:`gap-2`}`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`},children:[(0,v.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:!I,onClick:()=>{if(!I)return;let t=T.trim()||m(x);h({provider:x,key:C.trim(),...t?{model:t}:{},...F?{baseUrl:D.trim(),customModels:k.trim()}:{}}),e(a?`${l.onboarding.privacy}?hosting=${a}`:l.onboarding.privacy)},className:y?void 0:`h-11 text-base`,children:`Continue`}),(0,v.jsx)(n,{variant:`outlined`,size:`regular`,fullWidth:!0,onClick:()=>{e(l.onboarding.hosting)},className:y?void 0:`h-11 text-base`,children:`Back`})]})]})})}export{y as ApiKeyScreen};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-amTXFI-2.js";import{d as r,h as i}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./input-CoUmPnRU.js";import{t as s}from"./dropdown-ByHOpeOU.js";import{t as c}from"./is-electron-y5bNUVyG.js";import{c as l}from"./routes-DYcJgn9k.js";import{on as u}from"./index-CkKSY1-Q.js";import{a as d,i as f,n as p,o as m,r as h,s as g}from"./provider-key-B-hx1r3c.js";import"./onboarding-step-layout-Cup_f9lB.js";var _=e(t(),1),v=a();function y(){let e=r(),[t]=i(),a=t.get(`hosting`),y=c(),b=p(),[x,S]=(0,_.useState)(()=>b?.provider??f.id),[C,w]=(0,_.useState)(()=>b?.key??``),[T,E]=(0,_.useState)(()=>b?.model??m(b?.provider??f.id)??``),[D,O]=(0,_.useState)(()=>b?.baseUrl??``),[k,A]=(0,_.useState)(()=>b?.customModels??``),j=g(x)??f,M=j.models??[],N=j.requiresKey,P=M.length>0,F=x===`openai-compatible`,I=(!(N&&!F)||C.trim().length>0)&&(!P||T.trim().length>0)&&(!F||D.trim().length>0&&k.trim().length>0);return(0,v.jsx)(u,{children:(0,v.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-col items-center ${y?`min-h-full px-8 pt-21 pb-4 electron-prechat-type`:`px-6 py-16`} text-[var(--content-default)]`,children:[(0,v.jsx)(`h1`,{className:y?`text-title-large`:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:`Connect a Model Provider`}),(0,v.jsx)(`p`,{className:`text-center text-body-medium-lighter text-[var(--content-tertiary)] ${y?`mt-3.5`:`mt-3`}`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:`Choose the model provider your assistant should use.`}),(0,v.jsxs)(`div`,{className:`flex w-full flex-col gap-4 ${y?`mt-8`:`mt-10`}`,style:{animation:`fadeInUp 0.5s ease-out 0.4s both`},children:[(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,v.jsx)(s,{"aria-label":`Provider`,value:x,onChange:e=>{let t=g(e);t&&(S(t.id),w(``),E(m(t.id)??``))},options:d.map(e=>({value:e.id,label:e.displayName}))})]}),M.length>0&&(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Model`}),(0,v.jsx)(s,{"aria-label":`Model`,value:T,onChange:E,options:M.map(e=>({value:e.id,label:e.displayName}))})]}),F&&(0,v.jsxs)(v.Fragment,{children:[(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Base URL`}),(0,v.jsx)(o,{type:`text`,placeholder:`http://localhost:1234/v1`,value:D,onChange:e=>O(e.target.value),fullWidth:!0})]}),(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Models`}),(0,v.jsx)(o,{type:`text`,placeholder:`model-1, model-2`,value:k,onChange:e=>A(e.target.value),fullWidth:!0}),(0,v.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Comma-separated model identifiers exposed by your endpoint.`})]})]}),N&&(0,v.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,v.jsx)(o,{type:`password`,label:`${j.displayName} API Key`,placeholder:j.apiKeyPlaceholder??`Enter your API key`,value:C,onChange:e=>w(e.target.value),className:`touch-mobile:text-[16px]`,fullWidth:!0}),j.docsUrl&&(0,v.jsxs)(`p`,{className:`self-start text-body-medium-lighter text-[var(--content-tertiary)]`,children:[`Don't have it?`,` `,(0,v.jsx)(`a`,{href:j.docsUrl,target:`_blank`,rel:`noreferrer`,className:`text-[var(--content-default)] underline`,children:`Get an API key here`})]})]})]}),(0,v.jsxs)(`div`,{className:`mt-8 flex w-full flex-col ${y?`gap-2.5`:`gap-2`}`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`},children:[(0,v.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:!I,onClick:()=>{if(!I)return;let t=T.trim()||m(x);h({provider:x,key:C.trim(),...t?{model:t}:{},...F?{baseUrl:D.trim(),customModels:k.trim()}:{}}),e(a?`${l.onboarding.privacy}?hosting=${a}`:l.onboarding.privacy)},className:y?void 0:`h-11 text-base`,children:`Continue`}),(0,v.jsx)(n,{variant:`outlined`,size:`regular`,fullWidth:!0,onClick:()=>{e(l.onboarding.hosting)},className:y?void 0:`h-11 text-base`,children:`Back`})]})]})})}export{y as ApiKeyScreen};
@@ -0,0 +1 @@
1
+ import{t as e}from"./createLucideIcon-IRfcSUxS.js";var t=e(`archive`,[[`rect`,{width:`20`,height:`5`,x:`2`,y:`3`,rx:`1`,key:`1wp1u1`}],[`path`,{d:`M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8`,key:`1s80jp`}],[`path`,{d:`M10 12h4`,key:`a56b0p`}]]);export{t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-Dhiismgm.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./button-amTXFI-2.js";import{n as i}from"./QueryClientProvider-DKhXIxGb.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./card-Bv5O5juh.js";import{t as s}from"./archive-0aqysuyd.js";import{t as c}from"./loader-circle-Cz7opInR.js";import{t as l}from"./triangle-alert-Z0Gq0IuB.js";import"./src-DZbMXyC2.js";import{n as u}from"./toast-xTp-xwYL.js";import{Y as d}from"./sdk.gen-CFgJ4K6f.js";import{Ni as f,Tn as p,ur as m}from"./index-CkKSY1-Q.js";import{t as h}from"./use-active-assistant-id-CGeH4Gl6.js";var g=e(n(),1),_=a();function v(e){if(e==null)return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:t.toLocaleString(void 0,{month:`short`,day:`numeric`,year:`numeric`,hour:`numeric`,minute:`2-digit`,hour12:!0})}function y(){return(0,_.jsx)(o,{children:(0,_.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,_.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,_.jsx)(s,{className:`h-6 w-6 text-[var(--content-disabled)] dark:text-[var(--content-default)]`})}),(0,_.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:`No archived conversations`}),(0,_.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Conversations you archive will appear here.`})]})})}function b({conversation:e,isFirst:t,onUnarchive:n,isPending:i}){let a=[v(e.createdAt),e.source??`vellum-assistant`].filter(Boolean).join(` · `),o=e.title&&e.title.trim().length>0?e.title:`Untitled conversation`;return(0,_.jsxs)(`div`,{className:`flex items-center gap-3 py-3 ${t?``:`border-t border-[var(--border-base)]`}`,children:[(0,_.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,_.jsx)(`div`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:o}),(0,_.jsx)(`p`,{className:`mt-0.5 truncate text-body-small-default text-[var(--content-tertiary)]`,children:a})]}),(0,_.jsx)(r,{variant:`outlined`,onClick:n,disabled:i,className:`shrink-0`,children:i?(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(c,{className:`h-4 w-4 animate-spin`}),`Unarchiving`]}):`Unarchive`})]})}function x(){let e=i(),n=h(),{conversations:a,isLoading:s,isError:v,refetch:x}=p(n),[S,C]=(0,g.useState)(null),w=(0,g.useCallback)(async r=>{if(n){C(r);try{await d({path:{assistant_id:n,id:r},throwOnError:!0}),m(e,n)}catch(e){t(e,{context:`archive_settings_unarchive_conversation`}),u.error(`Failed to unarchive conversation.`)}finally{C(null)}}},[n,e]);return s?(0,_.jsx)(`div`,{className:`w-full`,children:(0,_.jsx)(`div`,{className:`flex min-h-[400px] items-center justify-center`,children:(0,_.jsx)(c,{className:`h-6 w-6 animate-spin text-[var(--content-disabled)]`})})}):v?(0,_.jsx)(`div`,{className:`w-full`,children:(0,_.jsx)(o,{children:(0,_.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,_.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--system-error-lighter)]`,children:(0,_.jsx)(l,{className:`h-6 w-6 text-[var(--system-error-default)]`})}),(0,_.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:`Failed to load archived conversations`}),(0,_.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Something went wrong. Please try again.`}),(0,_.jsxs)(r,{variant:`outlined`,onClick:x,className:`mt-4`,children:[(0,_.jsx)(f,{className:`h-4 w-4`}),`Retry`]})]})})}):a.length===0?(0,_.jsx)(`div`,{className:`w-full`,children:(0,_.jsx)(y,{})}):(0,_.jsx)(`div`,{className:`w-full`,children:(0,_.jsx)(o,{noPadding:!0,className:`px-4`,children:a.map((e,t)=>(0,_.jsx)(b,{conversation:e,isFirst:t===0,onUnarchive:()=>{w(e.conversationId)},isPending:S===e.conversationId},e.conversationId))})})}export{x as ArchivePage};
@@ -0,0 +1 @@
1
+ import{t as e}from"./createLucideIcon-IRfcSUxS.js";var t=e(`arrow-left`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]);export{t};
@@ -1 +1 @@
1
- import{n as e}from"./toast-CZmbu5xl.js";import{n as t,t as n}from"./create-selectors-8NePGNlX.js";import{c as r,n as i,s as a,t as o,u as s}from"./feature-flag-catalog-8sgxMZlC.js";import{h as c}from"./sdk.gen-8pCB8ehU.js";var l={...o},u={...i},d=0,f={};function p(e={}){l={...o,...e};for(let e of Object.keys(f))delete f[e]}function m(e={}){u={...i,...e}}function h(){p(),m()}var g=a(`assistant`);function _(e){return l[e]??o[e]??!1}function v(e){return u[e]??i[e]??``}var y=n(t()(t=>{let n=t;return{...o,...g.bool,hasHydrated:!1,stringFlags:{...i,...g.str},setFlags:e=>t(t=>{p(e);let n={...e,...g.bool};return Object.keys(n).some(e=>n[e]!==t[e])?n:t}),setFlag:(n,i,a)=>{let o=++d,u=()=>{if(f[n]!==o)return;delete f[n];let a=_(n);t(e=>e[n]===i?{[n]:a}:e),e.error(`Couldn't update "${r(n)?.label??n}" — change reverted.`)},p=s(n);!a||!p||(f[n]=o,c({path:{assistant_id:a,flag_key:p},body:{enabled:i},throwOnError:!1}).then(e=>{e.response?.ok?(l[n]=i,f[n]===o&&delete f[n]):u()}).catch(u),t({[n]:g.bool[n]??i}))},markHydrated:()=>t({hasHydrated:!0}),resetForAssistantSwitch:()=>{h(),t({...o,...g.bool,hasHydrated:!1}),n({stringFlags:{...i,...g.str}})},setStringFlags:e=>n(t=>{m(e);let n={...e,...g.str},r=t.stringFlags;return Object.keys(n).some(e=>n[e]!==r[e])?{stringFlags:n}:t}),setStringFlag:(t,i,a)=>{let o=++d,l=()=>{if(f[t]!==o)return;delete f[t];let a=v(t);n(e=>e.stringFlags[t]===i?{stringFlags:{...e.stringFlags,[t]:a}}:e),e.error(`Couldn't update "${r(t)?.label??t}" — change reverted.`)},p=s(t);!a||!p||(f[t]=o,c({path:{assistant_id:a,flag_key:p},body:{enabled:i},throwOnError:!1}).then(e=>{e.response?.ok?(u[t]=i,f[t]===o&&delete f[t]):l()}).catch(l),n(e=>({stringFlags:{...e.stringFlags,[t]:g.str[t]??i}})))}}}));export{y as t};
1
+ import{n as e}from"./toast-xTp-xwYL.js";import{n as t,t as n}from"./create-selectors-8NePGNlX.js";import{c as r,n as i,s as a,t as o,u as s}from"./feature-flag-catalog-CM5COdiW.js";import{h as c}from"./sdk.gen-CenbOmmb.js";var l={...o},u={...i},d=0,f={};function p(e={}){l={...o,...e};for(let e of Object.keys(f))delete f[e]}function m(e={}){u={...i,...e}}function h(){p(),m()}var g=a(`assistant`);function _(e){return l[e]??o[e]??!1}function v(e){return u[e]??i[e]??``}var y=n(t()(t=>{let n=t;return{...o,...g.bool,hasHydrated:!1,stringFlags:{...i,...g.str},setFlags:e=>t(t=>{p(e);let n={...e,...g.bool};return Object.keys(n).some(e=>n[e]!==t[e])?n:t}),setFlag:(n,i,a)=>{let o=++d,u=()=>{if(f[n]!==o)return;delete f[n];let a=_(n);t(e=>e[n]===i?{[n]:a}:e),e.error(`Couldn't update "${r(n)?.label??n}" — change reverted.`)},p=s(n);!a||!p||(f[n]=o,c({path:{assistant_id:a,flag_key:p},body:{enabled:i},throwOnError:!1}).then(e=>{e.response?.ok?(l[n]=i,f[n]===o&&delete f[n]):u()}).catch(u),t({[n]:g.bool[n]??i}))},markHydrated:()=>t({hasHydrated:!0}),resetForAssistantSwitch:()=>{h(),t({...o,...g.bool,hasHydrated:!1}),n({stringFlags:{...i,...g.str}})},setStringFlags:e=>n(t=>{m(e);let n={...e,...g.str},r=t.stringFlags;return Object.keys(n).some(e=>n[e]!==r[e])?{stringFlags:n}:t}),setStringFlag:(t,i,a)=>{let o=++d,l=()=>{if(f[t]!==o)return;delete f[t];let a=v(t);n(e=>e.stringFlags[t]===i?{stringFlags:{...e.stringFlags,[t]:a}}:e),e.error(`Couldn't update "${r(t)?.label??t}" — change reverted.`)},p=s(t);!a||!p||(f[t]=o,c({path:{assistant_id:a,flag_key:p},body:{enabled:i},throwOnError:!1}).then(e=>{e.response?.ok?(u[t]=i,f[t]===o&&delete f[t]):l()}).catch(l),n(e=>({stringFlags:{...e.stringFlags,[t]:g.str[t]??i}})))}}}));export{y as t};
@@ -0,0 +1 @@
1
+ import{n as e,t}from"./create-selectors-8NePGNlX.js";import{t as n}from"./impersonate-version-flag-BhxfH6iZ.js";var r=t(e(e=>({name:null,version:null,setIdentity:(t,r)=>{e({name:t,version:n()??r})},clearIdentity:()=>e({name:null,version:null})})));export{r as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{n as t,t as n}from"./capture-error-Dhiismgm.js";import{t as r}from"./react-DJZBPgpf.js";import{t as i}from"./useQuery-B45lW1Kk.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./loader-circle-Cz7opInR.js";import"./src-DZbMXyC2.js";import{t as s}from"./tag-CV4v7fRF.js";import{n as c}from"./toast-xTp-xwYL.js";import{n as l}from"./auth-store-B8a9KLUt.js";import{a as u,r as d}from"./api-D2xHldt2.js";import{t as f}from"./assistant-feature-flag-store-4edQKaeq.js";import{t as p}from"./use-active-assistant-id-CGeH4Gl6.js";import{t as m}from"./environment-store-Bxe2pTvW.js";var h=e(r(),1),g=a();function _({value:e,max:t,caption:n}){let r=t>0?Math.max(0,Math.min(e/t*100,100)):0,i=r>90;return(0,g.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,g.jsx)(`div`,{className:`h-2 w-full overflow-hidden rounded-full bg-[var(--surface-active)]`,children:(0,g.jsx)(`div`,{className:`h-full rounded-full transition-[width] duration-200`,style:{width:`${r}%`,backgroundColor:i?`var(--system-negative-strong)`:`var(--system-positive-strong)`}})}),n&&(0,g.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:n})]})}var v=7,y=2e3;function b({version:e,loading:t,assistantId:n}){let r=(0,h.useRef)(0),i=(0,h.useRef)(null),[a,s]=(0,h.useState)(null),c=(0,h.useCallback)(()=>{if(r.current+=1,r.current>=v){r.current=0;let e=f.getState(),t=!e.settingsDeveloperNav;e.setFlag(`settingsDeveloperNav`,t,n),s(t?`Developer mode enabled`:`Developer mode disabled`),i.current!==null&&clearTimeout(i.current),i.current=setTimeout(()=>{s(null),i.current=null},y)}},[n]);return(0,h.useEffect)(()=>()=>{i.current!==null&&clearTimeout(i.current)},[]),t?(0,g.jsxs)(`span`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,g.jsx)(o,{className:`h-4 w-4 animate-spin`}),`Loading version...`]}):e?(0,g.jsxs)(`div`,{children:[(0,g.jsx)(`button`,{type:`button`,className:`break-all text-left text-body-medium-lighter text-[var(--content-default)]`,onClick:c,children:e}),a&&(0,g.jsx)(`p`,{className:`mt-1 text-body-small-default text-[var(--content-accent)]`,children:a})]}):(0,g.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`—`})}var x=`currentAssistant`,S=4e3,C=9e4;function w(e,t){return(e.memory?.maxMb??null)!==(t.memory?.maxMb??null)||(e.cpu?.maxCores??null)!==(t.cpu?.maxCores??null)}function T(){let e=p(),{data:r=null,isLoading:a,refetch:o}=i({queryKey:[x,e],queryFn:async()=>{let t=await d(e);return t.ok?t.data:null},retry:!1}),s=r?.id,[l,f]=(0,h.useState)(null),[m,g]=(0,h.useState)(!1),[_,v]=(0,h.useState)(!1),y=(0,h.useRef)(0),b=(0,h.useRef)(0),T=(0,h.useCallback)(async e=>{if(!s)return f(null),g(!1),null;y.current+=1;let r=y.current;g(!0);try{let t=await u(s);return r===y.current?t.ok?(f(t.data),t.data):(e?.keepStaleOnError||f(null),null):null}catch(i){return r===y.current?(e?.keepStaleOnError||f(null),!t(i)&&!e?.keepStaleOnError&&(n(i,{context:`fetch_assistant_healthz`}),c.error(`Failed to load assistant info`)),null):null}finally{r===y.current&&g(!1)}},[s]);return(0,h.useEffect)(()=>{T()},[T]),(0,h.useEffect)(()=>()=>{b.current+=1,v(!1),f(null)},[s]),{assistant:r,assistantLoading:a,healthz:l,healthzLoading:m,healthzPolling:_,refetch:(0,h.useCallback)(async()=>{await o(),await T()},[o,T]),refetchUntilResized:(0,h.useCallback)(async e=>{let t=++b.current,n=Date.now()+C;v(!0);let r=e;try{for(o();Date.now()<n&&t===b.current;){if(await new Promise(e=>setTimeout(e,S)),t!==b.current)return;let e=await T({keepStaleOnError:!0});if(t!==b.current)return;if(e){if(r==null){r=e;continue}if(w(e,r))return}}}finally{t===b.current&&v(!1)}},[T,o])}}function E({assistant:e,assistantLoading:t,healthz:n,healthzLoading:r}){let i=m.use.isNonProduction(),a=l.use.user()?.email;if(t)return(0,g.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,g.jsx)(o,{className:`h-4 w-4 animate-spin`}),`Loading assistant info...`]});if(!e)return(0,g.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No assistant found. Hatch an assistant to get started.`});let c=n?.version??e.current_release_version;return(0,g.jsxs)(`div`,{className:`grid grid-cols-[140px_minmax(0,1fr)] gap-y-3`,children:[a&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(O,{children:`Account`}),(0,g.jsx)(k,{children:a})]}),(0,g.jsx)(O,{children:`Name`}),(0,g.jsx)(k,{children:e.name}),e.description&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(O,{children:`Description`}),(0,g.jsx)(k,{children:e.description})]}),(0,g.jsx)(O,{children:`Status`}),(0,g.jsx)(`div`,{children:(0,g.jsx)(s,{tone:e.status===`active`?`positive`:`neutral`,children:e.status})}),(0,g.jsx)(O,{children:`Assistant ID`}),(0,g.jsx)(`span`,{className:`break-all font-mono text-body-small-default text-[var(--content-tertiary)]`,children:e.id}),i&&e.machine_id&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(O,{children:`Machine ID`}),(0,g.jsx)(`span`,{className:`break-all font-mono text-body-small-default text-[var(--content-tertiary)]`,children:e.machine_id})]}),(0,g.jsx)(O,{children:`Created`}),(0,g.jsx)(k,{children:e.created?new Date(e.created).toLocaleDateString():`Unknown`}),(0,g.jsx)(O,{children:`Version`}),(0,g.jsx)(b,{version:c??null,loading:r&&!e.current_release_version,assistantId:e.id??null})]})}function D(e){return e>=1024?`${(e/1024).toFixed(1)} GB`:`${e.toFixed(0)} MB`}function O({children:e}){return(0,g.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:e})}function k({children:e}){return(0,g.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e})}export{_ as i,D as n,T as r,E as t};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-BgQ9CqZD.js","assets/preload-helper-BewR0kVT.js","assets/dist-RkT480s0.js","assets/esm-D_FdLNK8.js"])))=>i.map(i=>d[i]);
2
+ import{a as e,c as t,i as n,t as r}from"./local-settings-lVNyIOJ_.js";import{a as i,n as a,r as o,t as s}from"./device-settings-BBwtGKJb.js";import{o as c,t as l}from"./capture-error-Dhiismgm.js";import{t as u}from"./preload-helper-BewR0kVT.js";import{t as d}from"./useQuery-B45lW1Kk.js";import{n as f,t as p}from"./create-selectors-8NePGNlX.js";import{C as ee,E as te,O as ne,T as re,at as ie,c as ae,ct as m,et as oe,f as se,g as h,h as ce,i as le,it as ue,l as g,n as de,nt as _,ot as fe,p as v,r as pe,rt as me,s as he,st as y,tt as ge,v as _e,w as ve,y as ye}from"./local-mode-Bskd5bsT.js";import{t as b}from"./is-electron-y5bNUVyG.js";import{n as x,t as be}from"./resolved-assistants-store-DAzPZ1eV.js";import{n as xe,r as S,t as Se}from"./api-errors-CrWDzVca.js";import{t as C}from"./client.gen-DVfIRXUZ.js";import{M as Ce,N as we,wt as Te}from"./sdk.gen-CmKfVpgB.js";import{a as Ee,c as w,r as De}from"./api-D2xHldt2.js";import{n as Oe,t as ke}from"./event-bus-BNx4a0Ds.js";import{S as T,a as Ae,b as je,d as Me,h as Ne,i as Pe,l as Fe,t as Ie,u as Le,v as Re,w as ze,y as Be}from"./native-biometric-Dy5Vb7o0.js";import{o as Ve}from"./remote-gateway-session-CBKZhJak.js";import{t as He}from"./dist-RkT480s0.js";import{r as Ue}from"./typed-storage-BRvgA7pX.js";var E=p(f(()=>({assistantState:{kind:`loading`},operationalStatusAssistantId:null,expectingFirstMessage:!1}))),We=new Set;function Ge(e){return We.add(e),()=>{We.delete(e)}}function Ke(){for(let e of We)try{e()}catch{}}var qe=new Set([502,503,504]),Je=`Connection interrupted. Reconnecting…`;function Ye(e){return e.code===`proxy_network_error`?!0:(typeof e.detail==`string`?e.detail:``).includes(`net::ERR_`)}function Xe(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`}:Ye(e.error)?{kind:`error`,transient:!0,message:Je}:{kind:`error`,message:S(e.error,void 0,`Failed to check assistant status.`)}}function Ze(e){return e===void 0||e>=500}var Qe=`platform_hosted_disabled`,$e=`We are at capacity for Vellum Managed Assistants, more will be available soon!`;function et(e,t){return e===503?t?.code===Qe:!1}var tt=2e3,nt=3e4;function rt(e){return Math.min(tt*2**e,nt)}var it=3e5;function at(){return{kind:`error`,message:`Your assistant is taking longer than expected to start. Please try again, or check the community for help.`}}var ot=[`assistant`,`current`],st=3e3,ct=new Set([`initializing`,`cleaning_up`]);function lt(e){if(!e)return!1;let t=Xe(e);return ct.has(t.kind)?st:!1}function ut(e){return e?[...ot,e]:ot}function dt(e){let t=e.selectedPlatformAssistantId??null;return d({queryKey:ut(t),queryFn:()=>De(t??void 0),enabled:e.enabled,retry:!1,refetchInterval:e=>lt(e.state.data),refetchOnWindowFocus:!1})}var ft=new Set([`healthy`,`ok`]);function pt(e){if(!e.ok)return`unreachable`;let t=e.data?.status;return t===`MIGRATING`?`migrating`:t!==void 0&&!ft.has(t)?`unhealthy`:`healthy`}function mt(){let e=E.use.assistantState();return e.kind===`self_hosted`||e.kind===`active`&&e.isLocal?e.health??null:null}var D=e=>e===`authenticated`,ht=e=>e!==`initializing`,O=e=>e===`present`,gt=(e,t)=>e===`present`&&!t,_t=new Set([401,403,410]),vt=e=>!e.ok&&e.status!==void 0&&_t.has(e.status),yt=4e3,bt=6e4,xt=5e3;function St(){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 k=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;probeLoopAssistantId=null;errorRetryTimer=null;errorRetryAttempt=0;constructor(){Ge(()=>this.onUnreachable()),Oe(`app.online`,()=>this.onNetworkOnline()),x.subscribe((e,t)=>{e.selectedAssistantId!==t.selectedAssistantId&&(!m()||this.state.kind===`loading`||this.applyGatewayAuthShortCircuit())})}setInputs(e){this.inputs=e,this.ready=!0}resetForLogout(){x.getState().activeAssistantId!==null&&x.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(m()){this.applyGatewayAuthShortCircuit();return}if(!D(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(m()){this.applyGatewayAuthShortCircuit();return}let t=this.generation;try{let n=e??this.inputs.selectedPlatformAssistantId??null,r=await this.inputs.queryClient.fetchQuery({queryKey:ut(n),queryFn:()=>De(n??void 0),staleTime:0});if(t!==this.generation||n&&!r.ok&&r.status===404&&(x.getState().setSelectedAssistant(null),r=await this.inputs.queryClient.fetchQuery({queryKey:ot,queryFn:()=>De(),staleTime:0}),t!==this.generation))return;await this.applyServerStateUpdate(r)}catch(e){if(console.error(`Error checking assistant status:`,e),l(e,{context:`check_assistant`}),t!==this.generation||this.degradeOnTransportFailure())return;this.transition({kind:`error`,transient:!0,message:Je})}}degradeOnTransportFailure(){return this.state.kind===`active`?(this.triggerReachabilityProbe(),!0):this.state.kind===`initializing`||this.state.kind===`cleaning_up`}retryAssistant(){this.ready&&this.checkAssistant()}markExpectingFirstMessage(){E.getState().expectingFirstMessage||E.setState({expectingFirstMessage:!0})}clearExpectingFirstMessage(){E.getState().expectingFirstMessage&&E.setState({expectingFirstMessage:!1})}transition(e){let t=this.state.kind;this.state=e,E.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=rt(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++,c(`Assistant stuck in initializing state`,{level:`warning`,extra:{timeoutMs:it}}),this.transition(at())},it)}projectActive(e){let t=e.data.maintenance_mode,n=e.data.is_local??!1;_(null),this.setOperationalStatusAssistantId(e.data.id);let r=x.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=x.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=le();if(h())e=St();else if(n){let r=g();e=`${window.location.origin}${n}`,t=r?.assistantId??t}_({url:e,token:ie()}),this.setOperationalStatusAssistantId(null),x.getState().setActiveAssistantId(t),this.transition({kind:`active`,isLocal:!0}),this.startHealthHeartbeat(t)}async applyServerStateUpdate(e){let t=this.generation,n=Xe(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=!h()&&n?await ne(r).catch(()=>null):null,a=i?.ok&&i.state===`upgrading`?`upgrading`:`unreachable`;if(a!==`upgrading`)try{a=pt(await Ee(e))}catch{a=`unreachable`}if(a===`unreachable`&&!i&&!h()&&(i=await ne(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||x.getState().activeAssistantId!==e)return;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>bt){n();return}await this.probeReachability(e);let i=this.state;if(i.kind!==`active`||i.reachable===!0){n();return}if(Date.now()-t>bt){n();return}this.probeTimer=setTimeout(()=>void r(),yt)};this.probeTimer=setTimeout(()=>void r(),yt)}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(),xt)))};n()}cancelHealthHeartbeat(){this.healthHeartbeatToken++,this.healthHeartbeatId=null,this.healthHeartbeatTimer&&=(clearTimeout(this.healthHeartbeatTimer),null)}onUnreachable(){this.triggerReachabilityProbe()}triggerReachabilityProbe(){if(this.state.kind!==`active`)return;let e=x.getState().activeAssistantId;if(e){if(this.transition({...this.state,reachable:!1}),this.healthHeartbeatId===e){this.probeReachability(e);return}this.startProbeLoop(e)}}setLocalAssistantUpgradeInProgress(e,t){if(x.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,E.setState({expectingFirstMessage:!1,operationalStatusAssistantId:null}),this.inputs={sessionStatus:`initializing`,hasPlatformSession:!1,queryClient:null},E.setState({assistantState:this.state}),x.setState({activeAssistantId:null})}setOperationalStatusAssistantId(e){E.getState().operationalStatusAssistantId!==e&&E.setState({operationalStatusAssistantId:e})}};function Ct(e){let{assistants:t,selectedAssistantId:n,assistantsHydrated:r}=x.getState(),i=be(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=de()?.assistantId??null;return o!==null&&a(o)?o:i[0]?.id??null}async function A(e){x.getState().setSelectedAssistant(e),e!==null&&await ee(e)}var wt=`vellum:auth:userSnapshot`;function Tt(e){if(e)try{localStorage.setItem(wt,JSON.stringify(e))}catch{}}function Et(){try{let e=localStorage.getItem(wt);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 Dt(){try{localStorage.removeItem(wt)}catch{}}var Ot=`vellum_active_organization_id`;function kt(){return globalThis.sessionStorage===void 0?null:globalThis.sessionStorage}function At(){let e=kt();if(!e)return null;try{return e.getItem(Ot)}catch{return null}}function jt(e){let t=kt();if(t)try{t.setItem(Ot,e)}catch{}}function Mt(){let e=kt();if(e)try{e.removeItem(Ot)}catch{}}function Nt(e,t){return e.length===0?null:t&&e.some(e=>e.id===t)?t:e[0].id}var j=p(f()((e,t)=>({organizations:[],currentOrganizationId:null,status:`idle`,error:null,fetchOrganizations:async()=>{e({status:`loading`,error:null});try{let n=(await Te()).data?.results??[],r=Nt(n,t().currentOrganizationId??At());r&&jt(r),e({organizations:n,currentOrganizationId:r,status:r?`ready`:`error`,error:r?null:`No organization available for this user.`})}catch(t){e({status:`error`,error:t instanceof Error&&t.message?t.message:`Failed to load organizations.`})}},setCurrentOrganizationId:n=>{let{organizations:r}=t();r.some(e=>e.id===n)&&(jt(n),e({currentOrganizationId:n,status:`ready`}))},clearOrganization:()=>{Mt(),e({organizations:[],currentOrganizationId:null,status:`idle`,error:null})}})));function M(){return j.getState().currentOrganizationId??At()}function Pt(){j.getState().clearOrganization()}function Ft(){let e=0,t=j.subscribe(t=>{(t.status===`ready`||t.status===`error`)&&(e=Date.now())}),n=$.subscribe((e,t)=>{let n=O(e.platformSession),r=O(t.platformSession);n&&(!r||e.user?.id!==t.user?.id)&&j.getState().fetchOrganizations()}),r=()=>{if(!O($.getState().platformSession))return;let{status:t}=j.getState();(t===`ready`||t===`error`)&&Date.now()-e>1e4&&j.getState().fetchOrganizations()},i=Oe(`app.resume`,()=>{r()});return()=>{t(),n(),i()}}function It(e,t={}){let n={...e??{}},r=t.includeSelfHostedActorToken===!1?null:oe();if(r)return n.Authorization=`Bearer ${r}`,n;let i=t.organizationId??M();i&&(n[`Vellum-Organization-Id`]=i);let a=je();return a&&(n[`X-Session-Token`]=a),n}async function Lt(e,t={}){let n=It(e,t);if(n.Authorization||b())return n;await Re();let r=Be();return r&&(n[`X-CSRFToken`]=r),n}var Rt;function zt(){return b()?(Rt===void 0&&(Rt=window.__VELLUM_CONFIG__?.deviceId??null),Rt):null}var Bt=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,Vt=`X-Vellum-Electron-Renderer-Origin`,Ht=new Map,Ut=[2e3,5e3,15e3,3e4,6e4],Wt=new Set;async function Gt(e,t={}){if(!v()||h()||ce()||cn(e))return e;let n=qt(e);if(!n)return e;let r=Ht.get(n.assistantId);if(r)return r;let i=Jt(n,{allowGatewayRepair:t.allowGatewayRepair??!0});Ht.set(n.assistantId,i);try{return await i}catch(e){throw Ht.delete(n.assistantId),e}}function Kt(e,t={}){if(!v()||h()||ce())return;let n=e;if(!n){let e=g();if(!e||!se(e))return;n=e.assistantId}if(Wt.has(n))return;Wt.add(n);let r=n;(async()=>{try{for(let e=0;;e++)try{await Gt(r,{allowGatewayRepair:t.allowGatewayRepair??!1});return}catch(n){let r=Ut[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{Wt.delete(r)}})()}function qt(e){let t=de();if(t?.assistantId===e&&se(t))return t;let n=g();return n?.assistantId===e&&se(n)?n:null}async function Jt(e,t){let n=await Xt(e,t),r=await Zt(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 Yt(e,{platformAssistantId:i,platformBaseUrl:r?.baseUrl??ae(),organizationId:t}),i}let a=await Qt(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??zt()??null;if(!o)throw Error(`Unable to identify this local assistant host for platform registration.`);let s=await $t(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 en(e,a,o));let d=r?.baseUrl??ae();return await nn(n,{assistantApiKey:u,platformAssistantId:l,platformBaseUrl:d,organizationId:a,webhookSecret:P(s.webhook_secret)}),await Yt(e,{platformAssistantId:l,platformBaseUrl:d,organizationId:a}),l}async function Yt(e,t){await re({...e,platformAssistantId:t.platformAssistantId,platformBaseUrl:t.platformBaseUrl,platformOrganizationId:t.organizationId}).catch(e=>{console.warn(`local assistant platform lockfile update failed`,e)})}async function Xt(e,t){let n=ge(),r=oe();if(t.allowGatewayRepair&&(!n||!r)&&(await ye(e),n=ge(),r=oe()),!n||!r){let t=le(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 Zt(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:ln(i?.hasAssistantApiKey,i?.has_assistant_api_key),clientInstallationId:N(i?.clientInstallationId,i?.client_installation_id)}}async function Qt(e,t){return(e??t.platformOrganizationId??M()??t.organizationId??null)||(await j.getState().fetchOrganizations().catch(()=>{}),M()??t.platformOrganizationId??t.organizationId??null)}async function $t(e,t,n){return await tn(`/v1/assistants/self-hosted-local/ensure-registration/`,e,t,n)}async function en(e,t,n){return P((await tn(`/v1/assistants/self-hosted-local/reprovision-api-key/`,e,t,n)).provisioning?.assistant_api_key)}async function tn(e,t,n,r){let i=new Headers({...await Lt({Accept:`application/json`,"Content-Type":`application/json`},{includeSelfHostedActorToken:!1,organizationId:n})}),a=je();if(b()){if(!a)throw Error(`Sign in to Vellum to register this local assistant.`);i.set(Vt,`${window.location.protocol}//${window.location.host}`)}let o=await fetch(new URL(e,window.location.origin).toString(),{method:`POST`,headers:i,credentials:b()?`omit`:`same-origin`,body:JSON.stringify({client_installation_id:r,runtime_assistant_id:t.assistantId,client_platform:b()?`macos`:`web`})}).catch(e=>{throw Error(`Unable to reach the platform registration endpoint: ${on(e)}`)});if(!o.ok){let e=await an(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: ${on(e)}`)}}async function nn(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])=>rn(e,t,n))),t.assistantApiKey&&await rn(e,`vellum:assistant_api_key`,t.assistantApiKey)}async function rn(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}: ${on(e)}`)});if(!r.ok){let e=await an(r);throw Error(`Unable to store ${t} on the local assistant (HTTP ${r.status})${e?`: ${e}`:`.`}`)}return!0}async function an(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 on(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 Bt.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 ln(...e){for(let t of e)if(typeof t==`boolean`)return t;return null}var un=`.dev`;function dn(e){let t=JSON.parse(e);return typeof t.token==`string`&&typeof t.bundleId==`string`&&typeof t.assistantId==`string`?{token:t.token,bundleId:t.bundleId,assistantId:t.assistantId}:null}var fn=Ue({key:`vellum:push_registration`,scope:`user`,parse:dn,serialize:JSON.stringify,fallback:null}),pn=!1,mn=null,F=null,I=new Set;function hn(e){I.add(e),e.finally(()=>{I.delete(e)})}function gn(){return Le()&&He.getPlatform()===`ios`}function _n(e){return e.endsWith(un)?`development`:`production`}async function vn(e,t){try{let{App:n}=await u(async()=>{let{App:e}=await import(`./esm-BgQ9CqZD.js`);return{App:e}},__vite__mapDeps([0,1,2])),{id:r}=await n.getInfo(),i=await we({path:{assistant_id:t},body:{token:e,platform:`ios`,bundle_id:r,apns_environment:_n(r)},throwOnError:!1});if(i.error){l(i.error,{context:`push_registration_upsert`,level:`warning`,bestEffort:!0});return}F={token:e,bundleId:r,assistantId:t},fn.save(F)}catch(e){l(e,{context:`push_registration_upsert`,level:`warning`,bestEffort:!0})}}function yn(e){if(typeof e!=`object`||!e)return;let t=e,n=t.deep_link;if(typeof n==`object`&&n){let e=n.conversationId;if(typeof e==`string`)return e}return typeof t.conversationId==`string`?t.conversationId:void 0}async function bn(){if(!pn){pn=!0;try{let{PushNotifications:e}=await u(async()=>{let{PushNotifications:e}=await import(`./esm-D_FdLNK8.js`);return{PushNotifications:e}},__vite__mapDeps([3,2]));await e.addListener(`registration`,e=>{let t=mn;t&&hn(vn(e.value,t))}),await e.addListener(`registrationError`,e=>{l(e,{context:`push_registration_apns`,level:`warning`})}),await e.addListener(`pushNotificationActionPerformed`,e=>{let t=yn(e.notification.data);t&&ke(`deeplink.openThread`,{threadId:t})})}catch(e){pn=!1,l(e,{context:`push_registration_listeners`,level:`warning`})}}}async function xn(e){if(gn()){mn=e,F&&F.assistantId!==e&&hn(vn(F.token,e));try{let{PushNotifications:e}=await u(async()=>{let{PushNotifications:e}=await import(`./esm-D_FdLNK8.js`);return{PushNotifications:e}},__vite__mapDeps([3,2]));if(await bn(),(await e.requestPermissions()).receive!==`granted`)return;await e.register()}catch(e){l(e,{context:`push_registration_register`,level:`warning`})}}}async function Sn(){for(mn=null;I.size>0;)await Promise.allSettled([...I]);let e=F??fn.load();if(F=null,fn.remove(),!(!e||!gn()))try{let t=await Ce({path:{assistant_id:e.assistantId,token:e.token},query:{bundle_id:e.bundleId},throwOnError:!1});t.error&&l(t.error,{context:`push_registration_delete`,level:`warning`,bestEffort:!0,extra:{assistantId:e.assistantId,bundleId:e.bundleId}})}catch(e){l(e,{context:`push_registration_delete`,level:`warning`,bestEffort:!0})}}function Cn(e){return e}function wn(e,t,n){if(!e||typeof e!=`object`||Array.isArray(e))return{code:null,message:n};let r=Cn(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=Cn(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 Tn={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 En(){let{data:e,error:t,response:n}=await C.get({url:`/v1/user/me/`,throwOnError:!1});if(xe(n,t,`Failed to load profile.`),!n.ok||!e)throw new Se(n.status,S(t,n,`Failed to load profile.`));return e}var Dn=`Please choose a different handle.`;async function On(e){let{data:t,error:n,response:r}=await C.patch({url:`/v1/user/me/`,body:e,throwOnError:!1});if(!r)return{kind:`error`,message:S(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}=wn(n,`username`,Tn.taken);return{kind:`taken`,message:e}}if(r.status===400){let{code:e,message:t}=wn(n,`username`,Dn);return{kind:`invalid`,code:e,message:t}}return{kind:`error`,message:S(n,r,`Failed to save profile.`)}}async function kn(){let{data:e,error:t,response:n}=await C.get({url:`/v1/user/consent/`,throwOnError:!1});if(xe(n,t,`Failed to load consent.`),!n.ok||!e)throw new Se(n.status,S(t,n,`Failed to load consent.`));return e}async function L(e){await C.put({url:`/v1/user/consent/`,body:e,throwOnError:!0})}async function An(e,t){let{data:n,error:r,response:i}=await C.get({url:`/v1/user/username-available/`,query:{username:e},signal:t,throwOnError:!1});if(xe(i,r,`Failed to check handle availability.`),!i.ok||!n)throw new Se(i.status,i.status===429?`Too many checks — try again in a moment.`:S(r,i,`Failed to check handle availability.`));return n}function R(e){i(`diagnosticsReporting`,e)}function jn(e,t){let n=Mn(e);return n!==null&&t(n),R(n??a(`shareDiagnostics`,!0)),n}function Mn(e){let{shareDiagnostics:t,hasServerRecord:n}=e;return t===!1?!1:n&&t===!0?!0:null}var Nn=s(`shareAnalytics`),Pn=s(`shareDiagnostics`),Fn=f()(t=>({shareAnalytics:r(Nn,!0),shareDiagnostics:r(Pn,!0),tosAccepted:!1,privacyConsent:!1,analyticsConsentCurrent:!1,diagnosticsConsentCurrent:!1,consentHydrated:!1,setShareAnalytics:n=>{t({shareAnalytics:n}),e(Nn,n)},setShareDiagnostics:n=>{t({shareDiagnostics:n}),e(Pn,n)},setTosAccepted:e=>{t({tosAccepted:e})},setPrivacyConsent:e=>{t({privacyConsent:e})},setAnalyticsConsentCurrent:e=>{t({analyticsConsentCurrent:e})},setDiagnosticsConsentCurrent:e=>{t({diagnosticsConsentCurrent:e})},setConsentHydrated:e=>{t({consentHydrated:e})}})),z=p(Fn),In=new Map([[Nn,`shareAnalytics`],[Pn,`shareDiagnostics`]]),Ln={shareAnalytics:!0,shareDiagnostics:!0};for(let[e,n]of In)t(e,()=>{let t=r(e,Ln[n]??!1);Fn.setState({[n]:t})});var B=`2026-06-08`,V=`2026-06-22`,H=`2026-06-18`,U=`2026-06-18`,Rn=`2026-06-08`,zn={tos:B,privacy:V,share_analytics:H,share_diagnostics:U};function W(e,t){return`device:consent:${e}:v${zn[e]}:${t}`}function Bn(e){return`device:consent:ai:v${Rn}:${e}`}function Vn(e){if(typeof window>`u`||!e)return{tos:!1,privacy:!1,analyticsCurrent:!1,diagnosticsCurrent:!1};try{let t=r(W(`share_analytics`,e),!1),i=r(W(`share_diagnostics`,e),!1),a=r(W(`tos`,e),!1),o=r(W(`privacy`,e),!1);if(r(Bn(e),!1)&&n(Bn(e)),a||o)return{tos:a,privacy:o,analyticsCurrent:t,diagnosticsCurrent:i};let s=r(`vellum:onboarding:tosAccepted`,!1),c=r(`vellum:onboarding:aiDataConsent`,!1);return s||c?(Hn(e,s,!1),{tos:s,privacy:!1,analyticsCurrent:t,diagnosticsCurrent:i}):{tos:!1,privacy:!1,analyticsCurrent:t,diagnosticsCurrent:i}}catch{return{tos:!1,privacy:!1,analyticsCurrent:!1,diagnosticsCurrent:!1}}}function Hn(t,n,r){if(!(typeof window>`u`||!t))try{e(W(`tos`,t),n),e(W(`privacy`,t),r)}catch{}}function G(t,n){if(!(typeof window>`u`||!t))try{n.analyticsCurrent!==void 0&&e(W(`share_analytics`,t),n.analyticsCurrent),n.diagnosticsCurrent!==void 0&&e(W(`share_diagnostics`,t),n.diagnosticsCurrent)}catch{}}function Un(e){if(n(`vellum:onboarding:tosAccepted`),n(`vellum:onboarding:aiDataConsent`),n(`vellum:onboarding:selectedVersion`),!(typeof window>`u`||!e))try{n(W(`tos`,e)),n(W(`privacy`,e)),n(Bn(e)),n(W(`share_analytics`,e)),n(W(`share_diagnostics`,e))}catch{}}function K(e,t){return e>=t}function Wn(e){if(!e)return{tos:!1,privacy:!1,shareAnalytics:null,shareDiagnostics:null,analyticsCurrent:!1,diagnosticsCurrent:!1,analyticsVersionCurrent:!1,diagnosticsVersionCurrent:!1,hasServerRecord:!1};let t=K(e.share_analytics_accepted_version,H),n=K(e.share_diagnostics_accepted_version,U),r=!!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,i=e.share_analytics===!0&&!e.share_analytics_accepted_version,a=e.share_diagnostics===!0&&!e.share_diagnostics_accepted_version;return{tos:K(e.tos_accepted_version,B),privacy:K(e.privacy_policy_accepted_version,`2026-06-22`)&&K(e.ai_data_sharing_accepted_version,`2026-06-22`),shareAnalytics:i?null:e.share_analytics,shareDiagnostics:a?null:e.share_diagnostics,analyticsCurrent:e.share_analytics===null||i||t,diagnosticsCurrent:e.share_diagnostics===null||a||n,analyticsVersionCurrent:t,diagnosticsVersionCurrent:n,hasServerRecord:r}}function Gn(e){let t=z.getState();t.setTosAccepted(e.tos),t.setPrivacyConsent(e.privacy),e.shareAnalytics!==null&&t.setShareAnalytics(e.shareAnalytics),e.shareDiagnostics!==null&&(t.setShareDiagnostics(e.shareDiagnostics),R(e.shareDiagnostics)),t.setAnalyticsConsentCurrent(!0),t.setDiagnosticsConsentCurrent(!0),t.setConsentHydrated(!0),Hn(e.userId,e.tos,e.privacy),G(e.userId,{...e.shareAnalytics===null?{}:{analyticsCurrent:!0},...e.shareDiagnostics===null?{}:{diagnosticsCurrent:!0}}),e.hasPlatformSession&&L({tos_accepted_version:e.tos?B:``,privacy_policy_accepted_version:e.privacy?V:``,ai_data_sharing_accepted_version:e.privacy?V:``,...e.shareAnalytics===null?{}:{share_analytics:e.shareAnalytics,share_analytics_accepted_version:H},...e.shareDiagnostics===null?{}:{share_diagnostics:e.shareDiagnostics,share_diagnostics_accepted_version:U}}).catch(()=>{})}function Kn(e,t,n){let r=z.getState(),{userId:a,hasPlatformSession:o}=n;e===`share_analytics`?(r.setShareAnalytics(t),i(`shareAnalytics`,t),o&&(r.setAnalyticsConsentCurrent(!0),G(a,{analyticsCurrent:!0}))):(r.setShareDiagnostics(t),i(`shareDiagnostics`,t),R(t),o&&(r.setDiagnosticsConsentCurrent(!0),G(a,{diagnosticsCurrent:!0}))),o&&L({[e]:t,[`${e}_accepted_version`]:zn[e]}).catch(()=>{})}var qn=`vellum:`,Jn=[`onboarding.`,`voice:`,`gw:`,`ff:client:`,`local:`,`integrations.`,`vellumDebug.`,`vellum_`],Yn=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 Xn(e){return e.startsWith(qn)?!0:Yn.has(e)?!1:Jn.some(t=>e.startsWith(t))}function Zn(){try{sessionStorage.clear()}catch{}try{let e=[];for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);n&&Xn(n)&&e.push(n)}e.forEach(e=>localStorage.removeItem(e))}catch{}}function Qn(e){return e?.id??e?.email??e?.username??null}function q(e){return e?{kind:`platform`,id:Qn(e),username:e.username??null,email:e.email??null,isStaff:e.is_staff??!1,firstName:e.first_name??``,lastName:e.last_name??``}:null}var $n=null,J=null,er=!1,tr={kind:`local`,id:`gateway-local`,username:`local`,email:null,isStaff:!1,firstName:`Local`,lastName:`User`},Y=e=>(Tt(e),{sessionStatus:`authenticated`,user:e,platformSession:`present`,platformSessionRestoredOffline:!1}),X=()=>({sessionStatus:`authenticated`,user:tr}),Z=()=>({sessionStatus:`unauthenticated`,user:null,platformSession:`absent`}),nr=e=>e===null||!e.ok&&!vt(e);async function rr(e){if(!je())return!1;let t=Et();return t?(await Q(t.id),e({...Y(t),platformSessionRestoredOffline:!0}),!0):!1}function ir(e){(!e||$n&&$n!==e)&&Pt(),$n=e}function ar(){J?.postMessage(`auth-changed`)}function or(e){return{...e.tos?{tos_accepted_version:B}:{},...e.privacy?{privacy_policy_accepted_version:V,ai_data_sharing_accepted_version:V}:{},...e.analytics?{share_analytics_accepted_version:H,...e.shareValues?{share_analytics:e.shareValues.analytics}:{}}:{},...e.diagnostics?{share_diagnostics_accepted_version:U,...e.shareValues?{share_diagnostics:e.shareValues.diagnostics}:{}}:{}}}async function Q(e){if(e)try{let t=Wn(await kn()),n=z.getState();t.hasServerRecord&&t.shareAnalytics!==null&&n.setShareAnalytics(t.shareAnalytics),jn({shareDiagnostics:t.shareDiagnostics,hasServerRecord:t.hasServerRecord},n.setShareDiagnostics);let r=t.tos,i=t.privacy,a=t.analyticsCurrent,o=t.diagnosticsCurrent,s=t.shareAnalytics!==null&&t.analyticsVersionCurrent,c=t.shareDiagnostics!==null&&t.diagnosticsVersionCurrent;if(!t.hasServerRecord){let t=Vn(e);a=!0,s=t.analyticsCurrent,o=!0,c=t.diagnosticsCurrent,t.tos&&t.privacy&&(r=!0,i=!0,L(or({tos:!0,privacy:!0,analytics:s,diagnostics:c,shareValues:{analytics:n.shareAnalytics,diagnostics:n.shareDiagnostics}})).catch(()=>{}))}else if(!r||!i||!a||!o){let t=Vn(e),n=!r&&t.tos,l=!i&&t.privacy,u=!a&&t.analyticsCurrent,d=!o&&t.diagnosticsCurrent;n&&(r=!0),l&&(i=!0),u&&(a=!0,s=!0),d&&(o=!0,c=!0),(n||l||u||d)&&L(or({tos:n,privacy:l,analytics:u,diagnostics:d})).catch(()=>{})}n.setTosAccepted(r),n.setPrivacyConsent(i),n.setAnalyticsConsentCurrent(a),n.setDiagnosticsConsentCurrent(o),Hn(e,r,i),G(e,{...s?{analyticsCurrent:!0}:{},...c?{diagnosticsCurrent:!0}:{}}),ir(e),n.setConsentHydrated(!0);return}catch{}let t=Vn(e),n=z.getState();e&&o(`diagnosticsReporting`,``)===``&&R(!1),n.setTosAccepted(t.tos),n.setPrivacyConsent(t.privacy),n.setAnalyticsConsentCurrent(!0),n.setDiagnosticsConsentCurrent(!0),ir(e),n.setConsentHydrated(!0)}var sr=0;Promise.resolve();function cr(e,t={}){let n=++sr,r=()=>n!==sr;T().then(async n=>{if(!r())if(n.ok&&n.data.user){let i=q(n.data.user),a=t.setUserOnSuccess?{user:i}:{};if(t.setUserOnSuccess&&Tt(i),v()){let e=!1,t=()=>!e&&!r();try{await Promise.race([(async()=>{await j.getState().fetchOrganizations();let e=await w();t()&&e.ok&&await ve(e.data,j.getState().currentOrganizationId??void 0,t)})(),new Promise((t,n)=>setTimeout(()=>{e=!0,n(Error(`sync timeout`))},3e3))])}catch{}}if(r())return;e({platformSession:`present`,platformSessionRestoredOffline:!1,...a}),Kt()}else t.clearOnFailure&&e({platformSession:`absent`})}).catch(()=>{r()||t.clearOnFailure&&e({platformSession:`absent`})}).finally(()=>{r()||e(e=>e.platformSession===`unknown`?{platformSession:`absent`}:{})})}function lr(e,t){!v()||y()||he().length>0?cr(e,t):e({platformSession:`absent`})}async function ur(){try{if(await Ve())return!0}catch{}return ie()!==null}var $=p(f()((e,t)=>({sessionStatus:`initializing`,user:null,platformSession:`unknown`,platformSessionRestoredOffline:!1,initSession:async()=>{if(h()){await ur()?e({...X(),platformSession:`absent`}):e(Z());return}if(y()){try{await _e(),e(X())}catch{e({sessionStatus:`unauthenticated`,user:null})}lr(e);return}if(v()&&!y()){if(he().length>0){let t=null;try{if(t=await T(),t.ok&&t.data.user){let n=q(t.data.user);await Q(n?.id??null);try{await j.getState().fetchOrganizations();let e=await w();e.ok&&await ve(e.data,j.getState().currentOrganizationId??void 0)}catch{}e(Y(n));return}}catch{}if(nr(t)){if(await rr(e))return}else Dt();e(Z());return}e(X()),er?e({platformSession:`absent`}):cr(e,{setUserOnSuccess:!0}),er=!1;return}let t=null;try{if(t=await T(),t.ok&&t.data.user){let n=q(t.data.user);await Q(n?.id??null);try{await j.getState().fetchOrganizations();let e=await w();e.ok?x.getState().setFromApi(e.data):x.getState().markHydrated()}catch{x.getState().markHydrated()}e(Y(n));return}}catch(e){console.error(`auth.initSession failed`,e)}if(!(nr(t)&&await rr(e))){if(Le()&&Pe())try{let t=await Ae();if(t){Fe(t),await Ne();let n=await T();if(n.ok&&n.data.user){let t=q(n.data.user);await Q(t?.id??null);try{await j.getState().fetchOrganizations();let e=await w();e.ok?x.getState().setFromApi(e.data):x.getState().markHydrated()}catch{x.getState().markHydrated()}e(Y(t));return}}}catch(e){console.warn(`auth.initSession biometric recovery failed`,e)}await Q(null),nr(t)||Dt(),e(Z())}},connectLocalAssistant:async n=>{await ye(pe().find(e=>e.assistantId===n)),await A(n),e(X()),await k.checkAssistant(),gt(t().platformSession,t().platformSessionRestoredOffline)&&Kt(n),lr(e)},connectPlatformAssistant:async t=>{await A(t);let n=await T();if(!n.ok||!n.data.user)throw Error(`Platform authentication required`);let r=q(n.data.user);await Q(r?.id??null),await j.getState().fetchOrganizations(),e(Y(r))},refreshSession:async()=>{if(h())return await ur()?(e({...X(),platformSession:`absent`}),!0):(e(Z()),!1);if(m()){try{await ue(fe()),e({sessionStatus:`authenticated`})}catch{return e(Z()),!1}return lr(e,{clearOnFailure:!0}),!0}let n=null;try{if(n=await T(),n.ok&&n.data.user){let t=q(n.data.user);if(await Q(t?.id??null),v())try{await j.getState().fetchOrganizations();let e=await w();e.ok&&await ve(e.data,j.getState().currentOrganizationId??void 0)}catch{}return e(Y(t)),!0}}catch(e){console.warn(`auth.refreshSession failed`,e)}if(nr(n))return D(t().sessionStatus);if(y()){let n=D(t().sessionStatus);return n&&(Dt(),e({...X(),platformSession:`absent`})),n}return Dt(),await Q(null),e(Z()),!1},logout:async()=>{if(m()){k.resetForLogout(),await A(null),me(),Pt(),Zn(),e(Z()),ar();return}er=!0,await Sn();try{await ze()}finally{b()&&await window.vellum?.auth?.signOut?.(),v()&&!b()&&await te(),Ie(),Pt(),Zn(),k.resetForLogout(),await A(null),e(Z()),ar()}}}))),dr=()=>D($.use.sessionStatus()),fr=()=>!ht($.use.sessionStatus()),pr=()=>O($.use.platformSession()),mr=()=>gt($.use.platformSession(),$.use.platformSessionRestoredOffline());function hr(){let{refreshSession:e}=$.getState(),t=[],n=()=>e().catch(e=>console.warn(`auth.refreshSession failed`,e)),r=Oe(`app.resume`,()=>{Me()||n()});return t.push(r),typeof BroadcastChannel<`u`&&(J=new BroadcastChannel(`auth`),J.onmessage=()=>{Zn(),window.location.reload()},t.push(()=>{J?.close(),J=null})),()=>t.forEach(e=>e())}export{k as A,Ze as B,Gt as C,j as D,Ft as E,mt as F,Ke as H,dt as I,$e as L,D as M,gt as N,Ct as O,ht as P,et as R,Kt as S,M as T,E as U,qe as V,kn as _,dr as a,wn as b,B as c,Gn as d,Kn as f,An as g,Tn as h,pr as i,O as j,A as k,Un as l,jn as m,$ as n,fr as o,z as p,mr as r,V as s,hr as t,Wn as u,En as v,zt as w,xn as x,On as y,Xe as z};
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-Dhiismgm.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import{t as i}from"./typography-D5f7kt80.js";import"./src-DZbMXyC2.js";import{Bt as a,Lt as o,Rt as s,nt as c,rt as l,u,zt as d}from"./index-CkKSY1-Q.js";import{t as f}from"./status-badge-pill-B_ninpnM.js";import{CodeBlock as p,SectionLabel as m}from"./tool-detail-panel-C6bS4xqt.js";import{t as h}from"./detail-panel-stop-button-B89ORnF4.js";var g=e(n(),1),_=r();function v({status:e}){return(0,_.jsx)(f,{color:o(e),label:s(e)})}function y({entry:e,onClose:n}){let r=a(e.status),o=!r,s=o&&e.output!==void 0&&e.output!==``,f=o&&e.exitCode!=null,[y,b]=(0,g.useState)(!1),x=(0,g.useCallback)(()=>{b(!0),c(e.id).catch(e=>{b(!1),t(e,{context:`BackgroundTaskDetailPanel.stop`})})},[e.id]);return(0,_.jsxs)(u,{Glyph:l(e.toolName),title:d(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})]}),s&&(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};
@@ -0,0 +1 @@
1
+ import{t as e}from"./createLucideIcon-IRfcSUxS.js";var t=e(`ban`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M4.929 4.929 19.07 19.071`,key:`196cmz`}]]);export{t};
@@ -1 +1 @@
1
- import{t as e}from"./createLucideIcon-Bjb-Kuq7.js";var t=e(`bell`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}]]);export{t};
1
+ import{t as e}from"./createLucideIcon-IRfcSUxS.js";var t=e(`bell`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}]]);export{t};
@@ -0,0 +1,3 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/native-file-H6DBFhbO.js","assets/chunk-jRWAZmH_.js","assets/preload-helper-BewR0kVT.js","assets/dist-RkT480s0.js"])))=>i.map(i=>d[i]);
2
+ import{o as e,t}from"./chunk-jRWAZmH_.js";import{t as n}from"./capture-error-Dhiismgm.js";import{t as r}from"./react-DJZBPgpf.js";import{t as i}from"./button-amTXFI-2.js";import{t as a}from"./preload-helper-BewR0kVT.js";import{d as o,h as s,r as c}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as l}from"./QueryClientProvider-DKhXIxGb.js";import{t as u}from"./useQuery-B45lW1Kk.js";import{t as d}from"./useMutation-Lj4VunQV.js";import{t as f}from"./jsx-runtime-CVSDxk6A.js";import{t as p}from"./typography-D5f7kt80.js";import{t as m}from"./card-Bv5O5juh.js";import{t as h}from"./createLucideIcon-IRfcSUxS.js";import{t as g}from"./arrow-left-DI9551VI.js";import{t as _}from"./check-DFNrQERi.js";import{t as v}from"./circle-alert-zOqdmf25.js";import{t as y}from"./circle-check-VSiny8yl.js";import{t as b}from"./copy-Cn1FKrEp.js";import{t as x}from"./cpu-BJuB2Khn.js";import{t as S}from"./credit-card-BuyWdO9t.js";import{n as C,t as w}from"./domain-field-C5a2iMot.js";import{t as T}from"./download-CAuK-nZ6.js";import{t as E}from"./external-link-Dqpx9nRm.js";import{t as D}from"./file-text-CYJz-GvF.js";import{t as O}from"./hard-drive-rDxhoRUm.js";import{t as k}from"./info-DsOyuMO9.js";import{t as A}from"./loader-circle-Cz7opInR.js";import{a as j,c as M,i as N,n as P,r as F,t as ee}from"./resize-errors-DqIkO0UI.js";import{t as te}from"./triangle-alert-Z0Gq0IuB.js";import{t as I}from"./notice-DkcNAP8O.js";import{t as ne}from"./tag-CV4v7fRF.js";import{t as re}from"./input-CoUmPnRU.js";import{t as L}from"./toggle-CDfguvUz.js";import{n as R,t as z}from"./stat-square-CTHnQ1jc.js";import{t as B}from"./modal-D5nLWNN9.js";import{n as V}from"./toast-xTp-xwYL.js";import{t as ie}from"./confirm-dialog-CSkhRFRk.js";import{t as H}from"./dropdown-ByHOpeOU.js";import{ot as ae,st as oe}from"./sdk.gen-CmKfVpgB.js";import{c as se}from"./routes-DYcJgn9k.js";import{n as ce,t as le}from"./browser-WjU02SUS.js";import{t as U}from"./effective-timezone-DYvVVpXt.js";import{$ as ue,B as de,Dt as fe,Et as pe,G as me,H as he,J as ge,K as _e,O as ve,Q as ye,R as be,U as xe,V as W,W as Se,X as Ce,Y as we,Z as Te,at as Ee,c as De,ct as Oe,dt as ke,et as Ae,it as G,nt as je,ot as Me,q as Ne,r as K,rt as Pe,st as Fe,tt as Ie,ut as Le,wt as Re,y as ze,yt as Be,z as Ve}from"./react-query.gen-GVQbBTEp.js";import{D as He,Gr as Ue,Ji as We,Ln as Ge,Sr as Ke,Ur as qe,Wr as Je,_i as Ye,ha as Xe,ja as Ze,yi as Qe}from"./index-CkKSY1-Q.js";import{t as $e}from"./add-credits-modal-B2t4geb6.js";import{t as et}from"./format-date-cTplgJ8P.js";import{a as tt,n as nt,t as rt}from"./llm-dimension-Tz2Fx8qB.js";import{r as it,t as at}from"./usage-window-CCdJWJ0U.js";import{t as ot}from"./environment-store-Bxe2pTvW.js";var st=h(`dollar-sign`,[[`line`,{x1:`12`,x2:`12`,y1:`2`,y2:`22`,key:`7eqyqh`}],[`path`,{d:`M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6`,key:`1b0p4s`}]]),ct=h(`hourglass`,[[`path`,{d:`M5 22h14`,key:`ehvnwv`}],[`path`,{d:`M5 2h14`,key:`pdyrp9`}],[`path`,{d:`M17 22v-4.172a2 2 0 0 0-.586-1.414L12 12l-4.414 4.414A2 2 0 0 0 7 17.828V22`,key:`1d314k`}],[`path`,{d:`M7 2v4.172a2 2 0 0 0 .586 1.414L12 12l4.414-4.414A2 2 0 0 0 17 6.172V2`,key:`1vvvr6`}]]),lt=h(`party-popper`,[[`path`,{d:`M5.8 11.3 2 22l10.7-3.79`,key:`gwxi1d`}],[`path`,{d:`M4 3h.01`,key:`1vcuye`}],[`path`,{d:`M22 8h.01`,key:`1mrtc2`}],[`path`,{d:`M15 2h.01`,key:`1cjtqr`}],[`path`,{d:`M22 20h.01`,key:`1mrys2`}],[`path`,{d:`m22 2-2.24.75a2.9 2.9 0 0 0-1.96 3.12c.1.86-.57 1.63-1.45 1.63h-.38c-.86 0-1.6.6-1.76 1.44L14 10`,key:`hbicv8`}],[`path`,{d:`m22 13-.82-.33c-.86-.34-1.82.2-1.98 1.11c-.11.7-.72 1.22-1.43 1.22H17`,key:`1i94pl`}],[`path`,{d:`m11 2 .33.82c.34.86-.2 1.82-1.11 1.98C9.52 4.9 9 5.52 9 6.23V7`,key:`1cofks`}],[`path`,{d:`M11 13c1.93 1.93 2.83 4.17 2 5-.83.83-3.07-.07-5-2-1.93-1.93-2.83-4.17-2-5 .83-.83 3.07.07 5 2Z`,key:`4kbmks`}]]),ut=h(`target`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`6`,key:`1vlfrh`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]),dt=h(`tree-palm`,[[`path`,{d:`M13 8c0-2.76-2.46-5-5.5-5S2 5.24 2 8h2l1-1 1 1h4`,key:`foxbe7`}],[`path`,{d:`M13 7.14A5.82 5.82 0 0 1 16.5 6c3.04 0 5.5 2.24 5.5 5h-3l-1-1-1 1h-3`,key:`18arnh`}],[`path`,{d:`M5.89 9.71c-2.15 2.15-2.3 5.47-.35 7.43l4.24-4.25.7-.7.71-.71 2.12-2.12c-1.95-1.96-5.27-1.8-7.42.35`,key:`ywahnh`}],[`path`,{d:`M11 15.5c.5 2.5-.17 4.5-1 6.5h4c2-5.5-.5-12-1-14`,key:`ft0feo`}]]),q=e(r(),1),J=f();function ft({onBack:e}){let t=o(),{data:n}=u(K()),r=n?.name||`your assistant`;return(0,J.jsxs)(`div`,{className:`relative flex min-h-[320px] flex-col items-center justify-center overflow-hidden px-8 text-center`,children:[(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-0`,style:{background:`radial-gradient(ellipse 60% 50% at 50% 38%, color-mix(in oklab, var(--system-positive-strong) 14%, transparent), transparent)`},"aria-hidden":`true`}),(0,J.jsxs)(`div`,{className:`relative mb-5 flex items-center justify-center`,style:{animation:`welcome-reveal 600ms ease-out both`},children:[(0,J.jsx)(`div`,{className:`absolute h-24 w-24 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 18%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite`},"aria-hidden":`true`}),(0,J.jsx)(`div`,{className:`absolute h-16 w-16 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 12%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite 0.5s`},"aria-hidden":`true`}),(0,J.jsx)(lt,{className:`relative h-8 w-8 text-[var(--system-positive-strong)]`,strokeWidth:1.5,"aria-hidden":`true`})]}),(0,J.jsx)(`h1`,{className:`relative mb-2 text-[var(--content-emphasised)]`,style:{fontFamily:`var(--font-serif)`,fontSize:`28px`,lineHeight:1,fontWeight:400,animation:`welcome-reveal 600ms ease-out 150ms both`},children:`You're all set`}),(0,J.jsx)(`p`,{className:`relative mb-6 max-w-[320px] text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`welcome-reveal 600ms ease-out 300ms both`},children:`Your assistant just got a serious upgrade.`}),(0,J.jsx)(`div`,{style:{animation:`welcome-reveal 600ms ease-out 450ms both`},children:(0,J.jsxs)(i,{variant:`primary`,"data-testid":`onboarding-complete-return`,onClick:()=>t(se.assistant,{replace:!0}),children:[`Return to `,r]})}),(0,J.jsx)(`div`,{className:`absolute bottom-4 left-4`,children:(0,J.jsx)(i,{variant:`ghost`,"data-testid":`onboarding-complete-back`,onClick:e,leftIcon:(0,J.jsx)(g,{className:`h-4 w-4`}),children:`Back`})})]})}function pt({current:e,total:t=2}){return(0,J.jsx)(`div`,{className:`flex items-center justify-center gap-1.5`,children:Array.from({length:t},(t,n)=>(0,J.jsx)(`div`,{className:`h-1.5 rounded-full transition-all duration-300`,style:{width:n===e?20:6,backgroundColor:n<=e?`var(--content-default)`:`var(--border-element)`}},n))})}function mt({icon:e,tone:t=`positive`}){let n=t===`positive`?`--system-positive-strong`:t===`warning`?`--system-mid-strong`:`--system-negative-strong`;return(0,J.jsx)(`span`,{className:`flex h-11 w-11 items-center justify-center rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(${n}) 12%, transparent)`},children:(0,J.jsx)(e,{className:`h-5 w-5`,style:{color:`var(${n})`},"aria-hidden":`true`})})}var ht=1e3,gt=1e4;function _t(e){return N[e]??N.medium}var vt=[`machine_size`,`subdomain`,`non_field_errors`],yt={subdomain_taken:`That subdomain is already taken. Try another.`,assistant_already_has_domain:`Your assistant already has a custom domain.`,no_assistant_to_attach_domain:`We couldn't find an assistant to attach this domain to.`,exceeds_machine_tier:`That machine size isn't available on your plan.`};function bt(e,t){if(e&&typeof e==`object`){let t=e;if(typeof t.error==`string`){let e=yt[t.error];if(e)return e}for(let e of vt){let n=t[e];if(Array.isArray(n)&&typeof n[0]==`string`)return n[0]}if(typeof t.detail==`string`)return t.detail}return t}function xt({onBack:e,onExit:t}){let n=l(),r=ot.use.emailRootDomain(),{data:a}=u(K()),o=a?.id,{data:s}=u({...De({path:{assistant_id:o??``}}),enabled:!!o}),c=s?.results?.[0],[f,m]=(0,q.useState)(``),[h,_]=(0,q.useState)(`hi`),[v,y]=(0,q.useState)(!1);(0,q.useEffect)(()=>{if(!v){if(c){m(c.subdomain),y(!0);return}!a?.handle||f||(m(a.handle),y(!0))}},[a?.handle,c,v,f]);let[b,x]=(0,q.useState)(null),[S,C]=(0,q.useState)(!1),T=d(Ie()),E=!!c||S,D=T.isPending||S;return(0,q.useEffect)(()=>{if(!S)return;let e=setTimeout(t,800);return()=>clearTimeout(e)},[S,t]),(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(B.Body,{className:`min-h-[320px] space-y-5 pt-10 pb-4`,style:{animation:`onboarding-step-in 350ms ease-out`},children:[(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-3 pb-2 text-center`,children:[(0,J.jsx)(mt,{icon:We}),(0,J.jsxs)(`div`,{className:`space-y-2`,children:[(0,J.jsx)(p,{variant:`title-small`,as:`h1`,children:`Assistant email`}),(0,J.jsx)(p,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`Set up an email address for your assistant.`})]})]}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(p,{variant:`body-small-default`,as:`label`,className:`text-[var(--content-secondary)]`,children:`Email address`}),(0,J.jsx)(w,{subdomain:f,autoFocus:!0,onSubdomainChange:e=>{m(e),b&&x(null)},domainSuffix:r,disabled:D,error:b,locked:E,lockedMessage:`This domain has been set and cannot be changed.`,prefix:(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`input`,{value:h,onChange:e=>_(e.target.value.toLowerCase().trim()),disabled:D||E,readOnly:E,placeholder:`hi`,"aria-label":`Email username`,size:Math.max(h.length,2),className:`h-full w-0 min-w-[2ch] flex-none bg-transparent pl-3 pr-1.5 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none disabled:cursor-not-allowed disabled:opacity-60`,style:{width:`${Math.max(h.length,2)+1.5}ch`}}),(0,J.jsx)(`span`,{className:`shrink-0 font-mono text-[var(--content-secondary)]`,children:`@`})]})})]}),!E&&(0,J.jsxs)(I,{tone:`info`,children:[(0,J.jsx)(`span`,{className:`font-mono`,children:f||`<subdomain>`}),` will also become your assistant's public handle. You won't be able to change it once set.`]}),S?(0,J.jsx)(I,{tone:`success`,children:`Domain set — redirecting…`}):null]}),(0,J.jsxs)(B.Footer,{className:`relative items-center justify-between`,children:[(0,J.jsx)(i,{variant:`ghost`,"data-testid":`onboarding-domain-back`,disabled:D,onClick:e,leftIcon:(0,J.jsx)(g,{className:`h-4 w-4`}),children:`Back`}),(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 flex justify-center`,children:(0,J.jsx)(pt,{current:0})}),(0,J.jsx)(`div`,{className:`flex items-center gap-2`,children:E?(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-domain-continue`,onClick:t,children:`Continue`}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(i,{variant:`ghost`,"data-testid":`onboarding-domain-skip`,disabled:D,onClick:()=>{D||T.mutate({body:{skipped:!0}},{onSuccess:t,onError:()=>t()})},children:`Do later`}),(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-domain-set`,disabled:!f||D,onClick:()=>{D||!f||T.mutate({body:{subdomain:f,...h?{email_username:h}:{}}},{onSuccess:()=>{x(null),C(!0),n.invalidateQueries({queryKey:ze()})},onError:e=>{x(bt(e,`Couldn't register that subdomain. Try a different one.`))}})},children:`Set domain`})]})})]})]})}function St({onGoToBilling:e}){return(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-4 px-6 py-10 text-center`,children:[(0,J.jsx)(mt,{icon:v,tone:`negative`}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(p,{variant:`title-small`,as:`h1`,children:`Couldn't reach billing`}),(0,J.jsx)(p,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`We hit a problem checking your subscription. Your upgrade may still be processing — return to billing to refresh.`})]}),(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-go-to-billing`,onClick:e,children:`Go to billing`})]})}function Ct({message:e,onRetry:t,onGoToBilling:n}){return(0,J.jsxs)(`div`,{className:`flex min-h-[280px] flex-col items-center justify-center gap-4 px-6 py-10 text-center`,children:[(0,J.jsx)(mt,{icon:v,tone:`warning`}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(p,{variant:`title-small`,as:`h1`,children:`Taking longer than expected`}),(0,J.jsx)(p,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:e})]}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2 pt-2`,children:[(0,J.jsx)(i,{variant:`outlined`,"data-testid":`onboarding-go-to-billing`,onClick:n,children:`Go to billing`}),(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-retry`,onClick:t,children:`Try again`})]})]})}function wt({title:e,body:t}){return(0,J.jsxs)(`div`,{className:`flex min-h-[280px] flex-col items-center justify-center gap-4 px-6 py-10 text-center`,children:[(0,J.jsxs)(`div`,{className:`relative flex h-11 w-11 items-center justify-center`,children:[(0,J.jsx)(`div`,{className:`absolute h-14 w-14 rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 10%, transparent)`,animation:`onboarding-glow 2.4s ease-in-out infinite`},"aria-hidden":`true`}),(0,J.jsx)(`div`,{className:`absolute h-9 w-9 rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 8%, transparent)`,animation:`onboarding-glow 2.4s ease-in-out infinite 0.4s`},"aria-hidden":`true`}),(0,J.jsx)(A,{className:`relative h-5 w-5 animate-spin text-[var(--system-positive-strong)]`,"aria-hidden":`true`})]}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(p,{variant:`title-small`,as:`h1`,children:e}),(0,J.jsx)(p,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:t})]})]})}function Tt({icon:e,label:t,from:n,fromDetail:r,to:i,toDetail:a}){return(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] p-3`,children:[(0,J.jsx)(`span`,{className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-lg`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 10%, transparent)`},children:(0,J.jsx)(e,{className:`h-4 w-4 text-[var(--system-positive-strong)]`})}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:t}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col`,children:[(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)] line-through`,children:n}),r&&(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)] line-through`,children:r})]}),(0,J.jsx)(Ze,{className:`h-3 w-3 shrink-0 text-[var(--content-tertiary)]`}),(0,J.jsxs)(`div`,{className:`flex flex-col`,children:[(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:i}),a&&(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:a})]})]})]})]})}function Et({storageGib:e,maxTier:t,onBack:n,onAdvance:r,dotIndex:a,dotTotal:o}){let{data:s}=u(K()),c=s?.machine_size||`small`,l=s?.provisioned_storage_gib??null,f=_t(t),m=f.length>0?f[f.length-1]:c,h=m!==c,_=e!=null&&(l==null||l<e),[v,y]=(0,q.useState)(null),b=d(ve());return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(B.Body,{className:`min-h-[320px] space-y-5 pt-10 pb-4`,style:{animation:`onboarding-step-in 350ms ease-out`},children:[(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-3 pb-2 text-center`,children:[(0,J.jsx)(mt,{icon:x}),(0,J.jsxs)(`div`,{className:`space-y-2`,children:[(0,J.jsx)(p,{variant:`title-small`,as:`h1`,children:`Your assistant's new resources`}),(0,J.jsx)(p,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`Your assistant will go offline briefly while it resizes.`})]})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[h&&(0,J.jsx)(Tt,{icon:x,label:`Machine`,from:F[c],fromDetail:P[c],to:F[m],toDetail:P[m]}),_&&(0,J.jsx)(Tt,{icon:O,label:`Storage`,from:l==null?`—`:`${l} GiB`,to:`${e} GiB`}),!h&&!_&&(0,J.jsx)(I,{tone:`neutral`,children:`Your assistant is already running at the maximum size for your plan.`})]}),v?(0,J.jsx)(I,{tone:`error`,children:v}):null]}),(0,J.jsxs)(B.Footer,{className:`relative items-center justify-between`,children:[(0,J.jsx)(i,{variant:`ghost`,"data-testid":`onboarding-setup-back`,disabled:b.isPending,onClick:n,leftIcon:(0,J.jsx)(g,{className:`h-4 w-4`}),children:`Back`}),(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 flex justify-center`,children:(0,J.jsx)(pt,{current:a,total:o})}),(0,J.jsxs)(`div`,{className:`flex gap-2`,children:[(0,J.jsx)(i,{variant:`ghost`,"data-testid":`onboarding-setup-skip`,disabled:b.isPending,onClick:r,children:`Do later`}),(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-setup-continue`,disabled:b.isPending||!s?.id,onClick:()=>{b.isPending||!s?.id||b.mutate({path:{id:s.id},body:{machine_size:m,...e==null?{}:{storage_gib:e}}},{onSuccess:()=>{y(null),r()},onError:e=>{y(bt(e,`Couldn't apply changes. Please try again.`))}})},children:`Apply & Restart`})]})]})]})}function Dt({onContinue:e,continueDisabled:t=!1}){return(0,J.jsxs)(`div`,{className:`relative flex min-h-[320px] flex-col items-center justify-center overflow-hidden px-8 text-center`,children:[(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-0`,style:{background:`radial-gradient(ellipse 60% 50% at 50% 38%, color-mix(in oklab, var(--system-positive-strong) 14%, transparent), transparent)`},"aria-hidden":`true`}),(0,J.jsxs)(`div`,{className:`relative mb-5 flex items-center justify-center`,style:{animation:`welcome-reveal 600ms ease-out both`},children:[(0,J.jsx)(`div`,{className:`absolute h-24 w-24 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 18%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite`},"aria-hidden":`true`}),(0,J.jsx)(`div`,{className:`absolute h-16 w-16 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 12%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite 0.5s`},"aria-hidden":`true`}),(0,J.jsx)(C,{className:`relative h-8 w-8 text-[var(--system-positive-strong)]`,strokeWidth:1.5,"aria-hidden":`true`})]}),(0,J.jsx)(`h1`,{className:`relative mb-2 text-[var(--content-emphasised)]`,style:{fontFamily:`var(--font-serif)`,fontSize:`28px`,lineHeight:1,fontWeight:400,animation:`welcome-reveal 600ms ease-out 150ms both`},children:`Welcome to Pro`}),(0,J.jsx)(`p`,{className:`relative mb-6 max-w-[320px] text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`welcome-reveal 600ms ease-out 300ms both`},children:`More compute, more storage, and more features. Let's set everything up.`}),(0,J.jsx)(`div`,{style:{animation:`welcome-reveal 600ms ease-out 450ms both`},children:(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-welcome-continue`,disabled:t,onClick:e,children:`Get started`})}),(0,J.jsx)(`p`,{className:`relative mt-6 max-w-[320px] text-body-small-default text-[var(--content-tertiary)]`,style:{animation:`welcome-reveal 600ms ease-out 600ms both`},children:`This quick setup gets your Pro features ready to go. You can close it anytime and turn these features on later from Settings.`})]})}function Ot({open:e,onClose:t}){let n=l(),[r,i]=(0,q.useState)(`confirm-pro`),[a,o]=(0,q.useState)(!1),[s,c]=(0,q.useState)(0);(0,q.useEffect)(()=>{e&&(n.invalidateQueries({queryKey:Ee()}),n.invalidateQueries({queryKey:Pe()}))},[e,n]);let d=(0,q.useCallback)(()=>{o(!1),c(e=>e+1),n.invalidateQueries({queryKey:Ee()})},[n]),f=u({...G(),refetchInterval:e=>e.state.data?.plan_id===`pro`||a?!1:ht,refetchIntervalInBackground:!1,enabled:e&&r===`confirm-pro`});(0,q.useEffect)(()=>{if(!e||r!==`confirm-pro`)return;let t=setTimeout(()=>o(!0),gt);return()=>clearTimeout(t)},[e,r,s]),(0,q.useEffect)(()=>{r===`confirm-pro`&&f.data?.plan_id===`pro`&&i(`welcome`)},[r,f.data?.plan_id]);let p=u({...je(),enabled:e&&r!==`confirm-pro`});u({...K(),enabled:e});let m=p.data?.domain_setup_available,h=(0,q.useCallback)(()=>{i(m===!1?`setup`:`domain`)},[m]),g=(0,q.useCallback)(()=>{i(m===!1?`welcome`:`domain`)},[m]),_=r===`welcome`;return(0,J.jsx)(B.Root,{open:e,onOpenChange:e=>{e||t()},children:(0,J.jsx)(B.Content,{size:`md`,hideCloseButton:!_,dismissOnOverlayClick:!_,onEscapeKeyDown:_?e=>e.preventDefault():void 0,onInteractOutside:_?e=>e.preventDefault():void 0,className:`overflow-hidden`,children:v()})});function v(){if(r===`confirm-pro`)return f.isError?(0,J.jsx)(St,{onGoToBilling:t}):a?(0,J.jsx)(Ct,{message:`We're still confirming your upgrade.`,onRetry:d,onGoToBilling:t}):(0,J.jsx)(wt,{title:`Finalizing your upgrade…`,body:`This usually takes a few seconds.`});if(r===`welcome`)return p.isError?(0,J.jsx)(St,{onGoToBilling:t}):(0,J.jsx)(Dt,{onContinue:h,continueDisabled:p.isPending||p.isFetching});if(r===`domain`)return(0,J.jsx)(xt,{onBack:()=>i(`welcome`),onExit:()=>i(`setup`)});if(r===`setup`){if(p.isError)return(0,J.jsx)(St,{onGoToBilling:t});let e=p.data?.max_machine_tier??null,n=m!==!1;return(0,J.jsx)(Et,{storageGib:p.data?.selected_storage_gib??null,maxTier:e,onBack:g,onAdvance:()=>i(`complete`),dotIndex:+!!n,dotTotal:n?2:1})}return r===`complete`?(0,J.jsx)(ft,{onBack:()=>i(`setup`)}):null}}var kt=`billing-portal-return-snapshot`;function At(e){try{sessionStorage.removeItem(kt),sessionStorage.setItem(kt,JSON.stringify(e))}catch{}}function jt(){if(typeof sessionStorage>`u`)return null;try{let e=sessionStorage.getItem(kt);if(!e)return null;let t=JSON.parse(e);return typeof t.cancel_at_period_end!=`boolean`||typeof t.plan_id!=`string`?null:{cancel_at_period_end:t.cancel_at_period_end,cancel_at:t.cancel_at??null,plan_id:t.plan_id}}catch{return null}}function Mt(){try{sessionStorage.removeItem(kt)}catch{}}function Nt(e){return e?{cancel_at_period_end:e.cancel_at_period_end,cancel_at:e.cancel_at??null,plan_id:e.plan_id}:null}function Pt(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleDateString(void 0,{year:`numeric`,month:`long`,day:`numeric`})}function Ft(e){return e?e.cancel_at??e.current_period_end??null:null}function It(e){let t=l();return(0,q.useEffect)(()=>ce(()=>{t.invalidateQueries(G())}),[t]),pe({onSuccess:t=>{e&&At(e),le(t.portal_url)},onError:()=>{V.error(`Couldn't open the billing portal. Please try again.`,{id:`billing-portal-session-error`})}})}function Lt(e){let t=e/100;return Number.isInteger(t)?`$${t}`:`$${t.toFixed(2)}`}function Y(e){return`${Lt(e)}/mo`}function Rt(e){return`${e>0?`+`:`−`}${Lt(Math.abs(e))}/mo`}var zt={medium:`Medium`,large:`Large`,xl:`XL`};function Bt(e){return e.disabled===!0}function Vt({machineTiers:e,storageTiers:t,selectedMachineTier:n,selectedStorageTier:r,onMachineTierChange:i,onStorageTierChange:a,currentMachinePriceCents:o,currentStoragePriceCents:s}){let c=(0,q.useMemo)(()=>e.map(e=>{let t=zt[e.tier]??e.label,n=o==null?`+${Y(e.price_cents)}`:e.price_cents===o?`(${Y(e.price_cents)}, current)`:Rt(e.price_cents-o);return{value:e.tier,label:`${t} ${n}`,disabled:Bt(e)}}),[e,o]),l=(0,q.useMemo)(()=>t.map(e=>{let t=s==null?`+${Y(e.price_cents)}`:e.price_cents===s?`(${Y(e.price_cents)}, current)`:Rt(e.price_cents-s);return{value:e.tier,label:`${e.storage_gib} GiB ${t}`,disabled:Bt(e)}}),[t,s]);return(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(p,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:`Machine`}),(0,J.jsx)(`span`,{title:`Determines the CPU and memory allocated to your assistant`,children:(0,J.jsx)(k,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(H,{"aria-label":`Machine tier`,placeholder:`Select a machine tier`,value:n??``,onChange:i,options:c})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(p,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:`Storage`}),(0,J.jsx)(`span`,{title:`Persistent disk space for your assistant's files and data`,children:(0,J.jsx)(k,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(H,{"aria-label":`Storage tier`,placeholder:`Select a storage tier`,value:r??``,onChange:a,options:l})]})]})}var Ht=new Set([`active`,`trialing`,`past_due`]),Ut=[`target_plan_id`,`confirm`,`machine_tier`,`storage_tier`,`credit_tier`,`non_field_errors`];function Wt(e,t){if(e&&typeof e==`object`){for(let t of Ut)if(t in e){let n=e[t];if(Array.isArray(n)&&typeof n[0]==`string`)return n[0]}if(`detail`in e&&typeof e.detail==`string`)return e.detail}return t}function Gt(e,t){let n=e.filter(e=>!Bt(e));return t!==null&&n.some(e=>e.tier===t)?t:n[0]?.tier??null}function Kt(e,t,n){return t===void 0?n:t!==null&&(t===n||e.some(e=>e.tier===t))?t:null}function qt(e){return e.length?Math.min(...e.map(e=>e.price_cents)):0}function Jt({open:e,onCancel:t,onConfirm:n,confirming:r,lostFeatures:a}){return(0,J.jsx)(B.Root,{open:e,onOpenChange:e=>{!e&&!r&&t()},children:(0,J.jsxs)(B.Content,{size:`md`,hideCloseButton:!0,children:[(0,J.jsx)(B.Header,{children:(0,J.jsx)(B.Title,{icon:te,children:`Downgrade to Base?`})}),(0,J.jsxs)(B.Body,{children:[(0,J.jsx)(p,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:`Downgrading removes the following Pro features:`}),(0,J.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:a.map(e=>(0,J.jsx)(`li`,{children:(0,J.jsx)(p,{as:`span`,variant:`body-medium-default`,children:e})},e))})]}),(0,J.jsxs)(B.Footer,{children:[(0,J.jsx)(i,{variant:`outlined`,onClick:t,disabled:r,children:`Keep Pro`}),(0,J.jsx)(i,{variant:`danger`,onClick:n,disabled:r,"data-testid":`confirm-downgrade-button`,children:`Confirm Downgrade`})]})]})})}var Yt=`__none__`;function Xt(e){return`${e.label} — ${Y(e.price_cents)}`}function Zt({creditTiers:e,selectedCreditTier:t,onCreditTierChange:n,disabled:r=!1}){let i=(0,q.useMemo)(()=>[{value:Yt,label:`No credit bundle — ${Y(0)}`},...e.map(e=>({value:e.tier,label:Xt(e)}))],[e]);return(0,J.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(p,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:`Credit bundle`}),(0,J.jsx)(`span`,{title:`A monthly allotment of credits added to your Pro Plan subscription`,children:(0,J.jsx)(k,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(H,{"aria-label":`Credit bundle`,placeholder:`Select a credit bundle`,disabled:r,value:t??Yt,onChange:e=>n(e===Yt?null:e),options:i})]})}function Qt({features:e,variant:t,header:n,maxInline:r=3}){return t===`inline`?(0,J.jsx)(J.Fragment,{children:e.slice(0,r).join(`, `)}):(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[n&&(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:n}),(0,J.jsx)(`ul`,{className:`flex flex-col gap-2`,children:e.map(e=>(0,J.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,J.jsx)(y,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":!0}),(0,J.jsx)(p,{as:`span`,variant:`body-medium-default`,children:e})]},e))})]})}function $t({plan:e,isCurrent:t,onPro:n,cancelAtPeriodEnd:r,isCanceled:a,cancelDate:o,formatGraceDate:s,proTierChangeMode:c,creditTiersEnabled:l,creditTiers:u,displayCreditTier:d,onCreditTierChange:f,selectedMachineTier:h,selectedStorageTier:g,onMachineTierChange:_,onStorageTierChange:v,machineTiersForPicker:y,storageTiersForPicker:b,currentMachinePrice:x,currentStoragePrice:S,currentCreditPriceUnknown:w,proCurrentTotalCents:T,proLiveTotalCents:E,proTotalDelta:D,onboardingLoading:O,tierChangePending:j,machineChanged:M,storageChanged:N,creditChanged:P,tierChangeError:F,upgradePending:ee,portalPending:te,onUpgrade:re,onApplyTierChange:L,onDowngradeClick:R,onKeepPlan:z}){let B=e.id===`pro`,V=e.id===`base`,ie=B&&n&&r&&!a,H=B&&(!t||t&&c),ae=B&&t&&c;return(0,J.jsxs)(m,{padding:`lg`,className:`flex flex-col bg-[var(--surface-base)]`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-9 w-9 items-center justify-center rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)]`,children:B?(0,J.jsx)(C,{className:`h-5 w-5 text-[var(--content-default)]`}):(0,J.jsx)(dt,{className:`h-5 w-5 text-[var(--content-default)]`})}),(0,J.jsxs)(`div`,{className:`flex min-h-6 items-center gap-2`,children:[(0,J.jsx)(p,{as:`h3`,variant:`title-small`,children:e.name}),t&&(0,J.jsx)(ne,{tone:`positive`,children:`Current`})]}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`-mt-2 text-[var(--content-tertiary)]`,children:V?`All you need for a capable assistant`:`More features, more compute, more storage`}),ie&&o&&(0,J.jsxs)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--system-mid-strong)]`,"data-testid":`modal-cancels-on`,children:[`Your plan ends on `,s(o)]}),(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,J.jsx)(`div`,{className:`flex flex-col gap-1`,children:V?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(p,{as:`p`,variant:`title-medium`,children:`Free`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:`Forever`})]}):t&&!(H&&E!=null)&&(T==null||w)?O?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(A,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(p,{as:`span`,variant:`body-medium-lighter`,children:`Loading your plan...`})]}):(0,J.jsx)(p,{as:`p`,variant:`body-medium-lighter`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-pro-price-unavailable`,children:`Current plan pricing unavailable`}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(p,{as:`p`,variant:`title-medium`,"data-testid":`modal-pro-price`,children:H&&E!=null?(0,J.jsxs)(J.Fragment,{children:[Y(E),D!=null&&D!==0&&(0,J.jsxs)(`span`,{className:`ml-1 text-[var(--content-tertiary)]`,children:[`(`,Rt(D),`)`]})]}):T==null?e.id===`pro`?`From ${Y(e.base_price_cents+qt(e.machine_tiers)+qt(e.storage_tiers))}`:null:`Currently ${Y(T)}`}),H&&D!=null&&D!==0&&(0,J.jsx)(`span`,{title:`Your Pro Plan subscription will change from ${Y(T)} to ${Y(E)}.`,children:(0,J.jsx)(k,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),e.id===`pro`&&(0,J.jsxs)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-pro-base-fee`,children:[Lt(e.base_price_cents),` base fee`]})]})}),(0,J.jsx)(Qt,{features:e.included_features,variant:`checklist`}),B&&!l&&(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-credits-not-included`,children:`*Credits not included`})]}),(0,J.jsxs)(`div`,{className:`mt-4 flex flex-1 flex-col justify-end gap-4`,children:[!t&&B&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),l&&(0,J.jsx)(Zt,{creditTiers:u,selectedCreditTier:d,onCreditTierChange:f,disabled:ee}),(0,J.jsx)(Vt,{machineTiers:y,storageTiers:b,selectedMachineTier:h,selectedStorageTier:g,onMachineTierChange:_,onStorageTierChange:v}),(0,J.jsx)(i,{variant:`primary`,className:`w-full`,onClick:re,disabled:ee||!h||!g,"data-testid":`modal-upgrade-to-pro-button`,children:`Upgrade to Pro`})]}),ae&&(O?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(A,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(p,{as:`span`,variant:`body-medium-lighter`,children:`Loading your plan...`})]}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),l&&(0,J.jsx)(Zt,{creditTiers:u,selectedCreditTier:d,onCreditTierChange:f,disabled:j}),(0,J.jsx)(Vt,{machineTiers:y,storageTiers:b,selectedMachineTier:h,selectedStorageTier:g,onMachineTierChange:_,onStorageTierChange:v,currentMachinePriceCents:x,currentStoragePriceCents:S}),F&&(0,J.jsx)(I,{tone:`error`,children:F}),(0,J.jsx)(i,{variant:`primary`,className:`w-full`,onClick:L,disabled:j||!M&&!N&&!P,"data-testid":`modal-change-tier-button`,children:`Update Plan`})]})),!t&&V&&n&&!r&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,J.jsx)(i,{variant:`outlined`,className:`w-full`,onClick:R,disabled:te,"data-testid":`modal-downgrade-to-base-button`,children:`Downgrade to Base`})]}),ie&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,J.jsx)(i,{variant:`outlined`,className:`w-full`,onClick:z,disabled:te,"data-testid":`modal-keep-plan-button`,children:`Keep your Plan`})]})]})]})}function en({open:e,onClose:t,onTierUpgraded:n}){let r=l(),a=u(Ce()),o=u(G()),s=d(Me()),c=d(ue()),f=d(Ae()),m=d(ye()),h=It(Nt(o.data)),[_,v]=(0,q.useState)(`plans`),[y,b]=(0,q.useState)(!1),[x,S]=(0,q.useState)(null),[C,w]=(0,q.useState)(null),[T,E]=(0,q.useState)(void 0);(0,q.useEffect)(()=>ce(()=>{r.invalidateQueries({queryKey:Ee()}),r.invalidateQueries({queryKey:Te()}),r.invalidateQueries({queryKey:Pe()}),t()}),[r,t]);let D=o.data?.plan_id,O=D===`pro`,k=u({...je(),enabled:O}),j=k.data?.max_machine_tier??null,M=k.data?.selected_storage_tier??null,N=k.data?.selected_storage_gib??null,P=o.data?.cancel_at_period_end===!0||!!o.data?.cancel_at,F=o.data?.status===`canceled`,ee=Ft(o.data),ne=o.data?.status,re=ne!=null&&Ht.has(ne),L=O&&re&&!P&&!F,R=a.data?.plans.find(e=>e.id===`pro`),z=R?.credit_tiers??[],ie=z.length>0,H=o.data?.selected_credit_tier??null,ae=e=>z.find(t=>t.tier===e)?.price_cents??0,oe=ae(H),se=H!=null&&!z.some(e=>e.tier===H),U=T===void 0?H:T,de=ae(U),fe=R?.machine_tiers??[],pe=L&&N!=null?(R?.storage_tiers??[]).map(e=>e.storage_gib<N?{...e,disabled:!0}:e):R?.storage_tiers??[];(0,q.useEffect)(()=>{if(!e){S(null),w(null),E(void 0);return}if(R){if(L){if(j==null||M==null)return;S(e=>Gt(fe,e??j)),w(e=>Gt(pe,e??M)),E(e=>Kt(z,e,H));return}S(e=>Gt(R.machine_tiers,e)),w(e=>Gt(R.storage_tiers,e)),E(e=>Kt(z,e,null))}},[e,R,L,j,M,H]);let me=a.data?.plans.find(e=>e.id===`base`),he=new Set(me?.included_features??[]),ge=(R?.included_features??[]).filter(e=>!he.has(e)),_e=()=>{if(!s.isPending){if(!x||!C){V.error(`Pick a machine and storage tier to continue.`,{id:`pro-upgrade-error`});return}s.mutate({body:{target_plan_id:`pro`,confirm:!0,machine_tier:x,storage_tier:C,credit_tier:U}},{onSuccess:e=>{if(e.checkout_url){le(e.checkout_url);return}if(e.status===`no_op`){V.info(`You're already on Pro.`,{id:`pro-upgrade`}),t();return}V.error(e.message??`Failed to start upgrade. Please try again.`,{id:`pro-upgrade-error`})},onError:e=>{V.error(Wt(e,`Failed to start upgrade. Please try again.`),{id:`pro-upgrade-error`})}})}},ve=()=>{h.isPending||(v(`plans`),h.mutate({}))},be=()=>{r.invalidateQueries({queryKey:Ee()}),r.invalidateQueries({queryKey:Pe()}),r.invalidateQueries({queryKey:Te()})},xe=c.isPending||f.isPending||m.isPending,W=x!=null&&x!==j,Se=C!=null&&C!==M,we=ie&&T!==void 0&&T!==H,De=e=>fe.find(t=>t.tier===e)?.price_cents??null,Oe=e=>pe.find(t=>t.tier===e)?.price_cents??null,ke=De(x),Ne=Oe(C),K=De(j),Fe=Oe(M),Ie=W&&ke!=null&&K!=null&&ke<K,Le=()=>{if(xe)return;let e=[];W&&x&&e.push(new Promise(e=>{c.mutate({body:{machine_tier:x}},{onSuccess:()=>e({dimension:`machine`,ok:!0}),onError:t=>e({dimension:`machine`,ok:!1,error:t})})})),Se&&C&&e.push(new Promise(e=>{f.mutate({body:{storage_tier:C}},{onSuccess:()=>e({dimension:`storage`,ok:!0}),onError:t=>e({dimension:`storage`,ok:!1,error:t})})})),we&&e.push(new Promise(e=>{m.mutate({body:{credit_tier:U}},{onSuccess:()=>e({dimension:`credit`,ok:!0}),onError:t=>e({dimension:`credit`,ok:!1,error:t})})})),Promise.all(e).then(e=>{be();let r=e.some(e=>e.ok&&e.dimension===`storage`),i=e.some(e=>e.ok&&e.dimension===`machine`)&&!Ie,a=(r||i)&&!!n,o=e.filter(e=>!e.ok);if(o.length>0){let e=o.map(e=>Wt(e.error,`Failed to update ${e.dimension} tier.`)).join(` `);V.error(e,{id:`pro-tier-change-error`}),a&&(t(),n());return}a?(t(),n()):V.success(we&&!W&&!Se?`Credit bundle updated.`:`Plan updated.`,{id:`pro-tier-change`})})},Re=()=>{if(!xe){if(Ie){b(!0);return}Le()}},ze=()=>{b(!1),Le()},Be=e=>ke!=null&&Ne!=null?e.base_price_cents+ke+Ne+de:null,Ve=e=>K!=null&&Fe!=null?e.base_price_cents+K+Fe+oe:null,He=c.isError||f.isError||m.isError?Wt(c.error??f.error??m.error,`Failed to update plan. Please try again.`):null,Ue=a.isLoading||o.isLoading,We=a.isError||o.isError||!a.data||!o.data;return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(B.Root,{open:e,onOpenChange:e=>{e||(v(`plans`),t())},children:(0,J.jsx)(B.Content,{size:_===`plans`?`lg`:`md`,children:_===`downgrade-confirm`?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(B.Header,{children:(0,J.jsx)(B.Title,{icon:te,children:`Downgrade to Base?`})}),(0,J.jsxs)(B.Body,{children:[(0,J.jsx)(p,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:`Downgrading removes the following Pro features:`}),(0,J.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:ge.map(e=>(0,J.jsx)(`li`,{children:(0,J.jsx)(p,{as:`span`,variant:`body-medium-default`,children:e})},e))})]}),(0,J.jsxs)(B.Footer,{children:[(0,J.jsx)(i,{variant:`ghost`,onClick:()=>v(`plans`),disabled:h.isPending,leftIcon:(0,J.jsx)(g,{className:`h-4 w-4`}),children:`Back`}),(0,J.jsx)(i,{variant:`danger`,onClick:ve,disabled:h.isPending,"data-testid":`confirm-downgrade-button`,children:`Confirm Downgrade`})]})]}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(B.Header,{children:(0,J.jsx)(B.Title,{className:`sr-only`,children:`Upgrade Plan`})}),(0,J.jsx)(B.Body,{children:Ue?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(A,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(p,{as:`span`,variant:`body-medium-lighter`,children:`Loading plans...`})]}):We?(0,J.jsx)(I,{tone:`error`,children:`Failed to load plans. Please try again later.`}):(0,J.jsxs)(`div`,{className:`space-y-6`,children:[(0,J.jsxs)(`div`,{className:`space-y-2 pb-2 pt-4 text-center`,children:[(0,J.jsx)(p,{as:`p`,variant:`title-medium`,children:`Your Assistant, Your Way`}),(0,J.jsx)(p,{as:`p`,variant:`body-medium-lighter`,className:`text-[var(--content-secondary)]`,children:`Choose the plan that works best for you and your assistant.`})]}),(0,J.jsx)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-2`,children:a.data.plans.map(e=>{let t=e.id===D,n=e.id===`pro`&&R?Be(R):null,r=e.id===`pro`&&R?Ve(R):null;return(0,J.jsx)($t,{plan:e,isCurrent:t,onPro:O,cancelAtPeriodEnd:P,isCanceled:F,cancelDate:ee,formatGraceDate:Pt,proTierChangeMode:L,creditTiersEnabled:ie,creditTiers:z,displayCreditTier:U,onCreditTierChange:E,selectedMachineTier:x,selectedStorageTier:C,onMachineTierChange:S,onStorageTierChange:w,machineTiersForPicker:fe,storageTiersForPicker:pe,currentMachinePrice:K,currentStoragePrice:Fe,currentCreditPriceUnknown:se,proCurrentTotalCents:r,proLiveTotalCents:n,proTotalDelta:n!=null&&r!=null?n-r:null,onboardingLoading:k.isLoading,tierChangePending:xe,machineChanged:W,storageChanged:Se,creditChanged:we,tierChangeError:He,upgradePending:s.isPending,portalPending:h.isPending,onUpgrade:_e,onApplyTierChange:Re,onDowngradeClick:()=>v(`downgrade-confirm`),onKeepPlan:()=>h.mutate({})},e.id)})})]})}),(0,J.jsxs)(B.Footer,{className:`relative items-center`,children:[(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`pointer-events-none absolute inset-x-0 text-center text-[var(--content-tertiary)]`,children:(0,J.jsx)(`span`,{className:`pointer-events-auto`,children:`You can change or cancel your plan at any time from billing settings.`})}),(0,J.jsx)(`div`,{className:`ml-auto`,children:(0,J.jsx)(i,{variant:`outlined`,onClick:t,"data-testid":`modal-cancel-button`,children:`Cancel`})})]})]})})}),(0,J.jsx)(Jt,{open:y,onCancel:()=>b(!1),onConfirm:ze,confirming:xe,lostFeatures:[`Reduced CPU and memory for your assistant — it will resize to the smaller compute profile.`]})]})}var tn={visa:`Visa`,mastercard:`Mastercard`,amex:`Amex`,discover:`Discover`,diners:`Diners Club`,jcb:`JCB`,unionpay:`UnionPay`};function nn(e){return tn[e.toLowerCase()]??e}function rn(e,t){return`${nn(e??`card`)} •••• ${t??`????`}`}function an({open:e,confirming:t,onCancel:n,onConfirm:r}){return(0,J.jsx)(ie,{open:e,title:`Disable automatic top-ups?`,message:`Auto top-ups will stop. Any saved payment method stays on file.`,confirmLabel:t?`Disabling…`:`Disable`,cancelLabel:`Keep enabled`,destructive:!0,onConfirm:r,onCancel:n})}var on={threshold_usd:`100`,amount_usd:`10`,monthly_cap_usd:``};function sn(e){if(e===``||e===`-`)return e;let t=parseFloat(e);return Number.isFinite(t)?String(Math.trunc(t)):``}function cn(e){let t={},n=parseFloat(e.threshold_usd),r=parseFloat(e.amount_usd);if((!Number.isFinite(r)||r<10||r>500)&&(t.amount_usd=`Must be between $10 and $500`),(!Number.isFinite(n)||n<1||n>100)&&(t.threshold_usd=`Must be between $1 and $100`),e.monthly_cap_usd!==``){let n=parseFloat(e.monthly_cap_usd);!Number.isFinite(n)||n<25||n>1e4?t.monthly_cap_usd=`Must be between $25 and $10,000`:Number.isFinite(r)&&n<r&&(t.monthly_cap_usd=`Must be at least the top-up amount`)}return t}function ln(e,t,n,r){if(n[e])return n[e];if(r)return t[e]}function un({initialValues:e=on,submitting:t,serverErrors:n,onSave:r,onCancel:a}){let[o,s]=(0,q.useState)(e),[c,l]=(0,q.useState)({threshold_usd:!1,amount_usd:!1,monthly_cap_usd:!1}),u=cn(o),d=e=>t=>{s(n=>({...n,[e]:t.target.value}))},f=e=>()=>{l(t=>({...t,[e]:!0})),s(t=>({...t,[e]:sn(t[e])}))},p=e=>ln(e,u,n,c[e]);return(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsxs)(`div`,{className:`flex flex-wrap items-start gap-3`,children:[(0,J.jsx)(`div`,{className:`min-w-[10rem] flex-1`,children:(0,J.jsx)(re,{type:`number`,step:`1`,label:`Auto-Reload when balance below`,value:o.threshold_usd,onChange:d(`threshold_usd`),onBlur:f(`threshold_usd`),errorText:p(`threshold_usd`),"data-testid":`auto-top-up-threshold-input`,fullWidth:!0})}),(0,J.jsx)(`div`,{className:`min-w-[10rem] flex-1`,children:(0,J.jsx)(re,{type:`number`,step:`1`,label:`Add amount when auto reloading`,value:o.amount_usd,onChange:d(`amount_usd`),onBlur:f(`amount_usd`),errorText:p(`amount_usd`),"data-testid":`auto-top-up-amount-input`,fullWidth:!0})}),(0,J.jsx)(`div`,{className:`min-w-[10rem] flex-1`,children:(0,J.jsx)(re,{type:`number`,step:`1`,label:`Monthly spending cap`,helperText:`Pauses auto top-ups for the rest of the month once spending reaches this amount. Manual purchases also count toward the total. Leave empty for no limit.`,value:o.monthly_cap_usd,onChange:d(`monthly_cap_usd`),onBlur:f(`monthly_cap_usd`),errorText:p(`monthly_cap_usd`),"data-testid":`auto-top-up-cap-input`,fullWidth:!0})}),(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 pt-[18px]`,children:[(0,J.jsx)(i,{variant:`outlined`,onClick:a,disabled:t,children:`Cancel`}),(0,J.jsx)(i,{variant:`primary`,onClick:()=>{l({threshold_usd:!0,amount_usd:!0,monthly_cap_usd:!0});let e={threshold_usd:sn(o.threshold_usd),amount_usd:sn(o.amount_usd),monthly_cap_usd:sn(o.monthly_cap_usd)};s(e);let t=cn(e);if(Object.keys(t).length!==0)return;let n=e=>e===``?``:`${parseInt(e,10)}.00`;r({threshold_usd:n(e.threshold_usd),amount_usd:n(e.amount_usd),monthly_cap_usd:e.monthly_cap_usd===``?``:n(e.monthly_cap_usd)})},disabled:t,"data-testid":`auto-top-up-save-button`,children:`Save`})]})]})})}function dn(e){if(!e)return``;let t=parseFloat(e);return Number.isFinite(t)?String(Math.trunc(t)):``}function fn(e){if(!e)return`$0`;let t=parseFloat(e);if(!Number.isFinite(t))return`$0`;let n=Math.abs(t).toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2}),r=n.endsWith(`.00`)?n.slice(0,-3):n;return t<0?`-$${r}`:`$${r}`}var pn={enabled:!1,threshold_usd:null,amount_usd:null,monthly_cap_usd:null,has_payment_method:!1,payment_method_brand:null,payment_method_last4:null,stripe_payment_method_updated_at:null,last_charge_at:null,last_failure_at:null,last_failure_reason:null,disabled_due_to_repeated_failures:!1,paused_until:null,current_month_credits_purchased_usd:`0.00`,current_month_charged_usd:`0.00`,next_trigger_amount_usd:null,stubbed:!1};function mn(e){if(!e||typeof e!=`object`||Array.isArray(e))return{};let t={};for(let[n,r]of Object.entries(e))Array.isArray(r)&&typeof r[0]==`string`&&(t[n]=r[0]);return t}function hn(e){let{brand:t,last4:n}=e;return!t&&!n?null:n?`Charged to ${rn(t,n)}`:`Charged to ${nn(t??`card`)}`}function gn(){let e=l(),t=u(de()),n=d(Se()),r=d(be()),[a,o]=(0,q.useState)(`view`),[s,c]=(0,q.useState)(!1),[f,p]=(0,q.useState)(!1),[m,h]=(0,q.useState)(!1);if((0,q.useEffect)(()=>{m&&t.data?.has_payment_method&&h(!1)},[m,t.data?.has_payment_method]),t.isLoading)return(0,J.jsx)(`div`,{"data-testid":`auto-top-up-card`,children:(0,J.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Loading…`})});if(t.isError||!t.data)return(0,J.jsx)(`div`,{"data-testid":`auto-top-up-card`,children:(0,J.jsx)(I,{tone:`error`,children:`Failed to load auto top-up configuration.`})});let g=t.data,_=g.enabled===!0,v=g.disabled_due_to_repeated_failures===!0&&!_,y=()=>{n.reset(),r.reset(),o(`form`)},b=()=>{o(`view`),c(!1)},x=()=>{r.reset(),p(!1)},S=t=>{n.mutate({body:{enabled:!0,threshold_usd:t.threshold_usd,amount_usd:t.amount_usd,monthly_cap_usd:t.monthly_cap_usd===``?null:t.monthly_cap_usd}},{onSuccess:t=>{he(e,void 0,e=>({...t,payment_method_brand:e?.payment_method_brand??null,payment_method_last4:e?.payment_method_last4??null})),e.invalidateQueries({queryKey:W()}),b()}})},C=()=>{r.mutate({},{onSuccess:()=>{he(e,void 0,e=>({...pn,has_payment_method:e?.has_payment_method??!1,payment_method_brand:e?.payment_method_brand??null,payment_method_last4:e?.payment_method_last4??null,stripe_payment_method_updated_at:e?.stripe_payment_method_updated_at??null})),p(!1),o(`view`),c(!1)}})},w=e=>{if(e&&!_){if(!g.has_payment_method||v){h(!0);return}h(!1),c(!0),y();return}if(!e&&!_&&s){b();return}!e&&_&&p(!0)},T=a===`form`,E=mn(n.error),D=n.isError&&Object.keys(E).length===0,O=_||s,k=hn({brand:g.payment_method_brand,last4:g.payment_method_last4});return(0,J.jsxs)(`div`,{"data-testid":`auto-top-up-card`,children:[(0,J.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[(0,J.jsx)(L,{checked:O,onChange:w,label:`Enable Auto-Reload`}),_&&!T&&(0,J.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,J.jsxs)(`div`,{className:`text-right`,children:[(0,J.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,"data-testid":`auto-top-up-summary`,children:[`Add `,fn(g.amount_usd),` when the balance falls under `,fn(g.threshold_usd)]}),g.monthly_cap_usd!=null&&(0,J.jsxs)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,"data-testid":`auto-top-up-cap-progress`,children:[fn(g.current_month_credits_purchased_usd),` of`,` `,fn(g.monthly_cap_usd),` this month`]})]}),(0,J.jsx)(i,{variant:`outlined`,onClick:y,"data-testid":`auto-top-up-edit-button`,children:`Adjust`})]})]}),v&&(0,J.jsx)(I,{tone:`warning`,className:`mt-3`,"data-testid":`auto-top-up-declined-cutoff`,children:`We paused automatic reloads after several declined payments. Add a new payment method below to turn auto-reload back on.`}),(0,J.jsx)(`div`,{className:`grid transition-[grid-template-rows] duration-200 ease-in-out`,style:{gridTemplateRows:m&&!v?`1fr`:`0fr`},children:(0,J.jsx)(`div`,{className:`overflow-hidden`,children:(0,J.jsx)(I,{tone:`warning`,className:`mt-3`,children:`You must first add a Payment Method before you can enable automatic credit reloads.`})})}),D&&(0,J.jsx)(I,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-update-error`,children:`Failed to save automatic top-ups. Please try again.`}),r.isError&&(0,J.jsx)(I,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-disable-error`,children:`Failed to disable automatic top-ups. Please try again.`}),T&&(0,J.jsx)(un,{initialValues:_?{threshold_usd:dn(g.threshold_usd),amount_usd:dn(g.amount_usd),monthly_cap_usd:dn(g.monthly_cap_usd)}:void 0,submitting:n.isPending,serverErrors:E,onCancel:b,onSave:S}),_&&!g.has_payment_method&&(0,J.jsx)(I,{tone:`warning`,className:`mt-3`,"data-testid":`auto-top-up-no-pm`,children:`You must add a Payment Method.`}),_&&g.has_payment_method&&(0,J.jsx)(`p`,{className:`mt-3 text-body-small-default text-[var(--content-tertiary)]`,"data-testid":`auto-top-up-saved-pm`,children:k??`Charged to a saved card`}),(_||T)&&(0,J.jsx)(I,{tone:`info`,className:`mt-4`,children:`If you're too close to your monthly limit, the auto-reload will only top up to that limit.`}),(0,J.jsx)(an,{open:f,confirming:r.isPending,onCancel:x,onConfirm:C})]})}function _n(e){let t=parseFloat(e);return Number.isFinite(t)?`$${t.toFixed(2)}`:`$${e}`}function vn(e){if(e.trim()===``)return;let t=parseFloat(e);if(!Number.isFinite(t)||t<1||t>1e3)return`Must be between $1 and $1,000`;if(!/^\d+(\.\d{1,2})?$/.test(e.trim()))return`Use at most two decimal places`}function yn(){let e=l(),t=u(_e()),n=d(we()),[r,a]=(0,q.useState)(null),[o,s]=(0,q.useState)(!1);if(t.isLoading)return(0,J.jsx)(`div`,{"data-testid":`low-balance-alert-card`,children:(0,J.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Loading…`})});if(t.isError||!t.data)return(0,J.jsx)(`div`,{"data-testid":`low-balance-alert-card`,children:(0,J.jsx)(I,{tone:`error`,children:`Failed to load low-balance alert settings.`})});let c=t.data,f=r??c.threshold_usd??``,p=vn(f),m=e=>{a(e.target.value)},h=t=>{n.mutate({body:{threshold_usd:t}},{onSuccess:t=>{ge(e,void 0,t),e.invalidateQueries({queryKey:Ne()}),a(null),s(!1)}})},g=()=>{if(s(!0),p)return;let e=f.trim();h(e===``?null:parseFloat(e).toFixed(2))},_=()=>{a(``),s(!1),h(null)},v=n.isError,y=o?p:void 0;return(0,J.jsxs)(`div`,{"data-testid":`low-balance-alert-card`,children:[(0,J.jsxs)(`div`,{className:`flex flex-wrap items-start gap-3`,children:[(0,J.jsx)(`div`,{className:`min-w-[12rem] flex-1`,children:(0,J.jsx)(re,{type:`number`,step:`0.01`,label:`Alert me when my balance drops below`,helperText:`Default is ${_n(c.default_threshold_usd)} when unset`,placeholder:c.effective_threshold_usd,value:f,onChange:m,onBlur:()=>s(!0),errorText:y,"data-testid":`low-balance-alert-input`,fullWidth:!0})}),(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 pt-[18px]`,children:[c.threshold_usd!=null&&(0,J.jsx)(i,{variant:`outlined`,onClick:_,disabled:n.isPending,"data-testid":`low-balance-alert-reset-button`,children:`Reset to default`}),(0,J.jsx)(i,{variant:`primary`,onClick:g,disabled:n.isPending,"data-testid":`low-balance-alert-save-button`,children:`Save`})]})]}),v&&(0,J.jsx)(I,{tone:`error`,className:`mt-4`,"data-testid":`low-balance-alert-update-error`,children:`Failed to save low-balance alert. Please try again.`})]})}var bn=2e3;function xn(e){let t=parseFloat(e);if(Number.isNaN(t))return`0`;let n=Math.abs(t).toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2}),r=n.endsWith(`.00`)?n.slice(0,-3):n;return t<0?`-${r}`:r}function Sn(){let e=l(),{data:t,isLoading:n,isError:r}=u(Fe()),a=t??null,[o,s]=(0,q.useState)(!1),c=(0,q.useRef)(0),d=(0,q.useRef)(null),f=fe({onSuccess:()=>{e.invalidateQueries({queryKey:Oe()})},onError:()=>{c.current<3&&(d.current=setTimeout(()=>{f.reset()},bn))}});(0,q.useEffect)(()=>()=>{d.current&&clearTimeout(d.current)},[]);let h=f.mutate;(0,q.useEffect)(()=>{a&&a.settled_balance===`0.00`&&a.pending_compute===`0.00`&&a.effective_balance===`0.00`&&c.current<3&&!f.isPending&&!f.isError&&!f.isSuccess&&(c.current+=1,h({}))},[a,f.isPending,f.isError,f.isSuccess,h]);let g=(0,J.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,J.jsxs)(`div`,{children:[(0,J.jsx)(p,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Credit Balance`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`An overview of your credit balance and pending charges.`})]}),(0,J.jsx)(i,{variant:`primary`,onClick:()=>s(!0),disabled:n||!a,"data-testid":`add-credits-button`,children:`Add Credits`})]});return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(m,{padding:`md`,children:[g,n?(0,J.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(A,{className:`h-4 w-4 animate-spin`}),`Loading billing summary...`]}):r?(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsx)(I,{tone:`error`,children:`Failed to load billing summary. Please try again later.`})}):a?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`div`,{className:`mt-4`,children:(()=>{if(!a)return null;let e=parseFloat(a.effective_balance)<0,t=parseFloat(a.settled_balance)<0,n=parseFloat(a.pending_compute)<0;return(0,J.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-3`,children:[(0,J.jsx)(z,{icon:(0,J.jsx)(Xe,{className:`h-4 w-4`,"aria-hidden":!0}),value:(0,J.jsx)(`span`,{"data-testid":`effective-balance`,children:xn(a.effective_balance)}),label:`Balance`,tone:e?`negative`:`default`}),(0,J.jsx)(z,{icon:(0,J.jsx)(st,{className:`h-4 w-4`,"aria-hidden":!0}),value:(0,J.jsx)(`span`,{"data-testid":`settled-balance`,children:xn(a.settled_balance)}),label:`Settled Balance`,tone:t?`negative`:`default`}),(0,J.jsx)(z,{icon:(0,J.jsx)(ct,{className:`h-4 w-4`,"aria-hidden":!0}),value:(0,J.jsx)(`span`,{"data-testid":`pending-charges`,children:xn(a.pending_compute)}),label:a.is_degraded?`Pending Usage (estimated)`:`Pending Usage`,tone:a.is_degraded?`muted`:n?`negative`:`default`})]})})()}),a.is_degraded&&(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsx)(I,{tone:`warning`,children:`Pending charges could not be calculated. The balance shown may be incomplete.`})})]}):(0,J.jsx)(`p`,{className:`mt-4 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No billing information available.`}),(0,J.jsx)(`div`,{className:`mt-6 border-t border-[var(--border-base)] pt-6`,children:(0,J.jsx)(gn,{})}),(0,J.jsx)(`div`,{className:`mt-6 border-t border-[var(--border-base)] pt-6`,children:(0,J.jsx)(yn,{})})]}),(0,J.jsx)($e,{open:o,onOpenChange:s})]})}var Cn=1e3,wn=15e3,Tn=3e3,En=45e3,Dn=`billing-portal-return`;function On(e,t){if(!e)return{kind:`info`,message:`Subscription updated.`};let n=e.cancel_at_period_end||!!e.cancel_at,r=t.cancel_at_period_end||!!t.cancel_at;return!n&&r?{kind:`info`,message:`Pro plan canceled. You'll have access until ${t.cancel_at?Pt(t.cancel_at):`the end of your billing period`}.`}:n&&!r?{kind:`success`,message:`Pro plan reactivated.`}:{kind:`info`,message:`Subscription updated.`}}function kn(){let[e]=s(),t=o(),n=l(),r=(0,q.useRef)(null);return(0,q.useEffect)(()=>()=>{r.current!==null&&(clearInterval(r.current),r.current=null)},[]),(0,q.useEffect)(()=>{if(e.get(`portal_return`)!==`true`)return;let i={current:!1},a=jt(),o=G(),s=Ee(),c=Date.now();async function l(){await n.invalidateQueries({queryKey:s});let e=await n.fetchQuery(o);return{cancel_at_period_end:e.cancel_at_period_end,cancel_at:e.cancel_at}}async function u(){let e=await l();for(;!i.current&&a&&e.cancel_at_period_end===a.cancel_at_period_end&&e.cancel_at===a.cancel_at&&Date.now()-c<wn&&(await new Promise(e=>setTimeout(e,Cn)),!i.current);)e=await l();return e}return(async()=>{try{let e=await u();if(i.current)return;let{kind:t,message:n}=On(a,e);t===`success`?V.success(n,{id:Dn}):V.info(n,{id:Dn})}catch{if(i.current)return;V.info(`Subscription updated.`,{id:Dn})}finally{if(!i.current){Mt(),t(se.settings.billing,{replace:!0});let e=Date.now();r.current!==null&&clearInterval(r.current),r.current=setInterval(()=>{if(Date.now()-e>=En){r.current!==null&&(clearInterval(r.current),r.current=null);return}l().catch(e=>{console.error(`billing poll error:`,e)})},Tn)}}})(),()=>{i.current=!0}},[e,t,n]),null}var An=[7,30,90].map(e=>({value:`${e}`,label:`Last ${e} days`}));function jn(e,t=U()){let{fromDate:n,toDate:r}=at(e,t);return{from:n,to:r}}function Mn(e,t){let n=new Date(e),r=new Date(t);return Math.round((r.getTime()-n.getTime())/864e5)+1}function Nn({from:e,to:t}){let n=Mn(e,t);return n===7?7:n===90?90:30}function Pn({value:e,onChange:t}){let n=Ge(),r=(0,q.useMemo)(()=>`${Nn(e)}`,[e]);return(0,J.jsx)(H,{options:An,value:r,onChange:e=>{let r=Number(e);t(jn(r,n),r)},"aria-label":`Date range`})}var Fn={strokeDasharray:`3 3`,stroke:`var(--border-subtle)`,strokeOpacity:.4},In={fontSize:12,fill:`var(--content-tertiary)`},Ln={stroke:`var(--border-subtle)`,strokeOpacity:.4},Rn=[`#3b82f6`,`#10b981`,`#f59e0b`,`#ef4444`,`#8b5cf6`,`#06b6d4`,`#ec4899`,`#84cc16`];function zn({item:e}){return(0,J.jsxs)(`div`,{className:`flex items-center gap-2 py-0.5 text-[13px] text-[var(--content-default)]`,children:[(0,J.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,J.jsx)(`span`,{children:e.label}),(0,J.jsx)(`span`,{className:`ml-auto tabular-nums`,children:e.value})]})}function Bn({active:e,payload:t,hoveredKey:n,label:r,labelMap:i,colorMap:a,formatValue:o,showTotal:s,formatLabel:c}){if(!e||!t?.length)return null;let l=t.filter(e=>e.value!=null&&e.dataKey!=null).map(e=>({key:String(e.dataKey),label:i[String(e.dataKey)]??String(e.dataKey),value:o(Number(e.value)),color:a[String(e.dataKey)]??`#6b7280`,numericValue:Number(e.value)})).sort((e,t)=>e.numericValue===t.numericValue?e.label.localeCompare(t.label):t.numericValue-e.numericValue),u=n?l.find(e=>e.key===n):null,d=u?l.filter(e=>e.key!==n):l,f=l.reduce((e,t)=>e+t.numericValue,0);return(0,J.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-overlay)] px-3.5 py-2.5 shadow-[var(--shadow-popover)]`,children:[(0,J.jsx)(`div`,{className:`mb-1.5 text-xs font-medium text-[var(--content-secondary)]`,children:(c??it)(String(r))}),u&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(zn,{item:u}),d.length>0&&(0,J.jsx)(`div`,{className:`my-1.5 border-t border-[var(--border-subtle)]`})]}),d.map(e=>(0,J.jsx)(zn,{item:e},e.key)),s&&(0,J.jsx)(`div`,{className:`mt-1 flex items-center gap-2 border-t border-[var(--border-subtle)] pt-1.5 text-[13px] font-semibold text-[var(--content-default)]`,children:(0,J.jsxs)(`span`,{children:[`Total: `,o(f)]})})]})}function Vn(e,t){let[n,r]=e,[i,a]=t,o=r-n||1;return e=>i+(e-n)/o*(a-i)}function Hn(e){if(e<=0)return 1;let t=10**Math.floor(Math.log10(e)),n=e/t,r;return r=n<=1?1:n<=2?2:n<=2.5?2.5:n<=5?5:10,r*t}function Un(e){if(e>=1)return+!Number.isInteger(e);let t=e/10**Math.floor(Math.log10(e)),n=Math.abs(t-2.5)<.01;return Math.ceil(-Math.log10(e))+ +!!n}function Wn(e,t){let n=Math.max(0,...e),r=t?.tickCount??5;return n===0?t?.integerOnly?r:1:t?.integerOnly?Math.max(1,Math.ceil(n/r))*r:Hn(n/r)*r}function Gn(e,t){if(e===0)return[0];let n=e/t,r=10**(n>=1?0:Math.ceil(-Math.log10(n))+2),i=[];for(let e=0;e<=t;e++)i.push(Math.round(n*e*r)/r);return i}function Kn(e,t,n,r,i){let a=Math.min(i,n/2,r/2);return[`M${e},${t+a}`,`A${a},${a} 0 0 1 ${e+a},${t}`,`H${e+n-a}`,`A${a},${a} 0 0 1 ${e+n},${t+a}`,`V${t+r}`,`H${e}`,`Z`].join(``)}function qn(e,t){if(e<=0)return[];if(t)return e<=3?Array.from({length:e},(e,t)=>t):[0,Math.floor(e/2),e-1];let n=Math.max(1,Math.ceil(e/Math.min(e,12))),r=[];for(let t=0;t<e;t+=n)r.push(t);return r[r.length-1]!==e-1&&r.push(e-1),r}var Jn=40,Yn={fontSize:11,fill:`var(--content-tertiary)`},Xn={runtime_proxy_api:`#3b82f6`,oauth_proxy:`#f59e0b`};function Zn(e,t){return Xn[e]??Rn[t%Rn.length]??`#6b7280`}function Qn(e,t){let n=new Set,r={};for(let t of e)for(let e of t.groups)n.add(e.group_key),r[e.group_key]=e.group_label;return{data:e.map(e=>{let n={date:e.date};for(let r of e.groups)n[r.group_key]=t===`spend`?parseFloat(r.total_usd):r.event_count;return n}),stackKeys:Array.from(n),labelMap:r}}function $n({stackKeys:e,labelMap:t}){return(0,J.jsx)(`div`,{className:`flex flex-wrap items-center justify-center gap-x-5 gap-y-1 pt-3 text-body-small-default`,children:e.map((e,n)=>(0,J.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,J.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 rounded-sm`,style:{backgroundColor:Zn(e,n)}}),(0,J.jsx)(`span`,{className:`text-[var(--content-quiet)]`,children:t[e]??e})]},e))})}var er=350,tr={top:8,right:4,bottom:32,left:0},nr=.2,rr=5,ir=12,ar=200;function or({buckets:e,metric:t,onBarClick:n}){let r=Ke(),i=(0,q.useRef)(null),[a,o]=(0,q.useState)(0);(0,q.useEffect)(()=>{let e=i.current;if(!e)return;let t=new ResizeObserver(([e])=>{e&&o(e.contentRect.width)});return t.observe(e),()=>t.disconnect()},[]);let{data:s,stackKeys:c,labelMap:l}=(0,q.useMemo)(()=>Qn(e,t),[e,t]),u=(0,q.useMemo)(()=>{let e={};for(let t=0;t<c.length;t++)e[c[t]]=Zn(c[t],t);return e},[c]),d=(0,q.useCallback)(e=>t===`spend`?`$${e.toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2})}`:e.toLocaleString(`en-US`),[t]),[f,p]=(0,q.useState)(null),m=r?Jn:56,h=r?Yn:In,g=tr.left+m,_=Math.max(0,a-g-tr.right),v=tr.top,y=er-tr.top-tr.bottom,b=(0,q.useMemo)(()=>s.map(e=>c.reduce((t,n)=>t+(Number(e[n])||0),0)),[s,c]),x=t===`events`,S=(0,q.useMemo)(()=>Wn(b,{integerOnly:x,tickCount:rr}),[b,x]),C=(0,q.useMemo)(()=>Gn(S,rr),[S]),w=(0,q.useCallback)(e=>{if(t===`spend`){if(e===0)return`$0`;let t=S/rr,n=Math.max(t<1?2:0,Un(t));return`$${e.toLocaleString(`en-US`,{minimumFractionDigits:n,maximumFractionDigits:n})}`}return e.toLocaleString(`en-US`)},[t,S]),T=(0,q.useMemo)(()=>Vn([0,S],[v+y,v]),[S,v,y]),E=s.length,D=E>0?_/E:0,O=D*(1-nr),k=(D-O)/2,A=(0,q.useMemo)(()=>qn(E,r),[E,r]),j=c.length===0,M=j?[]:s.map((e,t)=>{let n=g+t*D+k,r=0;return{di:t,x:n,segments:c.map((t,i)=>{let a=Number(e[t])||0,o=r;r+=a;let s=T(r),l=T(o)-s,u=i===c.length-1;return{key:t,val:a,x:n,y:s,h:l,color:Zn(t,i),isLast:u}})}}),N=(e,t,n)=>{let r=i.current?.getBoundingClientRect();r&&p({x:e.clientX-r.left,y:e.clientY-r.top,datumIndex:t,hoveredKey:n})},P=()=>p(null),F=e=>{n&&n(e)},ee=f?c.filter(e=>(Number(s[f.datumIndex]?.[e])||0)>0).map(e=>({dataKey:e,value:Number(s[f.datumIndex]?.[e])||0})):[],te={left:f?Math.max(0,Math.min(f.x+ir,a-ar)):0,top:f?f.y-ir:0,visibility:f?`visible`:`hidden`};return(0,J.jsxs)(`div`,{onMouseDown:e=>e.preventDefault(),children:[(0,J.jsx)(`div`,{ref:i,className:`relative w-full`,style:{height:er},children:j?(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center text-body-medium-lighter text-[var(--content-faint)]`,children:`No usage data for this period`}):a>0?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`svg`,{width:a,height:er,className:`block`,children:[C.map(e=>(0,J.jsx)(`line`,{x1:g,x2:g+_,y1:T(e),y2:T(e),stroke:Fn.stroke,strokeOpacity:Fn.strokeOpacity,strokeDasharray:Fn.strokeDasharray},e)),(0,J.jsx)(`line`,{x1:g,x2:g+_,y1:v+y,y2:v+y,stroke:Ln.stroke,strokeOpacity:Ln.strokeOpacity}),C.map(e=>(0,J.jsx)(`text`,{x:g-8,y:T(e),textAnchor:`end`,dominantBaseline:`middle`,fontSize:h.fontSize,fill:h.fill,children:w(e)},e)),A.map(e=>{let t=s[e];return t?(0,J.jsx)(`text`,{x:g+e*D+D/2,y:v+y+20,textAnchor:`middle`,fontSize:h.fontSize,fill:h.fill,children:it(String(t.date))},e):null}),M.map(({di:e,segments:t})=>t.map(t=>{if(t.h<=0)return null;let r=f?.hoveredKey&&f.hoveredKey!==t.key?.4:1,i={key:`${e}-${t.key}`,fill:t.color,opacity:r,cursor:n?`pointer`:void 0,onMouseMove:n=>N(n,e,t.key),onMouseLeave:P,onClick:()=>F(t.key)};return t.isLast?(0,J.jsx)(`path`,{...i,d:Kn(t.x,t.y,O,t.h,3)}):(0,J.jsx)(`rect`,{...i,x:t.x,y:t.y,width:O,height:t.h})}))]}),(0,J.jsx)(`div`,{className:`pointer-events-none absolute z-[1] max-w-[calc(100vw-32px)] -translate-y-full`,style:te,children:(0,J.jsx)(Bn,{active:!!f,payload:ee,hoveredKey:f?.hoveredKey??void 0,label:f?String(s[f.datumIndex]?.date):``,labelMap:l,colorMap:u,formatValue:d})})]}):null}),!j&&(0,J.jsx)($n,{stackKeys:c,labelMap:l})]})}function sr(e=U()){return jn(30,e)}function cr(e){if(e)return e.usageSource===`oauth_proxy`?`oauth_provider`:tt(e.llmDimension??`model`)}function lr(e,t=U()){return{from:e.dateRange.from,to:e.dateRange.to,tz:t,...e.drilldown?{usage_source:e.drilldown.usageSource,group_by:cr(e.drilldown)}:{}}}function ur(e,t=U()){return{from:e.dateRange.from,to:e.dateRange.to,tz:t,...e.drilldown?{usage_source:e.drilldown.usageSource}:{}}}function dr(e){let t=Ge(),n=u(Le({query:lr(e,t)})),r=u(ke({query:ur(e,t)}));return{series:n.data,totals:r.data,isLoading:n.isLoading||r.isLoading,isError:n.isError||r.isError}}var fr=[{value:`spend`,label:`Spend ($)`},{value:`events`,label:`Events`}];function pr(e){if(e===void 0)return`—`;let t=parseFloat(e);return Number.isNaN(t)?`$0.00`:`$${t.toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2})}`}function mr(e){return e===void 0?`—`:e.toLocaleString(`en-US`)}function hr(){let e=Ge(),[t,n]=(0,q.useState)(30),[r,i]=(0,q.useState)(()=>sr(e)),a=(0,q.useMemo)(()=>t===null?r:jn(t,e),[t,r,e]),o=(e,t)=>{n(t),i(e)},[s,c]=(0,q.useState)(null),[l,u]=(0,q.useState)(`spend`),{series:d,totals:f,isLoading:h,isError:_}=dr({dateRange:a,setDateRange:e=>{n(null),i(e)},drilldown:s,setDrilldown:c}),v=s?void 0:e=>{let t={runtime_proxy_api:`runtime_proxy`,oauth_proxy:`oauth_proxy`}[e];t&&c({usageSource:t,...t===`runtime_proxy`?{llmDimension:rt}:{}})};return(0,J.jsx)(m,{padding:`md`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,J.jsxs)(`div`,{children:[(0,J.jsx)(p,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Credit Usage`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`Overview of your spending habits.`})]}),(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2 [&_[role=combobox]]:h-8 [&_[role=radio]]:h-7`,children:[(0,J.jsx)(Pn,{value:a,onChange:o}),(0,J.jsx)(`div`,{className:`w-44`,children:(0,J.jsx)(R,{items:fr,value:l,onChange:u,ariaLabel:`Chart metric`})})]})]}),(0,J.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-2`,children:[(0,J.jsx)(z,{icon:(0,J.jsx)(Xe,{className:`h-4 w-4`,"aria-hidden":!0}),value:h?(0,J.jsx)(A,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):pr(f?.total_usd),label:`Spend`}),(0,J.jsx)(z,{icon:(0,J.jsx)(ut,{className:`h-4 w-4`,"aria-hidden":!0}),value:h?(0,J.jsx)(A,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):mr(f?.event_count),label:`Events`})]}),s&&(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,J.jsx)(`div`,{children:(0,J.jsxs)(`button`,{className:`flex items-center gap-1.5 text-body-medium-lighter text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-secondary)]`,onClick:()=>c(null),children:[(0,J.jsx)(g,{className:`h-3.5 w-3.5`}),(0,J.jsx)(`span`,{children:`Back to all usage`}),(0,J.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:`/`}),(0,J.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:s.usageSource===`runtime_proxy`?`LLM Spend`:`OAuth Spend`})]})}),s.usageSource===`runtime_proxy`&&(0,J.jsx)(`div`,{className:`w-56`,children:(0,J.jsx)(R,{items:nt,value:s.llmDimension??`model`,onChange:e=>c({usageSource:`runtime_proxy`,llmDimension:e}),ariaLabel:`LLM spend dimension`})})]}),h?(0,J.jsx)(`div`,{className:`flex h-[345px] items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,J.jsx)(A,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}):_?(0,J.jsx)(`div`,{className:`flex h-[345px] items-center justify-center rounded-xl bg-[var(--surface-base)] text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Failed to load usage data.`}):d?(0,J.jsx)(`div`,{className:`rounded-xl bg-[var(--surface-base)] p-3`,children:(0,J.jsx)(or,{buckets:d.buckets,metric:l,onBarClick:v})}):null]})})}function gr(){let{data:e}=u(G()),t=It((0,q.useMemo)(()=>Nt(e),[e]));if(!e||e.plan_id!==`pro`||e.status===`canceled`||!e.cancel_at_period_end&&!e.cancel_at)return null;let n=Ft(e);return n?(0,J.jsx)(I,{tone:`info`,title:`Your Pro plan will end on ${Pt(n)}.`,actions:(0,J.jsx)(i,{variant:`outlined`,size:`compact`,onClick:()=>t.mutate({}),disabled:t.isPending,leftIcon:t.isPending?(0,J.jsx)(A,{className:`animate-spin`}):void 0,"data-testid":`grace-period-reactivate-button`,children:`Reactivate`}),"data-testid":`grace-period-banner`,children:`You'll keep Pro features until then.`}):null}var _r=t(((e,t)=>{t.exports=`SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED`})),vr=t(((e,t)=>{var n=_r();function r(){}function i(){}i.resetWarningCache=r,t.exports=function(){function e(e,t,r,i,a,o){if(o!==n){var s=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name=`Invariant Violation`,s}}e.isRequired=e;function t(){return e}var a={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:r};return a.PropTypes=a,a}})),X=e(t(((e,t)=>{t.exports=vr()()}))(),1);function yr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function br(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?yr(Object(n),!0).forEach(function(t){Sr(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):yr(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function xr(e){"@babel/helpers - typeof";return xr=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},xr(e)}function Sr(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Cr(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,a;for(a=0;a<r.length;a++)i=r[a],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}function wr(e,t){if(e==null)return{};var n=Cr(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)r=a[i],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function Tr(e,t){return Er(e)||Dr(e,t)||Or(e,t)||Ar()}function Er(e){if(Array.isArray(e))return e}function Dr(e,t){var n=e&&(typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`]);if(n!=null){var r=[],i=!0,a=!1,o,s;try{for(n=n.call(e);!(i=(o=n.next()).done)&&(r.push(o.value),!(t&&r.length===t));i=!0);}catch(e){a=!0,s=e}finally{try{!i&&n.return!=null&&n.return()}finally{if(a)throw s}}return r}}function Or(e,t){if(e){if(typeof e==`string`)return kr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return kr(e,t)}}function kr(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Ar(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
3
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var Z=function(e,t,n){var r=!!n,i=q.useRef(n);q.useEffect(function(){i.current=n},[n]),q.useEffect(function(){if(!r||!e)return function(){};var n=function(){i.current&&i.current.apply(i,arguments)};return e.on(t,n),function(){e.off(t,n)}},[r,t,e,i])},jr=function(e){var t=q.useRef(e);return q.useEffect(function(){t.current=e},[e]),t.current},Mr=function(e){return e!==null&&xr(e)===`object`},Nr=function(e){return Mr(e)&&typeof e.then==`function`},Pr=function(e){return Mr(e)&&typeof e.elements==`function`&&typeof e.createToken==`function`&&typeof e.createPaymentMethod==`function`&&typeof e.confirmCardPayment==`function`},Fr=`[object Object]`,Ir=function e(t,n){if(!Mr(t)||!Mr(n))return t===n;var r=Array.isArray(t);if(r!==Array.isArray(n))return!1;var i=Object.prototype.toString.call(t)===Fr;if(i!==(Object.prototype.toString.call(n)===Fr))return!1;if(!i&&!r)return t===n;var a=Object.keys(t),o=Object.keys(n);if(a.length!==o.length)return!1;for(var s={},c=0;c<a.length;c+=1)s[a[c]]=!0;for(var l=0;l<o.length;l+=1)s[o[l]]=!0;var u=Object.keys(s);if(u.length!==a.length)return!1;var d=t,f=n;return u.every(function(t){return e(d[t],f[t])})},Lr=function(e,t,n){return Mr(e)?Object.keys(e).reduce(function(r,i){var a=!Mr(t)||!Ir(e[i],t[i]);return n.includes(i)?(a&&console.warn(`Unsupported prop change: options.${i} is not a mutable property.`),r):a?br(br({},r||{}),{},Sr({},i,e[i])):r},null):null},Rr="Invalid prop `stripe` supplied to `Elements`. We recommend using the `loadStripe` utility from `@stripe/stripe-js`. See https://stripe.com/docs/stripe-js/react#elements-props-stripe for details.",zr=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Rr;if(e===null||Pr(e))return e;throw Error(t)},Br=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Rr;if(Nr(e))return{tag:`async`,stripePromise:Promise.resolve(e).then(function(e){return zr(e,t)})};var n=zr(e,t);return n===null?{tag:`empty`}:{tag:`sync`,stripe:n}},Vr=function(e){!e||!e._registerWrapper||!e.registerAppInfo||(e._registerWrapper({name:`react-stripe-js`,version:`6.4.0`}),e.registerAppInfo({name:`react-stripe-js`,version:`6.4.0`,url:`https://stripe.com/docs/stripe-js/react`}))},Hr=q.createContext(null);Hr.displayName=`ElementsContext`;var Ur=function(e,t){if(!e)throw Error(`Could not find Elements context; You need to wrap the part of your app that ${t} in an <Elements> provider.`);return e},Wr=function(e){var t=e.stripe,n=e.options,r=e.children,i=q.useMemo(function(){return Br(t)},[t]),a=Tr(q.useState(function(){return{stripe:i.tag===`sync`?i.stripe:null,elements:i.tag===`sync`?i.stripe.elements(n):null}}),2),o=a[0],s=a[1];q.useEffect(function(){var e=!0,t=function(e){s(function(t){return t.stripe?t:{stripe:e,elements:e.elements(n)}})};return i.tag===`async`&&!o.stripe?i.stripePromise.then(function(n){n&&e&&t(n)}):i.tag===`sync`&&!o.stripe&&t(i.stripe),function(){e=!1}},[i,o,n]);var c=jr(t);q.useEffect(function(){c!==null&&c!==t&&console.warn("Unsupported prop change on Elements: You cannot change the `stripe` prop after setting it.")},[c,t]);var l=jr(n);return q.useEffect(function(){if(o.elements){var e=Lr(n,l,[`clientSecret`,`fonts`]);e&&o.elements.update(e)}},[n,l,o.elements]),q.useEffect(function(){Vr(o.stripe)},[o.stripe]),q.createElement(Hr.Provider,{value:o},r)};Wr.propTypes={stripe:X.default.any,options:X.default.object};var Gr=function(e){return Ur(q.useContext(Hr),e)},Kr=function(e){var t=e.children;return t(Gr(`mounts <ElementsConsumer>`))};Kr.propTypes={children:X.default.func.isRequired};var qr=q.createContext(null);qr.displayName=`CheckoutContext`;var Jr=function(e){var t=q.useContext(qr),n=q.useContext(Hr);if(t){if(n)throw Error(`You cannot wrap the part of your app that ${e} in both a checkout provider and <Elements> provider.`);return t}else return Ur(n,e)},Yr=[`mode`],Xr=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},Q=function(e,t,n){var r=`${Xr(e)}Element`,i=t?function(e){Jr(`mounts <${r}>`);var t=e.id,n=e.className;return q.createElement(`div`,{id:t,className:n})}:function(t){var n=t.id,i=t.className,a=t.options,o=a===void 0?{}:a,s=t.onBlur,c=t.onFocus,l=t.onReady,u=t.onChange,d=t.onEscape,f=t.onClick,p=t.onLoadError,m=t.onLoaderStart,h=t.onNetworksChange,g=t.onConfirm,_=t.onCancel,v=t.onShippingAddressChange,y=t.onShippingRateChange,b=t.onSavedPaymentMethodRemove,x=t.onSavedPaymentMethodUpdate,S=t.onAvailablePaymentMethodsChange,C=Jr(`mounts <${r}>`),w=`elements`in C?C.elements:null,T=`checkoutState`in C?C.checkoutState:null,E=T?.type===`success`||T?.type===`loading`?T.sdk:null,D=Tr(q.useState(null),2),O=D[0],k=D[1],A=q.useRef(null),j=q.useRef(null);Z(O,`blur`,s),Z(O,`focus`,c),Z(O,`escape`,d),Z(O,`click`,f),Z(O,`loaderror`,p),Z(O,`loaderstart`,m),Z(O,`networkschange`,h),Z(O,`confirm`,g),Z(O,`cancel`,_),Z(O,`shippingaddresschange`,v),Z(O,`shippingratechange`,y),Z(O,`savedpaymentmethodremove`,b),Z(O,`savedpaymentmethodupdate`,x),Z(O,`availablepaymentmethodschange`,S),Z(O,`change`,u);var M;l&&(M=e===`expressCheckout`?l:function(){l(O)}),Z(O,`ready`,M),q.useLayoutEffect(function(){if(A.current===null&&j.current!==null&&(w||E)){var t=null;if(E){var n=E,i=E;switch(e){case`paymentForm`:t=i.createForm(o);break;case`payment`:t=n.createPaymentElement(o);break;case`address`:if(`mode`in o){var a=o.mode,s=wr(o,Yr);if(a===`shipping`)t=n.createShippingAddressElement(s);else if(a===`billing`)t=n.createBillingAddressElement(s);else throw Error(`Invalid options.mode. mode must be 'billing' or 'shipping'.`)}else throw Error(`You must supply options.mode. mode must be 'billing' or 'shipping'.`);break;case`expressCheckout`:t=n.createExpressCheckoutElement(o);break;case`currencySelector`:t=E.createCurrencySelectorElement();break;case`taxId`:t=n.createTaxIdElement(o);break;case`contactDetails`:t=n.createContactDetailsElement();break;default:throw Error(`<${r}> is not supported inside a checkout provider. Use an <Elements> provider instead.`)}}else w&&(t=w.create(e,o));A.current=t,k(t),t&&t.mount(j.current)}},[w,E,o]);var N=jr(o);return q.useEffect(function(){if(A.current){var e=Lr(o,N,[`paymentRequest`]);e&&`update`in A.current&&A.current.update(e)}},[o,N]),q.useLayoutEffect(function(){return function(){if(A.current&&typeof A.current.destroy==`function`)try{A.current.destroy(),A.current=null}catch{}}},[]),q.createElement(`div`,{id:n,className:i,ref:j})};return i.propTypes={id:X.default.string,className:X.default.string,onChange:X.default.func,onBlur:X.default.func,onFocus:X.default.func,onReady:X.default.func,onEscape:X.default.func,onClick:X.default.func,onLoadError:X.default.func,onLoaderStart:X.default.func,onNetworksChange:X.default.func,onConfirm:X.default.func,onCancel:X.default.func,onShippingAddressChange:X.default.func,onShippingRateChange:X.default.func,onSavedPaymentMethodRemove:X.default.func,onSavedPaymentMethodUpdate:X.default.func,onAvailablePaymentMethodsChange:X.default.func,options:X.default.object},i.displayName=r,i.__elementType=e,i},$=typeof window>`u`,Zr=q.createContext(null);Zr.displayName=`EmbeddedCheckoutProviderContext`,Q(`auBankAccount`,$),Q(`card`,$),Q(`cardNumber`,$),Q(`cardExpiry`,$),Q(`cardCvc`,$),Q(`iban`,$),Q(`payment`,$),Q(`expressCheckout`,$),Q(`paymentRequestButton`,$),Q(`linkAuthentication`,$),Q(`contactDetails`,$),Q(`address`,$),Q(`shippingAddress`,$),Q(`paymentMethodMessaging`,$),Q(`taxId`,$),Q(`issuingCardNumberDisplay`,$),Q(`issuingCardCvcDisplay`,$),Q(`issuingCardExpiryDisplay`,$),Q(`issuingCardPinDisplay`,$),Q(`issuingCardCopyButton`,$);var Qr=`dahlia`,$r=`https://js.stripe.com`,ei=`${$r}/${Qr}/stripe.js`,ti=/^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/,ni=/^https:\/\/js\.stripe\.com\/(v3|[a-z]+)\/stripe\.js(\?.*)?$/,ri=`loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used`,ii=function(e){return ti.test(e)||ni.test(e)},ai=function(){for(var e=document.querySelectorAll(`script[src^="${$r}"]`),t=0;t<e.length;t++){var n=e[t];if(ii(n.src))return n}return null},oi=function(e){var t=e&&!e.advancedFraudSignals?`?advancedFraudSignals=false`:``,n=document.createElement(`script`);n.src=`${ei}${t}`;var r=document.head||document.body;if(!r)throw Error(`Expected document.body not to be null. Stripe.js requires a <body> element.`);return r.appendChild(n),n},si=null,ci=null,li=null,ui=function(e){return function(t){e(Error(`Failed to load Stripe.js`,{cause:t}))}},di=function(e,t){return function(){window.Stripe?e(window.Stripe):t(Error(`Stripe.js not available`))}},fi=function(e){return si===null?(si=new Promise(function(t,n){if(typeof window>`u`||typeof document>`u`){t(null);return}if(window.Stripe&&e&&console.warn(ri),window.Stripe){t(window.Stripe);return}try{var r=ai();if(r&&e)console.warn(ri);else if(!r)r=oi(e);else if(r&&li!==null&&ci!==null){var i;r.removeEventListener(`load`,li),r.removeEventListener(`error`,ci),(i=r.parentNode)==null||i.removeChild(r),r=oi(e)}li=di(t,n),ci=ui(n),r.addEventListener(`load`,li),r.addEventListener(`error`,ci)}catch(e){n(e);return}}),si.catch(function(e){return si=null,Promise.reject(e)})):si},pi,mi=!1,hi=function(){return pi||(pi=fi(null).catch(function(e){return pi=null,Promise.reject(e)}),pi)};Promise.resolve().then(function(){return hi()}).catch(function(e){mi||console.warn(e)});function gi(){return typeof document<`u`&&document.documentElement.classList.contains(`dark`)?{theme:`night`}:{theme:`stripe`}}function _i({open:e,onClose:t,onSavedOptimistic:n}){let r=d(xe()),{mutate:i,reset:a}=r;return(0,q.useEffect)(()=>{e||a()},[e,i,a]),(0,q.useMemo)(()=>gi(),[r.data?.client_secret??null]),(0,J.jsx)(B.Root,{open:e,onOpenChange:e=>{e||t()},children:(0,J.jsxs)(B.Content,{size:`sm`,children:[(0,J.jsx)(B.Header,{children:(0,J.jsx)(B.Title,{children:`Save Payment Method`})}),(0,J.jsx)(B.Body,{className:`min-h-[260px]`,children:(0,J.jsx)(vi,{})})]})})}function vi(){return(0,q.useEffect)(()=>{console.warn(`[AutoTopUpPaymentMethodModal] VITE_STRIPE_PUBLISHABLE_KEY is not set; the payment-method modal cannot mount Stripe Elements.`)},[]),(0,J.jsx)(I,{tone:`error`,children:`Payment method setup is currently unavailable. Please try again later.`})}function yi(){return(0,J.jsxs)(`div`,{children:[(0,J.jsx)(p,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Payment Method`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`This is the payment method that will be used for automated credit reloads.`})]})}function bi(){let e=l(),t=u(de()),[n,r]=(0,q.useState)(!1),[a,o]=(0,q.useState)(!1),s=d(Ve()),c=async()=>{let t=Date.now(),n=e=>e?.stripe_payment_method_updated_at??null,r=n(e.getQueryData(W()));try{await e.invalidateQueries({queryKey:W()})}catch{}for(;Date.now()-t<2e4;){try{let t=await e.fetchQuery(de());if(t.has_payment_method&&n(t)!==r)return}catch{}await new Promise(e=>setTimeout(e,1500))}};if(t.isLoading)return(0,J.jsxs)(m,{padding:`md`,children:[(0,J.jsx)(yi,{}),(0,J.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(A,{className:`h-4 w-4 animate-spin`}),`Loading…`]})]});if(t.isError||!t.data)return(0,J.jsxs)(m,{padding:`md`,children:[(0,J.jsx)(yi,{}),(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsx)(I,{tone:`error`,children:`Failed to load payment method.`})})]});let f=t.data,h=nn(f.payment_method_brand??`card`),g=f.payment_method_last4;return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(m,{padding:`md`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsx)(yi,{}),f.has_payment_method?(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] px-2 py-1.5`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-6 w-6 shrink-0 items-center justify-center text-[var(--content-emphasised)]`,children:(0,J.jsx)(S,{className:`h-3.5 w-3.5`})}),(0,J.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,J.jsx)(p,{variant:`body-medium-default`,as:`span`,children:h}),g?(0,J.jsxs)(p,{variant:`body-small-default`,as:`div`,className:`text-[var(--content-tertiary)]`,children:[`Ending in `,g]}):null]}),(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,J.jsx)(i,{variant:`ghost`,onClick:()=>r(!0),children:`Change`}),(0,J.jsx)(i,{variant:`ghost`,onClick:()=>o(!0),disabled:a||s.isPending,leftIcon:(0,J.jsx)(Qe,{className:`h-3.5 w-3.5`}),children:`Remove`})]})]}):(0,J.jsx)(i,{className:`self-start`,onClick:()=>r(!0),children:`Add Card`})]})}),(0,J.jsx)(ie,{open:a,title:`Remove payment method?`,message:`Removing your payment method will disable automatic top-ups. You can re-enable them after adding a new payment method.`,confirmLabel:s.isPending?`Removing…`:`Remove`,cancelLabel:`Keep`,destructive:!0,onConfirm:()=>{s.isPending||s.mutate({},{onSuccess:()=>{he(e,void 0,e=>e?{...e,enabled:!1,has_payment_method:!1,payment_method_brand:null,payment_method_last4:null}:pn),o(!1)},onError:()=>{V.error(`Failed to remove payment method. Please try again.`),o(!1)}})},onCancel:()=>{s.isPending||o(!1)}}),(0,J.jsx)(_i,{open:n,onClose:()=>r(!1),onSavedOptimistic:c})]})}var xi={invoices:[]};function Si(e){switch(e){case`paid`:return`positive`;case`open`:return`warning`;case`uncollectible`:return`negative`;default:return`neutral`}}function Ci(e,t){let n=t.toUpperCase();try{let t=new Intl.NumberFormat(void 0,{style:`currency`,currency:n}),r=t.resolvedOptions().maximumFractionDigits??2;return t.format(e/10**r)}catch{return`${(e/100).toFixed(2)} ${n}`}}function wi(e){return et(new Date(e*1e3),{alwaysShowYear:!0})}function Ti(e){let t=document.createElement(`a`);t.href=e,t.target=`_blank`,t.rel=`noopener noreferrer`,document.body.appendChild(t),t.click(),t.remove()}function Ei({open:e,onOpenChange:t}){let[r,o]=(0,q.useState)(!1),s=u({queryKey:me(),enabled:e,queryFn:async({signal:e})=>{let{data:t,response:n}=await oe({throwOnError:!1,signal:e});if(n?.status===404)return xi;if(!n?.ok||!t)throw Error(`Failed to load invoices (${n?.status??`network error`})`);return t}}),c=s.data?.invoices??[],l=c.some(e=>e.invoice_pdf!=null);async function d(){o(!0);try{let{data:e,response:t}=await ae({throwOnError:!1,parseAs:`blob`});if(!t?.ok||!(e instanceof Blob))throw Error(`Failed to download invoices (${t?.status??`network error`})`);let{saveFile:n}=await a(async()=>{let{saveFile:e}=await import(`./native-file-H6DBFhbO.js`).then(e=>e.t);return{saveFile:e}},__vite__mapDeps([0,1,2,3]));await n(e,`invoices.zip`)}catch(e){n(e,{context:`download_all_invoices`}),V.error(`Failed to download invoices.`)}finally{o(!1)}}return(0,J.jsx)(B.Root,{open:e,onOpenChange:t,children:(0,J.jsxs)(B.Content,{size:`lg`,children:[(0,J.jsxs)(B.Header,{children:[(0,J.jsx)(B.Title,{icon:D,children:`Invoices`}),(0,J.jsx)(B.Description,{children:`Your billing history. Open an invoice for full details or download it as a PDF.`})]}),(0,J.jsx)(B.Body,{children:s.isLoading?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(A,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(p,{as:`span`,variant:`body-small-default`,children:`Loading invoices...`})]}):s.isError?(0,J.jsx)(I,{tone:`error`,children:`Failed to load invoices.`}):c.length===0?(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`py-6 text-center text-[var(--content-tertiary)]`,"data-testid":`invoices-empty`,children:`No Invoices Found`}):(0,J.jsx)(`ul`,{className:`flex flex-col divide-y divide-[var(--border-base)]`,children:c.map(e=>(0,J.jsxs)(`li`,{className:`flex items-center gap-3 py-3`,"data-testid":`invoice-row`,children:[(0,J.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsx)(p,{variant:`body-medium-default`,as:`span`,className:`text-[var(--content-default)]`,children:e.number??`Invoice`}),e.status&&(0,J.jsx)(ne,{tone:Si(e.status),children:e.status})]}),(0,J.jsxs)(p,{variant:`body-small-default`,as:`div`,className:`text-[var(--content-tertiary)]`,children:[wi(e.created),` ·`,` `,Ci(e.amount_due,e.currency)]})]}),e.hosted_invoice_url&&(0,J.jsx)(i,{asChild:!0,variant:`ghost`,size:`compact`,leftIcon:(0,J.jsx)(E,{}),children:(0,J.jsx)(`a`,{href:e.hosted_invoice_url,target:`_blank`,rel:`noopener noreferrer`,children:`View`})}),e.invoice_pdf&&(0,J.jsx)(i,{variant:`ghost`,size:`compact`,iconOnly:(0,J.jsx)(T,{}),"aria-label":`Download invoice PDF`,onClick:()=>Ti(e.invoice_pdf)})]},e.id))})}),(0,J.jsxs)(B.Footer,{children:[l&&(0,J.jsx)(i,{variant:`outlined`,leftIcon:r?(0,J.jsx)(A,{className:`animate-spin`}):(0,J.jsx)(T,{}),disabled:r,onClick:d,children:`Download all`}),(0,J.jsx)(B.Close,{asChild:!0,children:(0,J.jsx)(i,{variant:`primary`,children:`Done`})})]})]})})}var Di={pro:{icon:C,actionLabel:`Manage`,actionVariant:`outlined`,actionTestId:`plan-card-manage-button`,showsRenewal:!0},base:{icon:dt,actionLabel:`Upgrade to Pro`,actionVariant:`primary`,actionTestId:`plan-card-upgrade-button`,showsRenewal:!1}},Oi=Di.base;function ki(){return(0,J.jsxs)(`div`,{children:[(0,J.jsx)(p,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Plan`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`Manage which Vellum plan you're on.`})]})}function Ai({onManage:e}){let[t,n]=(0,q.useState)(!1),r=u(G()),a=u(Ce());if(r.isLoading||a.isLoading)return(0,J.jsxs)(m,{padding:`md`,children:[(0,J.jsx)(ki,{}),(0,J.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(A,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(p,{as:`span`,variant:`body-small-default`,children:`Loading plan...`})]})]});let o=r.data,s=a.data?.plans,c=s?.find(e=>e.id===o?.plan_id);if(r.isError||a.isError||!o||!s||!c)return(0,J.jsx)(I,{tone:`error`,children:`Failed to load plan.`});let l=Di[c.id]??Oi,d=l.icon,f=c.name??c.id,h=l.showsRenewal&&(o.cancel_at_period_end===!0||!!o.cancel_at),g=o.status===`canceled`,_=Ft(o),v=l.showsRenewal&&!h&&!g&&o.current_period_end,y=l.showsRenewal&&h&&!g&&_,b=c.id===`pro`?c:void 0,x=o.selected_credit_tier??null,S=x==null?void 0:b?.credit_tiers,C=S?.find(e=>e.tier===x),w=C?`${C.label} (${Y(C.price_cents)})`:S?.length?x:null;return(0,J.jsxs)(m,{padding:`lg`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,J.jsx)(ki,{}),(0,J.jsx)(i,{variant:`outlined`,leftIcon:(0,J.jsx)(D,{}),onClick:()=>n(!0),"data-testid":`plan-card-invoices-button`,children:`Invoices`})]}),(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] p-3`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)]`,children:(0,J.jsx)(d,{className:`h-4 w-4 text-[var(--content-default)]`})}),(0,J.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,J.jsx)(p,{variant:`body-medium-default`,as:`div`,"data-testid":`plan-card-name`,children:f}),(0,J.jsx)(p,{variant:`body-small-default`,as:`div`,className:`leading-snug text-[var(--content-tertiary)]`,children:(0,J.jsx)(Qt,{features:c.included_features,variant:`inline`})})]}),(0,J.jsx)(i,{variant:l.actionVariant,onClick:e,"data-testid":l.actionTestId,children:l.actionLabel})]}),w&&(0,J.jsxs)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`plan-card-credit-bundle`,children:[`Monthly credits: `,w]}),v&&(0,J.jsxs)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`plan-card-renews`,children:[`Renews on `,Pt(o.current_period_end),`.`]}),y&&(0,J.jsxs)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--system-mid-strong)]`,"data-testid":`plan-card-cancels`,children:[`Your plan ends on `,Pt(_),`.`]})]}),(0,J.jsx)(Ei,{open:t,onOpenChange:n})]})}var ji=`settings-referral-panel`;function Mi(e){return e.replace(/\.00$/,``)}function Ni(){let{data:e,isLoading:t,isError:n}=u(Be()),[r,a]=(0,q.useState)(!1),o=(0,q.useCallback)(e=>{navigator.clipboard.writeText(e).then(()=>{a(!0),V.success(`Copied to clipboard!`),setTimeout(()=>a(!1),2e3)})},[]),s=e?.is_eligible_for_credits===!1,c=s?`Invite friends to Vellum. You'll start earning referral credits once you've purchased credits or upgraded to Pro.`:e?`Share Vellum with friends - you'll each earn ${Mi(e.referrer_credit_amount)} credits when they sign up, up to ${Mi(e.earning_cap)} total.`:`Share Vellum with friends and earn credits for every signup.`;return(0,J.jsx)(m,{padding:`md`,id:ji,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsxs)(`div`,{children:[(0,J.jsx)(p,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Earn Free Credits`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:c})]}),s&&(0,J.jsx)(I,{tone:`info`,children:`You're not currently earning referral credits. Buy credits or upgrade to Pro to start earning — your invite link still works in the meantime.`}),t?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(A,{className:`h-4 w-4 animate-spin`}),`Loading...`]}):n||!e?(0,J.jsx)(I,{tone:`error`,children:`Failed to load referral information.`}):(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex min-w-[200px] flex-1 items-center gap-1.5 rounded-lg bg-[var(--surface-base)] px-2 py-1.5`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-6 w-6 shrink-0 items-center justify-center text-[var(--content-emphasised)]`,children:(0,J.jsx)(Xe,{className:`h-3.5 w-3.5`})}),(0,J.jsxs)(`span`,{className:`flex items-baseline gap-1 text-body-medium-default`,children:[(0,J.jsx)(`span`,{children:Mi(e.total_earned)}),(0,J.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Credits Earned`})]})]}),(0,J.jsxs)(`div`,{className:`flex min-w-[200px] flex-1 items-center gap-1.5 rounded-lg bg-[var(--surface-base)] px-2 py-1.5`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-6 w-6 shrink-0 items-center justify-center text-[var(--content-emphasised)]`,children:(0,J.jsx)(Ye,{className:`h-3.5 w-3.5`})}),(0,J.jsxs)(`span`,{className:`flex items-baseline gap-1 text-body-medium-default`,children:[(0,J.jsx)(`span`,{children:e.referred_count}),(0,J.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Friends Referred`})]})]}),(0,J.jsx)(i,{variant:`outlined`,onClick:()=>o(e.referral_url),leftIcon:r?(0,J.jsx)(_,{className:`h-3.5 w-3.5`}):(0,J.jsx)(b,{className:`h-3.5 w-3.5`}),"data-testid":`referral-copy-button`,children:r?`Copied!`:`Copy Share Link`})]})]})})}function Pi({icon:e,label:t,from:n,to:r}){return(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] p-3`,children:[(0,J.jsx)(`span`,{className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-lg`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 10%, transparent)`},children:(0,J.jsx)(e,{className:`h-4 w-4 text-[var(--system-positive-strong)]`})}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:t}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)] line-through`,children:n}),(0,J.jsx)(Ze,{className:`h-3 w-3 shrink-0 text-[var(--content-tertiary)]`}),(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:r})]})]})]})}function Fi({open:e,onClose:t}){let n=u({...K(),enabled:e}),r=u({...je(),enabled:e}),a=n.data,o=a?.machine_size||`small`,s=a?.provisioned_storage_gib??null,c=r.data?.max_machine_tier??null,l=r.data?.selected_storage_gib??null,d=j(c),f=d.length>0?d[d.length-1]:o,p=f!==o,m=l!=null&&(s==null||s<l),h=p||m,[g,_]=(0,q.useState)(null),v=Re({onSuccess:()=>{V.success(`Resize started. Changes will apply shortly.`,{id:`assistant-resize`}),_(null),t()},onError:e=>{_(ee(e,`Failed to resize assistant. Please try again.`))}}),y=v.isPending,b=n.isLoading||r.isLoading;return(0,J.jsx)(B.Root,{open:e,onOpenChange:e=>{e||(_(null),t())},children:(0,J.jsxs)(B.Content,{size:`sm`,children:[(0,J.jsxs)(B.Header,{children:[(0,J.jsx)(B.Title,{icon:M,children:`Plan Updated`}),(0,J.jsx)(B.Description,{children:`Your new resources are ready. Apply them now to resize your assistant — it will briefly restart.`})]}),(0,J.jsxs)(B.Body,{children:[b?(0,J.jsx)(`div`,{className:`flex items-center justify-center py-6`,children:(0,J.jsx)(A,{className:`h-5 w-5 animate-spin text-[var(--content-tertiary)]`})}):h?(0,J.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[p&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(Pi,{icon:x,label:`Machine`,from:F[o],to:F[f]}),(0,J.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-lg bg-[var(--surface-base)] px-3 py-2.5`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:`CPU`}),(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:P[f].split(`,`)[0].trim()})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-lg bg-[var(--surface-base)] px-3 py-2.5`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:`Memory`}),(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:P[f].split(`,`)[1].trim()})]})]})]}),m&&(0,J.jsx)(Pi,{icon:O,label:`Storage`,from:s==null?`—`:`${s} GiB`,to:`${l} GiB`})]}):(0,J.jsx)(I,{tone:`neutral`,children:`Your assistant is already running at the maximum size for your plan.`}),g&&(0,J.jsx)(`div`,{className:`mt-3`,children:(0,J.jsx)(I,{tone:`error`,children:g})})]}),(0,J.jsxs)(B.Footer,{children:[(0,J.jsx)(i,{variant:`ghost`,onClick:()=>{_(null),t()},children:`Do Later`}),(0,J.jsx)(i,{disabled:b||!h||y||!a?.id,leftIcon:y?(0,J.jsx)(A,{className:`animate-spin`}):void 0,onClick:()=>{if(!a?.id)return;_(null);let e={};p&&(e.machine_size=f),m&&l!=null&&(e.storage_gib=l),v.mutate({path:{id:a.id},body:e})},children:g?`Retry`:`Apply & Restart`})]})]})})}function Ii(){let[e]=s(),t=o(),n=l();return(0,q.useEffect)(()=>{let r=e.get(`billing_status`);r&&(r===`success`?(V.success(`Payment received! Your credit balance will update shortly.`,{id:`billing-status`}),n.invalidateQueries({queryKey:Fe().queryKey})):r===`cancel`&&V.info(`Checkout was cancelled. No credits were added.`,{id:`billing-status`}),t(se.settings.billing,{replace:!0}))},[e,t,n]),null}function Li(){let e=Ue({platformHostedOnly:!0}),t=Ue(),n=qe(),r=Je(),[i,a]=s(),[o,l]=(0,q.useState)(!1),u=(0,q.useCallback)(()=>l(!0),[]),d=(0,q.useCallback)(()=>l(!1),[]),[f,p]=(0,q.useState)(!1),m=(0,q.useCallback)(()=>p(!0),[]);(0,q.useEffect)(()=>{i.has(`adjust_plan`)&&(l(!0),a(e=>{let t=new URLSearchParams(e);return t.delete(`adjust_plan`),t},{replace:!0}))},[i,a]);let h=i.has(`session_id`),g=(0,q.useCallback)(()=>{a(e=>{let t=new URLSearchParams(e);return t.delete(`session_id`),t},{replace:!0})},[a]);if(t===`gated`)return(0,J.jsx)(c,{replace:!0,to:se.settings.general});if(t===`disabled`)return(0,J.jsx)(`div`,{className:`space-y-4`,children:(0,J.jsx)(He,{children:`Log in to the Vellum platform to manage billing and usage.`})});if(r)return(0,J.jsx)(`div`,{className:`space-y-4`,children:(0,J.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,J.jsx)(A,{className:`h-4 w-4 animate-spin`}),`Loading billing…`]})});let _=n;return!n&&e!==`gated`?(0,J.jsx)(`div`,{className:`space-y-4`,children:(0,J.jsx)(I,{tone:`warning`,children:`Billing isn't available for the current assistant state.`})}):(0,J.jsxs)(`div`,{className:`space-y-4`,children:[(0,J.jsxs)(q.Suspense,{fallback:null,children:[(0,J.jsx)(Ii,{}),(0,J.jsx)(kn,{})]}),_&&(0,J.jsx)(gr,{}),_&&(0,J.jsx)(Ai,{onManage:u}),_&&(0,J.jsx)(en,{open:o,onClose:d,onTierUpgraded:m}),(0,J.jsx)(bi,{}),(0,J.jsx)(q.Suspense,{fallback:null,children:(0,J.jsx)(Sn,{})}),(0,J.jsx)(Ni,{}),(0,J.jsx)(hr,{}),_&&(0,J.jsx)(Ot,{open:h,onClose:g}),_&&(0,J.jsx)(Fi,{open:f,onClose:()=>p(!1)})]})}export{Li as BillingPage};
@@ -1 +1 @@
1
- import{t as e}from"./createLucideIcon-Bjb-Kuq7.js";var t=e(`bookmark`,[[`path`,{d:`M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z`,key:`oz39mx`}]]);export{t};
1
+ import{t as e}from"./createLucideIcon-IRfcSUxS.js";var t=e(`bookmark`,[[`path`,{d:`M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z`,key:`oz39mx`}]]);export{t};
@@ -1 +1 @@
1
- import{t as e}from"./button-BQVYX8n_.js";import{u as t}from"./chunk-5KNZJZUH-SU6Q_tDT.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{t as r}from"./card-D8zyWtZh.js";import{t as i}from"./bookmark-CjHh36q4.js";import{t as a}from"./loader-circle-C9QrtO3C.js";import{t as o}from"./triangle-alert-CnjNKhNx.js";import{t as s}from"./x-BYcSiJRX.js";import{c}from"./routes-GPGveWZ8.js";import{Q as l,Xi as u,Z as d}from"./index-DglwxsvA.js";var f=n();function p(e){if(e==null)return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:t.toLocaleString(void 0,{month:`short`,day:`numeric`,year:`numeric`,hour:`numeric`,minute:`2-digit`,hour12:!0})}function m(){return(0,f.jsx)(r,{children:(0,f.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,f.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,f.jsx)(i,{className:`h-6 w-6 text-[var(--content-disabled)] dark:text-[var(--content-default)]`})}),(0,f.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:`No bookmarks`}),(0,f.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Hover any message and click the bookmark icon to save it here.`})]})})}function h({bookmark:t,isFirst:n,onOpen:r,onRemove:i}){let a=t.conversationTitle&&t.conversationTitle.trim().length>0?t.conversationTitle:`Untitled conversation`,o=t.messageRole!==`user`,c=p(t.createdAt);return(0,f.jsxs)(`div`,{className:`flex items-start gap-3 py-3 ${n?``:`border-t border-[var(--border-base)]`}`,children:[(0,f.jsx)(`span`,{"aria-hidden":!0,className:`mt-1 h-8 w-1 shrink-0 rounded-full`,style:{backgroundColor:o?`var(--content-default)`:`var(--content-tertiary)`}}),(0,f.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,f.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,f.jsx)(`div`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:a}),c?(0,f.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[var(--content-tertiary)]`,children:c}):null]}),t.messagePreview?(0,f.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-body-small-default text-[var(--content-tertiary)]`,children:t.messagePreview}):null]}),(0,f.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,f.jsx)(e,{variant:`outlined`,onClick:r,children:`Open`}),(0,f.jsx)(`button`,{type:`button`,onClick:i,title:`Remove bookmark`,"aria-label":`Remove bookmark`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-active)] hover:text-[var(--content-default)]`,children:(0,f.jsx)(s,{className:`h-4 w-4`})})]})]})}function g(){let n=t(),{bookmarks:i,isLoading:s,isError:p,refetch:g}=l(),_=d();return s?(0,f.jsx)(`div`,{className:`w-full`,children:(0,f.jsx)(`div`,{className:`flex min-h-[400px] items-center justify-center`,children:(0,f.jsx)(a,{className:`h-6 w-6 animate-spin text-[var(--content-disabled)]`})})}):p?(0,f.jsx)(`div`,{className:`w-full`,children:(0,f.jsx)(r,{children:(0,f.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,f.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--system-error-lighter)]`,children:(0,f.jsx)(o,{className:`h-6 w-6 text-[var(--system-error-default)]`})}),(0,f.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:`Failed to load bookmarks`}),(0,f.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Something went wrong. Please try again.`}),(0,f.jsxs)(e,{variant:`outlined`,onClick:g,className:`mt-4`,children:[(0,f.jsx)(u,{className:`h-4 w-4`}),`Retry`]})]})})}):i.length===0?(0,f.jsx)(`div`,{className:`w-full`,children:(0,f.jsx)(m,{})}):(0,f.jsx)(`div`,{className:`w-full`,children:(0,f.jsx)(r,{noPadding:!0,className:`px-4`,children:i.map((e,t)=>(0,f.jsx)(h,{bookmark:e,isFirst:t===0,onOpen:()=>{n(c.conversationAtMessage(e.conversationId,e.messageId))},onRemove:()=>{_(e.messageId,e.conversationId,!0)}},e.id))})})}export{g as BookmarksPage};
1
+ import{t as e}from"./button-amTXFI-2.js";import{d as t}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{t as r}from"./card-Bv5O5juh.js";import{t as i}from"./bookmark-CNrithFf.js";import{t as a}from"./loader-circle-Cz7opInR.js";import{t as o}from"./triangle-alert-Z0Gq0IuB.js";import{t as s}from"./x-CkSVp1Ok.js";import{c}from"./routes-DYcJgn9k.js";import{I as l,L as u,Ni as d}from"./index-CkKSY1-Q.js";var f=n();function p(e){if(e==null)return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:t.toLocaleString(void 0,{month:`short`,day:`numeric`,year:`numeric`,hour:`numeric`,minute:`2-digit`,hour12:!0})}function m(){return(0,f.jsx)(r,{children:(0,f.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,f.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,f.jsx)(i,{className:`h-6 w-6 text-[var(--content-disabled)] dark:text-[var(--content-default)]`})}),(0,f.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:`No bookmarks`}),(0,f.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Hover any message and click the bookmark icon to save it here.`})]})})}function h({bookmark:t,isFirst:n,onOpen:r,onRemove:i}){let a=t.conversationTitle&&t.conversationTitle.trim().length>0?t.conversationTitle:`Untitled conversation`,o=t.messageRole!==`user`,c=p(t.createdAt);return(0,f.jsxs)(`div`,{className:`flex items-start gap-3 py-3 ${n?``:`border-t border-[var(--border-base)]`}`,children:[(0,f.jsx)(`span`,{"aria-hidden":!0,className:`mt-1 h-8 w-1 shrink-0 rounded-full`,style:{backgroundColor:o?`var(--content-default)`:`var(--content-tertiary)`}}),(0,f.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,f.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,f.jsx)(`div`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:a}),c?(0,f.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[var(--content-tertiary)]`,children:c}):null]}),t.messagePreview?(0,f.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-body-small-default text-[var(--content-tertiary)]`,children:t.messagePreview}):null]}),(0,f.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,f.jsx)(e,{variant:`outlined`,onClick:r,children:`Open`}),(0,f.jsx)(`button`,{type:`button`,onClick:i,title:`Remove bookmark`,"aria-label":`Remove bookmark`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-active)] hover:text-[var(--content-default)]`,children:(0,f.jsx)(s,{className:`h-4 w-4`})})]})]})}function g(){let n=t(),{bookmarks:i,isLoading:s,isError:p,refetch:g}=u(),_=l();return s?(0,f.jsx)(`div`,{className:`w-full`,children:(0,f.jsx)(`div`,{className:`flex min-h-[400px] items-center justify-center`,children:(0,f.jsx)(a,{className:`h-6 w-6 animate-spin text-[var(--content-disabled)]`})})}):p?(0,f.jsx)(`div`,{className:`w-full`,children:(0,f.jsx)(r,{children:(0,f.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,f.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--system-error-lighter)]`,children:(0,f.jsx)(o,{className:`h-6 w-6 text-[var(--system-error-default)]`})}),(0,f.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:`Failed to load bookmarks`}),(0,f.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Something went wrong. Please try again.`}),(0,f.jsxs)(e,{variant:`outlined`,onClick:g,className:`mt-4`,children:[(0,f.jsx)(d,{className:`h-4 w-4`}),`Retry`]})]})})}):i.length===0?(0,f.jsx)(`div`,{className:`w-full`,children:(0,f.jsx)(m,{})}):(0,f.jsx)(`div`,{className:`w-full`,children:(0,f.jsx)(r,{noPadding:!0,className:`px-4`,children:i.map((e,t)=>(0,f.jsx)(h,{bookmark:e,isFirst:t===0,onOpen:()=>{n(c.conversationAtMessage(e.conversationId,e.messageId))},onRemove:()=>{_(e.messageId,e.conversationId,!0)}},e.id))})})}export{g as BookmarksPage};
@@ -1 +1 @@
1
- import{t as e}from"./createLucideIcon-Bjb-Kuq7.js";var t=e(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]);export{t};
1
+ import{t as e}from"./createLucideIcon-IRfcSUxS.js";var t=e(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]);export{t};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-B0Io_iMT.js","assets/preload-helper-BewR0kVT.js","assets/dist-RkT480s0.js"])))=>i.map(i=>d[i]);
2
+ import{t as e}from"./capture-error-Dhiismgm.js";import{t}from"./preload-helper-BewR0kVT.js";import{t as n}from"./is-electron-y5bNUVyG.js";import{u as r}from"./native-biometric-Dy5Vb7o0.js";import{t as i}from"./dist-RkT480s0.js";function a(t,n){if(!r())return()=>void 0;let i=null,a=!1;return n().then(e=>{if(a){e.remove();return}i=e}).catch(n=>{e(n,{context:t,level:`warning`})}),()=>{a=!0,i?.remove()}}var o=async e=>{if(n()){window.open(e,`_blank`);return}if(i.isNativePlatform())try{let{Browser:n}=await t(async()=>{let{Browser:e}=await import(`./esm-B0Io_iMT.js`);return{Browser:e}},__vite__mapDeps([0,1,2]));await n.open({url:e,presentationStyle:`popover`})}catch{window.location.href=e}else window.location.href=e},s=e=>a(`capacitor_browser_finished`,async()=>{let{Browser:n}=await t(async()=>{let{Browser:e}=await import(`./esm-B0Io_iMT.js`);return{Browser:e}},__vite__mapDeps([0,1,2]));return n.addListener(`browserFinished`,e)});export{s as n,a as r,o as t};
@@ -1 +1 @@
1
- import{t as e}from"./createLucideIcon-Bjb-Kuq7.js";var t=e(`bug`,[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]);export{t};
1
+ import{t as e}from"./createLucideIcon-IRfcSUxS.js";var t=e(`bug`,[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]);export{t};
@@ -1 +1 @@
1
- import{ct as e,g as t,h as n,p as r}from"./local-mode-BPFvxPXz.js";import{n as i}from"./resolved-assistants-store-CVjq_nhD.js";import{A as a,M as o,n as s}from"./auth-store-Vekcn1rg.js";import{c}from"./remote-gateway-session-CT3EVXMA.js";import{t as l}from"./return-to-ugSGJ0dm.js";import{c as u}from"./routes-GPGveWZ8.js";import{a as d,i as f,n as p,r as m,s as h}from"./prefs-Od3axSSC.js";function g(e){return e.tosAccepted&&e.privacyConsent}function _(e){return g(e)&&e.analyticsConsentCurrent&&e.diagnosticsConsentCurrent}var v=`${u.assistant}/onboarding`,y=new Set([u.onboarding.hosting,u.onboarding.apiKey]),b=new Set([u.welcome,u.selectAssistant]);function x(e){return e.startsWith(`${v}/`)||e===v}function S(e){return e?u.welcome:u.onboarding.privacy}function C(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`//`))try{return new URL(e,`http://placeholder.invalid`).pathname}catch{return e}return e}function w(e,t){return t===u.welcome?e.hasAssistants?u.selectAssistant:u.onboarding.hosting:t===u.selectAssistant?`${t}?fromLogin=1`:t}function T(e,t){switch(t.kind){case`route-guard`:return D(e,t.pathname);case`onboarding-intercept`:return L(e,t.intendedDestination);case`hatch-gate`:return R(e);case`post-auth`:return z(t.authIntent,t.returnTo,t.fallback);case`post-retire`:return B(e)}}var E=[O,k,j,M,N,P,F,I];function D(e,t){let n=t.indexOf(`?`),r=n>=0?t.slice(0,n):t;for(let n of E){let i=n(e,r,t);if(i)return i}return{action:`allow`}}function O(e){return e.sessionSettled?null:{action:`wait`}}function k(e){return e.isGatewayAuth?{action:`allow`}:null}function A(e,t){let n=e.remoteGatewayPublicPathPrefix;return!e.isRemoteGateway||!n?t:t===n?u.assistant:t.startsWith(`${n}/`)?t.slice(n.length):t}function j(e,t,n){if(!e.isRemoteGateway||e.isAuthenticated)return null;let r=A(e,n);return{action:`redirect`,to:`${u.remotePair}?returnTo=${encodeURIComponent(r)}`}}function M(e,t,n){return e.isAuthenticated?null:e.isLocalMode&&(x(t)||b.has(t))?t===u.selectAssistant&&!e.hasAssistants?{action:`redirect`,to:u.onboarding.hosting}:{action:`allow`}:e.isLocalMode&&!e.hasAssistants?{action:`redirect`,to:u.welcome}:e.isLocalMode?{action:`redirect`,to:u.selectAssistant}:{action:`redirect`,to:`${u.account.login}?returnTo=${encodeURIComponent(n)}`}}function N(e,t){return b.has(t)?e.isLocalMode?t===u.selectAssistant&&!e.hasAssistants?{action:`redirect`,to:u.onboarding.hosting}:{action:`allow`}:{action:`redirect`,to:u.assistant}:y.has(t)&&!e.isLocalMode?{action:`redirect`,to:u.assistant}:null}function P(e,t){return t===u.reviewTerms?{action:`allow`}:x(t)?t===u.onboarding.hatching&&!g(e)?{action:`redirect`,to:S(e.isLocalMode)}:{action:`allow`}:null}function F(e,t,n){if(e.hasAssistants)return null;if(e.isLocalMode)return e.platformSession===`unknown`?{action:`wait`}:e.platformSession===`present`?{action:`redirect`,to:u.onboarding.hosting}:{action:`redirect`,to:u.welcome};if(!e.assistantsHydrated||!e.consentHydrated)return{action:`wait`};if(!g(e))return{action:`redirect`,to:u.onboarding.privacy};if(!_(e)){let e=encodeURIComponent(n);return{action:`redirect`,to:`${u.reviewTerms}?returnTo=${e}`}}return{action:`redirect`,to:u.onboarding.hatching}}function I(e,t,n){if(e.isPlatformDisabled||e.platformSession!==`present`||_(e))return null;if(!e.consentHydrated&&!e.isLocalMode)return{action:`wait`};let r=encodeURIComponent(n);return{action:`redirect`,to:`${u.reviewTerms}?returnTo=${r}`}}function L(e,t){if(e.isLocalMode&&e.hasAssistants||g(e))return{action:`allow`};let n=C(t);return!n.startsWith(u.assistant)||n.startsWith(`${u.assistant}/onboarding`)||n===u.reviewTerms?{action:`allow`}:{action:`redirect`,to:S(e.isLocalMode)}}function R(e){return e.sessionSettled?!e.isAuthenticated&&!e.isLocalMode?{action:`redirect`,to:u.account.login}:g(e)?!e.isLocalMode&&!_(e)?{action:`redirect`,to:u.reviewTerms}:{action:`allow`}:{action:`redirect`,to:S(e.isLocalMode)}:{action:`wait`}}function z(e,t,n){return e===`signup`?{action:`redirect`,to:u.onboarding.privacy}:{action:`redirect`,to:l(t,n)}}function B(e){return e.hasAssistants?{action:`redirect`,to:e.isLocalMode?u.selectAssistant:u.assistant}:e.isLocalMode?e.platformSession===`present`?{action:`redirect`,to:u.onboarding.hosting}:{action:`redirect`,to:u.welcome}:{action:`redirect`,to:u.onboarding.privacy}}function V(l){let{sessionStatus:u,platformSession:g}=s.getState(),{assistants:_,assistantsHydrated:v}=i.getState(),y=t();return{isLocalMode:r(),isPlatformDisabled:n(),isRemoteGateway:y,remoteGatewayPublicPathPrefix:y?c():``,isGatewayAuth:e(),hasAssistants:_.length>0,sessionSettled:o(u),isAuthenticated:a(u),platformSession:g,tosAccepted:h(),privacyConsent:d(),analyticsConsentCurrent:p(),diagnosticsConsentCurrent:f(),consentHydrated:m(),assistantsHydrated:v,...l}}export{w as n,T as r,V as t};
1
+ import{ct as e,g as t,h as n,p as r}from"./local-mode-Bskd5bsT.js";import{n as i}from"./resolved-assistants-store-DAzPZ1eV.js";import{M as a,P as o,n as s}from"./auth-store-B8a9KLUt.js";import{c}from"./remote-gateway-session-CBKZhJak.js";import{t as l}from"./return-to-ugSGJ0dm.js";import{c as u}from"./routes-DYcJgn9k.js";import{i as d,n as f,r as p,s as m,t as h}from"./prefs-BLNqdDWZ.js";function g(e){return e.tosAccepted&&e.privacyConsent}function _(e){return g(e)&&e.analyticsConsentCurrent&&e.diagnosticsConsentCurrent}var v=`${u.assistant}/onboarding`,y=new Set([u.onboarding.hosting,u.onboarding.apiKey]),b=new Set([u.welcome,u.selectAssistant]);function x(e){return e.startsWith(`${v}/`)||e===v}function S(e){return e?u.welcome:u.onboarding.privacy}function C(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`//`))try{return new URL(e,`http://placeholder.invalid`).pathname}catch{return e}return e}function w(e,t){return t===u.welcome?e.hasAssistants?u.selectAssistant:u.onboarding.hosting:t===u.selectAssistant?`${t}?fromLogin=1`:t}function T(e,t){switch(t.kind){case`route-guard`:return D(e,t.pathname);case`onboarding-intercept`:return L(e,t.intendedDestination);case`hatch-gate`:return R(e);case`post-auth`:return z(t.authIntent,t.returnTo,t.fallback);case`post-retire`:return B(e)}}var E=[O,k,j,M,N,P,F,I];function D(e,t){let n=t.indexOf(`?`),r=n>=0?t.slice(0,n):t;for(let n of E){let i=n(e,r,t);if(i)return i}return{action:`allow`}}function O(e){return e.sessionSettled?null:{action:`wait`}}function k(e){return e.isGatewayAuth?{action:`allow`}:null}function A(e,t){let n=e.remoteGatewayPublicPathPrefix;return!e.isRemoteGateway||!n?t:t===n?u.assistant:t.startsWith(`${n}/`)?t.slice(n.length):t}function j(e,t,n){if(!e.isRemoteGateway||e.isAuthenticated)return null;let r=A(e,n);return{action:`redirect`,to:`${u.remotePair}?returnTo=${encodeURIComponent(r)}`}}function M(e,t,n){return e.isAuthenticated?null:e.isLocalMode&&(x(t)||b.has(t))?t===u.selectAssistant&&!e.hasAssistants?{action:`redirect`,to:u.onboarding.hosting}:{action:`allow`}:e.isLocalMode&&!e.hasAssistants?{action:`redirect`,to:u.welcome}:e.isLocalMode?{action:`redirect`,to:u.selectAssistant}:{action:`redirect`,to:`${u.account.login}?returnTo=${encodeURIComponent(n)}`}}function N(e,t){return b.has(t)?e.isLocalMode?t===u.selectAssistant&&!e.hasAssistants?{action:`redirect`,to:u.onboarding.hosting}:{action:`allow`}:{action:`redirect`,to:u.assistant}:y.has(t)&&!e.isLocalMode?{action:`redirect`,to:u.assistant}:null}function P(e,t){return t===u.reviewTerms?{action:`allow`}:x(t)?t===u.onboarding.hatching&&!g(e)?{action:`redirect`,to:S(e.isLocalMode)}:{action:`allow`}:null}function F(e,t,n){if(e.hasAssistants)return null;if(e.isLocalMode)return e.platformSession===`unknown`?{action:`wait`}:e.platformSession===`present`?{action:`redirect`,to:u.onboarding.hosting}:{action:`redirect`,to:u.welcome};if(!e.assistantsHydrated||!e.consentHydrated)return{action:`wait`};if(!g(e))return{action:`redirect`,to:u.onboarding.privacy};if(!_(e)){let e=encodeURIComponent(n);return{action:`redirect`,to:`${u.reviewTerms}?returnTo=${e}`}}return{action:`redirect`,to:u.onboarding.hatching}}function I(e,t,n){if(e.isPlatformDisabled||e.platformSession!==`present`||_(e))return null;if(!e.consentHydrated&&!e.isLocalMode)return{action:`wait`};let r=encodeURIComponent(n);return{action:`redirect`,to:`${u.reviewTerms}?returnTo=${r}`}}function L(e,t){if(e.isLocalMode&&e.hasAssistants||g(e))return{action:`allow`};let n=C(t);return!n.startsWith(u.assistant)||n.startsWith(`${u.assistant}/onboarding`)||n===u.reviewTerms?{action:`allow`}:{action:`redirect`,to:S(e.isLocalMode)}}function R(e){return e.sessionSettled?!e.isAuthenticated&&!e.isLocalMode?{action:`redirect`,to:u.account.login}:g(e)?!e.isLocalMode&&!_(e)?{action:`redirect`,to:u.reviewTerms}:{action:`allow`}:{action:`redirect`,to:S(e.isLocalMode)}:{action:`wait`}}function z(e,t,n){return e===`signup`?{action:`redirect`,to:u.onboarding.privacy}:{action:`redirect`,to:l(t,n)}}function B(e){return e.hasAssistants?{action:`redirect`,to:e.isLocalMode?u.selectAssistant:u.assistant}:e.isLocalMode?e.platformSession===`present`?{action:`redirect`,to:u.onboarding.hosting}:{action:`redirect`,to:u.welcome}:{action:`redirect`,to:u.onboarding.privacy}}function V(l){let{sessionStatus:u,platformSession:g}=s.getState(),{assistants:_,assistantsHydrated:v}=i.getState(),y=t();return{isLocalMode:r(),isPlatformDisabled:n(),isRemoteGateway:y,remoteGatewayPublicPathPrefix:y?c():``,isGatewayAuth:e(),hasAssistants:_.length>0,sessionSettled:o(u),isAuthenticated:a(u),platformSession:g,tosAccepted:m(),privacyConsent:d(),analyticsConsentCurrent:h(),diagnosticsConsentCurrent:p(),consentHydrated:f(),assistantsHydrated:v,...l}}export{w as n,T as r,V as t};