@vellumai/web 0.8.7-dev.202606052232.2ddc989 → 0.8.8

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 (471) hide show
  1. package/dist/assets/{about-page-VHKsk9M1.js → about-page-C4tN0hSY.js} +1 -1
  2. package/dist/assets/{account-page-BiBMYABT.js → account-page-e-4zB_8t.js} +1 -1
  3. package/dist/assets/{add-credits-modal-BnkD4oSj.js → add-credits-modal-p0gkX1yC.js} +1 -1
  4. package/dist/assets/{advanced-page-CTM9ByJs.js → advanced-page-Du0vGXNL.js} +1 -1
  5. package/dist/assets/ai-page-BQOcmKeW.js +1 -0
  6. package/dist/assets/{angular-html-DoxnP4L3.js → angular-html-CDXMmzLv.js} +1 -1
  7. package/dist/assets/{angular-ts-9spjMgRd.js → angular-ts-CaUHVMjx.js} +1 -1
  8. package/dist/assets/{api-DYTu2hC1.js → api-8hqpGaif.js} +2 -2
  9. package/dist/assets/{api-key-screen-WY11Flti.js → api-key-screen-Bgk6XGC1.js} +1 -1
  10. package/dist/assets/{apl-BjPuT95r.js → apl-BTRFCz7X.js} +1 -1
  11. package/dist/assets/archive-page-DhDeJH4l.js +1 -0
  12. package/dist/assets/{assistant-feature-flag-store-XFfKSl8X.js → assistant-feature-flag-store-CNdFPRBD.js} +1 -1
  13. package/dist/assets/{assistant-identity-store-CsS_tq85.js → assistant-identity-store-Y4grVs1H.js} +1 -1
  14. package/dist/assets/assistant-status-panel-C3CvCBVl.js +1 -0
  15. package/dist/assets/{astro-xfSi9ARd.js → astro-CKyX7s7R.js} +1 -1
  16. package/dist/assets/auth-store-CYbo7naZ.js +1 -0
  17. package/dist/assets/{avatar-api-DygRCPqF.js → avatar-api-BfDoaCjw.js} +1 -1
  18. package/dist/assets/billing-page-CyTcQ9ki.js +34 -0
  19. package/dist/assets/{blade-C8H1jvQW.js → blade-Rzz0TE8c.js} +1 -1
  20. package/dist/assets/{bsl-1Uw5GcVj.js → bsl-DpFuAvE8.js} +1 -1
  21. package/dist/assets/{cairo-LeKPj3R4.js → cairo-Bobk4atY.js} +1 -1
  22. package/dist/assets/capture-error-1Tr5aMfq.js +1 -0
  23. package/dist/assets/{cobol-D5SqfAvu.js → cobol-1CNEp2gA.js} +1 -1
  24. package/dist/assets/{coffee-KrVM6VAY.js → coffee-CCurbO7Q.js} +1 -1
  25. package/dist/assets/{command-palette-doCEl_ro.js → command-palette-CTF-tqv7.js} +1 -1
  26. package/dist/assets/{community-page-C16cwwBL.js → community-page-BWc9-V5m.js} +1 -1
  27. package/dist/assets/{connect-page-BCxdL8Jq.js → connect-page-DLP-KRIF.js} +1 -1
  28. package/dist/assets/{contacts-gateway-DkmnVa7t.js → contacts-gateway-BF6L_WJp.js} +1 -1
  29. package/dist/assets/contacts-page-route-ziTjDj3t.js +1 -0
  30. package/dist/assets/{cpp-C0UxZXSh.js → cpp-D8F2mhyx.js} +1 -1
  31. package/dist/assets/{crystal-ClJk9iNu.js → crystal-BV5GbE2n.js} +1 -1
  32. package/dist/assets/{danger-zone-redirect-page-BdgSJlIY.js → danger-zone-redirect-page-BlS6Bao4.js} +1 -1
  33. package/dist/assets/{debug-page--WT90LG1.js → debug-page-B38HF3wu.js} +3 -3
  34. package/dist/assets/{deploy-dialogs-Bnsia9oU.js → deploy-dialogs-Ddx6WsXp.js} +1 -1
  35. package/dist/assets/developer-page-CVcwOCG9.js +1 -0
  36. package/dist/assets/{devices-page-BRAQG74I.js → devices-page-4yNwXw0J.js} +1 -1
  37. package/dist/assets/{dist-DacRcU3L.js → dist-Ck9KSeuV.js} +3 -3
  38. package/dist/assets/{document-viewer-page-DZSH_KXd.js → document-viewer-page-BZqF90o0.js} +1 -1
  39. package/dist/assets/{earn-credits-modal-xyZYOdPP.js → earn-credits-modal-BfVEDIqn.js} +1 -1
  40. package/dist/assets/{edge-BiYC4_90.js → edge-wZlHrIuI.js} +1 -1
  41. package/dist/assets/{elixir-CeTC01SF.js → elixir-CxYq-rkj.js} +1 -1
  42. package/dist/assets/{elm-Cn1hsMyk.js → elm-BgDZWS-i.js} +1 -1
  43. package/dist/assets/{emails-page-SNlhYBQq.js → emails-page-VM8fJ5kb.js} +1 -1
  44. package/dist/assets/{erb-DSDLUB86.js → erb-DBocu5OY.js} +1 -1
  45. package/dist/assets/{erlang-C99b08Nz.js → erlang-Dd9A6Ts8.js} +1 -1
  46. package/dist/assets/esm-B9MFZJ_e.js +2 -0
  47. package/dist/assets/esm-BAXpcEfg.js +2 -0
  48. package/dist/assets/{esm-SU3SyAUz.js → esm-BBKnACgF.js} +2 -2
  49. package/dist/assets/esm-BesMJi2r.js +2 -0
  50. package/dist/assets/esm-Dlx5ghIf.js +2 -0
  51. package/dist/assets/exports-B_RC9sMS.js +4 -0
  52. package/dist/assets/feature-flag-catalog-CRgdQmMF.js +1 -0
  53. package/dist/assets/{file-markdown-DLtmfYbc.js → file-markdown-DjJ2NSmS.js} +1 -1
  54. package/dist/assets/{fortran-fixed-form-CfIW45ck.js → fortran-fixed-form-DMrzopcc.js} +1 -1
  55. package/dist/assets/{fsharp-CpfXaTmO.js → fsharp-C6m4Hy9y.js} +1 -1
  56. package/dist/assets/{gateway-session-BEbYXAZw.js → gateway-session-CaFk8wfN.js} +1 -1
  57. package/dist/assets/{gdresource-Bq9ffHIF.js → gdresource-YKD2wsBt.js} +1 -1
  58. package/dist/assets/general-page-m_m-DrX4.js +1 -0
  59. package/dist/assets/{git-commit-4hNTcyXg.js → git-commit-D3W81laO.js} +1 -1
  60. package/dist/assets/{git-rebase-DoeXBq-R.js → git-rebase-D7A-ZIs_.js} +1 -1
  61. package/dist/assets/{glimmer-js-CYkye81z.js → glimmer-js-Kj1yb8GI.js} +1 -1
  62. package/dist/assets/{glimmer-ts-Bk7QAWr2.js → glimmer-ts-CMle0DS9.js} +1 -1
  63. package/dist/assets/{glsl-BYZink9d.js → glsl-CGs04uf3.js} +1 -1
  64. package/dist/assets/{graphql-CS_bfAPh.js → graphql-DTpeHwUI.js} +1 -1
  65. package/dist/assets/{hack-rkugl_pJ.js → hack-DCR-U-qQ.js} +1 -1
  66. package/dist/assets/{haml-BkhENUsf.js → haml-Cp_ZrdH-.js} +1 -1
  67. package/dist/assets/{handlebars-Bh3JZxjr.js → handlebars-DTIya8Eo.js} +1 -1
  68. package/dist/assets/hatching-screen-CI8iOd8-.js +1 -0
  69. package/dist/assets/home-page-route-ePg1Cu2z.js +1 -0
  70. package/dist/assets/{hosting-screen-D6IVMcMS.js → hosting-screen-CA6XnVWn.js} +1 -1
  71. package/dist/assets/{html-Chvx6bbW.js → html-CCPUpDrQ.js} +1 -1
  72. package/dist/assets/{html-derivative-BZlQ5XVV.js → html-derivative-CoL1ACif.js} +1 -1
  73. package/dist/assets/{http-CZnYRnoH.js → http-BjpN3wdH.js} +1 -1
  74. package/dist/assets/{hurl-C9D1SYfx.js → hurl-BHqN3hsl.js} +1 -1
  75. package/dist/assets/{hxml-CqBwUL68.js → hxml-CthMTwgY.js} +1 -1
  76. package/dist/assets/identity-page-route-BcE8OAJ6.js +1 -0
  77. package/dist/assets/index-Cb930VA2.css +2 -0
  78. package/dist/assets/index-DUwiZuxe.js +124 -0
  79. package/dist/assets/{inspect-page-Bc6T9uiq.js → inspect-page-CsvH5Rih.js} +2 -2
  80. package/dist/assets/{install-CqQAdH7r.js → install-OHIUtZSu.js} +1 -1
  81. package/dist/assets/integrations-page-B54hIoCi.js +1 -0
  82. package/dist/assets/{intelligence-layout-CK1ONzMq.js → intelligence-layout-Onjx6_Xb.js} +1 -1
  83. package/dist/assets/{jinja-DA4mN-er.js → jinja-Bn3xB2ml.js} +1 -1
  84. package/dist/assets/{jison-BUGhbqsC.js → jison-BX4oePNj.js} +1 -1
  85. package/dist/assets/{julia-DE2tbbof.js → julia-DU_-trts.js} +1 -1
  86. package/dist/assets/{just-F4pUwLYE.js → just-CyokZPsE.js} +1 -1
  87. package/dist/assets/{latex-DVRfNFWZ.js → latex-CHvXrGPz.js} +1 -1
  88. package/dist/assets/{lib-DjjTt2Bu.js → lib-h5KT63h9.js} +1 -1
  89. package/dist/assets/{library-detail-page-DSVyFZMh.js → library-detail-page-PP_bf3mt.js} +1 -1
  90. package/dist/assets/library-page-Cg1IA3a6.js +1 -0
  91. package/dist/assets/{liquid-BQaobxSx.js → liquid-Bs4Sb-po.js} +1 -1
  92. package/dist/assets/{login-flow-YoZiK8pc.js → login-flow-BbsypWKa.js} +1 -1
  93. package/dist/assets/login-page-BVX4fr6R.js +1 -0
  94. package/dist/assets/{logout-page-BlH38xxk.js → logout-page-BkzePxva.js} +1 -1
  95. package/dist/assets/{logs-layout-dVZP7y5S.js → logs-layout-Cs8hHTTu.js} +1 -1
  96. package/dist/assets/{lua-C6astBbM.js → lua-Dlulix5z.js} +1 -1
  97. package/dist/assets/{marko-CDvDU-jy.js → marko-BKY8xXbp.js} +1 -1
  98. package/dist/assets/{mdc-DYeZOJof.js → mdc-DUJqLRSQ.js} +1 -1
  99. package/dist/assets/{memory-router-playground-page-CR1ipK38.js → memory-router-playground-page-4uw1uIhg.js} +1 -1
  100. package/dist/assets/{misc-BwTS2Omn.js → misc-BllImtEn.js} +1 -1
  101. package/dist/assets/{mobile-sidebar-drawer-B18QHDel.js → mobile-sidebar-drawer-CSQF2rSV.js} +1 -1
  102. package/dist/assets/native-biometric-B4t4zElu.js +6 -0
  103. package/dist/assets/{native-file-BURkYQJV.js → native-file-C2WSS7-h.js} +2 -2
  104. package/dist/assets/{nextflow-CSmwW5Ci.js → nextflow-7_68OVU_.js} +1 -1
  105. package/dist/assets/{nginx-CnKPWPN7.js → nginx-eipJu1bl.js} +1 -1
  106. package/dist/assets/{nim-DVpbAykj.js → nim-CYnL-Wir.js} +1 -1
  107. package/dist/assets/{notifications-page-5Etr_SRn.js → notifications-page-DRppz7Ms.js} +1 -1
  108. package/dist/assets/{oauth-complete-page-DdkJeVpO.js → oauth-complete-page-aT6QAfCd.js} +1 -1
  109. package/dist/assets/{oauth-popup-complete-page-Z_ICryrb.js → oauth-popup-complete-page-ClfKIV61.js} +1 -1
  110. package/dist/assets/{onboarding-layout-CTQetjmN.js → onboarding-layout-DMOume9Z.js} +1 -1
  111. package/dist/assets/{password-reset-page-B0uxgxAb.js → password-reset-page-CugjFViT.js} +1 -1
  112. package/dist/assets/{perl-DL5nyTE3.js → perl-D0xJm_ah.js} +1 -1
  113. package/dist/assets/{php-14zLJiK2.js → php-DNtH2WpS.js} +1 -1
  114. package/dist/assets/{platform-loopback-page-iGsXXAZd.js → platform-loopback-page-DSAaBS5p.js} +1 -1
  115. package/dist/assets/{plugins-page-CwkVF9QF.js → plugins-page-CYcKA2Ai.js} +1 -1
  116. package/dist/assets/pre-chat-flow-BLHHoHka.js +1 -0
  117. package/dist/assets/privacy-page-HiOgrDR9.js +1 -0
  118. package/dist/assets/privacy-screen-Ca0oGFo0.js +1 -0
  119. package/dist/assets/{provider-callback-page-DY_r1O5H.js → provider-callback-page-DpGReURP.js} +1 -1
  120. package/dist/assets/{provider-signup-page-D6hTVQgJ.js → provider-signup-page-BpqjcKpY.js} +1 -1
  121. package/dist/assets/{pug-BcGFw36t.js → pug-DEPEeomQ.js} +1 -1
  122. package/dist/assets/{qml-DSBzgwxk.js → qml-C9mVjGBN.js} +1 -1
  123. package/dist/assets/{razor-DzERoHYk.js → razor-Cyg4V1EK.js} +1 -1
  124. package/dist/assets/routes-C-DwSCj0.js +1 -0
  125. package/dist/assets/{rst-BIN6LBBb.js → rst-BiUNp2Fv.js} +1 -1
  126. package/dist/assets/{ruby-jBJwv2mP.js → ruby-Bddxezn1.js} +1 -1
  127. package/dist/assets/{sas-yRpQSa4M.js → sas-DAUEkM7Z.js} +1 -1
  128. package/dist/assets/{schedules-page-nXeTZw2c.js → schedules-page-zyXnmD3U.js} +1 -1
  129. package/dist/assets/{scss-D6nUDMBD.js → scss-BlEtTolU.js} +1 -1
  130. package/dist/assets/{sdk.gen-Dvq7zGs0.js → sdk.gen-BO4vbMAj.js} +1 -1
  131. package/dist/assets/{settings-layout-D48zDU-G.js → settings-layout-Bsi8NeES.js} +1 -1
  132. package/dist/assets/{shaderlab-2mkDNSZE.js → shaderlab-BH1Q2CVQ.js} +1 -1
  133. package/dist/assets/share-feedback-modal-BgfMO7ED.js +1 -0
  134. package/dist/assets/{shellsession-qVduQyG2.js → shellsession-BdTXj0Sh.js} +1 -1
  135. package/dist/assets/{sidebar-tree-TZtCYoFo.js → sidebar-tree-D9JFk5pQ.js} +1 -1
  136. package/dist/assets/{signup-page-9RqRMZse.js → signup-page-CI7xziFt.js} +1 -1
  137. package/dist/assets/skills-page-DrpHzObX.js +1 -0
  138. package/dist/assets/{sounds-page-CUiVOLN8.js → sounds-page-Dw_ASs77.js} +1 -1
  139. package/dist/assets/{soy-N-ikyuo0.js → soy-B-FcVSYk.js} +1 -1
  140. package/dist/assets/{sparql-CXOfNIAD.js → sparql-BjDARHNL.js} +1 -1
  141. package/dist/assets/{stata-DAwqVBtA.js → stata-Y4GvktLE.js} +1 -1
  142. package/dist/assets/step-indicator-dots-ClKaa4nc.js +1 -0
  143. package/dist/assets/{subagent-detail-panel-CaJSI4fI.js → subagent-detail-panel-BcUQAemM.js} +2 -2
  144. package/dist/assets/{surrealql-mj-mrh8J.js → surrealql-BDSKZaSH.js} +1 -1
  145. package/dist/assets/{svelte-Dc7E_mCh.js → svelte-CtuvIFmj.js} +1 -1
  146. package/dist/assets/{system-events-page-BPAFAOyb.js → system-events-page-BC0hWcTo.js} +1 -1
  147. package/dist/assets/{system-events-redirect-page-kUI6PPyM.js → system-events-redirect-page-BrzAhJZT.js} +1 -1
  148. package/dist/assets/{templ-B12CJEzs.js → templ-eJUdwoXg.js} +1 -1
  149. package/dist/assets/{tex-SEHboowz.js → tex-CIRkYPu6.js} +1 -1
  150. package/dist/assets/{tiptap-document-editor-BQqVV46h.js → tiptap-document-editor-CIVPtfOQ.js} +2 -2
  151. package/dist/assets/{tool-detail-panel-bd15yZOi.js → tool-detail-panel-y2CN1PtJ.js} +1 -1
  152. package/dist/assets/trace-page-BX5w9eln.js +1 -0
  153. package/dist/assets/{ts-tags-D-Jr8mpt.js → ts-tags-Cza2ueQC.js} +1 -1
  154. package/dist/assets/{twig-CWdkELuI.js → twig-CXZQ9Ol2.js} +1 -1
  155. package/dist/assets/{upgrade-cancel-page-CCGPhKky.js → upgrade-cancel-page-KQ4EN_I1.js} +1 -1
  156. package/dist/assets/{upgrade-success-page-DaxBtc0m.js → upgrade-success-page-Bmv-ncJ6.js} +1 -1
  157. package/dist/assets/{usage-page-B-E9ob9F.js → usage-page-CXNTUrjR.js} +1 -1
  158. package/dist/assets/{use-bus-subscription-Cz3Ryocr.js → use-bus-subscription-r105Upoa.js} +1 -1
  159. package/dist/assets/{use-current-platform-assistant-B3gP7gen.js → use-current-platform-assistant-BXRU4B3R.js} +1 -1
  160. package/dist/assets/use-is-org-ready-Dtde_1TT.js +1 -0
  161. package/dist/assets/{use-oauth-complete-deep-link-listener-ZuAGEydM.js → use-oauth-complete-deep-link-listener-BkbO4kZ1.js} +1 -1
  162. package/dist/assets/{utils-CVZ8WTxM.js → utils-DfoBtDfL.js} +1 -1
  163. package/dist/assets/viewer-store-BIIKltsh.js +1 -0
  164. package/dist/assets/{voice-page-BIVGEiiK.js → voice-page-D3jl6Uq8.js} +1 -1
  165. package/dist/assets/{vue-BprQ0-Ub.js → vue-BHoLyUei.js} +1 -1
  166. package/dist/assets/{vue-html-hp77151s.js → vue-html-DkcwChpt.js} +1 -1
  167. package/dist/assets/{vue-vine-Cr9pIPKl.js → vue-vine-CWaGKpZ6.js} +1 -1
  168. package/dist/assets/{weather-forecast-display-Co0Tm-Os.js → weather-forecast-display-BA-3Q5jY.js} +1 -1
  169. package/dist/assets/{web-qR3jv4Dd.js → web-BURo-fbJ.js} +1 -1
  170. package/dist/assets/{web-Pb43q_QH.js → web-Bladjo1x.js} +1 -1
  171. package/dist/assets/{web-BUHhvd6U.js → web-BoYC6fGC.js} +1 -1
  172. package/dist/assets/{web-tLusY4Su.js → web-ByC97zP5.js} +1 -1
  173. package/dist/assets/{web-DuNCoqzd.js → web-D4HuJomW.js} +1 -1
  174. package/dist/assets/{web-BlXL6x8k.js → web-DhGMOrai.js} +1 -1
  175. package/dist/assets/{web-CBHiUh0h.js → web-St4pj-6p.js} +1 -1
  176. package/dist/assets/{welcome-screen-BHVV20Ua.js → welcome-screen-B3oZjIVb.js} +1 -1
  177. package/dist/assets/workspace-page-CUxLMyKc.js +1 -0
  178. package/dist/assets/{xml-Cm8puQKu.js → xml-CUVPRfsD.js} +1 -1
  179. package/dist/assets/{xsl-C1TQprpW.js → xsl-imDMVavE.js} +1 -1
  180. package/dist/index.html +39 -38
  181. package/package.json +1 -1
  182. package/dist/assets/BundleConfirmPage-CSaXWfQ1.js +0 -1
  183. package/dist/assets/ai-page-D4pxJbNn.js +0 -1
  184. package/dist/assets/archive-page-CSspL6oa.js +0 -1
  185. package/dist/assets/assistant-status-panel-GQ4MBaan.js +0 -1
  186. package/dist/assets/auth-store-NinzEiLF.js +0 -1
  187. package/dist/assets/billing-page-BS8qVqsa.js +0 -34
  188. package/dist/assets/capture-error-23NwnaZt.js +0 -4
  189. package/dist/assets/contacts-page-route-BDv_9GZ0.js +0 -1
  190. package/dist/assets/developer-page-jgraj43o.js +0 -1
  191. package/dist/assets/esm-DKyh2sdX.js +0 -2
  192. package/dist/assets/esm-DUUKbDsd.js +0 -2
  193. package/dist/assets/esm-Da4x-MH2.js +0 -2
  194. package/dist/assets/esm-dtSsvPGT.js +0 -2
  195. package/dist/assets/feature-flag-catalog-H7Q8h3pM.js +0 -1
  196. package/dist/assets/format-file-size-DpQP6eF0.js +0 -1
  197. package/dist/assets/general-page-Dw5lzX9J.js +0 -1
  198. package/dist/assets/hatching-screen-Q3XECwIH.js +0 -1
  199. package/dist/assets/home-page-route-D1gJnqOJ.js +0 -1
  200. package/dist/assets/identity-page-route-Cqpwctvb.js +0 -1
  201. package/dist/assets/index-CUnEdGZb.css +0 -2
  202. package/dist/assets/index-DmTi6dG-.js +0 -124
  203. package/dist/assets/integrations-page-O1TEamRL.js +0 -1
  204. package/dist/assets/library-page-FryrD29R.js +0 -1
  205. package/dist/assets/login-page-N9rNKdE4.js +0 -1
  206. package/dist/assets/native-biometric-V5gaOHYQ.js +0 -6
  207. package/dist/assets/pre-chat-flow-DRxx1hYL.js +0 -1
  208. package/dist/assets/privacy-page-CX4-SR5S.js +0 -1
  209. package/dist/assets/privacy-screen-BlkfCqKf.js +0 -1
  210. package/dist/assets/quick-input-page-BPZhSRem.js +0 -1
  211. package/dist/assets/routes-Dfo11DAg.js +0 -1
  212. package/dist/assets/share-feedback-modal-HxZUa0Ql.js +0 -1
  213. package/dist/assets/skills-page-DwZbBgsd.js +0 -1
  214. package/dist/assets/step-indicator-dots-Bef_HABf.js +0 -1
  215. package/dist/assets/trace-page-CcJ5f1s8.js +0 -1
  216. package/dist/assets/use-is-org-ready-C0KPmJ3X.js +0 -1
  217. package/dist/assets/viewer-store-BIjT34BR.js +0 -1
  218. package/dist/assets/workspace-page-CEddn9j8.js +0 -1
  219. /package/dist/assets/{abap-Bfl6OWPB.js → abap-C4iPiDIu.js} +0 -0
  220. /package/dist/assets/{actionscript-3-Dlqiiy8x.js → actionscript-3-gKpUxVX1.js} +0 -0
  221. /package/dist/assets/{ada-COUbPro6.js → ada-BNfMfhXG.js} +0 -0
  222. /package/dist/assets/{andromeeda-BoXZFw2R.js → andromeeda-DLZ1RhgM.js} +0 -0
  223. /package/dist/assets/{apache-DpKhYfq6.js → apache-CmXtX8w8.js} +0 -0
  224. /package/dist/assets/{apex-B_uFO61F.js → apex-DQ3YjsTJ.js} +0 -0
  225. /package/dist/assets/{app-html-cache-B0vrz1YW.js → app-html-cache-BsFOfI0R.js} +0 -0
  226. /package/dist/assets/{applescript-D3paN7K0.js → applescript-CoELsxRV.js} +0 -0
  227. /package/dist/assets/{ara-CwbWLquj.js → ara-BLqTzepa.js} +0 -0
  228. /package/dist/assets/{asciidoc-VGSo8T5D.js → asciidoc-Bu3NXNp3.js} +0 -0
  229. /package/dist/assets/{asm-FPeQDFEa.js → asm-hlDTKcRV.js} +0 -0
  230. /package/dist/assets/{aurora-x-COSrEIJC.js → aurora-x-Y3rL1Mno.js} +0 -0
  231. /package/dist/assets/{avatar-svg-compositor-DuV7I45L.js → avatar-svg-compositor-CE52Zi2F.js} +0 -0
  232. /package/dist/assets/{awk-fUzIbt5q.js → awk-fqp6puV8.js} +0 -0
  233. /package/dist/assets/{ayu-dark-K3pEfprB.js → ayu-dark-8m2thfgS.js} +0 -0
  234. /package/dist/assets/{ayu-light-BhBDUJo9.js → ayu-light-B_LzrLW4.js} +0 -0
  235. /package/dist/assets/{ayu-mirage-CYENPbEi.js → ayu-mirage-C408gKdx.js} +0 -0
  236. /package/dist/assets/{ballerina-DIi7YSrd.js → ballerina-Dzhgw61p.js} +0 -0
  237. /package/dist/assets/{bat-tHgyIDGw.js → bat-CM0nyl3e.js} +0 -0
  238. /package/dist/assets/{beancount-DawK3651.js → beancount-DS2zW2gu.js} +0 -0
  239. /package/dist/assets/{berry-DkDnrvVb.js → berry-CFa7Vgeg.js} +0 -0
  240. /package/dist/assets/{bibtex-B5oISiWf.js → bibtex-BgrhWGNJ.js} +0 -0
  241. /package/dist/assets/{bicep-BlTgOqlL.js → bicep-DtHaVZsZ.js} +0 -0
  242. /package/dist/assets/{bird2-COHCqf-V.js → bird2-CwlVhixU.js} +0 -0
  243. /package/dist/assets/{c-DBsgGwh3.js → c-DHEwyzyt.js} +0 -0
  244. /package/dist/assets/{c3-DG4RoDeZ.js → c3-BjbJ1SWk.js} +0 -0
  245. /package/dist/assets/{cadence-BHyhLOnE.js → cadence-D5TkDw9F.js} +0 -0
  246. /package/dist/assets/{catppuccin-frappe-BoFiW_80.js → catppuccin-frappe-AYmKAKbn.js} +0 -0
  247. /package/dist/assets/{catppuccin-latte-CFlPOnsH.js → catppuccin-latte-rgEci-mq.js} +0 -0
  248. /package/dist/assets/{catppuccin-macchiato-CLHnCD9Z.js → catppuccin-macchiato-DK631o7w.js} +0 -0
  249. /package/dist/assets/{catppuccin-mocha-D9O1RTSI.js → catppuccin-mocha-Dxwp0FIj.js} +0 -0
  250. /package/dist/assets/{clarity-Bad-9p-G.js → clarity-RpeFvelS.js} +0 -0
  251. /package/dist/assets/{client.gen-BSPUYAay.js → client.gen-BKAMS0D0.js} +0 -0
  252. /package/dist/assets/{clojure-JsVarUVs.js → clojure-CRAC2t-A.js} +0 -0
  253. /package/dist/assets/{clsx-CAUM2Ssy.js → clsx-BcPLHiun.js} +0 -0
  254. /package/dist/assets/{cmake-DXbVPxoO.js → cmake-CR_x8y9A.js} +0 -0
  255. /package/dist/assets/{codeowners-Co7U_H7C.js → codeowners-DCE2DWuf.js} +0 -0
  256. /package/dist/assets/{codeql-DbhkTzcI.js → codeql-DsaJqgmb.js} +0 -0
  257. /package/dist/assets/{common-lisp-5EpYtPq7.js → common-lisp-ssblfVQ2.js} +0 -0
  258. /package/dist/assets/{conversation-store-D6erO6zc.js → conversation-store-D8-qWog8.js} +0 -0
  259. /package/dist/assets/{coq-BHTaQtqU.js → coq-CHVp-7H5.js} +0 -0
  260. /package/dist/assets/{csharp-vNqAk7wS.js → csharp-DI5xNuVa.js} +0 -0
  261. /package/dist/assets/{css-D8Elscfw.js → css-cWOM3a0B.js} +0 -0
  262. /package/dist/assets/{csv-BOCRZ51I.js → csv-Bpv-AoF-.js} +0 -0
  263. /package/dist/assets/{cue--vvB6NEp.js → cue-DDYtbxe3.js} +0 -0
  264. /package/dist/assets/{cypher-8zw1cZPY.js → cypher-llXjaNz7.js} +0 -0
  265. /package/dist/assets/{d-DCw6i__G.js → d-CKAGFvTZ.js} +0 -0
  266. /package/dist/assets/{dark-plus-CJQgO0a2.js → dark-plus-rkBkJwdk.js} +0 -0
  267. /package/dist/assets/{dart-Di_0TMyS.js → dart-DMYKlTVD.js} +0 -0
  268. /package/dist/assets/{dax-C3FCmr3K.js → dax-DdvjFH0V.js} +0 -0
  269. /package/dist/assets/{definitions-BhcK9MeU.js → definitions-BNrrmgWe.js} +0 -0
  270. /package/dist/assets/{desktop-DfPpjKHQ.js → desktop-w1vLnVHT.js} +0 -0
  271. /package/dist/assets/{diff-CbXGRoMP.js → diff-OeXZvF1L.js} +0 -0
  272. /package/dist/assets/{dist-d-PJ8AUi.js → dist-C49TvNNR.js} +0 -0
  273. /package/dist/assets/{docker-B4Kzg9bz.js → docker-C3A0dfO2.js} +0 -0
  274. /package/dist/assets/{dotenv-Bou3VaLF.js → dotenv-DW1eN_9r.js} +0 -0
  275. /package/dist/assets/{dracula-DqvSNsR6.js → dracula-DTBIfZ52.js} +0 -0
  276. /package/dist/assets/{dracula-soft-h1T06flS.js → dracula-soft-CrJWuJGa.js} +0 -0
  277. /package/dist/assets/{dream-maker-BVxHB1DY.js → dream-maker-BbcHsNud.js} +0 -0
  278. /package/dist/assets/{edit-chat-session-DseODZCl.js → edit-chat-session-Bn0bAlP1.js} +0 -0
  279. /package/dist/assets/{effective-timezone-QeovgyP0.js → effective-timezone-CJWCpcyG.js} +0 -0
  280. /package/dist/assets/{emacs-lisp-C5w5G5qc.js → emacs-lisp-CXlankGO.js} +0 -0
  281. /package/dist/assets/{event-bus-DKlaDVAu.js → event-bus-WRYwtHDl.js} +0 -0
  282. /package/dist/assets/{everforest-dark-8YvZGFtA.js → everforest-dark-B2pu_HKn.js} +0 -0
  283. /package/dist/assets/{everforest-light-7kDryiLY.js → everforest-light-DN0BkMBf.js} +0 -0
  284. /package/dist/assets/{fennel-0vdmVKTu.js → fennel-Cr6woGT-.js} +0 -0
  285. /package/dist/assets/{fish-IyesOFcd.js → fish-BJg8G7KS.js} +0 -0
  286. /package/dist/assets/{fluent-CcNoA3qp.js → fluent-DwMQdbwA.js} +0 -0
  287. /package/dist/assets/{fortran-free-form-_mCAt4L5.js → fortran-free-form-CzTB9Sqt.js} +0 -0
  288. /package/dist/assets/{gdscript-DXUJNbQF.js → gdscript-weUeMolr.js} +0 -0
  289. /package/dist/assets/{gdshader-DK3kh5kx.js → gdshader-iWAUzgYh.js} +0 -0
  290. /package/dist/assets/{genie-BDu4LoAt.js → genie-CV-0RB6d.js} +0 -0
  291. /package/dist/assets/{gherkin-Bj4QY2ZZ.js → gherkin-Bi25xuBx.js} +0 -0
  292. /package/dist/assets/{github-dark-23T46ITp.js → github-dark-UUFXF3bS.js} +0 -0
  293. /package/dist/assets/{github-dark-default-YRljnVzM.js → github-dark-default-C5WdYtsR.js} +0 -0
  294. /package/dist/assets/{github-dark-dimmed-dQav7O6R.js → github-dark-dimmed-CJFXRI6Q.js} +0 -0
  295. /package/dist/assets/{github-dark-high-contrast-DidY19tg.js → github-dark-high-contrast-JloQ0SAJ.js} +0 -0
  296. /package/dist/assets/{github-light-BObDDVDh.js → github-light-4CveJiiC.js} +0 -0
  297. /package/dist/assets/{github-light-default-BoJDCN5R.js → github-light-default-DGIOayrf.js} +0 -0
  298. /package/dist/assets/{github-light-high-contrast-Bst7qyBs.js → github-light-high-contrast-DOA9HriW.js} +0 -0
  299. /package/dist/assets/{gleam-mHMeGp-o.js → gleam-CKtDvnYK.js} +0 -0
  300. /package/dist/assets/{gn-BOh1TF98.js → gn-lpxxrUCu.js} +0 -0
  301. /package/dist/assets/{gnuplot-BeWb4QIH.js → gnuplot-BhYvNHXT.js} +0 -0
  302. /package/dist/assets/{go-GgqMuLaN.js → go-CGiDqZ23.js} +0 -0
  303. /package/dist/assets/{google-logo-CBBlhwbc.js → google-logo-NlVU0R23.js} +0 -0
  304. /package/dist/assets/{groovy-C9Z63wPJ.js → groovy-CGHX_PQL.js} +0 -0
  305. /package/dist/assets/{gruvbox-dark-hard-D3hhOWHI.js → gruvbox-dark-hard-WxeIxO0x.js} +0 -0
  306. /package/dist/assets/{gruvbox-dark-medium-CPtDKE5U.js → gruvbox-dark-medium-BrLRvqzP.js} +0 -0
  307. /package/dist/assets/{gruvbox-dark-soft--KzcMTkn.js → gruvbox-dark-soft-Yzi926sT.js} +0 -0
  308. /package/dist/assets/{gruvbox-light-hard-Cr7t7Yc0.js → gruvbox-light-hard-Cw9Re-rI.js} +0 -0
  309. /package/dist/assets/{gruvbox-light-medium-DSXNnsG2.js → gruvbox-light-medium-4lcJ4wOe.js} +0 -0
  310. /package/dist/assets/{gruvbox-light-soft-CQt4xaiw.js → gruvbox-light-soft-CXfwWDtY.js} +0 -0
  311. /package/dist/assets/{haskell-BAFTh2zU.js → haskell-DBidNlOX.js} +0 -0
  312. /package/dist/assets/{haxe-Bzf0Gule.js → haxe-B6ZewxKA.js} +0 -0
  313. /package/dist/assets/{hcl-DG1GEjfN.js → hcl-BKeuz7gp.js} +0 -0
  314. /package/dist/assets/{hjson-CfLJP1MZ.js → hjson-rgQbq9_i.js} +0 -0
  315. /package/dist/assets/{hlsl-CzJWYpeK.js → hlsl-D7KFXCoM.js} +0 -0
  316. /package/dist/assets/{horizon-Debh6yGF.js → horizon-DAiINwqJ.js} +0 -0
  317. /package/dist/assets/{horizon-bright-CKvdi3Tu.js → horizon-bright-CFeHelVZ.js} +0 -0
  318. /package/dist/assets/{houston-B2Ejyr-g.js → houston-BdHxI9BK.js} +0 -0
  319. /package/dist/assets/{hy-pcFArSJ6.js → hy-CDDbmdhC.js} +0 -0
  320. /package/dist/assets/{imba-BQU3ATlD.js → imba-CwLWOt59.js} +0 -0
  321. /package/dist/assets/{impersonate-version-flag-DC4HAvtV.js → impersonate-version-flag-D_S9-Z77.js} +0 -0
  322. /package/dist/assets/{ini-Bv5_HvOR.js → ini-Bwb6xY8F.js} +0 -0
  323. /package/dist/assets/{is-electron-BCDAAC00.js → is-electron-1CyUiqR4.js} +0 -0
  324. /package/dist/assets/{java-owmbVqcc.js → java-CDWeyxES.js} +0 -0
  325. /package/dist/assets/{javascript-DTuM3op3.js → javascript-BN3vpbN8.js} +0 -0
  326. /package/dist/assets/{json-zR3clZYf.js → json-CycFWZcg.js} +0 -0
  327. /package/dist/assets/{json5-7NU9KTTA.js → json5-BM_H1TCH.js} +0 -0
  328. /package/dist/assets/{jsonc-B2TECXI_.js → jsonc-EUMfb5CQ.js} +0 -0
  329. /package/dist/assets/{jsonl-BX_fzJy3.js → jsonl-DvZe68u2.js} +0 -0
  330. /package/dist/assets/{jsonnet-BbG4eXRI.js → jsonnet-BG4vdzZ4.js} +0 -0
  331. /package/dist/assets/{jssm-DSjdYnDs.js → jssm-DNeKUJR3.js} +0 -0
  332. /package/dist/assets/{jsx-uYQiwDAi.js → jsx-jfTE_lQA.js} +0 -0
  333. /package/dist/assets/{kanagawa-dragon-DRQWRtYa.js → kanagawa-dragon-D9OVubsz.js} +0 -0
  334. /package/dist/assets/{kanagawa-lotus-B27_zN-N.js → kanagawa-lotus-CSRx4SDl.js} +0 -0
  335. /package/dist/assets/{kanagawa-wave-EAZwYQVu.js → kanagawa-wave-UOuPU6gH.js} +0 -0
  336. /package/dist/assets/{kdl-BPFF2QoT.js → kdl-DaJuRpNV.js} +0 -0
  337. /package/dist/assets/{kotlin-CzYpDily.js → kotlin-BNEzAgnJ.js} +0 -0
  338. /package/dist/assets/{kusto-Cd20wvqp.js → kusto-BnUa5uHr.js} +0 -0
  339. /package/dist/assets/{laserwave-Bg9CK1g0.js → laserwave-BPO5VXXS.js} +0 -0
  340. /package/dist/assets/{lean-BFRCe_H4.js → lean-Z7O9sZeQ.js} +0 -0
  341. /package/dist/assets/{less-p1NRP6KM.js → less-9u8t21jj.js} +0 -0
  342. /package/dist/assets/{lib-eGZllh2n.js → lib-B020BIem.js} +0 -0
  343. /package/dist/assets/{light-plus-upjemLP3.js → light-plus-Wc5scgJh.js} +0 -0
  344. /package/dist/assets/{llvm-Cet_tzjQ.js → llvm-DUPAzzzh.js} +0 -0
  345. /package/dist/assets/{log-DBmXghSa.js → log-yVIkEnLV.js} +0 -0
  346. /package/dist/assets/{logo-BLXhBfIu.js → logo-BMjRBAP1.js} +0 -0
  347. /package/dist/assets/{luau-CT4sQte_.js → luau-CRLNKfW2.js} +0 -0
  348. /package/dist/assets/{make-CzZ-Pqm8.js → make-ABiaNV_U.js} +0 -0
  349. /package/dist/assets/{markdown-CK4ZeF9q.js → markdown-Dn1PAeWy.js} +0 -0
  350. /package/dist/assets/{material-theme-B0X5JuGU.js → material-theme-DKIEc_9D.js} +0 -0
  351. /package/dist/assets/{material-theme-darker-bAfX1Mca.js → material-theme-darker-CKATunxP.js} +0 -0
  352. /package/dist/assets/{material-theme-lighter-kiXQ2ArM.js → material-theme-lighter-Ch4hbIqq.js} +0 -0
  353. /package/dist/assets/{material-theme-ocean-0YlpVqMF.js → material-theme-ocean-DMLBHhVS.js} +0 -0
  354. /package/dist/assets/{material-theme-palenight-BuhI7LV9.js → material-theme-palenight-rAwveJbA.js} +0 -0
  355. /package/dist/assets/{matlab-d4q8V2kc.js → matlab-nAylgdir.js} +0 -0
  356. /package/dist/assets/{mdx-K6mWiB31.js → mdx-D21b3pUC.js} +0 -0
  357. /package/dist/assets/{mermaid-CPUZiUu1.js → mermaid-BpHmCKn1.js} +0 -0
  358. /package/dist/assets/{min-dark-2Rbk1Br6.js → min-dark-B0702Ln3.js} +0 -0
  359. /package/dist/assets/{min-light-BmT_ha59.js → min-light-9h8I8ujc.js} +0 -0
  360. /package/dist/assets/{mipsasm-DK7WtL4H.js → mipsasm-CtcdPU2Y.js} +0 -0
  361. /package/dist/assets/{mojo-C6jO9tbh.js → mojo-Bv8xbxSD.js} +0 -0
  362. /package/dist/assets/{monokai-n0skDik5.js → monokai-R3M-Pkjy.js} +0 -0
  363. /package/dist/assets/{moonbit-C-f1WC7g.js → moonbit-MUcZ6VT6.js} +0 -0
  364. /package/dist/assets/{move-QSx3iSl5.js → move-B0DlmhPE.js} +0 -0
  365. /package/dist/assets/{narrat-DFAniABg.js → narrat-C1e9cFYb.js} +0 -0
  366. /package/dist/assets/{nextflow-groovy-B9N2TG62.js → nextflow-groovy-WB_Hv0pj.js} +0 -0
  367. /package/dist/assets/{night-owl-mCA1q7O0.js → night-owl-BpHVNbG5.js} +0 -0
  368. /package/dist/assets/{night-owl-light-CVag60SP.js → night-owl-light-B7XHq6BU.js} +0 -0
  369. /package/dist/assets/{nix-bdwWUuk-.js → nix-Bz43yTHV.js} +0 -0
  370. /package/dist/assets/{nord-CtXtkaes.js → nord-C3Ef8EYs.js} +0 -0
  371. /package/dist/assets/{nushell--fLVweC7.js → nushell-BDgFfjsp.js} +0 -0
  372. /package/dist/assets/{objective-c-DAGpxSED.js → objective-c-CrKuI4kq.js} +0 -0
  373. /package/dist/assets/{objective-cpp-S9Qw4p5N.js → objective-cpp-Cq2sz32p.js} +0 -0
  374. /package/dist/assets/{ocaml-CXgsxD0u.js → ocaml-CaddozqL.js} +0 -0
  375. /package/dist/assets/{odin-BMIOl-Ey.js → odin-3oMQ00A0.js} +0 -0
  376. /package/dist/assets/{one-dark-pro-D0SOVXc3.js → one-dark-pro-Dtx2KhVV.js} +0 -0
  377. /package/dist/assets/{one-light-6H2Du-_j.js → one-light-BNUXpRjj.js} +0 -0
  378. /package/dist/assets/{openscad-nYs158Bh.js → openscad-Bl9bEK7K.js} +0 -0
  379. /package/dist/assets/{pascal-xdQR9yYI.js → pascal-DAlnwvFf.js} +0 -0
  380. /package/dist/assets/{pdf-DB2rCsKP.js → pdf-BbxrOchE.js} +0 -0
  381. /package/dist/assets/{pkl-CKXXcd2b.js → pkl-CUN5bqal.js} +0 -0
  382. /package/dist/assets/{plastic-CUGHL3mc.js → plastic-BTnTnib5.js} +0 -0
  383. /package/dist/assets/{plsql-Cbu0u4o0.js → plsql-CSbyze_M.js} +0 -0
  384. /package/dist/assets/{po-BzXmFbAz.js → po-DNd8SYOs.js} +0 -0
  385. /package/dist/assets/{poimandres-K0I2PGAn.js → poimandres-Du8CR7IV.js} +0 -0
  386. /package/dist/assets/{polar-JCQfk1iI.js → polar-BP89cGjR.js} +0 -0
  387. /package/dist/assets/{postcss-D-Lhrf07.js → postcss-DP5swxmN.js} +0 -0
  388. /package/dist/assets/{powerquery-B0Xnzpzi.js → powerquery-8FFmlmIB.js} +0 -0
  389. /package/dist/assets/{powershell-Dhr7o9Mu.js → powershell-Df4bjjrh.js} +0 -0
  390. /package/dist/assets/{prisma-CP6RFVWH.js → prisma-GVbmmvVi.js} +0 -0
  391. /package/dist/assets/{prolog--OnDee30.js → prolog-CgVNaQE6.js} +0 -0
  392. /package/dist/assets/{proto-D5uLba8m.js → proto-DQgw5Bn7.js} +0 -0
  393. /package/dist/assets/{public-asset-D_6jw-nO.js → public-asset-CdVbP-K-.js} +0 -0
  394. /package/dist/assets/{puppet-B-NS8S2F.js → puppet-B6qkR0ho.js} +0 -0
  395. /package/dist/assets/{purescript-YiaGpr2G.js → purescript-D6HPYETy.js} +0 -0
  396. /package/dist/assets/{python-BLHZUHuM.js → python-BQxVVqSC.js} +0 -0
  397. /package/dist/assets/{qmldir-BqPbfIfY.js → qmldir-C4uLs1pY.js} +0 -0
  398. /package/dist/assets/{qss-CNa1aCQe.js → qss-CrbqJ-bS.js} +0 -0
  399. /package/dist/assets/{query-tags-DAoC-jzg.js → query-tags-yOSQTht4.js} +0 -0
  400. /package/dist/assets/{r-DA-LaeJg.js → r-BYcMR2CA.js} +0 -0
  401. /package/dist/assets/{racket-Bbm_5p0C.js → racket-CYlA9b-a.js} +0 -0
  402. /package/dist/assets/{raku-C97eJ11n.js → raku-DskHTPaV.js} +0 -0
  403. /package/dist/assets/{red-BcnEthHf.js → red-C6BsNewa.js} +0 -0
  404. /package/dist/assets/{reg-BE7bjPQ8.js → reg-CVAsZyTh.js} +0 -0
  405. /package/dist/assets/{regexp-zNGmBvxe.js → regexp-CE46xxOu.js} +0 -0
  406. /package/dist/assets/{rel-DxkHU6ey.js → rel-C3ws-d8w.js} +0 -0
  407. /package/dist/assets/{riscv-s2KghewY.js → riscv-zwK-GGe7.js} +0 -0
  408. /package/dist/assets/{ron-C2k99hFN.js → ron-DKXxeRcR.js} +0 -0
  409. /package/dist/assets/{rose-pine-DvkjqEA5.js → rose-pine-D16YZ514.js} +0 -0
  410. /package/dist/assets/{rose-pine-dawn-IDeCX2R_.js → rose-pine-dawn-C6PC9FaW.js} +0 -0
  411. /package/dist/assets/{rose-pine-moon-AwRS3fIg.js → rose-pine-moon-B-ONpfIN.js} +0 -0
  412. /package/dist/assets/{rosmsg-DZvmyLbf.js → rosmsg-Cly8Evf4.js} +0 -0
  413. /package/dist/assets/{rust-BR0kD35m.js → rust-COkR_9xi.js} +0 -0
  414. /package/dist/assets/{sass-B1iDQwrz.js → sass-DDyX_867.js} +0 -0
  415. /package/dist/assets/{scala-B_bbzrFM.js → scala-BseDqmtP.js} +0 -0
  416. /package/dist/assets/{scheme-Bh3SmU2Z.js → scheme-0Ar7fzWG.js} +0 -0
  417. /package/dist/assets/{sdbl-BjuGg6Hv.js → sdbl-BjheWPT8.js} +0 -0
  418. /package/dist/assets/{semver-DLbEvyUs.js → semver-DI5hyC-t.js} +0 -0
  419. /package/dist/assets/{shellscript-Df7hfJNE.js → shellscript-DbCYZXfD.js} +0 -0
  420. /package/dist/assets/{slack-dark-BMKx-uNu.js → slack-dark-B8yuPDrG.js} +0 -0
  421. /package/dist/assets/{slack-ochin-DVWF26Tk.js → slack-ochin-DLZ-yxLq.js} +0 -0
  422. /package/dist/assets/{smalltalk-DOyDlfjw.js → smalltalk-DhsjsTfs.js} +0 -0
  423. /package/dist/assets/{snazzy-light-CV5I2qfQ.js → snazzy-light-BdZObzxx.js} +0 -0
  424. /package/dist/assets/{solarized-dark-ROrlu8b7.js → solarized-dark-DnY9BvAi.js} +0 -0
  425. /package/dist/assets/{solarized-light-DLaQaEqx.js → solarized-light-BfrwmYru.js} +0 -0
  426. /package/dist/assets/{solidity-Cpy-lQA4.js → solidity-DPjYkHh9.js} +0 -0
  427. /package/dist/assets/{splunk-amWRSsqJ.js → splunk-aauv22i7.js} +0 -0
  428. /package/dist/assets/{sql-LDYZUbXj.js → sql-ChQ8ry3n.js} +0 -0
  429. /package/dist/assets/{ssh-config-DFL3K5A6.js → ssh-config-Dz6ViL0P.js} +0 -0
  430. /package/dist/assets/{stylus-CpFppqWZ.js → stylus-BOOipACK.js} +0 -0
  431. /package/dist/assets/{swift-Cm8RIbkm.js → swift-m0EGSEdy.js} +0 -0
  432. /package/dist/assets/{synthwave-84-B07FyWEU.js → synthwave-84-BgN63B7_.js} +0 -0
  433. /package/dist/assets/{system-verilog-Efh9Iyxc.js → system-verilog-DA9NXNZH.js} +0 -0
  434. /package/dist/assets/{systemd-CM8aBYFi.js → systemd-6ndOYGhY.js} +0 -0
  435. /package/dist/assets/{talonscript-DNBlw3UJ.js → talonscript-B8LuZYir.js} +0 -0
  436. /package/dist/assets/{tasl-B5CaCj6V.js → tasl-xnHVT9C9.js} +0 -0
  437. /package/dist/assets/{tcl-LiOm-HhN.js → tcl-BODTsuI7.js} +0 -0
  438. /package/dist/assets/{terraform-Z3CLHZWW.js → terraform-BKPIDy8E.js} +0 -0
  439. /package/dist/assets/{tokyo-night-C_9jP15n.js → tokyo-night-DL0vCNuB.js} +0 -0
  440. /package/dist/assets/{toml-CH-AWylV.js → toml-DFQNE4Bb.js} +0 -0
  441. /package/dist/assets/{tsv-CbgjNKMk.js → tsv-CiCFnPYM.js} +0 -0
  442. /package/dist/assets/{tsx-DMQkHAfP.js → tsx-r66DnitA.js} +0 -0
  443. /package/dist/assets/{turtle-DyuXN5E6.js → turtle-D6TqBP-R.js} +0 -0
  444. /package/dist/assets/{typescript-DWQix_1Y.js → typescript-DywEkG3h.js} +0 -0
  445. /package/dist/assets/{typespec-BAtHNJ2P.js → typespec-CGjgqr9W.js} +0 -0
  446. /package/dist/assets/{typst-Ccl-pSVT.js → typst-Bx-thO8d.js} +0 -0
  447. /package/dist/assets/{use-is-mobile-BFvLVXwH.js → use-is-mobile-B9vjoiOp.js} +0 -0
  448. /package/dist/assets/{use-reduced-motion-Blyqtp4V.js → use-reduced-motion-GQ_HVFpK.js} +0 -0
  449. /package/dist/assets/{v-B-fTy4zo.js → v-4VB7M7V1.js} +0 -0
  450. /package/dist/assets/{vala-B5pVtMk_.js → vala-DyD7epks.js} +0 -0
  451. /package/dist/assets/{vb-Bmh_zzxH.js → vb-MkcXsT7p.js} +0 -0
  452. /package/dist/assets/{verilog-CdTJwARf.js → verilog-CxKKBB7K.js} +0 -0
  453. /package/dist/assets/{vesper-CLXAFKGT.js → vesper-BWWaFc_5.js} +0 -0
  454. /package/dist/assets/{vhdl-B4YfSXFK.js → vhdl-FnKcRQFJ.js} +0 -0
  455. /package/dist/assets/{viml-CCaONKHu.js → viml-CLoIdFzC.js} +0 -0
  456. /package/dist/assets/{vitesse-black-DRcju0Ze.js → vitesse-black-LsvPTIiF.js} +0 -0
  457. /package/dist/assets/{vitesse-dark-WdU9udp0.js → vitesse-dark-xzpAWWRe.js} +0 -0
  458. /package/dist/assets/{vitesse-light-ByFqwcMo.js → vitesse-light-Dw68nIQJ.js} +0 -0
  459. /package/dist/assets/{vyper-BPJ2UA1J.js → vyper-DMsUwnVX.js} +0 -0
  460. /package/dist/assets/{wasm-BQxIq9Eb.js → wasm-CGZ0ykRa.js} +0 -0
  461. /package/dist/assets/{wasm-Du4Oqb3T.js → wasm-ic38CN6z.js} +0 -0
  462. /package/dist/assets/{wenyan-AvBa7-F9.js → wenyan-COLZAIZW.js} +0 -0
  463. /package/dist/assets/{wgsl-VJugdx8c.js → wgsl-D-u1_3zX.js} +0 -0
  464. /package/dist/assets/{wikitext-BPOx0NBh.js → wikitext-l1E17Wn7.js} +0 -0
  465. /package/dist/assets/{wit-e40cyGQD.js → wit-BW55uw8a.js} +0 -0
  466. /package/dist/assets/{wolfram-DvIVouaK.js → wolfram-C0owoV7l.js} +0 -0
  467. /package/dist/assets/{xterm-D62GGRqD.js → xterm-AXHTOo82.js} +0 -0
  468. /package/dist/assets/{xterm-addon-fit-B4zTZTld.js → xterm-addon-fit-CfpfPbfB.js} +0 -0
  469. /package/dist/assets/{yaml-c7bUfcEd.js → yaml-DP2H7z8n.js} +0 -0
  470. /package/dist/assets/{zenscript-CeS3qazQ.js → zenscript-ChRsLAgZ.js} +0 -0
  471. /package/dist/assets/{zig-DigpDLaV.js → zig-s66PLVk_.js} +0 -0
@@ -1,4 +0,0 @@
1
- import{t as e}from"./api-errors-DhNZwQy5.js";var t=typeof __SENTRY_DEBUG__>`u`||__SENTRY_DEBUG__,n=globalThis,r=`10.53.1`;function i(){return a(n),n}function a(e){let t=e.__SENTRY__=e.__SENTRY__||{};return t.version=t.version||`10.53.1`,t[r]=t[`10.53.1`]||{}}function o(e,t,i=n){let a=i.__SENTRY__=i.__SENTRY__||{},o=a[r]=a[`10.53.1`]||{};return o[e]||(o[e]=t())}var s=[`debug`,`info`,`warn`,`error`,`log`,`assert`,`trace`],c=`Sentry Logger `,l={};function u(e){if(!(`console`in n))return e();let t=n.console,r={},i=Object.keys(l);i.forEach(e=>{let n=l[e];r[e]=t[e],t[e]=n});try{return e()}finally{i.forEach(e=>{t[e]=r[e]})}}function d(){ne().enabled=!0}function f(){ne().enabled=!1}function p(){return ne().enabled}function m(...e){te(`log`,...e)}function h(...e){te(`warn`,...e)}function ee(...e){te(`error`,...e)}function te(e,...r){t&&p()&&u(()=>{n.console[e](`${c}[${e}]:`,...r)})}function ne(){return t?o(`loggerSettings`,()=>({enabled:!1})):{enabled:!1}}var g={enable:d,disable:f,isEnabled:p,log:m,warn:h,error:ee},re=50,ie=/\(error: (.*)\)/,ae=/captureMessage|captureException/;function oe(...e){let t=e.sort((e,t)=>e[0]-t[0]).map(e=>e[1]);return(e,n=0,r=0)=>{let i=[],a=e.split(`
2
- `);for(let e=n;e<a.length;e++){let n=a[e];n.length>1024&&(n=n.slice(0,1024));let o=ie.test(n)?n.replace(ie,`$1`):n;if(!o.includes(`Error: `)){for(let e of t){let t=e(o);if(t){i.push(t);break}}if(i.length>=re+r)break}}return ce(i.slice(r))}}function se(e){return Array.isArray(e)?oe(...e):e}function ce(e){if(!e.length)return[];let t=Array.from(e);return/sentryWrapped/.test(le(t).function||``)&&t.pop(),t.reverse(),ae.test(le(t).function||``)&&(t.pop(),ae.test(le(t).function||``)&&t.pop()),t.slice(0,re).map(e=>({...e,filename:e.filename||le(t).filename,function:e.function||`?`}))}function le(e){return e[e.length-1]||{}}var ue=`<anonymous>`;function de(e){try{return!e||typeof e!=`function`?ue:e.name||ue}catch{return ue}}function fe(e){let t=e.exception;if(t){let e=[];try{return t.values.forEach(t=>{t.stacktrace.frames&&e.push(...t.stacktrace.frames)}),e}catch{return}}}function pe(e){return`__v_isVNode`in e&&e.__v_isVNode?`[VueVNode]`:`[VueViewModel]`}var me=Object.prototype.toString;function he(e){switch(me.call(e)){case`[object Error]`:case`[object Exception]`:case`[object DOMException]`:case`[object WebAssembly.Exception]`:return!0;default:return b(e,Error)}}function _(e,t){return me.call(e)===`[object ${t}]`}function ge(e){return _(e,`ErrorEvent`)}function _e(e){return _(e,`DOMError`)}function ve(e){return _(e,`DOMException`)}function v(e){return _(e,`String`)}function ye(e){return typeof e==`object`&&!!e&&`__sentry_template_string__`in e&&`__sentry_template_values__`in e}function be(e){return e===null||ye(e)||typeof e!=`object`&&typeof e!=`function`}function xe(e){return _(e,`Object`)}function Se(e){return typeof Event<`u`&&b(e,Event)}function Ce(e){return typeof Element<`u`&&b(e,Element)}function we(e){return _(e,`RegExp`)}function y(e){return!!(e?.then&&typeof e.then==`function`)}function Te(e){return xe(e)&&`nativeEvent`in e&&`preventDefault`in e&&`stopPropagation`in e}function b(e,t){try{return e instanceof t}catch{return!1}}function Ee(e){return!!(typeof e==`object`&&e&&(e.__isVue||e._isVue||e.__v_isVNode))}function De(e){return typeof Request<`u`&&b(e,Request)}var Oe=n,ke=80;function Ae(e,t={}){if(!e)return`<unknown>`;try{let n=e,r=[],i=0,a=0,o,s=Array.isArray(t)?t:t.keyAttrs,c=!Array.isArray(t)&&t.maxStringLength||ke;for(;n&&i++<5&&(o=je(n,s),!(o===`html`||i>1&&a+r.length*3+o.length>=c));)r.push(o),a+=o.length,n=n.parentNode;return r.reverse().join(` > `)}catch{return`<unknown>`}}function je(e,t){let n=e,r=[];if(!n?.tagName)return``;if(Oe.HTMLElement&&n instanceof HTMLElement&&n.dataset){if(n.dataset.sentryComponent)return n.dataset.sentryComponent;if(n.dataset.sentryElement)return n.dataset.sentryElement}r.push(n.tagName.toLowerCase());let i=t?.length?t.filter(e=>n.getAttribute(e)).map(e=>[e,n.getAttribute(e)]):null;if(i?.length)i.forEach(e=>{r.push(`[${e[0]}="${e[1]}"]`)});else{n.id&&r.push(`#${n.id}`);let e=n.className;if(e&&v(e)){let t=e.split(/\s+/);for(let e of t)r.push(`.${e}`)}}for(let e of[`aria-label`,`type`,`name`,`title`,`alt`]){let t=n.getAttribute(e);t&&r.push(`[${e}="${t}"]`)}return r.join(``)}function Me(){try{return Oe.document.location.href}catch{return``}}function Ne(e,t=5){if(!Oe.HTMLElement)return null;let n=e;for(let e=0;e<t;e++){if(!n)return null;if(n instanceof HTMLElement){if(n.dataset.sentryComponent)return n.dataset.sentryComponent;if(n.dataset.sentryElement)return n.dataset.sentryElement}n=n.parentNode}return null}function Pe(e,n,r){if(!(n in e))return;let i=e[n];if(typeof i!=`function`)return;let a=r(i);typeof a==`function`&&Fe(a,i);try{e[n]=a}catch{t&&g.log(`Failed to replace method "${n}" in object`,e)}}function x(e,n,r){try{Object.defineProperty(e,n,{value:r,writable:!0,configurable:!0})}catch{t&&g.log(`Failed to add non-enumerable property "${String(n)}" to object`,e)}}function Fe(e,t){try{e.prototype=t.prototype=t.prototype||{},x(e,`__sentry_original__`,t)}catch{}}function Ie(e){return e.__sentry_original__}function Le(e){if(he(e))return{message:e.message,name:e.name,stack:e.stack,...ze(e)};if(Se(e)){let t={type:e.type,target:Re(e.target),currentTarget:Re(e.currentTarget),...ze(e)};return typeof CustomEvent<`u`&&b(e,CustomEvent)&&(t.detail=e.detail),t}else return e}function Re(e){try{return Ce(e)?Ae(e):Object.prototype.toString.call(e)}catch{return`<unknown>`}}function ze(e){return typeof e==`object`&&e?Object.fromEntries(Object.entries(e)):{}}function Be(e){let t=Object.keys(Le(e));return t.sort(),t[0]?t.join(`, `):`[object has no keys]`}var S;function C(e){if(S!==void 0)return S?S(e):e();let t=Symbol.for(`__SENTRY_SAFE_RANDOM_ID_WRAPPER__`),r=n;return t in r&&typeof r[t]==`function`?(S=r[t],S(e)):(S=null,e())}function w(){return C(()=>Math.random())}function Ve(){return C(()=>Date.now())}function He(e,t=0){return typeof e!=`string`||t===0||e.length<=t?e:`${e.slice(0,t)}...`}function Ue(e,t){if(!Array.isArray(e))return``;let n=[];for(let t=0;t<e.length;t++){let r=e[t];try{Ee(r)?n.push(pe(r)):n.push(String(r))}catch{n.push(`[value cannot be serialized]`)}}return n.join(t)}function T(e,t,n=!1){return v(e)?we(t)?t.test(e):v(t)?n?e===t:e.includes(t):typeof t==`function`?t(e):!1:!1}function We(e,t=[],n=!1){for(let r of t)if(T(e,r,n))return!0;return!1}function Ge(){let e=n;return e.crypto||e.msCrypto}var Ke;function qe(){return w()*16}function E(e=Ge()){try{if(e?.randomUUID)return C(()=>e.randomUUID()).replace(/-/g,``)}catch{}return Ke||=`10000000100040008000100000000000`,Ke.replace(/[018]/g,e=>(e^(qe()&15)>>e/4).toString(16))}function Je(e){return e.exception?.values?.[0]}function Ye(e){let{message:t,event_id:n}=e;if(t)return t;let r=Je(e);return r?r.type&&r.value?`${r.type}: ${r.value}`:r.type||r.value||n||`<unknown>`:n||`<unknown>`}function Xe(e,t,n){let r=e.exception=e.exception||{},i=r.values=r.values||[],a=i[0]=i[0]||{};a.value||=t||``,a.type||=n||`Error`}function Ze(e,t){let n=Je(e);if(!n)return;let r={type:`generic`,handled:!0},i=n.mechanism;if(n.mechanism={...r,...i,...t},t&&`data`in t){let e={...i?.data,...t.data};n.mechanism.data=e}}function Qe(e){if($e(e))return!0;try{x(e,`__sentry_captured__`,!0)}catch{}return!1}function $e(e){try{return e.__sentry_captured__}catch{}}var et=1e3;function D(){return Ve()/et}function tt(){let{performance:e}=n;if(!e?.now||!e.timeOrigin)return D;let t=e.timeOrigin;return()=>(t+C(()=>e.now()))/et}var nt;function O(){return(nt??=tt())()}function rt(e){let t=O(),n={sid:E(),init:!0,timestamp:t,started:t,duration:0,status:`ok`,errors:0,ignoreDuration:!1,toJSON:()=>at(n)};return e&&k(n,e),n}function k(e,t={}){if(t.user&&(!e.ipAddress&&t.user.ip_address&&(e.ipAddress=t.user.ip_address),!e.did&&!t.did&&(e.did=t.user.id||t.user.email||t.user.username)),e.timestamp=t.timestamp||O(),t.abnormal_mechanism&&(e.abnormal_mechanism=t.abnormal_mechanism),t.ignoreDuration&&(e.ignoreDuration=t.ignoreDuration),t.sid&&(e.sid=t.sid.length===32?t.sid:E()),t.init!==void 0&&(e.init=t.init),!e.did&&t.did&&(e.did=`${t.did}`),typeof t.started==`number`&&(e.started=t.started),e.ignoreDuration)e.duration=void 0;else if(typeof t.duration==`number`)e.duration=t.duration;else{let t=e.timestamp-e.started;e.duration=t>=0?t:0}t.release&&(e.release=t.release),t.environment&&(e.environment=t.environment),!e.ipAddress&&t.ipAddress&&(e.ipAddress=t.ipAddress),!e.userAgent&&t.userAgent&&(e.userAgent=t.userAgent),typeof t.errors==`number`&&(e.errors=t.errors),t.status&&(e.status=t.status)}function it(e,t){let n={};t?n={status:t}:e.status===`ok`&&(n={status:`exited`}),k(e,n)}function at(e){return{sid:`${e.sid}`,init:e.init,started:new Date(e.started*1e3).toISOString(),timestamp:new Date(e.timestamp*1e3).toISOString(),status:e.status,errors:e.errors,did:typeof e.did==`number`||typeof e.did==`string`?`${e.did}`:void 0,duration:e.duration,abnormal_mechanism:e.abnormal_mechanism,attrs:{release:e.release,environment:e.environment,ip_address:e.ipAddress,user_agent:e.userAgent}}}function A(e,t,n=2){if(!t||typeof t!=`object`||n<=0)return t;if(e&&Object.keys(t).length===0)return e;let r={...e};for(let e in t)Object.prototype.hasOwnProperty.call(t,e)&&(r[e]=A(r[e],t[e],n-1));return r}function j(){return E()}function M(){return E().substring(16)}var ot=`_sentrySpan`;function st(e,t){t?x(e,ot,t):delete e[ot]}function ct(e){return e[ot]}var lt=100,N=class e{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._attributes={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:j(),sampleRand:w()}}clone(){let t=new e;return t._breadcrumbs=[...this._breadcrumbs],t._tags={...this._tags},t._attributes={...this._attributes},t._extra={...this._extra},t._contexts={...this._contexts},this._contexts.flags&&(t._contexts.flags={values:[...this._contexts.flags.values]}),t._user=this._user,t._level=this._level,t._session=this._session,t._transactionName=this._transactionName,t._fingerprint=this._fingerprint,t._eventProcessors=[...this._eventProcessors],t._attachments=[...this._attachments],t._sdkProcessingMetadata={...this._sdkProcessingMetadata},t._propagationContext={...this._propagationContext},t._client=this._client,t._lastEventId=this._lastEventId,t._conversationId=this._conversationId,st(t,ct(this)),t}setClient(e){this._client=e}setLastEventId(e){this._lastEventId=e}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(e){this._scopeListeners.push(e)}addEventProcessor(e){return this._eventProcessors.push(e),this}setUser(e){return this._user=e||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session&&k(this._session,{user:e}),this._notifyScopeListeners(),this}getUser(){return this._user}setConversationId(e){return this._conversationId=e||void 0,this._notifyScopeListeners(),this}setTags(e){return this._tags={...this._tags,...e},this._notifyScopeListeners(),this}setTag(e,t){return this.setTags({[e]:t})}setAttributes(e){return this._attributes={...this._attributes,...e},this._notifyScopeListeners(),this}setAttribute(e,t){return this.setAttributes({[e]:t})}removeAttribute(e){return e in this._attributes&&(delete this._attributes[e],this._notifyScopeListeners()),this}setExtras(e){return this._extra={...this._extra,...e},this._notifyScopeListeners(),this}setExtra(e,t){return this._extra={...this._extra,[e]:t},this._notifyScopeListeners(),this}setFingerprint(e){return this._fingerprint=e,this._notifyScopeListeners(),this}setLevel(e){return this._level=e,this._notifyScopeListeners(),this}setTransactionName(e){return this._transactionName=e,this._notifyScopeListeners(),this}setContext(e,t){return t===null?delete this._contexts[e]:this._contexts[e]=t,this._notifyScopeListeners(),this}setSession(e){return e?this._session=e:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(t){if(!t)return this;let n=typeof t==`function`?t(this):t,{tags:r,attributes:i,extra:a,user:o,contexts:s,level:c,fingerprint:l=[],propagationContext:u,conversationId:d}=(n instanceof e?n.getScopeData():xe(n)?t:void 0)||{};return this._tags={...this._tags,...r},this._attributes={...this._attributes,...i},this._extra={...this._extra,...a},this._contexts={...this._contexts,...s},o&&Object.keys(o).length&&(this._user=o),c&&(this._level=c),l.length&&(this._fingerprint=l),u&&(this._propagationContext=u),d&&(this._conversationId=d),this}clear(){return this._breadcrumbs=[],this._tags={},this._attributes={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,this._conversationId=void 0,st(this,void 0),this._attachments=[],this.setPropagationContext({traceId:j(),sampleRand:w()}),this._notifyScopeListeners(),this}addBreadcrumb(e,t){let n=typeof t==`number`?t:lt;if(n<=0)return this;let r={timestamp:D(),...e,message:e.message?He(e.message,2048):e.message};return this._breadcrumbs.push(r),this._breadcrumbs.length>n&&(this._breadcrumbs=this._breadcrumbs.slice(-n),this._client?.recordDroppedEvent(`buffer_overflow`,`log_item`)),this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(e){return this._attachments.push(e),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,attributes:this._attributes,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:ct(this),conversationId:this._conversationId}}setSDKProcessingMetadata(e){return this._sdkProcessingMetadata=A(this._sdkProcessingMetadata,e,2),this}setPropagationContext(e){return this._propagationContext=e,this}getPropagationContext(){return this._propagationContext}captureException(e,n){let r=n?.event_id||E();if(!this._client)return t&&g.warn(`No client configured on scope - will not capture exception!`),r;let i=Error(`Sentry syntheticException`);return this._client.captureException(e,{originalException:e,syntheticException:i,...n,event_id:r},this),r}captureMessage(e,n,r){let i=r?.event_id||E();if(!this._client)return t&&g.warn(`No client configured on scope - will not capture message!`),i;let a=r?.syntheticException??Error(e);return this._client.captureMessage(e,n,{originalException:e,syntheticException:a,...r,event_id:i},this),i}captureEvent(e,n){let r=e.event_id||n?.event_id||E();return this._client?(this._client.captureEvent(e,{...n,event_id:r},this),r):(t&&g.warn(`No client configured on scope - will not capture event!`),r)}_notifyScopeListeners(){this._notifyingListeners||=(this._notifyingListeners=!0,this._scopeListeners.forEach(e=>{e(this)}),!1)}};function ut(){return o(`defaultCurrentScope`,()=>new N)}function dt(){return o(`defaultIsolationScope`,()=>new N)}var ft=e=>e instanceof Promise&&!e[pt],pt=Symbol(`chained PromiseLike`),mt=(e,t,n)=>{let r=e.then(e=>(t(e),e),e=>{throw n(e),e});return ft(r)&&ft(e)?r:ht(e,r)},ht=(e,t)=>{if(!t)return e;let n=!1;for(let r in e){if(r in t)continue;n=!0;let i=e[r];typeof i==`function`?Object.defineProperty(t,r,{value:(...t)=>i.apply(e,t),enumerable:!0,configurable:!0,writable:!0}):t[r]=i}return n&&Object.assign(t,{[pt]:!0}),t},gt=class{constructor(e,t){let n;n=e||new N;let r;r=t||new N,this._stack=[{scope:n}],this._isolationScope=r}withScope(e){let t=this._pushScope(),n;try{n=e(t)}catch(e){throw this._popScope(),e}return y(n)?mt(n,()=>this._popScope(),()=>this._popScope()):(this._popScope(),n)}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let e=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:e}),e}_popScope(){return this._stack.length<=1?!1:!!this._stack.pop()}};function P(){let e=a(i());return e.stack=e.stack||new gt(ut(),dt())}function _t(e){return P().withScope(e)}function vt(e,t){let n=P();return n.withScope(()=>(n.getStackTop().scope=e,t(e)))}function yt(e){return P().withScope(()=>e(P().getIsolationScope()))}function bt(){return{withIsolationScope:yt,withScope:_t,withSetScope:vt,withSetIsolationScope:(e,t)=>yt(t),getCurrentScope:()=>P().getScope(),getIsolationScope:()=>P().getIsolationScope()}}function F(e){let t=a(e);return t.acs?t.acs:bt()}function xt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)&&Object.keys(e).includes(`value`)}function St(e,t){let{value:n,unit:r}=xt(e)?e:{value:e,unit:void 0},i=wt(n),a=r&&typeof r==`string`?{unit:r}:{};if(i)return{...i,...a};if(!t||t===`skip-undefined`&&n===void 0)return;let o=``;try{o=JSON.stringify(n)??``}catch{}return{value:o,type:`string`,...a}}function Ct(e,t=!1){let n={};for(let[r,i]of Object.entries(e??{})){let e=St(i,t);e&&(n[r]=e)}return n}function wt(e){let t=typeof e==`string`?`string`:typeof e==`boolean`?`boolean`:typeof e==`number`&&!Number.isNaN(e)?Number.isInteger(e)?`integer`:`double`:null;if(t)return{value:e,type:t}}var Tt;function Et(){return Tt?.()}function I(){return F(i()).getCurrentScope()}function L(){return F(i()).getIsolationScope()}function Dt(){return o(`globalScope`,()=>new N)}function Ot(...e){let t=F(i());if(e.length===2){let[n,r]=e;return n?t.withSetScope(n,r):t.withScope(r)}return t.withScope(e[0])}function R(){return I().getClient()}function kt(e){let t=Et();if(t)return{trace_id:t.traceId,span_id:t.spanId};let{traceId:n,parentSpanId:r,propagationSpanId:i}=e.getPropagationContext(),a={trace_id:n,span_id:i||M()};return r&&(a.parent_span_id=r),a}var At=`sentry.source`,jt=`sentry.sample_rate`,Mt=`sentry.op`,Nt=`sentry.origin`,Pt=`sentry.measurement_unit`,Ft=`sentry.measurement_value`,It=`sentry.custom_span_name`,Lt=`sentry.profile_id`,Rt=`sentry.exclusive_time`,zt=`gen_ai.conversation.id`;function Bt(e){try{let t=n.WeakRef;if(typeof t==`function`)return new t(e)}catch{}return e}function Vt(e){if(e){if(typeof e==`object`&&`deref`in e&&typeof e.deref==`function`)try{return e.deref()}catch{return}return e}}var Ht=`_sentryScope`,Ut=`_sentryIsolationScope`;function Wt(e,t,n){e&&(x(e,Ut,Bt(n)),x(e,Ht,t))}function z(e){let t=e;return{scope:t[Ht],isolationScope:Vt(t[Ut])}}function Gt(e){let t=Kt(e);if(!t)return;let n=Object.entries(t).reduce((e,[t,n])=>{if(t.startsWith(`sentry-`)){let r=t.slice(7);e[r]=n}return e},{});if(Object.keys(n).length>0)return n}function Kt(e){if(!(!e||!v(e)&&!Array.isArray(e)))return Array.isArray(e)?e.reduce((e,t)=>{let n=qt(t);return Object.entries(n).forEach(([t,n])=>{e[t]=n}),e},{}):qt(e)}function qt(e){return e.split(`,`).map(e=>{let t=e.indexOf(`=`);return t===-1?[]:[e.slice(0,t),e.slice(t+1)].map(e=>{try{return decodeURIComponent(e.trim())}catch{return}})}).reduce((e,[t,n])=>(t&&n&&(e[t]=n),e),{})}var Jt=/^o(\d+)\./,Yt=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)((?:\[[:.%\w]+\]|[\w.-]+))(?::(\d+))?\/(.+)/;function Xt(e){return e===`http`||e===`https`}function B(e,t=!1){let{host:n,path:r,pass:i,port:a,projectId:o,protocol:s,publicKey:c}=e;return`${s}://${c}${t&&i?`:${i}`:``}@${n}${a?`:${a}`:``}/${r&&`${r}/`}${o}`}function Zt(e){let t=Yt.exec(e);if(!t){u(()=>{console.error(`Invalid Sentry Dsn: ${e}`)});return}let[n,r,i=``,a=``,o=``,s=``]=t.slice(1),c=``,l=s,d=l.split(`/`);if(d.length>1&&(c=d.slice(0,-1).join(`/`),l=d.pop()),l){let e=l.match(/^\d+/);e&&(l=e[0])}return Qt({host:a,pass:i,path:c,projectId:l,port:o,protocol:n,publicKey:r})}function Qt(e){return{protocol:e.protocol,publicKey:e.publicKey||``,pass:e.pass||``,host:e.host,port:e.port||``,path:e.path||``,projectId:e.projectId}}function $t(e){if(!t)return!0;let{port:n,projectId:r,protocol:i}=e;return[`protocol`,`publicKey`,`host`,`projectId`].find(t=>e[t]?!1:(g.error(`Invalid Sentry Dsn: ${t} missing`),!0))?!1:r.match(/^\d+$/)?Xt(i)?n&&isNaN(parseInt(n,10))?(g.error(`Invalid Sentry Dsn: Invalid port ${n}`),!1):!0:(g.error(`Invalid Sentry Dsn: Invalid protocol ${i}`),!1):(g.error(`Invalid Sentry Dsn: Invalid projectId ${r}`),!1)}function en(e){return e.match(Jt)?.[1]}function tn(e){let t=e.getOptions(),{host:n}=e.getDsn()||{},r;return t.orgId?r=String(t.orgId):n&&(r=en(n)),r}function nn(e){let t=typeof e==`string`?Zt(e):Qt(e);if(!(!t||!$t(t)))return t}function rn(e){if(typeof e==`boolean`)return Number(e);let t=typeof e==`string`?parseFloat(e):e;if(!(typeof t!=`number`||isNaN(t)||t<0||t>1))return t}var an=!1;function on(e){let{spanId:t,traceId:n}=e.spanContext(),{data:r,op:i,parent_span_id:a,status:o,origin:s,links:c}=H(e);return{parent_span_id:a,span_id:t,trace_id:n,data:r,op:i,status:o,origin:s,links:c}}function sn(e){let{spanId:t,traceId:n,isRemote:r}=e.spanContext(),i=r?t:H(e).parent_span_id,a=z(e).scope;return{parent_span_id:i,span_id:r?a?.getPropagationContext().propagationSpanId||M():t,trace_id:n}}function cn(e){if(e&&e.length>0)return e.map(({context:{spanId:e,traceId:t,traceFlags:n,...r},attributes:i})=>({span_id:e,trace_id:t,sampled:n===1,attributes:i,...r}))}function ln(e){if(e?.length)return e.map(({context:{spanId:e,traceId:t,traceFlags:n},attributes:r})=>({span_id:e,trace_id:t,sampled:n===1,attributes:r}))}function V(e){return typeof e==`number`?un(e):Array.isArray(e)?e[0]+e[1]/1e9:e instanceof Date?un(e.getTime()):O()}function un(e){return e>9999999999?e/1e3:e}function H(e){if(mn(e))return e.getSpanJSON();let{spanId:t,traceId:n}=e.spanContext();if(pn(e)){let{attributes:r,startTime:i,name:a,endTime:o,status:s,links:c}=e;return{span_id:t,trace_id:n,data:r,description:a,parent_span_id:dn(e),start_timestamp:V(i),timestamp:V(o)||void 0,status:hn(s),op:r[Mt],origin:r[Nt],links:cn(c)}}return{span_id:t,trace_id:n,start_timestamp:0,data:{}}}function dn(e){return`parentSpanId`in e?e.parentSpanId:`parentSpanContext`in e?e.parentSpanContext?.spanId:void 0}function fn(e){return{...e,attributes:Ct(e.attributes),links:e.links?.map(e=>({...e,attributes:Ct(e.attributes)}))}}function pn(e){let t=e;return!!t.attributes&&!!t.startTime&&!!t.name&&!!t.endTime&&!!t.status}function mn(e){return typeof e.getSpanJSON==`function`}function U(e){let{traceFlags:t}=e.spanContext();return t===1}function hn(e){if(!(!e||e.code===0))return e.code===1?`ok`:e.message||`internal_error`}function gn(e){return!e||e.code===1||e.code===0||e.message===`cancelled`?`ok`:`error`}var W=`_sentryChildSpans`,_n=`_sentryRootSpan`;function vn(e,t){x(t,_n,e[_n]||e),e[W]?e[W].add(t):x(e,W,new Set([t]))}function yn(e){let t=new Set;function n(e){if(!t.has(e)&&U(e)){t.add(e);let r=e[W]?Array.from(e[W]):[];for(let e of r)n(e)}}return n(e),Array.from(t)}var G=bn;function bn(e){return e[_n]||e}function xn(){an||=(u(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly or use `ignoreSpans`.")}),!0)}function Sn(e){if(typeof __SENTRY_TRACING__==`boolean`&&!__SENTRY_TRACING__)return!1;let t=e||R()?.getOptions();return!!t&&(t.tracesSampleRate!=null||!!t.tracesSampler)}function Cn(e){g.log(`Ignoring span ${e.op} - ${e.description} because it matches \`ignoreSpans\`.`)}function wn(e,n){if(!n?.length)return!1;for(let r of n){if(Dn(r)){if(e.description&&T(e.description,r))return t&&Cn(e),!0;continue}let n=!!r.attributes&&Object.keys(r.attributes).length>0;if(!r.name&&!r.op&&!n)continue;let i=r.name?e.description&&T(e.description,r.name):!0,a=r.op?e.op&&T(e.op,r.op):!0,o=r.attributes?Object.entries(r.attributes).every(([t,n])=>Tn(e.attributes?.[t],n)):!0;if(i&&a&&o)return t&&Cn(e),!0}return!1}function Tn(e,t){return typeof e==`string`&&(typeof t==`string`||t instanceof RegExp)?T(e,t):Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e===t}function En(e,t){let n=t.parent_span_id,r=t.span_id;if(n)for(let t of e)t.parent_span_id===r&&(t.parent_span_id=n)}function Dn(e){return typeof e==`string`||e instanceof RegExp}var On=`production`,kn=`_frozenDsc`;function An(e,t){x(e,kn,t)}function jn(e,t){let n=t.getOptions(),{publicKey:r}=t.getDsn()||{},i={environment:n.environment||`production`,release:n.release,public_key:r,trace_id:e,org_id:tn(t)};return t.emit(`createDsc`,i),i}function Mn(e,t){let n=t.getPropagationContext();return n.dsc||jn(n.traceId,e)}function K(e){let t=R();if(!t)return{};let n=G(e),r=H(n),i=r.data,a=n.spanContext().traceState,o=a?.get(`sentry.sample_rate`)??i[`sentry.sample_rate`]??i[`sentry.previous_trace_sample_rate`];function s(e){return(typeof o==`number`||typeof o==`string`)&&(e.sample_rate=`${o}`),e}let c=n[kn];if(c)return s(c);let l=a?.get(`sentry.dsc`),u=l&&Gt(l);if(u)return s(u);let d=jn(e.spanContext().traceId,t),f=i[`sentry.source`]??i[`sentry.span.source`],p=r.description;return f!==`url`&&p&&(d.transaction=p),Sn()&&(d.sampled=String(U(n)),d.sample_rand=a?.get(`sentry.sample_rand`)??z(n).scope?.getPropagationContext().sampleRand.toString()),s(d),t.emit(`createDsc`,d,n),d}var q=class{constructor(e={}){this._traceId=e.traceId||j(),this._spanId=e.spanId||M(),this.dropReason=e.dropReason}spanContext(){return{spanId:this._spanId,traceId:this._traceId,traceFlags:0}}end(e){}setAttribute(e,t){return this}setAttributes(e){return this}setStatus(e){return this}updateName(e){return this}isRecording(){return!1}addEvent(e,t,n){return this}addLink(e){return this}addLinks(e){return this}recordException(e,t){}};function Nn(e){return!!e&&typeof e==`function`&&`_streamed`in e&&!!e._streamed}var Pn=Symbol.for(`sentry.skipNormalization`),Fn=Symbol.for(`sentry.overrideNormalizationDepth`);function In(e){return!!e[Pn]}function Ln(e){let t=e[Fn];return typeof t==`number`?t:void 0}function J(e,t=100,n=1/0){try{return zn(``,e,t,n)}catch(e){return{ERROR:`**non-serializable** (${e})`}}}function Rn(e,t=3,n=100*1024){let r=J(e,t);return Un(r)>n?Rn(e,t-1,n):r}function zn(e,t,n=1/0,r=1/0,i=Wn()){let[a,o]=i;if(t==null||[`boolean`,`string`].includes(typeof t)||typeof t==`number`&&Number.isFinite(t))return t;let s=Bn(e,t);if(!s.startsWith(`[object `))return s;if(In(t))return t;let c=Ln(t),l=c===void 0?n:c;if(l===0)return s.replace(`object `,``);if(a(t))return`[Circular ~]`;let u=t;if(u&&typeof u.toJSON==`function`)try{return zn(``,u.toJSON(),l-1,r,i)}catch{}let d=Array.isArray(t)?[]:{},f=0,p=Le(t);for(let e in p){if(!Object.prototype.hasOwnProperty.call(p,e))continue;if(f>=r){d[e]=`[MaxProperties ~]`;break}let t=p[e];d[e]=zn(e,t,l-1,r,i),f++}return o(t),d}function Bn(e,t){try{if(e===`domain`&&t&&typeof t==`object`&&t._events)return`[Domain]`;if(e===`domainEmitter`)return`[DomainEmitter]`;if(typeof global<`u`&&t===global)return`[Global]`;if(typeof window<`u`&&t===window)return`[Window]`;if(typeof document<`u`&&t===document)return`[Document]`;if(Ee(t))return pe(t);if(Te(t))return`[SyntheticEvent]`;if(typeof t==`number`&&!Number.isFinite(t))return`[${t}]`;if(typeof t==`function`)return`[Function: ${de(t)}]`;if(typeof t==`symbol`)return`[${String(t)}]`;if(typeof t==`bigint`)return`[BigInt: ${String(t)}]`;let n=Vn(t);return/^HTML(\w*)Element$/.test(n)?`[HTMLElement: ${n}]`:`[object ${n}]`}catch(e){return`**non-serializable** (${e})`}}function Vn(e){let t=Object.getPrototypeOf(e);return t?.constructor?t.constructor.name:`null prototype`}function Hn(e){return~-encodeURI(e).split(/%..|./).length}function Un(e){return Hn(JSON.stringify(e))}function Wn(){let e=new WeakSet;function t(t){return e.has(t)?!0:(e.add(t),!1)}function n(t){e.delete(t)}return[t,n]}function Y(e,t=[]){return[e,t]}function Gn(e,t){let[n,r]=e;return[n,[...r,t]]}function Kn(e,t){let n=e[1];for(let e of n){let n=e[0].type;if(t(e,n))return!0}return!1}function qn(e,t){return Kn(e,(e,n)=>t.includes(n))}function Jn(e){let t=a(n);return t.encodePolyfill?t.encodePolyfill(e):new TextEncoder().encode(e)}function Yn(e){let[t,n]=e,r=JSON.stringify(t);function i(e){typeof r==`string`?r=typeof e==`string`?r+e:[Jn(r),e]:r.push(typeof e==`string`?Jn(e):e)}for(let e of n){let[t,n]=e;if(i(`\n${JSON.stringify(t)}\n`),typeof n==`string`||n instanceof Uint8Array)i(n);else{let e;try{e=JSON.stringify(n)}catch{e=JSON.stringify(J(n))}i(e)}}return typeof r==`string`?r:Xn(r)}function Xn(e){let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function Zn(e){return[{type:`span`},e]}function Qn(e){let t=typeof e.data==`string`?Jn(e.data):e.data;return[{type:`attachment`,length:t.length,filename:e.filename,content_type:e.contentType,attachment_type:e.attachmentType},t]}var $n={sessions:`session`,event:`error`,client_report:`internal`,user_report:`default`,profile_chunk:`profile`,replay_event:`replay`,replay_recording:`replay`,check_in:`monitor`,raw_security:`security`,log:`log_item`,trace_metric:`metric`};function er(e){return e in $n}function tr(e){return er(e)?$n[e]:e}function nr(e){if(!e?.sdk)return;let{name:t,version:n}=e.sdk;return{name:t,version:n}}function rr(e,t,n,r){let i=e.sdkProcessingMetadata?.dynamicSamplingContext;return{event_id:e.event_id,sent_at:new Date().toISOString(),...t&&{sdk:t},...!!n&&r&&{dsn:B(r)},...i&&{trace:i}}}function ir(e,t){if(!t)return e;let n=e.sdk||{};return e.sdk={...n,name:n.name||t.name,version:n.version||t.version,integrations:[...e.sdk?.integrations||[],...t.integrations||[]],packages:[...e.sdk?.packages||[],...t.packages||[]],settings:e.sdk?.settings||t.settings?{...e.sdk?.settings,...t.settings}:void 0},e}function ar(e,t,n,r){let i=nr(n);return Y({sent_at:new Date().toISOString(),...i&&{sdk:i},...!!r&&t&&{dsn:B(t)}},[`aggregates`in e?[{type:`sessions`},e]:[{type:`session`},e.toJSON()]])}function or(e,t,n,r){let i=nr(n),a=e.type&&e.type!==`replay_event`?e.type:`event`;ir(e,n?.sdk);let o=rr(e,i,r,t);return delete e.sdkProcessingMetadata,Y(o,[[{type:a},e]])}function sr(e,t){function n(e){return!!e.trace_id&&!!e.public_key}let r=K(e[0]),i=t?.getDsn(),a=t?.getOptions().tunnel,o={sent_at:new Date().toISOString(),...n(r)&&{trace:r},...!!a&&i&&{dsn:B(i)}},{beforeSendSpan:s,ignoreSpans:c}=t?.getOptions()||{},l=c?.length?e.filter(e=>{let t=H(e);return!wn({description:t.description,op:t.op,attributes:t.data},c)}):e,u=e.length-l.length;u&&t?.recordDroppedEvent(`before_send`,`span`,u);let d=s?e=>{let t=H(e);return(Nn(s)?t:s(t))||(xn(),t)}:H,f=[];for(let e of l){let t=d(e);t&&f.push(Zn(t))}return Y(o,f)}function cr(e){if(!t)return;let{description:n=`< unknown name >`,op:r=`< unknown op >`,parent_span_id:i}=H(e),{spanId:a}=e.spanContext(),o=U(e),s=G(e),c=s===e,l=`[Tracing] Starting ${o?`sampled`:`unsampled`} ${c?`root `:``}span`,u=[`op: ${r}`,`name: ${n}`,`ID: ${a}`];if(i&&u.push(`parent ID: ${i}`),!c){let{op:e,description:t}=H(s);u.push(`root ID: ${s.spanContext().spanId}`),e&&u.push(`root op: ${e}`),t&&u.push(`root description: ${t}`)}g.log(`${l}
3
- ${u.join(`
4
- `)}`)}function lr(e){if(!t)return;let{description:n=`< unknown name >`,op:r=`< unknown op >`}=H(e),{spanId:i}=e.spanContext(),a=`[Tracing] Finishing "${r}" ${G(e)===e?`root `:``}span "${n}" with ID ${i}`;g.log(a)}function ur(e){if(!e||e.length===0)return;let t={};return e.forEach(e=>{let n=e.attributes||{},r=n[Pt],i=n[Ft];typeof r==`string`&&typeof i==`number`&&(t[e.name]={value:i,unit:r})}),t}function X(e){return e.getOptions().traceLifecycle===`stream`}var dr=1e3,fr=class{constructor(e={}){this._traceId=e.traceId||j(),this._spanId=e.spanId||M(),this._startTime=e.startTimestamp||O(),this._links=e.links,this._attributes={},this.setAttributes({[Nt]:`manual`,[Mt]:e.op,...e.attributes}),this._name=e.name,e.parentSpanId&&(this._parentSpanId=e.parentSpanId),`sampled`in e&&(this._sampled=e.sampled),e.endTimestamp&&(this._endTime=e.endTimestamp),this._events=[],this._isStandaloneSpan=e.isStandalone,this._endTime&&this._onSpanEnded()}addLink(e){return this._links?this._links.push(e):this._links=[e],this}addLinks(e){return this._links?this._links.push(...e):this._links=e,this}recordException(e,t){}spanContext(){let{_spanId:e,_traceId:t,_sampled:n}=this;return{spanId:e,traceId:t,traceFlags:+!!n}}setAttribute(e,t){return t===void 0?delete this._attributes[e]:this._attributes[e]=t,this}setAttributes(e){return Object.keys(e).forEach(t=>this.setAttribute(t,e[t])),this}updateStartTime(e){this._startTime=V(e)}setStatus(e){return this._status=e,this}updateName(e){return this._name=e,this.setAttribute(At,`custom`),this}end(e){this._endTime||(this._endTime=V(e),lr(this),this._onSpanEnded())}getSpanJSON(){return{data:this._attributes,description:this._name,op:this._attributes[Mt],parent_span_id:this._parentSpanId,span_id:this._spanId,start_timestamp:this._startTime,status:hn(this._status),timestamp:this._endTime,trace_id:this._traceId,origin:this._attributes[Nt],profile_id:this._attributes[Lt],exclusive_time:this._attributes[Rt],measurements:ur(this._events),is_segment:this._isStandaloneSpan&&G(this)===this||void 0,segment_id:this._isStandaloneSpan?G(this).spanContext().spanId:void 0,links:cn(this._links)}}getStreamedSpanJSON(){return{name:this._name??``,span_id:this._spanId,trace_id:this._traceId,parent_span_id:this._parentSpanId,start_timestamp:this._startTime,end_timestamp:this._endTime??this._startTime,is_segment:this._isStandaloneSpan||this===G(this),status:gn(this._status),attributes:this._attributes,links:ln(this._links)}}isRecording(){return!this._endTime&&!!this._sampled}addEvent(e,n,r){t&&g.log(`[Tracing] Adding an event to span:`,e);let i=pr(n)?n:r||O(),a=pr(n)?{}:n||{},o={name:e,time:V(i),attributes:a};return this._events.push(o),this}isStandaloneSpan(){return!!this._isStandaloneSpan}_onSpanEnded(){let e=R();if(e&&(e.emit(`spanEnd`,this),this._isStandaloneSpan||e.emit(`afterSpanEnd`,this)),!(this._isStandaloneSpan||this===G(this)))return;if(this._isStandaloneSpan){this._sampled?gr(sr([this],e)):(t&&g.log(`[Tracing] Discarding standalone span because its trace was not chosen to be sampled.`),e&&e.recordDroppedEvent(`sample_rate`,`span`));return}else if(e&&X(e)){e.emit(`afterSegmentSpanEnd`,this);return}let n=this._convertSpanToTransaction();n&&(z(this).scope||I()).captureEvent(n)}_convertSpanToTransaction(){if(!mr(H(this)))return;this._name||=(t&&g.warn("Transaction has no name, falling back to `<unlabeled transaction>`."),`<unlabeled transaction>`);let{scope:e,isolationScope:n}=z(this),r=e?.getScopeData().sdkProcessingMetadata?.normalizedRequest;if(this._sampled!==!0)return;let i=yn(this).filter(e=>e!==this&&!hr(e)).map(e=>H(e)).filter(mr),a=this._attributes[At];delete this._attributes[It];let o=!1;i.forEach(e=>{delete e.data[It],e.op?.startsWith(`gen_ai.`)&&(o=!0)});let s={contexts:{trace:on(this)},spans:i.length>dr?i.sort((e,t)=>e.start_timestamp-t.start_timestamp).slice(0,dr):i,start_timestamp:this._startTime,timestamp:this._endTime,transaction:this._name,type:`transaction`,sdkProcessingMetadata:{capturedSpanScope:e,capturedSpanIsolationScope:n,dynamicSamplingContext:K(this),hasGenAiSpans:o},request:r,...a&&{transaction_info:{source:a}}},c=ur(this._events);return c&&Object.keys(c).length&&(t&&g.log(`[Measurements] Adding measurements to transaction event`,JSON.stringify(c,void 0,2)),s.measurements=c),s}};function pr(e){return e&&typeof e==`number`||e instanceof Date||Array.isArray(e)}function mr(e){return!!e.start_timestamp&&!!e.timestamp&&!!e.span_id&&!!e.trace_id}function hr(e){return e instanceof fr&&e.isStandaloneSpan()}function gr(e){let t=R();if(!t)return;let n=e[1];if(!n||n.length===0){t.recordDroppedEvent(`before_send`,`span`);return}t.sendEnvelope(e)}function _r(e,n,r){if(!Sn(e))return[!1];let i,a;typeof e.tracesSampler==`function`?(a=e.tracesSampler({...n,inheritOrSampleWith:e=>typeof n.parentSampleRate==`number`?n.parentSampleRate:typeof n.parentSampled==`boolean`?Number(n.parentSampled):e}),i=!0):n.parentSampled===void 0?e.tracesSampleRate!==void 0&&(a=e.tracesSampleRate,i=!0):a=n.parentSampled;let o=rn(a);if(o===void 0)return t&&g.warn(`[Tracing] Discarding root span because of invalid sample rate. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(a)} of type ${JSON.stringify(typeof a)}.`),[!1];if(!o)return t&&g.log(`[Tracing] Discarding transaction because ${typeof e.tracesSampler==`function`?`tracesSampler returned 0 or false`:`a negative sampling decision was inherited or tracesSampleRate is set to 0`}`),[!1,o,i];let s=r<o;return s||t&&g.log(`[Tracing] Discarding transaction because it's not included in the random sample (sampling rate = ${Number(a)})`),[s,o,i]}var vr=`__SENTRY_SUPPRESS_TRACING__`;function yr(e){let t=Cr();if(t.startInactiveSpan)return t.startInactiveSpan(e);let n=Sr(e),{forceTransaction:r,parentSpan:i}=e;return(e.scope?t=>Ot(e.scope,t):i===void 0?e=>e():e=>br(i,e))(()=>{let t=I(),a=Er(t,i),o=R();return e.onlyIfParent&&!a?(o?.recordDroppedEvent(`no_parent_span`,`span`),new q):xr({parentSpan:a,spanArguments:n,forceTransaction:r,scope:t})})}function br(e,t){let n=Cr();return n.withActiveSpan?n.withActiveSpan(e,t):Ot(n=>(st(n,e||void 0),t(n)))}function xr({parentSpan:e,spanArguments:t,forceTransaction:n,scope:r}){if(!Sn()){let r=new q;return(n||!e)&&An(r,{sampled:`false`,sample_rate:`0`,transaction:t.name,...K(r)}),r}let i=R();if(Dr(i,t))return Or(r)||i?.recordDroppedEvent(`ignored`,`span`),new q({dropReason:`ignored`,traceId:e?.spanContext().traceId??r.getPropagationContext().traceId});let a=L(),o;if(e&&!n)o=Tr(e,r,t),vn(e,o);else if(e){let n=K(e),{traceId:i,spanId:a}=e.spanContext(),s=U(e);o=wr({traceId:i,parentSpanId:a,...t},r,s),An(o,n)}else{let{traceId:e,dsc:n,parentSpanId:i,sampled:s}={...a.getPropagationContext(),...r.getPropagationContext()};o=wr({traceId:e,parentSpanId:i,...t},r,s),n&&An(o,n)}return cr(o),Wt(o,r,a),o}function Sr(e){let t={isStandalone:(e.experimental||{}).standalone,...e};if(e.startTime){let n={...t};return n.startTimestamp=V(e.startTime),delete n.startTime,n}return t}function Cr(){return F(i())}function wr(e,n,r){let i=R(),a=i?.getOptions()||{},{name:o=``}=e,s={spanAttributes:{...e.attributes},spanName:o,parentSampled:r};i?.emit(`beforeSampling`,s,{decision:!1});let c=s.parentSampled??r,l=s.spanAttributes,u=n.getPropagationContext(),d=Or(n),[f,p,m]=d?[!1]:_r(a,{name:o,parentSampled:c,attributes:l,parentSampleRate:rn(u.dsc?.sample_rate)},u.sampleRand),h=new fr({...e,attributes:{[At]:`custom`,[jt]:p!==void 0&&m?p:void 0,...l},sampled:f});return!f&&i&&!d&&(t&&g.log(`[Tracing] Discarding root span because its trace was not chosen to be sampled.`),i.recordDroppedEvent(`sample_rate`,X(i)?`span`:`transaction`)),i&&i.emit(`spanStart`,h),h}function Tr(e,t,n){let{spanId:r,traceId:i}=e.spanContext(),a=Or(t),o=a?!1:U(e),s=o?new fr({...n,parentSpanId:r,traceId:i,sampled:o}):new q({traceId:i});vn(e,s);let c=R();return c?(X(c)&&s instanceof q&&(e instanceof q&&e.dropReason?(s.dropReason=e.dropReason,c.recordDroppedEvent(e.dropReason,`span`)):a||(s.dropReason=`sample_rate`,c.recordDroppedEvent(`sample_rate`,`span`))),c.emit(`spanStart`,s),n.endTimestamp&&(c.emit(`spanEnd`,s),c.emit(`afterSpanEnd`,s)),s):s}function Er(e,t){if(t)return t;if(t===null)return;let n=ct(e);if(!n)return;let r=R();return(r?r.getOptions():{}).parentSpanIsAlwaysRootSpan?G(n):n}function Dr(e,t){let n=e?.getOptions().ignoreSpans;return!e||!X(e)||!n?.length?!1:wn({description:t.name||``,op:t.attributes?.[`sentry.op`]||t.op,attributes:t.attributes},n)}function Or(e){return e.getScopeData().sdkProcessingMetadata[vr]===!0}function kr(e,t){let{fingerprint:n,span:r,breadcrumbs:i,sdkProcessingMetadata:a}=t;Mr(e,t),r&&Fr(e,r),Ir(e,n),Nr(e,i),Pr(e,a)}function Ar(e,t){let{extra:n,tags:r,attributes:i,user:a,contexts:o,level:s,sdkProcessingMetadata:c,breadcrumbs:l,fingerprint:u,eventProcessors:d,attachments:f,propagationContext:p,transactionName:m,span:h}=t;Z(e,`extra`,n),Z(e,`tags`,r),Z(e,`attributes`,i),Z(e,`user`,a),Z(e,`contexts`,o),e.sdkProcessingMetadata=A(e.sdkProcessingMetadata,c,2),s&&(e.level=s),m&&(e.transactionName=m),h&&(e.span=h),l.length&&(e.breadcrumbs=[...e.breadcrumbs,...l]),u.length&&(e.fingerprint=[...e.fingerprint,...u]),d.length&&(e.eventProcessors=[...e.eventProcessors,...d]),f.length&&(e.attachments=[...e.attachments,...f]),e.propagationContext={...e.propagationContext,...p}}function Z(e,t,n){e[t]=A(e[t],n,1)}function jr(e,t){let n=Dt().getScopeData();return e&&Ar(n,e.getScopeData()),t&&Ar(n,t.getScopeData()),n}function Mr(e,t){let{extra:n,tags:r,user:i,contexts:a,level:o,transactionName:s}=t;Object.keys(n).length&&(e.extra={...n,...e.extra}),Object.keys(r).length&&(e.tags={...r,...e.tags}),Object.keys(i).length&&(e.user={...i,...e.user}),Object.keys(a).length&&(e.contexts={...a,...e.contexts}),o&&(e.level=o),s&&e.type!==`transaction`&&(e.transaction=s)}function Nr(e,t){let n=[...e.breadcrumbs||[],...t];e.breadcrumbs=n.length?n:void 0}function Pr(e,t){e.sdkProcessingMetadata={...e.sdkProcessingMetadata,...t}}function Fr(e,t){e.contexts={trace:sn(t),...e.contexts},e.sdkProcessingMetadata={dynamicSamplingContext:K(t),...e.sdkProcessingMetadata};let n=H(G(t)).description;n&&!e.transaction&&e.type===`transaction`&&(e.transaction=n)}function Ir(e,t){e.fingerprint=e.fingerprint?Array.isArray(e.fingerprint)?e.fingerprint:[e.fingerprint]:[],t&&(e.fingerprint=e.fingerprint.concat(t)),e.fingerprint.length||delete e.fingerprint}var Lr=0,Rr=1,zr=2;function Br(e){return new Hr(t=>{t(e)})}function Vr(e){return new Hr((t,n)=>{n(e)})}var Hr=class e{constructor(e){this._state=Lr,this._handlers=[],this._runExecutor(e)}then(t,n){return new e((e,r)=>{this._handlers.push([!1,n=>{if(!t)e(n);else try{e(t(n))}catch(e){r(e)}},t=>{if(!n)r(t);else try{e(n(t))}catch(e){r(e)}}]),this._executeHandlers()})}catch(e){return this.then(e=>e,e)}finally(t){return new e((e,n)=>{let r,i;return this.then(e=>{i=!1,r=e,t&&t()},e=>{i=!0,r=e,t&&t()}).then(()=>{if(i){n(r);return}e(r)})})}_executeHandlers(){if(this._state===Lr)return;let e=this._handlers.slice();this._handlers=[],e.forEach(e=>{e[0]||=(this._state===Rr&&e[1](this._value),this._state===zr&&e[2](this._value),!0)})}_runExecutor(e){let t=(e,t)=>{if(this._state===Lr){if(y(t)){t.then(n,r);return}this._state=e,this._value=t,this._executeHandlers()}},n=e=>{t(Rr,e)},r=e=>{t(zr,e)};try{e(n,r)}catch(e){r(e)}}};function Ur(e,t,n,r=0){try{let i=Wr(t,n,e,r);return y(i)?i:Br(i)}catch(e){return Vr(e)}}function Wr(e,n,r,i){let a=r[i];if(!e||!a)return e;let o=a({...e},n);return t&&o===null&&g.log(`Event processor "${a.id||`?`}" dropped event`),y(o)?o.then(e=>Wr(e,n,r,i+1)):Wr(o,n,r,i+1)}var Q,Gr,Kr,$;function qr(e){let t=n._sentryDebugIds,r=n._debugIds;if(!t&&!r)return{};let i=t?Object.keys(t):[],a=r?Object.keys(r):[];if($&&i.length===Gr&&a.length===Kr)return $;Gr=i.length,Kr=a.length,$={},Q||={};let o=(t,n)=>{for(let r of t){let t=n[r],i=Q?.[r];if(i&&$&&t)$[i[0]]=t,Q&&(Q[r]=[i[0],t]);else if(t){let n=e(r);for(let e=n.length-1;e>=0;e--){let i=n[e]?.filename;if(i&&$&&Q){$[i]=t,Q[r]=[i,t];break}}}}};return t&&o(i,t),r&&o(a,r),$}function Jr(e,t,n,r,i,a){let{normalizeDepth:o=3,normalizeMaxBreadth:s=1e3}=e,c={...t,event_id:t.event_id||n.event_id||E(),timestamp:t.timestamp||D()},l=n.integrations||e.integrations.map(e=>e.name);Yr(c,e),Qr(c,l),i&&i.emit(`applyFrameMetadata`,t),t.type===void 0&&Xr(c,e.stackParser);let u=ei(r,n.captureContext);n.mechanism&&Ze(c,n.mechanism);let d=i?i.getEventProcessors():[],f=jr(a,u),p=[...n.attachments||[],...f.attachments];p.length&&(n.attachments=p),kr(c,f);let m=[...d,...f.eventProcessors];return(n.data&&n.data.__sentry__===!0?Br(c):Ur(m,c,n)).then(e=>(e&&Zr(e),typeof o==`number`&&o>0?$r(e,o,s):e))}function Yr(e,t){let{environment:n,release:r,dist:i,maxValueLength:a}=t;e.environment=e.environment||n||`production`,!e.release&&r&&(e.release=r),!e.dist&&i&&(e.dist=i);let o=e.request;o?.url&&a&&(o.url=He(o.url,a)),a&&e.exception?.values?.forEach(e=>{e.value&&=He(e.value,a)})}function Xr(e,t){let n=qr(t);e.exception?.values?.forEach(e=>{e.stacktrace?.frames?.forEach(e=>{e.filename&&(e.debug_id=n[e.filename])})})}function Zr(e){let t={};if(e.exception?.values?.forEach(e=>{e.stacktrace?.frames?.forEach(e=>{e.debug_id&&(e.abs_path?t[e.abs_path]=e.debug_id:e.filename&&(t[e.filename]=e.debug_id),delete e.debug_id)})}),Object.keys(t).length===0)return;e.debug_meta=e.debug_meta||{},e.debug_meta.images=e.debug_meta.images||[];let n=e.debug_meta.images;Object.entries(t).forEach(([e,t])=>{n.push({type:`sourcemap`,code_file:e,debug_id:t})})}function Qr(e,t){t.length>0&&(e.sdk=e.sdk||{},e.sdk.integrations=[...e.sdk.integrations||[],...t])}function $r(e,t,n){if(!e)return null;let r={...e,...e.breadcrumbs&&{breadcrumbs:e.breadcrumbs.map(e=>({...e,...e.data&&{data:J(e.data,t,n)}}))},...e.user&&{user:J(e.user,t,n)},...e.contexts&&{contexts:J(e.contexts,t,n)},...e.extra&&{extra:J(e.extra,t,n)}};return e.contexts?.trace&&r.contexts&&(r.contexts.trace=e.contexts.trace,e.contexts.trace.data&&(r.contexts.trace.data=J(e.contexts.trace.data,t,n))),e.spans&&(r.spans=e.spans.map(e=>({...e,...e.data&&{data:J(e.data,t,n)}}))),e.contexts?.flags&&r.contexts&&(r.contexts.flags=J(e.contexts.flags,3,n)),r}function ei(e,t){if(!t)return e;let n=e?e.clone():new N;return n.update(t),n}function ti(e){if(e)return ni(e)||ii(e)?{captureContext:e}:e}function ni(e){return e instanceof N||typeof e==`function`}var ri=[`user`,`level`,`extra`,`contexts`,`tags`,`fingerprint`,`propagationContext`];function ii(e){return Object.keys(e).some(e=>ri.includes(e))}function ai(e,t){return I().captureException(e,ti(t))}function oi(e,t){let n=typeof t==`string`?t:void 0,r=typeof t==`string`?void 0:{captureContext:t};return I().captureMessage(e,n,r)}function si(e,t){return I().captureEvent(e,t)}function ci(e,t){L().setContext(e,t)}function li(){return L().lastEventId()}function ui(e){let t=L(),{user:r}=jr(t,I()),{userAgent:i}=n.navigator||{},a=rt({user:r,...i&&{userAgent:i},...e}),o=t.getSession();return o?.status===`ok`&&k(o,{status:`exited`}),di(),t.setSession(a),a}function di(){let e=L(),t=I().getSession()||e.getSession();t&&it(t),fi(),e.setSession()}function fi(){let e=L(),t=R(),n=e.getSession();n&&t&&t.captureSession(n)}function pi(e=!1){if(e){di();return}fi()}var mi=3;function hi(t){return t instanceof e?!!(t.status===503||t.status===502||t.status===401||t.status===400&&t.message.includes(`Organization-Id header`)):!1}function gi(e,t){return e>=mi?!1:hi(t)}function _i(e){if(!(e instanceof TypeError))return!1;let t=e.message;return!!(t===`Failed to fetch`||t.startsWith(`Failed to fetch (`)&&t.endsWith(`)`)||t===`Load failed`||t.startsWith(`Load failed (`)&&t.endsWith(`)`)||t===`NetworkError when attempting to fetch resource`||t===`NetworkError when attempting to fetch resource.`)}function vi(e){if(e instanceof Error)return e;if(typeof e==`object`&&e){let t=e,n=t.detail;if(typeof n==`string`){let t=Error(n);return t.cause=e,t}let r=t.message;if(typeof r==`string`){let t=Error(r);return t.cause=e,t}try{let t=Error(JSON.stringify(e));return t.cause=e,t}catch{let t=Error(`Non-serializable error object`);return t.cause=e,t}}return Error(String(e))}function yi(e,t){if(_i(e)||t.bestEffort&&hi(e))return;console.error(`[${t.context}]`,e);let n=vi(e),r={...t.extra};n!==e&&(r.originalError=e),ai(n,{level:t.level,tags:{context:t.context,...t.tags},...Object.keys(r).length>0?{extra:r}:{}})}export{Ye as $,En as A,u as At,Lt as B,tr as C,v as Ct,Nn as D,de as Dt,Rn as E,fe as Et,rn as F,n as Ft,Ot as G,I as H,B as I,t as It,D as J,A as K,nn as L,xn as M,l as Mt,H as N,o as Nt,Mn as O,se as Ot,fn as P,r as Pt,Qe as Q,zt as R,qn as S,De as St,Yn as T,oe as Tt,L as U,R as V,kt as W,Ze as X,O as Y,Xe as Z,or as _,Se as _t,si as a,x as at,Qn as b,xe as bt,pi as c,Ie as ct,ui as d,Me as dt,E as et,Jr as f,Ae as ft,X as g,ge as gt,yr as h,he as ht,gi as i,w as it,wn as j,g as jt,On as k,s as kt,li as l,Fe as lt,Br as m,ve as mt,vi as n,We as nt,ai as o,Be as ot,Vr as p,_e as pt,k as q,_i as r,Ve as rt,oi as s,Pe as st,yi as t,Ue as tt,ci as u,Ne as ut,ar as v,b as vt,Kn as w,y as wt,Y as x,be as xt,Gn as y,ye as yt,Rt as z};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n}from"./chunk-5KNZJZUH-BpLAEZ0-.js";import{n as r}from"./QueryClientProvider-DBAeGN3q.js";import{t as i}from"./useQuery-DAtrV0RI.js";import{t as a}from"./useMutation-DTb3lMvF.js";import{t as o}from"./jsx-runtime-XSukodg_.js";import{t as s}from"./button-Cs9tc8OR.js";import{t as c}from"./typography-PN7B1rrW.js";import{t as l}from"./card-BcKGvsaa.js";import{t as u}from"./confirm-dialog-DavdF-L4.js";import{t as d}from"./tag-BkZB4euH.js";import{t as f}from"./panel-item-BPosLg5Y.js";import{t as p}from"./input-DwAJUlac.js";import{t as m}from"./modal-C7CS3Y_X.js";import{t as h}from"./toast-Cii5pffK.js";import{t as g}from"./createLucideIcon-D8wUFCt3.js";import{t as _}from"./chevron-right-CJ0Oykrn.js";import{t as v}from"./ellipsis-vertical-f27t2xXb.js";import{t as y}from"./link-2-B0QONFsy.js";import{t as b}from"./loader-circle-FEkI0Am4.js";import{t as x}from"./pencil-CESg1M7c.js";import{At as S,Ft as C,Mt as w,Nt as T,Pt as E,jt as ee,v as D}from"./sdk.gen-up8j0_uF.js";import{a as te,c as ne,d as re,i as ie,l as ae,r as oe,u as se,w as ce}from"./react-query.gen-CfXF72qo.js";import{i as le}from"./routes-Dfo11DAg.js";import{t as ue}from"./assistant-feature-flag-store-XFfKSl8X.js";import{t as O}from"./viewer-store-BIjT34BR.js";import{t as k}from"./conversation-store-D6erO6zc.js";import{t as de}from"./assistant-identity-store-CsS_tq85.js";import{Aa as A,Ji as j,Oi as M,Zn as N,fo as P,lo as F,ma as I,oa as L,po as R,qa as z,qi as B,ta as V,ya as H,yo as U}from"./index-DmTi6dG-.js";import{t as W}from"./use-active-assistant-id-kjFL4dWB.js";import{n as fe,t as pe}from"./mobile-sidebar-drawer-B18QHDel.js";import{t as G}from"./detail-card-Y8InXOgy.js";import{a as me,i as he,r as ge,t as _e}from"./contacts-gateway-DkmnVa7t.js";var K=g(`bot`,[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]),ve=g(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),ye=g(`git-merge`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`,key:`7kw0sc`}]]),q=e(t(),1),J=o();function Y({role:e,contactType:t}){let{label:n,tone:r}=be(e,t);return(0,J.jsx)(d,{tone:r,children:n})}function be(e,t){switch(e){case`guardian`:return{label:`Guardian`,tone:`positive`};case`assistant`:return{label:`Assistant`,tone:`negative`};default:return t===`assistant`?{label:`Assistant`,tone:`negative`}:{label:`Human`,tone:`warning`}}}function X({onClick:e}){return(0,J.jsx)(s,{variant:`outlined`,size:`compact`,leftIcon:(0,J.jsx)(y,{className:`h-3.5 w-3.5`}),onClick:e,children:`Share Connection Link`})}var xe={slack:{label:`Slack`,Icon:A,disconnectMessage:`This clears the stored Slack bot and app tokens for this assistant. You can reconnect later.`},telegram:{label:`Telegram`,Icon:B,disconnectMessage:`This clears the stored Telegram bot token for this assistant. You can reconnect later.`},phone:{label:`Phone Calling`,Icon:L,disconnectMessage:`This clears the stored Twilio credentials for this assistant. You can reconnect later.`}};function Se({assistantName:e,channels:t,pendingChannelKey:n=null,onSetup:r,onDisconnect:i,onSaveTelegramToken:a,onSaveSlackConfig:o,onSaveTwilioCredentials:s,onGenerateInviteLink:c}){let l=e.trim()||`your assistant`,[d,f]=(0,q.useState)(null),[p,m]=(0,q.useState)(new Set),h=d?xe[d]:null,g=e=>{m(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})};return(0,J.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,J.jsx)(G,{title:`${l} (Your Assistant)`,accessory:(0,J.jsx)(Y,{role:`assistant`}),compactAccessory:!0}),(0,J.jsx)(G,{title:`Channels`,subtitle:`Manage where ${l} can be reached.`,children:(0,J.jsx)(`div`,{className:`flex flex-col`,children:t.map((e,t)=>(0,J.jsxs)(`div`,{children:[t>0?(0,J.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}):null,(0,J.jsx)(Ce,{channel:e,pending:n===e.key,expanded:p.has(e.key),onToggleExpand:()=>g(e.key),onSetup:r?()=>r(e.key):void 0,onDisconnect:i?()=>f(e.key):void 0,onSaveTelegramToken:a,onSaveSlackConfig:o,onSaveTwilioCredentials:s})]},e.key))})}),c?(0,J.jsx)(X,{onClick:c}):null,(0,J.jsx)(u,{open:d!==null,title:`Disconnect ${h?.label??``}?`,message:h?.disconnectMessage??``,confirmLabel:`Disconnect`,destructive:!0,onConfirm:()=>{d&&i&&i(d),f(null)},onCancel:()=>f(null)})]})}function Ce({channel:e,pending:t,expanded:n,onToggleExpand:r,onSetup:i,onDisconnect:a,onSaveTelegramToken:o,onSaveSlackConfig:c,onSaveTwilioCredentials:l}){let u=xe[e.key],d=e.status===`ready`;return(0,J.jsxs)(`div`,{className:`flex flex-col gap-2 py-4`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-3`,children:[!d||e.key!==`slack`?(0,J.jsx)(`button`,{type:`button`,className:`flex shrink-0 items-center justify-center`,onClick:r,style:{color:`var(--content-secondary)`},children:n?(0,J.jsx)(P,{className:`h-4 w-4`}):(0,J.jsx)(_,{className:`h-4 w-4`})}):(0,J.jsx)(u.Icon,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:u.label}),e.address?(0,J.jsx)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e.address}):null,(0,J.jsx)(`div`,{className:`ml-auto flex items-center gap-2`,children:d?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,J.jsx)(F,{className:`h-3 w-3`}),`Connected`]}),(0,J.jsx)(s,{type:`button`,variant:`danger`,onClick:a,disabled:!a||t,children:t?`Disconnecting…`:`Disconnect`})]}):(0,J.jsx)(s,{type:`button`,variant:`outlined`,onClick:i,disabled:!i||t,children:t?`Opening…`:`Set up`})})]}),!d&&e.key===`telegram`&&n?(0,J.jsx)(we,{onSave:o}):null,!d&&e.key===`slack`&&n?(0,J.jsx)(Te,{onSave:c}):null,!d&&e.key===`phone`&&n?(0,J.jsx)(Z,{onSave:l}):null,d&&e.key===`telegram`&&n?(0,J.jsx)(we,{onSave:o}):null,d&&e.key===`phone`&&n?(0,J.jsx)(Z,{onSave:l}):null]})}function we({onSave:e}){let[t,n]=(0,q.useState)(``),[r,i]=(0,q.useState)(!1),[a,o]=(0,q.useState)(null),c=t.trim().length>0&&!r;return(0,J.jsxs)(`div`,{className:`flex flex-col gap-3 pl-7`,children:[(0,J.jsx)(p,{label:`Bot Token`,type:`password`,value:t,onChange:e=>n(e.target.value),placeholder:`Paste your Telegram bot token`,disabled:r,fullWidth:!0}),a?(0,J.jsx)(`p`,{className:`text-label-small`,style:{color:`var(--content-negative)`},children:a}):null,(0,J.jsx)(`div`,{children:(0,J.jsx)(s,{type:`button`,onClick:async()=>{if(!(!e||!c)){i(!0),o(null);try{await e(t.trim()),n(``)}catch(e){o(e instanceof Error?e.message:`Failed to save`)}finally{i(!1)}}},disabled:!c,children:r?`Saving…`:`Save`})})]})}function Te({onSave:e}){let[t,n]=(0,q.useState)(``),[r,i]=(0,q.useState)(``),[a,o]=(0,q.useState)(!1),[c,l]=(0,q.useState)(null),u=t.trim().length>0&&r.trim().length>0&&!a;return(0,J.jsxs)(`div`,{className:`flex flex-col gap-3 pl-7`,children:[(0,J.jsx)(p,{label:`Bot Token`,type:`password`,value:t,onChange:e=>n(e.target.value),placeholder:`xoxb-...`,disabled:a,fullWidth:!0}),(0,J.jsx)(p,{label:`App Token`,type:`password`,value:r,onChange:e=>i(e.target.value),placeholder:`xapp-...`,disabled:a,fullWidth:!0}),c?(0,J.jsx)(`p`,{className:`text-label-small`,style:{color:`var(--content-negative)`},children:c}):null,(0,J.jsx)(`div`,{children:(0,J.jsx)(s,{type:`button`,onClick:async()=>{if(!(!e||!u)){o(!0),l(null);try{await e(t.trim(),r.trim()),n(``),i(``)}catch(e){l(e instanceof Error?e.message:`Failed to save`)}finally{o(!1)}}},disabled:!u,children:a?`Saving…`:`Save`})})]})}function Z({onSave:e}){let[t,n]=(0,q.useState)(``),[r,i]=(0,q.useState)(``),[a,o]=(0,q.useState)(!1),[c,l]=(0,q.useState)(null),u=t.trim().length>0&&r.trim().length>0&&!a;return(0,J.jsxs)(`div`,{className:`flex flex-col gap-3 pl-7`,children:[(0,J.jsx)(p,{label:`Account SID`,type:`text`,value:t,onChange:e=>n(e.target.value),placeholder:`ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,disabled:a,fullWidth:!0}),(0,J.jsx)(p,{label:`Auth Token`,type:`password`,value:r,onChange:e=>i(e.target.value),placeholder:`Twilio auth token`,disabled:a,fullWidth:!0}),c?(0,J.jsx)(`p`,{className:`text-label-small`,style:{color:`var(--content-negative)`},children:c}):null,(0,J.jsx)(`div`,{children:(0,J.jsx)(s,{type:`button`,onClick:async()=>{if(!(!e||!u)){o(!0),l(null);try{await e(t.trim(),r.trim()),n(``),i(``)}catch(e){l(e instanceof Error?e.message:`Failed to save`)}finally{o(!1)}}},disabled:!u,children:a?`Saving…`:`Save`})})]})}var Ee=new Set([`telegram`,`phone`,`vellum`,`whatsapp`,`slack`,`email`,`platform`,`a2a`]);function De(e){return Ee.has(e)}function Oe(e,t){return e.id===`a2a`?t&&t.status!==`revoked`?{kind:`connected`}:{kind:`setup`}:t?.status===`verified`||t?.status===`active`&&t?.verifiedAt!=null?{kind:`verified`}:t&&t.status!==`revoked`?{kind:`unverified`}:{kind:`setup`}}function ke(e,t,n){let r=[],i=new Set;if(e)for(let t of e)t.id===`a2a`&&!n||(r.push(t),i.add(t.id));for(let e of t)e.status===`revoked`||i.has(e.type)||e.type===`a2a`&&!n||De(e.type)&&(r.push({id:e.type,label:e.type.charAt(0).toUpperCase()+e.type.slice(1),subtitle:``,icon:`help-circle`,supportsVerification:!1,setupMessages:{guardian:``,contact:``}}),i.add(e.type));return r}function Ae({name:e,className:t,style:n}){switch(e){case`bot`:return(0,J.jsx)(K,{className:t,style:n});case`hash`:return(0,J.jsx)(A,{className:t,style:n});case`send`:return(0,J.jsx)(B,{className:t,style:n});case`phone`:return(0,J.jsx)(L,{className:t,style:n});case`mail`:return(0,J.jsx)(H,{className:t,style:n});case`message-square`:return(0,J.jsx)(I,{className:t,style:n});default:return(0,J.jsx)(ve,{className:t,style:n})}}function Q({contactChannels:e,availableChannels:t,a2aEnabled:n,setupLabel:r=`Invite`,verifyLoading:i,onSetupChannel:a,onVerifyChannel:o,onRevokeChannel:s}){let[c,l]=(0,q.useState)(null),[d,f]=(0,q.useState)(null),p=new Map;for(let t of e)t.status!==`revoked`&&(p.has(t.type)||p.set(t.type,t));return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`div`,{className:`flex flex-col`,children:ke(t,e,n).map((e,t)=>{let n=p.get(e.id);return(0,J.jsxs)(`div`,{children:[t>0&&(0,J.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,J.jsx)(je,{info:e,existing:n,setupLabel:r,verifyLoading:i,onSetup:a?()=>a(e.id):void 0,onVerify:o&&e.supportsVerification?()=>l(e):void 0,onRevoke:s&&n?()=>f({channelId:n.id,channel:e}):void 0})]},e.id)})}),c&&(0,J.jsx)(u,{open:!0,title:`Verify ${c.label}`,message:`This will mark your ${c.label} channel as verified. Your assistant will recognize you when you reach out from it.`,confirmLabel:`Verify`,onConfirm:()=>{c&&(o?.(c.id),l(null))},onCancel:()=>l(null)}),d&&(0,J.jsx)(u,{open:!0,title:`Revoke ${d.channel.label}`,message:`This will disconnect the verified channel. The contact will need to re-verify to use this channel again.`,confirmLabel:`Revoke`,destructive:!0,onConfirm:()=>{s?.(d.channelId,d.channel.id),f(null)},onCancel:()=>f(null)})]})}function je({info:e,existing:t,setupLabel:n,verifyLoading:r,onSetup:i,onVerify:a,onRevoke:o}){let c=Oe(e,t);return(0,J.jsxs)(`div`,{className:`flex items-center gap-3 py-4`,children:[(0,J.jsx)(Ae,{name:e.icon,className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.label}),t?.address?(0,J.jsx)(`span`,{className:`truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t.address}):null,(0,J.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center gap-2`,children:c.kind===`connected`?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,J.jsx)(F,{className:`h-3 w-3`}),`Connected`]}),o?(0,J.jsx)(s,{variant:`danger`,onClick:o,children:`Revoke`}):null]}):c.kind===`verified`?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,J.jsx)(F,{className:`h-3 w-3`}),`Verified`]}),o?(0,J.jsx)(s,{variant:`danger`,onClick:o,children:`Revoke`}):null]}):c.kind===`unverified`?(0,J.jsx)(s,{variant:`outlined`,onClick:a,disabled:!a||r,children:r?`Verifying…`:`Verify`}):c.kind===`setup`?e.id===`a2a`?null:(0,J.jsx)(s,{variant:`outlined`,onClick:i,disabled:!i,children:n}):null})]})}function Me(e){return(0,J.jsx)(Ne,{...e},e.contact.id)}function Ne({contact:e,savePending:t,deletePending:n,mergePending:r=!1,canMerge:i=!1,availableChannels:a,a2aEnabled:o,onSave:c,onDelete:l,onMerge:d,onSetupChannel:f,onRevokeChannel:m}){let h=e.displayName===`New Contact`,[g,_]=(0,q.useState)(h?``:e.displayName),[v,y]=(0,q.useState)(e.notes??``),[b,x]=(0,q.useState)(!1),S=g.trim(),C=v.trim(),w=h?``:e.displayName,T=e.notes??``,E=S!==w||C!==T,ee=S.length>0&&E&&!t&&!n,D=h&&e.channels.length===0&&e.interactionCount===0,te=S||e.displayName,ne=`${e.interactionCount} interaction${e.interactionCount===1?``:`s`}`;return(0,J.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,J.jsx)(G,{title:te,accessory:(0,J.jsx)(Y,{role:e.role,contactType:e.contactType}),compactAccessory:!0,subtitle:ne,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsx)(p,{label:`Name`,type:`text`,value:g,onChange:e=>_(e.target.value),placeholder:`Give this human a name`,autoFocus:h,disabled:t||n,fullWidth:!0}),(0,J.jsx)(p,{label:`Notes`,type:`text`,value:v,onChange:e=>y(e.target.value),placeholder:`Optional notes about the human which AI will take into account`,disabled:t||n,fullWidth:!0}),(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,J.jsx)(s,{type:`button`,onClick:()=>c({displayName:S,notes:C}),disabled:!ee,children:t?`Saving…`:`Save`}),d?(0,J.jsx)(s,{type:`button`,variant:`outlined`,onClick:d,disabled:!i||D||E||r||t||n,title:i?D?`Save this contact before merging`:E?`Save your changes before merging`:void 0:`No other contacts available to merge`,children:r?`Merging…`:`Merge…`}):null,(0,J.jsx)(s,{type:`button`,variant:`danger`,onClick:()=>{D?l():x(!0)},disabled:n,children:n?`Deleting…`:`Delete Contact`})]})]})}),(0,J.jsx)(G,{title:`Channels`,subtitle:`Once verified, your assistant will recognize this contact when they message from these channels.`,children:(0,J.jsx)(Q,{contactChannels:e.channels,availableChannels:a,a2aEnabled:o,onSetupChannel:f,onRevokeChannel:m})}),(0,J.jsx)(u,{open:b,title:`Delete ${e.displayName}?`,message:`This will permanently delete this contact and all their channels. This action cannot be undone.`,confirmLabel:`Delete`,destructive:!0,onConfirm:async()=>{x(!1),await l()},onCancel:()=>x(!1)})]})}function Pe(e){return(0,J.jsx)($,{...e},`${e.survivor.id}:${e.open?`open`:`closed`}`)}function $({open:e,survivor:t,candidates:n,pending:r,errorMessage:i,onMerge:a,onClose:o}){let[l,u]=(0,q.useState)(``),[d,f]=(0,q.useState)(null);(0,q.useEffect)(()=>{d&&!n.some(e=>e.id===d)&&f(null)},[n,d]);let p=(0,q.useMemo)(()=>{let e=l.trim().toLowerCase();return e?n.filter(t=>t.displayName.toLowerCase().includes(e)):n},[n,l]),h=d?n.find(e=>e.id===d)??null:null,g=ze(t);return(0,J.jsx)(m.Root,{open:e,onOpenChange:e=>{!e&&!r&&o()},children:(0,J.jsxs)(m.Content,{size:`md`,children:[(0,J.jsxs)(m.Header,{children:[(0,J.jsx)(m.Title,{icon:ye,children:h?`Merge "${h.displayName}" into ${g}?`:`Merge another contact into ${g}`}),(0,J.jsx)(m.Description,{children:h?`Channels and notes from the merged contact will move over. The merged contact will be deleted.`:`The contact you pick will be deleted. Its channels and notes will be added to this one.`})]}),(0,J.jsxs)(m.Body,{className:`flex flex-col gap-3`,children:[h?(0,J.jsx)(Le,{survivor:t,donor:h}):n.length===0?(0,J.jsx)(Re,{}):(0,J.jsx)(Fe,{search:l,onSearch:u,candidates:p,onPick:f}),i?(0,J.jsx)(c,{as:`p`,variant:`body-small-default`,className:`text-(--system-negative-strong)`,role:`alert`,children:i}):null]}),(0,J.jsx)(m.Footer,{children:h?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(s,{variant:`outlined`,onClick:()=>f(null),disabled:r,leftIcon:(0,J.jsx)(U,{"aria-hidden":!0}),children:`Back`}),(0,J.jsx)(s,{variant:`danger`,onClick:()=>a(h.id),disabled:r,children:r?`Merging…`:`Merge`})]}):(0,J.jsx)(s,{variant:`outlined`,onClick:o,disabled:r,children:`Cancel`})})]})})}function Fe({search:e,onSearch:t,candidates:n,onPick:r}){return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(p,{type:`text`,value:e,onChange:e=>t(e.target.value),placeholder:`Search contacts`,leftIcon:(0,J.jsx)(j,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}),(0,J.jsx)(`div`,{className:`flex max-h-[320px] min-h-[120px] flex-col gap-1 overflow-y-auto`,role:`listbox`,"aria-label":`Select a contact to merge`,children:n.length===0?(0,J.jsx)(c,{as:`p`,variant:`body-small-default`,className:`px-3 py-4 text-center text-(--content-tertiary)`,children:`No matching contacts`}):n.map(e=>(0,J.jsx)(Ie,{contact:e,onPick:()=>r(e.id)},e.id))})]})}function Ie({contact:e,onPick:t}){let n=Ue(e).join(` | `)||void 0;return(0,J.jsx)(f,{asChild:!0,label:``,children:(0,J.jsx)(`button`,{type:`button`,onClick:t,role:`option`,"aria-selected":`false`,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:(0,J.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,J.jsx)(`span`,{className:`truncate text-body-medium-default`,children:e.displayName}),n?(0,J.jsx)(`span`,{className:`truncate text-body-small-default text-(--content-tertiary)`,children:n}):null]})})})}function Le({survivor:e,donor:t}){let n=ze(e),{moved:r,duplicates:i}=He(e,t);return(0,J.jsxs)(`ul`,{className:`flex flex-col gap-2 text-body-medium-lighter text-(--content-secondary)`,children:[(0,J.jsxs)(`li`,{children:[(0,J.jsxs)(`span`,{className:`text-(--content-default)`,children:[`“`,t.displayName,`”`]}),` `,`will be deleted.`]}),(0,J.jsx)(`li`,{children:r.length===0?`No new channels will move to ${n}.`:`${r.length} channel${r.length===1?``:`s`} will move to ${n}: ${r.map(e=>Ve(e.type)).join(`, `)}.`}),i.length>0?(0,J.jsxs)(`li`,{className:`text-(--content-tertiary)`,children:[i.length,` duplicate channel`,i.length===1?``:`s`,` already on `,n,` `,`(skipped).`]}):null,t.notes?(0,J.jsx)(`li`,{children:`Notes from the merged contact will be appended.`}):null,(0,J.jsx)(`li`,{className:`text-(--content-tertiary)`,children:`This cannot be undone.`})]})}function Re(){return(0,J.jsx)(c,{as:`p`,variant:`body-medium-lighter`,className:`px-3 py-6 text-center text-(--content-tertiary)`,children:`No other contacts available to merge.`})}function ze(e){return e.role===`guardian`?!e.displayName||e.displayName.startsWith(`vellum-principal-`)?`you`:`${e.displayName} (you)`:e.displayName||`this contact`}var Be={slack:`Slack`,telegram:`Telegram`,phone:`Phone`,email:`Email`,whatsapp:`WhatsApp`};function Ve(e){return Be[e.toLowerCase()]??e}function He(e,t){let n=[],r=[];for(let i of t.channels)i.status!==`revoked`&&(e.channels.some(e=>e.type===i.type&&e.address.toLowerCase()===i.address.toLowerCase())?r.push(i):n.push(i));return{moved:n,duplicates:r}}function Ue(e){let t=new Set,n=[];for(let r of e.channels){if(r.status===`revoked`)continue;let e=r.type.toLowerCase();t.has(e)||(t.add(e),n.push(Be[e]??r.type))}return n}function We({loading:e,guardian:t,assistantName:n,regularContacts:r,selection:i,onSelect:a,onAddContact:o,addingContact:c=!1}){let[u,d]=(0,q.useState)(``),f=u.trim()?r.filter(e=>e.displayName.toLowerCase().includes(u.trim().toLowerCase())):r;return(0,J.jsx)(l,{className:`h-full`,children:(0,J.jsxs)(`div`,{className:`flex h-full min-w-0 flex-col gap-4`,children:[(0,J.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,J.jsx)(`h2`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:`Entries`}),(0,J.jsx)(s,{type:`button`,variant:`ghost`,iconOnly:c?(0,J.jsx)(b,{className:`animate-spin`,"aria-hidden":!0}):(0,J.jsx)(V,{"aria-hidden":!0}),onClick:o,disabled:c,"aria-label":`Add contact`,tintColor:`var(--content-secondary)`})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[t?(0,J.jsx)(Ge,{name:t.displayName?`${t.displayName} (You)`:`You`,role:t.role,channelTypes:t.channelTypes,selected:i?.kind===`contact`&&i.contactId===t.id,onClick:()=>a({kind:`contact`,contactId:t.id}),trailingIcon:`pencil`}):null,(0,J.jsx)(Ge,{name:n?.trim()||`Your Assistant`,role:`assistant`,selected:i?.kind===`assistant`,onClick:()=>a({kind:`assistant`}),trailingIcon:`more`})]}),(0,J.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),r.length>0?(0,J.jsx)(p,{type:`text`,value:u,onChange:e=>d(e.target.value),placeholder:`Search Contacts`,leftIcon:(0,J.jsx)(j,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}):null,r.length>0?(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[f.map(e=>(0,J.jsx)(Ge,{name:e.displayName,role:e.role,contactType:e.contactType,channelTypes:e.channelTypes,selected:i?.kind===`contact`&&i.contactId===e.id,onClick:()=>a({kind:`contact`,contactId:e.id}),trailingIcon:`more`},e.id)),f.length===0?(0,J.jsx)(`p`,{className:`px-3 py-4 text-center text-body-small-default`,style:{color:`var(--content-tertiary)`},children:`No matching contacts`}):null]}):e?null:(0,J.jsx)(s,{type:`button`,variant:`ghost`,onClick:o,disabled:c,tintColor:`var(--primary-base)`,leftIcon:c?(0,J.jsx)(b,{className:`animate-spin`,"aria-hidden":!0}):(0,J.jsx)(M,{"aria-hidden":!0}),children:`Add Contact`})]})})}function Ge({name:e,role:t,contactType:n,channelTypes:r,selected:i,onClick:a,trailingIcon:o}){let s=r&&r.length>0?r.join(` | `):void 0;return(0,J.jsx)(f,{asChild:!0,active:i,label:``,trailingAction:o===`pencil`?(0,J.jsx)(x,{className:`h-3.5 w-3.5`,"aria-hidden":!0}):o===`more`?(0,J.jsx)(v,{className:`h-3.5 w-3.5`,"aria-hidden":!0}):void 0,children:(0,J.jsxs)(`button`,{type:`button`,onClick:a,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:[(0,J.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,J.jsx)(`span`,{className:`truncate text-body-medium-default`,children:e}),s?(0,J.jsx)(`span`,{className:`truncate text-body-small-default`,style:{color:`var(--content-tertiary)`},children:s}):null]}),(0,J.jsx)(`span`,{className:`shrink-0`,children:(0,J.jsx)(Y,{role:t,contactType:n})})]})})}function Ke(e){let t=e-Date.now();if(t<=0)return`Expired`;let n=Math.ceil(t/(1e3*60*60*24));return n===1?`Expires in 1 day`:`Expires in ${n} days`}function qe({open:e,assistantId:t,onClose:n}){let[r,i]=(0,q.useState)(!1),o=(0,q.useRef)(null),l=(0,q.useRef)(!1),u=a({...ce({path:{assistant_id:t}})}),d=(0,q.useRef)(u.mutate);(0,q.useLayoutEffect)(()=>{d.current=u.mutate});let f=(0,q.useRef)(u.reset);(0,q.useLayoutEffect)(()=>{f.current=u.reset}),(0,q.useEffect)(()=>{e&&!l.current&&d.current({path:{assistant_id:t}}),l.current=e},[e,t]),(0,q.useEffect)(()=>()=>{o.current&&clearTimeout(o.current)},[]);let h=(0,q.useCallback)(()=>{f.current(),i(!1),o.current&&=(clearTimeout(o.current),null),n()},[n]),g=(0,q.useCallback)(e=>{navigator.clipboard.writeText(e).then(()=>{i(!0),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>i(!1),2e3)})},[]),_=u.isSuccess&&u.data.token?me({senderAssistantId:t,token:u.data.token}):``;return(0,J.jsx)(m.Root,{open:e,onOpenChange:e=>{e||h()},children:(0,J.jsxs)(m.Content,{size:`sm`,children:[(0,J.jsx)(m.Header,{children:(0,J.jsx)(m.Title,{children:`Share Connection Link`})}),(0,J.jsx)(m.Body,{children:u.isPending?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 py-2 text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:[(0,J.jsx)(b,{className:`h-4 w-4 animate-spin`}),`Creating invite link…`]}):u.isError?(0,J.jsxs)(`div`,{className:`space-y-3`,children:[(0,J.jsx)(`p`,{role:`alert`,className:`!m-0 text-body-medium-lighter`,style:{color:`var(--system-negative-strong)`},children:`Failed to create invite link. Make sure A2A is enabled for your assistant.`}),(0,J.jsx)(s,{variant:`outlined`,onClick:()=>u.mutate({path:{assistant_id:t}}),children:`Try Again`})]}):u.isSuccess?(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,J.jsx)(c,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:`Share this link with another assistant owner to establish a connection.`}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsx)(p,{type:`text`,readOnly:!0,value:_,fullWidth:!0,wrapperClassName:`flex-1`,className:`font-mono`,onFocus:e=>e.currentTarget.select()}),(0,J.jsx)(`button`,{type:`button`,onClick:()=>g(_),"aria-label":`Copy invite link`,className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-[var(--border-base)] hover:bg-[var(--surface-hover)]`,children:r?(0,J.jsx)(R,{className:`h-4 w-4`}):(0,J.jsx)(z,{className:`h-4 w-4`})})]}),u.data.expiresAt!=null&&(0,J.jsx)(c,{variant:`body-small-default`,style:{color:`var(--content-tertiary)`},children:Ke(u.data.expiresAt)})]}):null}),(0,J.jsx)(m.Footer,{children:(0,J.jsx)(s,{variant:`outlined`,onClick:h,children:`Done`})})]})})}function Je(e){return(0,J.jsx)(Ye,{...e},e.contact.id)}function Ye({contact:e,savePending:t,verifyPending:n,mergePending:r=!1,canMerge:i=!1,availableChannels:a,a2aEnabled:o,onSave:c,onMerge:l,onSetupChannel:u,onVerifyChannel:d,onRevokeChannel:f,onGenerateInviteLink:m}){let h=e.displayName.startsWith(`vellum-principal-`),g=h?``:e.displayName,[_,v]=(0,q.useState)(g),[y,b]=(0,q.useState)(e.notes??``),x=_.trim(),S=y.trim(),C=x!==g.trim()||S!==(e.notes??``).trim(),w=C&&!t,T=`${e.interactionCount} interaction${e.interactionCount===1?``:`s`}`;return(0,J.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,J.jsx)(G,{title:h?`You`:`${e.displayName} (You)`,accessory:(0,J.jsx)(Y,{role:`guardian`}),compactAccessory:!0,subtitle:T,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsx)(p,{label:`Name`,type:`text`,value:_,onChange:e=>v(e.target.value),placeholder:`Your name`,disabled:t,fullWidth:!0}),(0,J.jsx)(p,{label:`Notes`,type:`text`,value:y,onChange:e=>b(e.target.value),placeholder:`Notes about yourself which AI will take into account`,disabled:t,fullWidth:!0}),(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,J.jsx)(s,{variant:`primary`,onClick:()=>c({displayName:x||e.displayName,notes:S}),disabled:!w,children:t?`Saving…`:`Save`}),l?(0,J.jsx)(s,{variant:`outlined`,onClick:l,disabled:!i||C||r||t,title:i?C?`Save your changes before merging`:void 0:`No other contacts available to merge`,children:r?`Merging…`:`Merge…`}):null]})]})}),(0,J.jsx)(G,{title:`Channels`,subtitle:`Once verified, your assistant will recognize you when you message from these channels.`,children:(0,J.jsx)(Q,{contactChannels:e.channels,availableChannels:a,a2aEnabled:o,setupLabel:`Enable`,verifyLoading:n,onSetupChannel:u,onVerifyChannel:d,onRevokeChannel:f})}),m?(0,J.jsx)(X,{onClick:m}):null]})}var Xe=[{id:`slack`,label:`Slack`,subtitle:`Message your assistant from Slack`,icon:`hash`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Slack. Can you help me set that up?`,contact:`I'd like to verify a contact's Slack identity. Can you walk me through it?`}},{id:`telegram`,label:`Telegram`,subtitle:`Message your assistant from Telegram`,icon:`send`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Telegram. Can you help me set that up?`,contact:`I'd like to verify a contact's Telegram identity. Can you walk me through it?`}},{id:`phone`,label:`Phone Calling`,subtitle:`Call or text your assistant via phone`,icon:`phone`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian for phone calls. Can you help me set that up?`,contact:`I'd like to verify a contact's phone number. Can you help me set that up?`}}],Ze={slack:`I want to reach you on Slack. Let's set it up.`,telegram:`I want to reach you on Telegram. Let's set it up.`,phone:`I want to be able to call you. Let's set you up with a phone number.`},Qe=15e3,$e=[];function et({assistantId:e,onStartSetupConversation:t}){let n=ue.use.a2aChannel(),o=de.use.name(),s=r(),[c,l]=(0,q.useState)({kind:`assistant`}),[u,d]=(0,q.useState)(!1),[f,p]=(0,q.useState)(!1),[m,g]=(0,q.useState)(!1),_=o??`your assistant`,v=(0,q.useMemo)(()=>({path:{assistant_id:e}}),[e]),y=se(v),b=(0,q.useMemo)(()=>({path:{assistant_id:e}}),[e]),x=te(b),ce=i({...ae(v),enabled:!!e,select:e=>e.contacts}),le=i({...ie(b),enabled:!!e,refetchInterval:Qe,select:e=>e.snapshots}),O=i({...oe({path:{assistant_id:e}}),enabled:!!e,queryFn:async({signal:t})=>{let{data:n,error:r,response:i}=await D({path:{assistant_id:e},signal:t,throwOnError:!1});if(!i||i.status===404)return{channels:Xe};if(!i.ok)throw r??Error(`Failed to fetch channel availability`);return n},select:e=>e.channels}).data??$e,k=ce.data,A=(0,q.useMemo)(()=>k?.find(e=>e.role===`guardian`)??null,[k]),j=(0,q.useMemo)(()=>k?.filter(e=>e.role!==`guardian`)??[],[k]),M=(0,q.useMemo)(()=>c.kind===`contact`?k?.find(e=>e.id===c.contactId)??null:null,[k,c]),N=le.data??[],P=(0,q.useMemo)(()=>!k||!M?[]:k.filter(e=>e.id!==M.id&&e.role!==`guardian`),[k,M]),F=P.length>0,I=(0,q.useRef)(!1);(0,q.useEffect)(()=>{I.current||A&&(I.current=!0,l({kind:`contact`,contactId:A.id}))},[A]);let L=(0,q.useMemo)(()=>nt(N),[N]),R=(0,q.useCallback)(()=>s.invalidateQueries({queryKey:y}),[s,y]),z=(0,q.useCallback)(()=>s.invalidateQueries({queryKey:x}),[s,x]),B=a({mutationFn:()=>ge(e,{displayName:`New Contact`}),onMutate:async()=>{await s.cancelQueries({queryKey:y})},onSuccess:e=>{s.setQueryData(y,t=>t?{...t,contacts:[...t.contacts,e]}:void 0),l({kind:`contact`,contactId:e.id})},onSettled:()=>R()}),V=a({mutationFn:t=>_e(e,t),onSuccess:(e,t)=>{s.setQueryData(y,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==t)}:void 0),l({kind:`assistant`})},onSettled:()=>R()}),H=a({mutationFn:({contactId:t,patch:n})=>ge(e,{id:t,displayName:n.displayName,notes:n.notes}),onSuccess:e=>{s.setQueryData(y,t=>t?{...t,contacts:t.contacts.map(t=>t.id===e.id?e:t)}:void 0)},onSettled:()=>R()}),U=a({...re({path:{assistant_id:e}}),onMutate:async()=>{await s.cancelQueries({queryKey:y})},onSuccess:(e,t)=>{let n=e.contact,r=t.body.mergeId;n&&(s.setQueryData(y,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==r).map(e=>e.id===n.id?n:e)}:void 0),l({kind:`contact`,contactId:n.id})),g(!1),h.success(`Contacts merged`)},onSettled:()=>R()}),W=(0,q.useCallback)(e=>{l(e),p(!1),g(!1),U.reset()},[U]),G=(0,q.useCallback)(()=>{U.reset(),g(!0)},[U]),me=(0,q.useCallback)(()=>{U.isPending||(g(!1),U.reset())},[U]),K=a({mutationFn:async t=>{let n={path:{assistant_id:e},throwOnError:!0};t===`slack`?await S(n):t===`telegram`?await w(n):t===`phone`&&await E(n)},onSettled:()=>z()}),ve=a({...ne(),onSuccess:()=>R()}),ye=(0,q.useCallback)((t,n)=>{ve.mutate({path:{assistant_id:e,contactChannelId:t},body:{status:`revoked`}})},[ve,e]),Y=a({mutationFn:t=>T({path:{assistant_id:e},body:{botToken:t},throwOnError:!0}),onSettled:()=>z()}),be=a({mutationFn:({botToken:t,appToken:n})=>ee({path:{assistant_id:e},body:{botToken:t,appToken:n},throwOnError:!0}),onSettled:()=>z()}),X=a({mutationFn:({accountSid:t,authToken:n})=>C({path:{assistant_id:e},body:{accountSid:t,authToken:n},throwOnError:!0}),onSettled:()=>z()}),xe=(0,q.useCallback)(async e=>{await Y.mutateAsync(e)},[Y]),Ce=(0,q.useCallback)(async(e,t)=>{await be.mutateAsync({botToken:e,appToken:t})},[be]),we=(0,q.useCallback)(async(e,t)=>{await X.mutateAsync({accountSid:e,authToken:t})},[X]),Te=(0,q.useCallback)(()=>{B.isPending||B.mutate()},[B]),Z=(0,q.useCallback)(()=>{d(!0)},[]),Ee=(0,q.useCallback)(()=>{d(!1),R()},[R]),De=(0,q.useCallback)(e=>{t&&t(Ze[e])},[t]),Oe=(0,q.useCallback)(e=>{K.mutate(e)},[K]),ke=(0,q.useCallback)(e=>{if(!t)return;let n=O.find(t=>t.id===e)?.setupMessages.contact;n&&t(n)},[O,t]),Ae=(0,q.useCallback)(e=>{if(!t)return;let n=O.find(t=>t.id===e)?.setupMessages.guardian;n&&t(n)},[O,t]),Q=a({mutationFn:t=>he(e,t.channelId),onSuccess:()=>R(),onError:e=>{let t=e instanceof Error?e.message:`Failed to verify channel`;h.error(t)}}),je=(0,q.useCallback)(e=>{if(!M)return;let t=M.channels.find(t=>t.type===e&&t.status!==`revoked`);t&&Q.mutate({channelId:t.id})},[M,Q]),Ne=V.isPending?V.variables:null,$=(0,q.useMemo)(()=>M?H.isPending&&H.variables?.contactId===M.id?{...M,displayName:H.variables.patch.displayName,notes:H.variables.patch.notes}:M:null,[M,H.isPending,H.variables]),Fe={loading:ce.isLoading,assistantName:_,guardian:A?{id:A.id,displayName:A.displayName.startsWith(`vellum-principal-`)?``:A.displayName,role:A.role,channelTypes:at(A.channels,n)}:null,regularContacts:j.filter(e=>e.id!==Ne).map(e=>({id:e.id,displayName:e.displayName,role:e.role,contactType:e.contactType,channelTypes:at(e.channels,n)})),selection:c,onAddContact:Te,addingContact:B.isPending};return(0,J.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 overflow-hidden sm:flex-row sm:gap-6`,children:[(0,J.jsx)(`div`,{className:`flex items-center sm:hidden`,children:(0,J.jsx)(fe,{onClick:()=>p(!0)})}),(0,J.jsx)(pe,{open:f,onClose:()=>p(!1),title:`Contacts`,children:(0,J.jsx)(We,{...Fe,onSelect:W})}),(0,J.jsx)(`aside`,{className:`hidden min-h-0 w-[320px] shrink-0 overflow-y-auto self-stretch sm:block`,children:(0,J.jsx)(We,{...Fe,onSelect:W})}),(0,J.jsx)(`section`,{className:`min-h-0 min-w-0 flex-1 overflow-y-auto`,children:c.kind===`assistant`||c.kind===`contact`&&c.contactId===Ne?(0,J.jsx)(Se,{assistantName:_,channels:L,pendingChannelKey:K.isPending?K.variables??null:null,onSetup:t?De:void 0,onDisconnect:Oe,onSaveTelegramToken:xe,onSaveSlackConfig:Ce,onSaveTwilioCredentials:we,onGenerateInviteLink:n?Z:void 0}):$?$.role===`guardian`?(0,J.jsx)(Je,{contact:$,savePending:H.isPending,verifyPending:Q.isPending,mergePending:U.isPending,canMerge:F,availableChannels:O,a2aEnabled:n,onSave:async e=>{await H.mutateAsync({contactId:$.id,patch:e})},onMerge:G,onSetupChannel:t?Ae:void 0,onVerifyChannel:je,onRevokeChannel:ye,onGenerateInviteLink:n?Z:void 0}):(0,J.jsx)(Me,{contact:$,savePending:H.isPending,deletePending:V.isPending,mergePending:U.isPending,canMerge:F,availableChannels:O,a2aEnabled:n,onSave:async e=>{await H.mutateAsync({contactId:$.id,patch:e})},onDelete:async()=>{await V.mutateAsync($.id)},onMerge:G,onSetupChannel:t?ke:void 0,onRevokeChannel:ye}):(0,J.jsx)(tt,{})}),M?(0,J.jsx)(Pe,{open:m,survivor:M,candidates:P,pending:U.isPending,errorMessage:U.error instanceof Error?U.error.message:U.error?`Failed to merge contacts`:null,onMerge:t=>U.mutate({path:{assistant_id:e},body:{keepId:M.id,mergeId:t}}),onClose:me}):null,(0,J.jsx)(qe,{open:u,assistantId:e,onClose:Ee})]})}function tt(){return(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center py-16`,children:(0,J.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Select a contact`})})}function nt(e){let t=new Map;for(let n of e)t.set(n.channel,n);return[`slack`,`telegram`,`phone`].map(e=>{let n=t.get(e);return{key:e,status:rt(n),address:n?.channelHandle??void 0}})}function rt(e){return e?e.ready||e.setupStatus===`ready`?`ready`:e.setupStatus===`incomplete`?`incomplete`:`not_configured`:`not_configured`}var it={slack:`Slack`,telegram:`Telegram`,phone:`Phone`,email:`Email`,whatsapp:`WhatsApp`,a2a:`A2A`};function at(e,t){let n=new Set,r=[];for(let i of e){if(i.status===`revoked`)continue;let e=i.type.toLowerCase();n.has(e)||e===`a2a`&&!t||(n.add(e),r.push(it[e]??i.type))}return r}function ot(){let e=n(),t=W();return(0,J.jsx)(et,{assistantId:t,onStartSetupConversation:t=>{O.getState().setMainView(`chat`);let n=N();k.getState().setActiveConversationId(n),e(`${le.conversation(n)}?prompt=${encodeURIComponent(t)}`)}},t)}export{ot as ContactsPageRoute};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{h as t,o as n,s as r}from"./capture-error-23NwnaZt.js";import{t as i}from"./react-DJZBPgpf.js";import{m as a,r as o}from"./chunk-5KNZJZUH-BpLAEZ0-.js";import{n as s}from"./QueryClientProvider-DBAeGN3q.js";import{t as c}from"./useQuery-DAtrV0RI.js";import{t as l}from"./jsx-runtime-XSukodg_.js";import{t as u}from"./cn-DIX4PZch.js";import{t as d}from"./button-Cs9tc8OR.js";import{t as f}from"./dropdown-PPtOL9bp.js";import"./src-Bah0_lDG.js";import{t as p}from"./confirm-dialog-DavdF-L4.js";import{t as m}from"./tag-BkZB4euH.js";import{t as h}from"./toggle-DGzEs0L1.js";import{t as g}from"./toast-Cii5pffK.js";import{t as _}from"./createLucideIcon-D8wUFCt3.js";import{t as v}from"./bug-wSdnBKWO.js";import{t as y}from"./loader-circle-FEkI0Am4.js";import{a as b,o as x,s as S}from"./feature-flag-catalog-H7Q8h3pM.js";import{o as C}from"./api-DYTu2hC1.js";import{t as w}from"./client.gen-BSPUYAay.js";import{i as T}from"./routes-Dfo11DAg.js";import{t as E}from"./use-is-org-ready-C0KPmJ3X.js";import{i as D}from"./query-tags-DAoC-jzg.js";import{t as O}from"./assistant-feature-flag-store-XFfKSl8X.js";import{t as k}from"./misc-BwTS2Omn.js";import{$n as A,Ai as ee,At as te,Ea as ne,Ji as j,Qn as M,gi as N,ht as P,oo as F,rr as I}from"./index-DmTi6dG-.js";import{t as L}from"./detail-card-Y8InXOgy.js";var R=_(`flame`,[[`path`,{d:`M12 3q1 4 4 6.5t3 5.5a1 1 0 0 1-14 0 5 5 0 0 1 1-3 1 1 0 0 0 5 0c0-2-1.5-3-1.5-5q0-2 2.5-4`,key:`1slcih`}]]),z=_(`timer`,[[`line`,{x1:`10`,x2:`14`,y1:`2`,y2:`2`,key:`14vaq8`}],[`line`,{x1:`12`,x2:`15`,y1:`14`,y2:`11`,key:`17fdiu`}],[`circle`,{cx:`12`,cy:`14`,r:`8`,key:`1e1u0o`}]]),B=e(i(),1),V=l();function H(){let e=s(),[t,n]=(0,B.useState)(!1),[r,i]=(0,B.useState)(!1),{data:a,isLoading:o}=c(P()),{data:l,isLoading:u}=c(te({query:{hosting:`all`}})),f=o||u,m=l?.results??[];return(0,V.jsxs)(`div`,{className:`space-y-6`,children:[(0,V.jsx)(U,{assistant:a??null,loading:f}),(0,V.jsx)(W,{assistants:m,activeAssistantId:a?.id??null,loading:f}),(0,V.jsxs)(L,{title:`Hatch New Assistant`,subtitle:`Create a new assistant instance.`,children:[(0,V.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[(0,V.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Provision a new assistant. This may take a moment.`}),(0,V.jsx)(d,{variant:`outlined`,leftIcon:t?(0,V.jsx)(y,{className:`animate-spin`}):void 0,onClick:()=>i(!0),disabled:t,className:`shrink-0`,children:`Hatch`})]}),(0,V.jsx)(p,{open:r,title:`Hatch New Assistant`,message:`Are you sure you want to create a new assistant? This will provision new infrastructure.`,confirmLabel:`Hatch`,onConfirm:async()=>{i(!1),n(!0);try{let t=await C();if(t.ok)g.success(`New assistant hatched successfully.`),e.invalidateQueries({queryKey:[`assistants`]});else{let e=typeof t.error?.detail==`string`?t.error.detail:`Failed to hatch assistant.`;g.error(e)}}catch{g.error(`Failed to hatch assistant.`)}finally{n(!1)}},onCancel:()=>i(!1)})]})]})}function U({assistant:e,loading:t}){return t?(0,V.jsx)(L,{title:`Assistant Info`,children:(0,V.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,V.jsx)(y,{className:`h-4 w-4 animate-spin`}),`Loading assistant info...`]})}):e?(0,V.jsx)(L,{title:`Assistant Info`,subtitle:`Current assistant details.`,children:(0,V.jsxs)(`div`,{className:`grid grid-cols-[140px_minmax(0,1fr)] gap-y-3`,children:[(0,V.jsx)(G,{children:`Name`}),(0,V.jsx)(K,{children:e.name??`Unnamed`}),(0,V.jsx)(G,{children:`Status`}),(0,V.jsx)(`div`,{children:(0,V.jsx)(m,{tone:e.status===`active`?`positive`:`neutral`,children:e.status})}),(0,V.jsx)(G,{children:`Assistant ID`}),(0,V.jsx)(`span`,{className:`break-all font-mono text-body-small-default text-[var(--content-tertiary)]`,children:e.id}),e.machine_id&&(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(G,{children:`Machine ID`}),(0,V.jsx)(`span`,{className:`break-all font-mono text-body-small-default text-[var(--content-tertiary)]`,children:e.machine_id})]}),(0,V.jsx)(G,{children:`Created`}),(0,V.jsx)(K,{children:new Date(e.created).toLocaleDateString()}),(0,V.jsx)(G,{children:`Last Modified`}),(0,V.jsx)(K,{children:new Date(e.modified).toLocaleDateString()}),e.current_release_version&&(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(G,{children:`Version`}),(0,V.jsx)(K,{children:e.current_release_version})]})]})}):(0,V.jsx)(L,{title:`Assistant Info`,children:(0,V.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No assistant found. Hatch an assistant to get started.`})})}function W({assistants:e,activeAssistantId:t,loading:n}){return n||e.length===0?null:(0,V.jsx)(L,{title:`All Assistants`,subtitle:`${e.length} assistant${e.length===1?``:`s`} found.`,children:(0,V.jsx)(`div`,{className:`max-h-[300px] space-y-2 overflow-y-auto`,children:e.map(e=>{let n=e.id===t;return(0,V.jsx)(`div`,{className:`flex items-center justify-between gap-4 rounded-lg border px-4 py-3 ${n?`border-[var(--border-focus)] bg-[var(--surface-lift)]`:`border-[var(--border-base)] bg-[var(--surface-default)]`}`,children:(0,V.jsxs)(`div`,{className:`min-w-0`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,V.jsx)(`span`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:e.name||`Unnamed`}),(0,V.jsx)(m,{tone:e.status===`active`?`positive`:`neutral`,children:e.status}),n&&(0,V.jsx)(m,{tone:`warning`,children:`Current`})]}),(0,V.jsx)(`span`,{className:`font-mono text-body-small-default text-[var(--content-tertiary)]`,children:e.id})]})},e.id)})})})}function G({children:e}){return(0,V.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:e})}function K({children:e}){return(0,V.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e})}function q(){let e=I.use.emailRootDomain(),t=I.use.isNonProduction(),n=I.use.setEnvironment();return(0,V.jsx)(L,{title:`Environment`,subtitle:`Environment configuration overrides for this session.`,children:(0,V.jsxs)(`div`,{className:`space-y-2`,children:[(0,V.jsxs)(`div`,{className:`flex items-start gap-3 py-3`,children:[(0,V.jsx)(`div`,{className:`shrink-0 pt-0.5`,children:(0,V.jsx)(h,{checked:t,onChange:e=>n({isNonProduction:e}),"aria-label":`Non-Production is ${t?`on`:`off`}`})}),(0,V.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,V.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Non-Production`}),(0,V.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Indicates a non-production environment. Enables dev-only UI surfaces and diagnostics.`})]})]}),(0,V.jsxs)(`div`,{className:`flex items-start gap-3 py-3`,children:[(0,V.jsx)(`div`,{className:`shrink-0 pt-0.5`,children:(0,V.jsx)(m,{tone:`neutral`,children:e})}),(0,V.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,V.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Email Root Domain`}),(0,V.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Root domain used for assistant email addresses (e.g. vellum.me).`})]})]})]})})}async function J(){let{data:e,response:t}=await w.get({url:`/v1/feature-flags/`,throwOnError:!1});return t?.ok?e?.flags??[]:[]}var Y={client:`warning`,assistant:`positive`};function X(){let{data:e}=c(P()),t=e?.id??null,n=A();c({queryKey:D(t),queryFn:()=>M(t),enabled:t!==null,...n,retry:1});let{data:r}=c({queryKey:[`feature-flag-definitions`],queryFn:J,enabled:E(),staleTime:300*1e3}),i=(0,B.useMemo)(()=>{let e=new Map;if(!r)return e;for(let t of r)t.type===`string`&&t.values?.length&&e.set(t.key,t.values);return e},[r]),[a,o]=(0,B.useState)(``),s=N(),l=O(),u=(0,B.useMemo)(()=>{let e=[];for(let t of x){let n=b(t.key);if(typeof t.defaultEnabled==`boolean`){let r=s[n],i=l[n],a=t.scope===`both`?r===!0||i===!0:t.scope===`assistant`?i:r;if(typeof a!=`boolean`)continue;e.push({kind:`boolean`,storeKey:n,scope:t.scope,label:t.label,description:t.description,value:a,defaultValue:t.defaultEnabled})}else if(typeof t.defaultEnabled==`string`){let r=s.stringFlags?.[n],a=l.stringFlags?.[n],o=t.scope===`assistant`?a??t.defaultEnabled:r??t.defaultEnabled;e.push({kind:`string`,storeKey:n,scope:t.scope,label:t.label,description:t.description,value:o,defaultValue:t.defaultEnabled,values:i.get(t.key)??t.values})}}return e.sort((e,t)=>e.label.localeCompare(t.label,void 0,{sensitivity:`base`}))},[s,l,i]),d=(0,B.useMemo)(()=>{if(!a.trim())return u;let e=a.trim().toLowerCase();return u.filter(t=>t.label.toLowerCase().includes(e)||t.description.toLowerCase().includes(e)||t.storeKey.toLowerCase().includes(e)||t.scope.includes(e)||t.scope===`both`&&(`client`.includes(e)||`assistant`.includes(e)))},[u,a]);return(0,V.jsx)(L,{title:`Feature Flags`,subtitle:`Active feature flags evaluated for the current session.`,children:(0,V.jsxs)(`div`,{className:`space-y-4`,children:[(0,V.jsxs)(`div`,{className:`relative`,children:[(0,V.jsx)(j,{className:`absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[var(--content-tertiary)]`}),(0,V.jsx)(`input`,{type:`text`,placeholder:`Search flags...`,value:a,onChange:e=>o(e.target.value),className:`w-full rounded-lg border border-[var(--border-base)] bg-[var(--surface-default)] py-2 pl-9 pr-3 text-body-medium-default text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] focus:border-[var(--border-focus)] focus:outline-none`})]}),d.length===0&&(0,V.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No matching flags.`}),d.length>0&&(0,V.jsx)(`div`,{className:`max-h-[500px] space-y-2 overflow-y-auto`,children:d.map(e=>(0,V.jsx)(ae,{flag:e,assistantId:t},e.storeKey))})]})})}function Z({scope:e}){return e===`both`?(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(m,{tone:Y.client,children:`client`}),(0,V.jsx)(m,{tone:Y.assistant,children:`assistant`})]}):(0,V.jsx)(m,{tone:Y[e],children:e})}function re({flag:e,assistantId:t}){let n=N.use.setFlag(),r=O.use.setFlag();return(0,V.jsxs)(`div`,{className:`flex items-start gap-3 py-3`,children:[(0,V.jsx)(`div`,{className:`shrink-0 pt-0.5`,children:(0,V.jsx)(h,{checked:e.value,onChange:i=>{S(e.scope,`client`)&&n(e.storeKey,i),S(e.scope,`assistant`)&&r(e.storeKey,i,t)},"aria-label":`${e.label} is ${e.value?`on`:`off`}`})}),(0,V.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,V.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e.label}),(0,V.jsx)(Z,{scope:e.scope})]}),(0,V.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e.description}),(0,V.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,V.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Default:`}),(0,V.jsx)(m,{tone:`neutral`,children:e.defaultValue?`On`:`Off`})]})]})]})}function ie({flag:e,assistantId:t}){let n=N.use.setStringFlag(),r=O.use.setStringFlag(),[i,a]=(0,B.useState)(e.value);(0,B.useEffect)(()=>{a(e.value)},[e.value]);let o=i=>{i!==e.value&&(S(e.scope,`client`)&&n(e.storeKey,i),S(e.scope,`assistant`)&&r(e.storeKey,i,t))},s=i!==e.value,c=e.values&&e.values.length>0?e.values:null,l=s&&c!=null&&!c.includes(i),d=()=>{l||o(i)},p=e=>{e.key===`Enter`&&e.currentTarget.blur()},h=c!=null&&c.includes(e.value);return(0,V.jsx)(`div`,{className:`flex items-start gap-3 py-3`,children:(0,V.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1.5`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,V.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e.label}),(0,V.jsx)(Z,{scope:e.scope})]}),(0,V.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e.description}),h?(0,V.jsx)(f,{value:e.value,onChange:e=>{a(e),o(e)},options:c.map(e=>({value:e,label:e})),className:`w-48`,"aria-label":`${e.label} value`}):(0,V.jsxs)(`div`,{className:`space-y-1`,children:[(0,V.jsx)(`input`,{type:`text`,value:i,onChange:e=>a(e.target.value),onBlur:d,onKeyDown:p,className:u(`w-full rounded-lg border bg-[var(--surface-default)] px-3 py-1.5 text-body-small-default text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] focus:outline-none`,l?`border-[var(--system-negative-strong)]`:`border-[var(--border-base)] focus:border-[var(--border-focus)]`),placeholder:e.defaultValue||`Enter value...`}),l&&(0,V.jsxs)(`span`,{className:`block text-body-small-default text-[var(--system-negative-strong)]`,children:[`Expected one of: `,c.join(`, `)]})]}),(0,V.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,V.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Default:`}),(0,V.jsx)(m,{tone:`neutral`,children:e.defaultValue||`(empty)`})]})]})})}function ae({flag:e,assistantId:t}){return e.kind===`string`?(0,V.jsx)(ie,{flag:e,assistantId:t}):(0,V.jsx)(re,{flag:e,assistantId:t})}function oe(){let e=(0,B.useCallback)(()=>{n(Error(`[Dev Settings] Test error event`)),g.success(`Sentry error event sent.`)},[]),i=(0,B.useCallback)(()=>{r(`[Dev Settings] Test warning event`,`warning`),g.success(`Sentry warning event sent.`)},[]),a=(0,B.useCallback)(()=>{r(`[Dev Settings] Test info event`,`info`),g.success(`Sentry info event sent.`)},[]),o=(0,B.useCallback)(()=>{r(`[Dev Settings] Test fatal event`,`fatal`),g.success(`Sentry fatal event sent.`)},[]),s=(0,B.useCallback)(()=>{t({name:`[Dev Settings] Test transaction`,op:`test.transaction`,forceTransaction:!0}).end(),g.success(`Sentry performance transaction sent.`)},[]);return(0,V.jsx)(L,{title:`Sentry Testing`,subtitle:`Fire test events to verify Sentry integration is working.`,children:(0,V.jsxs)(`div`,{className:`space-y-3`,children:[(0,V.jsx)(Q,{icon:(0,V.jsx)(R,{className:`h-4 w-4 text-[var(--system-negative-strong)]`}),label:`Fatal Event`,description:`Send a fatal-level event to Sentry.`,onClick:o}),(0,V.jsx)(Q,{icon:(0,V.jsx)(F,{className:`h-4 w-4 text-[var(--system-negative-default)]`}),label:`Error Event`,description:`Capture a test Error exception.`,onClick:e}),(0,V.jsx)(Q,{icon:(0,V.jsx)(ee,{className:`h-4 w-4 text-[var(--system-warning-default)]`}),label:`Warning Event`,description:`Send a warning-level message.`,onClick:i}),(0,V.jsx)(Q,{icon:(0,V.jsx)(ne,{className:`h-4 w-4 text-[var(--content-tertiary)]`}),label:`Info Event`,description:`Send an info-level message.`,onClick:a}),(0,V.jsx)(Q,{icon:(0,V.jsx)(z,{className:`h-4 w-4 text-[var(--system-positive-default)]`}),label:`Performance Transaction`,description:`Start and end a test transaction span.`,onClick:s})]})})}function Q({icon:e,label:t,description:n,onClick:r}){return(0,V.jsxs)(`div`,{className:`flex items-center justify-between gap-4 rounded-lg border border-[var(--border-base)] px-4 py-3`,children:[(0,V.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,V.jsx)(`div`,{className:`shrink-0`,children:e}),(0,V.jsxs)(`div`,{className:`min-w-0`,children:[(0,V.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:t}),(0,V.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:n})]})]}),(0,V.jsxs)(d,{variant:`outlined`,size:`compact`,onClick:r,children:[(0,V.jsx)(v,{className:`h-4 w-4`}),`Send`]})]})}var $=[{id:`feature-flags`,label:`Feature Flags`},{id:`lifecycle`,label:`Assistant Lifecycle`},{id:`sentry`,label:`Sentry Testing`}];function se(){let[e,t]=a(),n=O.use.settingsDeveloperNav(),r=O.use.hasHydrated(),i=(0,B.useMemo)(()=>{let t=e.get(`tab`);return $.find(e=>e.id===t)?.id??`feature-flags`},[e]);if(r&&!n)return(0,V.jsx)(o,{replace:!0,to:T.settings.general});let s=n=>{let r=new URLSearchParams(e.toString());n===`feature-flags`?r.delete(`tab`):r.set(`tab`,n),t(r,{replace:!0})};return(0,V.jsxs)(`div`,{"data-slot":`developer-page`,className:`flex min-h-0 flex-1 flex-col`,children:[(0,V.jsx)(`div`,{role:`tablist`,"aria-label":`Developer sections`,className:`flex shrink-0 items-center gap-1 border-b border-[var(--border-base)]`,children:$.map(e=>{let t=e.id===i;return(0,V.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":t,"aria-controls":`developer-tab-panel-${e.id}`,id:`developer-tab-${e.id}`,onClick:()=>s(e.id),className:k(`relative -mb-px cursor-pointer border-b-2 px-4 py-2 text-body-medium-default transition-colors`,t?`border-[var(--system-positive-strong)] text-[var(--system-positive-strong)]`:`border-transparent text-[var(--content-tertiary)] hover:text-[var(--content-default)] dark:text-[var(--content-disabled)] dark:hover:text-[var(--content-default)]`),children:e.label},e.id)})}),(0,V.jsxs)(`div`,{id:`developer-tab-panel-${i}`,role:`tabpanel`,"aria-labelledby":`developer-tab-${i}`,className:`flex min-h-0 flex-1 flex-col pt-6`,children:[i===`feature-flags`&&(0,V.jsxs)(`div`,{className:`space-y-6`,children:[(0,V.jsx)(X,{}),(0,V.jsx)(q,{})]}),i===`lifecycle`&&(0,V.jsx)(H,{}),i===`sentry`&&(0,V.jsx)(oe,{})]})]})}export{se as DeveloperPage};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/web-BUHhvd6U.js","assets/dist-d-PJ8AUi.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-CS_K7l1U.js";import{i as t}from"./dist-d-PJ8AUi.js";var n=t(`Browser`,{web:()=>e(()=>import(`./web-BUHhvd6U.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-CBHiUh0h.js","assets/dist-d-PJ8AUi.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-CS_K7l1U.js";import{i as t}from"./dist-d-PJ8AUi.js";var n=t(`Share`,{web:()=>e(()=>import(`./web-CBHiUh0h.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-BlXL6x8k.js","assets/dist-d-PJ8AUi.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-CS_K7l1U.js";import{i as t}from"./dist-d-PJ8AUi.js";var n=t(`App`,{web:()=>e(()=>import(`./web-BlXL6x8k.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-tLusY4Su.js","assets/dist-d-PJ8AUi.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-CS_K7l1U.js";import{i as t}from"./dist-d-PJ8AUi.js";var n;(function(e){e.Light=`light`,e.Dark=`dark`})(n||={});var r=t(`SafeArea`,{web:()=>e(()=>import(`./web-tLusY4Su.js`).then(e=>new e.SafeAreaWeb),__vite__mapDeps([0,1]))});export{r as SafeArea};
@@ -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:`pre-chat-onboarding-experiment-2026-06-06`,scope:`client`,key:`pre-chat-onboarding-experiment-2026-06-06`,label:`Pre-chat Onboarding Experiment 2026-06-06`,description:`Pre-chat onboarding experiment with control and variant-a arms. Control shows the full funnel; variant-a shows the condensed pared-down flow.`,defaultEnabled:`control`,values:[`control`,`variant-a`]},{id:`experiment-activation-flow-2026-06-03`,scope:`client`,key:`experiment-activation-flow-2026-06-03`,label:`Activation Flow Experiment 2026-06-03`,description:`Route allowlisted users to the activation-rail bootstrap template after pre-chat. Off by default and targeted through LaunchDarkly.`,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:`settings-developer-nav`,scope:`assistant`,key:`settings-developer-nav`,label:`Settings Developer Nav`,description:`Control Developer nav visibility in macOS settings`,defaultEnabled:!1},{id:`system-schedule-toggles`,scope:`assistant`,key:`system-schedule-toggles`,label:`System Schedule Toggles`,description:`Show Heartbeat and Consolidation pause toggles on the schedules settings page. The toggles only pause automatic runs; manual Run now remains available.`,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},{id:`memory-v3-shadow`,scope:`assistant`,key:`memory-v3-shadow`,label:`Memory v3 Shadow`,description:`When on, runs the new memory-v3 topic-tree retrieval alongside v2 in shadow mode: logs selections to memory_v3_selections, does not modify injected context. Off by default.`,defaultEnabled:!1},{id:`memory-v3-live`,scope:`assistant`,key:`memory-v3-live`,label:`Memory v3 Live`,description:`When on, memory-v3 topic-tree retrieval becomes the live injected memory source (suppressing v2 injection). Off by default; only enable after shadow telemetry validates the design.`,defaultEnabled:!1},{id:`empty-state-dynamic-greetings`,scope:`assistant`,key:`empty-state-dynamic-greetings`,label:`Dynamic Empty-State Greetings`,description:`Enable the empty new-chat screen to refresh cached greeting options via the empty-state greeting LLM call site. When off, the assistant serves workspace-authored greetings or static fallbacks only.`,defaultEnabled:!1},{id:`self-intro-greeting`,scope:`both`,key:`self-intro-greeting`,label:`Self-intro first message`,description:`On the first conversation, send a natural self-introduction (e.g. "Hi Vela, I'm alex. Nice to meet you.") on the user's behalf and route it through real LLM inference, instead of serving the canned first greeting. Names come from the onboarding context; falls back to the canned greeting when no name is known. Exposed to clients so pre-hatch onboarding can compute the source-of-truth initial message, and to the assistant so older clients can still be gated server-side. See assistant/src/daemon/first-greeting.ts (buildSelfIntroMessage).`,defaultEnabled:!1},{id:`provider-first-profile-creation`,scope:`client`,key:`provider-first-profile-creation`,label:`Provider-First Profile Creation`,description:`New profile creation flow: pick (or inline-create) a provider first, then a model, with pre-filled provider and profile name/key, plus a quick-add "+" in the chat composer's Model Profile menu. When off, profile creation uses the previous field order and there is no composer quick-add.`,defaultEnabled:!1},{id:`acp`,scope:`assistant`,key:`acp`,label:`ACP Coding Agents`,description:`Enable spawning and steering external coding agents (Claude Code, Codex, Gemini) via the Agent Client Protocol. Alternative gate to the acp.enabled workspace config field; either enables the subsystem.`,defaultEnabled:!1}]};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)typeof a.defaultEnabled==`boolean`&&t(a.scope,e)&&(r[i(a.key)]=a.defaultEnabled);return r}function o(e){let r={};for(let a of n)typeof a.defaultEnabled==`string`&&t(a.scope,e)&&(r[i(a.key)]=a.defaultEnabled);return r}var s=a(`client`),c=a(`assistant`),l=o(`client`),u=o(`assistant`),d=new Map;for(let e of n)d.set(i(e.key),e);var f=new Map;for(let e of n)f.set(i(e.key),e.key);function p(e){return i(e)}function m(e){return f.get(e)}export{p as a,m as c,l as i,u as n,n as o,s as r,t as s,c as t};
@@ -1 +0,0 @@
1
- function e(e,t=``){return e==null?t:e<1024?`${e} bytes`:e<1024*1024?`${Math.round(e/1024)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}export{e as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{a as t,n,o as r,r as i,s as a}from"./device-settings-C07QvMzm.js";import{t as o}from"./capture-error-23NwnaZt.js";import{t as s}from"./react-DJZBPgpf.js";import{d as c,t as l}from"./chunk-5KNZJZUH-BpLAEZ0-.js";import{n as u}from"./QueryClientProvider-DBAeGN3q.js";import{t as d}from"./useQuery-DAtrV0RI.js";import{t as f}from"./useMutation-DTb3lMvF.js";import{t as p}from"./jsx-runtime-XSukodg_.js";import{t as m}from"./cn-DIX4PZch.js";import{t as h}from"./button-Cs9tc8OR.js";import{t as g}from"./dropdown-PPtOL9bp.js";import{c as _,n as v,s as y}from"./src-Bah0_lDG.js";import{t as b}from"./confirm-dialog-DavdF-L4.js";import{t as x}from"./notice-BWm2kHlI.js";import{t as S}from"./tag-BkZB4euH.js";import{t as C}from"./input-DwAJUlac.js";import{t as w}from"./toggle-DGzEs0L1.js";import{n as T}from"./stat-square-CMFH3mHq.js";import{t as E}from"./modal-C7CS3Y_X.js";import{t as D}from"./toast-Cii5pffK.js";import{t as O}from"./selection-store-BCKoLRDh.js";import{t as k}from"./createLucideIcon-D8wUFCt3.js";import{t as A}from"./bell-BFRXSoMR.js";import{t as j}from"./chevron-right-CJ0Oykrn.js";import{t as M}from"./hard-drive-C5ssi802.js";import{t as N}from"./loader-circle-FEkI0Am4.js";import{a as P,c as F,o as I,r as ee,s as te,t as ne}from"./resize-errors-C_vO4oid.js";import{n as L,r as R,t as z}from"./api-errors-DhNZwQy5.js";import{i as B,n as re}from"./auth-store-NinzEiLF.js";import{t as V}from"./client.gen-BSPUYAay.js";import{D as H,F as ie,U,y as ae}from"./sdk.gen-Dvq7zGs0.js";import{g as W,h as G,p as K}from"./gateway-session-BEbYXAZw.js";import{i as q}from"./routes-Dfo11DAg.js";import{t as J}from"./assistant-feature-flag-store-XFfKSl8X.js";import{n as Y,t as oe}from"./semver-DLbEvyUs.js";import{n as se,t as ce}from"./use-reduced-motion-Blyqtp4V.js";import{$i as le,Ai as ue,An as de,Bt as fe,Fi as pe,Gt as me,Ht as he,It as ge,J as _e,Jn as ve,Lt as ye,Mi as be,Qi as xe,Rt as Se,Ut as Ce,Vi as we,Vt as Te,Wt as Ee,Zi as De,_ as Oe,bt as ke,cr as Ae,da as je,dt as Me,fa as Ne,fn as Pe,fo as Fe,ft as Ie,g as Le,gi as Re,it as ze,ka as Be,kn as Ve,lr as He,lt as Ue,m as We,po as Ge,rr as Ke,un as qe,uo as Je,ur as Ye,v as Xe,zi as Ze,zt as Qe}from"./index-DmTi6dG-.js";import{t as X}from"./detail-card-Y8InXOgy.js";import{t as $e}from"./use-current-platform-assistant-B3gP7gen.js";import{i as et,n as tt,r as nt,t as rt}from"./assistant-status-panel-GQ4MBaan.js";var it=k(`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`}]]),at=k(`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(s(),1);function ot(e){return e}function st(e,t,n){if(!e||typeof e!=`object`||Array.isArray(e))return{code:null,message:n};let r=ot(e),i=r[t];if(Array.isArray(i)&&i.length>0){let e=i[0];if(typeof e==`string`)return{code:null,message:e};if(e&&typeof e==`object`&&!Array.isArray(e)){let t=ot(e),r=t.code,i=t.string??t.message;return{code:typeof r==`string`?r:null,message:typeof i==`string`?i:n}}}return typeof r.detail==`string`?{code:null,message:r.detail}:{code:null,message:n}}var ct={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 lt(){let{data:e,error:t,response:n}=await V.get({url:`/v1/user/me/`,throwOnError:!1});if(L(n,t,`Failed to load profile.`),!n.ok||!e)throw new z(n.status,R(t,n,`Failed to load profile.`));return e}var ut=`Please choose a different handle.`;async function dt(e){let{data:t,error:n,response:r}=await V.patch({url:`/v1/user/me/`,body:e,throwOnError:!1});if(!r)return{kind:`error`,message:R(n,void 0,`Failed to save profile.`)??`Failed to save profile.`};if(r.ok&&t)return{kind:`ok`,data:t};if(r.status===409){let{message:e}=st(n,`username`,ct.taken);return{kind:`taken`,message:e}}if(r.status===400){let{code:e,message:t}=st(n,`username`,ut);return{kind:`invalid`,code:e,message:t}}return{kind:`error`,message:R(n,r,`Failed to save profile.`)}}async function ft(e,t){let{data:n,error:r,response:i}=await V.get({url:`/v1/user/username-available/`,query:{username:e},signal:t,throwOnError:!1});if(L(i,r,`Failed to check handle availability.`),!i.ok||!n)throw new z(i.status,i.status===429?`Too many checks — try again in a moment.`:R(r,i,`Failed to check handle availability.`));return n}var pt=ct,mt=`Please choose a different handle.`;async function ht(e,t){let{data:n,error:r,response:i}=await H({path:{id:e},body:{handle:t},throwOnError:!1});if(!i)return{kind:`error`,message:R(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{message:e}=st(r,`handle`,pt.taken);return{kind:`taken`,message:e}}if(i.status===400){let{code:e,message:t}=st(r,`handle`,mt);return{kind:`invalid`,code:e,message:t}}return{kind:`error`,message:R(r,i,`Failed to save handle.`)}}async function gt(e,t,n){let{data:r,error:i,response:a}=await ae({path:{assistant_id:e},query:{handle:t},signal:n,throwOnError:!1});if(L(a,i,`Failed to check handle availability.`),!a.ok||!r)throw new z(a.status,a.status===429?`Too many checks — try again in a moment.`:R(i,a,`Failed to check handle availability.`));return{available:r.available,code:r.code??null,message:r.message??null}}function _t(e){return/\d{2,}$/.test(e)}var Q=p(),vt=300,yt=1400;function bt({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),[g,_]=(0,Z.useState)(`idle`),[v,y]=(0,Z.useState)(null),b=ce(),x=(0,Z.useRef)(null),S=(0,Z.useMemo)(()=>l.trim().toLowerCase(),[l]),w=S===e.toLowerCase();(0,Z.useEffect)(()=>{if(w||S.length===0){m(!1),x.current?.abort();return}let e=new AbortController;x.current?.abort(),x.current=e,m(!0);let t=window.setTimeout(async()=>{try{let t=await i(S,e.signal);e.signal.aborted||f(t)}catch(t){e.signal.aborted||y(t instanceof Error?t.message:`Couldn't check availability.`)}finally{e.signal.aborted||m(!1)}},vt);return()=>{window.clearTimeout(t),e.abort()}},[S,w,i]);let T=(()=>{if(v)return v;if(d&&!d.available){let e=d.code;return d.message??(e?pt[e]:`Please choose a different handle.`)}return null})(),E=T?n:w?r??null:p?`Checking availability…`:d?.available?`Available.`:null,O=!w&&!p&&d?.available!==!1&&g!==`saving`,k=(0,Z.useCallback)(async()=>{if(!O)return;_(`saving`),y(null);let e=await a(S);if(e.kind===`ok`){_(`saved`),o(e.data),D.success(s),window.setTimeout(()=>_(`idle`),yt);return}if(e.kind===`taken`){_(`idle`),f({available:!1,code:`taken`,message:e.message});return}if(e.kind===`invalid`){_(`idle`),f({available:!1,code:e.code,message:e.message});return}_(`error`),y(e.message),D.error(e.message)},[O,S,o,a,s]),A=(()=>{if(w&&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)(_e,{mode:`wait`,initial:!1,children:(0,Q.jsxs)(se.span,{initial:b?!1:{opacity:0,scale:.85},animate:{opacity:1,scale:1},exit:b?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)(N,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),e===`available`&&(0,Q.jsx)(Ge,{className:`h-4 w-4 text-[var(--system-positive-strong)]`,"aria-label":`Available`}),e===`invalid`&&(0,Q.jsx)(Je,{className:`h-4 w-4 text-[var(--system-negative-strong)]`,"aria-label":`Not available`})]},e)}):null})(),j=(()=>{switch(g){case`saving`:return(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,Q.jsx)(N,{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)(Ge,{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)(C,{label:t,value:l,onChange:e=>{u(e.target.value.replace(/\s+/g,``)),f(null),y(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:A,errorText:T??void 0,helperText:E??void 0,"aria-invalid":!!T,fullWidth:!0,"data-testid":`${c}-input`}),(!w||g!==`idle`)&&(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsx)(h,{variant:`primary`,size:`compact`,onClick:k,disabled:!O,"aria-live":`polite`,"data-testid":`${c}-save`,children:j})})]})}function xt({initial:e,onSaved:t}){let n=re.use.refreshSession(),r=_t(e.username)?`Your handle was auto-generated at signup — pick one you like.`:void 0,i=(0,Z.useCallback)(async e=>await dt({username:e}),[]),a=(0,Z.useCallback)((e,t)=>ft(e,t),[]),o=(0,Z.useCallback)(e=>{t(e),n()},[t,n]);return(0,Q.jsx)(bt,{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 St({assistant:e,onSaved:t}){let n=e.handle??``,r=d({...ke({path:{assistant_id:e.id}})}).data?.results?.[0],i=!!r&&r.subdomain.toLowerCase()===n.toLowerCase(),a=n.length===0?`Your assistant doesn't have a handle yet — claim one to make it mentionable.`:void 0,o=(0,Z.useCallback)(async t=>await ht(e.id,t),[e.id]),s=(0,Z.useCallback)((t,n)=>gt(e.id,t,n),[e.id]);return i?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)(C,{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)(l,{to:`${q.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)(bt,{initialHandle:n,inputLabel:`Assistant handle`,helperText:`Lowercase letters, digits, hyphens, and underscores. 3–30 characters.`,idleHelperText:a,checkAvailable:s,save:o,onSaved:t,saveSuccessToast:`Assistant handle updated.`,fieldId:`assistant-handle`})}function Ct(){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 wt({assistant:e}={}){let[t,n]=(0,Z.useState)(null),[r,i]=(0,Z.useState)(null),a=ce(),[o,s]=(0,Z.useState)(e??null);return(0,Z.useEffect)(()=>{s(e??null)},[e]),(0,Z.useEffect)(()=>{let e=!1;return lt().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)(se.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)(xt,{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)(St,{assistant:o,onSaved:s})]})]}):(0,Q.jsx)(Ct,{})})}function Tt(){let{assistantId:e,setAssistantId:t,isLoading:n,platformAssistants:r}=$e();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-base)] bg-[var(--surface-default)]`}`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,Q.jsx)(Ne,{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)(S,{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)(Ge,{className:`h-4 w-4`}),`Active`]}):(0,Q.jsx)(h,{variant:`outlined`,size:`compact`,disabled:n.status!==`active`,onClick:()=>{t(n.id),D.success(`Switched active assistant.`)},children:`Switch`})})]},n.id)})})})}var Et=[{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 Dt(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 Ot({assistantId:e}){let t=u(),n=Ke.use.isNonProduction(),r=(0,Z.useMemo)(()=>Et.filter(e=>!e.devOnly||n),[n]),{data:i,isLoading:a,isError:o}=d(Ee({path:{id:e}})),s=(0,Z.useMemo)(()=>i?.idle_timeout_seconds??259200,[i]),[c,l]=(0,Z.useState)(null),p=c??s,m=c!==null,g=f({...Ce(),onSuccess:()=>{D.success(`Sleep policy saved.`),l(null),t.invalidateQueries({queryKey:me({path:{id:e}})})},onError:()=>{D.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)(N,{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:p===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: `,Dt(p)]})]}),m&&(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(h,{variant:`primary`,leftIcon:g.isPending?(0,Q.jsx)(N,{className:`animate-spin`}):void 0,onClick:()=>g.mutate({path:{id:e},body:{idle_timeout_seconds:p}}),disabled:g.isPending,children:`Save`}),(0,Q.jsx)(h,{variant:`outlined`,onClick:()=>l(null),disabled:g.isPending,children:`Cancel`})]})]})}function kt(e,t,n){let r=[e.version];return e.version===n&&r.push(`(latest)`),t&&e.version===t&&r.push(`(current)`),r.join(` `)}var At=3e3;function jt(e,t){return t&&e===`preview`?`preview`:`stable`}function Mt({assistantId:e,currentVersion:t,releaseChannel:n,onUpgradeComplete:r}){let i=J.use.rollbackEnabled(),a=Re.use.previewChannel(),o=u(),s=jt(n,a),c=s===`preview`,[l,p]=(0,Z.useState)(!1),m=(0,Z.useRef)(null),[_,v]=(0,Z.useState)(null),[y,x]=(0,Z.useState)(!1),[S,C]=(0,Z.useState)(!1),[w,T]=(0,Z.useState)(null),E=e=>e&&m.current&&e===m.current?(queueMicrotask(()=>{T(S?`Successfully rolled back to version ${m.current}.`:`Successfully updated to version ${m.current}.`),p(!1),m.current=null,v(null),D.success(S?`Rollback complete — assistant is healthy.`:`Update complete — assistant is healthy.`),r?.()}),!1):At;d({...Te({path:{id:e}}),refetchInterval:l?e=>E(e.state.data?.current_release_version):!1});let{data:O,isLoading:k}=d(Ve({query:{channel:s}})),A=O?.find(e=>e.is_stable!==!1)??O?.[0],j=_??A?.version??null,M=(0,Z.useMemo)(()=>{if(!i||!j||!t)return!1;let e=Y(j),n=Y(t);return!e||!n?!1:oe(e,n)<0},[i,j,t]),P=(0,Z.useMemo)(()=>{if(!j)return!1;if(!t)return!0;let e=Y(j),n=Y(t);if(!e||!n)return j!==t;let r=oe(e,n);return i?r!==0:r>0},[i,j,t]),F=f({mutationFn:async t=>{let{data:n}=await U({path:{id:e},body:t,throwOnError:!0});return n}}),I=f({mutationFn:async t=>{let{data:n}=await ie({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`:P?M?`Rollback to`:`Update to`:`Selected`}),(0,Q.jsx)(`span`,{className:`block min-w-0`,children:k?(0,Q.jsxs)(`span`,{className:`flex items-center gap-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(N,{className:`h-3 w-3 animate-spin`}),`Loading...`]}):O&&O.length>0?i?(0,Q.jsx)(g,{value:j??``,onChange:e=>v(e===A?.version?null:e),disabled:l||F.isPending||I.isPending,options:O.map(e=>({value:e.version,label:kt(e,t,A?.version)}))}):(0,Q.jsx)(`span`,{className:`block min-w-0 break-all text-body-medium-lighter text-[var(--content-default)]`,children:A?kt(A,t,A.version):`—`}):`No releases available`})]})]}),(0,Q.jsx)(h,{variant:M?`outlined`:`primary`,className:`min-w-[160px]`,leftIcon:F.isPending||I.isPending||l?(0,Q.jsx)(N,{className:`animate-spin`}):(0,Q.jsx)(le,{}),onClick:()=>x(!0),disabled:!P||F.isPending||I.isPending||l||k||!O?.length,children:l?S?`Rolling back...`:`Updating...`:M?`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`})]}),!P&&t&&j&&!k&&(0,Q.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--system-positive-strong)]`,children:w??`You are already on this version.`}),(0,Q.jsx)(b,{open:y,title:M?`Rollback assistant`:c?`Update preview release`:`Update assistant`,message:M?`Rollback to version ${j??`unknown`}? The assistant will be briefly unavailable.`:c?`Update to preview version ${j??`latest`}? The assistant will be briefly unavailable during the update.`:`Update to version ${j??`latest`}? The assistant will be briefly unavailable during the update.`,confirmLabel:M?`Rollback`:c?`Update preview`:`Update`,onConfirm:async()=>{x(!1),T(null);let t=_??void 0;try{if(M){let e=await I.mutateAsync({version:t});m.current=e.version??t??null,D.success(e.detail||`Rollback to ${t} initiated.`)}else{let e=await F.mutateAsync({version:t});if(e.detail?.includes(`Already on the latest`)){D.warning(e.detail);return}m.current=e.version??t??null,D.success(e.detail||`Update to ${e.version??t??`latest`} initiated.`)}C(M),p(!0),o.invalidateQueries({queryKey:he({path:{id:e}})})}catch{D.error(M?`Failed to trigger rollback. Please try again.`:`Failed to trigger update. Please try again.`)}},onCancel:()=>x(!1)})]})}function Nt(){let e=Ie({platformHostedOnly:!0}),t=Me(),n=re.use.logout(),[r,i]=(0,Z.useState)(!1),a=f({...de(),onSuccess:async()=>{D.success(`Account deletion requested. You will be logged out shortly.`),await n(),Ue(q.account.login)},onError:()=>{D.error(`Failed to request account deletion. Please try again.`)}}),o=e===`full`&&t;return(0,Z.useEffect)(()=>{o&&r&&i(!1)},[o,r]),e===`gated`?null:(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:e===`disabled`?(0,Q.jsx)(x,{tone:`info`,children:`Log in to the Vellum platform to delete your account.`}):(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(h,{variant:`dangerOutline`,onClick:()=>i(!0),disabled:a.isPending||o,className:`self-start`,children:`Delete My Account`}),o&&(0,Q.jsx)(N,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`})]})}),(0,Q.jsx)(b,{open:r,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:()=>{if(o){i(!1);return}i(!1),a.mutate({})},onCancel:()=>i(!1)})]})}function Pt({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 Ft(){return Oe()?(0,Q.jsx)(Pt,{title:`Get the iOS App`,subtitle:`The Vellum iOS app gives you a native experience.`,benefits:[{icon:A,text:`Push notifications`},{icon:it,text:`Biometric login`},{icon:at,text:`Native haptics`},{icon:we,text:`Home screen access`}],ctaLabel:`Download`,ctaLeftIcon:(0,Q.jsx)(we,{size:16}),onAction:()=>{Le(),We()}}):null}function It({className:e}){return(0,Q.jsx)(`div`,{role:`presentation`,className:m(`h-px w-full bg-[var(--border-base)]`,e)})}var $=[`youtube.com`,`youtu.be`,`vimeo.com`,`loom.com`];function Lt(e){try{let t=JSON.parse(e);if(Array.isArray(t))return t.filter(e=>typeof e==`string`)}catch{}return[...$]}function Rt(){return n(`mediaEmbedsEnabled`,!0)}function zt(){let e=i(`mediaEmbedDomains`,``);return e?Lt(e):[...$]}function Bt(){let[e,n]=(0,Z.useState)(()=>Rt()),[i,a]=(0,Z.useState)(()=>zt()),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(``),u=(0,Z.useMemo)(()=>c.trim().toLowerCase(),[c]),d=e=>{n(e),t(`mediaEmbedsEnabled`,e)},f=e=>{a(e),r(`mediaEmbedDomains`,JSON.stringify(e))},p=()=>{if(u){if(i.includes(u)){l(``);return}f([...i,u]),l(``)}},m=e=>{f(i.filter(t=>t!==e))},g=()=>{f([...$])},_=i.length===$.length&&i.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)(w,{checked:e,onChange:d})]}),e&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`mt-4`,children:(0,Q.jsx)(It,{})}),(0,Q.jsxs)(h,{type:`button`,variant:`ghost`,onClick:()=>s(e=>!e),className:`mt-4 w-full justify-between px-3`,"aria-expanded":o,children:[(0,Q.jsxs)(`span`,{className:`flex items-center gap-2`,children:[o?(0,Q.jsx)(Fe,{className:`h-4 w-4`,"aria-hidden":!0}):(0,Q.jsx)(j,{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:[i.length,` domain`,i.length===1?``:`s`]})]}),o&&(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)(C,{label:`Add Domain`,type:`text`,value:c,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`})]}),i.length>0&&(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsx)(h,{type:`button`,variant:`ghost`,size:`compact`,onClick:g,disabled:_,tintColor:`var(--content-tertiary)`,children:`Reset to Defaults`})}),i.length>0&&(0,Q.jsx)(`ul`,{className:`space-y-2`,children:i.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)(be,{}),onClick:()=>m(e),"aria-label":`Remove ${e}`})]},e))})]})]})]})}function Vt(e){return e===`preview`?`preview`:`stable`}function Ht(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 Ut(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 Gt(e){return e?.feature_enabled===!1}function Kt({assistantId:e,onComplete:t}){let n=Re.use.previewChannel(),r=u(),[i,a]=(0,Z.useState)(),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(`restore_backup`),[h,g]=(0,Z.useState)(``),_=Se({path:{assistant_id:e}}),y=Qe({path:{assistant_id:e}}),b=he({path:{id:e}}),{data:C,isLoading:w,isError:T}=d({..._,enabled:n,retry:!1}),E=C?.preview_backups??[],O=(0,Z.useMemo)(()=>Wt(E),[E]),k=O[0],A=O.find(e=>e.snapshot_name===h)??k,j=()=>{r.invalidateQueries({queryKey:y}),r.invalidateQueries({queryKey:b}),t?.()},M=f(ge()),P=f(ye()),F=Vt(C?.current_channel),I=M.isPending||P.isPending,ee=I||Gt(C)||!C?.latest_preview_release,te=p===`restore_backup`&&!A;if((0,Z.useEffect)(()=>{a(F===`preview`?`release-channel`:void 0)},[F]),!n)return null;let ne=C?.standard_upgrade_available??!1;return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(v.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)(v.Item,{value:`release-channel`,id:`preview-release-channel`,children:[(0,Q.jsxs)(v.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`}),C&&(0,Q.jsx)(S,{tone:F===`preview`?`warning`:`neutral`,children:F===`preview`?`Preview`:`Stable`})]}),(0,Q.jsx)(Fe,{className:`h-4 w-4 shrink-0 text-[var(--content-tertiary)] transition-transform group-data-[state=open]:rotate-180`})]}),(0,Q.jsx)(v.Content,{children:(0,Q.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[w&&(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(N,{className:`h-4 w-4 animate-spin`}),`Loading release channel...`]}),T&&(0,Q.jsx)(x,{tone:`error`,title:`Could not load release channel status`,children:`Refresh this page before changing release channels.`}),C&&(0,Q.jsxs)(Q.Fragment,{children:[Gt(C)&&(0,Q.jsx)(x,{tone:`neutral`,title:`Preview channel is unavailable`,children:`The Preview channel is not enabled for this assistant.`}),F===`stable`?(0,Q.jsx)(qt,{status:C,isChangingChannel:I,optInDisabled:ee,onOptIn:()=>s(!0)}):(0,Q.jsx)(Jt,{status:C,isChangingChannel:I,onOptOut:()=>{let e=k;g(e?.snapshot_name??``),m(e?`restore_backup`:ne?`standard_upgrade`:`restore_backup`),l(!0)}})]})]})})]})}),(0,Q.jsx)(Xt,{open:o,isPending:M.isPending,previewVersion:C?.latest_preview_release?.version,onConfirm:async()=>{try{let t=await M.mutateAsync({path:{assistant_id:e}});D.success(t.detail||`Preview channel enabled.`),s(!1),j()}catch(e){D.error(R(e,void 0,`Could not enable Preview channel.`))}},onCancel:()=>s(!1)}),(0,Q.jsx)(Zt,{open:c,backups:O,mode:p,selectedSnapshotName:A?.snapshot_name??``,isPending:P.isPending,restoreModeDisabled:te,standardUpgradeAvailable:ne,onModeChange:m,onSnapshotChange:g,onConfirm:async()=>{if(!te)try{let t=await P.mutateAsync({path:{assistant_id:e},body:p===`restore_backup`?{mode:`restore_backup`,snapshot_name:A?.snapshot_name}:{mode:`standard_upgrade`}});D.success(t.detail||`Stable channel enabled.`),l(!1),j()}catch(e){D.error(R(e,void 0,`Could not switch to Stable.`))}},onCancel:()=>l(!1)})]})}function qt({status:e,isChangingChannel:t,optInDisabled:n,onOptIn:r}){return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsx)(Yt,{status:e}),!e.latest_preview_release&&(0,Q.jsx)(x,{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)(N,{className:`animate-spin`}):(0,Q.jsx)(xe,{}),disabled:n,onClick:r,children:`Opt in to Preview`})]})}function Jt({status:e,isChangingChannel:t,onOptOut:n}){return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsx)(Yt,{status:e}),(0,Q.jsx)(h,{variant:`outlined`,leftIcon:t?(0,Q.jsx)(N,{className:`animate-spin`}):(0,Q.jsx)(De,{}),disabled:t,onClick:n,children:`Switch back to Stable`})]})}function Yt({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 Xt({open:e,isPending:t,previewVersion:n,onConfirm:r,onCancel:i}){return(0,Q.jsx)(E.Root,{open:e,onOpenChange:e=>!e&&i(),children:(0,Q.jsxs)(E.Content,{size:`md`,hideCloseButton:t,children:[(0,Q.jsxs)(E.Header,{children:[(0,Q.jsx)(E.Title,{icon:ue,children:`Opt in to Preview`}),(0,Q.jsx)(E.Description,{children:`Preview releases may be unstable. A 90-day safety backup is taken before the image changes.`})]}),(0,Q.jsx)(E.Body,{children:(0,Q.jsxs)(`div`,{className:`space-y-3`,children:[(0,Q.jsx)(x,{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)(E.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)(N,{className:`animate-spin`}):(0,Q.jsx)(xe,{}),onClick:r,children:t?`Switching...`:`Take Backup and Switch`})]})]})})}function Zt({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)(E.Root,{open:e,onOpenChange:e=>!e&&u(),children:(0,Q.jsxs)(E.Content,{size:`md`,hideCloseButton:i,children:[(0,Q.jsxs)(E.Header,{children:[(0,Q.jsx)(E.Title,{icon:ue,children:`Switch back to Stable`}),(0,Q.jsx)(E.Description,{children:`Choose how this assistant should leave the Preview channel.`})]}),(0,Q.jsx)(E.Body,{children:(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsxs)(_,{value:n,onValueChange:s,disabled:i,"aria-label":`Stable channel return method`,children:[(0,Q.jsx)(y,{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)(y,{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)(g,{value:r,onChange:c,disabled:i,options:t.map(e=>({value:e.snapshot_name,label:`${Ut(e)} - ${Ht(e.created_at)}`}))})]}),n===`restore_backup`&&t.length===0&&!o&&(0,Q.jsx)(x,{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)(x,{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)(E.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)(N,{className:`animate-spin`}):(0,Q.jsx)(le,{}),onClick:l,children:i?`Switching...`:`Switch to Stable`})]})]})})}function Qt({assistant:e,healthz:t,healthzLoading:n,healthzPolling:r,refetch:i,refetchUntilResized:a}){let o=c(),s=d(Pe()),u=s.data,p=!e.is_local,m=u?.plan_id===`pro`,_=d({...qe(),enabled:m}),v=e.machine_size||`small`,y=P(_.data?.max_machine_tier??null),b=(0,Z.useMemo)(()=>I(y,v,(0,Q.jsx)(S,{tone:`positive`,children:`Current`})),[y,v]),C=_.data?.selected_storage_gib??null,[w,T]=(0,Z.useState)(!1),O=y.length>0?y[y.length-1]:null,[k,A]=(0,Z.useState)(null),j=k??O??v,[L,R]=(0,Z.useState)(null),[z,B]=(0,Z.useState)(null),re=f({...fe(),onSuccess:(e,n)=>{D.success(`Resize started. Changes will apply shortly.`,{id:`assistant-resize`}),B(null),A(null),T(!1),n.body?.machine_size==null?i():a(t)},onError:e=>{B(ne(e,`Failed to resize assistant. Please try again.`))}});if(s.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)(x,{tone:`error`,children:`Could not load your subscription. Please try again.`})});let V=m&&y.includes(j)&&j!==v?j:null,H=m&&C!=null&&!0,ie=m&&y.length>0&&te(v)<te(y[y.length-1]),U=re.isPending||r,ae=C==null?t?.disk?.totalMb??null:C*1024,W=t?.disk&&ae!=null?{value:t.disk.usedMb,max:ae,caption:`${tt(t.disk.usedMb)} of ${tt(ae)}`}:null,G=t?.cpu?{value:t.cpu.currentPercent,max:100,caption:`${t.cpu.currentPercent.toFixed(1)}%`}:null,K=t?.memory?{value:t.memory.currentMb,max:t.memory.maxMb,caption:`${tt(t.memory.currentMb)} of ${tt(t.memory.maxMb)}`}:null,J=p?m?H?(0,Q.jsxs)(`button`,{type:`button`,disabled:U,onClick:()=>T(!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)(Ze,{className:`h-3.5 w-3.5`}),`Increase Storage`]}):(0,Q.jsx)(h,{variant:`ghost`,size:`compact`,disabled:U,onClick:()=>T(!0),children:`Resize`}):(0,Q.jsx)(h,{variant:`ghost`,size:`compact`,onClick:()=>R(`storage`),children:`Resize`}):null,Y=p?m?ie?(0,Q.jsxs)(`button`,{type:`button`,disabled:U,onClick:()=>T(!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)(Ze,{className:`h-3.5 w-3.5`}),`Increase Size`]}):(0,Q.jsx)(h,{variant:`ghost`,size:`compact`,disabled:U,onClick:()=>T(!0),children:`Resize`}):(0,Q.jsx)(h,{variant:`ghost`,size:`compact`,onClick:()=>R(`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:n||r?(0,Q.jsx)(N,{className:`animate-spin`}):(0,Q.jsx)(le,{}),tooltip:r?`Applying resize…`:`Refresh resource metrics`,"aria-label":`Refresh resource metrics`,disabled:n||r,onClick:()=>void i()}),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)(M,{className:`h-3.5 w-3.5`})}),(0,Q.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:`Disk`})]}),J]}),(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`}),W?(0,Q.jsx)(et,{value:W.value,max:W.max,caption:W.caption}):n?(0,Q.jsx)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:(0,Q.jsx)(N,{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)(F,{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)(S,{tone:`neutral`,children:ee[v]})]}),Y]}),(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`}),G?(0,Q.jsx)(et,{value:G.value,max:G.max,caption:G.caption}):n?(0,Q.jsx)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:(0,Q.jsx)(N,{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`}),K?(0,Q.jsx)(et,{value:K.value,max:K.max,caption:K.caption}):n?(0,Q.jsx)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:(0,Q.jsx)(N,{className:`h-3 w-3 animate-spin`})}):(0,Q.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:`—`})]})]})]})]})}),(0,Q.jsx)(E.Root,{open:L!=null,onOpenChange:e=>{e||R(null)},children:(0,Q.jsxs)(E.Content,{size:`sm`,children:[(0,Q.jsxs)(E.Header,{children:[(0,Q.jsx)(E.Title,{children:`Upgrade to Pro`}),(0,Q.jsx)(E.Description,{children:L===`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)(E.Footer,{children:[(0,Q.jsx)(h,{variant:`ghost`,onClick:()=>R(null),children:`Cancel`}),(0,Q.jsx)(h,{onClick:()=>{R(null),o(`${q.settings.billing}?adjust_plan=1`)},children:`Upgrade`})]})]})}),(0,Q.jsx)(E.Root,{open:w,onOpenChange:e=>{e||(T(!1),A(null),B(null))},children:(0,Q.jsxs)(E.Content,{size:`sm`,children:[(0,Q.jsxs)(E.Header,{children:[(0,Q.jsx)(E.Title,{icon:F,children:`Resize Assistant`}),(0,Q.jsx)(E.Description,{children:`Resize your assistant's compute and storage. Your assistant will briefly restart.`})]}),(0,Q.jsx)(E.Body,{children:(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[y.length===0?(0,Q.jsx)(x,{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)(g,{options:b,value:j,onChange:A,"aria-label":`Compute machine size`,"data-testid":`resize-machine-size`})]}),H?(0,Q.jsx)(x,{tone:`info`,children:`Storage will be expanded to ${C} GiB.`}):(0,Q.jsx)(x,{tone:`neutral`,children:`Storage will not change.`}),z&&(0,Q.jsx)(x,{tone:`error`,children:z})]})}),(0,Q.jsxs)(E.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)(l,{to:`${q.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:()=>T(!1),children:`Upgrade plan`})]}),(0,Q.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Q.jsx)(h,{variant:`ghost`,onClick:()=>{T(!1),A(null),B(null)},children:`Cancel`}),(0,Q.jsx)(h,{disabled:V==null&&!H||U,leftIcon:U?(0,Q.jsx)(N,{className:`animate-spin`}):void 0,onClick:()=>{B(null);let t={};V!=null&&(t.machine_size=V),H&&C!=null&&(t.storage_gib=C),re.mutate({path:{id:e.id},body:t})},children:z?`Retry`:`Apply`})]})]})]})})]})}function $t({assistantId:e}){let t=c(),[n,r]=(0,Z.useState)(!1),[i,a]=(0,Z.useState)(!1);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(h,{variant:`dangerOutline`,onClick:()=>r(!0),className:`shrink-0`,children:`Retire Assistant`}),(0,Q.jsx)(b,{open:n,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,isPending:i,onConfirm:async()=>{a(!0);let n=await ve(e);if(n.ok){r(!1),D.success(`Assistant retired.`),t(n.nextRoute,{replace:!0});return}D.error(n.error),a(!1),r(!1)},onCancel:()=>r(!1)})]})}var en=`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 tn(){let e=Intl;if(typeof e.supportedValuesOf==`function`)try{let t=e.supportedValuesOf(`timeZone`);if(t.length>0)return[...t].sort()}catch{}return[...en].sort()}function nn(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 rn(e){try{return new Intl.DateTimeFormat(`en-US`,{timeZone:e,hour:`numeric`,minute:`2-digit`,hour12:!0}).format(new Date)}catch{return``}}function an(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 on({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)(()=>tn().map(e=>nn(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)(C,{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:rn(t.identifier)}),(0,Q.jsx)(`span`,{children:t.offsetLabel})]})]},t.identifier))})]})]}),(0,Q.jsx)(It,{}),(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:an(e)})]})]})}function sn(){let e=Re.use.velvet(),[t,n]=(0,Z.useState)(()=>He({velvetEnabled:e}));return(0,Z.useEffect)(()=>{n(He({velvetEnabled:e}))},[e]),(0,Z.useEffect)(()=>a(`theme`,()=>{n(He({velvetEnabled:e}))}),[e]),(0,Z.useEffect)(()=>{Ae(t)},[t]),(0,Q.jsx)(X,{title:`Theme`,children:(0,Q.jsx)(`div`,{className:`max-w-[360px]`,children:(0,Q.jsx)(T,{ariaLabel:`Theme`,value:t,onChange:e=>{n(e),Ye(e),Ae(e)},items:[{value:`system`,label:`System`,icon:(0,Q.jsx)(Ne,{className:`h-4 w-4`})},{value:`light`,label:`Light`,icon:(0,Q.jsx)(pe,{className:`h-4 w-4`})},{value:`dark`,label:`Dark`,icon:(0,Q.jsx)(je,{className:`h-4 w-4`})},...e?[{value:`velvet`,label:`Velvet`,icon:(0,Q.jsx)(Be,{className:`h-4 w-4`})}]:[]]})})})}function cn(){let e=O.use.activeAssistantId(),[t,n]=(0,Z.useState)(()=>i(`timezone`,``)),a=(0,Z.useRef)(e);(0,Z.useEffect)(()=>{a.current=e},[e]);let s=(0,Z.useRef)(!1),c=(0,Z.useRef)(null),l=(0,Z.useRef)(()=>{}),u=e=>{if(s.current){c.current=e;return}let t=a.current;if(!t){c.current=null;return}s.current=!0,c.current=null,V.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:t},body:{ui:{userTimezone:e}},throwOnError:!0}).catch(e=>{o(e,{context:`settings-timezone-override`})}).finally(()=>{s.current=!1;let e=c.current;c.current=null,e!==null&&l.current(e)})};return(0,Z.useEffect)(()=>{l.current=u}),(0,Q.jsx)(X,{title:`Timezone`,subtitle:`Used when displaying times and scheduling reminders.`,children:(0,Q.jsx)(on,{value:t,onChange:e=>{n(e),r(`timezone`,e),u(e)}})})}function ln(){let{assistant:e,assistantLoading:t,healthz:n,healthzLoading:r,healthzPolling:i,refetch:a,refetchUntilResized:o}=nt(),s=J.use.accountDeletion(),l=J.use.multiPlatformAssistant(),u=J.use.settingsSleepPolicy(),d=B(),f=c(),p=Ie(),m=Ie({platformHostedOnly:!0}),h=ze({assistantId:e?.id??null,enabled:!0}),g=e?.is_local&&!W()?null:e,_=K(),v=W()&&!!e&&!!_&&G(_);return(0,Z.useEffect)(()=>{!e||window.location.hash!==`#storage-resources`||requestAnimationFrame(()=>{document.getElementById(`storage-resources`)?.scrollIntoView({block:`start`})})},[e]),(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[h.status&&h.mode!==`inactive`&&(0,Q.jsx)(Xe,{status:h.status,mode:h.mode,isAcknowledging:h.isAcknowledging,acknowledgeError:h.acknowledgeError?.message??null,onAcknowledge:()=>void h.acknowledge(),onReviewWorkspaceData:()=>void f(q.workspace),onUpgradeStorage:m===`full`?()=>void f(`${q.settings.billing}?adjust_plan=1`):null}),(0,Q.jsx)(X,{title:`General`,children:(0,Q.jsx)(rt,{assistant:g,assistantLoading:t,healthz:n,healthzLoading:r})}),d&&p===`full`&&(0,Q.jsx)(wt,{assistant:g}),m===`full`&&e&&(0,Q.jsx)(Qt,{assistant:e,healthz:n,healthzLoading:r,healthzPolling:i,refetch:a,refetchUntilResized:o}),m===`disabled`&&(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)(x,{tone:`info`,children:`Log in to the Vellum platform to manage compute resources.`})}),(0,Q.jsx)(sn,{}),m===`full`&&g&&(0,Q.jsxs)(X,{title:`Software Updates`,children:[(0,Q.jsx)(Mt,{assistantId:g.id,currentVersion:n?.version??g.current_release_version??null,releaseChannel:g.release_channel,onUpgradeComplete:()=>{a()}}),(0,Q.jsx)(Kt,{assistantId:g.id,onComplete:()=>{a()}})]}),m===`disabled`&&(0,Q.jsx)(X,{title:`Software Updates`,children:(0,Q.jsx)(x,{tone:`info`,children:`Log in to the Vellum platform to manage software updates.`})}),(0,Q.jsx)(Ft,{}),m===`full`&&g&&u&&(0,Q.jsx)(X,{title:`Sleep Policy`,subtitle:`Control how long this assistant stays awake when idle.`,children:(0,Q.jsx)(Ot,{assistantId:g.id})}),m===`disabled`&&u&&(0,Q.jsx)(X,{title:`Sleep Policy`,subtitle:`Control how long this assistant stays awake when idle.`,children:(0,Q.jsx)(x,{tone:`info`,children:`Log in to the Vellum platform to manage sleep policy.`})}),(0,Q.jsx)(cn,{}),(0,Q.jsx)(Bt,{}),l&&(0,Q.jsx)(Tt,{}),(p===`full`||v)&&g&&(0,Q.jsx)(X,{variant:`danger`,title:`Retire Assistant`,subtitle:`Permanently retire this assistant and delete all associated data.`,children:(0,Q.jsx)($t,{assistantId:g.id})}),p===`disabled`&&!v&&(0,Q.jsx)(X,{variant:`danger`,title:`Retire Assistant`,subtitle:`Permanently retire this assistant and delete all associated data.`,children:(0,Q.jsx)(x,{tone:`info`,children:`Log in to the Vellum platform to retire this assistant.`})}),s&&(0,Q.jsx)(Nt,{})]})}export{ln as GeneralPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{s as t,t as n}from"./capture-error-23NwnaZt.js";import{t as r}from"./react-DJZBPgpf.js";import{d as i,m as a}from"./chunk-5KNZJZUH-BpLAEZ0-.js";import{t as o}from"./jsx-runtime-XSukodg_.js";import{t as s}from"./button-Cs9tc8OR.js";import{t as c}from"./progress-bar-CgQMQ_UR.js";import{r as ee}from"./api-errors-DhNZwQy5.js";import{b as te,n as l,p as u,v as ne,x as re,y as ie}from"./auth-store-NinzEiLF.js";import{o as ae,r as oe}from"./api-DYTu2hC1.js";import{C as se,S as d,T as f,g as p,t as m,u as h,v as g,y as ce}from"./gateway-session-BEbYXAZw.js";import{u as le}from"./native-biometric-V5gaOHYQ.js";import{i as _}from"./routes-Dfo11DAg.js";import{a as v,i as y}from"./avatar-api-DygRCPqF.js";import{t as b}from"./avatar-svg-compositor-DuV7I45L.js";import{Cr as x,Sr as ue,dr as S,mr as C,vr as w}from"./index-DmTi6dG-.js";import{t as T}from"./onboarding-layout-CTQetjmN.js";import{t as de}from"./provider-key-DiyETKhK.js";import{BUNDLED_COMPONENTS as E}from"./avatar-bundled-components-BKb8hhzM.js";var D=e(r(),1);function fe(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 O=o(),k=3e3,A=800,j=3e5,M=null,N=null,P={initializing:0,provisioning:.33,connecting:.66,ready:1},F=1500,I={initializing:`Getting things ready…`,provisioning:`Setting up your assistant…`,connecting:`Connecting to your assistant…`,ready:`Ready`};function L(e,t,n){if(e>=t)return t;let r=1-(1-Math.min(1,n/F))**3;return e+(t-e)*r}function R(e){let t=x(S({isReplay:e.isReplay}),{kind:`hatch-gate`});return t.action===`redirect`?{kind:`redirect`,to:t.to}:t.action===`wait`?{kind:`wait`}:{kind:`proceed`}}function z(){let e=i(),[r]=a(),o=r.get(`replay`)===`1`,x=r.get(`hosting`),S=p()&&x!==null&&x!==`vellum-cloud`,F=l.use.sessionStatus(),[,z]=w(),[B]=(0,D.useState)(()=>fe(E)),V=(0,D.useMemo)(()=>{let e=b(E,B.bodyShape,B.eyeStyle,B.color,320);return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(e)}`},[B]),[H,U]=(0,D.useState)(`initializing`),[W,G]=(0,D.useState)(null),[pe,K]=(0,D.useState)(!1),[me,he]=(0,D.useState)(0),[ge,q]=(0,D.useState)(0),[_e,J]=(0,D.useState)(0),Y=(0,D.useRef)(H),X=(0,D.useRef)(0),Z=(0,D.useRef)(0),Q=(0,D.useRef)(0),$=(0,D.useCallback)(e=>{X.current=Q.current,Z.current=Date.now(),Y.current=e,U(e),J(e=>e+1)},[]);return(0,D.useEffect)(()=>{let r=R({isReplay:o});if(r.kind===`redirect`){e(r.to,{replace:!0});return}if(r.kind===`wait`)return;K(!1);let i=!1,a=null,s=null,c=null,l=Date.now(),b=C(),w=()=>{try{ue(``)}catch(e){n(e,{context:`onboarding_mark_completed`})}q(1),Q.current=1,X.current=1,U(`ready`),Y.current=`ready`,s=setTimeout(()=>{i||(async()=>{if(await u.checkAssistant(),!i){if(le()){try{z(!0)}catch(e){n(e,{context:`hatching_mark_onboarding_completed_native`})}u.markExpectingFirstMessage(),e(`${_.assistant}?onboarding=1`,{replace:!0});return}e(o?`${_.onboarding.prechat}?replay=1`:_.onboarding.prechat,{replace:!0})}})()},A)},T=async()=>{if($(`provisioning`),o){E(0);return}if(S){try{M||=f(void 0,x===`docker`?`docker`:void 0);let e=await M;if(M=null,i)return;if(!e.ok){G(e.error??`Failed to hatch local assistant.`);return}await g(),e.assistantId&&se(e.assistantId),$(`connecting`);let t=!1;for(;!i&&!t;){let e=h();if(e)try{let n=await fetch(`${e}/readyz`);if(n.ok){let e=await n.json();if(e&&typeof e==`object`&&`status`in e&&e.status===`ok`){m(),await ce(),t=!0;break}}}catch{}if(Date.now()-l>=j){G(`Your assistant is taking longer than expected. Please try again.`);return}await new Promise(e=>{c=setTimeout(e,k)}),c=null}if(i)return;if(e.assistantId)try{await de(e.assistantId)}catch(e){n(e,{context:`onboarding_apply_provider_key`})}w()}catch{if(M=null,i)return;G(`Failed to hatch local assistant. Check CLI logs for details.`)}return}try{N||=ae(b?{version:b}:void 0);let e=await N;if(N=null,i)return;if(!e.ok){if(t(`Onboarding hatch request failed`,{level:`warning`,extra:{status:e.status,error:e.error}}),ie(e.status,e.error)){G(ne),K(!0);return}if(!re(e.status)){G(ee(e.error,void 0,`Failed to start your assistant. Please try again.`));return}}}catch(e){if(N=null,n(e,{context:`onboarding_hatch_assistant`}),i)return}E(0)},E=e=>{i||(a=setTimeout(D,e))},D=async()=>{if(!i){if(Date.now()-l>=j){t(`Onboarding hatch wait exceeded timeout`,{level:`warning`,extra:{maxWaitMs:j}}),G(`Your assistant is taking longer than expected. Please try again.`);return}try{let e=await oe();if(i)return;let t=te(e);if(t.kind===`active`){if(e.ok){let t=e.data.id;y(t).then(e=>{if(!e)return v(t,B)}).catch(e=>{n(e,{context:`onboarding_avatar_sync`})}),p()&&d({assistantId:t,cloud:`vellum`,runtimeUrl:window.location.origin,hatchedAt:new Date().toISOString()})}w();return}if(t.kind===`error`){G(t.message);return}t.kind!==`auto_hatch`&&Y.current===`provisioning`&&$(`connecting`),E(k)}catch(e){if(n(e,{context:`onboarding_poll_assistant`}),i)return;E(k)}}};return T(),()=>{i=!0,a&&clearTimeout(a),s&&clearTimeout(s),c&&clearTimeout(c)}},[me,B,F,o,e,z,$,S]),(0,D.useEffect)(()=>{Z.current===0&&(Z.current=Date.now());let e,t=()=>{let n=Date.now()-Z.current,r=P[Y.current],i=L(X.current,r,n);Q.current=i,q(i),r-i>1e-6&&(e=requestAnimationFrame(t))};return e=requestAnimationFrame(t),()=>cancelAnimationFrame(e)},[_e]),W?(0,O.jsx)(T,{children:(0,O.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,O.jsx)(`h1`,{className:`text-3xl font-semibold tracking-tight`,children:`Something went wrong`}),(0,O.jsx)(`p`,{className:`mt-4 text-body-medium-lighter text-[var(--content-tertiary)]`,children:W}),pe&&(0,O.jsxs)(`div`,{className:`mt-6 flex w-full max-w-sm flex-col items-center gap-3`,children:[(0,O.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Get started today with a local assistant`}),(0,O.jsx)(s,{asChild:!0,variant:`primary`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,children:(0,O.jsx)(`a`,{href:`${window.location.origin}/download`,children:`Download the macOS app`})})]}),(0,O.jsx)(`img`,{src:V,alt:``,width:160,height:160,className:`my-16 onboarding-avatar-failed`}),(0,O.jsxs)(`div`,{className:`flex w-full max-w-sm flex-col gap-2`,children:[(0,O.jsx)(s,{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),he(e=>e+1)},children:`Try again`}),(0,O.jsx)(s,{variant:`outlined`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:()=>void e(S?_.onboarding.hosting:o?`${_.onboarding.privacy}?replay=1`:_.onboarding.privacy,{replace:!0}),children:`Back`})]})]})}):(0,O.jsx)(T,{children:(0,O.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,O.jsx)(`h1`,{className:`text-3xl font-semibold tracking-tight`,children:H===`ready`?`Your assistant is ready!`:`Waking up…`}),H!==`ready`&&(0,O.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,O.jsx)(`img`,{src:V,alt:``,width:160,height:160,className:`my-16 ${H===`ready`?`onboarding-avatar-awake`:`onboarding-avatar-pulse`}`}),(0,O.jsx)(c,{value:ge,height:6,className:`w-full max-w-sm`,"aria-label":`Assistant startup progress`}),(0,O.jsx)(`p`,{className:`mt-3 text-body-small-default text-[var(--content-tertiary)]`,children:I[H]})]})})}export{z as HatchingScreen};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n}from"./chunk-5KNZJZUH-BpLAEZ0-.js";import{n as r}from"./QueryClientProvider-DBAeGN3q.js";import{t as i}from"./useQuery-DAtrV0RI.js";import{t as a}from"./jsx-runtime-XSukodg_.js";import{t as o}from"./cn-DIX4PZch.js";import{n as s,t as c}from"./button-Cs9tc8OR.js";import{t as l}from"./typography-PN7B1rrW.js";import{t as u}from"./menu-0h93UDZw.js";import{l as d,n as f}from"./src-Bah0_lDG.js";import{t as p}from"./tag-BkZB4euH.js";import{t as m}from"./createLucideIcon-D8wUFCt3.js";import{t as h}from"./bell-BFRXSoMR.js";import{t as g}from"./calendar-xwiYi6y2.js";import{t as _}from"./chevron-right-CJ0Oykrn.js";import{t as v}from"./ellipsis-vertical-f27t2xXb.js";import{t as ee}from"./globe-B6unPYdp.js";import{t as te}from"./pencil-CESg1M7c.js";import{t as ne}from"./target-B8JHLfTN.js";import{t as re}from"./wand-sparkles-CIV_5Oi6.js";import{t as y}from"./x-2OoTSOWJ.js";import{b as ie,x as ae}from"./react-query.gen-CfXF72qo.js";import{u as b}from"./native-biometric-V5gaOHYQ.js";import{i as x}from"./routes-Dfo11DAg.js";import{n as S}from"./use-is-mobile-BFvLVXwH.js";import{t as C}from"./viewer-store-BIjT34BR.js";import{t as w}from"./conversation-store-D6erO6zc.js";import{$ as oe,Bn as se,Ca as ce,Ci as le,Ei as ue,Fi as de,Gi as fe,Hi as pe,Hn as me,Ia as he,Ii as ge,Ja as _e,Ji as ve,Ka as ye,Ki as T,Ma as be,Mi as E,Mn as D,Na as O,Pa as k,Pi as A,Ri as j,Rn as M,Sa as N,Si as xe,Vn as Se,Wi as Ce,Xa as we,Xn as Te,Zi as P,Zn as F,ea as Ee,ga as De,ia as Oe,io as ke,ja as Ae,ji as je,ka as Me,la as Ne,ma as I,na as Pe,oa as Fe,oo as Ie,q as Le,qi as Re,tr as ze,ua as Be,va as Ve,xa as He,ya as L,yo as Ue,zi as R,zn as We}from"./index-DmTi6dG-.js";import{t as Ge}from"./use-active-assistant-id-kjFL4dWB.js";import{n as Ke,t as qe}from"./lib-DjjTt2Bu.js";import{n as z,r as B}from"./format-date-C_j5UjES.js";var Je=m(`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`}]]),Ye=m(`book-open`,[[`path`,{d:`M12 7v14`,key:`1akyts`}],[`path`,{d:`M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z`,key:`ruj8y`}]]),Xe=m(`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`}]]),Ze=m(`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`}]]),Qe=m(`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=m(`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`}]]),$e=m(`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`}]]),et=m(`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=a(),W={security:{icon:Ce,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:ke,strong:`var(--feed-thread-strong)`,weak:`var(--feed-thread-weak)`},background:{icon:T,strong:`var(--system-info-strong)`,weak:`var(--system-info-weak)`},system:{icon:h,strong:`var(--feed-digest-strong)`,weak:`var(--feed-digest-weak)`}},tt=[`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:o(`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 nt({categories:e,activeFilter:t,onFilterChange:n}){let r=tt.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)(l,{variant:`body-small-default`,className:`shrink-0 text-[var(--content-tertiary)]`,children:`Filter:`}),(0,U.jsx)(G,{icon:He,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 rt(e,t){!t||!b()||(e.preventDefault(),oe(t))}var it={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=>rt(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 at({content:e,className:t}){return(0,U.jsx)(`div`,{className:o(`text-body-medium-default`,t),children:(0,U.jsx)(Ke,{remarkPlugins:[qe],components:it,children:e})})}function K({item:e}){return(0,U.jsx)(at,{content:e.summary})}function ot(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 st(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)(l,{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)(l,{variant:`title-small`,as:`h3`,children:n}),r?(0,U.jsx)(l,{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:ot(i)},"aria-hidden":`true`}),(0,U.jsx)(l,{variant:`body-medium-default`,className:`text-[var(--content-default)]`,children:st(i)})]}),a?(0,U.jsx)(l,{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)(l,{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)(l,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:e})},e))})]}):null]})}function ct(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,d=ct(e.category),f=d.icon,m=e.status===`new`,h=e.status===`dismissed`,g=!!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:`relative flex shrink-0 items-center px-3 py-2`,children:[(0,U.jsx)(c,{variant:`ghost`,iconOnly:(0,U.jsx)(Ue,{}),onClick:r,"aria-label":`Back`,tooltip:`Back`}),(0,U.jsx)(l,{variant:`body-medium-default`,className:`pointer-events-none absolute inset-x-0 text-center text-[var(--content-secondary)]`,children:`Details`}),(0,U.jsxs)(`div`,{className:`ml-auto flex items-center gap-2`,children:[(0,U.jsx)(c,{variant:`ghost`,iconOnly:m?(0,U.jsx)(V,{}):(0,U.jsx)(L,{}),onClick:()=>a(e.id,m?`seen`:`new`),"aria-label":m?`Mark as read`:`Mark as unread`,tooltip:m?`Mark as read`:`Mark as unread`}),h?(0,U.jsx)(c,{variant:`ghost`,iconOnly:(0,U.jsx)(P,{}),onClick:()=>a(e.id,`seen`),"aria-label":`Restore`,tooltip:`Restore`}):(0,U.jsx)(c,{variant:`ghost`,iconOnly:(0,U.jsx)(E,{}),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:d.weak},"aria-hidden":`true`,children:(0,U.jsx)(f,{width:18,height:18,style:{color:d.strong}})}),(0,U.jsx)(l,{variant:`title-small`,className:`min-w-0 text-[var(--content-default)]`,children:e.title??e.summary}),(0,U.jsx)(p,{tone:`neutral`,className:`shrink-0`,title:z(e.timestamp),children:B(e.timestamp)})]}),(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})}),g?(0,U.jsx)(`div`,{className:`shrink-0 px-4 pb-4 pt-2`,children:(0,U.jsx)(c,{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:d.weak},"aria-hidden":`true`,children:(0,U.jsx)(f,{width:14,height:14,style:{color:d.strong}})}),(0,U.jsx)(l,{variant:`title-small`,className:`min-w-0 flex-1 truncate text-[var(--content-default)]`,children:e.title??e.summary}),(0,U.jsx)(p,{tone:`neutral`,className:`shrink-0`,title:z(e.timestamp),children:B(e.timestamp)}),g?(0,U.jsx)(c,{variant:`outlined`,size:`compact`,onClick:()=>i(e.conversationId),children:`Go to Convo`}):null,(0,U.jsxs)(u.Root,{children:[(0,U.jsx)(u.Trigger,{children:(0,U.jsx)(c,{variant:`outlined`,size:`compact`,iconOnly:(0,U.jsx)(v,{}),"aria-label":`More actions`,tooltip:`More actions`})}),(0,U.jsx)(u.Content,{align:`end`,children:h?(0,U.jsx)(u.Item,{onSelect:()=>a(e.id,`seen`),leftIcon:(0,U.jsx)(P,{className:`size-4`}),children:`Restore`}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(u.Item,{onSelect:()=>a(e.id,m?`seen`:`new`),leftIcon:m?(0,U.jsx)(V,{className:`size-4`}):(0,U.jsx)(L,{className:`size-4`}),children:m?`Mark as read`:`Mark as unread`}),(0,U.jsx)(u.Item,{onSelect:()=>o(e.id),leftIcon:(0,U.jsx)(Ie,{className:`size-4`}),children:`Dismiss`})]})})]}),(0,U.jsx)(c,{variant:`outlined`,size:`compact`,iconOnly:(0,U.jsx)(y,{}),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({label:e,onClick:t,className:n,children:r}){return(0,U.jsx)(s,{content:e,children:(0,U.jsx)(`button`,{type:`button`,"aria-label":e,onClick:e=>{e.stopPropagation(),t()},className:o(`cursor-pointer text-[var(--content-disabled)] transition-colors hover:text-[var(--content-secondary)]`,n),children:r})})}function lt(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:s,trailingAction:c=`dismiss`}){let[l,u]=(0,H.useState)(!1),d=lt(e.category),f=d.icon,p=e.status===`new`,m=c===`restore`;return(0,U.jsxs)(`button`,{type:`button`,onClick:()=>r(e),onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1),className:o(`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)]`:l?`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:o(`text-body-medium-default min-w-0 flex-1 truncate text-left`,`text-[var(--content-secondary)]`),children:e.title??e.summary}),l&&!m?(0,U.jsxs)(`span`,{className:`flex shrink-0 items-center gap-[var(--app-spacing-sm)]`,children:[a&&(0,U.jsx)(Y,{label: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})}),s&&e.conversationId&&(!n||n.has(e.conversationId))&&(0,U.jsx)(Y,{label:`Go to thread`,onClick:()=>{p&&a&&a(e.id,`seen`),s(e.conversationId)},children:(0,U.jsx)(I,{width:14,height:14})}),(0,U.jsx)(Y,{label:`Dismiss`,onClick:()=>i(e.id),children:(0,U.jsx)(E,{width:14,height:14})})]}):l&&m?(0,U.jsxs)(Y,{label:`Restore`,onClick:()=>i(e.id),className:`flex shrink-0 items-center gap-[var(--app-spacing-xs)]`,children:[(0,U.jsx)(P,{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:B(e.timestamp)})]})}function ut(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 dt(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 ft(e,t){return t===null?e:e.filter(e=>(e.category??`system`)===t)}function pt(e){return e.filter(e=>e.urgency!==`high`&&e.urgency!==`critical`)}function mt(e){let t=new Set;for(let n of e)t.add(n.category??`system`);return[...t]}var ht={today:`Today`,yesterday:`Yesterday`,older:`Older`};function gt({items:e,selectedItemId:t,validConversationIds:n,onSelectItem:r,onDismissItem:i,onRestoreItem:a,onToggleRead:o,onGoToThread:s}){let[c,u]=(0,H.useState)(null),d=pt(e.filter(e=>e.status!==`dismissed`)),p=mt(d),m=c&&p.includes(c)?c:null;c!==m&&u(m);let h=dt(ut(ft(d,m))),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)(nt,{categories:p,activeFilter:m,onFilterChange:u}),h.size===0?(0,U.jsx)(l,{variant:`body-medium-lighter`,className:`py-[var(--app-spacing-xl)] text-center text-[var(--content-disabled)]`,children:m?`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)(l,{variant:`body-small-default`,as:`h3`,className:`text-[var(--content-tertiary)]`,children:ht[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)(f.Root,{type:`single`,collapsible:!0,children:(0,U.jsxs)(f.Item,{value:`dismissed`,children:[(0,U.jsxs)(f.Trigger,{className:`group gap-[var(--app-spacing-xs)] text-body-small-default text-[var(--content-tertiary)]`,children:[(0,U.jsx)(_,{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)(f.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 _t(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 vt({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)(Le,{components:e,traits:t,customImageUrl:n,size:36}),(0,U.jsx)(l,{variant:`title-large`,as:`h1`,className:`truncate`,children:r||_t(new Date)})]}),i?(0,U.jsx)(c,{variant:`primary`,iconOnly:(0,U.jsx)(j,{}),onClick:a,"aria-label":`New Chat`,tooltip:`New Chat`,className:`!rounded-full`}):(0,U.jsx)(c,{variant:`primary`,leftIcon:(0,U.jsx)(j,{}),onClick:a,children:`New Chat`})]})}var Z={AlarmClock:Je,Bell:h,BookOpen:Ye,Briefcase:Xe,Calendar:g,CheckSquare:et,Code:we,Compass:_e,Cpu:ye,FileText:he,Flag:k,Folder:O,Gamepad:be,Gift:Ae,Globe:ee,GraduationCap:Ze,Heart:Me,Lightbulb:ce,Link:N,ListTodo:Qe,Mail:L,Map:Ve,MessageCircle:De,MessageSquare:I,Music:Be,Package:Ne,Pencil:te,Phone:Fe,Pin:Oe,Plane:$e,Plug:Pe,Puzzle:Ee,Search:ve,Send:Re,Settings:T,Share:fe,ShoppingCart:pe,Sparkles:R,Star:ge,Sun:de,Target:ne,Tag:A,TrendingUp:je,Users:ue,Wand2:re,Wrench:le,Zap:xe};function Q(e){return e.charAt(0).toUpperCase()+e.slice(1)}function $(e){if(!e)return R;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 R}function yt({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)(l,{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)(y,{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)($(e.icon),{className:`size-[18px]`})}),(0,U.jsx)(`span`,{className:`text-body-small-default`,children:e.label})]},e.id))})]})}function bt(e){let t=r(),n=(0,H.useMemo)(()=>ae({path:{assistant_id:e??``}}),[e]),a=i({...ie({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4}),o=(0,H.useCallback)(()=>{e&&t.invalidateQueries({queryKey:n})},[e,t,n]);return{...a,invalidate:o}}function xt(){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 St({assistantId:e,validConversationIds:t,onStartNewChat:n,onOpenConversation:r,onSuggestionSelected:i}){let a=S(),o=Te(e),s=Se(e);bt(e);let[c,l]=(0,H.useState)(null),u=(0,H.useCallback)(e=>{e.status===`new`?(l({...e,status:`seen`}),s.updateStatus.mutate({itemId:e.id,status:`seen`})):l(e)},[s.updateStatus]),f=(0,H.useCallback)(()=>{l(null)},[]),p=(0,H.useCallback)(e=>{s.updateStatus.mutate({itemId:e,status:`dismissed`}),c?.id===e&&l(null)},[s.updateStatus,c?.id]),m=(0,H.useCallback)(e=>{s.updateStatus.mutate({itemId:e,status:`seen`}),l(t=>t?.id===e?{...t,status:`seen`}:t)},[s.updateStatus]),h=(0,H.useCallback)((e,t)=>{s.updateStatus.mutate({itemId:e,status:t}),l(n=>n?.id===e?{...n,status:t}:n)},[s.updateStatus]),g=(0,H.useCallback)(e=>{l(null),r(e)},[r]),_=(0,H.useCallback)(e=>{i(e.prompt)},[i]),v=s.isLoading?(0,U.jsx)(xt,{}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(vt,{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)(yt,{suggestions:s.data?.suggestedPrompts??[],maxVisible:a?2:3,onSelect:_}),(0,U.jsx)(gt,{items:s.data?.items??[],selectedItemId:c?.id,validConversationIds:t,onSelectItem:u,onDismissItem:p,onRestoreItem:m,onToggleRead:h,onGoToThread:g})]});return c&&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:c,isMobile:!0,validConversationIds:t,onClose:f,onGoToThread:g,onUpdateStatus:h,onDismiss:p})}):c&&!a?(0,U.jsx)(d,{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:v}),right:(0,U.jsx)(J,{item:c,validConversationIds:t,onClose:f,onGoToThread:g,onUpdateStatus:h,onDismiss:p})}):(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:v})})})}function Ct(){let e=n(),t=Ge(),r=me.use.setTopBarCenter(),i=S(),{conversations:a}=We(t),{conversations:o}=M(t,!0),{conversations:s}=se(t,!0),c=(0,H.useMemo)(()=>new Set(ze(a,o,s).map(e=>e.conversationId)),[a,o,s]);return(0,H.useEffect)(()=>(r(i?(0,U.jsx)(l,{variant:`body-medium-default`,className:`text-[var(--content-secondary)]`,children:`Home`}):null),()=>{r(null)}),[i,r]),(0,U.jsx)(St,{assistantId:t,validConversationIds:c,onStartNewChat:()=>{C.getState().setMainView(`chat`);let t=F();w.getState().setActiveConversationId(t),e(x.conversation(t)),D()},onOpenConversation:t=>e(x.conversation(t)),onSuggestionSelected:t=>{C.getState().setMainView(`chat`);let n=F();w.getState().setActiveConversationId(n),e(`${x.conversation(n)}?prompt=${encodeURIComponent(t)}`)}})}export{Ct as HomePageRoute};