@vellumai/web 0.0.1 → 0.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (604) hide show
  1. package/dist/assets/{QueryClientProvider-3h1PDgiK.js → QueryClientProvider-DP1e6db6.js} +1 -1
  2. package/dist/assets/about-page-ChuG04vE.js +1 -0
  3. package/dist/assets/account-page-CrDIY8Z8.js +1 -0
  4. package/dist/assets/{account-shell-Dw8jAeLG.js → account-shell-D89t6_Jb.js} +1 -1
  5. package/dist/assets/add-credits-modal-B6Gzv2vl.js +1 -0
  6. package/dist/assets/{advanced-page-FCPOBhRy.js → advanced-page-DA4ak2EO.js} +1 -1
  7. package/dist/assets/ai-page-Ct5PY8Hr.js +1 -0
  8. package/dist/assets/{angular-html-DhOd7AN5.js → angular-html-e7Q9Y5Gf.js} +1 -1
  9. package/dist/assets/{angular-ts-xGO-_6Bd.js → angular-ts-BP7VFCBR.js} +1 -1
  10. package/dist/assets/api-B_OFJX14.js +39 -0
  11. package/dist/assets/{api-errors-BK1-O3Nx.js → api-errors-BjIRwVX0.js} +1 -1
  12. package/dist/assets/api-key-screen-BOpLfokX.js +1 -0
  13. package/dist/assets/{apl-BVUryqD5.js → apl-DwI9Wj1u.js} +1 -1
  14. package/dist/assets/{app-html-cache-BuUjtDuD.js → app-html-cache-B6cw162I.js} +1 -1
  15. package/dist/assets/archive-page-rrkQVTUx.js +1 -0
  16. package/dist/assets/arrow-up-C7lv4fdd.js +1 -0
  17. package/dist/assets/assistant-feature-flag-store-eFzXnt31.js +1 -0
  18. package/dist/assets/assistant-identity-store-BKqRKOLL.js +1 -0
  19. package/dist/assets/assistant-status-panel-BhVNBjrt.js +1 -0
  20. package/dist/assets/{astro-D96BhhwV.js → astro-BCmlqefZ.js} +1 -1
  21. package/dist/assets/auth-store-Cr7BV6KS.js +1 -0
  22. package/dist/assets/avatar-api-DUkiMcWB.js +1 -0
  23. package/dist/assets/billing-page-DlfvE46V.js +34 -0
  24. package/dist/assets/{blade-CYOVT3-Y.js → blade-C_oa1rmO.js} +1 -1
  25. package/dist/assets/{book-open-BprZriYY.js → book-open-Yb24-Bn6.js} +1 -1
  26. package/dist/assets/{bsl-p34U-2Lx.js → bsl-MxsMKDUZ.js} +1 -1
  27. package/dist/assets/button-ClCfFgUi.js +1 -0
  28. package/dist/assets/{cairo-Cd8z051b.js → cairo-4CIrzX_p.js} +1 -1
  29. package/dist/assets/{calendar-BIR8yc1r.js → calendar-ClcXPhg5.js} +1 -1
  30. package/dist/assets/capture-error-DJfWcKOd.js +1 -0
  31. package/dist/assets/{card-DnfZJiuP.js → card-BPyEFYCf.js} +1 -1
  32. package/dist/assets/check-eRDPqo7D.js +1 -0
  33. package/dist/assets/checkbox-8ce6mjOk.js +1 -0
  34. package/dist/assets/{chevron-up-DPJUr6aL.js → chevron-up-DQhwayvc.js} +1 -1
  35. package/dist/assets/{cobol-CJjZVzvm.js → cobol-ClCfxb2U.js} +1 -1
  36. package/dist/assets/{coffee-CfZkBTrB.js → coffee-waI6gGUD.js} +1 -1
  37. package/dist/assets/{command-palette-BlS50uTB.js → command-palette-DFEQaGPU.js} +1 -1
  38. package/dist/assets/community-page-bfjkRAbY.js +1 -0
  39. package/dist/assets/confirm-dialog-BGK9Zfu-.js +1 -0
  40. package/dist/assets/connect-page-BxfTgDKB.js +1 -0
  41. package/dist/assets/contacts-gateway-BT27BDPK.js +1 -0
  42. package/dist/assets/contacts-page-route-BM53qHul.js +1 -0
  43. package/dist/assets/{cpp-DbB_FtMQ.js → cpp-CCQmmJ0h.js} +1 -1
  44. package/dist/assets/{create-selectors-DoMh4y1G.js → create-selectors-CNBhdpCN.js} +1 -1
  45. package/dist/assets/{createLucideIcon-Btk32rD9.js → createLucideIcon-B1Lebfcn.js} +1 -1
  46. package/dist/assets/{createLucideIcon-BsE6w02i.js → createLucideIcon-BAqBudC8.js} +1 -1
  47. package/dist/assets/{crystal-Hmeas4cw.js → crystal-DB9hO8um.js} +1 -1
  48. package/dist/assets/danger-zone-redirect-page-QYFHTivZ.js +1 -0
  49. package/dist/assets/debug-page-C21JjoV7.js +3 -0
  50. package/dist/assets/deploy-dialogs-DL4SFMh3.js +1 -0
  51. package/dist/assets/{detail-card-CzJ5gLcw.js → detail-card-akwfTEr9.js} +1 -1
  52. package/dist/assets/developer-page-C7FApaMa.js +1 -0
  53. package/dist/assets/{devices-page-CDcmwZ7U.js → devices-page-C_sa7TuZ.js} +1 -1
  54. package/dist/assets/dist-CMQ63vRL.js +45 -0
  55. package/dist/assets/{dist-mYLcZ3ps.js → dist-DBf_097z.js} +3 -3
  56. package/dist/assets/dist-DrxUCrOq.js +1 -0
  57. package/dist/assets/document-viewer-page-B8z3ETHr.js +1 -0
  58. package/dist/assets/{dollar-sign-Cm87Rklw.js → dollar-sign-C0LV31Sq.js} +1 -1
  59. package/dist/assets/{domain-field-CXJQDRmA.js → domain-field-4zEEJoAw.js} +1 -1
  60. package/dist/assets/dropdown-B1HIMQEV.js +1 -0
  61. package/dist/assets/{edge-BgPXu-UE.js → edge-CETRZUcp.js} +1 -1
  62. package/dist/assets/{elixir-DM6-ccDJ.js → elixir-CN6m0Ao0.js} +1 -1
  63. package/dist/assets/{ellipsis-vertical-DxSLIqf8.js → ellipsis-vertical-m9z0V1U7.js} +1 -1
  64. package/dist/assets/{elm-9gnJ98w0.js → elm-BDWy6048.js} +1 -1
  65. package/dist/assets/emails-page-CVjBHCVU.js +1 -0
  66. package/dist/assets/{erb-DtlP8jgO.js → erb-BUWfCQdK.js} +1 -1
  67. package/dist/assets/{erlang-DsE57DRS.js → erlang-DeG0-QwJ.js} +1 -1
  68. package/dist/assets/{esm-BPIIkf0Q.js → esm-BXX1q_EH.js} +2 -2
  69. package/dist/assets/esm-BxOT_Vkd.js +2 -0
  70. package/dist/assets/esm-CUmIxxMD.js +2 -0
  71. package/dist/assets/esm-CkwULMW-.js +2 -0
  72. package/dist/assets/esm-Dn1onJZ6.js +2 -0
  73. package/dist/assets/event-bus-B7MjXE2j.js +1 -0
  74. package/dist/assets/{external-link-BFBjpAS9.js → external-link-dAVFCT-x.js} +1 -1
  75. package/dist/assets/feature-flag-catalog-CQJyyF9F.js +1 -0
  76. package/dist/assets/{file-markdown-CEnRkeWg.js → file-markdown-C_CDJ8On.js} +1 -1
  77. package/dist/assets/{format-date-CQpXfTVd.js → format-date-DVD0o0QA.js} +1 -1
  78. package/dist/assets/{fortran-fixed-form-D5hdDjfh.js → fortran-fixed-form-CK5VRJNd.js} +1 -1
  79. package/dist/assets/{fsharp-Bfi3XTPy.js → fsharp-TVVgzHWp.js} +1 -1
  80. package/dist/assets/{gdresource-BSaMHim7.js → gdresource-DiUcyewI.js} +1 -1
  81. package/dist/assets/general-page-C-XDI8b1.js +1 -0
  82. package/dist/assets/{git-commit-Cz5QKywc.js → git-commit-CfOruFrg.js} +1 -1
  83. package/dist/assets/{git-rebase-BMQ0Bk9S.js → git-rebase-DVfXzZgT.js} +1 -1
  84. package/dist/assets/{glimmer-js-BN-NGpp_.js → glimmer-js-D_KYXH1l.js} +1 -1
  85. package/dist/assets/{glimmer-ts-C9VChylV.js → glimmer-ts-rX-yI_50.js} +1 -1
  86. package/dist/assets/{globe-7UmDuKqs.js → globe-BylK8Ede.js} +1 -1
  87. package/dist/assets/{glsl-CpFEXvu-.js → glsl-Bk5GBs9i.js} +1 -1
  88. package/dist/assets/{graphql-V09t51SF.js → graphql-CYihpPzI.js} +1 -1
  89. package/dist/assets/{hack-oitWBBvW.js → hack-D7vPOOKP.js} +1 -1
  90. package/dist/assets/{haml-CV2rgaHM.js → haml-Cq6p2VV6.js} +1 -1
  91. package/dist/assets/{handlebars-BgAPxny7.js → handlebars-BMWyPVCo.js} +1 -1
  92. package/dist/assets/hatching-screen-CQMiP_YZ.js +1 -0
  93. package/dist/assets/home-page-route-BV48SfuZ.js +1 -0
  94. package/dist/assets/hosting-screen-B7vnlrdx.js +1 -0
  95. package/dist/assets/{html-B_nL9zO9.js → html-0Gesqw-D.js} +1 -1
  96. package/dist/assets/{html-derivative-BWIcZuDp.js → html-derivative-SbSqYEHY.js} +1 -1
  97. package/dist/assets/{http-CrTxb7et.js → http-C0YA5Ah8.js} +1 -1
  98. package/dist/assets/{hurl-B-EymzsD.js → hurl-DUL8X9Rx.js} +1 -1
  99. package/dist/assets/{hxml-CXbAEQJQ.js → hxml-40zZ1t4x.js} +1 -1
  100. package/dist/assets/identity-page-route-DaFpXmRM.js +1 -0
  101. package/dist/assets/index-2iJiOJAP.css +2 -0
  102. package/dist/assets/index-DfyO29JM.js +124 -0
  103. package/dist/assets/input-D3ItuUML.js +1 -0
  104. package/dist/assets/{inspect-page-sZtDl3Y1.js → inspect-page-BRHBywRp.js} +2 -2
  105. package/dist/assets/install-Boxb6bXU.js +1 -0
  106. package/dist/assets/integrations-page-DKaUYB6U.js +1 -0
  107. package/dist/assets/intelligence-layout-Yx83VhoZ.js +1 -0
  108. package/dist/assets/{jinja-Dl-w9ndv.js → jinja-BVqbVU68.js} +1 -1
  109. package/dist/assets/{jison-DqiJxacS.js → jison-xwFSCLKt.js} +1 -1
  110. package/dist/assets/{julia-CRSYmK9Q.js → julia-DdLFwKHG.js} +1 -1
  111. package/dist/assets/{just-DwPU65eq.js → just-C2nSWwTJ.js} +1 -1
  112. package/dist/assets/{latex-kFHU0AiV.js → latex-DQ-PIViI.js} +1 -1
  113. package/dist/assets/{lib-CreNldEg.js → lib-DHNpmqO3.js} +1 -1
  114. package/dist/assets/library-detail-page-DUU9C5Qc.js +1 -0
  115. package/dist/assets/library-page-BUn0-GJS.js +1 -0
  116. package/dist/assets/{link-2-nd9oRqHR.js → link-2-Diy8IM6e.js} +1 -1
  117. package/dist/assets/{liquid-BqJmG_-p.js → liquid-DMN0MxFW.js} +1 -1
  118. package/dist/assets/loader-circle-DnYn_L1c.js +1 -0
  119. package/dist/assets/local-mode-BF1E-bwb.js +1 -0
  120. package/dist/assets/{login-flow-C9O7X98K.js → login-flow-Dc8bcgq7.js} +1 -1
  121. package/dist/assets/login-page-9B3yYAYY.js +1 -0
  122. package/dist/assets/logout-page-BenaprLt.js +1 -0
  123. package/dist/assets/logs-layout-CtOMkt-f.js +1 -0
  124. package/dist/assets/loopback-auth-jEbLJO6M.js +1 -0
  125. package/dist/assets/{lua-Bm8pAWjJ.js → lua-OvVIPbKk.js} +1 -1
  126. package/dist/assets/{marko-CtYsAbA9.js → marko-tY59QFbN.js} +1 -1
  127. package/dist/assets/{mdc-CIWadW2_.js → mdc-BDW020Pz.js} +1 -1
  128. package/dist/assets/memory-router-playground-page-B7rYBJ8e.js +3 -0
  129. package/dist/assets/menu-CSSUEe4d.js +1 -0
  130. package/dist/assets/{misc-C48PHiZA.js → misc-C66f1jHd.js} +1 -1
  131. package/dist/assets/{mobile-sidebar-drawer-BPjlJDFT.js → mobile-sidebar-drawer-DDDsJtIP.js} +1 -1
  132. package/dist/assets/modal-DnazB3IX.js +1 -0
  133. package/dist/assets/native-biometric-COiHDjMB.js +6 -0
  134. package/dist/assets/{native-file-DAT4q2dZ.js → native-file-CiPiCLx5.js} +2 -2
  135. package/dist/assets/{nextflow-CfF50ZWD.js → nextflow-B1xq2O8L.js} +1 -1
  136. package/dist/assets/{nginx-DolsBkZw.js → nginx-DtkpnFEQ.js} +1 -1
  137. package/dist/assets/{nim-C2UmDq2M.js → nim-CzTHLol-.js} +1 -1
  138. package/dist/assets/{notice-whIbTA0N.js → notice-BD9CxrUF.js} +1 -1
  139. package/dist/assets/notifications-page-DYD5Qw5v.js +1 -0
  140. package/dist/assets/{oauth-complete-page-BKhMJwKk.js → oauth-complete-page-DMXoApPv.js} +2 -2
  141. package/dist/assets/{oauth-popup-complete-page-BEJRVVVY.js → oauth-popup-complete-page-BQ1l7eNw.js} +2 -2
  142. package/dist/assets/{octagon-x-JZskQa-B.js → octagon-x-BDjrCKCI.js} +1 -1
  143. package/dist/assets/onboarding-layout-I064mpdZ.js +1 -0
  144. package/dist/assets/{page-shell-CFZbOuiy.js → page-shell-h1ccSMCk.js} +1 -1
  145. package/dist/assets/panel-item-D-eNLUtf.js +1 -0
  146. package/dist/assets/password-reset-page-D4OsnJgN.js +1 -0
  147. package/dist/assets/{pdf-D2iKihRr.js → pdf-CVDqR2tF.js} +1 -1
  148. package/dist/assets/{pencil-obxZd0L0.js → pencil-CwqXcyAU.js} +1 -1
  149. package/dist/assets/{perl-bEEhNNIc.js → perl-B4xHwQjG.js} +1 -1
  150. package/dist/assets/{php-lzz2TUwQ.js → php-DT-qH75v.js} +1 -1
  151. package/dist/assets/platform-loopback-page-Bcw-uCmy.js +1 -0
  152. package/dist/assets/plugins-page-CVwuk_Fh.js +1 -0
  153. package/dist/assets/portal-container-BfngoKcF.js +1 -0
  154. package/dist/assets/pre-chat-flow-DYzXzK6N.js +1 -0
  155. package/dist/assets/prefs-DV0vPCU6.js +1 -0
  156. package/dist/assets/preload-helper-CC9DnTon.js +1 -0
  157. package/dist/assets/privacy-page-DgEucH63.js +1 -0
  158. package/dist/assets/privacy-screen-fvwKbeYH.js +1 -0
  159. package/dist/assets/{progress-bar-CgM2b0gB.js → progress-bar-DAf2e6k7.js} +1 -1
  160. package/dist/assets/provider-callback-page-CmOAHlCe.js +1 -0
  161. package/dist/assets/provider-key-D3C96Ui0.js +1 -0
  162. package/dist/assets/provider-signup-page-Dc2rsF00.js +1 -0
  163. package/dist/assets/{pug-Du3Nit4O.js → pug-9GW60ez3.js} +1 -1
  164. package/dist/assets/{qml-4L72CoUN.js → qml-bVARLFyV.js} +1 -1
  165. package/dist/assets/query-tags-Dvidg_LC.js +1 -0
  166. package/dist/assets/{razor-nRRX0DFG.js → razor-X0suMNF3.js} +1 -1
  167. package/dist/assets/react-query.gen-C_ukJxaR.js +1 -0
  168. package/dist/assets/{react-query.gen-CaeZaVZK.js → react-query.gen-DHIrHqEw.js} +1 -1
  169. package/dist/assets/{resize-errors-DGTY2nAB.js → resize-errors-C3PO9ann.js} +1 -1
  170. package/dist/assets/routes-CkBoiJow.js +1 -0
  171. package/dist/assets/{rst--ZORQ5yS.js → rst-D-lNIQCa.js} +1 -1
  172. package/dist/assets/{ruby-BfMO6qcI.js → ruby-26UZxWDm.js} +1 -1
  173. package/dist/assets/{sas-DZ8XHRjc.js → sas-CBE_UuH6.js} +1 -1
  174. package/dist/assets/{save-Df8bLDyG.js → save-D3FGsinv.js} +1 -1
  175. package/dist/assets/schedules-page-Dt3CLJAa.js +1 -0
  176. package/dist/assets/{scss-hLIrK7lC.js → scss-ClgdEoXG.js} +1 -1
  177. package/dist/assets/{sdk.gen-ONnYjEkg.js → sdk.gen-1S-e52M3.js} +1 -1
  178. package/dist/assets/sdk.gen-COjGLNMd.js +6 -0
  179. package/dist/assets/selection-store-DOnhFieO.js +1 -0
  180. package/dist/assets/settings-layout-C3paQQd5.js +1 -0
  181. package/dist/assets/{shaderlab-D9aDW2b6.js → shaderlab-mLnpMpN3.js} +1 -1
  182. package/dist/assets/share-feedback-modal-BWQiSujT.js +1 -0
  183. package/dist/assets/{shellsession-BUDRJq28.js → shellsession-BKKk1SwW.js} +1 -1
  184. package/dist/assets/sidebar-tree-DfHTF15s.js +1 -0
  185. package/dist/assets/signup-page-B2t4c1d5.js +1 -0
  186. package/dist/assets/skills-page-ttnkr0rG.js +1 -0
  187. package/dist/assets/sounds-page-CHFdpMOV.js +1 -0
  188. package/dist/assets/{soy-dsk6RE9u.js → soy-CXP3FecH.js} +1 -1
  189. package/dist/assets/{sparql-C95gzauI.js → sparql-tQHB50VD.js} +1 -1
  190. package/dist/assets/{src-DzD6V_-s.js → src-DDKMtkUH.js} +39 -38
  191. package/dist/assets/stat-square-2U4ZsWYG.js +1 -0
  192. package/dist/assets/{stata-5DLAJEsU.js → stata-gI3uZdJO.js} +1 -1
  193. package/dist/assets/step-indicator-dots-D3uPz_Wt.js +1 -0
  194. package/dist/assets/{subagent-detail-panel-DIWBSLWn.js → subagent-detail-panel-Dn212XIu.js} +2 -2
  195. package/dist/assets/{surrealql-Bd5MMIOc.js → surrealql-BAt-qB2q.js} +1 -1
  196. package/dist/assets/{svelte-Db0PLX4z.js → svelte-_sN3XHz9.js} +1 -1
  197. package/dist/assets/{system-events-page-DC6mlB3O.js → system-events-page-BzrGm2BJ.js} +1 -1
  198. package/dist/assets/system-events-redirect-page-CSzUi8Rq.js +1 -0
  199. package/dist/assets/tag-DI4G1_a6.js +1 -0
  200. package/dist/assets/{target-uRVZvIcc.js → target-Bu6hUmcU.js} +1 -1
  201. package/dist/assets/{templ-DqszTP4R.js → templ-DarSKCU_.js} +1 -1
  202. package/dist/assets/{tex-BKxy02eW.js → tex-C_1xF61R.js} +1 -1
  203. package/dist/assets/{tiptap-document-editor-DqrxIFNH.js → tiptap-document-editor-8uu7m7VU.js} +2 -2
  204. package/dist/assets/toast-VQEhJ0eG.js +1 -0
  205. package/dist/assets/{toggle-Brqq7_4W.js → toggle-DnsgdQ9b.js} +1 -1
  206. package/dist/assets/{tool-detail-panel-CtJ0Mc2d.js → tool-detail-panel-Bm-I_Sg7.js} +1 -1
  207. package/dist/assets/trace-page-Dy7jGi6u.js +1 -0
  208. package/dist/assets/{ts-tags-CdR5yq4h.js → ts-tags-BW1K_uvA.js} +1 -1
  209. package/dist/assets/{twig-uOUM9nP_.js → twig-D6-NX1lk.js} +1 -1
  210. package/dist/assets/{typography-DEzNhGy_.js → typography-C2ZUvvBk.js} +1 -1
  211. package/dist/assets/upgrade-cancel-page-DzKb2rHo.js +1 -0
  212. package/dist/assets/upgrade-success-page-BWo7L3dH.js +1 -0
  213. package/dist/assets/usage-page-CoskbMKy.js +1 -0
  214. package/dist/assets/use-active-assistant-id-CAZ9yruQ.js +1 -0
  215. package/dist/assets/use-current-platform-assistant-IoT7tVk6.js +1 -0
  216. package/dist/assets/use-debounced-value-6KVCjO4p.js +1 -0
  217. package/dist/assets/{use-is-mobile-Dkb-QHwX.js → use-is-mobile-BJcMpFY1.js} +1 -1
  218. package/dist/assets/use-oauth-complete-deep-link-listener-BdgRkEuE.js +1 -0
  219. package/dist/assets/{use-reduced-motion-C8MjY0gt.js → use-reduced-motion-BgUzX4N9.js} +1 -1
  220. package/dist/assets/{useMutation-DO5gkGJX.js → useMutation-DiUMH3gL.js} +1 -1
  221. package/dist/assets/{useQuery-Cihv2Mys.js → useQuery-CrONYg8_.js} +1 -1
  222. package/dist/assets/utils-SlAPWJfm.js +1 -0
  223. package/dist/assets/voice-page-lILDcrkB.js +1 -0
  224. package/dist/assets/{vue-BlLLuGzo.js → vue-CH8917up.js} +1 -1
  225. package/dist/assets/{vue-html-qXCpw_5J.js → vue-html-DAE_vUrO.js} +1 -1
  226. package/dist/assets/{vue-vine-p-PcMUu-.js → vue-vine-CwkqX4-H.js} +1 -1
  227. package/dist/assets/{wand-sparkles-jBh4Oi5W.js → wand-sparkles-Bm4VWjaY.js} +1 -1
  228. package/dist/assets/{weather-forecast-display-BGHYvMUU.js → weather-forecast-display-DxJH81B2.js} +1 -1
  229. package/dist/assets/{web-am9pHjIz.js → web-BJvfEnmz.js} +1 -1
  230. package/dist/assets/{web-BtTWxP77.js → web-BlDUhn8s.js} +1 -1
  231. package/dist/assets/{web-BUTlZuwF.js → web-BmuiGnlM.js} +1 -1
  232. package/dist/assets/{web-DMfbmsYR.js → web-CNnkyiJU.js} +1 -1
  233. package/dist/assets/{web-oo3gTRUT.js → web-D3bAy1EX.js} +1 -1
  234. package/dist/assets/{web-DV3iiXuP.js → web-DYZNxiAf.js} +1 -1
  235. package/dist/assets/{web-DwEQfgUn.js → web-DvrlWSfM.js} +1 -1
  236. package/dist/assets/welcome-screen-fMQ3U9V8.js +1 -0
  237. package/dist/assets/{with-selector-CLdxmz2Q.js → with-selector-D3piXwNZ.js} +1 -1
  238. package/dist/assets/workspace-page-C0PJjA84.js +1 -0
  239. package/dist/assets/x-BgvySeHo.js +1 -0
  240. package/dist/assets/x-JZSbA73X.js +1 -0
  241. package/dist/assets/{xml-ZpZBIidV.js → xml-ClVI3Y-V.js} +1 -1
  242. package/dist/assets/{xsl-DLmLvndi.js → xsl-fuT90Jp2.js} +1 -1
  243. package/dist/index.html +75 -79
  244. package/package.json +1 -1
  245. package/dist/assets/account-page-mLTPbjvL.js +0 -1
  246. package/dist/assets/add-credits-modal-Bl0Bh2Go.js +0 -1
  247. package/dist/assets/ai-page-CQnqBX-M.js +0 -1
  248. package/dist/assets/api-Du21iE99.js +0 -1
  249. package/dist/assets/archive-CVmkE0UZ.js +0 -1
  250. package/dist/assets/archive-page-gPcbutQd.js +0 -1
  251. package/dist/assets/arrow-up-tR4McxO9.js +0 -1
  252. package/dist/assets/assistant-context-BFnqXVaa.js +0 -1
  253. package/dist/assets/assistant-identity-store-ouefMZDR.js +0 -1
  254. package/dist/assets/assistant-status-panel-83EaWImU.js +0 -1
  255. package/dist/assets/auth-store-Dy6ebqwf.js +0 -1
  256. package/dist/assets/avatar-api-IlDWh3Gv.js +0 -1
  257. package/dist/assets/bell-D6safcBY.js +0 -1
  258. package/dist/assets/billing-page-DiItxvfm.js +0 -34
  259. package/dist/assets/bug-CqWa4aqP.js +0 -1
  260. package/dist/assets/button-aOWst_o4.js +0 -1
  261. package/dist/assets/check-R2i_nIpE.js +0 -1
  262. package/dist/assets/checkbox-DKXy3MWj.js +0 -1
  263. package/dist/assets/chunk-5KNZJZUH-DdB2N3P3.js +0 -4
  264. package/dist/assets/client-BRb8najC.js +0 -1
  265. package/dist/assets/client-ChXJae8j.js +0 -1
  266. package/dist/assets/community-page-CqzBRDpi.js +0 -1
  267. package/dist/assets/connect-page-DxmIoKzq.js +0 -1
  268. package/dist/assets/contacts-page-route-D6Krd6C5.js +0 -1
  269. package/dist/assets/conversation-id-wire-field-1lxFUhFO.js +0 -39
  270. package/dist/assets/conversations-DsLnxwFV.js +0 -1
  271. package/dist/assets/danger-zone-redirect-page-Do365LOh.js +0 -1
  272. package/dist/assets/debug-page-CsRe4giP.js +0 -3
  273. package/dist/assets/deploy-dialogs-M04VhTt7.js +0 -1
  274. package/dist/assets/developer-page-CP5daBen.js +0 -1
  275. package/dist/assets/dist-B2HM0OLN2.js +0 -1
  276. package/dist/assets/dist-Bsw_3G-z.js +0 -1
  277. package/dist/assets/dist-CuKiMkvX.js +0 -1
  278. package/dist/assets/dist-D52VCGJ3.js +0 -45
  279. package/dist/assets/document-viewer-page-DLI8SRag.js +0 -1
  280. package/dist/assets/dropdown-GgPqNVMy.js +0 -1
  281. package/dist/assets/emails-page-1R_kLl2Z.js +0 -1
  282. package/dist/assets/error-report-C0plV8M2.js +0 -1
  283. package/dist/assets/esm-Cvsy6Km4.js +0 -2
  284. package/dist/assets/esm-DUi7Rn40.js +0 -2
  285. package/dist/assets/esm-FGLqm2MN.js +0 -2
  286. package/dist/assets/esm-XjY7or7q.js +0 -2
  287. package/dist/assets/event-bus-store-Bi6GfBog.js +0 -1
  288. package/dist/assets/feature-flag-catalog-CSWHhMDD.js +0 -1
  289. package/dist/assets/general-page-BuBX2YwQ.js +0 -1
  290. package/dist/assets/hatching-screen-BYbFCv5M.js +0 -1
  291. package/dist/assets/home-page-route-CW4m4-Ja.js +0 -1
  292. package/dist/assets/hosting-screen-Cl6VkyWS.js +0 -1
  293. package/dist/assets/identity-page-route-BBY720B5.js +0 -1
  294. package/dist/assets/index-C8e7KvxW.css +0 -2
  295. package/dist/assets/index-aLxsGtfC.js +0 -119
  296. package/dist/assets/input-Wbm6eptw.js +0 -1
  297. package/dist/assets/integrations-page-B8SCBk4Y.js +0 -1
  298. package/dist/assets/intelligence-layout-3b4qm2Kl.js +0 -1
  299. package/dist/assets/library-detail-page-V05KsJng.js +0 -1
  300. package/dist/assets/library-page-CP4sGQ5J.js +0 -1
  301. package/dist/assets/loader-circle-DaEOga2S.js +0 -1
  302. package/dist/assets/local-mode-BO8mMNsq.js +0 -1
  303. package/dist/assets/login-page-BPJpblPt.js +0 -1
  304. package/dist/assets/logout-page-BOesBxfe.js +0 -1
  305. package/dist/assets/logs-layout-B43V0N93.js +0 -1
  306. package/dist/assets/memory-router-playground-page-pa7bYqYJ.js +0 -3
  307. package/dist/assets/middleware-B7I04D_Q.js +0 -1
  308. package/dist/assets/modal-1PrCjlTg.js +0 -1
  309. package/dist/assets/native-biometric-BPPNP_Sl.js +0 -6
  310. package/dist/assets/notifications-page-BVWqstpZ.js +0 -1
  311. package/dist/assets/onboarding-layout-9Hg63IFb.js +0 -1
  312. package/dist/assets/panel-item-ChHVXS-W.js +0 -1
  313. package/dist/assets/password-reset-page-C-dZStkw.js +0 -1
  314. package/dist/assets/plugins-page-CH_Vocd5.js +0 -1
  315. package/dist/assets/portal-container-CYxfRy4f.js +0 -1
  316. package/dist/assets/pre-chat-flow-DLHzM5QY.js +0 -1
  317. package/dist/assets/prechat-D2oqOkVm.js +0 -1
  318. package/dist/assets/preload-helper-S68_7Byc.js +0 -1
  319. package/dist/assets/privacy-page-C-Vj_p8l.js +0 -1
  320. package/dist/assets/privacy-screen-DWFpv0Fo.js +0 -1
  321. package/dist/assets/provider-callback-page-VFddaky4.js +0 -1
  322. package/dist/assets/provider-signup-page-CgDYbapA.js +0 -1
  323. package/dist/assets/query-tags-D8ub83Qe.js +0 -1
  324. package/dist/assets/react-dom-S1h5pQqq.js +0 -1
  325. package/dist/assets/react-query.gen-DA3VkUYA.js +0 -1
  326. package/dist/assets/routes-CHnF8N9D.js +0 -1
  327. package/dist/assets/schedules-page-CYguL66k.js +0 -1
  328. package/dist/assets/sdk.gen-LsY3RZ9d.js +0 -6
  329. package/dist/assets/settings-layout-CTEOskoj.js +0 -1
  330. package/dist/assets/share-feedback-modal-B2uHY8-X.js +0 -1
  331. package/dist/assets/sidebar-tree-BEaTbIwA.js +0 -1
  332. package/dist/assets/signup-page-DEuLzFY7.js +0 -1
  333. package/dist/assets/skill-detail-DgRyktTW.js +0 -1
  334. package/dist/assets/skills-page-BYdkBLR0.js +0 -1
  335. package/dist/assets/sounds-page-Duno_f9p.js +0 -1
  336. package/dist/assets/stat-square-Di_bhDMh.js +0 -1
  337. package/dist/assets/step-indicator-dots-C5bemV-h.js +0 -1
  338. package/dist/assets/system-events-redirect-page-S94e1yM8.js +0 -1
  339. package/dist/assets/tag-D_G_KF4_.js +0 -1
  340. package/dist/assets/toast-B74YN17b.js +0 -1
  341. package/dist/assets/trace-page-Cw-wj7A7.js +0 -1
  342. package/dist/assets/upgrade-cancel-page-DvdPrIVz.js +0 -1
  343. package/dist/assets/upgrade-success-page-Bawb68MQ.js +0 -1
  344. package/dist/assets/usage-page-BnW56hOn.js +0 -1
  345. package/dist/assets/use-current-platform-assistant-B8PKBExd.js +0 -1
  346. package/dist/assets/use-oauth-complete-deep-link-listener-CdJy7YJb.js +0 -1
  347. package/dist/assets/voice-page-B4bYnhST.js +0 -1
  348. package/dist/assets/welcome-screen-Csb7OEuR.js +0 -1
  349. package/dist/assets/workspace-page-Wx3-2mgb.js +0 -1
  350. package/dist/assets/x-CUFf_mCR.js +0 -1
  351. package/dist/assets/x-DMasRVxp.js +0 -1
  352. /package/dist/assets/{abap-S720j6HC.js → abap-Cjj2olMr.js} +0 -0
  353. /package/dist/assets/{actionscript-3-BJvigUfR.js → actionscript-3-DCkW7kWC.js} +0 -0
  354. /package/dist/assets/{ada-DQ2OWYpf.js → ada-AEWvZXuX.js} +0 -0
  355. /package/dist/assets/{andromeeda-_EhmqsVp.js → andromeeda-D7cSpME6.js} +0 -0
  356. /package/dist/assets/{apache-BsyG71ag.js → apache-DjvX0RSe.js} +0 -0
  357. /package/dist/assets/{apex-Ccw0eeCe.js → apex-70xIZ0pH.js} +0 -0
  358. /package/dist/assets/{applescript-ha7qmUXh.js → applescript-C3qKqxmA.js} +0 -0
  359. /package/dist/assets/{ara-BgWiE2ox.js → ara-iGt2zixk.js} +0 -0
  360. /package/dist/assets/{asciidoc-Dn70l7h4.js → asciidoc-Bs2t-06W.js} +0 -0
  361. /package/dist/assets/{asm-DR7r0jUw.js → asm-B-T0eqhE.js} +0 -0
  362. /package/dist/assets/{aurora-x-B9nEusFo.js → aurora-x-D3h_9M3E.js} +0 -0
  363. /package/dist/assets/{avatar-bundled-components-zv0dj2l3.js → avatar-bundled-components-CGiGgg87.js} +0 -0
  364. /package/dist/assets/{avatar-svg-compositor-CwF7LSJ9.js → avatar-svg-compositor-DTokNF3h.js} +0 -0
  365. /package/dist/assets/{awk-BJdTQ5Hx.js → awk-CZwfwpPi.js} +0 -0
  366. /package/dist/assets/{ayu-dark-DqQbu2-w.js → ayu-dark-DulkglEA.js} +0 -0
  367. /package/dist/assets/{ayu-light--8qST3j8.js → ayu-light-DyNQiRpn.js} +0 -0
  368. /package/dist/assets/{ayu-mirage-DrJzVJ_F.js → ayu-mirage-CcEt4xkI.js} +0 -0
  369. /package/dist/assets/{ballerina-BYRinlHo.js → ballerina-OhQPjyHS.js} +0 -0
  370. /package/dist/assets/{bat-CUMUh9XV.js → bat-DqKcJTUn.js} +0 -0
  371. /package/dist/assets/{beancount-CsLlzN8M.js → beancount-BdXlMi8T.js} +0 -0
  372. /package/dist/assets/{berry-CdPki7q8.js → berry-DvgY6BkY.js} +0 -0
  373. /package/dist/assets/{bibtex-B8xm9XLj.js → bibtex-BSRJq0yM.js} +0 -0
  374. /package/dist/assets/{bicep-CnLpnmf8.js → bicep-DpAdumKt.js} +0 -0
  375. /package/dist/assets/{bird2-Cqt8sSVG.js → bird2-rlbtp8di.js} +0 -0
  376. /package/dist/assets/{c-VnVOqj0C.js → c-BbxWH2Eo.js} +0 -0
  377. /package/dist/assets/{c3-DpiHWuuX.js → c3-DqIXz4Ia.js} +0 -0
  378. /package/dist/assets/{cadence-DgcVki5R.js → cadence-DAJtUpOE.js} +0 -0
  379. /package/dist/assets/{catppuccin-frappe-C_yfKP-L.js → catppuccin-frappe-DUPoeZfb.js} +0 -0
  380. /package/dist/assets/{catppuccin-latte-CtoBMVdv.js → catppuccin-latte-CK3U68Ql.js} +0 -0
  381. /package/dist/assets/{catppuccin-macchiato-xFP5yO7O.js → catppuccin-macchiato-BzteLnIX.js} +0 -0
  382. /package/dist/assets/{catppuccin-mocha-60sqJvv0.js → catppuccin-mocha-ozLd0aBR.js} +0 -0
  383. /package/dist/assets/{clarity-Rka6Ibys.js → clarity-6KqEoBfz.js} +0 -0
  384. /package/dist/assets/{client.gen-ywbejrz1.js → client.gen-D2FNzKQM.js} +0 -0
  385. /package/dist/assets/{clojure-CQ5DpGM1.js → clojure-B_uBL5C7.js} +0 -0
  386. /package/dist/assets/{clsx-D1MxZxYX.js → clsx-grcm2PBd.js} +0 -0
  387. /package/dist/assets/{cmake-DsAm9QpO.js → cmake-B3nxBNmj.js} +0 -0
  388. /package/dist/assets/{cn-CjywcAuq.js → cn-T5lqoG0E.js} +0 -0
  389. /package/dist/assets/{codeowners-BDBDyRC_.js → codeowners-DkS-51at.js} +0 -0
  390. /package/dist/assets/{codeql-CZfFhTX0.js → codeql-rpr1z_mR.js} +0 -0
  391. /package/dist/assets/{common-lisp-Dz6SVlfw.js → common-lisp-BfNbv_W6.js} +0 -0
  392. /package/dist/assets/{coq-D2tyWqdS.js → coq-EAW-1nw0.js} +0 -0
  393. /package/dist/assets/{csharp-B6wLYKms.js → csharp-BE3Gn5bq.js} +0 -0
  394. /package/dist/assets/{css-Cs4MPfhN.js → css-BdYQVA4T.js} +0 -0
  395. /package/dist/assets/{csv-D3H5ikhE.js → csv-B5VtaPtH.js} +0 -0
  396. /package/dist/assets/{cue-Lq7mpKOq.js → cue-jm6lYNrx.js} +0 -0
  397. /package/dist/assets/{cypher-CODl5eKV.js → cypher-DXkvK-pn.js} +0 -0
  398. /package/dist/assets/{d-DZC76yx1.js → d-CgG1_yzd.js} +0 -0
  399. /package/dist/assets/{dark-plus-CBASO-cg.js → dark-plus-CALzcIVB.js} +0 -0
  400. /package/dist/assets/{dart-CmrdZv7c.js → dart-BEVoLlWg.js} +0 -0
  401. /package/dist/assets/{dax-R1bAmQ_D.js → dax-H0BW3Q_P.js} +0 -0
  402. /package/dist/assets/{definitions-DNF_njzj.js → definitions-BW9hy2QG.js} +0 -0
  403. /package/dist/assets/{desktop-5nM7o7HH.js → desktop-BtYq1l_0.js} +0 -0
  404. /package/dist/assets/{diff-CcKimul9.js → diff-CnBYdfTg.js} +0 -0
  405. /package/dist/assets/{dist-Cz1Xi5ZX.js → dist-KWOsn0v8.js} +0 -0
  406. /package/dist/assets/{docker-TG47LLyN.js → docker-COBitpld.js} +0 -0
  407. /package/dist/assets/{dotenv-CiUEiZKH.js → dotenv-CG0x1m7c.js} +0 -0
  408. /package/dist/assets/{dracula-CT0oGdNT.js → dracula-CLCi47X-.js} +0 -0
  409. /package/dist/assets/{dracula-soft-BXFmyviC.js → dracula-soft-BMv5cCAV.js} +0 -0
  410. /package/dist/assets/{dream-maker-CAM2D_UX.js → dream-maker-1Bd4OSww.js} +0 -0
  411. /package/dist/assets/{emacs-lisp-CzK3ExcO.js → emacs-lisp-B-2zKLn-.js} +0 -0
  412. /package/dist/assets/{everforest-dark-CQlB3mCO.js → everforest-dark-BGVynCbV.js} +0 -0
  413. /package/dist/assets/{everforest-light-BA4ay6iM.js → everforest-light--rn3R7Cm.js} +0 -0
  414. /package/dist/assets/{exports-rSCybWxk.js → exports-CJ0Uoq7P.js} +0 -0
  415. /package/dist/assets/{fennel-eG2_iaTI.js → fennel-SWg9Us_u.js} +0 -0
  416. /package/dist/assets/{fish-zI3emtm-.js → fish-B04oqgKk.js} +0 -0
  417. /package/dist/assets/{fluent-BZo6aiNu.js → fluent-BefzAGMN.js} +0 -0
  418. /package/dist/assets/{format-hyvuWewV.js → format-DQmCypqv.js} +0 -0
  419. /package/dist/assets/{fortran-free-form-57r0sG8y.js → fortran-free-form-alw7jMxb.js} +0 -0
  420. /package/dist/assets/{gdscript-1YmxJL3Q.js → gdscript-BAyhvjCx.js} +0 -0
  421. /package/dist/assets/{gdshader-BfYwvVWN.js → gdshader-Crl09X-B.js} +0 -0
  422. /package/dist/assets/{genie-CWE9MH2Z.js → genie-BSIGRHu7.js} +0 -0
  423. /package/dist/assets/{gherkin-DylFqTNM.js → gherkin-DJhSnSWH.js} +0 -0
  424. /package/dist/assets/{github-dark-default-BK9X8oxX.js → github-dark-default-FVtXjcm8.js} +0 -0
  425. /package/dist/assets/{github-dark-dimmed-CurnRG13.js → github-dark-dimmed-CzrUPgSb.js} +0 -0
  426. /package/dist/assets/{github-dark-high-contrast-DxF4Jnoi.js → github-dark-high-contrast-1s9rF5EB.js} +0 -0
  427. /package/dist/assets/{github-dark-xIytAWi0.js → github-dark-r8C6qwug.js} +0 -0
  428. /package/dist/assets/{github-light-DAfSDMwO.js → github-light-BvIWCkl7.js} +0 -0
  429. /package/dist/assets/{github-light-default-CCtzMk6P.js → github-light-default-CVdhzrxV.js} +0 -0
  430. /package/dist/assets/{github-light-high-contrast-KEzODQXH.js → github-light-high-contrast-CBAf6hjF.js} +0 -0
  431. /package/dist/assets/{gleam-DdIPhrNi.js → gleam-DvL1q7aa.js} +0 -0
  432. /package/dist/assets/{gn-pxGNTpNA.js → gn-BG5NvwAf.js} +0 -0
  433. /package/dist/assets/{gnuplot-CGxnsTQL.js → gnuplot-BARnM-zG.js} +0 -0
  434. /package/dist/assets/{go-DkMdryeU.js → go-DXvjjq4q.js} +0 -0
  435. /package/dist/assets/{groovy-Dd5mdG4N.js → groovy-CRylSKhr.js} +0 -0
  436. /package/dist/assets/{gruvbox-dark-hard-B20DGFjy.js → gruvbox-dark-hard-BVPjnqm7.js} +0 -0
  437. /package/dist/assets/{gruvbox-dark-medium-DQ-yywkT.js → gruvbox-dark-medium-U_PDgq0a.js} +0 -0
  438. /package/dist/assets/{gruvbox-dark-soft-CKAoLyhO.js → gruvbox-dark-soft-CkzNtpbr.js} +0 -0
  439. /package/dist/assets/{gruvbox-light-hard-DTReY2fY.js → gruvbox-light-hard-DfMmR2G8.js} +0 -0
  440. /package/dist/assets/{gruvbox-light-medium-3mzIc6xO.js → gruvbox-light-medium-BGCak-dd.js} +0 -0
  441. /package/dist/assets/{gruvbox-light-soft-D41InbYG.js → gruvbox-light-soft-DnpM3fkN.js} +0 -0
  442. /package/dist/assets/{haskell-I8C-JODX.js → haskell-DXgGIDD_.js} +0 -0
  443. /package/dist/assets/{haxe-CvAJ9gVe.js → haxe-B7qlTpRz.js} +0 -0
  444. /package/dist/assets/{hcl-COD-gUFt.js → hcl-ADWfVe_Q.js} +0 -0
  445. /package/dist/assets/{hjson-BB-7M6Aw.js → hjson-BaM9gLbq.js} +0 -0
  446. /package/dist/assets/{hlsl-evA1LyhB.js → hlsl-iqaRA4MG.js} +0 -0
  447. /package/dist/assets/{horizon-DiEWIIog.js → horizon-BPpTnhB9.js} +0 -0
  448. /package/dist/assets/{horizon-bright-ClSn0MBy.js → horizon-bright-yBLg3QbE.js} +0 -0
  449. /package/dist/assets/{houston-CL8GXgL9.js → houston-eFOp0ySL.js} +0 -0
  450. /package/dist/assets/{hy-CLelu6yL.js → hy-BALeMn3i.js} +0 -0
  451. /package/dist/assets/{imba-DQ72tITW.js → imba-CdGUm_GD.js} +0 -0
  452. /package/dist/assets/{ini-BXuaV21y.js → ini-DG7imsqe.js} +0 -0
  453. /package/dist/assets/{java-BTrCroH7.js → java-j5sjtKwV.js} +0 -0
  454. /package/dist/assets/{javascript-CvaqMKLK.js → javascript-CDM3Byzy.js} +0 -0
  455. /package/dist/assets/{json-BPes1XR5.js → json-BM6IlJL7.js} +0 -0
  456. /package/dist/assets/{json5-Bra3_FRS.js → json5--Abk7MUy.js} +0 -0
  457. /package/dist/assets/{jsonc-BfapMXPh.js → jsonc-C8jb-Z6x.js} +0 -0
  458. /package/dist/assets/{jsonl-BqVSdGk9.js → jsonl-CaJNxfkm.js} +0 -0
  459. /package/dist/assets/{jsonnet-mH4WdtrV.js → jsonnet-CPrKMSCU.js} +0 -0
  460. /package/dist/assets/{jssm-BxRMgAQF.js → jssm-DEu-9_uo.js} +0 -0
  461. /package/dist/assets/{jsx-Geb0rb06.js → jsx-CU_TrSpk.js} +0 -0
  462. /package/dist/assets/{jsx-runtime-2-RJdKf7.js → jsx-runtime-D1qe-iBh.js} +0 -0
  463. /package/dist/assets/{kanagawa-dragon-Tgm3mfbN.js → kanagawa-dragon-DnbcAduF.js} +0 -0
  464. /package/dist/assets/{kanagawa-lotus-dJMGjVhA.js → kanagawa-lotus-yxsY3ew8.js} +0 -0
  465. /package/dist/assets/{kanagawa-wave-Ci4QO7t9.js → kanagawa-wave-C2RyvZaM.js} +0 -0
  466. /package/dist/assets/{kdl-MiMB75si.js → kdl-CvssmvcU.js} +0 -0
  467. /package/dist/assets/{kotlin-gUlkTc0q.js → kotlin-jufO49mU.js} +0 -0
  468. /package/dist/assets/{kusto-CN_8kOel.js → kusto-BAFnylR7.js} +0 -0
  469. /package/dist/assets/{laserwave-BOEefu-D.js → laserwave-BgxFC4Ge.js} +0 -0
  470. /package/dist/assets/{lean-BO7mZZoh.js → lean-Bgt24V1D.js} +0 -0
  471. /package/dist/assets/{less-BBnf20HC.js → less-Bk_UaqsM.js} +0 -0
  472. /package/dist/assets/{lib-DXeTRAgG.js → lib-Bqwb-EmC.js} +0 -0
  473. /package/dist/assets/{light-plus-CL09gsxH.js → light-plus-nMxFfInN.js} +0 -0
  474. /package/dist/assets/{llm-dimension-B9qfQX3Y.js → llm-dimension-DCCiYYGK.js} +0 -0
  475. /package/dist/assets/{llvm-CeY51NZh.js → llvm-3_PASDOO.js} +0 -0
  476. /package/dist/assets/{local-settings-CS-DDnd1.js → local-settings-lVNyIOJ_.js} +0 -0
  477. /package/dist/assets/{log-BdCwBbX4.js → log-CKm0CxB1.js} +0 -0
  478. /package/dist/assets/{logo-BoxZga1S.js → logo-DFP1_5U6.js} +0 -0
  479. /package/dist/assets/{luau-BDLcP78o.js → luau-BcZnoyh3.js} +0 -0
  480. /package/dist/assets/{make-BACowfgt.js → make-CpNSwgwT.js} +0 -0
  481. /package/dist/assets/{markdown-Dhb8xNDt.js → markdown-DhU3Djpv.js} +0 -0
  482. /package/dist/assets/{material-theme-Ez0bd6Np.js → material-theme-DD5L3OqF.js} +0 -0
  483. /package/dist/assets/{material-theme-darker-BrTZKIk1.js → material-theme-darker-CG2_tD3R.js} +0 -0
  484. /package/dist/assets/{material-theme-lighter-GBL_nuBb.js → material-theme-lighter-CzNkUc9Y.js} +0 -0
  485. /package/dist/assets/{material-theme-ocean-W4K6pv_o.js → material-theme-ocean-BtLiAaF_.js} +0 -0
  486. /package/dist/assets/{material-theme-palenight-CE5pyPkh.js → material-theme-palenight-Brvjz035.js} +0 -0
  487. /package/dist/assets/{matlab-oLNWLDxt.js → matlab-CCY0KtMD.js} +0 -0
  488. /package/dist/assets/{mdx-CCShXdHK.js → mdx-CH6YY0aS.js} +0 -0
  489. /package/dist/assets/{mermaid-iMeSjHhd.js → mermaid-Bqh3gFI0.js} +0 -0
  490. /package/dist/assets/{min-dark-2BIYkZDD.js → min-dark-BUwfTzI6.js} +0 -0
  491. /package/dist/assets/{min-light-D7jRpC7L.js → min-light-oLanXCOk.js} +0 -0
  492. /package/dist/assets/{mipsasm-D32ZHktK.js → mipsasm-CTh3hPWK.js} +0 -0
  493. /package/dist/assets/{mojo-DTv7azE-.js → mojo-DXdszZKa.js} +0 -0
  494. /package/dist/assets/{monokai-C69QrEpq.js → monokai-TNE_tRxc.js} +0 -0
  495. /package/dist/assets/{moonbit-Drvpmm67.js → moonbit-jrk-Gx1X.js} +0 -0
  496. /package/dist/assets/{move-BoJQbLBf.js → move-DItn61bH.js} +0 -0
  497. /package/dist/assets/{narrat-CGvHu8pV.js → narrat-3kB4dkh0.js} +0 -0
  498. /package/dist/assets/{native-deep-link-ic-1ub-k.js → native-deep-link-L1RSUDsr.js} +0 -0
  499. /package/dist/assets/{nextflow-groovy-TrjQfV-x.js → nextflow-groovy-CSKtwETr.js} +0 -0
  500. /package/dist/assets/{night-owl-Cm3tKSTe.js → night-owl-Dm91nSIq.js} +0 -0
  501. /package/dist/assets/{night-owl-light-DL1zFuhS.js → night-owl-light-riwrcPRg.js} +0 -0
  502. /package/dist/assets/{nix-gE49qUYl.js → nix-sLgl9zGF.js} +0 -0
  503. /package/dist/assets/{nord-hcMUEYjI.js → nord-TWkJPI6M.js} +0 -0
  504. /package/dist/assets/{nushell-YGZpsKrm.js → nushell-CDZi4-Gf.js} +0 -0
  505. /package/dist/assets/{oauth-popup-BD5GDUMi.js → oauth-popup-CotK0_Xq.js} +0 -0
  506. /package/dist/assets/{objective-c-C8_U-Oq6.js → objective-c-DW9PboNp.js} +0 -0
  507. /package/dist/assets/{objective-cpp-CTnjRelq.js → objective-cpp-2XCCX6q1.js} +0 -0
  508. /package/dist/assets/{ocaml-CIH-y4RO.js → ocaml-CxPdnjrh.js} +0 -0
  509. /package/dist/assets/{odin-xNGfOpBm.js → odin-BJjlKpkM.js} +0 -0
  510. /package/dist/assets/{one-dark-pro-vcbuKlOy.js → one-dark-pro-K1KOmBZ7.js} +0 -0
  511. /package/dist/assets/{one-light-BVcy1mYE.js → one-light-DQB-vUyZ.js} +0 -0
  512. /package/dist/assets/{openscad-ryRBrPrD.js → openscad-DCoLwn4j.js} +0 -0
  513. /package/dist/assets/{pascal-Dtt9frDg.js → pascal-z2ktbbWp.js} +0 -0
  514. /package/dist/assets/{pkl-BPOm0CDI.js → pkl-Dyq4-v6z.js} +0 -0
  515. /package/dist/assets/{plastic-BvPiAeG8.js → plastic-C4Rq5PnD.js} +0 -0
  516. /package/dist/assets/{plsql-C0n-sewY.js → plsql-BCIjO63y.js} +0 -0
  517. /package/dist/assets/{po-DNpQeTYU.js → po-_kXpd_0n.js} +0 -0
  518. /package/dist/assets/{poimandres-CkMSnt1R.js → poimandres-C9XggjB3.js} +0 -0
  519. /package/dist/assets/{polar-DhQvttpS.js → polar-DV_1L04z.js} +0 -0
  520. /package/dist/assets/{postcss-CDzao07y.js → postcss-BuqS91mQ.js} +0 -0
  521. /package/dist/assets/{powerquery-0yv17wtC.js → powerquery-DK13B2Dc.js} +0 -0
  522. /package/dist/assets/{powershell-CoAU4s9Q.js → powershell-tkuhhtuP.js} +0 -0
  523. /package/dist/assets/{prisma-BT02a--B.js → prisma-WNXfBtpr.js} +0 -0
  524. /package/dist/assets/{prolog-H1D05Gz_.js → prolog-BzEdNKfO.js} +0 -0
  525. /package/dist/assets/{proto-CxS8PWa-.js → proto-B5meVsrA.js} +0 -0
  526. /package/dist/assets/{public-asset-BYzGMAVy.js → public-asset-wtS9_-QU.js} +0 -0
  527. /package/dist/assets/{puppet-B3d9-q2A.js → puppet-C7h_p4r2.js} +0 -0
  528. /package/dist/assets/{purescript-D_BNdk7z.js → purescript-qH1KxAs6.js} +0 -0
  529. /package/dist/assets/{python-Bex1-Oq0.js → python-DeTIYd5V.js} +0 -0
  530. /package/dist/assets/{qmldir-DeiHaMqx.js → qmldir-4Rm5AvD3.js} +0 -0
  531. /package/dist/assets/{qss-DLk0oe6x.js → qss-YRbeNtr0.js} +0 -0
  532. /package/dist/assets/{queryOptions-C9SyzZF9.js → queryOptions-BlcwdoQQ.js} +0 -0
  533. /package/dist/assets/{r-DrmzhlcM.js → r-CMso0frX.js} +0 -0
  534. /package/dist/assets/{racket-4J6CwdmV.js → racket-gKn4SFLQ.js} +0 -0
  535. /package/dist/assets/{raku-DM8GLjLA.js → raku-DWTmAj3A.js} +0 -0
  536. /package/dist/assets/{react-BD5vCCEH.js → react-BlnqVGWw.js} +0 -0
  537. /package/dist/assets/{red-C7bJmhtt.js → red-BFuHRZFS.js} +0 -0
  538. /package/dist/assets/{reg-DtQSbcdw.js → reg-DYoOF5tH.js} +0 -0
  539. /package/dist/assets/{regexp-D1yQk9KY.js → regexp-B6wC3Alg.js} +0 -0
  540. /package/dist/assets/{rel-B5cTLqnC.js → rel-Z_tTruCU.js} +0 -0
  541. /package/dist/assets/{riscv-Bs7uVNV2.js → riscv-DfTfKuvU.js} +0 -0
  542. /package/dist/assets/{ron-DnVQvg3N.js → ron-CsUtW8gQ.js} +0 -0
  543. /package/dist/assets/{rose-pine-ClM-MJKX.js → rose-pine-Dng_vCo6.js} +0 -0
  544. /package/dist/assets/{rose-pine-dawn-ByNDqq_L.js → rose-pine-dawn-Ds88Nezf.js} +0 -0
  545. /package/dist/assets/{rose-pine-moon-CTzvG4V8.js → rose-pine-moon-DWpzrqNz.js} +0 -0
  546. /package/dist/assets/{rosmsg-Dyz4B4pk.js → rosmsg-h2sO84oD.js} +0 -0
  547. /package/dist/assets/{rust-DO_lfDWX.js → rust-Dx86yfCi.js} +0 -0
  548. /package/dist/assets/{sass-D0v6FpTm.js → sass-BwwVhdT9.js} +0 -0
  549. /package/dist/assets/{scala-Cv_C__Vn.js → scala-WJqNEN-w.js} +0 -0
  550. /package/dist/assets/{scheme-Tf_7H8Hg.js → scheme-uwj-t1Rp.js} +0 -0
  551. /package/dist/assets/{sdbl-D7AqUQ1Z.js → sdbl-BYy5hgEz.js} +0 -0
  552. /package/dist/assets/{semver-D9bo-f7O.js → semver-BMhLFfhj.js} +0 -0
  553. /package/dist/assets/{shellscript-CkL9lXSm.js → shellscript-B9T4z4ZS.js} +0 -0
  554. /package/dist/assets/{signals-B8JnlKDT.js → signals-Bbq4C5b5.js} +0 -0
  555. /package/dist/assets/{slack-dark-BZYmSreQ.js → slack-dark-BvhGq5vQ.js} +0 -0
  556. /package/dist/assets/{slack-ochin-141qUvWP.js → slack-ochin-C9g0ZRFr.js} +0 -0
  557. /package/dist/assets/{smalltalk-BpKhbXk9.js → smalltalk-ZEiZ6i7U.js} +0 -0
  558. /package/dist/assets/{snazzy-light-C6W3FDJs.js → snazzy-light-29OA24q5.js} +0 -0
  559. /package/dist/assets/{solarized-dark-CvRYuMr5.js → solarized-dark-Bnq9IOn_.js} +0 -0
  560. /package/dist/assets/{solarized-light-BrZYeWGp.js → solarized-light-CYdI7T5g.js} +0 -0
  561. /package/dist/assets/{solidity-BEwj5bU5.js → solidity-DcuIDB-_.js} +0 -0
  562. /package/dist/assets/{splunk-X43VxyaD.js → splunk-D5ONE91g.js} +0 -0
  563. /package/dist/assets/{sql-BbM3W9qz.js → sql-CFgcYxpU.js} +0 -0
  564. /package/dist/assets/{ssh-config-xEesUMnx.js → ssh-config-D8717tLI.js} +0 -0
  565. /package/dist/assets/{stylus-kaERDi0y.js → stylus-Cm1lO4Y6.js} +0 -0
  566. /package/dist/assets/{swift-BauIFypW.js → swift-X8oWpSeU.js} +0 -0
  567. /package/dist/assets/{synthwave-84-C8sViQ2U.js → synthwave-84-DF-t1UKY.js} +0 -0
  568. /package/dist/assets/{system-verilog-CpFKRfen.js → system-verilog-JYyHFpPf.js} +0 -0
  569. /package/dist/assets/{systemd-qI6s8zvr.js → systemd-Da-5Ma_c.js} +0 -0
  570. /package/dist/assets/{talonscript-NlxFbnqo.js → talonscript-CXraVPho.js} +0 -0
  571. /package/dist/assets/{tasl-zK97s-oI.js → tasl-BCmWezH9.js} +0 -0
  572. /package/dist/assets/{tcl-CyGMFep3.js → tcl-BTufzfbf.js} +0 -0
  573. /package/dist/assets/{terraform-ru__bYLC.js → terraform-CtUA9c8W.js} +0 -0
  574. /package/dist/assets/{tokyo-night-DkrZxYbM.js → tokyo-night-BCThYXmz.js} +0 -0
  575. /package/dist/assets/{toml-CqdhxcbT.js → toml-D5YlDr6Y.js} +0 -0
  576. /package/dist/assets/{tsv-DzGUqBRN.js → tsv-CBB-P_Sl.js} +0 -0
  577. /package/dist/assets/{tsx-BnfMflsQ.js → tsx-BEBsk4Yi.js} +0 -0
  578. /package/dist/assets/{turtle-qlP_hCPz.js → turtle-D8PCeJ-v.js} +0 -0
  579. /package/dist/assets/{typescript-DzaF40lK.js → typescript-lcLHehw2.js} +0 -0
  580. /package/dist/assets/{typespec-DxkwZz32.js → typespec-CHxldxIW.js} +0 -0
  581. /package/dist/assets/{typst-CjRZvpar.js → typst-Q8CqX5OR.js} +0 -0
  582. /package/dist/assets/{v-BHw8aKkn.js → v-Bf2hKAMu.js} +0 -0
  583. /package/dist/assets/{vala-62mcSMXh.js → vala-Cbete-UE.js} +0 -0
  584. /package/dist/assets/{vb-R9JRY5dv.js → vb-CA-xWAcX.js} +0 -0
  585. /package/dist/assets/{verilog-CBb5pO04.js → verilog-B3wb8CfT.js} +0 -0
  586. /package/dist/assets/{vesper-3VOUMDB2.js → vesper-D6r3VJq_.js} +0 -0
  587. /package/dist/assets/{vhdl-C_FT61W-.js → vhdl-C42S_797.js} +0 -0
  588. /package/dist/assets/{viml-DEQKYU1P.js → viml-BePrIAs8.js} +0 -0
  589. /package/dist/assets/{vitesse-black-Rgn8kizg.js → vitesse-black-DRqn61Ck.js} +0 -0
  590. /package/dist/assets/{vitesse-dark-CfPYcErz.js → vitesse-dark-39_8UE-w.js} +0 -0
  591. /package/dist/assets/{vitesse-light-DHXkidwh.js → vitesse-light-B1jwrxDm.js} +0 -0
  592. /package/dist/assets/{vyper-rhxQa2DT.js → vyper-tDJv3imF.js} +0 -0
  593. /package/dist/assets/{wasm-Wg1MAZEP.js → wasm-BYoJCXXt.js} +0 -0
  594. /package/dist/assets/{wasm-mG28qlcp.js → wasm-DR7eskZH.js} +0 -0
  595. /package/dist/assets/{wenyan-BZqJVxWr.js → wenyan-CezVfqN3.js} +0 -0
  596. /package/dist/assets/{wgsl-BwR2WZrW.js → wgsl-CwOcIiIG.js} +0 -0
  597. /package/dist/assets/{wikitext-DJWsiwoA.js → wikitext-C5coomYc.js} +0 -0
  598. /package/dist/assets/{wit-DVlt00VB.js → wit-C9yyX6-U.js} +0 -0
  599. /package/dist/assets/{wolfram-QTkYOFmX.js → wolfram-BWi0rMAa.js} +0 -0
  600. /package/dist/assets/{xterm-DQdPOO_X.js → xterm-Dsv8Be_e.js} +0 -0
  601. /package/dist/assets/{xterm-addon-fit-hTsMfDk1.js → xterm-addon-fit-C__pvf5w.js} +0 -0
  602. /package/dist/assets/{yaml-GNU-2TIP.js → yaml-FxJ2oirE.js} +0 -0
  603. /package/dist/assets/{zenscript-DIZc3H0b.js → zenscript-Do7WLoJh.js} +0 -0
  604. /package/dist/assets/{zig-Br5kHs8v.js → zig-Cr80Qrru.js} +0 -0
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/web-DMfbmsYR.js","assets/dist-Cz1Xi5ZX.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-S68_7Byc.js";import{i as t}from"./dist-Cz1Xi5ZX.js";var n=t(`Browser`,{web:()=>e(()=>import(`./web-DMfbmsYR.js`).then(e=>new e.BrowserWeb),__vite__mapDeps([0,1]))});export{n as Browser};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/web-am9pHjIz.js","assets/dist-Cz1Xi5ZX.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-S68_7Byc.js";import{i as t}from"./dist-Cz1Xi5ZX.js";var n=t(`Share`,{web:()=>e(()=>import(`./web-am9pHjIz.js`).then(e=>new e.ShareWeb),__vite__mapDeps([0,1]))});export{n as Share};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/web-oo3gTRUT.js","assets/dist-Cz1Xi5ZX.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-S68_7Byc.js";import{i as t}from"./dist-Cz1Xi5ZX.js";var n=t(`App`,{web:()=>e(()=>import(`./web-oo3gTRUT.js`).then(e=>new e.AppWeb),__vite__mapDeps([0,1]))});export{n as App};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/web-DV3iiXuP.js","assets/dist-Cz1Xi5ZX.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-S68_7Byc.js";import{i as t}from"./dist-Cz1Xi5ZX.js";var n;(function(e){e.Light=`light`,e.Dark=`dark`})(n||={});var r=t(`SafeArea`,{web:()=>e(()=>import(`./web-DV3iiXuP.js`).then(e=>new e.SafeAreaWeb),__vite__mapDeps([0,1]))});export{r as SafeArea};
@@ -1 +0,0 @@
1
- import{n as e,t}from"./create-selectors-DoMh4y1G.js";var n=new Map,r=t(e()(()=>({_version:1,subscribe(e,t){let r=n.get(e);return r||(r=new Set,n.set(e,r)),r.add(t),()=>{let r=n.get(e);r&&(r.delete(t),r.size===0&&n.delete(e))}},publish(e,t){let r=n.get(e);if(!(!r||r.size===0))for(let n of Array.from(r))try{n(t)}catch(t){console.error(`[event-bus] handler threw`,e,t)}}})));export{r as t};
@@ -1 +0,0 @@
1
- var e={version:1,flags:[{id:`auto-analyze`,scope:`assistant`,key:`auto-analyze`,label:`Auto-analyze conversations`,description:`Automatically trigger conversation analysis on the same cadence as memory extraction (batch threshold, idle debounce, end-of-conversation). The analysis agent has full tool access and writes back to memory and skills without user approval.`,defaultEnabled:!1},{id:`memory-retrospective-fork`,scope:`assistant`,key:`memory-retrospective-fork`,label:`Fork-based memory retrospective`,description:`Fork the source conversation through its latest message for memory retrospectives, instead of rendering the slice into a transcript and waking an empty background conversation. Lets the retrospective hit the provider prompt cache and read compaction summary + tail messages natively.`,defaultEnabled:!1},{id:`user-hosted-enabled`,scope:`client`,key:`user-hosted-enabled`,label:`User Hosted Enabled`,description:`Enable user-hosted onboarding flow`,defaultEnabled:!1},{id:`prechat-onboarding-condensed-flow`,scope:`client`,key:`prechat-onboarding-condensed-flow`,label:`Condensed Pre-chat Onboarding`,description:`Enable the condensed pre-chat onboarding flow for a standard LaunchDarkly percentage rollout.`,defaultEnabled:!1},{id:`local-docker-enabled`,scope:`client`,key:`local-docker-enabled`,label:`Local Docker Mode`,description:`When enabled, the Local hosting option uses Docker under the hood for sandboxed execution, hiding the separate Docker card`,defaultEnabled:!1},{id:`a2a-channel`,scope:`assistant`,key:`a2a-channel`,label:`A2A Channel`,description:`Enable the A2A (Agent-to-Agent) channel for inter-assistant communication via the open A2A protocol`,defaultEnabled:!1},{id:`email-channel`,scope:`assistant`,key:`email-channel`,label:`Email Channel`,description:`Enable the entire email integration: email CLI commands, email channel, domain registration, sequences, email readiness probes, invite adapters, and the email-setup skill`,defaultEnabled:!1},{id:`settings-developer-nav`,scope:`assistant`,key:`settings-developer-nav`,label:`Settings Developer Nav`,description:`Control Developer nav visibility in macOS settings`,defaultEnabled:!1},{id:`developer-menu-items`,scope:`client`,key:`developer-menu-items`,label:`Developer Menu Items`,description:`Show Component Gallery and Replay Onboarding in the menu bar`,defaultEnabled:!1},{id:`ces-tools`,scope:`assistant`,key:`ces-tools`,label:`CES Tool Exposure`,description:`Register Credential Execution Service tools (credential-grant, credential-revoke, credential-list) in the agent loop`,defaultEnabled:!1},{id:`ces-shell-lockdown`,scope:`assistant`,key:`ces-shell-lockdown`,label:`CES Shell Lockdown`,description:`Enforce untrusted-agent shell lockdown when CES credentials are active, restricting direct shell access to credentialed services`,defaultEnabled:!1},{id:`ces-secure-install`,scope:`assistant`,key:`ces-secure-install`,label:`CES Secure Command Installation`,description:`Enable secure tool/command installation via CES instead of direct shell execution for untrusted agents`,defaultEnabled:!1},{id:`ces-grant-audit`,scope:`assistant`,key:`ces-grant-audit`,label:`CES Grant & Audit Inspection`,description:`Surface credential grant and audit inspection endpoints for reviewing active grants and access logs`,defaultEnabled:!1},{id:`chatgpt-subscription-auth`,scope:`assistant`,key:`chatgpt-subscription-auth`,label:`ChatGPT Subscription Auth`,description:`Enable ChatGPT subscription OAuth as a provider auth type for OpenAI models, using the Codex device-code flow.`,defaultEnabled:!1},{id:`deploy-to-vercel`,scope:`assistant`,key:`deploy-to-vercel`,label:`Deploy to Vercel`,description:`Enable the Deploy to Vercel / Publish option in the app workspace header share menu`,defaultEnabled:!1},{id:`settings-embedding-provider`,scope:`assistant`,key:`settings-embedding-provider`,label:`Embedding Provider Settings`,description:`Show the Embedding service card in Models & Services settings`,defaultEnabled:!1},{id:`multi-platform-assistant`,scope:`assistant`,key:`multi-platform-assistant`,label:`Multi-Platform Assistant Switcher`,description:`Enable the menu-bar assistant switcher for managing multiple platform-hosted assistants (new/switch/retire)`,defaultEnabled:!1},{id:`quick-input`,scope:`client`,key:`quick-input`,label:`Quick Input`,description:`Enable the Quick Input popover on right-click of the menu bar icon`,defaultEnabled:!1},{id:`expand-completed-steps`,scope:`client`,key:`expand-completed-steps`,label:`Expand Completed Steps`,description:`Auto-expand completed tool call step groups instead of showing them collapsed`,defaultEnabled:!1},{id:`sounds`,scope:`assistant`,key:`sounds`,label:`Sounds`,description:`Enable the Sounds tab in Settings and all app sound playback (event sounds, random ambient sounds)`,defaultEnabled:!1},{id:`message-tts`,scope:`assistant`,key:`message-tts`,label:`Message Text-to-Speech`,description:`Show a speaker button on assistant messages to generate and play the message as audio via Fish Audio TTS`,defaultEnabled:!1},{id:`openai-compatible-endpoints`,scope:`assistant`,key:`openai-compatible-endpoints`,label:`OpenAI-Compatible Endpoints`,description:`Enable user-configured OpenAI-compatible inference endpoints with custom base URLs and model identifiers`,defaultEnabled:!1},{id:`backward-releases`,scope:`assistant`,key:`backward-releases`,label:`Backward Releases`,description:`Show older versions in the version picker, allowing rollback to previous releases`,defaultEnabled:!1},{id:`voice-mode`,scope:`assistant`,key:`voice-mode`,label:`Voice Mode`,description:`Show the live voice conversation button in the composer`,defaultEnabled:!1},{id:`fast-mode`,scope:`assistant`,key:`fast-mode`,label:`Fast Mode`,description:`Enable Anthropic fast mode for Opus models (4.6, 4.7, 4.8), delivering up to 2.5x higher output tokens per second at premium pricing`,defaultEnabled:!1},{id:`conversation-groups-ui`,scope:`assistant`,key:`conversation-groups-ui`,label:`Conversation Groups`,description:`Enable custom conversation group creation, move-to-group, and group management in the sidebar`,defaultEnabled:!1},{id:`teleport`,scope:`client`,key:`teleport`,label:`Teleport`,description:`Enable teleport UI in General settings for moving assistants between hosting environments`,defaultEnabled:!1},{id:`apple-container`,scope:`client`,key:`apple-container`,label:`Apple Container`,description:`Enable assistant sandboxing via Apple Containers on macOS 26+, providing a lightweight native sandbox without third-party dependencies`,defaultEnabled:!1},{id:`managed-gemini-embeddings-enabled`,scope:`assistant`,key:`managed-gemini-embeddings-enabled`,label:`Managed Gemini Embeddings Enabled`,description:`Route embedding requests through the platform runtime proxy using Vellum-managed Gemini credentials when available`,defaultEnabled:!1},{id:`bookmarks`,scope:`client`,key:`bookmarks`,label:`Message Bookmarks`,description:`Show the bookmark icon on messages and enable the Bookmarks tab in Settings`,defaultEnabled:!1},{id:`fork-from-message`,scope:`client`,key:`fork-from-message`,label:`Fork from Message`,description:`Show the 'Fork from here' option in message overflow menus`,defaultEnabled:!1},{id:`home-tab`,scope:`client`,key:`home-tab`,label:`Home Tab`,description:`Replace the knowledge graph top-level tab with a new Home page showing relationship progression, facts, and capability tiers`,defaultEnabled:!1},{id:`meet`,scope:`assistant`,key:`meet`,label:`Google Meet`,description:`Enables the Google Meet joining bot and the meet-join skill.`,defaultEnabled:!1},{id:`scroll-debug-overlay`,scope:`client`,key:`scroll-debug-overlay`,label:`Scroll Debug Overlay`,description:`Show a live HUD in the top-right of the conversation with scroll geometry, velocity, update rate, and anchor-preserver activity. Developer diagnostic for investigating scroll jank.`,defaultEnabled:!1},{id:`coding-agents-panel`,scope:`client`,key:`coding-agents-panel`,label:`Coding Agents Panel`,description:`Gate native macOS Coding Agents panel entry points and inline ACP session deep links.`,defaultEnabled:!1},{id:`compaction-playground`,scope:`assistant`,key:`compaction-playground`,label:`Compaction Playground`,description:`Expose the developer-only Compaction Playground tab in macOS Settings and enable the /playground/* HTTP endpoints for exercising compaction conditions. Dev-only; default off.`,defaultEnabled:!1},{id:`account-deletion`,scope:`assistant`,key:`account-deletion`,label:`Account Deletion`,description:`Surfaces the user-initiated account deletion flow in client settings.`,defaultEnabled:!0},{id:`app-control`,scope:`assistant`,key:`app-control`,label:`App Control`,description:`Enable the app-control skill (per-app screenshot + raw input bypassing AX tree)`,defaultEnabled:!1},{id:`analyze-conversation`,scope:`assistant`,key:`analyze-conversation`,label:`Analyze Conversation`,description:`Show the 'Analyze' / 'Analyze conversation' option in conversation context menus and the conversation title actions dropdown.`,defaultEnabled:!1},{id:`external-plugins`,scope:`assistant`,key:`external-plugins`,label:`External Plugins`,description:"Enable the external-plugin install path: the `assistant plugins` CLI subcommand and the declarative external-plugin loader convention (`<workspaceDir>/plugins/<name>/` directories containing `package.json` plus interface dirs). Gates an unstable surface that may change shape before stabilizing.",defaultEnabled:!1},{id:`provider-zai`,scope:`assistant`,key:`provider-zai`,label:`z.ai Provider`,description:`Enable the z.ai (Zhipu AI) provider and its GLM models in the provider picker and model selection UI`,defaultEnabled:!1},{id:`velvet-theme`,scope:`client`,key:`velvet-theme`,label:`Velvet Theme`,description:`Show the Velvet theme option in the macOS appearance settings. Velvet is a dark-mode variant with red/pink accent colors.`,defaultEnabled:!1},{id:`query-complexity-routing`,scope:`assistant`,key:`query-complexity-routing`,label:`Query Complexity Routing`,description:`Automatically route user messages to the most appropriate inference profile based on query complexity. Simple queries use the speed profile, complex queries escalate to the quality profile. The user is notified of each switch and can opt out by pinning a profile on the conversation.`,defaultEnabled:!1},{id:`queue-steering`,scope:`assistant`,key:`queue-steering`,label:`Queue Steering`,description:`Enable the 'Push to agent' button on queued messages, allowing users to steer the assistant to a specific queued message by aborting the current generation and promoting the message to the head of the queue.`,defaultEnabled:!1},{id:`chat-pull-to-refresh-enabled`,scope:`client`,key:`chat-pull-to-refresh-enabled`,label:`Chat Pull to Refresh`,description:`Enable pull-to-refresh gesture in the chat view.`,defaultEnabled:!1},{id:`doctor`,scope:`client`,key:`doctor`,label:`Doctor`,description:`Enable the Doctor diagnostic tab in Debug settings.`,defaultEnabled:!1},{id:`home-page`,scope:`client`,key:`home-page`,label:`Home Page`,description:`Enable the Home page as the default landing view.`,defaultEnabled:!1},{id:`platform-notifications`,scope:`client`,key:`platform-notifications`,label:`Platform Notifications`,description:`Enable the Notifications tab in settings.`,defaultEnabled:!1},{id:`preview-channel`,scope:`client`,key:`preview-channel`,label:`Preview Channel`,description:`Enable user-facing Preview release channel controls in assistant settings.`,defaultEnabled:!1},{id:`rollback-enabled`,scope:`assistant`,key:`rollback-enabled`,label:`Rollback Enabled`,description:`Show older versions in the version picker, allowing rollback to previous releases.`,defaultEnabled:!1},{id:`self-hosted-assistant`,scope:`client`,key:`self-hosted-assistant`,label:`Self-Hosted Assistant`,description:`Enable self-hosted assistant configuration.`,defaultEnabled:!1},{id:`settings-sleep-policy`,scope:`assistant`,key:`settings-sleep-policy`,label:`Settings Sleep Policy`,description:`Enable sleep policy settings.`,defaultEnabled:!1},{id:`velvet`,scope:`client`,key:`velvet`,label:`Velvet`,description:`Enable the Velvet design theme.`,defaultEnabled:!1},{id:`memory-router-playground`,scope:`client`,key:`memory-router-playground`,label:`Memory Router Playground`,description:`Expose the developer-only Memory Router Playground tab in macOS Settings and the /assistant/memory-router-playground web page for dry-running v4 router config overrides against the live page index. Dev-only; default off.`,defaultEnabled:!1},{id:`platform-features-in-local-mode`,scope:`assistant`,key:`platform-features-in-local-mode`,label:`Platform Features in Local Mode`,description:`When enabled, the assistant can call the Vellum platform API from local mode. When disabled, all platform API clients in the daemon, gateway, CES, and web UI no-op with a debug log instead of making outbound requests.`,defaultEnabled:!0}]};function t(e,t){return e===t||e===`both`}var n=e.flags,r={"openai-compatible-endpoints":`openAICompatibleEndpoints`};function i(e){return r[e]||e.split(`-`).map((e,t)=>e===`ui`?`UI`:t===0?e:e[0].toUpperCase()+e.slice(1)).join(``)}function a(e){let r={};for(let a of n)t(a.scope,e)&&(r[i(a.key)]=a.defaultEnabled);return r}var o=a(`client`),s=a(`assistant`),c=new Map;for(let e of n)c.set(i(e.key),e);var l=new Map;for(let e of n)l.set(i(e.key),e.key);function u(e){return i(e)}function d(e){return l.get(e)}export{t as a,n as i,o as n,d as o,u as r,s as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BD5vCCEH.js";import{d as n,t as r}from"./chunk-5KNZJZUH-DdB2N3P3.js";import{A as i,D as a,M as o,O as s,j as c,u as l}from"./native-biometric-BPPNP_Sl.js";import{d as u,m as d,s as f,u as p}from"./local-mode-BO8mMNsq.js";import{r as m}from"./routes-CHnF8N9D.js";import{l as h,n as g}from"./auth-store-Dy6ebqwf.js";import{t as _}from"./client.gen-ywbejrz1.js";import{D as v,F as y,U as b,s as x,y as S}from"./sdk.gen-ONnYjEkg.js";import{n as C}from"./QueryClientProvider-3h1PDgiK.js";import{t as w}from"./useQuery-Cihv2Mys.js";import{t as T}from"./useMutation-DO5gkGJX.js";import{t as E}from"./jsx-runtime-2-RJdKf7.js";import{$ as D,A as O,D as k,E as A,M as j,N as M,O as N,T as P,Z as ee,_t as F,c as I,gt as L,j as R,k as z,w as B}from"./react-query.gen-CaeZaVZK.js";import{i as V,r as te,t as ne}from"./api-errors-BK1-O3Nx.js";import{n as re,t as ie}from"./semver-D9bo-f7O.js";import{t as ae}from"./cn-CjywcAuq.js";import{t as H}from"./button-aOWst_o4.js";import{t as oe}from"./dropdown-GgPqNVMy.js";import{o as se,s as ce,t as U}from"./src-DzD6V_-s.js";import{n as le,r as ue}from"./stat-square-Di_bhDMh.js";import{t as W}from"./notice-whIbTA0N.js";import{t as G}from"./tag-D_G_KF4_.js";import{t as K}from"./input-Wbm6eptw.js";import{t as de}from"./toggle-Brqq7_4W.js";import{t as q}from"./modal-1PrCjlTg.js";import{t as J}from"./toast-B74YN17b.js";import{t as fe}from"./createLucideIcon-Btk32rD9.js";import{t as pe}from"./bell-D6safcBY.js";import{t as Y}from"./loader-circle-DaEOga2S.js";import{a as me,c as he,o as ge,r as _e,s as ve,t as ye}from"./resize-errors-DGTY2nAB.js";import{n as be,t as xe}from"./use-reduced-motion-C8MjY0gt.js";import{B as Se,Ft as Ce,Gr as we,Hr as Te,Jn as Ee,Jt as De,Pt as Oe,Qn as ke,R as Ae,Rr as je,St as Me,Tr as Ne,Ur as Pe,V as Fe,Wr as Ie,Yn as Le,Zn as Re,b as ze,br as Be,fn as Ve,ht as He,mn as Ue,pt as We,qt as Ge,tt as Ke,vt as qe,w as Je,wt as Ye}from"./index-aLxsGtfC.js";import{t as X}from"./detail-card-CzJ5gLcw.js";import{t as Xe}from"./use-current-platform-assistant-B8PKBExd.js";import{i as Ze,n as Qe,r as $e,t as et}from"./assistant-status-panel-83EaWImU.js";var tt=fe(`fingerprint-pattern`,[[`path`,{d:`M12 10a2 2 0 0 0-2 2c0 1.02-.1 2.51-.26 4`,key:`1nerag`}],[`path`,{d:`M14 13.12c0 2.38 0 6.38-1 8.88`,key:`o46ks0`}],[`path`,{d:`M17.29 21.02c.12-.6.43-2.3.5-3.02`,key:`ptglia`}],[`path`,{d:`M2 12a10 10 0 0 1 18-6`,key:`ydlgp0`}],[`path`,{d:`M2 16h.01`,key:`1gqxmh`}],[`path`,{d:`M21.8 16c.2-2 .131-5.354 0-6`,key:`drycrb`}],[`path`,{d:`M5 19.5C5.5 18 6 15 6 12a6 6 0 0 1 .34-2`,key:`1tidbn`}],[`path`,{d:`M8.65 22c.21-.66.45-1.32.57-2`,key:`13wd9y`}],[`path`,{d:`M9 6.8a6 6 0 0 1 9 5.2v2`,key:`1fr1j5`}]]),nt=fe(`rocket`,[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]),rt=fe(`vibrate`,[[`path`,{d:`m2 8 2 2-2 2 2 2-2 2`,key:`sv1b1`}],[`path`,{d:`m22 8-2 2 2 2-2 2 2 2`,key:`101i4y`}],[`rect`,{width:`8`,height:`14`,x:`8`,y:`5`,rx:`1`,key:`1oyrl4`}]]),Z=e(t(),1),Q=E();function it(){let{assistantId:e,setAssistantId:t,isLoading:n,platformAssistants:r}=Xe();return n||r.length<2?null:(0,Q.jsx)(X,{title:`Switch Assistant`,subtitle:`Choose which assistant is active for this account.`,children:(0,Q.jsx)(`div`,{className:`space-y-2`,children:r.map(n=>{let r=n.id===e;return(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-4 rounded-lg border px-4 py-3 ${r?`border-[var(--border-focus)] bg-[var(--surface-lift)]`:`border-[var(--border-default)] bg-[var(--surface-default)]`}`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,Q.jsx)(De,{className:`h-4 w-4 shrink-0 text-[var(--content-tertiary)]`}),(0,Q.jsx)(`div`,{className:`min-w-0`,children:(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(`span`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:n.name||`Unnamed`}),n.status!==`active`&&(0,Q.jsx)(G,{tone:`warning`,children:n.status})]})})]}),(0,Q.jsx)(`div`,{className:`shrink-0`,children:r?(0,Q.jsxs)(`span`,{className:`flex items-center gap-1.5 text-body-small-default text-[var(--system-positive-default)]`,children:[(0,Q.jsx)(ke,{className:`h-4 w-4`}),`Active`]}):(0,Q.jsx)(H,{variant:`outlined`,size:`compact`,disabled:n.status!==`active`,onClick:()=>{t(n.id),J.success(`Switched active assistant.`)},children:`Switch`})})]},n.id)})})})}var at=[{label:`Never`,seconds:0},{label:`5 min`,seconds:300,devOnly:!0},{label:`10 min`,seconds:600,devOnly:!0},{label:`1 hour`,seconds:3600},{label:`3 hours`,seconds:10800},{label:`1 day`,seconds:86400},{label:`3 days`,seconds:259200},{label:`7 days`,seconds:604800},{label:`14 days`,seconds:1209600},{label:`30 days`,seconds:2592e3}];function ot(e){if(e===0)return`Never (sleep disabled)`;let t=Math.floor(e/86400),n=Math.floor(e%86400/3600);if(t>0&&n>0)return`${t}d ${n}h`;if(t>0)return`${t} day${t===1?``:`s`}`;if(n>0)return`${n} hour${n===1?``:`s`}`;let r=Math.floor(e/60);return r>0?`${r} minute${r===1?``:`s`}`:`${e}s`}function st({assistantId:e}){let t=C(),n=Ne.use.isNonProduction(),r=(0,Z.useMemo)(()=>at.filter(e=>!e.devOnly||n),[n]),{data:i,isLoading:a,isError:o}=w(j({path:{id:e}})),s=(0,Z.useMemo)(()=>i?.idle_timeout_seconds??259200,[i]),[c,l]=(0,Z.useState)(null),u=c??s,d=c!==null,f=T({...R(),onSuccess:()=>{J.success(`Sleep policy saved.`),l(null),t.invalidateQueries({queryKey:M({path:{id:e}})})},onError:()=>{J.error(`Failed to save sleep policy. Please try again.`)}});return a?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(Y,{className:`h-4 w-4 animate-spin`}),`Loading sleep settings...`]}):o?(0,Q.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--system-negative-strong)]`,children:`Failed to load sleep policy. Refresh the page to try again.`}):(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`label`,{className:`block text-body-medium-default text-[var(--content-default)]`,children:`Idle timeout`}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`How long the assistant can be idle before it is put to sleep. "Never" disables idle sleep entirely.`}),(0,Q.jsx)(`div`,{className:`mt-2 flex flex-wrap gap-2`,children:r.map(e=>(0,Q.jsx)(H,{variant:`outlined`,active:u===e.seconds,onClick:()=>l(e.seconds),children:e.label},e.seconds))}),(0,Q.jsxs)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:[`Current: `,ot(u)]})]}),d&&(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(H,{variant:`primary`,leftIcon:f.isPending?(0,Q.jsx)(Y,{className:`animate-spin`}):void 0,onClick:()=>f.mutate({path:{id:e},body:{idle_timeout_seconds:u}}),disabled:f.isPending,children:`Save`}),(0,Q.jsx)(H,{variant:`outlined`,onClick:()=>l(null),disabled:f.isPending,children:`Cancel`})]})]})}function ct(e,t,n){let r=[e.version];return e.version===n&&r.push(`(latest)`),t&&e.version===t&&r.push(`(current)`),r.join(` `)}var lt=3e3;function ut(e,t){return t&&e===`preview`?`preview`:`stable`}function dt({assistantId:e,currentVersion:t,releaseChannel:n,onUpgradeComplete:r}){let i=Be.use.rollbackEnabled(),a=we.use.previewChannel(),o=C(),s=ut(n,a),c=s===`preview`,[l,u]=(0,Z.useState)(!1),d=(0,Z.useRef)(null),[f,p]=(0,Z.useState)(null),[m,h]=(0,Z.useState)(!1),[g,_]=(0,Z.useState)(!1),[v,x]=(0,Z.useState)(null),S=e=>e&&d.current&&e===d.current?(queueMicrotask(()=>{x(g?`Successfully rolled back to version ${d.current}.`:`Successfully updated to version ${d.current}.`),u(!1),d.current=null,p(null),J.success(g?`Rollback complete — assistant is healthy.`:`Update complete — assistant is healthy.`),r?.()}),!1):lt;w({...z({path:{id:e}}),refetchInterval:l?e=>S(e.state.data?.current_release_version):!1});let{data:E,isLoading:D}=w(L({query:{channel:s}})),k=E?.find(e=>e.is_stable!==!1)??E?.[0],A=f??k?.version??null,j=(0,Z.useMemo)(()=>{if(!i||!A||!t)return!1;let e=re(A),n=re(t);return!e||!n?!1:ie(e,n)<0},[i,A,t]),M=(0,Z.useMemo)(()=>{if(!A)return!1;if(!t)return!0;let e=re(A),n=re(t);if(!e||!n)return A!==t;let r=ie(e,n);return i?r!==0:r>0},[i,A,t]),N=T({mutationFn:async t=>{let{data:n}=await b({path:{id:e},body:t,throwOnError:!0});return n}}),P=T({mutationFn:async t=>{let{data:n}=await y({path:{id:e},body:t,throwOnError:!0});return n}});return(0,Q.jsxs)(`div`,{className:`space-y-5`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4 md:grid md:grid-cols-[auto_minmax(0,1fr)] md:items-center md:gap-x-8 md:gap-y-4`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1 md:contents`,children:[(0,Q.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:`Current`}),(0,Q.jsx)(`span`,{className:`block min-w-0 break-all text-body-medium-lighter text-[var(--content-default)]`,children:t??`—`})]}),(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1 md:contents`,children:[(0,Q.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:c?`Preview release`:M?j?`Rollback to`:`Update to`:`Selected`}),(0,Q.jsx)(`span`,{className:`block min-w-0`,children:D?(0,Q.jsxs)(`span`,{className:`flex items-center gap-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(Y,{className:`h-3 w-3 animate-spin`}),`Loading...`]}):E&&E.length>0?i?(0,Q.jsx)(oe,{value:A??``,onChange:e=>p(e===k?.version?null:e),disabled:l||N.isPending||P.isPending,options:E.map(e=>({value:e.version,label:ct(e,t,k?.version)}))}):(0,Q.jsx)(`span`,{className:`block min-w-0 break-all text-body-medium-lighter text-[var(--content-default)]`,children:k?ct(k,t,k.version):`—`}):`No releases available`})]})]}),(0,Q.jsx)(H,{variant:j?`outlined`:`primary`,className:`min-w-[160px]`,leftIcon:N.isPending||P.isPending||l?(0,Q.jsx)(Y,{className:`animate-spin`}):(0,Q.jsx)(Ce,{}),onClick:()=>h(!0),disabled:!M||N.isPending||P.isPending||l||D||!E?.length,children:l?g?`Rolling back...`:`Updating...`:j?`Rollback`:c?`Update preview`:`Update`}),c&&(0,Q.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[`Using Preview releases.`,` `,(0,Q.jsx)(`a`,{href:`#preview-release-channel`,className:`text-[var(--primary-base)] underline-offset-2 hover:underline`,children:`Switch back to Stable`})]}),!M&&t&&A&&!D&&(0,Q.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--system-positive-strong)]`,children:v??`You are already on this version.`}),(0,Q.jsx)(le,{open:m,title:j?`Rollback assistant`:c?`Update preview release`:`Update assistant`,message:j?`Rollback to version ${A??`unknown`}? The assistant will be briefly unavailable.`:c?`Update to preview version ${A??`latest`}? The assistant will be briefly unavailable during the update.`:`Update to version ${A??`latest`}? The assistant will be briefly unavailable during the update.`,confirmLabel:j?`Rollback`:c?`Update preview`:`Update`,onConfirm:async()=>{h(!1),x(null);let t=f??void 0;try{if(j){let e=await P.mutateAsync({version:t});d.current=e.version??t??null,J.success(e.detail||`Rollback to ${t} initiated.`)}else{let e=await N.mutateAsync({version:t});if(e.detail?.includes(`Already on the latest`)){J.warning(e.detail);return}d.current=e.version??t??null,J.success(e.detail||`Update to ${e.version??t??`latest`} initiated.`)}_(j),u(!0),o.invalidateQueries({queryKey:O({path:{id:e}})})}catch{J.error(j?`Failed to trigger rollback. Please try again.`:`Failed to trigger update. Please try again.`)}},onCancel:()=>h(!1)})]})}function ft({assistant:e,healthz:t,healthzLoading:i,healthzPolling:a,refetch:o,refetchUntilResized:s}){let c=n(),l=w(D()),u=l.data,d=!e.is_local,f=u?.plan_id===`pro`,p=w({...ee(),enabled:f}),h=e.machine_size||`small`,g=me(p.data?.max_machine_tier??null),_=(0,Z.useMemo)(()=>ge(g,h,(0,Q.jsx)(G,{tone:`positive`,children:`Current`})),[g,h]),v=p.data?.selected_storage_gib??null,[y,b]=(0,Z.useState)(!1),x=g.length>0?g[g.length-1]:null,[S,C]=(0,Z.useState)(null),E=S??x??h,[O,k]=(0,Z.useState)(null),[A,j]=(0,Z.useState)(null),M=T({...N(),onSuccess:(e,n)=>{J.success(`Resize started. Changes will apply shortly.`,{id:`assistant-resize`}),j(null),C(null),b(!1),n.body?.machine_size==null?o():s(t)},onError:e=>{j(ye(e,`Failed to resize assistant. Please try again.`))}});if(l.isError&&u==null)return(0,Q.jsx)(X,{id:`storage-resources`,title:`Compute & Resources`,subtitle:`Monitor resource usage and manage your assistant's compute profile.`,children:(0,Q.jsx)(W,{tone:`error`,children:`Could not load your subscription. Please try again.`})});let P=f&&g.includes(E)&&E!==h?E:null,F=f&&v!=null&&!0,I=f&&g.length>0&&ve(h)<ve(g[g.length-1]),L=M.isPending||a,R=v==null?t?.disk?.totalMb??null:v*1024,z=t?.disk&&R!=null?{value:t.disk.usedMb,max:R,caption:`${Qe(t.disk.usedMb)} of ${Qe(R)}`}:null,B=t?.cpu?{value:t.cpu.currentPercent,max:100,caption:`${t.cpu.currentPercent.toFixed(1)}%`}:null,V=t?.memory?{value:t.memory.currentMb,max:t.memory.maxMb,caption:`${Qe(t.memory.currentMb)} of ${Qe(t.memory.maxMb)}`}:null,te=d?f?F?(0,Q.jsxs)(`button`,{type:`button`,disabled:L,onClick:()=>b(!0),className:`flex items-center gap-1.5 rounded-lg border border-amber-500/30 bg-amber-500/15 px-3 py-1.5 text-body-small-default font-medium text-amber-400 transition-colors hover:bg-amber-500/25 disabled:opacity-50`,children:[(0,Q.jsx)(Me,{className:`h-3.5 w-3.5`}),`Increase Storage`]}):(0,Q.jsx)(H,{variant:`ghost`,size:`compact`,disabled:L,onClick:()=>b(!0),children:`Resize`}):(0,Q.jsx)(H,{variant:`ghost`,size:`compact`,onClick:()=>k(`storage`),children:`Resize`}):null,ne=d?f?I?(0,Q.jsxs)(`button`,{type:`button`,disabled:L,onClick:()=>b(!0),className:`flex items-center gap-1.5 rounded-lg border border-amber-500/30 bg-amber-500/15 px-3 py-1.5 text-body-small-default font-medium text-amber-400 transition-colors hover:bg-amber-500/25 disabled:opacity-50`,children:[(0,Q.jsx)(Me,{className:`h-3.5 w-3.5`}),`Increase Size`]}):(0,Q.jsx)(H,{variant:`ghost`,size:`compact`,disabled:L,onClick:()=>b(!0),children:`Resize`}):(0,Q.jsx)(H,{variant:`ghost`,size:`compact`,onClick:()=>k(`machine`),children:`Resize`}):null;return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(X,{id:`storage-resources`,title:`Compute & Resources`,subtitle:`Monitor resource usage and manage your assistant's compute profile.`,compactAccessory:!0,accessory:(0,Q.jsx)(H,{variant:`ghost`,size:`compact`,iconOnly:i||a?(0,Q.jsx)(Y,{className:`animate-spin`}):(0,Q.jsx)(Ce,{}),tooltip:a?`Applying resize…`:`Refresh resource metrics`,"aria-label":`Refresh resource metrics`,disabled:i||a,onClick:()=>void o()}),children:(0,Q.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-[1fr_2fr]`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-col rounded-lg bg-[var(--surface-base)] p-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Q.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:(0,Q.jsx)(Ue,{className:`h-3.5 w-3.5`})}),(0,Q.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:`Disk`})]}),te]}),(0,Q.jsxs)(`div`,{className:`mt-auto flex flex-col gap-1 pt-3`,children:[(0,Q.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:`Storage`}),z?(0,Q.jsx)(Ze,{value:z.value,max:z.max,caption:z.caption}):i?(0,Q.jsx)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:(0,Q.jsx)(Y,{className:`h-3 w-3 animate-spin`})}):(0,Q.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:`Unavailable`})]})]}),(0,Q.jsxs)(`div`,{className:`flex flex-col rounded-lg bg-[var(--surface-base)] p-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Q.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:(0,Q.jsx)(he,{className:`h-3.5 w-3.5`})}),(0,Q.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:`Machine`}),(0,Q.jsx)(G,{tone:`neutral`,children:_e[h]})]}),ne]}),(0,Q.jsxs)(`div`,{className:`mt-auto grid grid-cols-2 gap-3 pt-3`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:`CPU`}),B?(0,Q.jsx)(Ze,{value:B.value,max:B.max,caption:B.caption}):i?(0,Q.jsx)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:(0,Q.jsx)(Y,{className:`h-3 w-3 animate-spin`})}):(0,Q.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:`—`})]}),(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:`Memory`}),V?(0,Q.jsx)(Ze,{value:V.value,max:V.max,caption:V.caption}):i?(0,Q.jsx)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:(0,Q.jsx)(Y,{className:`h-3 w-3 animate-spin`})}):(0,Q.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:`—`})]})]})]})]})}),(0,Q.jsx)(q.Root,{open:O!=null,onOpenChange:e=>{e||k(null)},children:(0,Q.jsxs)(q.Content,{size:`sm`,children:[(0,Q.jsxs)(q.Header,{children:[(0,Q.jsx)(q.Title,{children:`Upgrade to Pro`}),(0,Q.jsx)(q.Description,{children:O===`storage`?`Upgrade to the Pro plan to increase your storage allocation and get more space for your assistant.`:`Upgrade to the Pro plan to unlock larger machine sizes with more CPU and memory for your assistant.`})]}),(0,Q.jsxs)(q.Footer,{children:[(0,Q.jsx)(H,{variant:`ghost`,onClick:()=>k(null),children:`Cancel`}),(0,Q.jsx)(H,{onClick:()=>{k(null),c(`${m.settings.billing}?adjust_plan=1`)},children:`Upgrade`})]})]})}),(0,Q.jsx)(q.Root,{open:y,onOpenChange:e=>{e||(b(!1),C(null),j(null))},children:(0,Q.jsxs)(q.Content,{size:`sm`,children:[(0,Q.jsxs)(q.Header,{children:[(0,Q.jsx)(q.Title,{icon:he,children:`Resize Assistant`}),(0,Q.jsx)(q.Description,{children:`Resize your assistant's compute and storage. Your assistant will briefly restart.`})]}),(0,Q.jsx)(q.Body,{children:(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[g.length===0?(0,Q.jsx)(W,{tone:`warning`,children:`No machine tier configured. Visit the community for help.`}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,Q.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-secondary)]`,children:`Machine Size`}),(0,Q.jsx)(oe,{options:_,value:E,onChange:C,"aria-label":`Compute machine size`,"data-testid":`resize-machine-size`})]}),F?(0,Q.jsx)(W,{tone:`info`,children:`Storage will be expanded to ${v} GiB.`}):(0,Q.jsx)(W,{tone:`neutral`,children:`Storage will not change.`}),A&&(0,Q.jsx)(W,{tone:`error`,children:A})]})}),(0,Q.jsxs)(q.Footer,{className:`items-center justify-between`,children:[(0,Q.jsxs)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:[`Need more?`,` `,(0,Q.jsx)(r,{to:`${m.settings.billing}?adjust_plan=1`,className:`text-[var(--content-secondary)] underline decoration-[var(--border-element)] underline-offset-2 transition-colors hover:text-[var(--content-default)]`,onClick:()=>b(!1),children:`Upgrade plan`})]}),(0,Q.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Q.jsx)(H,{variant:`ghost`,onClick:()=>{b(!1),C(null),j(null)},children:`Cancel`}),(0,Q.jsx)(H,{disabled:P==null&&!F||L,leftIcon:L?(0,Q.jsx)(Y,{className:`animate-spin`}):void 0,onClick:()=>{j(null);let t={};P!=null&&(t.machine_size=P),F&&v!=null&&(t.storage_gib=v),M.mutate({path:{id:e.id},body:t})},children:A?`Retry`:`Apply`})]})]})]})})]})}function pt(){let e=g.use.logout(),[t,n]=(0,Z.useState)(!1),r=T({...F(),onSuccess:async()=>{J.success(`Account deletion requested. You will be logged out shortly.`),await e(),Ke(m.account.login)},onError:()=>{J.error(`Failed to request account deletion. Please try again.`)}});return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(X,{title:`Delete Account`,subtitle:`Permanently delete your account and all associated data.`,variant:`danger`,children:(0,Q.jsx)(H,{variant:`dangerOutline`,onClick:()=>n(!0),disabled:r.isPending,className:`self-start`,children:`Delete My Account`})}),(0,Q.jsx)(le,{open:t,title:`Delete Account`,message:`This will permanently delete your account and all associated data. This action cannot be undone.`,confirmLabel:`Delete Account`,destructive:!0,onConfirm:()=>{n(!1),r.mutate({})},onCancel:()=>n(!1)})]})}function mt({title:e,subtitle:t,benefits:n,ctaLabel:r,ctaLeftIcon:i,onAction:a}){return(0,Q.jsx)(X,{title:e,subtitle:t,children:(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsx)(`ul`,{className:`space-y-3`,children:n.map(({icon:e,text:t})=>(0,Q.jsxs)(`li`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(`span`,{className:`flex size-7 shrink-0 items-center justify-center rounded-md`,style:{background:`var(--surface-base)`},children:(0,Q.jsx)(e,{size:14,style:{color:`var(--content-secondary)`},"aria-hidden":!0})}),(0,Q.jsx)(`span`,{className:`text-body-medium-lighter text-[color:var(--content-secondary)]`,children:t})]},t))}),(0,Q.jsx)(H,{variant:`primary`,size:`regular`,leftIcon:i,onClick:a,className:`self-start`,children:r})]})})}function ht(){return Fe()?(0,Q.jsx)(mt,{title:`Get the iOS App`,subtitle:`The Vellum iOS app gives you a native experience.`,benefits:[{icon:pe,text:`Push notifications`},{icon:tt,text:`Biometric login`},{icon:rt,text:`Native haptics`},{icon:Ye,text:`Home screen access`}],ctaLabel:`Download`,ctaLeftIcon:(0,Q.jsx)(Ye,{size:16}),onAction:()=>{Se(),Ae()}}):null}function gt({className:e}){return(0,Q.jsx)(`div`,{role:`presentation`,className:ae(`h-px w-full bg-[var(--border-base)]`,e)})}var $=[`youtube.com`,`youtu.be`,`vimeo.com`,`loom.com`];function _t(e){try{let t=JSON.parse(e);if(Array.isArray(t))return t.filter(e=>typeof e==`string`)}catch{}return[...$]}function vt(){return a(`mediaEmbedsEnabled`,!0)}function yt(){let e=s(`mediaEmbedDomains`,``);return e?_t(e):[...$]}function bt(){let[e,t]=(0,Z.useState)(()=>vt()),[n,r]=(0,Z.useState)(()=>yt()),[a,o]=(0,Z.useState)(!1),[s,l]=(0,Z.useState)(``),u=(0,Z.useMemo)(()=>s.trim().toLowerCase(),[s]),d=e=>{t(e),i(`mediaEmbedsEnabled`,e)},f=e=>{r(e),c(`mediaEmbedDomains`,JSON.stringify(e))},p=()=>{if(u){if(n.includes(u)){l(``);return}f([...n,u]),l(``)}},m=e=>{f(n.filter(t=>t!==e))},h=()=>{f([...$])},g=n.length===$.length&&n.every((e,t)=>e===$[t]);return(0,Q.jsxs)(X,{title:`Media Embeds`,subtitle:`Automatically embed images, videos, and other media shared in chat messages.`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,Q.jsx)(`div`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:`Auto Media Embeds`}),(0,Q.jsx)(de,{checked:e,onChange:d})]}),e&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`mt-4`,children:(0,Q.jsx)(gt,{})}),(0,Q.jsxs)(H,{type:`button`,variant:`ghost`,onClick:()=>o(e=>!e),className:`mt-4 w-full justify-between px-3`,"aria-expanded":a,children:[(0,Q.jsxs)(`span`,{className:`flex items-center gap-2`,children:[a?(0,Q.jsx)(Re,{className:`h-4 w-4`,"aria-hidden":!0}):(0,Q.jsx)(Le,{className:`h-4 w-4`,"aria-hidden":!0}),`Video Domain Allowlist`]}),(0,Q.jsxs)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[n.length,` domain`,n.length===1?``:`s`]})]}),a&&(0,Q.jsxs)(`div`,{className:`mt-3 space-y-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-end gap-2`,children:[(0,Q.jsx)(K,{label:`Add Domain`,type:`text`,value:s,onChange:e=>l(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),p())},placeholder:`Add domain (e.g. example.com)`,fullWidth:!0,wrapperClassName:`flex-1`}),(0,Q.jsx)(H,{variant:`primary`,size:`compact`,onClick:p,disabled:!u,children:`Add`})]}),n.length>0&&(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsx)(H,{type:`button`,variant:`ghost`,size:`compact`,onClick:h,disabled:g,tintColor:`var(--content-tertiary)`,children:`Reset to Defaults`})}),n.length>0&&(0,Q.jsx)(`ul`,{className:`space-y-2`,children:n.map(e=>(0,Q.jsxs)(`li`,{className:`flex items-center justify-between rounded-md border border-[var(--border-base)] px-3 py-2 text-body-medium-lighter`,children:[(0,Q.jsx)(`span`,{className:`font-mono text-[var(--content-default)]`,children:e}),(0,Q.jsx)(H,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,Q.jsx)(He,{}),onClick:()=>m(e),"aria-label":`Remove ${e}`})]},e))})]})]})]})}function xt(e){return e===`preview`?`preview`:`stable`}function St(e){if(!e)return`Unknown`;let t=new Date(e);return Number.isNaN(t.getTime())?`Unknown`:t.toLocaleString(void 0,{year:`numeric`,month:`short`,day:`numeric`,hour:`numeric`,minute:`2-digit`})}function Ct(e){return e.source_release_version?`Stable ${e.source_release_version}`:e.snapshot_name}function wt(e){return e.filter(e=>e.ready_to_use)}function Tt(e){return e?.feature_enabled===!1}function Et({assistantId:e,onComplete:t}){let n=we.use.previewChannel(),r=C(),[i,a]=(0,Z.useState)(),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(`restore_backup`),[f,p]=(0,Z.useState)(``),m=A({path:{assistant_id:e}}),h=k({path:{assistant_id:e}}),g=O({path:{id:e}}),{data:_,isLoading:v,isError:y}=w({...m,enabled:n,retry:!1}),b=_?.preview_backups??[],x=(0,Z.useMemo)(()=>wt(b),[b]),S=x[0],E=x.find(e=>e.snapshot_name===f)??S,D=()=>{r.invalidateQueries({queryKey:h}),r.invalidateQueries({queryKey:g}),t?.()},j=T(B()),M=T(P()),N=xt(_?.current_channel),ee=j.isPending||M.isPending,F=ee||Tt(_)||!_?.latest_preview_release,I=u===`restore_backup`&&!E;if((0,Z.useEffect)(()=>{a(N===`preview`?`release-channel`:void 0)},[N]),!n)return null;let L=_?.standard_upgrade_available??!1;return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(U.Root,{type:`single`,collapsible:!0,value:i,onValueChange:e=>a(e||void 0),className:`mt-5 border-t border-[var(--border-base)] pt-5`,children:(0,Q.jsxs)(U.Item,{value:`release-channel`,id:`preview-release-channel`,children:[(0,Q.jsxs)(U.Trigger,{className:`group justify-between gap-3`,children:[(0,Q.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Q.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-secondary)]`,children:`Release Channel`}),_&&(0,Q.jsx)(G,{tone:N===`preview`?`warning`:`neutral`,children:N===`preview`?`Preview`:`Stable`})]}),(0,Q.jsx)(Re,{className:`h-4 w-4 shrink-0 text-[var(--content-tertiary)] transition-transform group-data-[state=open]:rotate-180`})]}),(0,Q.jsx)(U.Content,{children:(0,Q.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[v&&(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(Y,{className:`h-4 w-4 animate-spin`}),`Loading release channel...`]}),y&&(0,Q.jsx)(W,{tone:`error`,title:`Could not load release channel status`,children:`Refresh this page before changing release channels.`}),_&&(0,Q.jsxs)(Q.Fragment,{children:[Tt(_)&&(0,Q.jsx)(W,{tone:`neutral`,title:`Preview channel is unavailable`,children:`The Preview channel is not enabled for this assistant.`}),N===`stable`?(0,Q.jsx)(Dt,{status:_,isChangingChannel:ee,optInDisabled:F,onOptIn:()=>s(!0)}):(0,Q.jsx)(Ot,{status:_,isChangingChannel:ee,onOptOut:()=>{let e=S;p(e?.snapshot_name??``),d(e?`restore_backup`:L?`standard_upgrade`:`restore_backup`),l(!0)}})]})]})})]})}),(0,Q.jsx)(At,{open:o,isPending:j.isPending,previewVersion:_?.latest_preview_release?.version,onConfirm:async()=>{try{let t=await j.mutateAsync({path:{assistant_id:e}});J.success(t.detail||`Preview channel enabled.`),s(!1),D()}catch(e){J.error(V(e,void 0,`Could not enable Preview channel.`))}},onCancel:()=>s(!1)}),(0,Q.jsx)(jt,{open:c,backups:x,mode:u,selectedSnapshotName:E?.snapshot_name??``,isPending:M.isPending,restoreModeDisabled:I,standardUpgradeAvailable:L,onModeChange:d,onSnapshotChange:p,onConfirm:async()=>{if(!I)try{let t=await M.mutateAsync({path:{assistant_id:e},body:u===`restore_backup`?{mode:`restore_backup`,snapshot_name:E?.snapshot_name}:{mode:`standard_upgrade`}});J.success(t.detail||`Stable channel enabled.`),l(!1),D()}catch(e){J.error(V(e,void 0,`Could not switch to Stable.`))}},onCancel:()=>l(!1)})]})}function Dt({status:e,isChangingChannel:t,optInDisabled:n,onOptIn:r}){return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsx)(kt,{status:e}),!e.latest_preview_release&&(0,Q.jsx)(W,{tone:`neutral`,title:`No Preview release is available`,children:`Stable remains the only available release channel.`}),(0,Q.jsx)(H,{variant:`outlined`,leftIcon:t?(0,Q.jsx)(Y,{className:`animate-spin`}):(0,Q.jsx)(nt,{}),disabled:n,onClick:r,children:`Opt in to Preview`})]})}function Ot({status:e,isChangingChannel:t,onOptOut:n}){return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsx)(kt,{status:e}),(0,Q.jsx)(H,{variant:`outlined`,leftIcon:t?(0,Q.jsx)(Y,{className:`animate-spin`}):(0,Q.jsx)(Oe,{}),disabled:t,onClick:n,children:`Switch back to Stable`})]})}function kt({status:e}){return(0,Q.jsxs)(`dl`,{className:`grid gap-3 text-body-medium-lighter sm:grid-cols-2`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`dt`,{className:`text-[var(--content-tertiary)]`,children:`Latest Stable`}),(0,Q.jsx)(`dd`,{className:`break-all text-[var(--content-default)]`,children:e.latest_stable_release?.version??`None`})]}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`dt`,{className:`text-[var(--content-tertiary)]`,children:`Latest Preview`}),(0,Q.jsx)(`dd`,{className:`break-all text-[var(--content-default)]`,children:e.latest_preview_release?.version??`None`})]})]})}function At({open:e,isPending:t,previewVersion:n,onConfirm:r,onCancel:i}){return(0,Q.jsx)(q.Root,{open:e,onOpenChange:e=>!e&&i(),children:(0,Q.jsxs)(q.Content,{size:`md`,hideCloseButton:t,children:[(0,Q.jsxs)(q.Header,{children:[(0,Q.jsx)(q.Title,{icon:We,children:`Opt in to Preview`}),(0,Q.jsx)(q.Description,{children:`Preview releases may be unstable. A 90-day safety backup is taken before the image changes.`})]}),(0,Q.jsx)(q.Body,{children:(0,Q.jsxs)(`div`,{className:`space-y-3`,children:[(0,Q.jsx)(W,{tone:`warning`,title:`Data loss may occur when returning to Stable`,children:`Preview data may not be compatible with the Stable channel. The safety backup lets you restore the Stable-channel data that existed before opt-in.`}),(0,Q.jsxs)(`ol`,{className:`list-decimal space-y-2 pl-5 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,Q.jsx)(`li`,{children:`Create and verify a Preview safety backup.`}),(0,Q.jsxs)(`li`,{children:[`Switch to Preview image `,n??`latest`,`.`]}),(0,Q.jsx)(`li`,{children:`Run the normal upgrade path and wait for health.`})]})]})}),(0,Q.jsxs)(q.Footer,{children:[(0,Q.jsx)(H,{variant:`outlined`,disabled:t,onClick:i,children:`Cancel`}),(0,Q.jsx)(H,{variant:`primary`,disabled:t,leftIcon:t?(0,Q.jsx)(Y,{className:`animate-spin`}):(0,Q.jsx)(nt,{}),onClick:r,children:t?`Switching...`:`Take Backup and Switch`})]})]})})}function jt({open:e,backups:t,mode:n,selectedSnapshotName:r,isPending:i,restoreModeDisabled:a,standardUpgradeAvailable:o,onModeChange:s,onSnapshotChange:c,onConfirm:l,onCancel:u}){return(0,Q.jsx)(q.Root,{open:e,onOpenChange:e=>!e&&u(),children:(0,Q.jsxs)(q.Content,{size:`md`,hideCloseButton:i,children:[(0,Q.jsxs)(q.Header,{children:[(0,Q.jsx)(q.Title,{icon:We,children:`Switch back to Stable`}),(0,Q.jsx)(q.Description,{children:`Choose how this assistant should leave the Preview channel.`})]}),(0,Q.jsx)(q.Body,{children:(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsxs)(ce,{value:n,onValueChange:s,disabled:i,"aria-label":`Stable channel return method`,children:[(0,Q.jsx)(se,{value:`restore_backup`,disabled:t.length===0,label:`Restore safety backup`,helperText:`Return to the Stable-channel data captured before Preview opt-in.`}),(0,Q.jsx)(se,{value:`standard_upgrade`,disabled:!o,label:`Switch to Stable without restoring backup`,helperText:o?`Keep the current data and directly switch to the Stable image.`:`Unavailable because the latest Stable release is older than this assistant's Preview release.`})]}),n===`restore_backup`&&t.length>0&&(0,Q.jsxs)(`label`,{className:`flex flex-col gap-1 text-body-medium-default text-[var(--content-secondary)]`,children:[`Safety backup`,(0,Q.jsx)(oe,{value:r,onChange:c,disabled:i,options:t.map(e=>({value:e.snapshot_name,label:`${Ct(e)} - ${St(e.created_at)}`}))})]}),n===`restore_backup`&&t.length===0&&!o&&(0,Q.jsx)(W,{tone:`error`,title:`Stable requires a safety backup`,children:`This Preview release is newer than the latest Stable release, so switching directly is blocked. Wait for a newer Stable release, or run Vellum Doctor if the safety backup is missing.`}),n===`standard_upgrade`&&(0,Q.jsx)(W,{tone:`error`,title:`Preview data may not survive this`,children:`Switching directly to the Stable image without restoring the safety backup may cause data loss or leave the assistant unusable if Preview data is incompatible with Stable.`})]})}),(0,Q.jsxs)(q.Footer,{children:[(0,Q.jsx)(H,{variant:`outlined`,disabled:i,onClick:u,children:`Cancel`}),(0,Q.jsx)(H,{variant:n===`standard_upgrade`?`danger`:`primary`,disabled:i||a||n===`standard_upgrade`&&!o,leftIcon:i?(0,Q.jsx)(Y,{className:`animate-spin`}):(0,Q.jsx)(Ce,{}),onClick:l,children:i?`Switching...`:`Switch to Stable`})]})]})})}function Mt(){return l()?m.onboarding.prechat:u()?m.onboarding.welcome:m.onboarding.privacy}function Nt({assistantId:e}){let t=n(),[r,i]=(0,Z.useState)(!1);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(H,{variant:`dangerOutline`,onClick:()=>i(!0),className:`shrink-0`,children:`Retire Assistant`}),(0,Q.jsx)(le,{open:r,title:`Retire Assistant`,message:`This will permanently retire this assistant and all of its data. You will need to go through the onboarding flow again to create a new one. This action cannot be undone.`,confirmLabel:`Retire`,destructive:!0,onConfirm:async()=>{i(!1);try{let n=f();if(u()&&n&&p(n)){let n=await d(e);n.ok?(h(),J.success(`Assistant retired.`),t(Mt())):J.error(n.error||`Failed to retire assistant.`)}else{let n=await je(e);if(n.ok||n.status===404)h(),J.success(`Assistant retired.`),t(Mt());else{let e=typeof n.error?.detail==`string`?n.error.detail:`Failed to retire assistant.`;J.error(e)}}}catch{J.error(`Failed to retire assistant.`)}},onCancel:()=>i(!1)})]})}var Pt=`UTC.Africa/Cairo.Africa/Johannesburg.Africa/Lagos.Africa/Nairobi.America/Anchorage.America/Argentina/Buenos_Aires.America/Bogota.America/Chicago.America/Denver.America/Halifax.America/Lima.America/Los_Angeles.America/Mexico_City.America/New_York.America/Phoenix.America/Santiago.America/Sao_Paulo.America/Toronto.America/Vancouver.Asia/Bangkok.Asia/Dubai.Asia/Hong_Kong.Asia/Jakarta.Asia/Jerusalem.Asia/Karachi.Asia/Kolkata.Asia/Kuala_Lumpur.Asia/Manila.Asia/Seoul.Asia/Shanghai.Asia/Singapore.Asia/Taipei.Asia/Tokyo.Australia/Melbourne.Australia/Perth.Australia/Sydney.Europe/Amsterdam.Europe/Athens.Europe/Berlin.Europe/Brussels.Europe/Dublin.Europe/Istanbul.Europe/Lisbon.Europe/London.Europe/Madrid.Europe/Moscow.Europe/Paris.Europe/Rome.Europe/Stockholm.Europe/Vienna.Europe/Warsaw.Europe/Zurich.Pacific/Auckland.Pacific/Honolulu`.split(`.`);function Ft(){let e=Intl;if(typeof e.supportedValuesOf==`function`)try{let t=e.supportedValuesOf(`timeZone`);if(t.length>0)return[...t].sort()}catch{}return[...Pt].sort()}function It(e){let t=e.split(`/`),n=(t[t.length-1]??e).replace(/_/g,` `),r=t.length>1?(t[0]??``).replace(/_/g,` `):``,i=0,a=``;try{let t=new Intl.DateTimeFormat(`en-US`,{timeZone:e,timeZoneName:`shortOffset`}).formatToParts(new Date).find(e=>e.type===`timeZoneName`)?.value??`GMT`;a=t.startsWith(`GMT`)||t.startsWith(`UTC`)?t:`GMT ${t}`;let n=t.match(/([+-])(\d{1,2})(?::(\d{2}))?/);if(n){let e=n[1]===`-`?-1:1,t=parseInt(n[2]??`0`,10),r=parseInt(n[3]??`0`,10);i=e*(t*60+r)}}catch{return null}return{identifier:e,city:n,region:r,offsetLabel:a,offsetMinutes:i}}function Lt(e){try{return new Intl.DateTimeFormat(`en-US`,{timeZone:e,hour:`numeric`,minute:`2-digit`,hour12:!0}).format(new Date)}catch{return``}}function Rt(e){if(!e)return`Not set`;try{let t=new Intl.DateTimeFormat(`en-US`,{timeZone:e,timeZoneName:`long`}).formatToParts(new Date).find(e=>e.type===`timeZoneName`)?.value;if(t)return t}catch{}return e.replace(/_/g,` `)}function zt({value:e,onChange:t}){let[n,r]=(0,Z.useState)(``),[i,a]=(0,Z.useState)(``),[o,s]=(0,Z.useState)(!1),c=(0,Z.useRef)(null),l=(0,Z.useRef)(null),u=(0,Z.useMemo)(()=>Ft().map(e=>It(e)).filter(e=>e!==null),[]);(0,Z.useEffect)(()=>{let e=window.setTimeout(()=>{a(n.trim().toLowerCase())},200);return()=>window.clearTimeout(e)},[n]),(0,Z.useEffect)(()=>{if(!o)return;let e=e=>{c.current&&!c.current.contains(e.target)&&s(!1)};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[o]);let d=(0,Z.useMemo)(()=>i?u.filter(e=>e.city.toLowerCase().includes(i)||e.region.toLowerCase().includes(i)||e.offsetLabel.toLowerCase().includes(i)||e.identifier.toLowerCase().includes(i)):u,[u,i]),f=(0,Z.useMemo)(()=>{if(!e)return``;let t=e.split(`/`);return(t[t.length-1]??e).replace(/_/g,` `)},[e]),p=e=>{t(e),r(``),s(!1),l.current?.blur()};return(0,Q.jsxs)(`div`,{ref:c,className:`space-y-3`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1.5 md:flex-row md:items-center md:justify-between md:gap-4`,children:[(0,Q.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Closest city`}),(0,Q.jsxs)(`div`,{className:`relative w-full md:max-w-[280px]`,children:[(0,Q.jsx)(K,{ref:l,type:`text`,value:n,placeholder:f||`Search city or country...`,onChange:e=>{r(e.target.value),s(!0)},onFocus:()=>s(!0),onKeyDown:e=>{e.key===`Escape`&&(r(``),s(!1),l.current?.blur())},fullWidth:!0}),o&&d.length>0&&(0,Q.jsx)(`div`,{className:`absolute left-0 right-0 top-full z-20 mt-1 max-h-[240px] overflow-y-auto rounded-md border border-[var(--border-base)] bg-[var(--surface-lift)] shadow-lg`,children:d.slice(0,200).map(t=>(0,Q.jsxs)(`button`,{type:`button`,onClick:()=>p(t.identifier),className:`flex w-full cursor-pointer items-center justify-between gap-3 px-3 py-2 text-left text-body-medium-lighter transition-colors ${t.identifier===e?`bg-[var(--surface-active)] text-[var(--content-default)]`:`text-[var(--content-default)] hover:bg-[var(--surface-active)]`}`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`div`,{className:`truncate text-body-medium-default`,children:t.city}),t.region&&(0,Q.jsx)(`div`,{className:`truncate text-body-small-default text-[var(--content-tertiary)]`,children:t.region})]}),(0,Q.jsxs)(`div`,{className:`flex shrink-0 flex-col items-end gap-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(`span`,{children:Lt(t.identifier)}),(0,Q.jsx)(`span`,{children:t.offsetLabel})]})]},t.identifier))})]})]}),(0,Q.jsx)(gt,{}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[(0,Q.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Time zone`}),(0,Q.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:Rt(e)})]})]})}function Bt(e){return/\d{2,}$/.test(e)}var Vt={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 Ht(){let{data:e,error:t,response:n}=await _.get({url:`/v1/user/me/`,throwOnError:!1});if(te(n,t,`Failed to load profile.`),!n.ok)throw new ne(n.status,V(t,n,`Failed to load profile.`));return e}function Ut(e){if(e&&typeof e==`object`){let t=e.username;if(Array.isArray(t)&&t.length>0){let e=t[0];if(typeof e==`string`)return{code:null,message:e};if(e&&typeof e==`object`){let t=e.code,n=e.string??e.message;return{code:typeof t==`string`?t:null,message:typeof n==`string`?n:`Please choose a different handle.`}}}let n=e.detail;if(typeof n==`string`)return{code:null,message:n}}return{code:null,message:`Please choose a different handle.`}}async function Wt(e){let{data:t,error:n,response:r}=await _.patch({url:`/v1/user/me/`,body:e,throwOnError:!1});if(!r)return{kind:`error`,message:V(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 e=n;return{kind:`taken`,message:e&&typeof e.detail==`string`&&e.detail||Vt.taken}}if(r.status===400){let{code:e,message:t}=Ut(n);return{kind:`invalid`,code:e,message:t}}return{kind:`error`,message:V(n,r,`Failed to save profile.`)}}async function Gt(e,t){let{data:n,error:r,response:i}=await _.get({url:`/v1/user/username-available/`,query:{username:e},signal:t,throwOnError:!1});if(te(i,r,`Failed to check handle availability.`),!i.ok||!n)throw new ne(i.status,i.status===429?`Too many checks — try again in a moment.`:V(r,i,`Failed to check handle availability.`));return n}var Kt=typeof window>`u`?{baseUrl:`http://localhost`}:{},qt=Vt;function Jt(e){if(e&&typeof e==`object`){let t=e.handle;if(Array.isArray(t)&&t.length>0){let e=t[0];if(typeof e==`string`)return{code:null,message:e};if(e&&typeof e==`object`){let t=e.code,n=e.string??e.message;return{code:typeof t==`string`?t:null,message:typeof n==`string`?n:`Please choose a different handle.`}}}let n=e.detail;if(typeof n==`string`)return{code:null,message:n}}return{code:null,message:`Please choose a different handle.`}}async function Yt(e,t){let{data:n,error:r,response:i}=await v({...Kt,path:{id:e},body:{handle:t},throwOnError:!1});if(!i)return{kind:`error`,message:V(r,void 0,`Failed to save handle.`)??`Failed to save handle.`};if(i.ok&&n)return{kind:`ok`,data:n};if(i.status===409){let e=r;return{kind:`taken`,message:e&&typeof e.detail==`string`&&e.detail||qt.taken}}if(i.status===400){let{code:e,message:t}=Jt(r);return{kind:`invalid`,code:e,message:t}}return{kind:`error`,message:V(r,i,`Failed to save handle.`)}}async function Xt(e,t,n){let{data:r,error:i,response:a}=await S({...Kt,path:{assistant_id:e},query:{handle:t},signal:n,throwOnError:!1});if(te(a,i,`Failed to check handle availability.`),!a.ok||!r)throw new ne(a.status,a.status===429?`Too many checks — try again in a moment.`:V(i,a,`Failed to check handle availability.`));return{available:r.available,code:r.code??null,message:r.message??null}}var Zt=300,Qt=1400;function $t({initialHandle:e,inputLabel:t,helperText:n,idleHelperText:r,checkAvailable:i,save:a,onSaved:o,saveSuccessToast:s,fieldId:c}){let[l,u]=(0,Z.useState)(e),[d,f]=(0,Z.useState)(null),[p,m]=(0,Z.useState)(!1),[h,g]=(0,Z.useState)(`idle`),[_,v]=(0,Z.useState)(null),y=xe(),b=(0,Z.useRef)(null),x=(0,Z.useMemo)(()=>l.trim().toLowerCase(),[l]),S=x===e.toLowerCase();(0,Z.useEffect)(()=>{if(S||x.length===0){m(!1),b.current?.abort();return}let e=new AbortController;b.current?.abort(),b.current=e,m(!0);let t=window.setTimeout(async()=>{try{let t=await i(x,e.signal);e.signal.aborted||f(t)}catch(t){e.signal.aborted||v(t instanceof Error?t.message:`Couldn't check availability.`)}finally{e.signal.aborted||m(!1)}},Zt);return()=>{window.clearTimeout(t),e.abort()}},[x,S,i]);let C=(()=>{if(_)return _;if(d&&!d.available){let e=d.code;return d.message??(e?qt[e]:`Please choose a different handle.`)}return null})(),w=C?n:S?r??null:p?`Checking availability…`:d?.available?`Available.`:null,T=!S&&!p&&d?.available!==!1&&h!==`saving`,E=(0,Z.useCallback)(async()=>{if(!T)return;g(`saving`),v(null);let e=await a(x);if(e.kind===`ok`){g(`saved`),o(e.data),J.success(s),window.setTimeout(()=>g(`idle`),Qt);return}if(e.kind===`taken`){g(`idle`),f({available:!1,code:`taken`,message:e.message});return}if(e.kind===`invalid`){g(`idle`),f({available:!1,code:e.code,message:e.message});return}g(`error`),v(e.message),J.error(e.message)},[T,x,o,a,s]),D=(()=>{if(S&&l.length>0||l.length===0)return null;let e=p?`checking`:d?.available?`available`:d?.available===!1?`invalid`:null;return e?(0,Q.jsx)(ze,{mode:`wait`,initial:!1,children:(0,Q.jsxs)(be.span,{initial:y?!1:{opacity:0,scale:.85},animate:{opacity:1,scale:1},exit:y?void 0:{opacity:0,scale:.85},transition:{duration:.14,ease:`easeOut`},className:`flex items-center`,"aria-hidden":e!==`available`&&e!==`invalid`,children:[e===`checking`&&(0,Q.jsx)(Y,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),e===`available`&&(0,Q.jsx)(ke,{className:`h-4 w-4 text-[var(--system-positive-strong)]`,"aria-label":`Available`}),e===`invalid`&&(0,Q.jsx)(Ee,{className:`h-4 w-4 text-[var(--system-negative-strong)]`,"aria-label":`Not available`})]},e)}):null})(),O=(()=>{switch(h){case`saving`:return(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,Q.jsx)(Y,{className:`h-3.5 w-3.5 animate-spin`,"aria-hidden":!0}),`Saving…`]});case`saved`:return(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,Q.jsx)(ke,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Saved`]});default:return`Save`}})();return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsx)(K,{label:t,value:l,onChange:e=>{u(e.target.value.replace(/\s+/g,``)),f(null),v(null)},autoCorrect:`off`,autoCapitalize:`none`,spellCheck:!1,maxLength:30,leftIcon:(0,Q.jsx)(`span`,{className:`select-none font-mono text-[var(--content-tertiary)]`,"aria-hidden":!0,children:`@`}),rightIcon:D,errorText:C??void 0,helperText:w??void 0,"aria-invalid":!!C,fullWidth:!0,"data-testid":`${c}-input`}),(!S||h!==`idle`)&&(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsx)(H,{variant:`primary`,size:`compact`,onClick:E,disabled:!T,"aria-live":`polite`,"data-testid":`${c}-save`,children:O})})]})}function en({initial:e,onSaved:t}){let n=g.use.refreshSession(),r=Bt(e.username)?`Your handle was auto-generated at signup — pick one you like.`:void 0,i=(0,Z.useCallback)(async e=>await Wt({username:e}),[]),a=(0,Z.useCallback)((e,t)=>Gt(e,t),[]),o=(0,Z.useCallback)(e=>{t(e),n()},[t,n]);return(0,Q.jsx)($t,{initialHandle:e.username,inputLabel:`User handle`,helperText:`Lowercase letters, digits, hyphens, and underscores. 3–30 characters.`,idleHelperText:r,checkAvailable:a,save:i,onSaved:o,saveSuccessToast:`Profile updated.`,fieldId:`user-handle`})}function tn({assistant:e,onSaved:t}){let n=e.handle??``,i=w({...I({path:{assistant_id:e.id}})}).data?.results?.[0],a=!!i&&i.subdomain.toLowerCase()===n.toLowerCase(),o=n.length===0?`Your assistant doesn't have a handle yet — claim one to make it mentionable.`:void 0,s=(0,Z.useCallback)(async t=>await Yt(e.id,t),[e.id]),c=(0,Z.useCallback)((t,n)=>Xt(e.id,t,n),[e.id]);return a?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)(K,{label:`Assistant handle`,value:n,readOnly:!0,disabled:!0,leftIcon:(0,Q.jsx)(`span`,{className:`select-none font-mono text-[var(--content-tertiary)]`,"aria-hidden":!0,children:`@`}),fullWidth:!0,"data-testid":`assistant-handle-input`}),(0,Q.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[`Your assistant's handle is locked because it's used as its email subdomain. To change it,`,` `,(0,Q.jsx)(r,{to:`${m.settings.ai}?release=1#email`,className:`text-[var(--content-link)] underline hover:text-[var(--content-link-hover)]`,children:`release the subdomain`}),` `,`first.`]})]}):(0,Q.jsx)($t,{initialHandle:n,inputLabel:`Assistant handle`,helperText:`Lowercase letters, digits, hyphens, and underscores. 3–30 characters.`,idleHelperText:o,checkAvailable:c,save:s,onSaved:t,saveSuccessToast:`Assistant handle updated.`,fieldId:`assistant-handle`})}function nn(){return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,"aria-busy":!0,"aria-live":`polite`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)(`div`,{className:`h-3 w-16 animate-pulse rounded bg-[var(--surface-muted)]`}),(0,Q.jsx)(`div`,{className:`h-9 w-full animate-pulse rounded-md bg-[var(--surface-muted)]`}),(0,Q.jsx)(`div`,{className:`h-3 w-72 animate-pulse rounded bg-[var(--surface-muted)]`})]}),(0,Q.jsx)(`div`,{className:`h-9 w-full animate-pulse rounded-md bg-[var(--surface-muted)]`}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,Q.jsx)(`div`,{className:`h-3 w-60 animate-pulse rounded bg-[var(--surface-muted)]`}),(0,Q.jsx)(`div`,{className:`h-7 w-16 animate-pulse rounded-md bg-[var(--surface-muted)]`})]}),(0,Q.jsx)(`span`,{className:`sr-only`,children:`Loading your profile…`})]})}function rn({assistant:e}={}){let[t,n]=(0,Z.useState)(null),[r,i]=(0,Z.useState)(null),a=xe(),[o,s]=(0,Z.useState)(e??null);return(0,Z.useEffect)(()=>{s(e??null)},[e]),(0,Z.useEffect)(()=>{let e=!1;return Ht().then(t=>{e||n(t)}).catch(t=>{e||i(t instanceof Error?t.message:`Failed to load profile.`)}),()=>{e=!0}},[]),(0,Q.jsx)(X,{title:`Profile`,subtitle:`Manage your user and assistant public handles.`,children:r?(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:r}):t?(0,Q.jsxs)(be.div,{initial:a?!1:{opacity:0,y:4},animate:{opacity:1,y:0},transition:{duration:.22,ease:`easeOut`},className:`flex flex-col gap-6`,children:[(0,Q.jsx)(en,{initial:t,onSaved:n}),o&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`border-t border-[var(--border-subtle)]`}),(0,Q.jsx)(tn,{assistant:o,onSaved:s})]})]}):(0,Q.jsx)(nn,{})})}var an=3e4;function on(e){return e?.state===`crash_loop`&&e?.pod_error_kind===`out_of_storage`}function sn({assistantId:e}){let t=we.use.doctor(),{data:n}=w({queryKey:[`assistant-out-of-storage`,e],enabled:!!e,refetchInterval:an,retry:!1,queryFn:async()=>e?(await x({path:{id:e},throwOnError:!1})).data??null:null});return on(n)?(0,Q.jsx)(W,{tone:`warning`,title:`Your assistant has run out of storage.`,actions:(0,Q.jsxs)(`div`,{className:`flex gap-2`,children:[t&&(0,Q.jsx)(H,{asChild:!0,variant:`outlined`,size:`compact`,children:(0,Q.jsx)(r,{to:`${m.settings.debug}?tab=doctor`,children:`Vellum Doctor`})}),(0,Q.jsx)(H,{asChild:!0,variant:`outlined`,size:`compact`,children:(0,Q.jsx)(`a`,{href:Je,target:`_blank`,rel:`noopener noreferrer`,children:`Community support`})})]}),children:t?`Free up disk space with Vellum Doctor. If the issue persists, ask the community for help.`:`Your assistant has run out of disk space. Ask the community for help.`}):null}function cn(){let e=we.use.velvet(),[t,n]=(0,Z.useState)(()=>Pe({velvetEnabled:e}));return(0,Z.useEffect)(()=>{n(Pe({velvetEnabled:e}))},[e]),(0,Z.useEffect)(()=>o(`theme`,()=>{n(Pe({velvetEnabled:e}))}),[e]),(0,Z.useEffect)(()=>{Te(t)},[t]),(0,Q.jsx)(X,{title:`Theme`,children:(0,Q.jsx)(`div`,{className:`max-w-[360px]`,children:(0,Q.jsx)(ue,{ariaLabel:`Theme`,value:t,onChange:e=>{n(e),Ie(e),Te(e)},items:[{value:`system`,label:`System`,icon:(0,Q.jsx)(De,{className:`h-4 w-4`})},{value:`light`,label:`Light`,icon:(0,Q.jsx)(qe,{className:`h-4 w-4`})},{value:`dark`,label:`Dark`,icon:(0,Q.jsx)(Ge,{className:`h-4 w-4`})},...e?[{value:`velvet`,label:`Velvet`,icon:(0,Q.jsx)(Ve,{className:`h-4 w-4`})}]:[]]})})})}function ln(){let[e,t]=(0,Z.useState)(()=>s(`timezone`,``));return(0,Q.jsx)(X,{title:`Timezone`,subtitle:`Used when displaying times and scheduling reminders.`,children:(0,Q.jsx)(zt,{value:e,onChange:e=>{t(e),c(`timezone`,e)}})})}function un(){let{assistant:e,assistantLoading:t,healthz:n,healthzLoading:r,healthzPolling:i,refetch:a,refetchUntilResized:o}=$e(),s=Be.use.accountDeletion(),c=Be.use.multiPlatformAssistant(),l=Be.use.settingsSleepPolicy(),d=g.use.isLoggedIn(),f=e?.is_local&&!u()?null:e;return(0,Z.useEffect)(()=>{!e||window.location.hash!==`#storage-resources`||requestAnimationFrame(()=>{document.getElementById(`storage-resources`)?.scrollIntoView({block:`start`})})},[e]),(0,Q.jsxs)(`div`,{className:`max-w-[940px] space-y-4`,children:[f&&(0,Q.jsx)(sn,{assistantId:f.id}),(0,Q.jsx)(X,{title:`General`,children:(0,Q.jsx)(et,{assistant:f,assistantLoading:t,healthz:n,healthzLoading:r})}),d&&(0,Q.jsx)(rn,{assistant:f}),e&&(0,Q.jsx)(ft,{assistant:e,healthz:n,healthzLoading:r,healthzPolling:i,refetch:a,refetchUntilResized:o}),(0,Q.jsx)(cn,{}),f&&(0,Q.jsxs)(X,{title:`Software Updates`,children:[(0,Q.jsx)(dt,{assistantId:f.id,currentVersion:n?.version??f.current_release_version??null,releaseChannel:f.release_channel,onUpgradeComplete:()=>{a()}}),(0,Q.jsx)(Et,{assistantId:f.id,onComplete:()=>{a()}})]}),(0,Q.jsx)(ht,{}),f&&l&&(0,Q.jsx)(X,{title:`Sleep Policy`,subtitle:`Control how long this assistant stays awake when idle.`,children:(0,Q.jsx)(st,{assistantId:f.id})}),(0,Q.jsx)(ln,{}),(0,Q.jsx)(bt,{}),c&&(0,Q.jsx)(it,{}),f&&(0,Q.jsx)(X,{variant:`danger`,title:`Retire Assistant`,subtitle:`Permanently retire this assistant and delete all associated data.`,children:(0,Q.jsx)(Nt,{assistantId:f.id})}),s&&(0,Q.jsx)(pt,{})]})}export{un as GeneralPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BD5vCCEH.js";import{d as n,h as r}from"./chunk-5KNZJZUH-DdB2N3P3.js";import{n as i,r as a}from"./exports-rSCybWxk.js";import{u as ee}from"./native-biometric-BPPNP_Sl.js";import{d as o,f as te,g as ne,h as re,l as ie,p as ae}from"./local-mode-BO8mMNsq.js";import{r as s}from"./routes-CHnF8N9D.js";import{n as c}from"./auth-store-Dy6ebqwf.js";import{t as l}from"./jsx-runtime-2-RJdKf7.js";import{i as u}from"./api-errors-BK1-O3Nx.js";import{a as d,i as oe}from"./avatar-api-IlDWh3Gv.js";import{t as f}from"./avatar-svg-compositor-CwF7LSJ9.js";import{t as p}from"./button-aOWst_o4.js";import{t as m}from"./progress-bar-CgM2b0gB.js";import{Ar as se,Dr as ce,Er as h,Jr as g,Kr as le,Mr as ue,Or as de,Pr as fe,Qr as _,Xr as v,kr as y,ni as b,qr as pe,vr as x}from"./index-aLxsGtfC.js";import{BUNDLED_COMPONENTS as S}from"./avatar-bundled-components-zv0dj2l3.js";import{t as C}from"./onboarding-layout-9Hg63IFb.js";import{n as me,r as he,t as ge}from"./signals-B8JnlKDT.js";var w=e(t(),1);function _e(e){let t=e=>e[Math.floor(Math.random()*e.length)];return{bodyShape:t(e.bodyShapes).id,eyeStyle:t(e.eyeStyles).id,color:t(e.colors).id}}var T=l(),E=3e3,D=800,O=3e5,k=null,A={initializing:0,provisioning:.33,connecting:.66,ready:1},j=1500,M={initializing:`Getting things ready…`,provisioning:`Setting up your assistant…`,connecting:`Connecting to your assistant…`,ready:`Ready`};function N(e,t,n){if(e>=t)return t;let r=1-(1-Math.min(1,n/j))**3;return e+(t-e)*r}function P(e){if(e.isAuthLoading)return{kind:`wait`};if(!e.isLoggedIn)return{kind:`redirect`,to:s.account.login};if(e.onboardingCompleted&&!e.isReplay)return{kind:`redirect`,to:s.assistant};if(e.isLocalMode)return{kind:`proceed`};let t=e.tosAccepted&&e.aiDataConsentAccepted;return!e.cameFromPrivacyScreen&&!t?{kind:`redirect`,to:h()}:{kind:`proceed`}}function F(){let e=n(),[t]=r(),l=t.get(`replay`)===`1`,h=t.get(`hosting`),j=o()&&h!==null&&h!==`vellum-cloud`,F=c.use.user()?.id??null,I=c.use.isLoggedIn(),L=c.use.isLoading(),{lifecycle:{checkAssistant:R}}=x(),[,z]=_(),[B]=(0,w.useState)(()=>_e(S)),V=(0,w.useMemo)(()=>{let e=f(S,B.bodyShape,B.eyeStyle,B.color,320);return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(e)}`},[B]),[H,U]=(0,w.useState)(`initializing`),[W,G]=(0,w.useState)(null),[ve,K]=(0,w.useState)(!1),[ye,be]=(0,w.useState)(0),[xe,q]=(0,w.useState)(0),[Se,J]=(0,w.useState)(0),Y=(0,w.useRef)(H),X=(0,w.useRef)(0),Z=(0,w.useRef)(0),Q=(0,w.useRef)(0),$=(0,w.useCallback)(e=>{X.current=Q.current,Z.current=Date.now(),Y.current=e,U(e),J(e=>e+1)},[]);return(0,w.useEffect)(()=>{let t=me(F),n=P({isAuthLoading:L,isLoggedIn:I,isLocalMode:o(),isReplay:l,onboardingCompleted:pe(),tosAccepted:v(),aiDataConsentAccepted:le(),cameFromPrivacyScreen:t});if(n.kind===`redirect`){e(n.to,{replace:!0});return}if(n.kind===`wait`)return;K(!1);let r=!1,c=null,f=null,p=Date.now(),m=g(),h=()=>{try{b(``)}catch(e){i(e,{tags:{context:`onboarding_mark_completed`}})}he(F),q(1),Q.current=1,X.current=1,U(`ready`),Y.current=`ready`,f=setTimeout(()=>{r||(async()=>{if(j||await R(),!r){if(ee()){try{z(!0)}catch(e){i(e,{tags:{context:`hatching_mark_onboarding_completed_native`}})}ge(),e(`${s.assistant}?onboarding=1`,{replace:!0});return}e(l?`${s.onboarding.prechat}?replay=1`:s.onboarding.prechat,{replace:!0})}})()},D)},_=async()=>{if($(`provisioning`),l){x(0);return}if(j){try{k||=ie();let e=await k;if(k=null,r)return;if(!e.ok){G(e.error??`Failed to hatch local assistant.`);return}await te(),e.assistantId&&ne(e.assistantId),await ae(),h()}catch{if(k=null,r)return;G(`Failed to hatch local assistant. Check CLI logs for details.`)}return}try{let e=await fe(m?{version:m}:void 0);if(r)return;if(!e.ok){if(a(`Onboarding hatch request failed`,{level:`warning`,extra:{status:e.status,error:e.error}}),de(e.status,e.error)){G(ce),K(!0);return}if(!se(e.status)){G(u(e.error,void 0,`Failed to start your assistant. Please try again.`));return}}}catch(e){if(i(e,{tags:{context:`onboarding_hatch_assistant`}}),r)return}x(0)},x=e=>{r||(c=setTimeout(S,e))},S=async()=>{if(!r){if(Date.now()-p>=O){a(`Onboarding hatch wait exceeded timeout`,{level:`warning`,extra:{maxWaitMs:O}}),G(`Your assistant is taking longer than expected. Please try again.`);return}try{let e=await ue();if(r)return;let t=y(e);if(t.kind===`active`){if(e.ok){let t=e.data.id;oe(t).then(e=>{if(!e)return d(t,B)}).catch(e=>{i(e,{tags:{context:`onboarding_avatar_sync`}})}),o()&&re({assistantId:t,cloud:`vellum`,runtimeUrl:window.location.origin,hatchedAt:new Date().toISOString()})}h();return}if(t.kind===`error`){G(t.message);return}t.kind!==`auto_hatch`&&Y.current===`provisioning`&&$(`connecting`),x(E)}catch(e){if(i(e,{tags:{context:`onboarding_poll_assistant`}}),r)return;x(E)}}};return _(),()=>{r=!0,c&&clearTimeout(c),f&&clearTimeout(f)}},[ye,B,L,I,l,R,e,z,$,j,F]),(0,w.useEffect)(()=>{Z.current===0&&(Z.current=Date.now());let e,t=()=>{let n=Date.now()-Z.current,r=A[Y.current],i=N(X.current,r,n);Q.current=i,q(i),r-i>1e-6&&(e=requestAnimationFrame(t))};return e=requestAnimationFrame(t),()=>cancelAnimationFrame(e)},[Se]),W?(0,T.jsx)(C,{children:(0,T.jsxs)(`div`,{role:`alert`,className:`mx-auto flex min-h-screen w-full max-w-xl flex-col items-center justify-center px-6 pb-40 text-center text-[var(--content-default)]`,children:[(0,T.jsx)(`h1`,{className:`text-3xl font-semibold tracking-tight`,children:`Something went wrong`}),(0,T.jsx)(`p`,{className:`mt-4 text-body-medium-lighter text-[var(--content-tertiary)]`,children:W}),ve&&(0,T.jsxs)(`div`,{className:`mt-6 flex w-full max-w-sm flex-col items-center gap-3`,children:[(0,T.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Get started today with a local assistant`}),(0,T.jsx)(p,{asChild:!0,variant:`primary`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,children:(0,T.jsx)(`a`,{href:`${window.location.origin}/download`,children:`Download the macOS app`})})]}),(0,T.jsx)(`img`,{src:V,alt:``,width:160,height:160,className:`my-16 onboarding-avatar-failed`}),(0,T.jsxs)(`div`,{className:`flex w-full max-w-sm flex-col gap-2`,children:[(0,T.jsx)(p,{variant:`primary`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:()=>{X.current=0,Z.current=Date.now(),Y.current=`initializing`,Q.current=0,U(`initializing`),q(0),J(e=>e+1),G(null),K(!1),be(e=>e+1)},children:`Try again`}),(0,T.jsx)(p,{variant:`outlined`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:()=>void e(j?s.onboarding.hosting:l?`${s.onboarding.privacy}?replay=1`:s.onboarding.privacy,{replace:!0}),children:`Back`})]})]})}):(0,T.jsx)(C,{children:(0,T.jsxs)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-xl flex-col items-center justify-center px-6 pb-40 text-center text-[var(--content-default)]`,children:[(0,T.jsx)(`h1`,{className:`text-3xl font-semibold tracking-tight`,children:H===`ready`?`Your assistant is ready!`:`Waking up…`}),H!==`ready`&&(0,T.jsx)(`p`,{className:`mt-4 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Hang tight — your assistant will have a few questions for you once it's up.`}),(0,T.jsx)(`img`,{src:V,alt:``,width:160,height:160,className:`my-16 ${H===`ready`?`onboarding-avatar-awake`:`onboarding-avatar-pulse`}`}),(0,T.jsx)(m,{value:xe,height:6,className:`w-full max-w-sm`,"aria-label":`Assistant startup progress`}),(0,T.jsx)(`p`,{className:`mt-3 text-body-small-default text-[var(--content-tertiary)]`,children:M[H]})]})})}export{F as HatchingScreen};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BD5vCCEH.js";import{d as n}from"./chunk-5KNZJZUH-DdB2N3P3.js";import{u as r}from"./native-biometric-BPPNP_Sl.js";import{r as i}from"./routes-CHnF8N9D.js";import{n as a}from"./QueryClientProvider-3h1PDgiK.js";import{t as o}from"./useQuery-Cihv2Mys.js";import{t as s}from"./jsx-runtime-2-RJdKf7.js";import{n as c}from"./use-is-mobile-Dkb-QHwX.js";import{t as l}from"./cn-CjywcAuq.js";import{t as u}from"./button-aOWst_o4.js";import{t as d}from"./typography-DEzNhGy_.js";import{n as f}from"./panel-item-ChHVXS-W.js";import{c as p,t as m}from"./src-DzD6V_-s.js";import{t as h}from"./createLucideIcon-Btk32rD9.js";import{t as g}from"./bell-D6safcBY.js";import{t as _}from"./book-open-BprZriYY.js";import{t as v}from"./calendar-BIR8yc1r.js";import{t as y}from"./ellipsis-vertical-DxSLIqf8.js";import{t as ee}from"./globe-7UmDuKqs.js";import{t as te}from"./pencil-obxZd0L0.js";import{t as ne}from"./target-uRVZvIcc.js";import{t as re}from"./wand-sparkles-jBh4Oi5W.js";import{t as b}from"./x-CUFf_mCR.js";import{t as ie}from"./assistant-context-BFnqXVaa.js";import{At as ae,Bt as oe,Dt as se,E as ce,Gt as le,Hn as ue,Ht as de,It as x,Kt as fe,Nn as pe,Ot as me,Pn as he,Pt as S,Qt as ge,Rt as _e,Sr as ve,St as C,Tt as ye,Wn as be,Xt as w,Yn as T,_n as E,_t as D,an as O,at as k,dr as A,en as j,et as M,fn as N,fr as P,gn as xe,gr as Se,hn as Ce,hr as we,ht as F,ir as Te,jn as Ee,jt as De,kt as I,lt as Oe,mr as ke,mt as Ae,o as je,on as Me,ot as Ne,rn as Pe,t as Fe,tn as L,ur as R,vn as Ie,vt as Le,xn as Re,xt as z,yt as ze}from"./index-aLxsGtfC.js";import{n as Be,t as B}from"./lib-CreNldEg.js";import{n as Ve}from"./format-date-CQpXfTVd.js";var He=h(`alarm-clock`,[[`circle`,{cx:`12`,cy:`13`,r:`8`,key:`3y4lt7`}],[`path`,{d:`M12 9v4l2 2`,key:`1c63tq`}],[`path`,{d:`M5 3 2 6`,key:`18tl5t`}],[`path`,{d:`m22 6-3-3`,key:`1opdir`}],[`path`,{d:`M6.38 18.7 4 21`,key:`17xu3x`}],[`path`,{d:`M17.64 18.67 20 21`,key:`kv2oe2`}]]),Ue=h(`briefcase`,[[`path`,{d:`M16 20V4a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16`,key:`jecpp`}],[`rect`,{width:`20`,height:`14`,x:`2`,y:`6`,rx:`2`,key:`i6l2r4`}]]),We=h(`graduation-cap`,[[`path`,{d:`M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z`,key:`j76jl0`}],[`path`,{d:`M22 10v6`,key:`1lu8f3`}],[`path`,{d:`M6 12.5V16a6 3 0 0 0 12 0v-3.5`,key:`1r8lef`}]]),Ge=h(`list-todo`,[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`rect`,{x:`3`,y:`4`,width:`6`,height:`6`,rx:`1`,key:`cif1o7`}]]),V=h(`mail-open`,[[`path`,{d:`M21.2 8.4c.5.38.8.97.8 1.6v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V10a2 2 0 0 1 .8-1.6l8-6a2 2 0 0 1 2.4 0l8 6Z`,key:`1jhwl8`}],[`path`,{d:`m22 10-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 10`,key:`1qfld7`}]]),Ke=h(`plane`,[[`path`,{d:`M17.8 19.2 16 11l3.5-3.5C21 6 21.5 4 21 3c-1-.5-3 0-4.5 1.5L13 8 4.8 6.2c-.5-.1-.9.1-1.1.5l-.3.5c-.2.5-.1 1 .3 1.3L9 12l-2 3H4l-1 1 3 2 2 3 1-1v-3l3-2 3.5 5.3c.3.4.8.5 1.3.3l.5-.2c.4-.3.6-.7.5-1.2z`,key:`1v9wt8`}]]),qe=h(`square-check-big`,[[`path`,{d:`M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344`,key:`2acyp4`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]),H=e(t(),1),U=s(),W={security:{icon:se,strong:`var(--feed-nudge-strong)`,weak:`var(--feed-nudge-weak)`},email:{icon:L,strong:`var(--feed-digest-strong)`,weak:`var(--feed-digest-weak)`},scheduling:{icon:ue,strong:`var(--feed-thread-strong)`,weak:`var(--feed-thread-weak)`},background:{icon:I,strong:`var(--system-info-strong)`,weak:`var(--system-info-weak)`},system:{icon:g,strong:`var(--feed-digest-strong)`,weak:`var(--feed-digest-weak)`}},Je=[`security`,`email`,`scheduling`,`background`,`system`];function G({icon:e,iconColor:t,bgColor:n,isSelected:r,label:i,onClick:a}){return(0,U.jsx)(`button`,{type:`button`,"aria-label":i,"aria-pressed":r,onClick:a,className:l(`flex shrink-0 cursor-pointer items-center justify-center rounded-full transition-opacity`,r?`opacity-100`:`opacity-50 hover:opacity-75`),style:{width:26,height:26,backgroundColor:n},children:(0,U.jsx)(e,{width:12,height:12,style:{color:t},"aria-hidden":`true`})})}function Ye({categories:e,activeFilter:t,onFilterChange:n}){let r=Je.filter(t=>e.includes(t));return r.length<=1?null:(0,U.jsxs)(`div`,{className:`flex items-center gap-[var(--app-spacing-sm)] overflow-x-auto`,children:[(0,U.jsx)(d,{variant:`body-small-default`,className:`shrink-0 text-[var(--content-tertiary)]`,children:`Filter:`}),(0,U.jsx)(G,{icon:Pe,iconColor:`var(--content-secondary)`,bgColor:`var(--surface-overlay)`,isSelected:t===null,label:`All`,onClick:()=>n(null)}),r.map(e=>{let r=W[e];return(0,U.jsx)(G,{icon:r.icon,iconColor:r.strong,bgColor:r.weak,isSelected:t===e,label:e.charAt(0).toUpperCase()+e.slice(1),onClick:()=>n(e)},e)})]})}function Xe(e,t){!t||!r()||(e.preventDefault(),ce(t))}var Ze={p:({children:e})=>(0,U.jsx)(`p`,{className:`mb-2 text-body-medium-default last:mb-0`,style:{color:`var(--content-secondary)`},children:e}),strong:({children:e})=>(0,U.jsx)(`strong`,{style:{color:`var(--content-default)`},children:e}),em:({children:e})=>(0,U.jsx)(`em`,{style:{color:`var(--content-default)`},children:e}),a:({href:e,children:t})=>(0,U.jsx)(`a`,{href:e,className:`underline`,style:{color:`var(--content-link)`},target:`_blank`,rel:`noopener noreferrer`,onClick:t=>Xe(t,e),children:t}),ul:({children:e})=>(0,U.jsx)(`ul`,{className:`mb-2 list-disc pl-5 text-body-medium-default`,style:{color:`var(--content-secondary)`},children:e}),ol:({children:e})=>(0,U.jsx)(`ol`,{className:`mb-2 list-decimal pl-5 text-body-medium-default`,style:{color:`var(--content-secondary)`},children:e}),li:({children:e})=>(0,U.jsx)(`li`,{className:`mb-0.5`,children:e}),code:({children:e})=>(0,U.jsx)(`code`,{className:`rounded px-1 py-0.5 font-mono text-[0.85em]`,style:{backgroundColor:`color-mix(in oklab, var(--content-default) 8%, transparent)`,color:`var(--content-default)`},children:e}),pre:({children:e})=>(0,U.jsx)(`pre`,{className:`mb-2 overflow-x-auto rounded p-3 font-mono text-[0.85em]`,style:{backgroundColor:`color-mix(in oklab, var(--content-default) 6%, transparent)`,color:`var(--content-default)`},children:e}),h1:({children:e})=>(0,U.jsx)(`h1`,{className:`mb-2 text-title-medium first:mt-0`,style:{color:`var(--content-default)`},children:e}),h2:({children:e})=>(0,U.jsx)(`h2`,{className:`mb-2 text-title-small first:mt-0`,style:{color:`var(--content-default)`},children:e}),h3:({children:e})=>(0,U.jsx)(`h3`,{className:`mb-1 text-body-medium-default first:mt-0`,style:{color:`var(--content-default)`},children:e}),blockquote:({children:e})=>(0,U.jsx)(`blockquote`,{className:`mb-2 border-l-2 pl-3 text-body-medium-default`,style:{borderColor:`var(--border-base)`,color:`var(--content-tertiary)`},children:e}),table:({children:e})=>(0,U.jsx)(`div`,{className:`mb-2 overflow-x-auto`,children:(0,U.jsx)(`table`,{className:`w-full border-collapse text-body-small-default`,style:{color:`var(--content-secondary)`},children:e})}),thead:({children:e})=>(0,U.jsx)(`thead`,{style:{backgroundColor:`var(--surface-lift)`},children:e}),tbody:({children:e})=>(0,U.jsx)(`tbody`,{children:e}),tr:({children:e})=>(0,U.jsx)(`tr`,{style:{borderBottom:`1px solid var(--border-base)`},children:e}),th:({children:e})=>(0,U.jsx)(`th`,{className:`px-2 py-1.5 text-left font-semibold`,style:{color:`var(--content-default)`},children:e}),td:({children:e})=>(0,U.jsx)(`td`,{className:`px-2 py-1.5 align-top`,children:e})};function Qe({content:e,className:t}){return(0,U.jsx)(`div`,{className:l(`text-body-medium-default`,t),children:(0,U.jsx)(Be,{remarkPlugins:[B],components:Ze,children:e})})}function $e(e){return e&&W[e]?W[e]:W.system}function K({item:e}){let t=$e(e.category),n=t.icon;return(0,U.jsxs)(`div`,{className:`flex items-start gap-[var(--app-spacing-md)]`,children:[(0,U.jsx)(`span`,{className:`mt-0.5 flex shrink-0 items-center justify-center rounded-full`,style:{width:26,height:26,backgroundColor:t.weak},"aria-hidden":`true`,children:(0,U.jsx)(n,{width:12,height:12,style:{color:t.strong}})}),(0,U.jsx)(Qe,{content:e.summary})]})}function et(e){switch(e){case`revoked`:case`expired`:return`var(--system-negative-strong)`;case`missing_scopes`:case`missing_token`:case`ping_failed`:return`var(--system-mid-strong)`;default:return`var(--content-disabled)`}}function tt(e){return e.split(`_`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function q({item:e}){let t=e.metadata,n=t?.provider;if(!n)return(0,U.jsx)(d,{variant:`body-medium-default`,className:`text-[var(--content-secondary)]`,children:e.title??e.summary});let r=t?.accountInfo??null,i=t?.status??`unreachable`,a=t?.details??``,o=Array.isArray(t?.missingScopes)?t.missingScopes:[];return(0,U.jsxs)(`div`,{className:`flex flex-col gap-[var(--app-spacing-md)]`,children:[(0,U.jsx)(d,{variant:`title-small`,as:`h3`,children:n}),r?(0,U.jsx)(d,{variant:`body-medium-lighter`,className:`text-[var(--content-secondary)]`,children:r}):null,(0,U.jsxs)(`div`,{className:`flex items-center gap-[var(--app-spacing-sm)]`,children:[(0,U.jsx)(`span`,{className:`inline-block shrink-0 rounded-full`,style:{width:8,height:8,backgroundColor:et(i)},"aria-hidden":`true`}),(0,U.jsx)(d,{variant:`body-medium-default`,className:`text-[var(--content-default)]`,children:tt(i)})]}),a?(0,U.jsx)(d,{variant:`body-medium-lighter`,className:`text-[var(--content-secondary)]`,children:a}):null,o.length>0?(0,U.jsxs)(`div`,{className:`flex flex-col gap-[var(--app-spacing-xs)]`,children:[(0,U.jsx)(d,{variant:`body-small-emphasised`,className:`text-[var(--content-secondary)]`,children:`Missing scopes`}),(0,U.jsx)(`ul`,{className:`m-0 flex list-disc flex-col gap-[var(--app-spacing-xxs)] pl-[var(--app-spacing-lg)]`,children:o.map(e=>(0,U.jsx)(`li`,{children:(0,U.jsx)(d,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:e})},e))})]}):null]})}function nt(e){return e&&W[e]?W[e]:W.system}function J({item:e,isMobile:t,validConversationIds:n,onClose:r,onGoToThread:i,onUpdateStatus:a,onDismiss:o}){if(!e)return null;let s=e.detailPanel?.kind,c=nt(e.category),l=c.icon,p=e.status===`new`,m=e.status===`dismissed`,h=!!e.conversationId&&n.has(e.conversationId);return t?(0,U.jsxs)(`div`,{className:`flex h-full flex-col bg-[var(--surface-overlay)]`,children:[(0,U.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 px-3 py-2`,children:[(0,U.jsx)(u,{variant:`ghost`,iconOnly:(0,U.jsx)(Te,{}),onClick:r,"aria-label":`Back`,tooltip:`Back`}),(0,U.jsx)(d,{variant:`body-medium-default`,className:`min-w-0 flex-1 text-center text-[var(--content-secondary)]`,children:`Details`}),(0,U.jsx)(u,{variant:`ghost`,iconOnly:p?(0,U.jsx)(V,{}):(0,U.jsx)(L,{}),onClick:()=>a(e.id,p?`seen`:`new`),"aria-label":p?`Mark as read`:`Mark as unread`,tooltip:p?`Mark as read`:`Mark as unread`}),m?(0,U.jsx)(u,{variant:`ghost`,iconOnly:(0,U.jsx)(S,{}),onClick:()=>a(e.id,`seen`),"aria-label":`Restore`,tooltip:`Restore`}):(0,U.jsx)(u,{variant:`ghost`,iconOnly:(0,U.jsx)(F,{}),onClick:()=>o(e.id),"aria-label":`Dismiss`,tooltip:`Dismiss`})]}),(0,U.jsxs)(`div`,{className:`flex items-center gap-3 px-4 py-3`,children:[(0,U.jsx)(`span`,{className:`flex shrink-0 items-center justify-center rounded-full`,style:{width:40,height:40,backgroundColor:c.weak},"aria-hidden":`true`,children:(0,U.jsx)(l,{width:18,height:18,style:{color:c.strong}})}),(0,U.jsx)(d,{variant:`title-small`,className:`min-w-0 text-[var(--content-default)]`,children:e.title??e.summary})]}),(0,U.jsx)(`div`,{className:`mx-4 border-b border-[var(--border-disabled)]`}),(0,U.jsx)(`div`,{className:`flex-1 overflow-y-auto p-4`,children:s===`toolPermission`?(0,U.jsx)(q,{item:e}):(0,U.jsx)(K,{item:e})}),h?(0,U.jsx)(`div`,{className:`shrink-0 px-4 pb-4 pt-2`,children:(0,U.jsx)(u,{variant:`primary`,fullWidth:!0,onClick:()=>i(e.conversationId),children:`Go to Conversation`})}):null]}):(0,U.jsxs)(`div`,{className:`flex h-full flex-col rounded-[var(--radius-lg)] border border-[var(--border-base)] bg-[var(--surface-overlay)]`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-[var(--app-spacing-sm)] border-b border-[var(--border-base)] px-[var(--app-spacing-lg)] py-[var(--app-spacing-md)]`,children:[(0,U.jsx)(`span`,{className:`flex shrink-0 items-center justify-center rounded-full`,style:{width:28,height:28,backgroundColor:c.weak},"aria-hidden":`true`,children:(0,U.jsx)(l,{width:14,height:14,style:{color:c.strong}})}),(0,U.jsx)(d,{variant:`title-small`,className:`min-w-0 flex-1 truncate text-[var(--content-default)]`,children:e.title??e.summary}),h?(0,U.jsx)(u,{variant:`outlined`,size:`compact`,onClick:()=>i(e.conversationId),children:`Go to Convo`}):null,(0,U.jsxs)(f.Root,{children:[(0,U.jsx)(f.Trigger,{children:(0,U.jsx)(u,{variant:`outlined`,size:`compact`,iconOnly:(0,U.jsx)(y,{}),"aria-label":`More actions`,tooltip:`More actions`})}),(0,U.jsx)(f.Content,{align:`end`,children:m?(0,U.jsx)(f.Item,{onSelect:()=>a(e.id,`seen`),leftIcon:(0,U.jsx)(S,{className:`size-4`}),children:`Restore`}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(f.Item,{onSelect:()=>a(e.id,p?`seen`:`new`),leftIcon:p?(0,U.jsx)(V,{className:`size-4`}):(0,U.jsx)(L,{className:`size-4`}),children:p?`Mark as read`:`Mark as unread`}),(0,U.jsx)(f.Item,{onSelect:()=>o(e.id),leftIcon:(0,U.jsx)(be,{className:`size-4`}),children:`Dismiss`})]})})]}),(0,U.jsx)(u,{variant:`outlined`,size:`compact`,iconOnly:(0,U.jsx)(b,{}),onClick:r,"aria-label":`Close detail panel`,tooltip:`Close`})]}),(0,U.jsx)(`div`,{className:`flex-1 overflow-y-auto p-[var(--app-spacing-lg)]`,children:s===`toolPermission`?(0,U.jsx)(q,{item:e}):(0,U.jsx)(K,{item:e})})]})}function Y({title:e,onClick:t,className:n,children:r}){return(0,U.jsx)(`span`,{role:`button`,tabIndex:0,title:e,"aria-label":e,onClick:e=>{e.stopPropagation(),t()},onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.stopPropagation(),e.preventDefault(),t())},className:l(`cursor-pointer text-[var(--content-disabled)] transition-colors hover:text-[var(--content-secondary)]`,n),children:r})}function rt(e){return e&&W[e]?W[e]:W.system}function X({item:e,isActive:t=!1,validConversationIds:n,onSelect:r,onDismiss:i,onToggleRead:a,onGoToThread:o,trailingAction:s=`dismiss`}){let[c,u]=(0,H.useState)(!1),d=rt(e.category),f=d.icon,p=e.status===`new`,m=s===`restore`;return(0,U.jsxs)(`button`,{type:`button`,onClick:()=>r(e),onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1),className:l(`flex w-full cursor-pointer items-center gap-[var(--app-spacing-sm)]`,`rounded-[var(--radius-md)] px-[var(--app-spacing-md)] py-[var(--app-spacing-sm)]`,`transition-[background-color,opacity] duration-150`,t?`bg-[var(--surface-active)]`:c?`bg-[var(--surface-lift)]`:`bg-[var(--surface-overlay)]`,!p&&!t&&`opacity-70`),children:[(0,U.jsxs)(`span`,{className:`relative shrink-0`,"aria-hidden":`true`,children:[(0,U.jsx)(`span`,{className:`flex items-center justify-center rounded-full`,style:{width:26,height:26,backgroundColor:d.weak},children:(0,U.jsx)(f,{width:12,height:12,style:{color:d.strong}})}),p&&(0,U.jsx)(`span`,{className:`absolute -left-0.5 -top-0.5 h-2 w-2 rounded-full bg-[var(--system-mid-strong)]`})]}),(0,U.jsx)(`span`,{className:l(`text-body-medium-default min-w-0 flex-1 truncate text-left`,`text-[var(--content-secondary)]`),children:e.title??e.summary}),c&&!m?(0,U.jsxs)(`span`,{className:`flex shrink-0 items-center gap-[var(--app-spacing-sm)]`,children:[a&&(0,U.jsx)(Y,{title:p?`Mark as read`:`Mark as unread`,onClick:()=>a(e.id,p?`seen`:`new`),children:p?(0,U.jsx)(V,{width:14,height:14}):(0,U.jsx)(L,{width:14,height:14})}),o&&e.conversationId&&(!n||n.has(e.conversationId))&&(0,U.jsx)(Y,{title:`Go to thread`,onClick:()=>{p&&a&&a(e.id,`seen`),o(e.conversationId)},children:(0,U.jsx)(w,{width:14,height:14})}),(0,U.jsx)(Y,{title:`Dismiss`,onClick:()=>i(e.id),children:(0,U.jsx)(F,{width:14,height:14})})]}):c&&m?(0,U.jsxs)(Y,{title:`Restore`,onClick:()=>i(e.id),className:`flex shrink-0 items-center gap-[var(--app-spacing-xs)]`,children:[(0,U.jsx)(S,{width:14,height:14,"aria-hidden":`true`}),(0,U.jsx)(`span`,{className:`text-body-small-default`,children:`Restore`})]}):(0,U.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[var(--content-tertiary)]`,children:Ve(e.timestamp)})]})}function it(e){return[...e].sort((e,t)=>e.priority===t.priority?new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime():t.priority-e.priority)}function at(e){let t=new Date,n=new Date(t.getFullYear(),t.getMonth(),t.getDate()),r=new Date(t.getFullYear(),t.getMonth(),t.getDate()-1),i={today:[],yesterday:[],older:[]};for(let t of e){let e=new Date(t.createdAt);e>=n?i.today.push(t):e>=r?i.yesterday.push(t):i.older.push(t)}let a=new Map;return i.today.length>0&&a.set(`today`,i.today),i.yesterday.length>0&&a.set(`yesterday`,i.yesterday),i.older.length>0&&a.set(`older`,i.older),a}function ot(e,t){return t===null?e:e.filter(e=>(e.category??`system`)===t)}function st(e){return e.filter(e=>e.urgency!==`high`&&e.urgency!==`critical`)}function ct(e){let t=new Set;for(let n of e)t.add(n.category??`system`);return[...t]}var lt={today:`Today`,yesterday:`Yesterday`,older:`Older`};function ut({items:e,selectedItemId:t,validConversationIds:n,onSelectItem:r,onDismissItem:i,onRestoreItem:a,onToggleRead:o,onGoToThread:s}){let[c,l]=(0,H.useState)(null),u=st(e.filter(e=>e.status!==`dismissed`)),f=ct(u),p=c&&f.includes(c)?c:null;c!==p&&l(p);let h=at(it(ot(u,p))),g=e.filter(e=>e.status===`dismissed`).sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime());return(0,U.jsxs)(`div`,{className:`flex flex-col gap-[var(--app-spacing-lg)]`,children:[(0,U.jsx)(Ye,{categories:f,activeFilter:p,onFilterChange:l}),h.size===0?(0,U.jsx)(d,{variant:`body-medium-lighter`,className:`py-[var(--app-spacing-xl)] text-center text-[var(--content-disabled)]`,children:p?`No items match the selected filter.`:`No items to show.`}):[...h.entries()].map(([e,a])=>(0,U.jsxs)(`section`,{className:`flex flex-col gap-[var(--app-spacing-md)]`,children:[(0,U.jsx)(d,{variant:`body-small-default`,as:`h3`,className:`text-[var(--content-tertiary)]`,children:lt[e]}),(0,U.jsx)(`div`,{className:`flex flex-col gap-[var(--app-spacing-xs)]`,children:a.map(e=>(0,U.jsx)(X,{item:e,isActive:e.id===t,validConversationIds:n,onSelect:r,onDismiss:i,onToggleRead:o,onGoToThread:s},e.id))})]},e)),g.length>0&&(0,U.jsx)(m.Root,{type:`single`,collapsible:!0,children:(0,U.jsxs)(m.Item,{value:`dismissed`,children:[(0,U.jsxs)(m.Trigger,{className:`group gap-[var(--app-spacing-xs)] text-body-small-default text-[var(--content-tertiary)]`,children:[(0,U.jsx)(T,{size:14,"aria-hidden":!0,className:`shrink-0 transition-transform group-data-[state=open]:rotate-90`}),(0,U.jsxs)(`span`,{children:[`Dismissed (`,g.length,`)`]})]}),(0,U.jsx)(m.Content,{children:(0,U.jsx)(`div`,{className:`flex flex-col gap-[var(--app-spacing-xs)] pt-[var(--app-spacing-sm)]`,children:g.map(e=>(0,U.jsx)(X,{item:e,onSelect:r,onDismiss:a,trailingAction:`restore`},e.id))})})]})})]})}function dt(e){let t=e.getHours();return t>=5&&t<12?`Good morning`:t>=12&&t<17?`Good afternoon`:t>=17&&t<22?`Good evening`:`Welcome back`}function ft({avatarComponents:e,avatarTraits:t,avatarImageUrl:n,greeting:r,isMobile:i,onStartNewChat:a}){return(0,U.jsxs)(`div`,{className:`flex items-center justify-between gap-[var(--app-spacing-md)]`,children:[(0,U.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-[var(--app-spacing-md)]`,children:[(0,U.jsx)(je,{components:e,traits:t,customImageUrl:n,size:36}),(0,U.jsx)(d,{variant:`title-large`,as:`h1`,className:`truncate`,children:r||dt(new Date)})]}),i?(0,U.jsx)(u,{variant:`primary`,iconOnly:(0,U.jsx)(z,{}),onClick:a,"aria-label":`New Chat`,tooltip:`New Chat`,className:`!rounded-full`}):(0,U.jsx)(u,{variant:`primary`,leftIcon:(0,U.jsx)(z,{}),onClick:a,children:`New Chat`})]})}var Z={AlarmClock:He,Bell:g,BookOpen:_,Briefcase:Ue,Calendar:v,CheckSquare:qe,Code:he,Compass:pe,Cpu:Ee,FileText:Re,Flag:Ie,Folder:E,Gamepad:xe,Gift:Ce,Globe:ee,GraduationCap:We,Heart:N,Lightbulb:Me,Link:O,ListTodo:Ge,Mail:L,Map:j,MessageCircle:ge,MessageSquare:w,Music:fe,Package:le,Pencil:te,Phone:de,Pin:oe,Plane:Ke,Plug:_e,Puzzle:x,Search:De,Send:ae,Settings:I,Share:me,ShoppingCart:ye,Sparkles:C,Star:ze,Sun:Le,Target:ne,Tag:D,TrendingUp:Ae,Users:Oe,Wand2:re,Wrench:Ne,Zap:k};function Q(e){return e.charAt(0).toUpperCase()+e.slice(1)}function pt(e){if(!e)return C;let t=Q(e);if(Z[t])return Z[t];let n=e.replace(/^lucide-/,``);if(n!==e){let e=Q(n);if(Z[e])return Z[e]}return C}function mt({suggestions:e,maxVisible:t=3,onSelect:n}){let[r,i]=(0,H.useState)(!1);if(r||e.length===0)return null;let a=e.slice(0,t);return(0,U.jsxs)(`div`,{className:`flex flex-col gap-[var(--app-spacing-sm)] rounded-2xl border border-[var(--border-disabled)] px-[var(--app-spacing-lg)] py-[var(--app-spacing-lg)]`,children:[(0,U.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,U.jsx)(d,{variant:`body-medium-default`,className:`text-[var(--content-tertiary)]`,children:`By the way, have you tried one of these:`}),(0,U.jsx)(`button`,{type:`button`,onClick:()=>i(!0),"aria-label":`Dismiss suggestions`,className:`shrink-0 cursor-pointer text-[var(--content-disabled)] transition-colors hover:text-[var(--content-tertiary)]`,children:(0,U.jsx)(b,{className:`size-3.5`})})]}),(0,U.jsx)(`div`,{className:`flex flex-wrap items-center gap-[var(--app-spacing-sm)]`,children:a.map(e=>(0,U.jsxs)(`button`,{type:`button`,onClick:()=>n(e),className:`flex cursor-pointer items-center gap-[var(--app-spacing-xs)] rounded-full bg-[var(--surface-active)] py-1 pl-1 pr-3 text-[var(--content-default)] transition-colors hover:text-[var(--content-secondary)]`,children:[(0,U.jsx)(`span`,{className:`flex shrink-0 items-center justify-center rounded-full bg-[var(--surface-active)]`,style:{width:26,height:26},"aria-hidden":`true`,children:(0,U.jsx)(pt(e.icon),{className:`size-[18px]`})}),(0,U.jsx)(`span`,{className:`text-body-small-default`,children:e.label})]},e.id))})]})}var ht=`home-state`;function $(e){return[ht,e]}function gt(e){let t=a(),n=o({queryKey:$(e??``),queryFn:()=>we(e),enabled:!!e,staleTime:6e4}),r=(0,H.useCallback)(()=>{e&&t.invalidateQueries({queryKey:$(e)})},[e,t]);return{...n,invalidate:r}}function _t(){return(0,U.jsxs)(`div`,{className:`flex flex-col gap-[var(--app-spacing-xl)]`,children:[(0,U.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-[var(--app-spacing-md)]`,children:[(0,U.jsx)(`div`,{className:`size-9 animate-pulse rounded-full bg-[var(--surface-lift)]`}),(0,U.jsx)(`div`,{className:`h-7 w-64 animate-pulse rounded-md bg-[var(--surface-lift)]`})]}),(0,U.jsx)(`div`,{className:`h-9 w-28 animate-pulse rounded-md bg-[var(--surface-lift)]`})]}),(0,U.jsxs)(`div`,{className:`flex gap-2`,children:[(0,U.jsx)(`div`,{className:`h-8 w-36 animate-pulse rounded-full bg-[var(--surface-lift)]`}),(0,U.jsx)(`div`,{className:`h-8 w-28 animate-pulse rounded-full bg-[var(--surface-lift)]`}),(0,U.jsx)(`div`,{className:`h-8 w-32 animate-pulse rounded-full bg-[var(--surface-lift)]`})]}),(0,U.jsx)(`div`,{className:`flex flex-col gap-[var(--app-spacing-sm)]`,children:Array.from({length:4},(e,t)=>(0,U.jsx)(`div`,{className:`h-16 animate-pulse rounded-md bg-[var(--surface-lift)]`},t))})]})}function vt({assistantId:e,validConversationIds:t,onStartNewChat:n,onOpenConversation:r,onSuggestionSelected:i}){let a=c(),o=Se(e),s=ke(e);gt(e);let[l,u]=(0,H.useState)(null),d=(0,H.useCallback)(e=>{e.status===`new`?(u({...e,status:`seen`}),s.updateStatus.mutate({itemId:e.id,status:`seen`})):u(e)},[s.updateStatus]),f=(0,H.useCallback)(()=>{u(null)},[]),m=(0,H.useCallback)(e=>{s.updateStatus.mutate({itemId:e,status:`dismissed`}),l?.id===e&&u(null)},[s.updateStatus,l?.id]),h=(0,H.useCallback)(e=>{s.updateStatus.mutate({itemId:e,status:`seen`}),u(t=>t?.id===e?{...t,status:`seen`}:t)},[s.updateStatus]),g=(0,H.useCallback)((e,t)=>{s.updateStatus.mutate({itemId:e,status:t}),u(n=>n?.id===e?{...n,status:t}:n)},[s.updateStatus]),_=(0,H.useCallback)(e=>{u(null),r(e)},[r]),v=(0,H.useCallback)(e=>{i(e.prompt)},[i]),y=s.isLoading?(0,U.jsx)(_t,{}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(ft,{avatarComponents:o.components,avatarTraits:o.traits,avatarImageUrl:o.customImageUrl,greeting:s.data?.contextBanner?.greeting,isMobile:a,onStartNewChat:n}),s.isError?(0,U.jsxs)(`div`,{role:`alert`,className:`rounded-md border border-[var(--system-negative-weak)] bg-[var(--system-negative-weak)] px-[var(--app-spacing-lg)] py-[var(--app-spacing-md)] text-[var(--system-negative-strong)]`,children:[`Couldn't load home feed`,s.error instanceof Error?`: ${s.error.message}`:`.`]}):null,(0,U.jsx)(mt,{suggestions:s.data?.suggestedPrompts??[],maxVisible:a?2:3,onSelect:v}),(0,U.jsx)(ut,{items:s.data?.items??[],selectedItemId:l?.id,validConversationIds:t,onSelectItem:d,onDismissItem:m,onRestoreItem:h,onToggleRead:g,onGoToThread:_})]});return l&&a?(0,U.jsx)(`div`,{className:`fixed inset-0 z-30 bg-[var(--surface-overlay)]`,style:{paddingTop:`var(--safe-area-inset-top, env(safe-area-inset-top, 0px))`,paddingBottom:`var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))`},children:(0,U.jsx)(J,{item:l,isMobile:!0,validConversationIds:t,onClose:f,onGoToThread:_,onUpdateStatus:g,onDismiss:m})}):l&&!a?(0,U.jsx)(p,{storageKey:`homeDetailPanelWidth`,defaultLeftPercent:50,minLeftWidth:400,minRightWidth:320,left:(0,U.jsx)(`div`,{className:`flex h-full flex-col gap-[var(--app-spacing-xl)] overflow-y-auto px-[var(--app-spacing-xl)] py-[var(--app-spacing-xxl)]`,children:y}),right:(0,U.jsx)(J,{item:l,validConversationIds:t,onClose:f,onGoToThread:_,onUpdateStatus:g,onDismiss:m})}):(0,U.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-y-auto`,children:(0,U.jsx)(`div`,{className:`mx-auto w-full max-w-[960px] px-[var(--app-spacing-xl)] py-[var(--app-spacing-xxl)]`,children:(0,U.jsx)(`div`,{className:`flex flex-col gap-[var(--app-spacing-xl)]`,children:y})})})}function yt(){let e=n(),{assistantId:t}=Fe(),{setTopBarCenter:r}=ie(),a=c(),{conversations:o}=ve(t),s=(0,H.useMemo)(()=>new Set(o.map(e=>e.conversationId)),[o]);return(0,H.useEffect)(()=>(r(a?(0,U.jsx)(d,{variant:`body-medium-default`,className:`text-[var(--content-secondary)]`,children:`Home`}):null),()=>{r(null)}),[a,r]),(0,U.jsx)(vt,{assistantId:t,validConversationIds:s,onStartNewChat:()=>{R.getState().setMainView(`chat`);let t=M();P.getState().setActiveConversationId(t),e(i.conversation(t)),A()},onOpenConversation:t=>e(i.conversation(t)),onSuggestionSelected:t=>{R.getState().setMainView(`chat`);let n=M();P.getState().setActiveConversationId(n),e(`${i.conversation(n)}?prompt=${encodeURIComponent(t)}`)}})}export{yt as HomePageRoute};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BD5vCCEH.js";import{d as n}from"./chunk-5KNZJZUH-DdB2N3P3.js";import{b as r,y as i}from"./local-mode-BO8mMNsq.js";import{r as a}from"./routes-CHnF8N9D.js";import{n as o}from"./auth-store-Dy6ebqwf.js";import{t as s}from"./jsx-runtime-2-RJdKf7.js";import{t as c}from"./button-aOWst_o4.js";import{Fn as l,Gt as u,cn as d}from"./index-aLxsGtfC.js";import{t as f}from"./onboarding-layout-9Hg63IFb.js";var p=e(t(),1),m=s(),h=`h-5 w-5 shrink-0 text-[var(--content-secondary)]`;function g(){let e=o.use.hasPlatformSession();return[{mode:`vellum-cloud`,label:`Vellum Cloud`,subtitle:`Always on, 24/7, even when your computer is off. Runs on Vellum's secure infrastructure.`,icon:(0,m.jsx)(l,{className:h}),...e?{}:{disabled:!0,badge:`Requires Account`}},{mode:`local`,label:`Local`,subtitle:`Runs directly on your machine. Your data never leaves your computer.`,icon:(0,m.jsx)(d,{className:h})},{mode:`docker`,label:`Docker`,subtitle:`Same privacy as local, but sandboxed using Docker for added isolation.`,icon:(0,m.jsx)(u,{className:h})}]}function _(){let e=n(),t=g(),[o,s]=(0,p.useState)(`local`);return(0,m.jsx)(f,{children:(0,m.jsxs)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-xl flex-col items-center px-6 pb-40 pt-16 text-[var(--content-default)]`,children:[(0,m.jsx)(`h1`,{className:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:`Hosting`}),(0,m.jsx)(`p`,{className:`mt-3 text-body-medium-lighter text-[var(--content-tertiary)]`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:`Where do you want your assistant to live?`}),(0,m.jsx)(`div`,{className:`mt-10 flex w-full flex-col gap-3`,style:{animation:`fadeInUp 0.5s ease-out 0.4s both`},children:t.map(e=>(0,m.jsx)(v,{option:e,selected:o===e.mode,onSelect:()=>{e.disabled||s(e.mode)}},e.mode))}),(0,m.jsx)(`div`,{className:`mt-8 w-full max-w-sm`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`},children:(0,m.jsx)(c,{variant:`primary`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:()=>{o===`vellum-cloud`?(r(),i(null),e(a.onboarding.privacy)):e(`${a.onboarding.hatching}?hosting=${o}`)},children:`Continue`})})]})})}function v({option:e,selected:t,onSelect:n}){return(0,m.jsxs)(`button`,{type:`button`,onClick:n,disabled:e.disabled,className:`flex w-full items-center gap-4 rounded-xl border px-4 py-4 text-left transition-colors ${e.disabled?`cursor-not-allowed opacity-60`:`cursor-pointer`} ${t&&!e.disabled?`border-[var(--primary-base)] bg-[var(--primary-base)]/5`:`border-[var(--border-default)] bg-transparent`}`,children:[e.icon,(0,m.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,m.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,m.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e.label}),e.badge&&(0,m.jsx)(`span`,{className:`rounded-full bg-[var(--surface-tertiary)] px-2 py-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:e.badge})]}),(0,m.jsx)(`span`,{className:`mt-0.5 line-clamp-2 text-body-small-default text-[var(--content-tertiary)]`,children:e.subtitle})]}),!e.disabled&&(0,m.jsx)(`div`,{className:`flex h-4 w-4 shrink-0 items-center justify-center rounded-full border-2 ${t?`border-[var(--primary-base)]`:`border-[var(--border-default)]`}`,children:t&&(0,m.jsx)(`div`,{className:`h-1.5 w-1.5 rounded-full bg-[var(--primary-base)]`})})]})}export{_ as HostingScreen};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BD5vCCEH.js";import{d as n}from"./chunk-5KNZJZUH-DdB2N3P3.js";import{r}from"./routes-CHnF8N9D.js";import{n as i}from"./QueryClientProvider-3h1PDgiK.js";import{t as a}from"./useQuery-Cihv2Mys.js";import{t as o}from"./useMutation-DO5gkGJX.js";import{t as s}from"./jsx-runtime-2-RJdKf7.js";import{a as c,o as l,r as u,t as d}from"./avatar-api-IlDWh3Gv.js";import{t as f}from"./button-aOWst_o4.js";import{t as p}from"./card-DnfZJiuP.js";import"./src-DzD6V_-s.js";import{n as m}from"./stat-square-Di_bhDMh.js";import{t as h}from"./createLucideIcon-Btk32rD9.js";import{t as g}from"./pencil-obxZd0L0.js";import{t as _}from"./save-Df8bLDyG.js";import{t as v}from"./x-CUFf_mCR.js";import{t as y}from"./misc-C48PHiZA.js";import{n as b}from"./use-reduced-motion-C8MjY0gt.js";import{Mr as x,Nt as S,St as C,Xn as w,Yn as T,Yt as E,_r as D,at as O,b as k,dn as A,et as j,fr as M,gr as N,ht as P,ii as F,it as I,kn as L,m as ee,o as R,ot as te,rt as ne,t as z,ur as B,xn as V}from"./index-aLxsGtfC.js";import{a as re,f as ie,o as ae,s as oe,t as se}from"./skill-detail-DgRyktTW.js";var ce=h(`maximize-2`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]),H=e(t(),1),U={communication:{displayName:`Communication`,color:`#A665C9`,emoji:`💬`},productivity:{displayName:`Productivity`,color:`#0E9B8B`,emoji:`📋`},development:{displayName:`Development`,color:`#EF4400`,emoji:`🔨`},media:{displayName:`Media`,color:`#DB4B77`,emoji:`🎬`},automation:{displayName:`Automation`,color:`#E9C91A`,emoji:`⚡`},webSocial:{displayName:`Web & Social`,color:`#E9642F`,emoji:`🌐`},knowledge:{displayName:`Knowledge`,color:`#4C9B50`,emoji:`📚`},integration:{displayName:`Integration`,color:`#8D99A5`,emoji:`🔗`}},W=[`communication`,`productivity`,`development`,`media`,`automation`,`webSocial`,`knowledge`,`integration`],G={communication:[{label:`Messaging`,emoji:`💬`,skillIds:new Set([`messaging`,`agentmail`,`email-setup`])},{label:`Calling`,emoji:`📞`,skillIds:new Set([`phone-calls`,`notifications`])},{label:`People`,emoji:`👥`,skillIds:new Set([`contacts`,`followups`])}],productivity:[{label:`Planning`,emoji:`📅`,skillIds:new Set([`google-calendar`,`schedule`])},{label:`Work`,emoji:`📋`,skillIds:new Set([`document`,`tasks`,`playbooks`])}],development:[{label:`Coding`,emoji:`💻`,skillIds:new Set([`typescript-eval`,`frontend-design`])},{label:`Dev Tools`,emoji:`🔧`,skillIds:new Set([`api-mapping`,`cli-discover`,`subagent`,`app-builder`])}],automation:[{label:`Control`,emoji:`🎮`,skillIds:new Set([`computer-use`,`macos-automation`,`browser`])},{label:`Triggers`,emoji:`⏰`,skillIds:new Set([`watcher`,`time-based-actions`])}],webSocial:[{label:`Social`,emoji:`📱`,skillIds:new Set([`influencer`])},{label:`Services`,emoji:`🛒`,skillIds:new Set([`amazon`,`doordash`,`restaurant-reservation`])}],knowledge:[{label:`Learning`,emoji:`🧠`,skillIds:new Set([`knowledge-graph`,`skills-catalog`,`self-upgrade`])},{label:`Daily`,emoji:`☀️`,skillIds:new Set([`start-the-day`,`weather`])}]},le=14,ue=10,de=6;function K(e){switch(e.kind.type){case`center`:return{shape:`circle`,size:90,cornerRadius:0};case`category`:return{shape:`roundedRect`,size:80,cornerRadius:le};case`subCategory`:return{shape:`roundedRect`,size:56,cornerRadius:ue};case`skill`:return{shape:`diamond`,size:64,cornerRadius:de}}}function fe(e,t,n,r){let i=Math.min(Math.max(0,t),e),a=Math.abs(n),o=Math.abs(r);if(a<1e-6&&o<1e-6)return e;let s=e/Math.max(a,o),c=s*n,l=s*r;if(!(Math.abs(c)>e-i&&Math.abs(l)>e-i))return s;let u=Math.sign(c)*(e-i),d=Math.sign(l)*(e-i),f=n*u+r*d,p=u*u+d*d-i*i,m=f*f-p;return m<0?s:f+Math.sqrt(m)}function pe(e,t,n){switch(e.shape){case`circle`:return e.size/2;case`roundedRect`:return fe(e.size/2,e.cornerRadius,t,n);case`diamond`:{let r=(t+n)*Math.SQRT1_2,i=(-t+n)*Math.SQRT1_2;return fe(e.size/2,e.cornerRadius,r,i)}}}function me(e,t){let n=t.x-e.x,r=t.y-e.y,i=Math.sqrt(n*n+r*r);if(i<1e-6)return{x1:e.x,y1:e.y,x2:t.x,y2:t.y};let a=n/i,o=r/i,s=Math.max(0,pe(K(e),a,o)-3),c=Math.max(0,pe(K(t),-a,-o)-3);if(s+c>=i){let n=(e.x+t.x)/2,r=(e.y+t.y)/2;return{x1:n,y1:r,x2:n,y2:r}}return{x1:e.x+a*s,y1:e.y+o*s,x2:t.x-a*c,y2:t.y-o*c}}var he=10,ge=200,_e=160,q=160;function J(e,t,n,r){let i={x:e.x,y:e.y};for(let e=0;e<30;e++){let e=0,a=0,o=0;for(let s of n){let n=i.x-s.x,c=i.y-s.y,l=Math.sqrt(n*n+c*c),u=t+s.radius+r-l;u>e&&(e=u,l<.1?(a=u+1,o=0):(a=n/l*(u+1),o=c/l*(u+1)))}if(e<=0)break;i={x:i.x+a,y:i.y+o}}return i}function ve(e,t,n,r,i,a,o,s,c,l,u,d){if(e.length===0)return;let f=a+o,p=Math.cos(r),m=Math.sin(r),h=-m,g=p,_=f*.88,v=U[c].color;e.forEach((r,c)=>{let y=Math.floor(c/3),b=c%3,x=Math.min(3,e.length-y*3),S=(b-(x-1)/2)*f,C=y%2==1&&x<3?f*.5:0,w=i+y*_,T=J({x:n.x+w*p+(S+C)*h,y:n.y+w*m+(S+C)*g},a/2,u,o);u.push({id:r.id,kind:{type:`skill`,item:r},parentId:t,depth:s,x:T.x,y:T.y,radius:a/2}),d.push({id:`edge-${l}-skill-${c}`,fromId:t,toId:r.id,color:v})})}function ye(e,t,n=90){let r=[],i=[],a=he;if(r.push({id:`__center__`,kind:{type:`center`},parentId:null,depth:0,x:e.x,y:e.y,radius:n/2}),t.length===0)return{nodes:r,edges:i};let o=t.length,s=2*Math.PI/o;return t.forEach((t,n)=>{let o=-Math.PI/2+n*s,c=`cat-${t.category}`,l=U[t.category].color,u=J({x:e.x+ge*Math.cos(o),y:e.y+ge*Math.sin(o)},80/2,r,a);r.push({id:c,kind:{type:`category`,category:t.category},parentId:`__center__`,depth:1,x:u.x,y:u.y,radius:80/2}),i.push({id:`edge-center-${t.category}`,fromId:`__center__`,toId:c,color:l});let d=G[t.category];if(d&&d.length>0){let e=[],n=new Set;for(let r of d){let i=t.items.filter(e=>r.skillIds.has(e.id));i.length>0&&(e.push({def:r,items:i}),i.forEach(e=>n.add(e.id)))}let f=t.items.filter(e=>!n.has(e.id));if(f.length>0){if(e.length===0){ve(t.items,c,u,o,q,64,a,2,t.category,t.category,r,i);return}let n=e[e.length-1];n&&n.items.push(...f)}let p=e.length,m=s*.55,h=p<=1?0:Math.min(m,(p-1)*.35);e.forEach((e,n)=>{let s;s=p===1?o:o+(n/(p-1)-.5)*h*2;let d=`subcat-${t.category}-${n}`,f=J({x:u.x+_e*Math.cos(s),y:u.y+_e*Math.sin(s)},56/2,r,a);r.push({id:d,kind:{type:`subCategory`,label:e.def.label,emoji:e.def.emoji,category:t.category},parentId:c,depth:2,x:f.x,y:f.y,radius:56/2}),i.push({id:`edge-${t.category}-sub-${n}`,fromId:c,toId:d,color:l}),ve(e.items,d,f,s,q,64,a,3,t.category,d,r,i)})}else ve(t.items,c,u,o,q,64,a,2,t.category,t.category,r,i)}),{nodes:r,edges:i}}function be(e){let t=new Map;for(let n of e){let e=t.get(n.category);e?e.push(n):t.set(n.category,[n])}let n=[];for(let e of W){let r=t.get(e);r&&r.length>0&&n.push({category:e,items:r})}return n}function xe(e,t,n,r,i=120,a=.4,o=3){if(e.length===0)return{zoom:1,panX:0,panY:0};let s=1/0,c=-1/0,l=1/0,u=-1/0;for(let t of e)s=Math.min(s,t.x),c=Math.max(c,t.x),l=Math.min(l,t.y),u=Math.max(u,t.y);let d=c-s+i*2,f=u-l+i*2;if(d<=0||f<=0||n<=0||r<=0)return{zoom:1,panX:0,panY:0};let p=Math.min(n/d,r/f),m=Math.max(a,Math.min(o,p)),h=(s+c)/2-t.x,g=(l+u)/2-t.y;return{zoom:m,panX:-h*m,panY:-g*m}}var Se=.4,Ce=.25,Y={x:600,y:450},we={type:`spring`,stiffness:180,damping:20},Te={category:{size:80,cornerRadius:14,dashed:!1,fillPct:14,fillHoverPct:25,strokePct:55,strokeHoverPct:85,strokeWidth:2,strokeHoverWidth:2.5},subcategory:{size:56,cornerRadius:10,dashed:!0,fillPct:10,fillHoverPct:20,strokePct:40,strokeHoverPct:70,strokeWidth:1.5,strokeHoverWidth:2}},Ee={category:`rounded-[3px]`,subcategory:`rounded-[3px] border-dashed`,skill:`rotate-45`,workspace:`rounded-full`},X=s();function De({edges:e,nodeById:t,visible:n}){return(0,X.jsx)(`svg`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-0 h-full w-full overflow-visible`,children:e.map(e=>{let r=t.get(e.fromId),i=t.get(e.toId);if(!r||!i)return null;let{x1:a,y1:o,x2:s,y2:c}=me(r,i);return(0,X.jsx)(`line`,{x1:a,y1:o,x2:s,y2:c,stroke:e.color,strokeWidth:1.5,opacity:n?.45:0,style:{transition:`opacity 0.4s ease`}},e.id)})})}function Z({shape:e,label:t}){return(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(`span`,{className:`flex h-4 w-4 items-center justify-center`,children:(0,X.jsx)(`span`,{className:y(`inline-block h-3 w-3 border-[1.5px] border-[var(--content-tertiary)]`,Ee[e])})}),(0,X.jsx)(`span`,{children:t})]})}function Oe({visible:e}){return(0,X.jsx)(`div`,{"data-constellation-control":!0,className:`pointer-events-none absolute bottom-4 left-4 rounded-md px-3 py-2 text-body-small-default`,style:{backgroundColor:`color-mix(in srgb, var(--surface-overlay) 80%, transparent)`,border:`1px solid color-mix(in srgb, var(--content-tertiary) 20%, transparent)`,color:`var(--content-secondary)`,opacity:+!!e,transition:`opacity 0.35s ease`},children:(0,X.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,X.jsx)(Z,{shape:`category`,label:`Category`}),(0,X.jsx)(Z,{shape:`subcategory`,label:`Subcategory`}),(0,X.jsx)(Z,{shape:`skill`,label:`Skill`}),(0,X.jsx)(Z,{shape:`workspace`,label:`Workspace`})]})})}function ke({item:e,color:t,onViewDetails:n}){let r=e.kind===`skill`?`Skill`:`Workspace`,i=e.kind===`skill`?O:V;return(0,X.jsxs)(p,{padding:`sm`,elevated:!0,className:`w-[260px] shadow-[var(--shadow-popover)]`,role:`dialog`,"aria-label":`${e.label} details`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-md px-2 py-1 text-body-small-emphasised text-[var(--content-default)]`,style:{backgroundColor:`${t}33`},children:[(0,X.jsx)(i,{className:`h-3 w-3`,style:{color:t}}),r]}),n?(0,X.jsx)(f,{type:`button`,variant:`ghost`,size:`compact`,onClick:n,children:`View Details`}):null]}),(0,X.jsxs)(`div`,{className:`mt-2 flex items-start gap-2`,children:[e.emoji?(0,X.jsx)(`span`,{className:`text-[20px] leading-none`,children:e.emoji}):null,(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`div`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:e.label}),e.description?(0,X.jsx)(`div`,{className:`mt-1 line-clamp-3 text-body-small-default text-[var(--content-secondary)]`,children:e.description}):null]})]})]})}function Ae({onSingleClick:e,onDoubleClick:t,latency:n=200}){let r=(0,H.useRef)(null);return(0,H.useEffect)(()=>()=>{r.current&&clearTimeout(r.current)},[]),(0,H.useCallback)(i=>{r.current&&=(clearTimeout(r.current),null),e&&i.detail===1&&(r.current=setTimeout(()=>{r.current=null,e()},n)),t&&i.detail>=2&&i.detail%2==0&&t()},[e,t,n])}function je(e,t,n){let[r,i]=(0,H.useState)(!1),a=r||n===!0,o=Ae({onSingleClick:e,onDoubleClick:t});return{active:a,onClick:(0,H.useCallback)(n=>{!e&&!t||(n.stopPropagation(),o(n))},[e,t,o]),onPointerDown:(0,H.useCallback)(n=>{!e&&!t||n.stopPropagation()},[e,t]),onMouseEnter:(0,H.useCallback)(()=>i(!0),[]),onMouseLeave:(0,H.useCallback)(()=>i(!1),[])}}function Q(e,t){return`color-mix(in oklab, ${e} ${Math.max(0,Math.min(100,t))}%, var(--surface-base))`}function Me(e,t){switch(e.kind.type){case`center`:return{visible:t>=1};case`category`:return{visible:t>=2};case`subCategory`:return{visible:t>=3};case`skill`:return{visible:t>=4}}}function Ne(e,t){switch(e.kind.type){case`center`:return .05;case`category`:return t*.04;case`subCategory`:return t*.03;case`skill`:return .08+t*.02}}function Pe(e){switch(e.kind.type){case`skill`:return e.kind.item;case`category`:{let t=U[e.kind.category];return{id:e.id,label:t.displayName,emoji:t.emoji,category:e.kind.category,kind:`workspaceFile`}}case`subCategory`:return{id:e.id,label:e.kind.label,emoji:e.kind.emoji,category:e.kind.category,kind:`workspaceFile`};default:return}}function Fe({variant:e,x:t,y:n,color:r,tooltip:i,visibility:a,delay:o,children:s,isSelected:c,onSingleClick:l,onDoubleClick:u}){let d=Te[e],{active:f,...p}=je(l,u,c),m={left:t-d.size/2,top:n-d.size/2,width:d.size,height:d.size,borderRadius:d.cornerRadius,backgroundColor:Q(r,f?d.fillHoverPct:d.fillPct),borderStyle:d.dashed?`dashed`:`solid`,borderColor:Q(r,f?d.strokeHoverPct:d.strokePct),borderWidth:f?d.strokeHoverWidth:d.strokeWidth,transition:`background-color 0.15s ease, border-color 0.15s ease, border-width 0.15s ease`,cursor:l||u?`pointer`:`default`};return(0,X.jsx)(b.div,{className:`pointer-events-auto absolute flex flex-col items-center justify-center`,"data-constellation-node":!0,style:m,initial:{opacity:0,scale:.3},animate:{opacity:+!!a.visible,scale:a.visible?1:.3},transition:{...we,delay:o},onMouseEnter:p.onMouseEnter,onMouseLeave:p.onMouseLeave,onPointerDown:p.onPointerDown,onClick:p.onClick,title:i,children:s})}function Ie({x:e,y:t,item:n,color:r,fallbackEmoji:i,visibility:a,delay:o,isSelected:s,onSingleClick:c,onDoubleClick:l}){let{active:u,...d}=je(c,l,s);return(0,X.jsxs)(b.div,{className:`pointer-events-auto absolute`,"data-constellation-node":!0,style:{left:e-64/2,top:t-64/2,width:64,height:64,cursor:c||l?`pointer`:`default`},initial:{opacity:0,scale:.4},animate:{opacity:+!!a.visible,scale:a.visible?1:.4},transition:{...we,delay:o},onMouseEnter:d.onMouseEnter,onMouseLeave:d.onMouseLeave,onPointerDown:d.onPointerDown,onClick:d.onClick,title:n.label,children:[(0,X.jsx)(`div`,{"aria-hidden":!0,className:`absolute inset-0 rounded-md`,style:{transform:`rotate(45deg)`,backgroundColor:Q(r,u?20:10),border:`${u?2:1.5}px solid ${Q(r,u?70:40)}`,transition:`background-color 0.15s ease, border-color 0.15s ease, border-width 0.15s ease`}}),(0,X.jsxs)(`div`,{className:`absolute inset-0 flex flex-col items-center justify-center`,children:[(0,X.jsx)(`span`,{className:`text-[16px] leading-none`,"aria-hidden":!0,children:n.emoji??i}),(0,X.jsx)(`span`,{className:`mt-0.5 max-w-[42px] truncate text-[9px] font-medium leading-tight text-[var(--content-default)]`,title:n.label,children:n.label})]})]})}function Le({node:e,index:t,phase:n,components:r,traits:i,customImageUrl:a,isSelected:o,onSingleClick:s,onDoubleClick:c}){let l=Me(e,n),u=Ne(e,t);if(e.kind.type===`center`)return(0,X.jsx)(b.div,{className:`pointer-events-none absolute`,style:{left:e.x-90/2,top:e.y-90/2,width:90,height:90},initial:{opacity:0,scale:.6},animate:{opacity:+!!l.visible,scale:l.visible?1:.6},transition:{...we,delay:u},children:(0,X.jsx)(R,{components:r,traits:i,customImageUrl:a,size:90})});if(e.kind.type===`category`||e.kind.type===`subCategory`){let t=U[e.kind.category],n=e.kind.type===`category`?`category`:`subcategory`,r=e.kind.type===`category`?t.emoji:e.kind.emoji,i=e.kind.type===`category`?t.displayName:e.kind.label,a=n===`category`?`text-[20px]`:`text-[14px]`,d=n===`category`?`mt-1 max-w-[85%] truncate text-label-medium-default leading-tight text-[var(--content-default)]`:`mt-0.5 max-w-[85%] truncate text-[9.5px] font-medium leading-tight text-[var(--content-default)]`;return(0,X.jsxs)(Fe,{variant:n,x:e.x,y:e.y,color:t.color,tooltip:i,visibility:l,delay:u,isSelected:o,onSingleClick:s,onDoubleClick:c,children:[(0,X.jsx)(`span`,{className:`${a} leading-none`,"aria-hidden":!0,children:r}),(0,X.jsx)(`span`,{className:d,title:i,children:i})]})}if(e.kind.type===`skill`){let t=e.kind.item,n=U[t.category];return(0,X.jsx)(Ie,{x:e.x,y:e.y,item:t,color:n.color,fallbackEmoji:n.emoji,visibility:l,delay:u,isSelected:o,onSingleClick:s,onDoubleClick:c})}return null}function Re(e,t,n,r){let[i,a]=(0,H.useState)({width:0,height:0}),[o,s]=(0,H.useState)(null),[c,l]=(0,H.useState)(null),[u,d]=(0,H.useState)(!1),[f,p]=(0,H.useState)(null),[m,h]=(0,H.useState)(!1),g=(0,H.useRef)(null),_=(0,H.useRef)(null);(0,H.useLayoutEffect)(()=>{let t=e.current;if(!t)return;let n=new ResizeObserver(e=>{for(let t of e){let{width:e,height:n}=t.contentRect;a({width:e,height:n})}});n.observe(t);let r=t.getBoundingClientRect();return a({width:r.width,height:r.height}),()=>n.disconnect()},[e]);let v=(0,H.useMemo)(()=>xe(t,Y,i.width,i.height),[t,i.width,i.height]),y=o??v.zoom,b=c??{x:v.panX,y:v.panY},x=(0,H.useCallback)(()=>{h(!0),g.current!=null&&window.clearTimeout(g.current),g.current=window.setTimeout(()=>{h(!1),g.current=null},500)},[]);(0,H.useEffect)(()=>()=>{g.current!=null&&window.clearTimeout(g.current)},[]);let S=(0,H.useCallback)(()=>{s(null),l(null),p(null),x()},[x]),C=(0,H.useCallback)((e,t)=>{let n=Math.max(Se,Math.min(3,e));if(n===y)return;let r=n/y;l({x:b.x*r,y:b.y*r}),s(n),p(null),t?.animate&&x()},[b.x,b.y,x,y]),w=(0,H.useCallback)(()=>{C(y+Ce,{animate:!0})},[C,y]),T=(0,H.useCallback)(()=>{C(y-Ce,{animate:!0})},[C,y]),E=(0,H.useCallback)(e=>{if(f===e){S();return}let t=n.get(e);if(!t)return;let r=1.8;s(r),l({x:(Y.x-t.x)*r,y:(Y.y-t.y)*r}),p(e),x()},[S,n,x,f]);return(0,H.useEffect)(()=>{let t=e.current;if(!t)return;let n=e=>{e.preventDefault();let t=e.ctrlKey||e.metaKey?150:400;C(y*(1+-e.deltaY/t))};return t.addEventListener(`wheel`,n,{passive:!1}),()=>t.removeEventListener(`wheel`,n)},[C,e,y]),{zoom:y,pan:b,isDragging:u,isAnimating:m,viewSize:i,zoomedNodeId:f,zoomIn:w,zoomOut:T,fitAll:S,zoomToNode:E,handlePointerDown:(0,H.useCallback)(e=>{if(e.button!==0)return;let t=e.target;t.closest(`[data-constellation-control]`)||(t.closest(`[data-constellation-node]`)||r?.(),_.current={startX:e.clientX,startY:e.clientY,panStartX:b.x,panStartY:b.y,pointerId:e.pointerId,moved:!1},d(!0),g.current!=null&&(window.clearTimeout(g.current),g.current=null),h(!1),e.currentTarget.setPointerCapture(e.pointerId))},[r,b.x,b.y]),handlePointerMove:(0,H.useCallback)(e=>{let t=_.current;if(!t||t.pointerId!==e.pointerId)return;let n=e.clientX-t.startX,r=e.clientY-t.startY;!t.moved&&(Math.abs(n)>3||Math.abs(r)>3)&&(t.moved=!0,p(null)),l({x:t.panStartX+n,y:t.panStartY+r})},[]),handlePointerUp:(0,H.useCallback)(e=>{let t=_.current;if(!(!t||t.pointerId!==e.pointerId)){_.current=null,d(!1);try{e.currentTarget.releasePointerCapture(e.pointerId)}catch{}}},[])}}function ze({skills:e,components:t,traits:n,customImageUrl:r,className:i,isFullscreen:a,onToggleFullscreen:o,onSelectSkill:s}){let c=(0,H.useRef)(null),l=(0,H.useRef)(null),[u,d]=(0,H.useState)(0),[p,m]=(0,H.useState)(null),[h,g]=(0,H.useState)({width:240,height:120}),{nodes:_,edges:v}=(0,H.useMemo)(()=>ye(Y,be(e.map(e=>({id:e.id,label:e.name,emoji:e.emoji,category:ie(e),description:e.description,kind:`skill`}))),90),[e]),y=(0,H.useMemo)(()=>{let e=new Map;for(let t of _)e.set(t.id,t);return e},[_]),x=(0,H.useMemo)(()=>{if(p==null)return null;let e=y.get(p);return e?Pe(e)??null:null},[p,y]),C=(0,H.useCallback)(()=>{m(null)},[]),w=Re(c,_,y,C),T=e.length;(0,H.useEffect)(()=>{let e=!1,t=t=>{e||d(t)};t(0);let n=[setTimeout(()=>t(1),100),setTimeout(()=>t(2),300),setTimeout(()=>t(3),500),setTimeout(()=>t(4),700)];return()=>{e=!0,n.forEach(clearTimeout)}},[T]);let D=(0,H.useCallback)(e=>{m(t=>t===e?null:e)},[]),O=(0,H.useCallback)(()=>{!x||x.kind!==`skill`||(C(),s?.(x.id))},[C,s,x]);(0,H.useEffect)(()=>{if(p==null)return;let e=e=>{e.key===`Escape`&&C()};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[C,p]),(0,H.useLayoutEffect)(()=>{if(x==null)return;let e=l.current;if(!e)return;let t=e.getBoundingClientRect();g({width:t.width,height:t.height})},[x]);let A={x:w.viewSize.width/2,y:w.viewSize.height/2},j=A.x-Y.x*w.zoom+w.pan.x,M=A.y-Y.y*w.zoom+w.pan.y,N=p==null?void 0:y.get(p),P=0,F=0;if(x!=null&&N){let e=j+N.x*w.zoom,t=M+N.y*w.zoom,n=e,r=t-60,i=h.width/2,a=h.height/2,o=i+8,s=Math.max(o,w.viewSize.width-i-8),c=a+8,l=Math.max(c,w.viewSize.height-a-8);P=Math.min(Math.max(n,o),s),F=Math.min(Math.max(r,c),l)}let L=(0,H.useCallback)(e=>{C(),w.zoomToNode(e)},[C,w]);return(0,X.jsxs)(`div`,{ref:c,className:`relative select-none overflow-hidden rounded-xl ${i??``}`,style:{backgroundColor:`var(--surface-base)`,backgroundImage:`radial-gradient(circle, color-mix(in srgb, var(--content-tertiary) 20%, transparent) 1px, transparent 1px)`,backgroundSize:`24px 24px`,backgroundPosition:`12px 12px`,touchAction:`none`,cursor:w.isDragging?`grabbing`:`grab`,userSelect:`none`,WebkitUserSelect:`none`},onPointerDown:w.handlePointerDown,onPointerMove:w.handlePointerMove,onPointerUp:w.handlePointerUp,onPointerCancel:w.handlePointerUp,children:[(0,X.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-0`,style:{background:`radial-gradient(circle at center, color-mix(in srgb, var(--content-tertiary) 6%, transparent), transparent 60%)`}}),(0,X.jsxs)(`div`,{className:`absolute inset-0`,style:{transform:`translate(${j}px, ${M}px) scale(${w.zoom})`,transformOrigin:`0 0`,transition:w.isAnimating?`transform 0.4s cubic-bezier(0.22, 1, 0.36, 1)`:`none`},children:[(0,X.jsx)(De,{edges:v,nodeById:y,visible:u>=2}),_.map((e,i)=>(0,X.jsx)(Le,{node:e,index:i,phase:u,components:t,traits:n,customImageUrl:r,isSelected:p===e.id||w.zoomedNodeId===e.id,onSingleClick:()=>D(e.id),onDoubleClick:()=>L(e.id)},e.id))]}),o&&(0,X.jsx)(`div`,{className:`absolute left-4 top-4`,"data-constellation-control":!0,children:(0,X.jsx)(f,{variant:`ghost`,iconOnly:a?(0,X.jsx)(E,{}):(0,X.jsx)(ce,{}),onClick:o,"aria-label":a?`Exit fullscreen`:`Enter fullscreen`,tooltip:a?`Exit fullscreen`:`Enter fullscreen`})}),(0,X.jsx)(Oe,{visible:u>=4}),(0,X.jsx)(k,{children:x==null?null:(0,X.jsx)(b.div,{ref:l,className:`pointer-events-auto absolute z-20`,"data-constellation-popover":!0,style:{left:P,top:F,transform:`translate(-50%, -50%)`},initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9},transition:{duration:.15,ease:`easeOut`},onPointerDown:e=>e.stopPropagation(),onClick:e=>e.stopPropagation(),children:(0,X.jsx)(ke,{item:x,color:U[x.category].color,onViewDetails:s&&x.kind===`skill`?O:void 0})},`constellation-popover`)}),(0,X.jsxs)(`div`,{"data-constellation-control":!0,className:`absolute bottom-4 right-4 flex items-center gap-1`,children:[(0,X.jsx)(f,{variant:`ghost`,iconOnly:(0,X.jsx)(ne,{}),onClick:w.zoomIn,"aria-label":`Zoom in`,tooltip:`Zoom in`}),(0,X.jsx)(f,{variant:`ghost`,iconOnly:(0,X.jsx)(I,{}),onClick:w.zoomOut,"aria-label":`Zoom out`,tooltip:`Zoom out`}),(0,X.jsx)(f,{variant:`ghost`,iconOnly:(0,X.jsx)(S,{}),onClick:w.fitAll,"aria-label":`Fit all`,tooltip:`Fit all`})]})]})}var Be=e(F(),1);function $(e,t,n){return n===`forward`?(e+1)%t:(e-1+t)%t}function Ve({assistantId:e,initialTraits:t,onSave:n,onCancel:r}){let[i,a]=(0,H.useState)(null),[o,s]=(0,H.useState)(!0),[l,d]=(0,H.useState)(!1),f=(0,H.useRef)(null),[p,m]=(0,H.useState)(0),[h,g]=(0,H.useState)(0),[y,b]=(0,H.useState)(0);(0,H.useEffect)(()=>{if(f.current===e)return;let n=!1;return u(e).then(r=>{if(!n&&(f.current=e,a(r),s(!1),r&&t)){let e=r.bodyShapes.findIndex(e=>e.id===t.bodyShape),n=r.eyeStyles.findIndex(e=>e.id===t.eyeStyle),i=r.colors.findIndex(e=>e.id===t.color);e>=0&&m(e),n>=0&&g(n),i>=0&&b(i)}}),()=>{n=!0}},[e,t]);let x=(0,H.useCallback)(()=>{i&&(m(Math.floor(Math.random()*i.bodyShapes.length)),g(Math.floor(Math.random()*i.eyeStyles.length)),b(Math.floor(Math.random()*i.colors.length)))},[i]),S=(0,H.useCallback)(async()=>{if(!i)return;let t={bodyShape:i.bodyShapes[p].id,eyeStyle:i.eyeStyles[h].id,color:i.colors[y].id};d(!0);try{await c(e,t),n?.(t)}finally{d(!1)}},[i,p,h,y,e,n]);if(o)return(0,X.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,X.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2 border-[var(--border-element)] border-t-[var(--content-tertiary)]`})});if(!i)return(0,X.jsx)(`div`,{className:`py-8 text-center text-body-medium-lighter text-[var(--content-quiet)]`,children:`Unable to load avatar components. Make sure your assistant is running.`});let C=i.bodyShapes[p],w=i.eyeStyles[h],T=i.colors[y];return(0,X.jsxs)(`div`,{className:`space-y-6`,children:[(0,X.jsx)(`div`,{className:`flex justify-center`,children:(0,X.jsx)(`div`,{className:`rounded-2xl bg-[var(--surface-sunken)] p-6`,children:(0,X.jsx)(ee,{components:i,bodyShapeId:C.id,eyeStyleId:w.id,colorId:T.id,size:160})})}),(0,X.jsxs)(`div`,{className:`space-y-3`,children:[(0,X.jsx)(He,{label:`Body`,value:C.id,onPrev:()=>m($(p,i.bodyShapes.length,`backward`)),onNext:()=>m($(p,i.bodyShapes.length,`forward`))}),(0,X.jsx)(He,{label:`Eyes`,value:w.id,onPrev:()=>g($(h,i.eyeStyles.length,`backward`)),onNext:()=>g($(h,i.eyeStyles.length,`forward`))}),(0,X.jsx)(He,{label:`Color`,value:T.id,colorHex:T.hex,onPrev:()=>b($(y,i.colors.length,`backward`)),onNext:()=>b($(y,i.colors.length,`forward`))})]}),(0,X.jsxs)(`div`,{className:`flex gap-2`,children:[(0,X.jsxs)(`button`,{type:`button`,onClick:x,className:`flex flex-1 cursor-pointer items-center justify-center gap-2 rounded-lg border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-2 text-body-medium-default text-[var(--content-strong)] transition-colors hover:bg-[var(--surface-hover)]`,children:[(0,X.jsx)(L,{className:`h-4 w-4`}),`Randomize`]}),(0,X.jsxs)(`button`,{type:`button`,onClick:S,disabled:l,className:`flex flex-1 cursor-pointer items-center justify-center gap-2 rounded-lg border border-[var(--system-positive-strong)] bg-[var(--system-positive-weak)] px-3 py-2 text-body-medium-default text-[var(--system-positive-strong)] transition-colors hover:opacity-90 disabled:opacity-50`,children:[(0,X.jsx)(_,{className:`h-4 w-4`}),l?`Saving...`:`Save Avatar`]}),r&&(0,X.jsx)(`button`,{type:`button`,onClick:r,className:`flex cursor-pointer items-center justify-center rounded-lg border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-2 text-body-medium-default text-[var(--content-strong)] transition-colors hover:bg-[var(--surface-hover)]`,children:(0,X.jsx)(v,{className:`h-4 w-4`})})]})]})}function He({label:e,value:t,colorHex:n,onPrev:r,onNext:i}){return(0,X.jsxs)(`div`,{className:`flex items-center justify-between rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-lift)] px-3 py-2`,children:[(0,X.jsx)(`span`,{className:`text-body-small-default uppercase tracking-wider text-[var(--content-quiet)]`,children:e}),(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(`button`,{type:`button`,onClick:r,className:`flex h-7 w-7 cursor-pointer items-center justify-center rounded-md text-[var(--content-quiet)] transition-colors hover:bg-[var(--surface-active)]`,children:(0,X.jsx)(w,{className:`h-4 w-4`})}),(0,X.jsxs)(`div`,{className:`flex min-w-[80px] items-center justify-center gap-2`,children:[n&&(0,X.jsx)(`div`,{className:`h-4 w-4 rounded-full border border-[var(--border-element)]`,style:{backgroundColor:n}}),(0,X.jsx)(`span`,{className:`text-body-medium-default capitalize text-[var(--content-strong)]`,children:t})]}),(0,X.jsx)(`button`,{type:`button`,onClick:i,className:`flex h-7 w-7 cursor-pointer items-center justify-center rounded-md text-[var(--content-quiet)] transition-colors hover:bg-[var(--surface-active)]`,children:(0,X.jsx)(T,{className:`h-4 w-4`})})]})]})}function Ue({open:e,onClose:t,assistantId:n,components:r,traits:i,customImageUrl:a,onSaveCharacter:o,onUploadImage:s,onGenerateWithAI:c,onDeleteAvatar:u}){let d=(0,H.useId)(),f=(0,H.useRef)(null),p=(0,H.useRef)(null),m=(0,H.useRef)(null),[h,g]=(0,H.useState)(`actions`),[_,y]=(0,H.useState)(!1);(0,H.useEffect)(()=>{e&&p.current?.focus()},[e]),(0,H.useEffect)(()=>{if(e){let e=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.body.style.overflow=e}}},[e]);let b=(0,H.useCallback)(()=>{g(`actions`),t()},[t]),x=(0,H.useCallback)(e=>{e.key===`Escape`&&(h===`character-builder`?g(`actions`):b())},[b,h]),S=(0,H.useCallback)(e=>{e.target===f.current&&b()},[b]),E=(0,H.useCallback)(()=>{g(`actions`)},[]),D=(0,H.useCallback)(()=>{g(`character-builder`)},[]),O=(0,H.useCallback)(async e=>{let t=e.target.files?.[0];if(!t)return;y(!0);let r=await l(n,t);y(!1),r&&(s(),b()),m.current&&(m.current.value=``)},[n,s,b]),k=(0,H.useCallback)(()=>{m.current?.click()},[]),j=(0,H.useCallback)(()=>{b(),c?.()},[b,c]),M=(0,H.useCallback)(()=>{b(),u?.()},[b,u]),N=(0,H.useCallback)(e=>{o(e),b()},[o,b]);return e?(0,Be.createPortal)((0,X.jsxs)(`div`,{ref:f,role:`dialog`,"aria-modal":`true`,"aria-labelledby":d,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:x,onClick:S,children:[(0,X.jsxs)(`div`,{className:`mx-4 flex w-full max-w-md flex-col rounded-xl border shadow-xl`,style:{backgroundColor:`var(--surface-lift)`,borderColor:`var(--border-base)`,maxHeight:`85vh`},children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between border-b px-6 py-4`,style:{borderColor:`var(--border-base)`},children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[h===`character-builder`&&(0,X.jsx)(`button`,{type:`button`,onClick:E,className:`flex h-8 w-8 items-center justify-center rounded-lg transition-colors hover:bg-black/5 dark:hover:bg-white/10`,"aria-label":`Back`,children:(0,X.jsx)(w,{className:`h-4 w-4`,style:{color:`var(--content-secondary)`}})}),(0,X.jsx)(`h2`,{id:d,className:`text-title-small`,style:{color:`var(--content-default)`},children:h===`character-builder`?`Build a Character`:`Update Avatar`})]}),(0,X.jsx)(`button`,{ref:p,type:`button`,onClick:b,className:`flex h-8 w-8 items-center justify-center rounded-lg transition-colors hover:bg-black/5 dark:hover:bg-white/10`,"aria-label":`Close`,children:(0,X.jsx)(v,{className:`h-4 w-4`,style:{color:`var(--content-secondary)`}})})]}),(0,X.jsx)(`div`,{className:`overflow-y-auto p-6`,children:h===`actions`?(0,X.jsxs)(`div`,{className:`flex flex-col items-center gap-6`,children:[(0,X.jsx)(R,{components:r,traits:i,customImageUrl:a,size:120,interactive:!0}),(0,X.jsxs)(`div`,{className:`w-full space-y-2`,children:[(0,X.jsxs)(`button`,{type:`button`,onClick:D,className:`flex w-full cursor-pointer items-center gap-3 rounded-lg border px-4 py-3 transition-colors hover:opacity-80`,style:{borderColor:`var(--border-base)`,backgroundColor:`var(--surface-lift)`},children:[(0,X.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-lg`,style:{backgroundColor:`color-mix(in oklab, var(--content-tertiary) 16%, transparent)`},children:(0,X.jsx)(te,{className:`h-4 w-4`,style:{color:`var(--content-secondary)`}})}),(0,X.jsxs)(`div`,{className:`flex-1 text-left`,children:[(0,X.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Build a Character`}),(0,X.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:`Build your own character`})]}),(0,X.jsx)(T,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}})]}),(0,X.jsxs)(`button`,{type:`button`,onClick:k,disabled:_,className:`flex w-full cursor-pointer items-center gap-3 rounded-lg border px-4 py-3 transition-colors hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,style:{borderColor:`var(--border-base)`,backgroundColor:`var(--surface-lift)`},children:[(0,X.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-lg`,style:{backgroundColor:`color-mix(in oklab, var(--content-tertiary) 16%, transparent)`},children:(0,X.jsx)(A,{className:`h-4 w-4`,style:{color:`var(--content-secondary)`}})}),(0,X.jsxs)(`div`,{className:`flex-1 text-left`,children:[(0,X.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:_?`Uploading...`:`Upload Image`}),(0,X.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:`Choose an image from your computer`})]}),(0,X.jsx)(T,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}})]}),c&&(0,X.jsxs)(`button`,{type:`button`,onClick:j,className:`flex w-full cursor-pointer items-center gap-3 rounded-lg border px-4 py-3 transition-colors hover:opacity-80`,style:{borderColor:`var(--border-base)`,backgroundColor:`var(--surface-lift)`},children:[(0,X.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-lg`,style:{backgroundColor:`color-mix(in oklab, var(--content-tertiary) 16%, transparent)`},children:(0,X.jsx)(C,{className:`h-4 w-4`,style:{color:`var(--content-secondary)`}})}),(0,X.jsxs)(`div`,{className:`flex-1 text-left`,children:[(0,X.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Generate with AI`}),(0,X.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:`Create an avatar through chat`})]}),(0,X.jsx)(T,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}})]})]}),u&&(0,X.jsxs)(`button`,{type:`button`,onClick:M,className:`flex items-center gap-1.5 text-body-small-default transition-colors hover:opacity-70`,style:{color:`var(--content-tertiary)`},children:[(0,X.jsx)(P,{className:`h-3.5 w-3.5`}),`Reset to default`]})]}):(0,X.jsx)(Ve,{assistantId:n,initialTraits:i,onSave:N,onCancel:E})})]}),(0,X.jsx)(`input`,{ref:m,type:`file`,accept:`image/png,image/jpeg,image/webp,image/gif`,className:`hidden`,onChange:O})]}),document.body):null}function We({assistantName:e,assistantPersonality:t,assistantRole:n,hatchedDate:r,components:i,traits:a,customImageUrl:o,onOpenThread:s,onOpenModal:c}){return(0,X.jsxs)(`div`,{className:`w-full overflow-hidden rounded-xl`,style:{backgroundColor:`var(--surface-lift)`},children:[(0,X.jsxs)(`div`,{className:`relative p-6 pb-0`,children:[(0,X.jsx)(`div`,{className:`pr-8 text-center`,children:(0,X.jsx)(`h2`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:e})}),(0,X.jsx)(f,{type:`button`,variant:`ghost`,iconOnly:(0,X.jsx)(g,{"aria-hidden":!0}),onClick:()=>s?.(`I would like to change your name`),disabled:!s,"aria-label":`Edit identity`,title:`Edit Name`,className:`absolute right-6 top-6`,tintColor:`var(--content-tertiary)`})]}),(0,X.jsx)(`div`,{className:`flex justify-center py-6`,children:(0,X.jsx)(R,{components:i,traits:a,customImageUrl:o,size:200,interactive:!0})}),(0,X.jsx)(`div`,{className:`flex justify-center pb-6`,children:(0,X.jsx)(f,{type:`button`,variant:`outlined`,size:`regular`,onClick:c,className:`!rounded-full`,children:`Update Avatar`})}),(0,X.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,X.jsxs)(`div`,{className:`flex items-center justify-between border-b px-4 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:`Role`}),(0,X.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:n})]}),(0,X.jsx)(f,{type:`button`,variant:`ghost`,iconOnly:(0,X.jsx)(g,{"aria-hidden":!0}),onClick:()=>s?.(`I would like to change your role description`),disabled:!s,"aria-label":`Edit role`,title:`Edit Role`,tintColor:`var(--content-tertiary)`})]}),(0,X.jsxs)(`div`,{className:`flex items-center justify-between border-b px-4 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:`Personality`}),(0,X.jsx)(`p`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-default)`},title:t||`Not set`,children:t||`Not set`})]}),(0,X.jsx)(f,{type:`button`,variant:`ghost`,iconOnly:(0,X.jsx)(g,{"aria-hidden":!0}),onClick:()=>s?.(`I would like to change your personality`),disabled:!s,"aria-label":`Edit personality`,title:`Edit Personality`,tintColor:`var(--content-tertiary)`})]}),(0,X.jsxs)(`div`,{className:`px-4 py-3`,children:[(0,X.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:`Hatched`}),(0,X.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:r})]})]})}function Ge({assistantId:e,onOpenThread:t}){let n=i(),{components:r,traits:s,customImageUrl:c,isLoading:l,invalidate:u}=N(e),[f,p]=(0,H.useState)(null),[h,g]=(0,H.useState)(null),[_,v]=(0,H.useState)(null),[y,b]=(0,H.useState)(!1),[S,C]=(0,H.useState)(null),[w,T]=(0,H.useState)(null),[E,O]=(0,H.useState)(null),[k,A]=(0,H.useState)(null);(0,H.useEffect)(()=>{let t=!1;return Promise.all([D(e),x(e).catch(()=>({ok:!1,status:0,error:{}}))]).then(([n,r])=>{t||(p(n),r.ok?g(r.data.created):g(null),v(e))}),()=>{t=!0}},[e]);let j=_!==e||l,[M,P]=(0,H.useState)(!1),F=a({queryKey:[`assistantSkills`,e,{kind:`installed`}],queryFn:()=>re(e,{kind:`installed`}),enabled:!!e}),I=(0,H.useMemo)(()=>F.data?.skills??[],[F.data?.skills]),L=(0,H.useCallback)(()=>{u()},[u]),ee=(0,H.useCallback)(()=>{b(!0)},[]),R=(0,H.useCallback)(()=>{b(!1)},[]),te=(0,H.useCallback)(()=>{t?.(`I'd like to create a custom AI-generated avatar.`)},[t]),ne=(0,H.useCallback)(async()=>{await d(e)&&u()},[e,u]),z=(0,H.useCallback)(()=>{n.invalidateQueries({queryKey:[`assistantSkills`,e]})},[e,n]),B=o({mutationFn:t=>ae(e,t),onMutate:e=>T(e),onSettled:()=>{T(null),z()}}),V=o({mutationFn:t=>oe(e,t),onMutate:e=>O(e),onSettled:()=>{O(null),z()}}),ie=(0,H.useCallback)(e=>{B.mutate(e.slug??e.id)},[B]),ce=(0,H.useCallback)(e=>{A(e)},[]),U=(0,H.useCallback)(()=>{k&&(V.mutate(k.id),A(null))},[k,V]),W=(0,H.useMemo)(()=>S?I.find(e=>e.id===S)??null:null,[I,S]),G=(0,X.jsx)(m,{open:k!==null,title:`Remove skill`,message:k?`Remove "${k.name}" from this assistant?`:``,confirmLabel:`Remove`,destructive:!0,onConfirm:U,onCancel:()=>A(null)});if(W)return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(se,{assistantId:e,skill:W,onBack:()=>C(null),onInstall:()=>ie(W),onRemove:()=>ce(W),isInstalling:w===(W.slug??W.id),isRemoving:E===W.id}),G]});if(j)return(0,X.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,X.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})});let le=f?.name||`Assistant`,ue=f?.personality||``,de=f?.role||`Not set`,K=h?new Date(h).toLocaleDateString(`en-GB`,{day:`numeric`,month:`short`,year:`numeric`}):`Unknown`;return(0,X.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col gap-6 lg:flex-row lg:items-stretch`,children:[(0,X.jsx)(`div`,{className:`mx-auto w-full max-w-md lg:mx-0 lg:h-full lg:shrink-0 lg:overflow-y-auto ${M?`hidden`:`flex`}`,children:(0,X.jsx)(We,{assistantName:le,assistantPersonality:ue,assistantRole:de,hatchedDate:K,components:r,traits:s,customImageUrl:c,onOpenThread:t,onOpenModal:ee})}),(0,X.jsx)(`div`,{className:`min-h-[480px] min-w-0 flex-1 lg:min-h-0`,children:(0,X.jsx)(ze,{skills:I,components:r,traits:s,customImageUrl:c,className:`h-full w-full`,isFullscreen:M,onToggleFullscreen:()=>P(e=>!e),onSelectSkill:C})}),(0,X.jsx)(Ue,{open:y,onClose:R,assistantId:e,components:r,traits:s,customImageUrl:c,onSaveCharacter:L,onUploadImage:L,onGenerateWithAI:t?te:void 0,onDeleteAvatar:ne}),G]})}function Ke({onOpenThread:e}){let{assistantId:t}=z();return(0,X.jsx)(Ge,{assistantId:t,onOpenThread:e})}function qe(){let e=n(),{assistantId:t}=z();return(0,X.jsx)(Ke,{onOpenThread:t=>{B.getState().setMainView(`chat`);let n=j();M.getState().setActiveConversationId(n),e(`${r.conversation(n)}?prompt=${encodeURIComponent(t)}`)}},t)}export{qe as IdentityPageRoute};