@vellumai/web 0.9.0-staging.2 → 0.9.1-staging.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (614) hide show
  1. package/README.md +7 -7
  2. package/dist/assets/{BundleConfirmPage-COR1Ynv-.js → BundleConfirmPage-B05RoADk.js} +1 -1
  3. package/dist/assets/{account-page-_nv-9g2O.js → account-page-BXXWqnIU.js} +1 -1
  4. package/dist/assets/{account-shell-B0yfvmVK.js → account-shell-CMXld37R.js} +1 -1
  5. package/dist/assets/add-credits-modal-DpiB3QLy.js +1 -0
  6. package/dist/assets/advanced-page-NqIInihI.js +1 -0
  7. package/dist/assets/ai-page-1l2CkYpn.js +1 -0
  8. package/dist/assets/{angular-html-WWtxQ0FZ.js → angular-html-DrZg9N7A.js} +1 -1
  9. package/dist/assets/{angular-ts-BwZPsSaN.js → angular-ts-okMJpjnr.js} +1 -1
  10. package/dist/assets/{api-BIzaqOVi.js → api-BZ4I3q8P.js} +1 -1
  11. package/dist/assets/{api-key-screen-BfviA_1s.js → api-key-screen-Dp-VBpp-.js} +1 -1
  12. package/dist/assets/{apl-qImUYioN.js → apl-C_w7rnXn.js} +1 -1
  13. package/dist/assets/{app-html-cache-DKXWVT-p.js → app-html-cache-BTpT7uaA.js} +1 -1
  14. package/dist/assets/{archive-BmTrKV5M.js → archive-CeE0yzQG.js} +1 -1
  15. package/dist/assets/archive-page-0ieRHeti.js +1 -0
  16. package/dist/assets/arrow-up-BfbWaCwD.js +1 -0
  17. package/dist/assets/{assistant-feature-flag-store-CFzsxEC5.js → assistant-feature-flag-store-Cxp56Kba.js} +1 -1
  18. package/dist/assets/{assistant-identity-store-C5A1x0hz.js → assistant-identity-store-jSviVw26.js} +1 -1
  19. package/dist/assets/{assistant-status-panel-B8QHRlRK.js → assistant-status-panel-D-z6IxYW.js} +1 -1
  20. package/dist/assets/{astro-BdrsSwVj.js → astro-C45ziIIN.js} +1 -1
  21. package/dist/assets/auth-store-DSAM2WAh.js +6 -0
  22. package/dist/assets/avatar-bundled-components-Cu5DZgIL.js +1 -0
  23. package/dist/assets/{bell-C7RL04h4.js → bell-NxrwR0Jo.js} +1 -1
  24. package/dist/assets/billing-page-DKUCcl5k.js +3 -0
  25. package/dist/assets/{blade-B6JYoa3f.js → blade-qb9kSoZR.js} +1 -1
  26. package/dist/assets/{bookmark-GaSa4dxV.js → bookmark-x7Ifdw-I.js} +1 -1
  27. package/dist/assets/bookmarks-page-B1dsEwnh.js +1 -0
  28. package/dist/assets/{bsl-D_tf_CLc.js → bsl-CjyTSzpP.js} +1 -1
  29. package/dist/assets/{bug-rSnph6U_.js → bug-02o3SRzi.js} +1 -1
  30. package/dist/assets/build-state-Bzd27ecC.js +1 -0
  31. package/dist/assets/button-D7s2Q_uG.js +1 -0
  32. package/dist/assets/{cairo-DDfk82ho.js → cairo-CQCX_le0.js} +1 -1
  33. package/dist/assets/{calendar-CwOLKT3p.js → calendar-DwE3i9wW.js} +1 -1
  34. package/dist/assets/{capture-error-Dze4ISSQ.js → capture-error-BxOQIcLY.js} +1 -1
  35. package/dist/assets/{card-CL5iEMJO.js → card-BibIM9x3.js} +1 -1
  36. package/dist/assets/checkbox-Dc9gjmAy.js +1 -0
  37. package/dist/assets/chevron-left-BpXPM4yj.js +1 -0
  38. package/dist/assets/chevron-right-VLCJ26DX.js +1 -0
  39. package/dist/assets/{chevron-up-BuB8vDjx.js → chevron-up-CpvJ_NKe.js} +1 -1
  40. package/dist/assets/circle-alert-mVsAUggI.js +1 -0
  41. package/dist/assets/circle-check-CSXvLfEU.js +1 -0
  42. package/dist/assets/client-feature-flag-store-D6tVPQsU.js +1 -0
  43. package/dist/assets/{cloud-off-Bla9953d.js → cloud-off-DH9J_354.js} +1 -1
  44. package/dist/assets/{cobol-C-kmZQvm.js → cobol-Bk2j4Qib.js} +1 -1
  45. package/dist/assets/code-ClSTGNCv.js +1 -0
  46. package/dist/assets/{coffee-DhiWyyUJ.js → coffee-C-3Eo9LW.js} +1 -1
  47. package/dist/assets/command-palette-CSvW_XvX.js +1 -0
  48. package/dist/assets/command-palette-window-page-cWuw1xhs.js +1 -0
  49. package/dist/assets/{community-page-DTguxeti.js → community-page-BEOfCbCf.js} +1 -1
  50. package/dist/assets/{confirm-dialog-M0xuyGF3.js → confirm-dialog-D72Q4sYh.js} +1 -1
  51. package/dist/assets/connect-page-BqFzo5G7.js +1 -0
  52. package/dist/assets/{contacts-gateway-B2GdCtQB.js → contacts-gateway-0QjVTHxb.js} +1 -1
  53. package/dist/assets/contacts-page-route-DpPRviaL.js +1 -0
  54. package/dist/assets/conversation-queries-BmEO0Fc3.js +1 -0
  55. package/dist/assets/{cpp-BxTVNpCP.js → cpp-CJat0DvY.js} +1 -1
  56. package/dist/assets/{cpu-RoSTyhPi.js → cpu-BcJecU1F.js} +1 -1
  57. package/dist/assets/{credit-card-CBZ1Gldr.js → credit-card-0RHpgtQL.js} +1 -1
  58. package/dist/assets/{crystal-CEhFCZpE.js → crystal-BqtvtO3u.js} +1 -1
  59. package/dist/assets/{danger-zone-redirect-page-CyQBrlK6.js → danger-zone-redirect-page-CLhADkGK.js} +1 -1
  60. package/dist/assets/debug-page-DGv3D_k5.js +2 -0
  61. package/dist/assets/{deploy-dialogs-Bm0M00AX.js → deploy-dialogs-p1vsPTUv.js} +1 -1
  62. package/dist/assets/{detail-card-DCGV8um_.js → detail-card-CVf1cdeW.js} +1 -1
  63. package/dist/assets/developer-page-qfz1DprB.js +1 -0
  64. package/dist/assets/devices-page-CQaIWKCU.js +1 -0
  65. package/dist/assets/dictation-overlay-page-C-tkq4dH.js +1 -0
  66. package/dist/assets/{dist-CoxhZ9v8.js → dist-C1rQce1K.js} +3 -3
  67. package/dist/assets/dist-C7PFRcgv.js +45 -0
  68. package/dist/assets/dist-D7Zr-ONk.js +1 -0
  69. package/dist/assets/{document-viewer-page-GJ_dQp9b.js → document-viewer-page-DCIJeax2.js} +1 -1
  70. package/dist/assets/{dollar-sign-BN-8Yv73.js → dollar-sign-DMaImaTJ.js} +1 -1
  71. package/dist/assets/{domain-field-vYNUc_Az.js → domain-field-BB2BsmpU.js} +1 -1
  72. package/dist/assets/dropdown-SfZ7NXPp.js +1 -0
  73. package/dist/assets/earn-credits-modal-hDZ2B3fU.js +1 -0
  74. package/dist/assets/{edge-Bci24Md7.js → edge-BV6fRa4E.js} +1 -1
  75. package/dist/assets/{elixir-B5N7VKJH.js → elixir-OB2TezpS.js} +1 -1
  76. package/dist/assets/{elm-B1GlF0mV.js → elm-JQucPHIY.js} +1 -1
  77. package/dist/assets/emails-page-Bx6Gs9BA.js +1 -0
  78. package/dist/assets/{erb-D7ESY-Qt.js → erb-Dm43QUHY.js} +1 -1
  79. package/dist/assets/{erlang-CgzjewCv.js → erlang-BjHC8Fth.js} +1 -1
  80. package/dist/assets/esm-CNJhwbfn.js +2 -0
  81. package/dist/assets/esm-CO15BYmi.js +2 -0
  82. package/dist/assets/esm-CQum5pRC.js +2 -0
  83. package/dist/assets/{esm-_0RlmVwB.js → esm-CiJ6-8lg.js} +2 -2
  84. package/dist/assets/esm-DKexRi0t.js +2 -0
  85. package/dist/assets/{external-link-D3Ykpc6Y.js → external-link-DSvLY0NE.js} +1 -1
  86. package/dist/assets/feature-flag-catalog-BiYXpwz5.js +1 -0
  87. package/dist/assets/{file-markdown-B3OXc5Lr.js → file-markdown-Dfe7kMpk.js} +1 -1
  88. package/dist/assets/{fortran-fixed-form-D0WTYXYP.js → fortran-fixed-form-C3-VJqJr.js} +1 -1
  89. package/dist/assets/{fsharp-82JzUBif.js → fsharp-B8O8aOP4.js} +1 -1
  90. package/dist/assets/{gdresource-m8T_7jlj.js → gdresource-CUAhKJit.js} +1 -1
  91. package/dist/assets/general-page-hzdHpzIF.js +1 -0
  92. package/dist/assets/{git-commit-PbX4Y7Vw.js → git-commit-BBqOOYhn.js} +1 -1
  93. package/dist/assets/{git-rebase-KbdSOZ3-.js → git-rebase-Cey46YEw.js} +1 -1
  94. package/dist/assets/{glimmer-js-ChA_ZwwB.js → glimmer-js-B6y7m0WE.js} +1 -1
  95. package/dist/assets/{glimmer-ts-k4hLIrpd.js → glimmer-ts-CadiznLG.js} +1 -1
  96. package/dist/assets/{globe-XxyRAKtA.js → globe-CWYIIJUm.js} +1 -1
  97. package/dist/assets/{glsl-q_yvWVYt.js → glsl-BX0XpeT3.js} +1 -1
  98. package/dist/assets/{graphql-BPJsY1kn.js → graphql-DoIN2W3t.js} +1 -1
  99. package/dist/assets/{hack-CBPdsfm-.js → hack-Ci58pPV7.js} +1 -1
  100. package/dist/assets/{haml-LncuvXfT.js → haml-DmEHCdSk.js} +1 -1
  101. package/dist/assets/{handlebars-mG7pSHtc.js → handlebars-DZ7Q3UXT.js} +1 -1
  102. package/dist/assets/{hard-drive-DWg8XdD2.js → hard-drive-CTNBsAWU.js} +1 -1
  103. package/dist/assets/hatching-screen-Bd30Ia_7.js +1 -0
  104. package/dist/assets/home-page-route-DRougLlo.js +1 -0
  105. package/dist/assets/hosting-screen-DEZKXtDQ.js +1 -0
  106. package/dist/assets/{html-Cq0j65yf.js → html-CGrQAUxW.js} +1 -1
  107. package/dist/assets/{html-derivative-CP5arJ1H.js → html-derivative-OvdDTNui.js} +1 -1
  108. package/dist/assets/{http-DwlkCLx4.js → http-B3dPFFFp.js} +1 -1
  109. package/dist/assets/{hurl-CdC11TNb.js → hurl-DOe6gFKZ.js} +1 -1
  110. package/dist/assets/{hxml-DTQUeJZt.js → hxml-Dgdtv5Pm.js} +1 -1
  111. package/dist/assets/identity-page-route-Bf4m-KYt.js +1 -0
  112. package/dist/assets/index-BQE97htW.js +132 -0
  113. package/dist/assets/index-Cqs3Oe7d.css +2 -0
  114. package/dist/assets/info-cdSVfJsv.js +1 -0
  115. package/dist/assets/input-CwdmSRlD.js +1 -0
  116. package/dist/assets/{inspect-page-pCkEmpP6.js → inspect-page-CF6IvTnL.js} +5 -5
  117. package/dist/assets/{install-d5tDxfg0.js → install-BE_ugEQz.js} +1 -1
  118. package/dist/assets/integrations-page-CL5g5Fy2.js +1 -0
  119. package/dist/assets/{intelligence-layout-DM19ufqf.js → intelligence-layout-I7RyB84a.js} +1 -1
  120. package/dist/assets/{jinja-D_avM0mF.js → jinja-DIE_Jflk.js} +1 -1
  121. package/dist/assets/{jison-CAcq6yEW.js → jison-DMqdxd5c.js} +1 -1
  122. package/dist/assets/{julia-DPk9tS3O.js → julia-CIa9Gf6b.js} +1 -1
  123. package/dist/assets/{just-Bt0r6dYI.js → just-CJw06-bY.js} +1 -1
  124. package/dist/assets/keyboard-shortcuts-page-BoCAeGTj.js +1 -0
  125. package/dist/assets/{latex-CbGVyRdd.js → latex-IjGIU0T5.js} +1 -1
  126. package/dist/assets/{lib-BKXwfhCO.js → lib-CxFJAvX9.js} +1 -1
  127. package/dist/assets/{library-detail-page-DsVaWPIi.js → library-detail-page-Ci19BDrU.js} +1 -1
  128. package/dist/assets/{library-page-CnbZaK_J.js → library-page-2pAO8s9R.js} +1 -1
  129. package/dist/assets/{link-2-DGDYUt2-.js → link-2-DhbUuvTQ.js} +1 -1
  130. package/dist/assets/{liquid-C0LKu0K_.js → liquid-rqA9SJHF.js} +1 -1
  131. package/dist/assets/loader-circle-DkHNr7Ya.js +1 -0
  132. package/dist/assets/local-mode-Bo8nh80B.js +1 -0
  133. package/dist/assets/log-in-BK2MWU1V.js +1 -0
  134. package/dist/assets/{login-flow-DSUqqkE0.js → login-flow-LfFdQVKy.js} +1 -1
  135. package/dist/assets/{login-page-D3099sWt.js → login-page-CAwPG3zL.js} +1 -1
  136. package/dist/assets/{logout-page-CfN4-8nj.js → logout-page-K7GPUkhR.js} +1 -1
  137. package/dist/assets/{logs-layout-WQJDQfkN.js → logs-layout-DJLcEzf0.js} +1 -1
  138. package/dist/assets/{lua-CUP7Y2Pn.js → lua-DbcUyphn.js} +1 -1
  139. package/dist/assets/{marko-DH0yoTRe.js → marko-BoqFz5OD.js} +1 -1
  140. package/dist/assets/{mdc-BOLOlRWW.js → mdc-D0ahgoAK.js} +1 -1
  141. package/dist/assets/memory-router-playground-page-BnAPa8Kg.js +3 -0
  142. package/dist/assets/menu-BQSZbhtw.js +1 -0
  143. package/dist/assets/{minimize-2-BLdsBpLn.js → minimize-2-CZEYRlXG.js} +1 -1
  144. package/dist/assets/{mobile-sidebar-drawer-BQgKwZF8.js → mobile-sidebar-drawer-BOVf-4X5.js} +1 -1
  145. package/dist/assets/modal-CzEvQDM4.js +1 -0
  146. package/dist/assets/{moon-CYJLc3J5.js → moon-Kgk0y3SC.js} +1 -1
  147. package/dist/assets/{native-file-B-TZWM3R.js → native-file-B9T0QAPN.js} +2 -2
  148. package/dist/assets/{nextflow-Dt_MmHu-.js → nextflow-Ce0n9Q8q.js} +1 -1
  149. package/dist/assets/{nginx-pSzDt0fE.js → nginx-BqXGk0FA.js} +1 -1
  150. package/dist/assets/{nim-BV2SbK9H.js → nim-tDzu_GTm.js} +1 -1
  151. package/dist/assets/{notice-CF2pptne.js → notice-jdXknxvS.js} +1 -1
  152. package/dist/assets/notifications-page-sxAXn9yD.js +1 -0
  153. package/dist/assets/{oauth-complete-page-D0156Ff7.js → oauth-complete-page-BptiOXrB.js} +1 -1
  154. package/dist/assets/{oauth-popup-complete-page-xiSQOdBd.js → oauth-popup-complete-page-CzUGsXDZ.js} +1 -1
  155. package/dist/assets/onboarding-layout-CaCFWkQh.js +1 -0
  156. package/dist/assets/{page-shell-BeD0ynsM.js → page-shell-BK8U7uAs.js} +1 -1
  157. package/dist/assets/pairing-page-h7p877l-.js +1 -0
  158. package/dist/assets/panel-item-BkteAFRC.js +1 -0
  159. package/dist/assets/{password-reset-page-BRBJUia1.js → password-reset-page-BJc9fj0D.js} +1 -1
  160. package/dist/assets/{pencil-B3bs98KV.js → pencil-C3hvx-64.js} +1 -1
  161. package/dist/assets/{perl-CBrqQ2Y9.js → perl-1zAO6R_l.js} +1 -1
  162. package/dist/assets/{php-BRr2iuSd.js → php-BiEHZbtR.js} +1 -1
  163. package/dist/assets/platform-loopback-page-BbXfL66c.js +1 -0
  164. package/dist/assets/plugin-detail-page-D73NFF28.js +1 -0
  165. package/dist/assets/plugins-page-D0F0PpuI.js +1 -0
  166. package/dist/assets/prechat-route-Dbf2jEmp.js +1 -0
  167. package/dist/assets/{prefs-gr68GIXL.js → prefs-BJLsPNW_.js} +1 -1
  168. package/dist/assets/privacy-page-B91A8UUv.js +1 -0
  169. package/dist/assets/privacy-screen-DDX7Fs7k.js +1 -0
  170. package/dist/assets/{progress-bar-BxeXgLhp.js → progress-bar-BOKTRqXE.js} +1 -1
  171. package/dist/assets/provider-callback-page-ZpTK7tWH.js +1 -0
  172. package/dist/assets/{provider-key-D3ikycIK.js → provider-key-CREk2Vnb.js} +1 -1
  173. package/dist/assets/provider-signup-page-tSjgpRgo.js +1 -0
  174. package/dist/assets/{proxy-DEUrefJ_.js → proxy-Cd3VuNoq.js} +1 -1
  175. package/dist/assets/{pug-BoDVy1LQ.js → pug-DUQof6rd.js} +1 -1
  176. package/dist/assets/{qml-DRjsHkrO.js → qml-CGkhukx5.js} +1 -1
  177. package/dist/assets/{quick-input-page-OBxGPq88.js → quick-input-page-C9Xy1Hau.js} +1 -1
  178. package/dist/assets/{razor-BMNn_rDm.js → razor-gAsPj4GS.js} +1 -1
  179. package/dist/assets/react-query.gen-CTMlijN0.js +1 -0
  180. package/dist/assets/react-query.gen-DQTjtCEE.js +1 -0
  181. package/dist/assets/remote-gateway-session-Bs00EKBs.js +1 -0
  182. package/dist/assets/{resize-errors-BqvxgvBO.js → resize-errors-EgUeogec.js} +1 -1
  183. package/dist/assets/resolved-assistants-store-BuY00Dgn.js +1 -0
  184. package/dist/assets/{review-terms-screen-Bc9Egqae.js → review-terms-screen-C-kJmgps.js} +1 -1
  185. package/dist/assets/routes-DB8A8L8M.js +1 -0
  186. package/dist/assets/{rst-TNVqXwJf.js → rst-DKtwfZn1.js} +1 -1
  187. package/dist/assets/{ruby-DMzPTCr1.js → ruby-DwigaBT5.js} +1 -1
  188. package/dist/assets/{sas-DFcBXVuc.js → sas-Col9Mi_S.js} +1 -1
  189. package/dist/assets/{save-B0FEX-GY.js → save-BmSG47KO.js} +1 -1
  190. package/dist/assets/{schedules-ByXx8-Sr.js → schedules-Cyj1kxHv.js} +1 -1
  191. package/dist/assets/{scss-utNVzD3r.js → scss-BQG_h4A0.js} +1 -1
  192. package/dist/assets/{sdk.gen-qH7wLOCJ.js → sdk.gen-Cc6RAEr7.js} +1 -1
  193. package/dist/assets/sdk.gen-x-qpuaG-.js +1 -0
  194. package/dist/assets/select-assistant-screen-PLRPW4sS.js +1 -0
  195. package/dist/assets/settings-layout-Br8w26ON.js +1 -0
  196. package/dist/assets/{shaderlab-BtpLh0Rm.js → shaderlab-DdlsUSX2.js} +1 -1
  197. package/dist/assets/share-feedback-modal-D1lWsVtD.js +1 -0
  198. package/dist/assets/{shellsession-B5mArt0v.js → shellsession-vfzQ1mDP.js} +1 -1
  199. package/dist/assets/{shortcut-keys-FXO7qQjX.js → shortcut-keys-SeKJj-8k.js} +1 -1
  200. package/dist/assets/{sidebar-tree-CeH2oC1c.js → sidebar-tree-DR_MAZ2a.js} +1 -1
  201. package/dist/assets/signup-page-CVhT38z2.js +1 -0
  202. package/dist/assets/signup-shell-Bpciut3D.js +1 -0
  203. package/dist/assets/signup-shell-iu1RtjJg.css +1 -0
  204. package/dist/assets/skills-page-3Y1C1W-Q.js +1 -0
  205. package/dist/assets/sounds-page-DrLahW2v.js +1 -0
  206. package/dist/assets/{soy-DZlWN0sj.js → soy-D88tZlUq.js} +1 -1
  207. package/dist/assets/{sparql-BCtHXAbr.js → sparql-CoL1_ZRS.js} +1 -1
  208. package/dist/assets/{src-DOuqBUBT.js → src-smBQxdc-.js} +3 -3
  209. package/dist/assets/{stat-square-CSDqINvK.js → stat-square-B5tBfA4w.js} +1 -1
  210. package/dist/assets/{stata-Dd44DgqZ.js → stata-CWe_kfF2.js} +1 -1
  211. package/dist/assets/step-indicator-dots-DDl5cxT2.js +1 -0
  212. package/dist/assets/{subagent-detail-panel-BVXpCz2J.js → subagent-detail-panel-BN2hcYCC.js} +2 -2
  213. package/dist/assets/{surrealql-OVZ-gnfq.js → surrealql-BKM1bgDV.js} +1 -1
  214. package/dist/assets/{svelte-QxdAAhct.js → svelte-r7NjAx4N.js} +1 -1
  215. package/dist/assets/system-events-page-BaDA17Oa.js +1 -0
  216. package/dist/assets/{system-events-redirect-page-DrZ2u3dO.js → system-events-redirect-page-CqmtBW2h.js} +1 -1
  217. package/dist/assets/tag-BadGF3FB.js +1 -0
  218. package/dist/assets/{templ-C6aBSESX.js → templ-MfcVHJUO.js} +1 -1
  219. package/dist/assets/{tex-B45gdD9O.js → tex-AQi8XY01.js} +1 -1
  220. package/dist/assets/{tiptap-document-editor-WC0fzHW1.js → tiptap-document-editor-C0s5OMGS.js} +1 -1
  221. package/dist/assets/toast-ouIW2mYq.js +1 -0
  222. package/dist/assets/{toggle-CEm3M86o.js → toggle-_vZlLDBV.js} +1 -1
  223. package/dist/assets/{tool-detail-panel-Dfj3LmKr.js → tool-detail-panel-CikBGOnz.js} +1 -1
  224. package/dist/assets/trace-page-D61L9P5u.js +1 -0
  225. package/dist/assets/triangle-alert-Bq1nYBA_.js +1 -0
  226. package/dist/assets/{ts-tags-BqAJ4YDs.js → ts-tags-D3kzvhv6.js} +1 -1
  227. package/dist/assets/{twig-TjGlKzCH.js → twig-Db3lotmH.js} +1 -1
  228. package/dist/assets/{typography-Czgs_2w_.js → typography-BscuIPxA.js} +1 -1
  229. package/dist/assets/upgrade-cancel-page-CwDFTk-Z.js +1 -0
  230. package/dist/assets/upgrade-success-page-Ctx7Pgx9.js +1 -0
  231. package/dist/assets/usage-page-DJt6INPR.js +1 -0
  232. package/dist/assets/{use-active-assistant-id-Bdecq9LQ.js → use-active-assistant-id-CJjFnsdH.js} +1 -1
  233. package/dist/assets/{use-bus-subscription-BocLBf2F.js → use-bus-subscription-Dile3BXF.js} +1 -1
  234. package/dist/assets/use-is-org-ready-ZaDAhQkA.js +1 -0
  235. package/dist/assets/{use-oauth-complete-deep-link-listener-BGWwfkrM.js → use-oauth-complete-deep-link-listener-DLqTZY6C.js} +1 -1
  236. package/dist/assets/use-onboarding-login-BTaj-hG0.js +1 -0
  237. package/dist/assets/{use-plugin-drift-BNYVbuCR.js → use-plugin-drift-CaIvzeDn.js} +1 -1
  238. package/dist/assets/{utils-D2f3K1x1.js → utils-J6AQqhXe.js} +1 -1
  239. package/dist/assets/{viewer-store-4gKEarK-.js → viewer-store-C-VRTj0q.js} +1 -1
  240. package/dist/assets/voice-page-DWAv-yT7.js +1 -0
  241. package/dist/assets/{vue-Bm31t8Lm.js → vue-DJL0x4aQ.js} +1 -1
  242. package/dist/assets/{vue-html-xBRK8Xd9.js → vue-html-DK2eUWWJ.js} +1 -1
  243. package/dist/assets/{vue-vine-P1uwYlz8.js → vue-vine-CDIGDSv6.js} +1 -1
  244. package/dist/assets/{weather-forecast-display-YtwvAE3m.js → weather-forecast-display-KVpBIJDW.js} +1 -1
  245. package/dist/assets/{web-CPHbsWqm.js → web-Bbbrqz9-.js} +1 -1
  246. package/dist/assets/{web-Ker_tJP9.js → web-BmmMNr9D.js} +1 -1
  247. package/dist/assets/{web-DWvZdxOE.js → web-BnVK6Ko1.js} +1 -1
  248. package/dist/assets/{web-D4ymc7ZG.js → web-C8hX3beP.js} +1 -1
  249. package/dist/assets/{web-vxdpxjlv.js → web-CSektMPp.js} +1 -1
  250. package/dist/assets/{web-yO8boHQf.js → web-DntBgoV-.js} +1 -1
  251. package/dist/assets/{web-BegDkT4R.js → web-Q-Fy-bZq.js} +1 -1
  252. package/dist/assets/welcome-screen-ea0-Xr7b.js +1 -0
  253. package/dist/assets/workspace-page-DUCQ1nQd.js +1 -0
  254. package/dist/assets/x-BMQWZd8e.js +1 -0
  255. package/dist/assets/{xml-Cnbgehk4.js → xml-Dt5XXe4C.js} +1 -1
  256. package/dist/assets/{xsl-B8mB9ilZ.js → xsl-DWFkZJX5.js} +1 -1
  257. package/dist/index.html +91 -83
  258. package/package.json +1 -1
  259. package/dist/assets/add-credits-modal-BkOCDjqB.js +0 -1
  260. package/dist/assets/advanced-page-dif2oSms.js +0 -1
  261. package/dist/assets/ai-page-DoG94CQA.js +0 -1
  262. package/dist/assets/archive-page-CmD7FqLa.js +0 -1
  263. package/dist/assets/arrow-up-BLnb2N1m.js +0 -1
  264. package/dist/assets/auth-store-waC7X7ya.js +0 -6
  265. package/dist/assets/avatar-bundled-components-CJRg7P2Y.js +0 -1
  266. package/dist/assets/avatar-random-BtKQR_T3.js +0 -1
  267. package/dist/assets/billing-page-cavmVV7H.js +0 -3
  268. package/dist/assets/bookmarks-page-DbFw-AKH.js +0 -1
  269. package/dist/assets/build-state-Dolr1rr6.js +0 -1
  270. package/dist/assets/button-CHADMNBN.js +0 -1
  271. package/dist/assets/cast-onboarding-flow-B3gD85pn.css +0 -1
  272. package/dist/assets/cast-onboarding-flow-DzvIQoNG.js +0 -4
  273. package/dist/assets/checkbox-qlcBvCFW.js +0 -1
  274. package/dist/assets/chevron-left-CHId86dZ.js +0 -1
  275. package/dist/assets/chevron-right-C0jZwqbo.js +0 -1
  276. package/dist/assets/client-feature-flag-store-lWvUd78D.js +0 -1
  277. package/dist/assets/code-DAtk7tPY.js +0 -1
  278. package/dist/assets/command-palette-2IEtW9rZ.js +0 -1
  279. package/dist/assets/command-palette-window-page-C5p5AwyY.js +0 -1
  280. package/dist/assets/connect-page-CUp4cedV.js +0 -1
  281. package/dist/assets/contacts-page-route-B7ZKVyUd.js +0 -1
  282. package/dist/assets/debug-page-CCGD1BiX.js +0 -2
  283. package/dist/assets/developer-page-DAUssNZ3.js +0 -1
  284. package/dist/assets/devices-page-Da4e9mAO.js +0 -1
  285. package/dist/assets/dictation-overlay-page-y7ygbr0U.js +0 -1
  286. package/dist/assets/dist-B1Fpj7hg.js +0 -1
  287. package/dist/assets/dist-D6LVk88Z.js +0 -45
  288. package/dist/assets/dropdown-CocFV5yi.js +0 -1
  289. package/dist/assets/earn-credits-modal-CkrbYw5-.js +0 -1
  290. package/dist/assets/emails-page-C-NFBDHw.js +0 -1
  291. package/dist/assets/esm-BNq2jLTc.js +0 -2
  292. package/dist/assets/esm-CWstg7ip.js +0 -2
  293. package/dist/assets/esm-DYLYqqRN.js +0 -2
  294. package/dist/assets/esm-rfpiamO7.js +0 -2
  295. package/dist/assets/feature-flag-catalog-DkXBGepr.js +0 -1
  296. package/dist/assets/funnel-events-DYH6ni4s.js +0 -1
  297. package/dist/assets/general-page-WuMBWF7U.js +0 -1
  298. package/dist/assets/hatching-screen-DXbD5lfG.js +0 -1
  299. package/dist/assets/home-page-route-JGToc0RF.js +0 -1
  300. package/dist/assets/hosting-screen-Bp-_iLCV.js +0 -1
  301. package/dist/assets/identity-page-route-DSmJtKyq.js +0 -1
  302. package/dist/assets/index-BKOx2d-L.js +0 -132
  303. package/dist/assets/index-C6buyc4-.css +0 -2
  304. package/dist/assets/input-Cu3PPVCq.js +0 -1
  305. package/dist/assets/integrations-page-CSiVzrvI.js +0 -1
  306. package/dist/assets/keyboard-shortcuts-page-BzQv3QcH.js +0 -1
  307. package/dist/assets/loader-circle-BwqYfFHZ.js +0 -1
  308. package/dist/assets/memory-router-playground-page-DLOLMe3o.js +0 -3
  309. package/dist/assets/menu-B79-l6IU.js +0 -1
  310. package/dist/assets/modal-BYMhDpQo.js +0 -1
  311. package/dist/assets/notifications-page-DDoljRZO.js +0 -1
  312. package/dist/assets/onboarding-layout-Ckbaim4E.js +0 -1
  313. package/dist/assets/panel-item-FzMfzMJA.js +0 -1
  314. package/dist/assets/personal-page-shell-BbTuWjjQ.css +0 -1
  315. package/dist/assets/personal-page-shell-Cs95FWNT.js +0 -1
  316. package/dist/assets/platform-loopback-page-kanCISP0.js +0 -1
  317. package/dist/assets/plugin-detail-page-D13lk_sO.js +0 -1
  318. package/dist/assets/plugins-page-Bf6d_5Du.js +0 -1
  319. package/dist/assets/portal-container-DIXEBWUe.js +0 -1
  320. package/dist/assets/prechat-SGdv4TXK.js +0 -1
  321. package/dist/assets/prechat-context-Bcdx89-k.js +0 -1
  322. package/dist/assets/prechat-route-DsP8PFVG.js +0 -2
  323. package/dist/assets/privacy-page-BfQnPYWm.js +0 -1
  324. package/dist/assets/privacy-screen-CO9CQqgs.js +0 -1
  325. package/dist/assets/provider-callback-page-C68kJwN6.js +0 -1
  326. package/dist/assets/provider-signup-page-Cxtwdh5c.js +0 -1
  327. package/dist/assets/query-tags-gNW0M4r7.js +0 -1
  328. package/dist/assets/react-query.gen-CawmQR-A.js +0 -1
  329. package/dist/assets/resolved-assistants-store-BTvVAnMH.js +0 -1
  330. package/dist/assets/routes-DLEaIDYY.js +0 -1
  331. package/dist/assets/sdk.gen-ClmX029Q.js +0 -1
  332. package/dist/assets/select-assistant-screen-CwMKsewn.js +0 -1
  333. package/dist/assets/settings-layout-DWCdO1tr.js +0 -1
  334. package/dist/assets/share-feedback-modal-BhAUHb8M.js +0 -1
  335. package/dist/assets/signup-page-BeTJY2ul.js +0 -1
  336. package/dist/assets/skills-page-Du-RGGBl.js +0 -1
  337. package/dist/assets/sounds-page-05MOQSDW.js +0 -1
  338. package/dist/assets/step-indicator-dots-DyO7zuoJ.js +0 -1
  339. package/dist/assets/system-events-page-D1T7wfYU.js +0 -1
  340. package/dist/assets/tag-Ccr7Quy6.js +0 -1
  341. package/dist/assets/toast-BL8OPiip.js +0 -1
  342. package/dist/assets/trace-page-DhEvGIsS.js +0 -1
  343. package/dist/assets/upgrade-cancel-page-CRfkZ5Fd.js +0 -1
  344. package/dist/assets/upgrade-success-page-DOf7ZHyQ.js +0 -1
  345. package/dist/assets/usage-page-CIf9IUIP.js +0 -1
  346. package/dist/assets/use-is-org-ready-4wJxk8mJ.js +0 -1
  347. package/dist/assets/use-oauth-connect-BFVEwtOW.js +0 -1
  348. package/dist/assets/use-onboarding-login-DSd1eko2.js +0 -1
  349. package/dist/assets/voice-page-BV7iOlOB.js +0 -1
  350. package/dist/assets/welcome-screen-CwIapWXX.js +0 -1
  351. package/dist/assets/workspace-page-Bv55tLcy.js +0 -1
  352. package/dist/assets/x-Df0EF2EP.js +0 -1
  353. package/dist/skills/tasks/assets/icon.svg +0 -34
  354. /package/dist/assets/{abap-BnHnT9a0.js → abap-CJrBtfsa.js} +0 -0
  355. /package/dist/assets/{about-page-BC7BCOnA.js → about-page-CKoPPaO7.js} +0 -0
  356. /package/dist/assets/{actionscript-3-DZgRh7tj.js → actionscript-3-YHWB7sNC.js} +0 -0
  357. /package/dist/assets/{ada-DgN4Y3gI.js → ada-img0UdAj.js} +0 -0
  358. /package/dist/assets/{andromeeda-OD2gbn4M.js → andromeeda-C1LxTnTH.js} +0 -0
  359. /package/dist/assets/{apache-BHija_Nu.js → apache-IoQI1KUH.js} +0 -0
  360. /package/dist/assets/{apex-q2ga2RSa.js → apex-n2v3aQBo.js} +0 -0
  361. /package/dist/assets/{api-errors-CsfCFJ8r.js → api-errors-XDa-LFBi.js} +0 -0
  362. /package/dist/assets/{applescript-CDnuWWPl.js → applescript-D49Qqfh4.js} +0 -0
  363. /package/dist/assets/{ara-Uo1G66MQ.js → ara-DgXD1PbM.js} +0 -0
  364. /package/dist/assets/{asciidoc-B9bedL-W.js → asciidoc-DU5A8w3I.js} +0 -0
  365. /package/dist/assets/{asm-Dv6BlGGD.js → asm-DLWV3wBr.js} +0 -0
  366. /package/dist/assets/{aurora-x-DIKmIrmu.js → aurora-x-sgsXFaTN.js} +0 -0
  367. /package/dist/assets/{avatar-svg-compositor-Bq9IC5b6.js → avatar-svg-compositor-fjJyBMpk.js} +0 -0
  368. /package/dist/assets/{awk-ck9kXv8l.js → awk-D4m11dV4.js} +0 -0
  369. /package/dist/assets/{ayu-dark-B0-LMAvN.js → ayu-dark-_fQ79hPZ.js} +0 -0
  370. /package/dist/assets/{ayu-light-CevdBOdd.js → ayu-light-5TdpKX6N.js} +0 -0
  371. /package/dist/assets/{ayu-mirage-CLvQ9MSU.js → ayu-mirage-CTtiRp-q.js} +0 -0
  372. /package/dist/assets/{ballerina-D2j4tygO.js → ballerina-BhVCMXnc.js} +0 -0
  373. /package/dist/assets/{bat-rQDmQH-x.js → bat-D-KwEcSR.js} +0 -0
  374. /package/dist/assets/{beancount-BRYBUCCp.js → beancount-DMRw39yN.js} +0 -0
  375. /package/dist/assets/{berry-cb0iaqjQ.js → berry-B7y2b9zx.js} +0 -0
  376. /package/dist/assets/{bibtex-5X6yijJf.js → bibtex-G8nhfjal.js} +0 -0
  377. /package/dist/assets/{bicep-DahhY0zs.js → bicep-BbRPGczZ.js} +0 -0
  378. /package/dist/assets/{bird2-Buc4eQs2.js → bird2-tFQvrZc7.js} +0 -0
  379. /package/dist/assets/{c-FsLuy0vz.js → c-CurC6xJN.js} +0 -0
  380. /package/dist/assets/{c3-DC5oVGOP.js → c3-Cp2vGukQ.js} +0 -0
  381. /package/dist/assets/{cadence-CneVQmWh.js → cadence-DHp076aM.js} +0 -0
  382. /package/dist/assets/{catppuccin-frappe-grJ2oXiF.js → catppuccin-frappe-CO1Obb6a.js} +0 -0
  383. /package/dist/assets/{catppuccin-latte-C2m6qmiP.js → catppuccin-latte-BJrzEFTg.js} +0 -0
  384. /package/dist/assets/{catppuccin-macchiato-CwSO5mh8.js → catppuccin-macchiato-DIsBU39Q.js} +0 -0
  385. /package/dist/assets/{catppuccin-mocha-j5IymHz-.js → catppuccin-mocha-D7aSAErT.js} +0 -0
  386. /package/dist/assets/{clarity-DUqBOoN9.js → clarity-DmVThjx0.js} +0 -0
  387. /package/dist/assets/{client.gen-BchW2Z6T.js → client.gen-DI-JLhj6.js} +0 -0
  388. /package/dist/assets/{clojure-B_0tg4NQ.js → clojure-D50j7YDB.js} +0 -0
  389. /package/dist/assets/{cmake-B_aLGAyI.js → cmake-DTUsloWC.js} +0 -0
  390. /package/dist/assets/{cn-DFqQkJlk.js → cn-DvW5mxZR.js} +0 -0
  391. /package/dist/assets/{codeowners-D8zI0ej7.js → codeowners-BGoQ0QI5.js} +0 -0
  392. /package/dist/assets/{codeql-C5it8MEV.js → codeql-zmUPLoVL.js} +0 -0
  393. /package/dist/assets/{common-lisp-D5iBTKSn.js → common-lisp-CIdqjFi5.js} +0 -0
  394. /package/dist/assets/{conversation-store-WsKQTo9S.js → conversation-store-sNOTxyHV.js} +0 -0
  395. /package/dist/assets/{coq-DDVJptaP.js → coq-D_qWEzTo.js} +0 -0
  396. /package/dist/assets/{createLucideIcon-D6d6iDdi.js → createLucideIcon-BjZY5k1w.js} +0 -0
  397. /package/dist/assets/{csharp-C_0YwxsV.js → csharp-DPZA0mys.js} +0 -0
  398. /package/dist/assets/{css-DYhts7Lp.js → css-DChF48VH.js} +0 -0
  399. /package/dist/assets/{csv-BioS2BSy.js → csv-BqG7uatd.js} +0 -0
  400. /package/dist/assets/{cue-DAj3Ctx9.js → cue-DVrj2AhX.js} +0 -0
  401. /package/dist/assets/{cypher-BQvLt3cT.js → cypher-Db7YwVuF.js} +0 -0
  402. /package/dist/assets/{d-V_S4iGbD.js → d-DTzgBQRh.js} +0 -0
  403. /package/dist/assets/{dark-plus-x2wiSnR0.js → dark-plus-DxbO1e28.js} +0 -0
  404. /package/dist/assets/{dart-QV9mQPS5.js → dart-B15jnVsS.js} +0 -0
  405. /package/dist/assets/{dax-qXHq-XmE.js → dax-DSxTSlFL.js} +0 -0
  406. /package/dist/assets/{definitions-DHHUhcUE.js → definitions-VGpqtSQy.js} +0 -0
  407. /package/dist/assets/{desktop-Z5reMd8K.js → desktop-gjsAMaAW.js} +0 -0
  408. /package/dist/assets/{diff-D8qIP0na.js → diff-DxyDBL2w.js} +0 -0
  409. /package/dist/assets/{dist-CP-ms_vi.js → dist-CIRSrV5q.js} +0 -0
  410. /package/dist/assets/{docker-SqizJhrD.js → docker-DcapSxYW.js} +0 -0
  411. /package/dist/assets/{dotenv-Bi_jqYu0.js → dotenv-pum-ytkr.js} +0 -0
  412. /package/dist/assets/{dracula-h1hY073B.js → dracula-kaeur-Sr.js} +0 -0
  413. /package/dist/assets/{dracula-soft-COpGyraj.js → dracula-soft-jU3NJJow.js} +0 -0
  414. /package/dist/assets/{dream-maker-CnGbx0B4.js → dream-maker-BfSsPHrv.js} +0 -0
  415. /package/dist/assets/{edit-chat-session-BdIdIaSN.js → edit-chat-session-Cvyedviq.js} +0 -0
  416. /package/dist/assets/{effective-timezone-CDR6FaRF.js → effective-timezone-DD2wGZ9O.js} +0 -0
  417. /package/dist/assets/{emacs-lisp-B5TlD6K-.js → emacs-lisp-MBokZgVO.js} +0 -0
  418. /package/dist/assets/{emoji-catalog-data-DXa5phwq.js → emoji-catalog-data-_G4lAoH7.js} +0 -0
  419. /package/dist/assets/{environment-store-B8B5er5P.js → environment-store-GJl9GOSU.js} +0 -0
  420. /package/dist/assets/{event-bus-DKlaDVAu.js → event-bus-DPa7g-Z7.js} +0 -0
  421. /package/dist/assets/{everforest-dark-JS5CHRkS.js → everforest-dark-Qszq49lo.js} +0 -0
  422. /package/dist/assets/{everforest-light-B_WlC0XT.js → everforest-light-B8dpiC4q.js} +0 -0
  423. /package/dist/assets/{fennel-DoZ-opiU.js → fennel-aJ3Zv5f3.js} +0 -0
  424. /package/dist/assets/{fish-CvHLfqNS.js → fish-BVDdlPSM.js} +0 -0
  425. /package/dist/assets/{fluent-CnSNuZ9O.js → fluent-yojRsW8M.js} +0 -0
  426. /package/dist/assets/{format-DOj_VDWK.js → format-DtXueXvf.js} +0 -0
  427. /package/dist/assets/{format-date-hsycENtr.js → format-date-CCl_Cceb.js} +0 -0
  428. /package/dist/assets/{format-file-size-DlcqKN6E.js → format-file-size-HfQP5weH.js} +0 -0
  429. /package/dist/assets/{fortran-free-form-hy6j5UPM.js → fortran-free-form-Cm9_D9HR.js} +0 -0
  430. /package/dist/assets/{gdscript-o2RA3HyE.js → gdscript-Dj36uRY4.js} +0 -0
  431. /package/dist/assets/{gdshader-BXsJci7n.js → gdshader-Wu0mEaz_.js} +0 -0
  432. /package/dist/assets/{genie-Ca_jXWiN.js → genie-DHshP_gR.js} +0 -0
  433. /package/dist/assets/{gherkin-TTaxg3Ib.js → gherkin-D7b_L_CM.js} +0 -0
  434. /package/dist/assets/{github-dark-C2WPKSF2.js → github-dark-CydULzvy.js} +0 -0
  435. /package/dist/assets/{github-dark-default-DvkLyeNj.js → github-dark-default-B28I0mtM.js} +0 -0
  436. /package/dist/assets/{github-dark-dimmed-Ce6q30q9.js → github-dark-dimmed-BHQedfmI.js} +0 -0
  437. /package/dist/assets/{github-dark-high-contrast-BXEX0X7o.js → github-dark-high-contrast-7NW1860O.js} +0 -0
  438. /package/dist/assets/{github-light-DjFROXGf.js → github-light-Ckwc0Xue.js} +0 -0
  439. /package/dist/assets/{github-light-default-DV96uXVH.js → github-light-default-D2TXmsDl.js} +0 -0
  440. /package/dist/assets/{github-light-high-contrast-DyB1XlQ8.js → github-light-high-contrast-DtWvcT5G.js} +0 -0
  441. /package/dist/assets/{gleam-7uZ1b30k.js → gleam-D0kbL6Er.js} +0 -0
  442. /package/dist/assets/{gn-RhyNJpDW.js → gn-C2RHtHbM.js} +0 -0
  443. /package/dist/assets/{gnuplot-4uZDYrgA.js → gnuplot-Bflua8IL.js} +0 -0
  444. /package/dist/assets/{go-DpKwKDYk.js → go-kQrtCInP.js} +0 -0
  445. /package/dist/assets/{google-logo-D6GdawCD.js → google-logo-BrjwsK0j.js} +0 -0
  446. /package/dist/assets/{groovy-BodqWmWc.js → groovy-Cx0QVvcX.js} +0 -0
  447. /package/dist/assets/{gruvbox-dark-hard-Sm5wkDnF.js → gruvbox-dark-hard-45-al1LY.js} +0 -0
  448. /package/dist/assets/{gruvbox-dark-medium-_EA-_SfC.js → gruvbox-dark-medium-DBKDyiNV.js} +0 -0
  449. /package/dist/assets/{gruvbox-dark-soft-CMbSZU9M.js → gruvbox-dark-soft-DsJCmcUi.js} +0 -0
  450. /package/dist/assets/{gruvbox-light-hard-D_gdDb9E.js → gruvbox-light-hard-DoNtCtXu.js} +0 -0
  451. /package/dist/assets/{gruvbox-light-medium-BftA7vZC.js → gruvbox-light-medium-B7Ru3-7b.js} +0 -0
  452. /package/dist/assets/{gruvbox-light-soft-D0MRpGVT.js → gruvbox-light-soft-DqUsq0wb.js} +0 -0
  453. /package/dist/assets/{haskell-7AQp_uHr.js → haskell-BMIf5hSg.js} +0 -0
  454. /package/dist/assets/{haxe-CZ1EB0yh.js → haxe-Dd6NKRiM.js} +0 -0
  455. /package/dist/assets/{hcl-DaCENqZR.js → hcl-BbXBAkHQ.js} +0 -0
  456. /package/dist/assets/{hjson-DlAQBw2J.js → hjson-HZFryblC.js} +0 -0
  457. /package/dist/assets/{hlsl-DcO6hknW.js → hlsl-B_z-4mGb.js} +0 -0
  458. /package/dist/assets/{horizon-bM9G0tNb.js → horizon-DTjGYAGz.js} +0 -0
  459. /package/dist/assets/{horizon-bright-BHqLa59v.js → horizon-bright-D-5IXcVw.js} +0 -0
  460. /package/dist/assets/{houston-CL5fNb0m.js → houston-DYxRzDAO.js} +0 -0
  461. /package/dist/assets/{hy-DQKbVWn1.js → hy-CZz7-yZN.js} +0 -0
  462. /package/dist/assets/{imba-BjiYrqNQ.js → imba-D0H9CBRW.js} +0 -0
  463. /package/dist/assets/{impersonate-version-flag-BmrRmKMF.js → impersonate-version-flag-Df80CPXS.js} +0 -0
  464. /package/dist/assets/{ini-CYKn_Ji8.js → ini-Hq-jZViS.js} +0 -0
  465. /package/dist/assets/{java-Dvo80z5R.js → java-DNmSvEO2.js} +0 -0
  466. /package/dist/assets/{javascript-GH4Ohewf.js → javascript-9U3VX7fx.js} +0 -0
  467. /package/dist/assets/{json-DUPvhMCm.js → json-BJo90vyk.js} +0 -0
  468. /package/dist/assets/{json5-ujaraWkX.js → json5-B5WsutuM.js} +0 -0
  469. /package/dist/assets/{jsonc-34G6PVCc.js → jsonc-COIMgM31.js} +0 -0
  470. /package/dist/assets/{jsonl-dmB82gUj.js → jsonl-Cg8iEw1M.js} +0 -0
  471. /package/dist/assets/{jsonnet-Br_2ffad.js → jsonnet-BJ6vIOpZ.js} +0 -0
  472. /package/dist/assets/{jssm-DB0a4xSh.js → jssm-BMmePONy.js} +0 -0
  473. /package/dist/assets/{jsx-B5XtWyJZ.js → jsx-CprSFcDX.js} +0 -0
  474. /package/dist/assets/{kanagawa-dragon-j2mqGXO-.js → kanagawa-dragon-DQ7YDLVU.js} +0 -0
  475. /package/dist/assets/{kanagawa-lotus-DkcquZHv.js → kanagawa-lotus-CATrdpUN.js} +0 -0
  476. /package/dist/assets/{kanagawa-wave-CC8Oc_s3.js → kanagawa-wave-CKUiHHXA.js} +0 -0
  477. /package/dist/assets/{kdl-COKLRuZg.js → kdl-DzBG_i-5.js} +0 -0
  478. /package/dist/assets/{kotlin-Bd8NBCG0.js → kotlin-DIZwIusw.js} +0 -0
  479. /package/dist/assets/{kusto--DGa4bgQ.js → kusto-CHN2SbpC.js} +0 -0
  480. /package/dist/assets/{laserwave-CVoxTCdH.js → laserwave-CPJ25zFq.js} +0 -0
  481. /package/dist/assets/{lean-DlzraDWg.js → lean-DO7qDxEX.js} +0 -0
  482. /package/dist/assets/{less-B_IxmJc4.js → less-BZZ-PLfd.js} +0 -0
  483. /package/dist/assets/{lib-CYXy06Mp.js → lib-BGfiLWu8.js} +0 -0
  484. /package/dist/assets/{light-plus-BeMZ11-X.js → light-plus-Dc3MFjwj.js} +0 -0
  485. /package/dist/assets/{llm-dimension-CirET4yv.js → llm-dimension-oci2TkfR.js} +0 -0
  486. /package/dist/assets/{llvm-BHxdZWwh.js → llvm-8lvmBZ1y.js} +0 -0
  487. /package/dist/assets/{log-DlhodncL.js → log-iTn25_BO.js} +0 -0
  488. /package/dist/assets/{logo-HQdWCc7_.js → logo-BcHhJD22.js} +0 -0
  489. /package/dist/assets/{luau-KJFDz_yy.js → luau-DQM7PZq1.js} +0 -0
  490. /package/dist/assets/{make-aTarFpX_.js → make-BG0ZJ6Bw.js} +0 -0
  491. /package/dist/assets/{markdown-C4581R-V.js → markdown-C_c6h3zo.js} +0 -0
  492. /package/dist/assets/{material-theme-C5C8C9wY.js → material-theme-D3LBDIWR.js} +0 -0
  493. /package/dist/assets/{material-theme-darker-CxXF5p3u.js → material-theme-darker-CQaa_g54.js} +0 -0
  494. /package/dist/assets/{material-theme-lighter-CN3_ew41.js → material-theme-lighter-BvXIGcAz.js} +0 -0
  495. /package/dist/assets/{material-theme-ocean-DOr1uqH8.js → material-theme-ocean-BfNV9t9V.js} +0 -0
  496. /package/dist/assets/{material-theme-palenight-BjejtMhX.js → material-theme-palenight-BXCNgaL3.js} +0 -0
  497. /package/dist/assets/{matlab-B7qSySiJ.js → matlab-DeaiNlNF.js} +0 -0
  498. /package/dist/assets/{mdx-Cefs8RtB.js → mdx-ST4v-vi3.js} +0 -0
  499. /package/dist/assets/{mermaid-C1KO8hY-.js → mermaid-CUmM2hbn.js} +0 -0
  500. /package/dist/assets/{min-dark-DhWD_LA8.js → min-dark-D57-ylK-.js} +0 -0
  501. /package/dist/assets/{min-light-TFk_TRdA.js → min-light-B88050ZK.js} +0 -0
  502. /package/dist/assets/{mipsasm-BYTVLH8w.js → mipsasm-Cs1MOJEB.js} +0 -0
  503. /package/dist/assets/{misc-F3kQrahv.js → misc-C_E02qnv.js} +0 -0
  504. /package/dist/assets/{mojo-Ivviytf8.js → mojo-BVOdZw7n.js} +0 -0
  505. /package/dist/assets/{monokai-zQwYTSXE.js → monokai-CGSy3Ma6.js} +0 -0
  506. /package/dist/assets/{moonbit-DVjyyWxE.js → moonbit-BNTzlXOn.js} +0 -0
  507. /package/dist/assets/{move-DJcOLhuX.js → move-CLcYOhLW.js} +0 -0
  508. /package/dist/assets/{narrat-DHgMgzAV.js → narrat-CGQN4gQw.js} +0 -0
  509. /package/dist/assets/{nextflow-groovy-CHUnSpIr.js → nextflow-groovy-Dnp3QiLn.js} +0 -0
  510. /package/dist/assets/{night-owl-CZLiMDO6.js → night-owl-DkBuNuxI.js} +0 -0
  511. /package/dist/assets/{night-owl-light-B6QhsdNm.js → night-owl-light-CY1Epm7d.js} +0 -0
  512. /package/dist/assets/{nix-B0Zu_kK5.js → nix-DJ4B0RpD.js} +0 -0
  513. /package/dist/assets/{nord-0pexLVrJ.js → nord-TkEe7NZz.js} +0 -0
  514. /package/dist/assets/{nushell-C0uC3t3G.js → nushell-DTsa-DJU.js} +0 -0
  515. /package/dist/assets/{objective-c-CXbjvhkd.js → objective-c-BcTYeV3y.js} +0 -0
  516. /package/dist/assets/{objective-cpp-ocflEG3T.js → objective-cpp-shqpsJcg.js} +0 -0
  517. /package/dist/assets/{ocaml-DnO3lUFt.js → ocaml-CJ2GiCkj.js} +0 -0
  518. /package/dist/assets/{odin-D61fXTyD.js → odin-D0zd-gEH.js} +0 -0
  519. /package/dist/assets/{one-dark-pro-BkFjzFjI.js → one-dark-pro-BFuflvbQ.js} +0 -0
  520. /package/dist/assets/{one-light-DK9yCxR2.js → one-light-C2M4Ga1d.js} +0 -0
  521. /package/dist/assets/{openscad-Bp_2DQr5.js → openscad-M8wBXspJ.js} +0 -0
  522. /package/dist/assets/{pascal-rsQ53Qv4.js → pascal-B5I86tsE.js} +0 -0
  523. /package/dist/assets/{pdf-DPwu6kfe.js → pdf-B1h5VcnB.js} +0 -0
  524. /package/dist/assets/{pkl-B5LTji6U.js → pkl-BhDTZ1N8.js} +0 -0
  525. /package/dist/assets/{plastic-Cirw0lhz.js → plastic-BoMY19sJ.js} +0 -0
  526. /package/dist/assets/{plsql-BO8q_V0w.js → plsql-CDtFB7RS.js} +0 -0
  527. /package/dist/assets/{po-IuDRsZ-C.js → po-CVb8SYlg.js} +0 -0
  528. /package/dist/assets/{poimandres-Bmycycrh.js → poimandres-4UDxXvNA.js} +0 -0
  529. /package/dist/assets/{polar-BeFzhQfT.js → polar-C1oaTa9E.js} +0 -0
  530. /package/dist/assets/{postcss-aj7G4ME7.js → postcss-BuB05qbO.js} +0 -0
  531. /package/dist/assets/{powerquery-BxbQYjYF.js → powerquery-cgioiq22.js} +0 -0
  532. /package/dist/assets/{powershell-DyqaDCqd.js → powershell-CWXGVwDc.js} +0 -0
  533. /package/dist/assets/{prisma-BnUPBvbV.js → prisma-DlHB82Z6.js} +0 -0
  534. /package/dist/assets/{prolog-CJW-yTso.js → prolog-Dt0Y_lbJ.js} +0 -0
  535. /package/dist/assets/{proto-D_6P2RG7.js → proto-3Bdz34KE.js} +0 -0
  536. /package/dist/assets/{public-asset-DxiYX66V.js → public-asset-oHj-TY3D.js} +0 -0
  537. /package/dist/assets/{puppet-DprP35KV.js → puppet-BslS732_.js} +0 -0
  538. /package/dist/assets/{purescript-D8U1u20U.js → purescript-By6DvM4T.js} +0 -0
  539. /package/dist/assets/{python-CGHbIuBr.js → python-BnqlragU.js} +0 -0
  540. /package/dist/assets/{qmldir-Exr2qroL.js → qmldir-CUDcPERi.js} +0 -0
  541. /package/dist/assets/{qss-Dwz1fjSR.js → qss-BmmBNONp.js} +0 -0
  542. /package/dist/assets/{r-BrziXlsr.js → r-CUmTiDHR.js} +0 -0
  543. /package/dist/assets/{racket-B2oYbW0Z.js → racket-DtjvEIuJ.js} +0 -0
  544. /package/dist/assets/{raku-CV_rEolZ.js → raku-B4gJ9vRP.js} +0 -0
  545. /package/dist/assets/{red-RE6RxIua.js → red-BeDKVfFU.js} +0 -0
  546. /package/dist/assets/{reg-DC30h26N.js → reg-DFxdTupP.js} +0 -0
  547. /package/dist/assets/{regexp-B9j3iMxK.js → regexp-D13s7f6f.js} +0 -0
  548. /package/dist/assets/{rel-B-2dAcxg.js → rel-NXN-6M6P.js} +0 -0
  549. /package/dist/assets/{riscv-jv1gsqsB.js → riscv-D-rz2RP1.js} +0 -0
  550. /package/dist/assets/{ron-BPArPRV6.js → ron-B7QveNIW.js} +0 -0
  551. /package/dist/assets/{rose-pine-CVEe0-mq.js → rose-pine-C1kpuNwT.js} +0 -0
  552. /package/dist/assets/{rose-pine-dawn-DWlya3_S.js → rose-pine-dawn-B5MnRqO4.js} +0 -0
  553. /package/dist/assets/{rose-pine-moon-BDIc78mA.js → rose-pine-moon-ChZ8PyZr.js} +0 -0
  554. /package/dist/assets/{rosmsg-OHH2Ua8c.js → rosmsg-BXBSikqW.js} +0 -0
  555. /package/dist/assets/{rust-DkW4yszb.js → rust-D9Gh5zMK.js} +0 -0
  556. /package/dist/assets/{sass-Cgh1dByy.js → sass-C4OSAgy4.js} +0 -0
  557. /package/dist/assets/{scala-DAbc-CrY.js → scala-CDoa-DgD.js} +0 -0
  558. /package/dist/assets/{scheme-EkaUi0-d.js → scheme-Bk_uVPEd.js} +0 -0
  559. /package/dist/assets/{sdbl-CabyYCtG.js → sdbl-DTkJ9VoT.js} +0 -0
  560. /package/dist/assets/{semver-BljOCwsH.js → semver-DRocthZi.js} +0 -0
  561. /package/dist/assets/{shellscript-Cg00n8Z7.js → shellscript-Dy1_pXFS.js} +0 -0
  562. /package/dist/assets/{slack-dark-D8ixb--X.js → slack-dark-6leyXmpo.js} +0 -0
  563. /package/dist/assets/{slack-ochin-Yv6bCarn.js → slack-ochin-D4lMnbGj.js} +0 -0
  564. /package/dist/assets/{smalltalk-CuP-RPUE.js → smalltalk-DD36SM_u.js} +0 -0
  565. /package/dist/assets/{snazzy-light-CF1SBRKW.js → snazzy-light-bnV9Ljo-.js} +0 -0
  566. /package/dist/assets/{solarized-dark-C58juz5f.js → solarized-dark-BKu33QL5.js} +0 -0
  567. /package/dist/assets/{solarized-light-uTCPKt9I.js → solarized-light-D3Ztor-W.js} +0 -0
  568. /package/dist/assets/{solidity-D2gy_UCJ.js → solidity-BEtjX6KX.js} +0 -0
  569. /package/dist/assets/{splunk-D5cpHwO5.js → splunk-Bfkbb1Oi.js} +0 -0
  570. /package/dist/assets/{sql-DKvvqWhV.js → sql-D8wOpkwd.js} +0 -0
  571. /package/dist/assets/{ssh-config-CfE9WvOO.js → ssh-config-CsGMoSbp.js} +0 -0
  572. /package/dist/assets/{stylus-DCbVDWgh.js → stylus-6pKKhsoJ.js} +0 -0
  573. /package/dist/assets/{swift-DNDNJ2F-.js → swift-BkOeByzg.js} +0 -0
  574. /package/dist/assets/{synthwave-84-BHmVp4OT.js → synthwave-84-DSZAz7dX.js} +0 -0
  575. /package/dist/assets/{system-verilog-CdB2IWMB.js → system-verilog-CVyGNf3U.js} +0 -0
  576. /package/dist/assets/{systemd-DG4aQdSK.js → systemd-CQl5uhbn.js} +0 -0
  577. /package/dist/assets/{talonscript-DWovYr8W.js → talonscript-eoRxA5Ok.js} +0 -0
  578. /package/dist/assets/{tasl-EZMPUsLA.js → tasl-_YggCie7.js} +0 -0
  579. /package/dist/assets/{tcl-BDa9WQxI.js → tcl-B5y1m2vT.js} +0 -0
  580. /package/dist/assets/{terraform-CbaCTMA-.js → terraform-B7hrP3h2.js} +0 -0
  581. /package/dist/assets/{tokyo-night-B-3vO0X1.js → tokyo-night-CLJY2LDi.js} +0 -0
  582. /package/dist/assets/{toml-CJtDM0Kg.js → toml-Cs-cPRLv.js} +0 -0
  583. /package/dist/assets/{tsv-BMfwiXD3.js → tsv-ZzeIUMNN.js} +0 -0
  584. /package/dist/assets/{tsx-R_l1BRZE.js → tsx-BYD88th_.js} +0 -0
  585. /package/dist/assets/{turtle-DQheMc__.js → turtle-CPvNi5WC.js} +0 -0
  586. /package/dist/assets/{typescript-CrLVCN9o.js → typescript-DJJkbsZi.js} +0 -0
  587. /package/dist/assets/{typespec-B8WVILoM.js → typespec-CMdqLPgd.js} +0 -0
  588. /package/dist/assets/{typst-BoUCnaXm.js → typst-DsWXMrgl.js} +0 -0
  589. /package/dist/assets/{usage-window-XvgiaiRa.js → usage-window-WuitofiN.js} +0 -0
  590. /package/dist/assets/{use-is-mobile-C5MpTbZg.js → use-is-mobile-BE6bh_HI.js} +0 -0
  591. /package/dist/assets/{v-D6w-BLKm.js → v-CtLCtB_t.js} +0 -0
  592. /package/dist/assets/{vala-DEazxXUg.js → vala-BbUVMZyL.js} +0 -0
  593. /package/dist/assets/{vb-Dh8eDYSC.js → vb-vj4-Ez0k.js} +0 -0
  594. /package/dist/assets/{verilog-BtQGyGeV.js → verilog-Doq8Q-jI.js} +0 -0
  595. /package/dist/assets/{vesper-CyGGg_JU.js → vesper-B8LW9vrZ.js} +0 -0
  596. /package/dist/assets/{vhdl-B25cFZ69.js → vhdl-DRtkTOrI.js} +0 -0
  597. /package/dist/assets/{viml-eqeus6Be.js → viml-DYh9Vv9J.js} +0 -0
  598. /package/dist/assets/{vitesse-black-CmbhTUpx.js → vitesse-black-Dm5nxZKZ.js} +0 -0
  599. /package/dist/assets/{vitesse-dark-CErdJwzQ.js → vitesse-dark-Dlco7gYk.js} +0 -0
  600. /package/dist/assets/{vitesse-light-DFdxk79s.js → vitesse-light-BkxjEsr0.js} +0 -0
  601. /package/dist/assets/{vyper-DrtLYutu.js → vyper-D3LCCi2j.js} +0 -0
  602. /package/dist/assets/{wasm--VGMNnWJ.js → wasm-DMjikHsi.js} +0 -0
  603. /package/dist/assets/{wasm-BVkLVo9Z.js → wasm-DV6-PWqw.js} +0 -0
  604. /package/dist/assets/{wenyan-Dn_7eMtk.js → wenyan-BxycIgSG.js} +0 -0
  605. /package/dist/assets/{wgsl-Dnn0U4pZ.js → wgsl-cNpMN_q9.js} +0 -0
  606. /package/dist/assets/{wikitext-CB3r4A70.js → wikitext-xM7rCJnw.js} +0 -0
  607. /package/dist/assets/{wit-B9QJg3J7.js → wit-BhbrV2hd.js} +0 -0
  608. /package/dist/assets/{wolfram-D_sCn_NL.js → wolfram-DuxCpd52.js} +0 -0
  609. /package/dist/assets/{xterm-addon-fit-Ds0XcaAZ.js → xterm-addon-fit-D-DRi2x9.js} +0 -0
  610. /package/dist/assets/{xterm-BkYbNM4a.js → xterm-h58f7_nb.js} +0 -0
  611. /package/dist/assets/{yaml-Ctbb8AMj.js → yaml-h_MJYnCO.js} +0 -0
  612. /package/dist/assets/{zenscript-igtvxesw.js → zenscript-DV1Wsq0u.js} +0 -0
  613. /package/dist/assets/{zig-j3jjq-Ul.js → zig-CSTXgA3l.js} +0 -0
  614. /package/dist/assets/{zwitch-C8nFxL4o.js → zwitch-Cxnntp5a.js} +0 -0
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n,h as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as i}from"./jsx-runtime-CVSDxk6A.js";import{t as a}from"./button-CHADMNBN.js";import{t as o}from"./confirm-dialog-M0xuyGF3.js";import{t as s}from"./modal-BYMhDpQo.js";import{D as c,L as l,T as u,d,j as f,n as p}from"./resolved-assistants-store-BTvVAnMH.js";import{t as m}from"./is-electron-CavSPgmY.js";import{V as h,c as g,n as _,r as v}from"./auth-store-waC7X7ya.js";import{a as y}from"./routes-DLEaIDYY.js";import{Ea as b,Ka as x,co as S,nr as C,tr as w}from"./index-BKOx2d-L.js";import{r as T}from"./format-date-hsycENtr.js";import{t as E}from"./onboarding-layout-Ckbaim4E.js";import{t as ee}from"./use-onboarding-login-DSd1eko2.js";var D=e(t(),1),O=i();function k({open:e,assistantName:t,isPending:n,errorMessage:r,onCancel:i,onRepair:c,onRetire:l}){let[u,d]=(0,D.useState)(`menu`);(0,D.useEffect)(()=>{e&&d(`menu`)},[e]);let f=r?(0,O.jsx)(`span`,{className:`mt-3 block text-body-small-default text-[var(--system-negative-strong)]`,children:r}):null;return u===`confirm-repair`?(0,O.jsx)(o,{open:e,title:`Repair Assistant?`,message:(0,O.jsxs)(O.Fragment,{children:[`Repairing re-provisions this assistant’s authentication token. Any other devices or browser sessions connected to it will be signed out and need to reconnect.`,f]}),confirmLabel:`Repair`,isPending:n,onConfirm:c,onCancel:()=>d(`menu`)}):u===`confirm-retire`?(0,O.jsx)(w,{open:e,isPending:n,extraMessage:f,onConfirm:l,onCancel:()=>d(`menu`)}):(0,O.jsx)(s.Root,{open:e,onOpenChange:e=>{!e&&!n&&i()},children:(0,O.jsxs)(s.Content,{size:`sm`,hideCloseButton:!0,onEscapeKeyDown:e=>{e.preventDefault(),e.stopPropagation(),n||i()},children:[(0,O.jsx)(s.Header,{children:(0,O.jsx)(s.Title,{children:`Can’t Authenticate Assistant`})}),(0,O.jsxs)(s.Body,{children:[(0,O.jsxs)(s.Description,{children:[`The authentication token for `,t,` is missing or can no longer be refreshed, so this assistant can’t be connected. You can repair it, retire it, or pick a different assistant.`]}),f,(0,O.jsxs)(`div`,{className:`mt-5 flex w-full flex-col gap-2`,children:[(0,O.jsx)(a,{variant:`primary`,fullWidth:!0,disabled:n,onClick:()=>d(`confirm-repair`),children:`Wake & Repair`}),(0,O.jsx)(a,{variant:`dangerOutline`,fullWidth:!0,disabled:n,onClick:()=>d(`confirm-retire`),children:`Retire Assistant`}),(0,O.jsx)(a,{variant:`outlined`,fullWidth:!0,disabled:n,onClick:i,children:`Cancel`})]})]})]})})}function A(e){return e.name?e.name:e.isLocal?`Local Assistant`:`Cloud Assistant`}function j(e){if(e.hatchedAt)return`Created ${T(e.hatchedAt)}`}function M(){let e=n(),[t]=r(),i=t.get(`fromLogin`)===`1`,o=t.get(`fromSettings`)===`1`,s=m(),b=v(),x=p.use.assistants(),S=g.use.currentOrganizationId(),{loading:w,error:T,login:j,cancel:M}=ee(),P=e=>e.isLocal||b,F=x.filter(P),I=x.some(e=>e.isPlatformHosted)&&!b,[L,R]=(0,D.useState)(null),[z,B]=(0,D.useState)(!1),[V,H]=(0,D.useState)(!1),[U,W]=(0,D.useState)(null),[G,K]=(0,D.useState)(null),[q,J]=(0,D.useState)(!1),[Y,X]=(0,D.useState)(null);(0,D.useEffect)(()=>{if(L!=null||F.length===0)return;let e=h(S);R(F.find(t=>t.id===e)?.id??F[0].id)},[L,F,S]);let Z=async t=>{B(!0),W(null);try{t.isLocal?await _.getState().connectLocalAssistant(t.id):await _.getState().connectPlatformAssistant(t.id),e(y.assistant,{replace:!0})}catch(e){console.error(`selectAssistant.handleConnect failed`,e),t.isLocal&&(u(e)||l(e))&&d(t.id)?K(t):W(`Failed to connect. Please try again.`),B(!1)}},Q=()=>{K(null),J(!1),X(null),H(!1)},te=async()=>{if(!(!G||q)){J(!0),X(null);try{let e=await c(G.id,{repairGuardian:!0});if(e.ok){f(),Q(),Z(G);return}X(e.error||`Repair failed. Please try again.`)}catch(e){console.error(`selectAssistant.recoveryRepair failed`,e),X(`Repair failed. Please try again.`)}J(!1)}},ne=async()=>{if(!(!G||q)){J(!0),X(null);try{let t=await C(G.id);if(t.ok){Q(),e(t.nextRoute,{replace:!0});return}X(t.error)}catch(e){console.error(`selectAssistant.recoveryRetire failed`,e),X(`Failed to retire assistant. Please try again.`)}J(!1)}};(0,D.useEffect)(()=>{i||o||z||V||x.length!==0&&x.length===1&&F.length===1&&(H(!0),Z(F[0]))},[x.length,F.length]);let re=()=>{let e=x.find(e=>e.id===L);e&&Z(e)},ie=()=>{e(y.welcome)},$=T??U;return V&&!$&&!G?(0,O.jsx)(E,{children:(0,O.jsx)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-xl flex-col items-center justify-center px-6 text-[var(--content-default)]`,children:(0,O.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Connecting to your assistant…`})})}):(0,O.jsxs)(E,{children:[(0,O.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-col items-center ${s?`min-h-full px-8 pt-21 pb-4 electron-prechat-type`:`min-h-screen px-6 pb-40 pt-16`} text-[var(--content-default)]`,children:[(0,O.jsx)(`h1`,{className:s?`text-title-large`:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:`Choose an Assistant`}),(0,O.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)] ${s?`mt-3.5`:`mt-3`}`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:`Select which assistant you’d like to use.`}),$&&(0,O.jsx)(`p`,{className:`mt-4 text-body-small-default text-[var(--system-negative-strong)]`,children:$}),(0,O.jsx)(`div`,{className:`flex w-full flex-col ${s?`mt-8 gap-2`:`mt-10 gap-3`}`,style:{animation:`fadeInUp 0.5s ease-out 0.4s both`},children:x.map(e=>{let t=P(e);return(0,O.jsx)(N,{assistant:e,selected:L===e.id,disabled:!t,badge:!t&&e.isPlatformHosted?`Requires Account`:void 0,onSelect:()=>{t&&R(e.id)}},e.id)})}),(0,O.jsxs)(`div`,{className:`mt-8 flex w-full flex-col ${s?`gap-2.5`:`gap-2`}`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`},children:[F.length>0&&(0,O.jsx)(a,{variant:`primary`,size:`regular`,fullWidth:!0,className:s?void 0:`h-11 text-base`,onClick:re,disabled:!L||z,children:z?`Connecting…`:`Continue`}),(0,O.jsx)(a,{variant:`outlined`,size:`regular`,fullWidth:!0,className:s?void 0:`h-11 text-base`,onClick:()=>void e(`${y.onboarding.hosting}?from=select-assistant`),disabled:z||w,children:`Create New Assistant`}),I&&(0,O.jsx)(a,{variant:`outlined`,size:`regular`,fullWidth:!0,className:s?void 0:`h-11 text-base`,onClick:w?M:()=>void j(),disabled:z,children:w?`Cancel`:`Log In`}),(0,O.jsx)(a,{variant:`outlined`,size:`regular`,fullWidth:!0,className:s?void 0:`h-11 text-base`,onClick:ie,disabled:z||w,children:`Back`})]})]}),(0,O.jsx)(k,{open:G!=null,assistantName:G?A(G):``,isPending:q,errorMessage:Y??void 0,onCancel:Q,onRepair:()=>void te(),onRetire:()=>void ne()})]})}function N({assistant:e,selected:t,disabled:n,badge:r,onSelect:i}){let a=j(e),o=m();return(0,O.jsxs)(`button`,{type:`button`,onClick:i,disabled:n,className:[`group flex w-full items-center border text-left`,o?`gap-3 rounded-lg p-3`:`gap-4 rounded-2xl px-5 py-4`,`transition-all duration-200 ease-out`,n?`cursor-not-allowed opacity-50`:`cursor-pointer hover:bg-[var(--surface-secondary)]`,t&&!n?`border-[var(--primary-base)] bg-[var(--primary-base)]/[0.08] shadow-[inset_0_0_0_1px_var(--primary-base)]`:`border-[var(--border-element)] bg-transparent`].join(` `),children:[(0,O.jsx)(`div`,{className:[`flex shrink-0 items-center justify-center transition-colors duration-200`,o?`h-8 w-8 rounded-lg`:`h-10 w-10 rounded-xl`,t&&!n?`bg-[var(--primary-base)]/15 text-[var(--primary-base)]`:`bg-[var(--surface-tertiary)] text-[var(--content-secondary)]`].join(` `),children:e.isLocal?(0,O.jsx)(b,{className:`h-5 w-5`}):(0,O.jsx)(x,{className:`h-5 w-5`})}),(0,O.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,O.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,O.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:A(e)}),r&&(0,O.jsx)(`span`,{className:`rounded-full bg-[var(--surface-tertiary)] px-2 py-0.5 text-[var(--content-tertiary)] ${o?`text-label-medium-default`:`text-body-small-default`}`,children:r})]}),a&&(0,O.jsx)(`span`,{className:`mt-0.5 block text-[var(--content-tertiary)] ${o?`text-label-medium-default`:`text-body-small-default`}`,children:a})]}),!n&&(0,O.jsx)(`div`,{className:[`flex h-5 w-5 shrink-0 items-center justify-center rounded-full border-2 transition-all duration-200`,t?`border-[var(--primary-base)] bg-[var(--primary-base)]`:`border-[var(--border-element)] group-hover:border-[var(--content-tertiary)]`].join(` `),children:t&&(0,O.jsx)(S,{className:`h-3 w-3 text-white`,strokeWidth:3})})]})}export{M as SelectAssistantScreen};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n,i as r,u as i}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{p as o}from"./resolved-assistants-store-BTvVAnMH.js";import{t as s}from"./is-electron-CavSPgmY.js";import{r as c}from"./auth-store-waC7X7ya.js";import{a as l}from"./routes-DLEaIDYY.js";import{t as u}from"./client-feature-flag-store-lWvUd78D.js";import{t as d}from"./assistant-feature-flag-store-CFzsxEC5.js";import{Lr as f,Rn as p,ba as m,nt as h}from"./index-BKOx2d-L.js";import{n as g,t as _}from"./sidebar-tree-CeH2oC1c.js";var v=e(t(),1),y=a();function b(){let e=d.use.settingsDeveloperNav(),t=u.use.platformNotifications(),a=u.use.bookmarks(),b=p({platformHostedOnly:!0}),x=p(),{pathname:S}=i(),C=n(),w=c(),T=!o()||w,E=(0,v.useMemo)(()=>h.filter(e=>!(e.id===`notifications`&&(!t||b===`gated`)||e.id===`billing`&&x!==`full`||e.id===`bookmarks`&&!a||e.id===`devices`&&b===`gated`||e.id===`keyboard-shortcuts`&&!s()||e.id===`developer`)),[t,b,x,a]),D=(0,v.useMemo)(()=>{let t=[];return e&&t.push(...h.filter(e=>e.id===`developer`)),T&&t.push({id:`logout`,label:`Log Out`,icon:m,onSelect:()=>void f(C)}),t},[e,T,C]),O=(0,v.useMemo)(()=>{if(S===l.settings.root)return`Settings`;let e=h.find(e=>S===e.href||S.startsWith(e.href+`/`));return e?e.label:`Settings`},[S]);return(0,y.jsx)(g,{backHref:l.assistant,sidebar:(0,y.jsx)(_,{items:E,bottomItems:D,indexPath:l.settings.root}),title:O,children:(0,y.jsx)(r,{})})}export{b as SettingsLayout};
@@ -1 +0,0 @@
1
- import{o as e,r as t}from"./chunk-jRWAZmH_.js";import{t as n}from"./react-DJZBPgpf.js";import{T as r}from"./portal-container-DIXEBWUe.js";import{t as i}from"./useMutation-Lj4VunQV.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{n as o,t as s}from"./button-CHADMNBN.js";import{t as c}from"./dropdown-CocFV5yi.js";import{t as l}from"./notice-CF2pptne.js";import{n as u,t as d}from"./input-Cu3PPVCq.js";import{t as f}from"./toggle-CEm3M86o.js";import{t as p}from"./is-electron-CavSPgmY.js";import{t as m}from"./bug-rSnph6U_.js";import{t as h}from"./loader-circle-BwqYfFHZ.js";import{t as g}from"./x-Df0EF2EP.js";import{Rt as _}from"./sdk.gen-qH7wLOCJ.js";import{n as v}from"./auth-store-waC7X7ya.js";import{t as y}from"./dist-CP-ms_vi.js";import{t as b}from"./impersonate-version-flag-BmrRmKMF.js";import{Br as x,Da as ee,Kt as te,Xi as ne,_a as S,da as C,wa as w,ya as re}from"./index-BKOx2d-L.js";var T=e(n(),1),ie=e(r(),1),E=`vellum:debug:`;function D(){let e={};if(typeof window>`u`)return e;try{for(let t=0;t<window.localStorage.length;t++){let n=window.localStorage.key(t);if(n===null||!n.startsWith(E))continue;let r=window.localStorage.getItem(n);r!==null&&(e[n]=r)}}catch{}return e}function O(){return{collectedAt:new Date().toISOString(),resolved:{impersonateAssistantVersion:b()},overrides:D()}}var k=t({ShareFeedbackModal:()=>z}),A=a(),j=[{value:`bug_report`,label:`Bug Report`,icon:m,includesLogsByDefault:!0},{value:`feature_request`,label:`Feature Request`,icon:w,includesLogsByDefault:!1},{value:`other`,label:`Other`,icon:S,includesLogsByDefault:!1}],M=[{value:`past_hour`,label:`Past hour`,cutoffMs:3600*1e3},{value:`past_24_hours`,label:`Past 24 hours`,cutoffMs:1440*60*1e3},{value:`all_time`,label:`All time`,cutoffMs:null}],ae=M.map(e=>({value:e.value,label:e.label})),N=new Set([`image/png`,`image/jpeg`,`image/gif`,`image/webp`,`video/mp4`,`video/quicktime`,`video/webm`]),P=new Set([`png`,`jpg`,`jpeg`,`gif`,`webp`,`mp4`,`mov`,`webm`]),F=10,I=50*1024*1024,oe={bug_report:`bug_report`,feature_request:`feature_request`,other:`other`};function se(){return p()?`macos`:y.getPlatform()===`ios`?`ios`:`web`}function ce(e){if(e.size>I)return!1;if(e.type&&N.has(e.type))return!0;if(!e.type){let t=e.name.split(`.`).pop()?.toLowerCase();return t?P.has(t):!1}return!1}function L(e,t){let n=Math.ceil(t.length/512),r=new Uint8Array(512+n*512),i=new TextEncoder,a=(e,t,n)=>{let a=i.encode(e);r.set(a.slice(0,n),t)},o=(e,t,n)=>{a(e.toString(8).padStart(n-1,`0`)+`\0`,t,n)};a(e,0,100),o(420,100,8),o(0,108,8),o(0,116,8),o(t.length,124,12),o(Math.floor(Date.now()/1e3),136,12);for(let e=148;e<156;e++)r[e]=32;r[156]=48,a(`ustar\0`,257,6),a(`00`,263,2);let s=0;for(let e=0;e<512;e++)s+=r[e];return o(s,148,7),r[155]=32,r.set(t,512),r}async function R(e,t){try{let n={};t.window.startTime!=null&&(n.startTime=t.window.startTime,n.endTime=t.window.endTime),t.activeConversationId&&(n.conversationId=t.activeConversationId);let{data:r,error:i}=await _({path:{assistant_id:e},body:n,parseAs:`blob`,throwOnError:!1});if(i||!(r instanceof Blob))return null;let a=await r.arrayBuffer();return new Uint8Array(a)}catch{return null}}async function le(e,t,n,r){if(typeof CompressionStream>`u`)return null;let i=new Date,a=M.find(t=>t.value===e),o=i.getTime(),s=a?.cutoffMs==null?null:o-a.cutoffMs,c=s==null?null:new Date(s).toISOString(),l=null;try{l=r?.()??null}catch{l=null}let u=x(l),d={collected_at:i.toISOString(),time_range:e,cutoff:c,log_window:{start_time_ms:s,end_time_ms:o},assistant_id:t,active_conversation_id:n,user_agent:typeof navigator<`u`?navigator.userAgent:``,language:typeof navigator<`u`?navigator.language:``,platform:typeof navigator<`u`?navigator.platform:``,url:typeof window<`u`?window.location.href:``,viewport:typeof window<`u`?{width:window.innerWidth,height:window.innerHeight}:null,screen:typeof screen<`u`?{width:screen.width,height:screen.height}:null,connection:typeof navigator<`u`&&`connection`in navigator?{effectiveType:navigator.connection.effectiveType,downlink:navigator.connection.downlink,rtt:navigator.connection.rtt}:null,deviceMemory:typeof navigator<`u`&&`deviceMemory`in navigator?navigator.deviceMemory:null,hardwareConcurrency:typeof navigator<`u`?navigator.hardwareConcurrency:null},f=new TextEncoder().encode(JSON.stringify(d,null,2)),m=new TextEncoder().encode(JSON.stringify(u,null,2)),h=[L(`web-client-context.json`,f),L(`web-chat-diagnostics.json`,m)],g=new TextEncoder().encode(JSON.stringify(O(),null,2));h.push(L(`web-debug-flags.json`,g));try{let e=typeof window<`u`?window._vellumDebug?.chat:null;if(e){let t={clientMessages:e.getClientMessages?.()??null,transcriptItems:e.getTranscriptItems?.()??null,pendingInteractions:e.listPendingInteractions?.()??null,thinkingIndicator:e.thinkingIndicator?.()??null,streamingRing:e.streamingRing?.()??null,reconciliationDiagnostics:e.getReconciliationDiagnostics?.()??null},n=new TextEncoder().encode(JSON.stringify(t,null,2));h.push(L(`web-chat-debug-api-triage.json`,n))}}catch{}try{let e=typeof window<`u`?window._vellumDebug?.events:null;if(e){let t={focus:typeof document<`u`?{hasFocus:typeof document.hasFocus==`function`?document.hasFocus():null,visibilityState:document.visibilityState}:null,clients:e.getClients().map(({abortSignal:e,...t})=>({...t,aborted:e.aborted})),events:e.getEvents()},n=new TextEncoder().encode(JSON.stringify(t,null,2));h.push(L(`web-sse-liveness-triage.json`,n))}}catch{}if(p()&&window.vellum?.feedback){try{let e=await window.vellum.feedback.diagnostics(),t=new TextEncoder().encode(JSON.stringify(e,null,2));h.push(L(`electron-diagnostics.json`,t))}catch{}try{let e=await window.vellum.feedback.logs();if(e){let t=new TextEncoder().encode(e);h.push(L(`electron-main-logs.txt`,t))}}catch{}}if(t){let e=await R(t,{window:{startTime:s,endTime:o},activeConversationId:n});e&&h.push(L(`platform-logs.tar.gz`,e))}h.push(new Uint8Array(1024));let _=h.reduce((e,t)=>e+t.length,0),v=new Uint8Array(_),y=0;for(let e of h)v.set(e,y),y+=e.length;let b=new Blob([v.buffer]),ee=await new Response(b.stream().pipeThrough(new CompressionStream(`gzip`))).blob();return new File([ee],`web-client-logs-${i.getTime()}.tar.gz`,{type:`application/gzip`})}function z({open:e,onClose:t,initialReason:n,onSubmitted:r,assistantId:a,assistantVersion:m,activeConversationId:_,getDiagnosticsSnapshot:y}){let b=v.use.user()?.email,x=(0,T.useId)(),S=(0,T.useRef)(null),w=(0,T.useRef)(null),E=(0,T.useRef)(null),D=(0,T.useRef)(null),[O,k]=(0,T.useState)(n??`bug_report`),[M,N]=(0,T.useState)(``),[P,I]=(0,T.useState)(``),[L,R]=(0,T.useState)(j.find(e=>e.value===(n??`bug_report`))?.includesLogsByDefault??!0),[z,B]=(0,T.useState)(!1),[V,H]=(0,T.useState)(`past_hour`),[U,W]=(0,T.useState)([]),[G,K]=(0,T.useState)(null),[fe,q]=(0,T.useState)(!1),[J,Y]=(0,T.useState)(!1),X=i(te()),[pe,Z]=(0,T.useState)(!1),Q=X.isPending||pe,me=!b,he=(0,T.useMemo)(()=>M.trim().length>0&&P.trim().length>0,[M,P]);(0,T.useEffect)(()=>{if(!e)return;let t=n??`bug_report`;k(t),N(``),I(b??``),R(j.find(e=>e.value===t)?.includesLogsByDefault??!0),B(!1),H(`past_hour`),W([]),Y(!1),K(null),Z(!1),X.reset();let r=setTimeout(()=>{b?E.current?.focus():D.current?.focus()},50);return()=>clearTimeout(r)},[e]),(0,T.useEffect)(()=>{if(!e)return;let t=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.body.style.overflow=t}},[e]);let ge=e=>{k(e),z||R(j.find(t=>t.value===e)?.includesLogsByDefault??!1)},_e=()=>{R(e=>!e),B(!0)},ve=(0,T.useCallback)(e=>{e.key===`Escape`&&!Q&&t()},[t,Q]),ye=(0,T.useCallback)(e=>{e.target===S.current&&!Q&&t()},[t,Q]),$=(0,T.useCallback)(e=>{W(t=>{let n=F-t.length;if(n<=0)return t;let r=new Set(t.map(e=>`${e.name}:${e.size}`)),i=[];for(let t of e){if(i.length>=n)break;if(!ce(t))continue;let e=`${t.name}:${t.size}`;r.has(e)||(r.add(e),i.push(t))}return i.length>0?[...t,...i]:t})},[]),be=e=>{e.target.files&&$(Array.from(e.target.files)),e.target.value=``},xe=e=>{e.preventDefault(),q(!1),e.dataTransfer.files?.length&&$(Array.from(e.dataTransfer.files))},Se=e=>{e.preventDefault(),q(!0)},Ce=e=>{e.preventDefault(),e.currentTarget===e.target&&q(!1)},we=e=>{W(t=>t.filter((t,n)=>n!==e))};return e?(0,ie.createPortal)((0,A.jsx)(`div`,{ref:S,role:`dialog`,"aria-modal":`true`,"aria-labelledby":x,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:ve,onClick:ye,onDrop:xe,onDragOver:Se,onDragLeave:Ce,children:(0,A.jsxs)(`div`,{className:`mx-4 flex w-full max-w-lg flex-col rounded-xl border p-6 shadow-xl`,style:{backgroundColor:`var(--surface-lift)`,borderColor:`var(--border-base)`,maxHeight:`calc(100vh - 2rem)`},children:[(0,A.jsxs)(`div`,{className:`flex items-center justify-between border-b pb-4`,style:{borderColor:`var(--border-subtle)`},children:[(0,A.jsx)(`h2`,{id:x,className:`!m-0 text-title-small text-[var(--content-default)]`,children:`Share Feedback`}),(0,A.jsx)(s,{variant:`ghost`,iconOnly:(0,A.jsx)(g,{}),onClick:t,disabled:Q,"aria-label":`Close`,tintColor:`var(--content-secondary)`})]}),(0,A.jsxs)(`div`,{className:`flex flex-col gap-3.5 overflow-y-auto pt-4 ${Q?`pointer-events-none opacity-60`:``}`,children:[me&&(0,A.jsx)(d,{id:`${x}-email`,ref:D,label:`Email`,type:`email`,placeholder:`you@example.com`,value:P,onChange:e=>I(e.target.value),leftIcon:(0,A.jsx)(re,{className:`h-4 w-4`,"aria-hidden":!0}),fullWidth:!0}),(0,A.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,A.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Category`}),(0,A.jsx)(`div`,{className:`flex gap-2`,children:j.map(e=>(0,A.jsx)(ue,{option:e,isSelected:O===e.value,onSelect:()=>ge(e.value)},e.value))})]}),(0,A.jsx)(`hr`,{className:`border-[var(--border-subtle)]`}),O===`bug_report`&&(0,A.jsxs)(l,{tone:`info`,children:[`Tip: Get faster support by posting in our`,` `,(0,A.jsx)(`a`,{href:`https://vellum.ai/community`,target:`_blank`,rel:`noopener noreferrer`,className:`underline text-[var(--content-default)]`,children:`Discord community`})]}),O===`feature_request`&&(0,A.jsxs)(l,{tone:`info`,children:[`Tip: Vote on features on our`,` `,(0,A.jsx)(`a`,{href:`https://vellum.ai/roadmap`,target:`_blank`,rel:`noopener noreferrer`,className:`underline text-[var(--content-default)]`,children:`public roadmap`})]}),(0,A.jsx)(u,{id:`${x}-message`,ref:E,label:O===`bug_report`?`What went wrong?`:O===`feature_request`?`Describe your idea`:`What's on your mind?`,rows:3,placeholder:O===`bug_report`?`What did you expect to happen, and what happened instead?`:O===`feature_request`?`What problem would this solve for you?`:`Share your thoughts...`,value:M,onChange:e=>N(e.target.value),fullWidth:!0}),O!==`feature_request`&&(0,A.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,A.jsxs)(`div`,{className:`flex items-center gap-2.5`,children:[(0,A.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2.5`,children:[(0,A.jsx)(f,{checked:L,onChange:_e,"aria-label":`Include browser diagnostics`}),(0,A.jsx)(`span`,{className:`text-body-medium-lighter leading-6 text-[var(--content-default)]`,children:`Include diagnostics`})]}),(0,A.jsx)(o,{content:`Diagnostics include browser context, assistant logs, and timestamps — never passwords or credentials.`,children:(0,A.jsx)(`button`,{type:`button`,"aria-label":`About diagnostics`,className:`inline-flex items-center justify-center text-[var(--content-tertiary)]`,children:(0,A.jsx)(ee,{className:`h-3.5 w-3.5`})})})]}),L&&(0,A.jsx)(c,{options:ae,value:V,onChange:H,"aria-label":`Diagnostics time range`})]}),p()&&_&&O!==`feature_request`&&(0,A.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2.5`,children:[(0,A.jsx)(f,{checked:J,onChange:()=>Y(e=>!e),"aria-label":`Include the most recent conversation`}),(0,A.jsx)(`span`,{className:`text-body-medium-lighter leading-6 text-[var(--content-default)]`,children:`Include the most recent conversation`})]}),(0,A.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,A.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,A.jsxs)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:[`Attachments`,U.length>0&&(0,A.jsxs)(`span`,{className:`text-[var(--content-tertiary)]`,children:[` · `,U.length,`/`,F]})]}),(0,A.jsx)(s,{variant:`outlined`,size:`compact`,leftIcon:(0,A.jsx)(C,{}),onClick:()=>w.current?.click(),disabled:U.length>=F,children:`Add files`}),(0,A.jsx)(`input`,{ref:w,type:`file`,multiple:!0,accept:`image/png,image/jpeg,image/gif,image/webp,video/mp4,video/quicktime,video/webm`,onChange:be,className:`hidden`})]}),U.length>0&&(0,A.jsx)(`div`,{className:`flex gap-2 overflow-x-auto`,children:U.map((e,t)=>(0,A.jsx)(de,{file:e,onRemove:()=>we(t)},`${e.name}-${t}`))}),fe&&(0,A.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Drop files to attach…`})]}),G&&(0,A.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--system-negative-strong)]`,children:G})]}),(0,A.jsx)(`div`,{className:`mt-4 flex items-center justify-end gap-2 border-t pt-4`,style:{borderColor:`var(--border-subtle)`},children:Q?(0,A.jsxs)(`span`,{className:`inline-flex items-center gap-2 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,A.jsx)(h,{className:`h-4 w-4 animate-spin`}),`Sending feedback…`]}):(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(s,{variant:`ghost`,onClick:t,children:`Cancel`}),(0,A.jsx)(s,{variant:`primary`,leftIcon:(0,A.jsx)(ne,{}),onClick:async()=>{if(!(!he||Q)){K(null),Z(!0);try{let e=L&&O!==`feature_request`?await le(V,a??null,p()?J?_??null:null:_??null,y):null;await X.mutateAsync({headers:{"Content-Type":null},body:{message:M.trim(),classification:oe[O],email:P.trim(),client:se(),client_version:void 0,...a?{assistant_id:a}:{},...m?{assistant_version:m}:{},...e?{logs_file:e}:{},...U.length?{attachments:U}:{}},bodySerializer:e=>{let t=new FormData;for(let[n,r]of Object.entries(e))if(r!=null){if(n===`attachments`&&Array.isArray(r)){for(let e of r)t.append(`attachments`,e);continue}r instanceof Blob?t.append(n,r):t.append(n,String(r))}return t}}),r?.(),t()}catch(e){K(e instanceof Error?e.message:`Failed to submit feedback. Please try again.`)}finally{Z(!1)}}},disabled:!he,children:`Submit`})]})})]})}),document.body):null}function ue({option:e,isSelected:t,onSelect:n}){let r=e.icon;return(0,A.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":t,className:`flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-left transition-colors`,style:{borderColor:t?`var(--primary-base)`:`var(--border-base)`,backgroundColor:t?`color-mix(in oklab, var(--primary-base) 10%, transparent)`:`transparent`},children:[(0,A.jsx)(r,{className:`h-3.5 w-3.5 shrink-0`,style:{color:t?`var(--primary-base)`:`var(--content-secondary)`}}),(0,A.jsx)(`span`,{className:`text-body-small-default`,style:{color:t?`var(--primary-base)`:`var(--content-default)`},children:e.label})]})}function de({file:e,onRemove:t}){let n=e.type.startsWith(`image/`),r=(0,T.useMemo)(()=>n?URL.createObjectURL(e):null,[e,n]);return(0,T.useEffect)(()=>{if(r)return()=>URL.revokeObjectURL(r)},[r]),(0,A.jsxs)(`div`,{className:`relative flex h-16 w-16 shrink-0 items-center justify-center overflow-hidden rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)]`,title:e.name,children:[n&&r?(0,A.jsx)(`img`,{src:r,alt:e.name,className:`h-full w-full object-cover`}):(0,A.jsx)(C,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,A.jsx)(s,{variant:`ghost`,size:`compact`,iconOnly:(0,A.jsx)(g,{}),onClick:t,"aria-label":`Remove ${e.name}`,className:`absolute top-0.5 right-0.5 h-4 w-4 rounded-full bg-black/60 text-white hover:bg-black/70`,tintColor:`#fff`})]})}export{k as n,z as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{h as n,t as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as i}from"./jsx-runtime-CVSDxk6A.js";import{E as a}from"./auth-store-waC7X7ya.js";import{a as o}from"./routes-DLEaIDYY.js";import{t as s}from"./proxy-DEUrefJ_.js";import{t as c}from"./google-logo-D6GdawCD.js";import{$ as l,J as u,Nr as d}from"./index-BKOx2d-L.js";import{n as f,r as p}from"./login-flow-DSUqqkE0.js";import{t as m}from"./personal-page-shell-Cs95FWNT.js";var h=e(t(),1),g=i();function _({words:e}){let[t,n]=(0,h.useState)(0),r=(0,h.useMemo)(()=>e.reduce((e,t)=>e.length>=t.length?e:t),[e]);return(0,h.useEffect)(()=>{let t=setInterval(()=>{n(t=>(t+1)%e.length)},2400);return()=>clearInterval(t)},[e.length]),(0,g.jsxs)(`span`,{className:`cast-login__rotating`,children:[(0,g.jsxs)(`span`,{className:`cast-login__rotating-sizer`,"aria-hidden":!0,children:[r,`.`]}),(0,g.jsx)(l,{mode:`wait`,children:(0,g.jsxs)(s.em,{initial:{opacity:0,y:16},animate:{opacity:1,y:0},exit:{opacity:0,y:-16},transition:{duration:.3,ease:`easeInOut`},children:[e[t],`.`]},e[t])})]})}var v=[`Personal Intelligence`,`Software Engineer`,`Finance Ops`,`Household Manager`,`GTM Engineer`,`Product Lead`],y=[{icon:(0,g.jsx)(c,{size:18}),label:`Continue with Google`,providerHint:`GoogleOAuth`},{icon:(0,g.jsx)(u,{size:18}),label:`Continue with Apple`,providerHint:`AppleOAuth`},{icon:(0,g.jsxs)(`svg`,{width:18,height:18,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:1.8,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":!0,children:[(0,g.jsx)(`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`}),(0,g.jsx)(`path`,{d:`m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7`})]}),label:`Continue with Email`}];function b({returnTo:e,onError:t}){let n=p(e,{authIntent:`signup`}),i=r=>{a(f,n,{returnTo:e,...r?{providerHint:r}:{intent:`signup`}}).catch(e=>{console.error(`[signup] auth flow failed:`,e),t?.(`Something went wrong. Please try again.`)})};return(0,g.jsxs)(m,{children:[(0,g.jsxs)(`h1`,{className:`cast-login__title`,children:[`Meet your own`,(0,g.jsx)(`br`,{}),(0,g.jsx)(_,{words:v})]}),(0,g.jsx)(`p`,{className:`cast-login__subtitle`,children:`The most powerful assistant that can handle your work and life admin tasks.`}),(0,g.jsx)(`div`,{className:`cast-login__buttons`,children:y.map((e,t)=>(0,g.jsxs)(`button`,{type:`button`,className:`cast-login__btn`,onClick:()=>i(e.providerHint),children:[t===0&&(0,g.jsx)(`span`,{className:`cast-login__tag`,children:`Most used`}),e.icon,e.label]},e.label))}),(0,g.jsxs)(`p`,{className:`cast-login__footer`,children:[`Already have an account?`,` `,(0,g.jsx)(r,{to:o.account.login,className:`cast-login__link`,children:`Sign in`})]}),(0,g.jsxs)(`a`,{className:`cast-login__download`,href:`/downloads`,children:[(0,g.jsx)(u,{size:16}),`Download for macOS`]})]})}function x(){let[e]=n(),{arm:t,settled:r}=d(),i=t===`personal-page`,o=(0,h.useRef)(!1),[s,c]=(0,h.useState)(null),l=e.get(`returnTo`);return(0,h.useEffect)(()=>{i||r&&(o.current||(o.current=!0,a(f,p(l,{authIntent:`signup`}),{intent:`signup`,returnTo:l}).catch(e=>{console.error(`[signup] auth flow failed:`,e),c(`Something went wrong. Please try again.`)})))},[i,r,l]),i?(0,g.jsx)(b,{returnTo:l,onError:c}):s?(0,g.jsx)(`div`,{className:`flex min-h-screen items-center justify-center`,children:(0,g.jsx)(`p`,{className:`text-[var(--system-negative-strong)]`,children:s})}):null}export{x as SignupPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{a as t,t as n}from"./local-settings-lVNyIOJ_.js";import{t as r}from"./react-DJZBPgpf.js";import{T as i}from"./portal-container-DIXEBWUe.js";import{h as a}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as o}from"./QueryClientProvider-DKhXIxGb.js";import{t as s}from"./useQuery-B45lW1Kk.js";import{t as c}from"./useMutation-Lj4VunQV.js";import{t as l}from"./jsx-runtime-CVSDxk6A.js";import{t as u}from"./button-CHADMNBN.js";import{t as d}from"./card-CL5iEMJO.js";import{t as f}from"./menu-B79-l6IU.js";import"./src-DOuqBUBT.js";import{t as p}from"./confirm-dialog-M0xuyGF3.js";import{n as m,r as h,t as g}from"./panel-item-FzMfzMJA.js";import{t as _}from"./input-Cu3PPVCq.js";import{n as v}from"./stat-square-CSDqINvK.js";import{t as y}from"./createLucideIcon-D6d6iDdi.js";import{a as b,c as x,i as S,n as C,o as w,r as T,s as E,t as ee}from"./install-d5tDxfg0.js";import{t as D}from"./calendar-CwOLKT3p.js";import{t as O}from"./cloud-off-Bla9953d.js";import{t as k}from"./code-DAtk7tPY.js";import{t as A}from"./globe-XxyRAKtA.js";import{t as j}from"./link-2-DGDYUt2-.js";import{t as M}from"./loader-circle-BwqYfFHZ.js";import{t as N}from"./x-Df0EF2EP.js";import{G as P,J as te,K as F,W as I,ht as ne,q as re}from"./react-query.gen-CawmQR-A.js";import{n as ie}from"./use-is-mobile-C5MpTbZg.js";import{Aa as L,Fa as R,Ki as ae,Li as z,Na as B,Pi as V,Ra as H,Ri as U,Ta as W,Ui as G,Yi as K,Zi as oe,_a as se,co as ce,fa as le,ho as q,io as J,ki as Y,ma as ue,mo as de,so as fe,ya as pe,zi as me}from"./index-BKOx2d-L.js";import{t as he}from"./use-active-assistant-id-Bdecq9LQ.js";import{n as ge,t as _e}from"./file-markdown-B3OXc5Lr.js";var ve=y(`funnel`,[[`path`,{d:`M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z`,key:`sc7q7i`}]]),ye=y(`palette`,[[`path`,{d:`M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z`,key:`e79jfc`}],[`circle`,{cx:`13.5`,cy:`6.5`,r:`.5`,fill:`currentColor`,key:`1okk4w`}],[`circle`,{cx:`17.5`,cy:`10.5`,r:`.5`,fill:`currentColor`,key:`f64h9f`}],[`circle`,{cx:`6.5`,cy:`12.5`,r:`.5`,fill:`currentColor`,key:`qy21gx`}],[`circle`,{cx:`8.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`fotxhn`}]]),X=e(r(),1),be={mail:pe,calendar:D,"message-circle":se,globe:A,zap:Y,code:k,mic:ue,"shopping-cart":ae,palette:ye,heart:L,settings:K,"link-2":j};function xe(e){return be[e]}var Z=l();function Se({selected:e,onSelect:t,counts:n,totalCount:r,showCounts:i,categories:a}){let o=[...a].sort((e,t)=>e.label.localeCompare(t.label));return(0,Z.jsxs)(`nav`,{className:`flex flex-col gap-1`,"aria-label":`Skill categories`,children:[(0,Z.jsx)(Ce,{icon:W,label:`All`,count:r,isActive:e===null,showCount:i,onClick:()=>t(null)}),o.map(r=>(0,Z.jsx)(Ce,{icon:xe(r.icon)??W,label:r.label,count:n[r.slug]??0,isActive:e===r.slug,showCount:i,onClick:()=>t(r.slug)},r.slug))]})}function Ce({icon:e,label:t,count:n,isActive:r,showCount:i,onClick:a}){return(0,Z.jsxs)(u,{variant:`ghost`,onClick:a,"aria-pressed":r,className:`h-auto justify-between gap-3 rounded-lg border-0 bg-transparent px-3 py-2 text-left hover:bg-[var(--ghost-hover)]`,style:{backgroundColor:r?`var(--surface-active)`:void 0,color:r?`var(--content-default)`:`var(--content-secondary)`},children:[(0,Z.jsxs)(`span`,{className:`flex items-center gap-2.5`,children:[(0,Z.jsx)(e,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0}),(0,Z.jsx)(`span`,{className:`text-body-medium-default`,children:t})]}),i&&(0,Z.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:n})]})}var we=e(i(),1);function Te(e,t){return t??e.find(e=>e.name===`SKILL.md`)?.path??null}function Ee(e,t){let[n,r]=(0,X.useState)(null),i=s({...P({path:{assistant_id:e,id:t}}),select:e=>e??null}),a=(0,X.useMemo)(()=>i.data?.files??[],[i.data]),o=(0,X.useMemo)(()=>a.find(e=>e.name===`SKILL.md`),[a]),c=Te(a,n),l=s({...I({path:{assistant_id:e,id:t},query:{path:c??``}}),select:e=>e??null,enabled:!!c});return{fileEntries:a,skillMd:o,selectedPath:n,setSelectedPath:r,activePath:c,activeFile:a.find(e=>e.path===c),isFilesLoading:i.isLoading,fileContent:l.data?.content??null,isBinary:!!l.data?.isBinary,isContentLoading:l.isLoading}}function De({fileName:e,content:t,isBinary:n,viewMode:r=`preview`}){return n?(0,Z.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Binary file — no preview available.`}):t===null?(0,Z.jsxs)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:[`No preview available for `,e,`.`]}):ge(e,void 0)&&r===`preview`?(0,Z.jsx)(`div`,{className:`h-full overflow-auto px-6 py-4`,style:{color:`var(--content-default)`},children:(0,Z.jsx)(_e,{content:t})}):(0,Z.jsx)(`pre`,{className:`h-full overflow-y-auto whitespace-pre-wrap break-words p-4 font-mono text-body-small-default`,style:{color:`var(--content-default)`},children:t})}function Oe({assistantId:e,skill:t,onBack:n,onInstall:r,onRemove:i,isInstalling:a=!1,isRemoving:o=!1}){let s=T(t),c=b(t),{fileEntries:l,setSelectedPath:f,activePath:p,activeFile:m,isFilesLoading:h,fileContent:g,isBinary:_,isContentLoading:y}=Ee(e,t.id),[x,S]=(0,X.useState)(`preview`);(0,X.useEffect)(()=>{S(`preview`)},[p]);let[C,ee]=(0,X.useState)(null);(0,X.useEffect)(()=>{ee(document.getElementById(`viewport-overlays`))},[]);let D=m?ge(m.name,void 0):!1,O=D?x:`raw`,A=(0,Z.jsxs)(`div`,{className:`fixed inset-0 z-40 flex flex-col overflow-hidden bg-[var(--surface-overlay)]`,style:{paddingTop:`calc(8px + var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))`,paddingBottom:`calc(8px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))`,paddingLeft:`calc(12px + var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))`,paddingRight:`calc(12px + var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))`},children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Z.jsx)(u,{variant:`ghost`,iconOnly:(0,Z.jsx)(de,{"aria-hidden":!0}),expandOnMobile:!0,"aria-label":`Back to skills`,onClick:n,className:`max-md:bg-[var(--surface-active)]`}),(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate px-2 text-center text-body-medium-default`,style:{color:`var(--content-secondary)`},children:t.name}),(0,Z.jsx)(ke,{available:s,removable:c,isInstalling:a,isRemoving:o,onInstall:r,onRemove:i})]}),(0,Z.jsxs)(`div`,{className:`mt-4 flex flex-col gap-2`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Z.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Z.jsx)(E,{skill:t,className:`h-6 w-6 shrink-0 text-[22px] leading-none`}),(0,Z.jsx)(`h2`,{className:`min-w-0 truncate text-title-medium`,style:{color:`var(--content-emphasised)`},children:t.name})]}),(0,Z.jsx)(w,{origin:t.origin})]}),(0,Z.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t.description})]}),(0,Z.jsx)(d.Root,{asChild:!0,noPadding:!0,children:(0,Z.jsxs)(`div`,{className:`mt-6 flex min-h-0 flex-1 flex-col overflow-hidden rounded-2xl border bg-[var(--surface-lift)]`,style:{borderColor:`var(--border-hover)`},children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between gap-2 border-b px-3 py-2`,style:{borderColor:`var(--border-hover)`},children:[(0,Z.jsx)(je,{fileEntries:l,activePath:p,activeName:m?.name??null,onSelect:f}),(0,Z.jsx)(v,{iconOnly:!0,ariaLabel:`File view mode`,value:O,onChange:S,items:[{value:`preview`,label:`Preview`,icon:(0,Z.jsx)(H,{"aria-hidden":!0}),disabled:!D},{value:`raw`,label:`Source`,icon:(0,Z.jsx)(k,{"aria-hidden":!0})}]})]}),(0,Z.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:h||y?(0,Z.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Z.jsx)(M,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})}):m?(0,Z.jsx)(De,{fileName:m.name,content:g,isBinary:_,viewMode:O}):(0,Z.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Select a file to view its contents.`})})]})})]});return C?(0,we.createPortal)(A,C):A}function ke({available:e,removable:t,isInstalling:n,isRemoving:r,onInstall:i,onRemove:a}){return n||r?(0,Z.jsx)(u,{variant:`ghost`,iconOnly:(0,Z.jsx)(M,{className:`animate-spin`,"aria-hidden":!0}),expandOnMobile:!0,disabled:!0,"aria-label":`Pending`,className:`max-md:bg-[var(--surface-active)]`}):e?(0,Z.jsx)(u,{variant:`ghost`,iconOnly:(0,Z.jsx)(q,{"aria-hidden":!0}),expandOnMobile:!0,"aria-label":`Install skill`,onClick:i,disabled:!i,className:`max-md:bg-[var(--surface-active)]`}):t?(0,Z.jsx)(u,{variant:`dangerGhost`,iconOnly:(0,Z.jsx)(U,{"aria-hidden":!0}),expandOnMobile:!0,"aria-label":`Remove skill`,onClick:a,disabled:!a,className:`max-md:rounded-full max-md:bg-[var(--system-negative-weak)]`}):(0,Z.jsx)(u,{variant:`dangerGhost`,iconOnly:(0,Z.jsx)(U,{"aria-hidden":!0}),expandOnMobile:!0,disabled:!0,title:`Bundled skills cannot be removed`,"aria-label":`Bundled skill cannot be removed`,className:`max-md:rounded-full max-md:bg-[var(--system-negative-weak)]`})}function Ae(e){return(e??``).endsWith(`/directory`)}function je({fileEntries:e,activePath:t,activeName:n,onSelect:r}){let i=n??`Select a file`;return e.length===0?(0,Z.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2 text-body-medium-default`,style:{color:`var(--content-emphasised)`},children:[(0,Z.jsx)(Me,{}),(0,Z.jsx)(`span`,{className:`truncate`,children:i})]}):(0,Z.jsxs)(f.Root,{children:[(0,Z.jsx)(f.Trigger,{children:(0,Z.jsxs)(`button`,{type:`button`,className:`flex min-w-0 items-center gap-2 rounded-md text-body-medium-default`,style:{color:`var(--content-emphasised)`},children:[(0,Z.jsx)(Me,{}),(0,Z.jsx)(`span`,{className:`truncate`,children:i}),(0,Z.jsx)(fe,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0})]})}),(0,Z.jsx)(f.Content,{align:`start`,children:e.map(e=>{let n=Ae(e.mimeType);return(0,Z.jsx)(f.Item,{onSelect:()=>r(e.path),leftIcon:n?(0,Z.jsx)(B,{}):(0,Z.jsx)(R,{}),"aria-current":e.path===t?`true`:void 0,children:e.name},e.path)})})]})}function Me(){return(0,Z.jsx)(`span`,{className:`flex h-6 w-6 shrink-0 items-center justify-center rounded-md bg-[var(--surface-base)]`,"aria-hidden":!0,children:(0,Z.jsx)(R,{className:`h-4 w-4`,style:{color:`var(--content-secondary)`}})})}var Ne=[{value:`all`,label:`All`,icon:W},{value:`installed`,label:`Installed`,icon:J},{value:`available`,label:`Available`,icon:q}],Pe=[{value:`vellum`,label:`Vellum`,icon:x},{value:`clawhub`,label:`Clawhub`,icon:A},{value:`skillssh`,label:`skills.sh`,icon:me},{value:`custom`,label:`Custom`,icon:V}];function Fe({search:e,onSearchChange:t,filter:n,onFilterChange:r,isSearching:i,categories:a,category:o,onCategoryChange:s,counts:c,totalCount:l,showCounts:u}){return(0,Z.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Z.jsx)(_,{type:`search`,value:e,onChange:e=>{t(e.target.value)},placeholder:`Search skills`,"aria-label":`Search skills`,leftIcon:(0,Z.jsx)(oe,{className:`h-4 w-4`,"aria-hidden":!0}),rightIcon:i?(0,Z.jsx)(M,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):void 0,fullWidth:!0,wrapperClassName:`flex-1`}),(0,Z.jsx)(Ie,{filter:n,onFilterChange:r,categories:a,category:o,onCategoryChange:s,counts:c,totalCount:l,showCounts:u})]})}function Ie(e){let t=ie(),[n,r]=(0,X.useState)(!1),i=(0,Z.jsx)(u,{type:`button`,variant:`outlined`,iconOnly:(0,Z.jsx)(ve,{"aria-hidden":!0}),"aria-label":`Filter skills`,"aria-haspopup":t?`dialog`:`listbox`,"aria-expanded":n,tintColor:`var(--primary-base)`});return t?(0,Z.jsx)(Le,{...e,open:n,onOpenChange:r,trigger:i}):(0,Z.jsxs)(h.Root,{open:n,onOpenChange:r,children:[(0,Z.jsx)(h.Trigger,{asChild:!0,children:i}),(0,Z.jsx)(h.Content,{align:`end`,sideOffset:4,className:`w-44 overflow-hidden p-0`,children:(0,Z.jsxs)(`ul`,{role:`listbox`,children:[(0,Z.jsx)(Re,{label:`Status`,options:Ne,selected:e.filter,onSelect:t=>{e.onFilterChange(t),r(!1)}}),(0,Z.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,Z.jsx)(Re,{label:`Source`,options:Pe,selected:e.filter,onSelect:t=>{e.onFilterChange(t),r(!1)}})]})})]})}function Le({filter:e,onFilterChange:t,categories:n,category:r,onCategoryChange:i,counts:a,totalCount:o,showCounts:s,open:c,onOpenChange:l,trigger:d}){let f=[...n].sort((e,t)=>e.label.localeCompare(t.label));return(0,Z.jsxs)(m.Root,{open:c,onOpenChange:l,children:[(0,Z.jsx)(m.Trigger,{asChild:!0,children:d}),(0,Z.jsxs)(m.Content,{className:`max-h-[85dvh]`,"aria-describedby":void 0,children:[(0,Z.jsx)(`div`,{"aria-hidden":!0,className:`mx-auto mb-3 h-1 w-9 shrink-0 rounded-full bg-[var(--border-element)]`}),(0,Z.jsx)(m.Header,{children:(0,Z.jsx)(m.Title,{children:`Filters`})}),(0,Z.jsxs)(m.Body,{className:`flex flex-col gap-3 pt-2`,children:[(0,Z.jsx)(Q,{label:`Status`,children:Ne.map(n=>(0,Z.jsx)($,{icon:n.icon,label:n.label,active:e===n.value,onSelect:()=>t(n.value)},n.value))}),(0,Z.jsx)(Q,{label:`Source`,children:Pe.map(n=>(0,Z.jsx)($,{icon:n.icon,label:n.label,active:e===n.value,onSelect:()=>t(n.value)},n.value))}),(0,Z.jsxs)(Q,{label:`Categories`,children:[(0,Z.jsx)($,{icon:W,label:`All`,active:r===null,badge:s?o:void 0,onSelect:()=>i(null)}),f.map(e=>(0,Z.jsx)($,{icon:xe(e.icon)??W,label:e.label,active:r===e.slug,badge:s?a[e.slug]??0:void 0,onSelect:()=>i(e.slug)},e.slug))]})]}),(0,Z.jsx)(m.Footer,{children:(0,Z.jsx)(u,{type:`button`,variant:`primary`,fullWidth:!0,onClick:()=>l(!1),children:`Done`})})]})]})}function Q({label:e,children:t}){return(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`div`,{className:`px-2 pb-1 text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:e}),t]})}function $({icon:e,label:t,active:n,badge:r,onSelect:i}){return(0,Z.jsx)(g,{icon:e,label:t,active:n,activeVariant:`branded`,badge:r,trailingAction:n&&r==null?(0,Z.jsx)(ce,{className:`h-4 w-4 text-[var(--primary-base)]`,"aria-hidden":!0}):void 0,onSelect:i})}function Re({label:e,options:t,selected:n,onSelect:r}){return(0,Z.jsxs)(`li`,{children:[(0,Z.jsx)(`div`,{className:`px-3 pb-1 pt-2 text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:e}),(0,Z.jsx)(`ul`,{children:t.map(e=>{let t=e.icon,i=n===e.value;return(0,Z.jsx)(`li`,{children:(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>r(e.value),role:`option`,"aria-selected":i,className:`flex w-full items-center gap-2 px-3 py-1.5 text-left text-body-medium-lighter transition-colors hover:bg-[var(--surface-hover)]`,style:{color:i?`var(--primary-base)`:`var(--content-default)`},children:[(0,Z.jsx)(t,{className:`h-4 w-4`,"aria-hidden":!0}),(0,Z.jsx)(`span`,{className:`flex-1`,children:e.label}),i&&(0,Z.jsx)(J,{className:`h-3.5 w-3.5`,"aria-hidden":!0})]})},e.value)})})]})}function ze({skill:e,onSelect:t,onInstall:n,onRemove:r,isInstalling:i=!1,isRemoving:a=!1}){let o=T(e),s=b(e);return(0,Z.jsx)(d.Root,{asChild:!0,children:(0,Z.jsxs)(`div`,{role:`button`,tabIndex:0,onClick:t,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t())},className:`flex cursor-pointer items-center gap-3 px-3 py-2 text-left transition-colors hover:bg-[var(--surface-hover)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:[(0,Z.jsx)(`div`,{className:`flex shrink-0 items-center justify-center text-[28px] leading-none`,children:(0,Z.jsx)(E,{skill:e,className:`h-7 w-7`})}),(0,Z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-emphasised)`},children:e.name}),(0,Z.jsx)(w,{origin:e.origin})]}),(0,Z.jsx)(`p`,{className:`mt-1 truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e.description})]}),o?i?(0,Z.jsx)(u,{type:`button`,iconOnly:(0,Z.jsx)(M,{className:`animate-spin`,"aria-hidden":!0}),disabled:!0,"aria-label":`Installing`,expandOnMobile:!1}):(0,Z.jsx)(u,{type:`button`,iconOnly:(0,Z.jsx)(q,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),n?.()},disabled:!n,"aria-label":`Install skill`,expandOnMobile:!1}):(0,Z.jsx)(u,{type:`button`,variant:`dangerOutline`,iconOnly:a?(0,Z.jsx)(M,{className:`animate-spin`,"aria-hidden":!0}):(0,Z.jsx)(U,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),r?.()},disabled:!s||a||!r,"aria-label":s?`Remove skill`:`Bundled skill cannot be removed`,title:s?void 0:`Bundled skills cannot be removed`,expandOnMobile:!1})]})})}function Be(e){return s({...F({path:{assistant_id:e}}),select:e=>e.categories,staleTime:300*1e3})}function Ve(e){switch(e){case`installed`:return{kind:`installed`};case`available`:return{kind:`available`};case`vellum`:case`clawhub`:case`skillssh`:case`custom`:return{origin:e};default:return{}}}function He(e){return[...e].sort((e,t)=>{let n=S(e);return n===S(t)?e.name.localeCompare(t.name,void 0,{sensitivity:`base`}):n?-1:1})}function Ue(e,t){let[n,r]=(0,X.useState)(e);return(0,X.useEffect)(()=>{let n=setTimeout(()=>{r(e)},t);return()=>clearTimeout(n)},[e,t]),n}var We=300,Ge=`vellum:skills:tipDismissed`;function Ke({assistantId:e,initialSkillId:r}){let i=o(),a=ie(),[l,u]=(0,X.useState)(``),d=Ue(l.trim(),We),[f,m]=(0,X.useState)(`all`),[h,g]=(0,X.useState)(null),[_,v]=(0,X.useState)(r??null),[y,b]=(0,X.useState)(null),[x,S]=(0,X.useState)(null),[w,T]=(0,X.useState)(null),[E,D]=(0,X.useState)(()=>n(Ge,!1)),{data:O=[]}=Be(e),{origin:k,kind:A}=(0,X.useMemo)(()=>Ve(f),[f]),j=s({...re({path:{assistant_id:e},query:{include:`catalog`,origin:k,kind:A,q:d||void 0,category:h??void 0}}),select:e=>({skills:e.skills,categoryCounts:e.categoryCounts,totalCount:e.totalCount}),enabled:!!e}),M=s({...re({path:{assistant_id:e},query:{include:`catalog`,origin:k,kind:A,q:d||void 0}}),select:e=>({skills:e.skills,categoryCounts:e.categoryCounts,totalCount:e.totalCount}),enabled:!!e&&h!==null}),N=(0,X.useCallback)(()=>{i.invalidateQueries({queryKey:te({path:{assistant_id:e}})})},[e,i]),P=c({mutationFn:t=>ee(e,t),onMutate:e=>b(e),onSettled:()=>{b(null),N()}}),F=ne({onMutate:e=>S(e.path.id),onSettled:()=>{S(null),N()}}),I=(0,X.useCallback)(e=>{P.mutate(e.slug??e.id)},[P]),L=(0,X.useCallback)(e=>{T(e)},[]),R=(0,X.useCallback)(()=>{w&&(F.mutate({path:{assistant_id:e,id:w.id}}),T(null))},[e,w,F]),ae=(0,X.useCallback)(()=>{D(!0),t(Ge,!0)},[]),z=(0,X.useMemo)(()=>j.data?.skills??[],[j.data?.skills]),B=h===null?j.data:M.data,{counts:V,totalCount:H}=qe(B?.skills??z,B?.categoryCounts,B?.totalCount),U=(0,X.useMemo)(()=>He(z),[z]),W=(0,X.useMemo)(()=>_?z.find(e=>e.id===_)??null:null,[z,_]),G=(0,Z.jsx)(p,{open:w!==null,title:`Remove skill`,message:w?`Remove "${w.name}" from this assistant?`:``,confirmLabel:`Remove`,destructive:!0,onConfirm:R,onCancel:()=>T(null)});if(W){let t={assistantId:e,skill:W,onBack:()=>v(null),onInstall:()=>I(W),onRemove:()=>L(W),isInstalling:y===(W.slug??W.id),isRemoving:x===W.id};return(0,Z.jsxs)(Z.Fragment,{children:[a?(0,Z.jsx)(Oe,{...t}):(0,Z.jsx)(C,{...t}),G]})}let K=j.isFetching&&!!d;return(0,Z.jsxs)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col gap-4`,children:[!E&&(0,Z.jsx)(Je,{onDismiss:ae}),(0,Z.jsx)(Fe,{search:l,onSearchChange:u,filter:f,onFilterChange:m,isSearching:K,categories:O,category:h,onCategoryChange:g,counts:V,totalCount:H,showCounts:!K}),(0,Z.jsxs)(`div`,{className:`flex min-h-0 flex-1 gap-6`,children:[(0,Z.jsx)(`aside`,{className:`hidden w-56 shrink-0 overflow-y-auto sm:block`,children:(0,Z.jsx)(Se,{selected:h,onSelect:g,counts:V,totalCount:H,showCounts:!K,categories:O})}),(0,Z.jsx)(`div`,{className:`min-w-0 flex-1 overflow-y-auto`,children:j.isLoading?(0,Z.jsx)(Ye,{}):j.isError?(0,Z.jsx)(Xe,{}):U.length===0?(0,Z.jsx)(Ze,{filter:f,category:h}):(0,Z.jsx)(`ul`,{className:`flex flex-col gap-2`,children:U.map(e=>(0,Z.jsx)(`li`,{children:(0,Z.jsx)(ze,{skill:e,onSelect:()=>v(e.id),onInstall:()=>I(e),onRemove:()=>L(e),isInstalling:y===(e.slug??e.id),isRemoving:x===e.id})},e.id))})})]}),G]})}function qe(e,t,n){return(0,X.useMemo)(()=>{if(t&&Object.keys(t).length>0)return{counts:t,totalCount:n??e.length};let r={};for(let t of e){let e=t.category??`system`;r[e]=(r[e]??0)+1}return{counts:r,totalCount:n??e.length}},[e,t,n])}function Je({onDismiss:e}){return(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg px-4 py-2.5 text-body-small-default`,style:{backgroundColor:`var(--surface-base)`,color:`var(--content-secondary)`},children:[(0,Z.jsx)(G,{className:`h-4 w-4 shrink-0`,style:{color:`var(--primary-base)`}}),(0,Z.jsx)(`p`,{className:`flex-1`,children:`You can create a new custom skill by describing what you want in chat.`}),(0,Z.jsx)(u,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Z.jsx)(N,{"aria-hidden":!0}),onClick:e,"aria-label":`Dismiss tip`,tintColor:`var(--content-tertiary)`,expandOnMobile:!1})]})}function Ye(){return(0,Z.jsx)(`div`,{className:`flex items-center justify-center py-16`,children:(0,Z.jsx)(M,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})})}function Xe(){return(0,Z.jsx)(d.Root,{children:(0,Z.jsxs)(d.Body,{className:`flex flex-col items-center justify-center py-16 text-center`,children:[(0,Z.jsx)(z,{className:`mb-3 h-8 w-8`,style:{color:`var(--system-danger)`},"aria-hidden":!0}),(0,Z.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:`Failed to load skills`}),(0,Z.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Something went wrong. Try refreshing the page.`})]})})}function Ze({filter:e,category:t}){let{title:n,subtitle:r,Icon:i}=Qe(e,t);return(0,Z.jsx)(d.Root,{children:(0,Z.jsxs)(d.Body,{className:`flex flex-col items-center justify-center py-16 text-center`,children:[(0,Z.jsx)(i,{className:`mb-3 h-8 w-8`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0}),(0,Z.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:n}),(0,Z.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:r})]})})}function Qe(e,t){if(t)return{title:`No skills in this category`,subtitle:`Try selecting a different category or clearing the filter.`,Icon:W};switch(e){case`installed`:return{title:`No Skills Installed`,subtitle:`Ask your assistant in chat to search for and install new skills.`,Icon:Y};case`available`:return{title:`No Skills Available`,subtitle:`All available skills have been installed.`,Icon:J};case`vellum`:return{title:`No Vellum Skills`,subtitle:`No bundled Vellum skills found.`,Icon:le};case`clawhub`:return{title:`No Clawhub Skills`,subtitle:`No Clawhub skills found. Try searching the catalog.`,Icon:A};case`skillssh`:return{title:`No skills.sh Skills`,subtitle:`No skills.sh skills found. Try searching the catalog.`,Icon:me};case`custom`:return{title:`No Custom Skills`,subtitle:`Create a custom skill by describing what you want in chat.`,Icon:V};default:return{title:`No Skills Available`,subtitle:`Check your connection to the Vellum catalog.`,Icon:O}}}function $e(){let e=he(),[t]=a();return(0,Z.jsx)(Ke,{assistantId:e,initialSkillId:t.get(`skill`)??void 0})}export{$e as SkillsPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{n}from"./QueryClientProvider-DKhXIxGb.js";import{t as r}from"./useQuery-B45lW1Kk.js";import{t as i}from"./useMutation-Lj4VunQV.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./card-CL5iEMJO.js";import{t as s}from"./toggle-CEm3M86o.js";import{qn as c}from"./sdk.gen-qH7wLOCJ.js";import{$ as l,Y as u,Z as d,et as f}from"./react-query.gen-CawmQR-A.js";import{n as p}from"./api-errors-CsfCFJ8r.js";import{Ri as m,oa as h,so as g}from"./index-BKOx2d-L.js";import{t as _}from"./use-active-assistant-id-Bdecq9LQ.js";var v=e(t(),1),y=[`aiff`,`wav`,`mp3`,`m4a`,`caf`],b=[`task_complete`,`needs_input`,`task_failed`,`notification`,`new_conversation`,`message_sent`,`character_poke`,`random`],x={task_complete:`Task Complete`,needs_input:`Needs Input`,task_failed:`Task Failed`,notification:`Notification`,new_conversation:`New Conversation`,message_sent:`Message Sent`,character_poke:`Character Poke`,random:`Random`};function S(){let e={};for(let t of b)e[t]={enabled:!1,sounds:[]};return{globalEnabled:!1,volume:.7,events:e}}function C(e){let t=e.lastIndexOf(`.`);return t<0||t===e.length-1?``:e.slice(t+1).toLowerCase()}function w(e){let t=C(e);return y.includes(t)}function T(e){return!e||e.includes(`/`)||e.includes(`\\`)||e.includes(`..`)?!1:w(e)}function E(e){let t=e.lastIndexOf(`.`);return t<=0?e:e.slice(0,t)}var D=`data/sounds`;async function O(e,t){if(!T(t))return null;try{let{data:n,error:r,response:i}=await c({path:{assistant_id:e},query:{path:`${D}/${t}`},parseAs:`blob`,throwOnError:!1});return p(i,r,`Failed to fetch sound file`),!i.ok||!n?null:n}catch{return null}}function k(e){return Number.isFinite(e)?e<0?0:e>1?1:e:.7}var A=class{assistantId=null;config=null;featureEnabled=!1;cache=new Map;pendingFetches=new Map;audioContext=null;setAssistantId(e){e!==this.assistantId&&(this.assistantId=e,this.clearCache())}setConfig(e){this.config=e}setFeatureEnabled(e){this.featureEnabled=e}async play(e){if(!this.featureEnabled)return;let t=this.config;if(!t||!t.globalEnabled)return;let n=t.events[e];if(!n?.enabled)return;let r=k(t.volume),i=n.sounds.filter(T);if(i.length===0){this.playFallbackBlip(r);return}let a=i[Math.floor(Math.random()*i.length)];if(!a){this.playFallbackBlip(r);return}await this.playFile(a,r)||this.playFallbackBlip(r)}async previewSound(e,t){if(!this.featureEnabled)return;let n=k(t??this.config?.volume??.7);await this.playFile(e,n)||this.playFallbackBlip(n)}async previewFallbackBlip(e){if(!this.featureEnabled)return;let t=k(e??this.config?.volume??.7);this.playFallbackBlip(t)}clearCache(){for(let e of this.cache.values())URL.revokeObjectURL(e.url);this.cache.clear(),this.pendingFetches.clear()}async playFile(e,t){if(!T(e))return!1;let n=await this.getOrFetch(e);if(!n)return!1;try{let e=new Audio(n.url);return e.volume=t,await e.play(),!0}catch{return!1}}async getOrFetch(e){let t=this.cache.get(e);if(t)return t;let n=this.pendingFetches.get(e);if(n)return n;let r=this.assistantId;if(!r)return null;let i=(async()=>{try{let t=await O(r,e);if(!t)return null;let n={url:URL.createObjectURL(t)};return this.cache.set(e,n),n}finally{this.pendingFetches.delete(e)}})();return this.pendingFetches.set(e,i),i}playFallbackBlip(e){if(!(typeof window>`u`))try{let t=window.AudioContext||window.webkitAudioContext;if(!t)return;this.audioContext||=new t;let n=this.audioContext;n.state===`suspended`&&n.resume();let r=n.createOscillator(),i=n.createGain();r.type=`sine`,r.frequency.setValueAtTime(880,n.currentTime);let a=Math.max(0,Math.min(1,e))*.25;i.gain.setValueAtTime(0,n.currentTime),i.gain.linearRampToValueAtTime(a,n.currentTime+.01),i.gain.exponentialRampToValueAtTime(1e-4,n.currentTime+.18),r.connect(i),i.connect(n.destination),r.start(),r.stop(n.currentTime+.2)}catch{}}},j=null;function M(){return j||=new A,j}var N=a();function P({label:e,description:t,checked:n,disabled:r,onChange:i}){return(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-3 py-1`,children:[(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e}),t&&(0,N.jsx)(`div`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:t})]}),(0,N.jsx)(s,{checked:n,disabled:r,onChange:i,label:e})]})}function F(){return(0,N.jsx)(`div`,{className:`border-t border-[var(--border-base)]`})}function I({event:e,eventConfig:t,availableSounds:n,globalEnabled:r,onToggle:i,onAddSound:a,onRemoveSound:o,onPreview:c}){let[l,u]=(0,v.useState)(!1),d=n.filter(e=>!t.sounds.includes(e.filename)),f=n.length>0&&d.length===0;return(0,N.jsxs)(`div`,{className:`py-3`,children:[(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,N.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:x[e]}),(0,N.jsx)(s,{checked:t.enabled,disabled:!r,onChange:i,label:`Enable ${x[e]}`})]}),t.enabled&&(0,N.jsxs)(`div`,{className:`mt-2 space-y-1 pl-2`,children:[t.sounds.length===0?(0,N.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Default Blip`}):t.sounds.map(e=>(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,N.jsx)(`span`,{className:`truncate text-body-small-default text-[var(--content-secondary)]`,title:e,children:E(e)}),(0,N.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(`button`,{type:`button`,onClick:()=>c(e),className:`inline-flex items-center rounded-md px-1.5 py-0.5 text-body-small-default text-[var(--content-tertiary)] hover:bg-[var(--surface-base)] dark:text-[var(--content-disabled)] dark:hover:bg-[var(--ghost-hover)]`,"aria-label":`Preview ${e}`,children:(0,N.jsx)(h,{className:`h-3 w-3`})}),(0,N.jsx)(`button`,{type:`button`,onClick:()=>o(e),className:`inline-flex items-center rounded-md px-1.5 py-0.5 text-body-small-default text-[var(--content-tertiary)] hover:bg-[var(--surface-base)] dark:text-[var(--content-disabled)] dark:hover:bg-[var(--ghost-hover)]`,"aria-label":`Remove ${e}`,children:(0,N.jsx)(m,{className:`h-3 w-3`})})]})]},e)),n.length===0?(0,N.jsx)(`p`,{className:`text-body-small-default italic text-[var(--content-disabled)]`,children:`No sound files yet. Drop audio files into data/sounds/ in your workspace.`}):f?(0,N.jsx)(`button`,{type:`button`,disabled:!0,className:`inline-flex items-center gap-1 rounded-md border border-[var(--border-base)] bg-white px-2 py-1 text-body-small-default text-[var(--content-disabled)] disabled:cursor-not-allowed dark:bg-[var(--surface-lift)] dark:text-[var(--content-tertiary)]`,children:`All sounds added`}):(0,N.jsxs)(`div`,{className:`relative inline-block`,children:[(0,N.jsxs)(`button`,{type:`button`,onClick:()=>u(e=>!e),className:`inline-flex items-center gap-1 rounded-md border border-[var(--border-base)] bg-white px-2 py-1 text-body-small-default text-[var(--content-default)] hover:bg-[var(--surface-base)] dark:bg-[var(--surface-lift)] dark:hover:bg-[var(--ghost-hover)]`,children:[`Add sound`,(0,N.jsx)(g,{className:`h-3 w-3`})]}),l&&(0,N.jsx)(`div`,{className:`absolute left-0 z-10 mt-1 max-h-64 w-56 overflow-auto rounded-md border border-[var(--border-base)] bg-white p-1 shadow-lg dark:bg-[var(--surface-lift)]`,onMouseLeave:()=>u(!1),children:d.map(e=>(0,N.jsx)(`button`,{type:`button`,onClick:()=>{a(e.filename),u(!1)},className:`block w-full truncate rounded px-2 py-1 text-left text-body-small-default text-[var(--content-default)] hover:bg-[var(--surface-base)] dark:hover:bg-[var(--ghost-hover)]`,title:e.filename,children:e.label},e.filename))})]})]})]})}function L(){let e=n(),t=_(),a=(0,v.useMemo)(()=>d({path:{assistant_id:t}}),[t]),s=(0,v.useMemo)(()=>u({path:{assistant_id:t}}),[t]),{data:c}=r(a),{data:p}=r(s),m=c??S(),g=p?.sounds??[],y=(0,v.useMemo)(()=>({path:{assistant_id:t}}),[t]),x=i({...f(y),onMutate:async t=>{await e.cancelQueries({queryKey:a.queryKey});let n=e.getQueryData(a.queryKey);return l(e,y,t.body),{previous:n}},onError:(t,n,r)=>{r?.previous!==void 0&&l(e,y,r.previous)},onSettled:()=>{e.invalidateQueries({queryKey:a.queryKey})}});(0,v.useEffect)(()=>{let e=M();return e.setAssistantId(t||null),e.setConfig(m),e.setFeatureEnabled(!0),()=>{e.setFeatureEnabled(!1)}},[t,m]);let C=(0,v.useCallback)(n=>{let r=n(e.getQueryData(a.queryKey)??S());x.mutate({path:{assistant_id:t},body:r})},[t,a.queryKey,e,x]),w=e=>{C(t=>({...t,globalEnabled:e}))},T=e=>{C(t=>({...t,volume:e}))},[E,D]=(0,v.useState)(null),O=E??m.volume,k=(e,t)=>{C(n=>({...n,events:{...n.events,[e]:{...n.events[e]??{enabled:!1,sounds:[]},enabled:t}}}))},A=(e,t)=>{C(n=>{let r=n.events[e]??{enabled:!0,sounds:[]};return r.sounds.includes(t)?n:{...n,events:{...n.events,[e]:{...r,sounds:[...r.sounds,t]}}}})},j=(e,t)=>{C(n=>{let r=n.events[e];return r?{...n,events:{...n.events,[e]:{...r,sounds:r.sounds.filter(e=>e!==t)}}}:n})},L=()=>{M().previewFallbackBlip(m.volume)},R=e=>{M().previewSound(e,m.volume)};return(0,N.jsxs)(`div`,{className:`space-y-6`,children:[(0,N.jsxs)(o,{children:[(0,N.jsx)(P,{label:`Enable sound effects`,description:`Master switch for every event-driven sound.`,checked:m.globalEnabled,onChange:w}),(0,N.jsx)(F,{}),(0,N.jsxs)(`div`,{className:`flex items-center gap-3 py-3`,children:[(0,N.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:`Volume`}),(0,N.jsx)(`input`,{type:`range`,min:0,max:1,step:.05,value:O,onChange:e=>D(parseFloat(e.target.value)),onPointerUp:e=>{let t=parseFloat(e.currentTarget.value);D(null),t!==m.volume&&T(t)},onKeyUp:e=>{let t=parseFloat(e.currentTarget.value);D(null),t!==m.volume&&T(t)},onBlur:e=>{let t=parseFloat(e.currentTarget.value);D(null),t!==m.volume&&T(t)},className:`h-1 w-48 cursor-pointer`,disabled:!m.globalEnabled,"aria-label":`Sound effect volume`}),(0,N.jsxs)(`span`,{className:`tabular-nums text-body-small-default text-[var(--content-tertiary)]`,children:[Math.round(O*100),`%`]})]}),(0,N.jsx)(F,{}),(0,N.jsxs)(`div`,{className:`flex items-center justify-between py-3`,children:[(0,N.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:`Preview default blip`}),(0,N.jsxs)(`button`,{type:`button`,onClick:L,disabled:!m.globalEnabled,className:`inline-flex items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-white px-3 py-1.5 text-body-medium-lighter text-[var(--content-default)] hover:bg-[var(--surface-base)] disabled:cursor-not-allowed disabled:opacity-50 dark:bg-[var(--surface-lift)] dark:hover:bg-[var(--ghost-hover)]`,children:[(0,N.jsx)(h,{className:`h-3.5 w-3.5`}),`Preview`]})]})]}),(0,N.jsxs)(o,{children:[(0,N.jsxs)(`div`,{className:`pb-2`,children:[(0,N.jsx)(`h3`,{className:`text-title-small text-[var(--content-default)]`,children:`Sound Events`}),(0,N.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Add one or more sounds per event. When multiple are configured, one plays at random.`})]}),(0,N.jsx)(`div`,{className:`divide-y divide-[var(--border-base)]`,children:b.map(e=>(0,N.jsx)(I,{event:e,eventConfig:m.events[e]??{enabled:!1,sounds:[]},availableSounds:g,globalEnabled:m.globalEnabled,onToggle:t=>k(e,t),onAddSound:t=>A(e,t),onRemoveSound:t=>j(e,t),onPreview:e=>R(e)},e))})]})]})}export{L as SoundsPage};
@@ -1 +0,0 @@
1
- import{t as e}from"./jsx-runtime-CVSDxk6A.js";var t=e();function n({current:e,total:n}){return(0,t.jsx)(`div`,{className:`flex items-center gap-1.5`,role:`group`,"aria-label":`Step ${e+1} of ${n}`,children:Array.from({length:n},(n,r)=>(0,t.jsx)(`div`,{"aria-hidden":`true`,className:`h-[3px] w-8 rounded-full transition-colors ${r<=e?`bg-[var(--content-default)]`:`bg-[var(--content-default)] opacity-20`}`},r))})}export{n as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{r as n}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import"./src-DOuqBUBT.js";import{t as i}from"./notice-CF2pptne.js";import{t as a}from"./tag-Ccr7Quy6.js";import{t as o}from"./loader-circle-BwqYfFHZ.js";import{a as s}from"./routes-DLEaIDYY.js";import{In as c,Li as l,Qa as u,Rn as d,Ut as f,eo as p,go as m,io as h,so as g}from"./index-BKOx2d-L.js";import{t as _}from"./use-active-assistant-id-Bdecq9LQ.js";var v=e(t(),1),y=r();function b(e){switch(e){case`lifecycle`:return`Lifecycle`;case`upgrade`:return`Upgrade`;case`rollback`:return`Rollback`;case`crash`:return`Crash`;case`idle_sleep`:return`Idle Sleep`;case`wake`:return`Wake`;case`profiler`:return`Profiler`;case`other`:return`Other`;default:return e}}function x(e){switch(e){case`started`:return`Started`;case`succeeded`:return`Succeeded`;case`failed`:return`Failed`;case`in_progress`:return`In Progress`;default:return e}}function S(e){return e===`succeeded`}function C(e){return e===`failed`}function w(e){return new Date(e).toLocaleString(void 0,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}function T(e){if(e.type!==`idle_sleep`)return!1;let t=e.details?.idle_timeout_seconds;return typeof t==`number`&&t>=21600}function E(e,t){switch(e){case`wake`:return`positive`;case`rollback`:return`warning`;case`crash`:return`negative`;case`idle_sleep`:return t&&T(t)?`warning`:`neutral`;default:return`neutral`}}function D({type:e,event:t}){return(0,y.jsx)(a,{tone:E(e,t),children:b(e)})}function O({status:e}){let t=x(e);return S(e)?(0,y.jsx)(a,{tone:`positive`,leftIcon:(0,y.jsx)(h,{}),children:t}):C(e)?(0,y.jsx)(a,{tone:`negative`,leftIcon:(0,y.jsx)(p,{}),children:t}):(0,y.jsx)(a,{tone:`neutral`,children:t})}function k({event:e}){let[t,n]=(0,v.useState)(!1),r=e.details!==null&&e.details!==void 0&&Object.keys(e.details).length>0;return(0,y.jsxs)(`div`,{className:`rounded-xl border p-4`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`},children:[(0,y.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between`,children:[(0,y.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1.5`,children:[(0,y.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.display_text}),(0,y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,y.jsx)(D,{type:e.type,event:e}),(0,y.jsx)(O,{status:e.event_status}),T(e)&&(0,y.jsx)(a,{tone:`warning`,leftIcon:(0,y.jsx)(l,{className:`h-3 w-3`}),children:`Long sleep`})]})]}),(0,y.jsxs)(`div`,{className:`text-body-small-default flex shrink-0 items-center gap-1.5`,style:{color:`var(--content-tertiary)`},children:[(0,y.jsx)(u,{className:`h-3 w-3`}),(0,y.jsx)(`span`,{children:w(e.occurred_at)})]})]}),r&&(0,y.jsxs)(`div`,{className:`mt-2`,children:[(0,y.jsxs)(`button`,{type:`button`,onClick:()=>n(e=>!e),className:`text-body-small-default flex items-center gap-1`,style:{color:`var(--content-tertiary)`},children:[(0,y.jsx)(g,{className:`h-3 w-3 transition-transform ${t?`rotate-180`:``}`}),t?`Hide details`:`Show details`]}),t&&(0,y.jsx)(`pre`,{className:`mt-2 overflow-x-auto rounded-md p-3 text-body-small-default`,style:{background:`var(--surface-base)`,color:`var(--content-default)`},children:JSON.stringify(e.details,null,2)})]})]})}function A({assistantId:e}){let{data:t,isLoading:n,isError:r,isFetchingNextPage:i,hasNextPage:a,fetchNextPage:s}=m({...f({path:{assistant_id:e}}),initialPageParam:0,getNextPageParam:(e,t)=>{if(e.next)return t.reduce((e,t)=>e+t.results.length,0)}}),c=t?.pages.flatMap(e=>e.results)??[];return(0,y.jsxs)(`div`,{className:`space-y-4`,children:[(0,y.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Lifecycle events for your assistant from the last 30 days, newest first.`}),n?(0,y.jsxs)(`div`,{className:`text-body-medium-lighter flex items-center gap-2`,style:{color:`var(--content-tertiary)`},children:[(0,y.jsx)(o,{className:`h-4 w-4 animate-spin`}),`Loading system events...`]}):r?(0,y.jsxs)(`div`,{className:`text-body-medium-lighter flex items-center gap-2`,style:{color:`var(--system-negative-strong)`},children:[(0,y.jsx)(l,{className:`h-4 w-4 shrink-0`}),`Failed to load system events. Please refresh and try again.`]}):c.length===0?(0,y.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`No system events recorded in the last 30 days.`}):(0,y.jsxs)(`div`,{className:`space-y-2`,children:[c.map(e=>(0,y.jsx)(k,{event:e},e.id)),a&&(0,y.jsx)(`div`,{className:`pt-2 text-center`,children:(0,y.jsx)(`button`,{type:`button`,onClick:()=>s(),disabled:i,className:`text-body-medium-default flex w-full items-center justify-center gap-2 rounded-md border px-4 py-2 transition-colors disabled:cursor-not-allowed disabled:opacity-50`,style:{borderColor:`var(--border-element)`,color:`var(--content-secondary)`},children:i?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(o,{className:`h-4 w-4 animate-spin`}),`Loading older events...`]}):`Load older events`})})]})]})}function j(){let e=d({platformHostedOnly:!0}),t=c(),r=_();return e===`gated`?(0,y.jsx)(n,{replace:!0,to:s.logs.root}):e===`disabled`?(0,y.jsx)(i,{tone:`info`,children:`Log in to the Vellum platform to view system events.`}):t?(0,y.jsx)(A,{assistantId:r}):(0,y.jsx)(i,{tone:`warning`,children:`System events aren't available for the current assistant.`})}export{j as SystemEventsPage};
@@ -1 +0,0 @@
1
- import{w as e}from"./portal-container-DIXEBWUe.js";import{t}from"./jsx-runtime-CVSDxk6A.js";import{t as n}from"./cn-DFqQkJlk.js";import{t as r}from"./x-CaVViVFn.js";var i=t(),a=e([`inline-flex items-center gap-1 h-6 px-2 py-1 rounded-[6px] whitespace-nowrap select-none`,`text-body-small-emphasised leading-none`,`text-[color:var(--content-default)]`].join(` `),{variants:{tone:{positive:`bg-[var(--system-positive-weak)]`,negative:`bg-[var(--system-negative-weak)]`,warning:`bg-[var(--system-mid-weak)]`,neutral:`bg-[var(--tag-bg-neutral)]`}},defaultVariants:{tone:`neutral`}}),o={positive:`var(--system-positive-strong)`,negative:`var(--system-negative-strong)`,warning:`var(--system-mid-strong)`,neutral:`var(--content-secondary)`},s={width:12,height:12,flexShrink:0,display:`inline-flex`,alignItems:`center`,justifyContent:`center`};function c({tone:e=`neutral`,leftIcon:t,rightIcon:c,onRemove:l,removeLabel:u=`Remove`,className:d,children:f,ref:p,...m}){let h=o[e];return(0,i.jsxs)(`span`,{...m,ref:p,"data-slot":`tag`,className:n(a({tone:e}),d),children:[t==null?null:(0,i.jsx)(`span`,{"aria-hidden":`true`,style:{...s,color:h},children:t}),f,c!=null&&l==null?(0,i.jsx)(`span`,{"aria-hidden":`true`,style:{...s,color:`var(--content-secondary)`},children:c}):null,l==null?null:(0,i.jsx)(`button`,{type:`button`,"aria-label":u,onClick:e=>{e.stopPropagation(),l(e)},className:n(`inline-flex items-center justify-center rounded-full`,`h-3.5 w-3.5 -mr-0.5 cursor-pointer`,`text-[color:var(--content-secondary)]`,`transition-colors duration-150`,`hover:bg-[color-mix(in_srgb,currentColor_15%,transparent)]`,`focus-visible:outline-none`),children:(0,i.jsx)(r,{style:s,"aria-hidden":`true`})})]})}export{c as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{T as n}from"./portal-container-DIXEBWUe.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import{t as i}from"./cn-DFqQkJlk.js";import{i as a,n as o,r as s,t as c}from"./octagon-x-DV9qasaC.js";import{t as l}from"./x-CaVViVFn.js";var u=e(t(),1),d=e(n(),1);function f(e){if(!e||typeof document>`u`)return;let t=document.head||document.getElementsByTagName(`head`)[0],n=document.createElement(`style`);n.type=`text/css`,t.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}var p=e=>{switch(e){case`success`:return h;case`info`:return _;case`warning`:return g;case`error`:return v;default:return null}},m=Array(12).fill(0),ee=({visible:e,className:t})=>u.createElement(`div`,{className:[`sonner-loading-wrapper`,t].filter(Boolean).join(` `),"data-visible":e},u.createElement(`div`,{className:`sonner-spinner`},m.map((e,t)=>u.createElement(`div`,{className:`sonner-loading-bar`,key:`spinner-bar-${t}`})))),h=u.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`},u.createElement(`path`,{fillRule:`evenodd`,d:`M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z`,clipRule:`evenodd`})),g=u.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`currentColor`,height:`20`,width:`20`},u.createElement(`path`,{fillRule:`evenodd`,d:`M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z`,clipRule:`evenodd`})),_=u.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`},u.createElement(`path`,{fillRule:`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z`,clipRule:`evenodd`})),v=u.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`},u.createElement(`path`,{fillRule:`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z`,clipRule:`evenodd`})),y=u.createElement(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`},u.createElement(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),u.createElement(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})),te=()=>{let[e,t]=u.useState(document.hidden);return u.useEffect(()=>{let e=()=>{t(document.hidden)};return document.addEventListener(`visibilitychange`,e),()=>window.removeEventListener(`visibilitychange`,e)},[]),e},b=1,x=new class{constructor(){this.subscribe=e=>(this.subscribers.push(e),()=>{let t=this.subscribers.indexOf(e);this.subscribers.splice(t,1)}),this.publish=e=>{this.subscribers.forEach(t=>t(e))},this.addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]},this.create=e=>{let{message:t,...n}=e,r=typeof e?.id==`number`||e.id?.length>0?e.id:b++,i=this.toasts.find(e=>e.id===r),a=e.dismissible===void 0?!0:e.dismissible;return this.dismissedToasts.has(r)&&this.dismissedToasts.delete(r),i?this.toasts=this.toasts.map(n=>n.id===r?(this.publish({...n,...e,id:r,title:t}),{...n,...e,id:r,dismissible:a,title:t}):n):this.addToast({title:t,...n,dismissible:a,id:r}),r},this.dismiss=e=>(e?(this.dismissedToasts.add(e),requestAnimationFrame(()=>this.subscribers.forEach(t=>t({id:e,dismiss:!0})))):this.toasts.forEach(e=>{this.subscribers.forEach(t=>t({id:e.id,dismiss:!0}))}),e),this.message=(e,t)=>this.create({...t,message:e}),this.error=(e,t)=>this.create({...t,message:e,type:`error`}),this.success=(e,t)=>this.create({...t,type:`success`,message:e}),this.info=(e,t)=>this.create({...t,type:`info`,message:e}),this.warning=(e,t)=>this.create({...t,type:`warning`,message:e}),this.loading=(e,t)=>this.create({...t,type:`loading`,message:e}),this.promise=(e,t)=>{if(!t)return;let n;t.loading!==void 0&&(n=this.create({...t,promise:e,type:`loading`,message:t.loading,description:typeof t.description==`function`?void 0:t.description}));let r=Promise.resolve(e instanceof Function?e():e),i=n!==void 0,a,o=r.then(async e=>{if(a=[`resolve`,e],u.isValidElement(e))i=!1,this.create({id:n,type:`default`,message:e});else if(C(e)&&!e.ok){i=!1;let r=typeof t.error==`function`?await t.error(`HTTP error! status: ${e.status}`):t.error,a=typeof t.description==`function`?await t.description(`HTTP error! status: ${e.status}`):t.description,o=typeof r==`object`&&!u.isValidElement(r)?r:{message:r};this.create({id:n,type:`error`,description:a,...o})}else if(e instanceof Error){i=!1;let r=typeof t.error==`function`?await t.error(e):t.error,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!u.isValidElement(r)?r:{message:r};this.create({id:n,type:`error`,description:a,...o})}else if(t.success!==void 0){i=!1;let r=typeof t.success==`function`?await t.success(e):t.success,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!u.isValidElement(r)?r:{message:r};this.create({id:n,type:`success`,description:a,...o})}}).catch(async e=>{if(a=[`reject`,e],t.error!==void 0){i=!1;let r=typeof t.error==`function`?await t.error(e):t.error,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!u.isValidElement(r)?r:{message:r};this.create({id:n,type:`error`,description:a,...o})}}).finally(()=>{i&&(this.dismiss(n),n=void 0),t.finally==null||t.finally.call(t)}),s=()=>new Promise((e,t)=>o.then(()=>a[0]===`reject`?t(a[1]):e(a[1])).catch(t));return typeof n!=`string`&&typeof n!=`number`?{unwrap:s}:Object.assign(n,{unwrap:s})},this.custom=(e,t)=>{let n=t?.id||b++;return this.create({jsx:e(n),id:n,...t}),n},this.getActiveToasts=()=>this.toasts.filter(e=>!this.dismissedToasts.has(e.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}},S=(e,t)=>{let n=t?.id||b++;return x.addToast({title:e,...t,id:n}),n},C=e=>e&&typeof e==`object`&&`ok`in e&&typeof e.ok==`boolean`&&`status`in e&&typeof e.status==`number`,w=Object.assign(S,{success:x.success,info:x.info,warning:x.warning,error:x.error,custom:x.custom,message:x.message,promise:x.promise,dismiss:x.dismiss,loading:x.loading},{getHistory:()=>x.toasts,getToasts:()=>x.getActiveToasts()});f(`[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}`);function T(e){return e.label!==void 0}var E=3,D=`24px`,O=`16px`,k=4e3,ne=356,A=14,j=45,M=200;function N(...e){return e.filter(Boolean).join(` `)}function re(e){let[t,n]=e.split(`-`),r=[];return t&&r.push(t),n&&r.push(n),r}var P=e=>{let{invert:t,toast:n,unstyled:r,interacting:i,setHeights:a,visibleToasts:o,heights:s,index:c,toasts:l,expanded:d,removeToast:f,defaultRichColors:m,closeButton:h,style:g,cancelButtonStyle:_,actionButtonStyle:v,className:b=``,descriptionClassName:x=``,duration:S,position:C,gap:w,expandByDefault:E,classNames:D,icons:O,closeButtonAriaLabel:ne=`Close toast`}=e,[A,P]=u.useState(null),[F,ie]=u.useState(null),[I,L]=u.useState(!1),[R,z]=u.useState(!1),[B,V]=u.useState(!1),[H,ae]=u.useState(!1),[oe,se]=u.useState(!1),[ce,U]=u.useState(0),[le,ue]=u.useState(0),W=u.useRef(n.duration||S||k),de=u.useRef(null),G=u.useRef(null),fe=c===0,pe=c+1<=o,K=n.type,q=n.dismissible!==!1,me=n.className||``,he=n.descriptionClassName||``,J=u.useMemo(()=>s.findIndex(e=>e.toastId===n.id)||0,[s,n.id]),ge=u.useMemo(()=>n.closeButton??h,[n.closeButton,h]),_e=u.useMemo(()=>n.duration||S||k,[n.duration,S]),Y=u.useRef(0),X=u.useRef(0),ve=u.useRef(0),Z=u.useRef(null),[ye,be]=C.split(`-`),xe=u.useMemo(()=>s.reduce((e,t,n)=>n>=J?e:e+t.height,0),[s,J]),Se=te(),Ce=n.invert||t,Q=K===`loading`;X.current=u.useMemo(()=>J*w+xe,[J,xe]),u.useEffect(()=>{W.current=_e},[_e]),u.useEffect(()=>{L(!0)},[]),u.useEffect(()=>{let e=G.current;if(e){let t=e.getBoundingClientRect().height;return ue(t),a(e=>[{toastId:n.id,height:t,position:n.position},...e]),()=>a(e=>e.filter(e=>e.toastId!==n.id))}},[a,n.id]),u.useLayoutEffect(()=>{if(!I)return;let e=G.current,t=e.style.height;e.style.height=`auto`;let r=e.getBoundingClientRect().height;e.style.height=t,ue(r),a(e=>e.find(e=>e.toastId===n.id)?e.map(e=>e.toastId===n.id?{...e,height:r}:e):[{toastId:n.id,height:r,position:n.position},...e])},[I,n.title,n.description,a,n.id,n.jsx,n.action,n.cancel]);let $=u.useCallback(()=>{z(!0),U(X.current),a(e=>e.filter(e=>e.toastId!==n.id)),setTimeout(()=>{f(n)},M)},[n,f,a,X]);u.useEffect(()=>{if(n.promise&&K===`loading`||n.duration===1/0||n.type===`loading`)return;let e;return d||i||Se?(()=>{if(ve.current<Y.current){let e=new Date().getTime()-Y.current;W.current-=e}ve.current=new Date().getTime()})():W.current!==1/0&&(Y.current=new Date().getTime(),e=setTimeout(()=>{n.onAutoClose==null||n.onAutoClose.call(n,n),$()},W.current)),()=>clearTimeout(e)},[d,i,n,K,Se,$]),u.useEffect(()=>{n.delete&&($(),n.onDismiss==null||n.onDismiss.call(n,n))},[$,n.delete]);function we(){return O?.loading?u.createElement(`div`,{className:N(D?.loader,n?.classNames?.loader,`sonner-loader`),"data-visible":K===`loading`},O.loading):u.createElement(ee,{className:N(D?.loader,n?.classNames?.loader),visible:K===`loading`})}let Te=n.icon||O?.[K]||p(K);return u.createElement(`li`,{tabIndex:0,ref:G,className:N(b,me,D?.toast,n?.classNames?.toast,D?.default,D?.[K],n?.classNames?.[K]),"data-sonner-toast":``,"data-rich-colors":n.richColors??m,"data-styled":!(n.jsx||n.unstyled||r),"data-mounted":I,"data-promise":!!n.promise,"data-swiped":oe,"data-removed":R,"data-visible":pe,"data-y-position":ye,"data-x-position":be,"data-index":c,"data-front":fe,"data-swiping":B,"data-dismissible":q,"data-type":K,"data-invert":Ce,"data-swipe-out":H,"data-swipe-direction":F,"data-expanded":!!(d||E&&I),"data-testid":n.testId,style:{"--index":c,"--toasts-before":c,"--z-index":l.length-c,"--offset":`${R?ce:X.current}px`,"--initial-height":E?`auto`:`${le}px`,...g,...n.style},onDragEnd:()=>{V(!1),P(null),Z.current=null},onPointerDown:e=>{e.button!==2&&(Q||!q||(de.current=new Date,U(X.current),e.target.setPointerCapture(e.pointerId),e.target.tagName!==`BUTTON`&&(V(!0),Z.current={x:e.clientX,y:e.clientY})))},onPointerUp:()=>{if(H||!q)return;Z.current=null;let e=Number(G.current?.style.getPropertyValue(`--swipe-amount-x`).replace(`px`,``)||0),t=Number(G.current?.style.getPropertyValue(`--swipe-amount-y`).replace(`px`,``)||0),r=new Date().getTime()-de.current?.getTime(),i=A===`x`?e:t,a=Math.abs(i)/r;if(Math.abs(i)>=j||a>.11){U(X.current),n.onDismiss==null||n.onDismiss.call(n,n),ie(A===`x`?e>0?`right`:`left`:t>0?`down`:`up`),$(),ae(!0);return}else{var o,s;(o=G.current)==null||o.style.setProperty(`--swipe-amount-x`,`0px`),(s=G.current)==null||s.style.setProperty(`--swipe-amount-y`,`0px`)}se(!1),V(!1),P(null)},onPointerMove:t=>{var n,r;if(!Z.current||!q||window.getSelection()?.toString().length>0)return;let i=t.clientY-Z.current.y,a=t.clientX-Z.current.x,o=e.swipeDirections??re(C);!A&&(Math.abs(a)>1||Math.abs(i)>1)&&P(Math.abs(a)>Math.abs(i)?`x`:`y`);let s={x:0,y:0},c=e=>1/(1.5+Math.abs(e)/20);if(A===`y`){if(o.includes(`top`)||o.includes(`bottom`))if(o.includes(`top`)&&i<0||o.includes(`bottom`)&&i>0)s.y=i;else{let e=i*c(i);s.y=Math.abs(e)<Math.abs(i)?e:i}}else if(A===`x`&&(o.includes(`left`)||o.includes(`right`)))if(o.includes(`left`)&&a<0||o.includes(`right`)&&a>0)s.x=a;else{let e=a*c(a);s.x=Math.abs(e)<Math.abs(a)?e:a}(Math.abs(s.x)>0||Math.abs(s.y)>0)&&se(!0),(n=G.current)==null||n.style.setProperty(`--swipe-amount-x`,`${s.x}px`),(r=G.current)==null||r.style.setProperty(`--swipe-amount-y`,`${s.y}px`)}},ge&&!n.jsx&&K!==`loading`?u.createElement(`button`,{"aria-label":ne,"data-disabled":Q,"data-close-button":!0,onClick:Q||!q?()=>{}:()=>{$(),n.onDismiss==null||n.onDismiss.call(n,n)},className:N(D?.closeButton,n?.classNames?.closeButton)},O?.close??y):null,(K||n.icon||n.promise)&&n.icon!==null&&(O?.[K]!==null||n.icon)?u.createElement(`div`,{"data-icon":``,className:N(D?.icon,n?.classNames?.icon)},n.promise||n.type===`loading`&&!n.icon?n.icon||we():null,n.type===`loading`?null:Te):null,u.createElement(`div`,{"data-content":``,className:N(D?.content,n?.classNames?.content)},u.createElement(`div`,{"data-title":``,className:N(D?.title,n?.classNames?.title)},n.jsx?n.jsx:typeof n.title==`function`?n.title():n.title),n.description?u.createElement(`div`,{"data-description":``,className:N(x,he,D?.description,n?.classNames?.description)},typeof n.description==`function`?n.description():n.description):null),u.isValidElement(n.cancel)?n.cancel:n.cancel&&T(n.cancel)?u.createElement(`button`,{"data-button":!0,"data-cancel":!0,style:n.cancelButtonStyle||_,onClick:e=>{T(n.cancel)&&q&&(n.cancel.onClick==null||n.cancel.onClick.call(n.cancel,e),$())},className:N(D?.cancelButton,n?.classNames?.cancelButton)},n.cancel.label):null,u.isValidElement(n.action)?n.action:n.action&&T(n.action)?u.createElement(`button`,{"data-button":!0,"data-action":!0,style:n.actionButtonStyle||v,onClick:e=>{T(n.action)&&(n.action.onClick==null||n.action.onClick.call(n.action,e),!e.defaultPrevented&&$())},className:N(D?.actionButton,n?.classNames?.actionButton)},n.action.label):null)};function F(){if(typeof window>`u`||typeof document>`u`)return`ltr`;let e=document.documentElement.getAttribute(`dir`);return e===`auto`||!e?window.getComputedStyle(document.documentElement).direction:e}function ie(e,t){let n={};return[e,t].forEach((e,t)=>{let r=t===1,i=r?`--mobile-offset`:`--offset`,a=r?O:D;function o(e){[`top`,`right`,`bottom`,`left`].forEach(t=>{n[`${i}-${t}`]=typeof e==`number`?`${e}px`:e})}typeof e==`number`||typeof e==`string`?o(e):typeof e==`object`?[`top`,`right`,`bottom`,`left`].forEach(t=>{e[t]===void 0?n[`${i}-${t}`]=a:n[`${i}-${t}`]=typeof e[t]==`number`?`${e[t]}px`:e[t]}):o(a)}),n}var I=u.forwardRef(function(e,t){let{id:n,invert:r,position:i=`bottom-right`,hotkey:a=[`altKey`,`KeyT`],expand:o,closeButton:s,className:c,offset:l,mobileOffset:f,theme:p=`light`,richColors:m,duration:ee,style:h,visibleToasts:g=E,toastOptions:_,dir:v=F(),gap:y=A,icons:te,containerAriaLabel:b=`Notifications`}=e,[S,C]=u.useState([]),w=u.useMemo(()=>n?S.filter(e=>e.toasterId===n):S.filter(e=>!e.toasterId),[S,n]),T=u.useMemo(()=>Array.from(new Set([i].concat(w.filter(e=>e.position).map(e=>e.position)))),[w,i]),[D,O]=u.useState([]),[k,j]=u.useState(!1),[M,N]=u.useState(!1),[re,I]=u.useState(p===`system`?typeof window<`u`&&window.matchMedia&&window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:p),L=u.useRef(null),R=a.join(`+`).replace(/Key/g,``).replace(/Digit/g,``),z=u.useRef(null),B=u.useRef(!1),V=u.useCallback(e=>{C(t=>(t.find(t=>t.id===e.id)?.delete||x.dismiss(e.id),t.filter(({id:t})=>t!==e.id)))},[]);return u.useEffect(()=>x.subscribe(e=>{if(e.dismiss){requestAnimationFrame(()=>{C(t=>t.map(t=>t.id===e.id?{...t,delete:!0}:t))});return}setTimeout(()=>{d.flushSync(()=>{C(t=>{let n=t.findIndex(t=>t.id===e.id);return n===-1?[e,...t]:[...t.slice(0,n),{...t[n],...e},...t.slice(n+1)]})})})}),[S]),u.useEffect(()=>{if(p!==`system`){I(p);return}if(p===`system`&&(window.matchMedia&&window.matchMedia(`(prefers-color-scheme: dark)`).matches?I(`dark`):I(`light`)),typeof window>`u`)return;let e=window.matchMedia(`(prefers-color-scheme: dark)`);try{e.addEventListener(`change`,({matches:e})=>{I(e?`dark`:`light`)})}catch{e.addListener(({matches:e})=>{try{I(e?`dark`:`light`)}catch(e){console.error(e)}})}},[p]),u.useEffect(()=>{S.length<=1&&j(!1)},[S]),u.useEffect(()=>{let e=e=>{if(a.every(t=>e[t]||e.code===t)){var t;j(!0),(t=L.current)==null||t.focus()}e.code===`Escape`&&(document.activeElement===L.current||L.current?.contains(document.activeElement))&&j(!1)};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[a]),u.useEffect(()=>{if(L.current)return()=>{z.current&&(z.current.focus({preventScroll:!0}),z.current=null,B.current=!1)}},[L.current]),u.createElement(`section`,{ref:t,"aria-label":`${b} ${R}`,tabIndex:-1,"aria-live":`polite`,"aria-relevant":`additions text`,"aria-atomic":`false`,suppressHydrationWarning:!0},T.map((t,n)=>{let[i,a]=t.split(`-`);return w.length?u.createElement(`ol`,{key:t,dir:v===`auto`?F():v,tabIndex:-1,ref:L,className:c,"data-sonner-toaster":!0,"data-sonner-theme":re,"data-y-position":i,"data-x-position":a,style:{"--front-toast-height":`${D[0]?.height||0}px`,"--width":`${ne}px`,"--gap":`${y}px`,...h,...ie(l,f)},onBlur:e=>{B.current&&!e.currentTarget.contains(e.relatedTarget)&&(B.current=!1,z.current&&=(z.current.focus({preventScroll:!0}),null))},onFocus:e=>{e.target instanceof HTMLElement&&e.target.dataset.dismissible===`false`||B.current||(B.current=!0,z.current=e.relatedTarget)},onMouseEnter:()=>j(!0),onMouseMove:()=>j(!0),onMouseLeave:()=>{M||j(!1)},onDragEnd:()=>j(!1),onPointerDown:e=>{e.target instanceof HTMLElement&&e.target.dataset.dismissible===`false`||N(!0)},onPointerUp:()=>N(!1)},w.filter(e=>!e.position&&n===0||e.position===t).map((n,i)=>u.createElement(P,{key:n.id,icons:te,index:i,toast:n,defaultRichColors:m,duration:_?.duration??ee,className:_?.className,descriptionClassName:_?.descriptionClassName,invert:r,visibleToasts:g,closeButton:_?.closeButton??s,interacting:M,position:t,style:_?.style,unstyled:_?.unstyled,classNames:_?.classNames,cancelButtonStyle:_?.cancelButtonStyle,actionButtonStyle:_?.actionButtonStyle,closeButtonAriaLabel:_?.closeButtonAriaLabel,removeToast:V,toasts:w.filter(e=>e.position==n.position),heights:D.filter(e=>e.position==n.position),setHeights:O,expandByDefault:o,gap:y,expanded:k,swipeDirections:e.swipeDirections}))):null}))}),L=r(),R=new Set([`error`,`warning`]),z={default:{container:`bg-[var(--surface-lift)] border-[var(--border-base)] text-[var(--content-default)]`,icon:`text-[var(--content-tertiary)]`,iconElement:null},info:{container:`bg-[var(--surface-overlay)] border-[var(--border-element)] text-[var(--content-default)]`,icon:`text-[var(--content-secondary)]`,iconElement:(0,L.jsx)(o,{className:`h-4 w-4`})},warning:{container:`bg-[var(--system-mid-weak)] border-[var(--system-mid-strong)] text-[var(--system-mid-strong)]`,icon:`text-[var(--system-mid-strong)]`,iconElement:(0,L.jsx)(a,{className:`h-4 w-4`})},error:{container:`bg-[var(--system-negative-weak)] border-[var(--system-negative-strong)] text-[var(--system-negative-strong)]`,icon:`text-[var(--system-negative-strong)]`,iconElement:(0,L.jsx)(c,{className:`h-4 w-4`})},success:{container:`bg-[var(--system-positive-weak)] border-[var(--system-positive-strong)] text-[var(--system-positive-strong)]`,icon:`text-[var(--system-positive-strong)]`,iconElement:(0,L.jsx)(s,{className:`h-4 w-4`})}};function B({message:e,variant:t=`default`,options:n,onDismiss:r}){let a=z[t];return(0,L.jsxs)(`div`,{role:R.has(t)?`alert`:`status`,"data-slot":`toast`,className:i(`flex w-full max-h-[300px] items-start gap-3 rounded-lg border p-3 shadow-lg`,a.container),children:[a.iconElement?(0,L.jsx)(`span`,{className:i(`mt-0.5 shrink-0`,a.icon),children:a.iconElement}):null,(0,L.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[(0,L.jsx)(`p`,{className:`text-body-medium-default`,children:e}),n?.description?(0,L.jsx)(`p`,{className:`text-body-small-default opacity-70`,children:n.description}):null,n?.action?(0,L.jsx)(`button`,{type:`button`,onClick:()=>{n.action?.onClick(),r()},className:`mt-1.5 cursor-pointer bg-transparent text-body-small-default underline underline-offset-2 hover:no-underline`,children:n.action.label}):null]}),(0,L.jsx)(`button`,{type:`button`,onClick:r,"aria-label":`Close`,className:`shrink-0 cursor-pointer rounded bg-transparent p-0.5 opacity-50 transition-opacity hover:opacity-100`,children:(0,L.jsx)(l,{className:`h-3.5 w-3.5`,strokeWidth:2})})]})}function V(e,t=`default`,n){return w.custom(r=>(0,L.jsx)(B,{message:e,variant:t,options:n,onDismiss:()=>w.dismiss(r)}),{duration:n?.duration,id:n?.id})}var H=Object.assign((e,t)=>V(e,`default`,t),{info:(e,t)=>V(e,`info`,t),warning:(e,t)=>V(e,`warning`,t),error:(e,t)=>V(e,`error`,t),success:(e,t)=>V(e,`success`,t),custom:(e,t)=>w.custom(e,t),dismiss:e=>w.dismiss(e)});function ae(){return(0,L.jsx)(`div`,{"data-slot":`toaster`,children:(0,L.jsx)(I,{position:`bottom-right`,toastOptions:{unstyled:!0,style:{width:`356px`}}})})}export{H as n,ae as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./useQuery-B45lW1Kk.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import{t as i}from"./dropdown-CocFV5yi.js";import"./src-DOuqBUBT.js";import{t as a}from"./chevron-up-BuB8vDjx.js";import{t as o}from"./loader-circle-BwqYfFHZ.js";import{Bn as s}from"./sdk.gen-qH7wLOCJ.js";import{$a as c,Ai as l,Ir as u,Jn as d,Li as f,Oa as p,Qi as m,Yn as h,_a as g,at as _,eo as v,it as y,na as b,oo as x,po as S,qi as C,qn as w,ro as T,so as E,to as D,uo as ee,xa as te}from"./index-BKOx2d-L.js";import{t as O}from"./use-active-assistant-id-Bdecq9LQ.js";import{a as k,i as A,n as j,r as M}from"./format-DOj_VDWK.js";var N=e(t(),1),P={requestCount:0,llmCallCount:0,totalInputTokens:0,totalOutputTokens:0,averageLlmLatencyMs:0,toolFailureCount:0};function F(e,t){let n=e.attributes?.[t];if(typeof n==`number`&&Number.isFinite(n))return n;if(typeof n==`string`){let e=Number(n);if(Number.isFinite(e))return e}}function I(e){if(e.length===0)return P;let t=new Set,n=0,r=0,i=0,a=0,o=0,s=0;for(let c of e)switch(c.requestId&&t.add(c.requestId),c.kind){case`llm_call_finished`:{n+=1,r+=F(c,`inputTokens`)??0,i+=F(c,`outputTokens`)??0;let e=F(c,`latencyMs`);e!==void 0&&(a+=e,o+=1);break}case`tool_failed`:s+=1;break;default:break}return{requestCount:t.size,llmCallCount:n,totalInputTokens:r,totalOutputTokens:i,averageLlmLatencyMs:o>0?a/o:0,toolFailureCount:s}}function L(e){for(let t of e)switch(t.kind){case`generation_cancelled`:return`cancelled`;case`generation_handoff`:return`handedOff`;case`request_error`:return`error`;case`message_complete`:return`completed`;default:break}return e.some(e=>e.status===`error`)?`error`:`active`}function R(e){let t=new Map;for(let n of e){let e=n.requestId??``,r=t.get(e);r?(r.events.push(n),n.sequence<r.firstSequence&&(r.firstSequence=n.sequence)):t.set(e,{requestId:e,firstSequence:n.sequence,events:[n]})}for(let e of t.values())e.events.sort((e,t)=>e.sequence-t.sequence);return[...t.values()].sort((e,t)=>e.firstSequence-t.firstSequence)}function z(e){switch(e){case`request_received`:return D;case`request_queued`:case`request_dequeued`:return p;case`llm_call_started`:case`llm_call_finished`:return ee;case`assistant_message`:return g;case`tool_started`:case`tool_finished`:return l;case`tool_permission_requested`:return C;case`tool_permission_decided`:return te;case`tool_failed`:return f;case`generation_handoff`:return b;case`message_complete`:return T;case`generation_cancelled`:return v;case`request_error`:return x;default:return c}}function B(e){switch(e){case`error`:return`var(--system-negative-strong)`;case`warning`:return`var(--system-mid-strong)`;case`success`:return`var(--system-positive-strong)`;default:return`var(--content-tertiary)`}}function V(e){switch(e){case`active`:return{Icon:S,color:`var(--system-positive-strong)`};case`completed`:return{Icon:T,color:`var(--system-positive-strong)`};case`cancelled`:return{Icon:v,color:`var(--system-mid-strong)`};case`handedOff`:return{Icon:b,color:`var(--system-positive-strong)`};case`error`:return{Icon:f,color:`var(--system-negative-strong)`}}}function H(e){return e==null?`—`:typeof e==`string`?e:String(e)}var U=class extends Error{status;constructor(e,t){super(t),this.name=`TraceEventsRequestError`,this.status=e}};async function W(e,t){let{data:n,response:r}=await s({path:{assistant_id:e},query:{conversationId:t.conversationId,limit:t.limit,afterSequence:t.afterSequence},throwOnError:!1});if(!r?.ok){let e=await r?.clone().text().catch(()=>``);throw new U(r?.status??0,e||r?.statusText||`Failed to load trace events`)}return n??{events:[]}}var G=r(),K=500;function q({assistantId:e}){let[t,r]=(0,N.useState)(null),{conversations:i,isLoading:a,isError:s,error:c}=d(e),{conversations:l}=w(e,!0),{conversations:f}=h(e,!0),p=(0,N.useMemo)(()=>u(i,l,f).filter(e=>e.archivedAt==null),[i,l,f]),m=(0,N.useMemo)(()=>{if(t){let e=p.find(e=>e.conversationId===t);if(e)return e.conversationId}let n=y(e);if(n){let e=p.find(e=>e.conversationId===n);if(e)return e.conversationId}return p[0]?.conversationId??``},[e,p,t]),g=(0,N.useCallback)(t=>{r(t),_(e,t)},[e]),{data:v,isLoading:b,isError:x,error:S}=n({queryKey:[`trace-events`,e,m],queryFn:()=>W(e,{conversationId:m,limit:K}),enabled:m.length>0}),C=(0,N.useMemo)(()=>v?.events??[],[v]),T=(0,N.useMemo)(()=>I(C),[C]),E=(0,N.useMemo)(()=>R(C),[C]),D=p.length>0;return(0,G.jsx)(`div`,{className:`flex flex-col gap-6`,children:a?(0,G.jsx)(`div`,{className:`flex items-center justify-center py-16`,children:(0,G.jsx)(o,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-secondary)`}})}):s?(0,G.jsx)($,{message:c instanceof Error?c.message:`Failed to load conversations.`}):D?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(J,{conversations:p,selectedConversationId:m,onSelect:g}),b?(0,G.jsx)(`div`,{className:`flex items-center justify-center py-16`,children:(0,G.jsx)(o,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-secondary)`}})}):x?(0,G.jsx)($,{message:S instanceof Error?S.message:`Failed to load trace events.`}):(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(X,{metrics:T}),C.length===0?(0,G.jsx)(Q,{title:`No trace events yet`,subtitle:`Events will appear as the session runs.`}):(0,G.jsx)(ne,{groups:E})]})]}):(0,G.jsx)(Q,{title:`No conversations yet`,subtitle:`Start a conversation to generate trace events.`})})}function J({conversations:e,selectedConversationId:t,onSelect:n}){return(0,G.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,G.jsx)(`label`,{htmlFor:`logs-conversation-picker`,className:`text-body-small-default`,style:{color:`var(--content-secondary)`},children:`Conversation`}),(0,G.jsx)(i,{id:`logs-conversation-picker`,value:t,onChange:n,options:e.map(e=>({value:e.conversationId,label:Y(e)}))})]})}function Y(e){return e.title?.trim()||`Conversation ${e.conversationId.slice(0,8)}`}function X({metrics:e}){let t=e.toolFailureCount>0;return(0,G.jsxs)(`section`,{className:`flex flex-col gap-3 rounded-lg border p-4`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`},children:[(0,G.jsx)(`h3`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Session Metrics`}),(0,G.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2`,children:[(0,G.jsx)(Z,{label:`Requests`,value:A(e.requestCount)}),(0,G.jsx)(Z,{label:`LLM Calls`,value:A(e.llmCallCount)}),(0,G.jsx)(Z,{label:`Tokens`,value:k(e.totalInputTokens,e.totalOutputTokens)}),(0,G.jsx)(Z,{label:`Avg Latency`,value:j(e.averageLlmLatencyMs)}),t?(0,G.jsx)(Z,{label:`Failures`,value:A(e.toolFailureCount),valueColor:`var(--system-negative-strong)`}):null]})]})}function Z({label:e,value:t,valueColor:n}){return(0,G.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-md px-3 py-2`,style:{background:`color-mix(in srgb, var(--border-base) 15%, transparent)`},children:[(0,G.jsx)(`span`,{className:`text-body-medium-default`,style:{color:n??`var(--content-default)`},children:t}),(0,G.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:e})]})}function ne({groups:e}){return(0,G.jsxs)(`section`,{className:`flex flex-col gap-4`,children:[(0,G.jsx)(`h3`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Timeline`}),(0,G.jsx)(`div`,{className:`flex flex-col gap-5`,children:e.map(e=>(0,G.jsx)(re,{requestId:e.requestId,events:e.events},e.requestId||`__system__`))})]})}function re({requestId:e,events:t}){let n=V((0,N.useMemo)(()=>L(t),[t])),r=e?`Request ${e.slice(0,8)}`:`System`;return(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.createElement)(n.Icon,{className:`h-3 w-3 shrink-0`,style:{color:n.color}}),(0,G.jsx)(`span`,{className:`text-body-small-default select-text`,style:{color:`var(--content-secondary)`},children:r}),(0,G.jsx)(`div`,{className:`h-px flex-1`,style:{background:`var(--border-base)`},"aria-hidden":!0})]}),(0,G.jsx)(`ol`,{className:`flex flex-col`,style:{listStyle:`none`},children:t.map(e=>(0,G.jsx)(`li`,{children:(0,G.jsx)(ie,{event:e})},e.eventId))})]})}function ie({event:e}){let[t,n]=(0,N.useState)(!1),r=(0,N.useMemo)(()=>e.attributes?Object.entries(e.attributes).sort(([e],[t])=>e.localeCompare(t)):[],[e.attributes]),i=r.length>0,o=z(e.kind),s=B(e.status);return(0,G.jsxs)(`div`,{className:`flex flex-col`,children:[(0,G.jsxs)(`button`,{type:`button`,onClick:()=>{i&&n(e=>!e)},className:`flex w-full items-start gap-2 rounded-sm px-1 py-1.5 text-left transition-colors`,style:{cursor:i?`pointer`:`default`},disabled:!i,"aria-expanded":i?t:void 0,children:[(0,N.createElement)(o,{className:`mt-0.5 h-3.5 w-3.5 shrink-0`,style:{color:s}}),(0,G.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-lighter break-words`,style:{color:`var(--content-default)`},children:e.summary}),(0,G.jsx)(`span`,{className:`font-mono text-body-small-default`,style:{color:`var(--content-tertiary)`},children:M(e.timestampMs)})]}),i?t?(0,G.jsx)(a,{className:`mt-1 h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,G.jsx)(E,{className:`mt-1 h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):null]}),t&&i?(0,G.jsx)(`div`,{className:`mb-1 ml-6 mr-2 rounded-md px-3 py-2`,style:{background:`var(--surface-base)`},children:(0,G.jsx)(`dl`,{className:`flex flex-col gap-1`,children:r.map(([e,t])=>(0,G.jsxs)(`div`,{className:`flex flex-col gap-0.5 sm:flex-row sm:gap-3`,children:[(0,G.jsx)(`dt`,{className:`shrink-0 font-mono text-body-small-default`,style:{color:`var(--content-tertiary)`},children:e}),(0,G.jsx)(`dd`,{className:`font-mono text-body-small-default break-all`,style:{color:`var(--content-secondary)`},children:H(t)})]},e))})}):null]})}function Q({title:e,subtitle:t}){return(0,G.jsxs)(`div`,{className:`flex flex-col items-center justify-center rounded-md border border-dashed px-6 py-16 text-center`,style:{borderColor:`var(--border-base)`,color:`var(--content-secondary)`},children:[(0,G.jsx)(m,{className:`mb-3 h-8 w-8`}),(0,G.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),(0,G.jsx)(`p`,{className:`mt-1 text-body-small-default`,children:t})]})}function $({message:e}){return(0,G.jsxs)(`div`,{className:`text-body-medium-lighter flex items-start gap-3 rounded-md border px-4 py-3`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`,color:`var(--content-default)`},children:[(0,G.jsx)(f,{className:`h-5 w-5 shrink-0`,style:{color:`var(--system-negative-strong)`}}),(0,G.jsx)(`span`,{children:e})]})}function ae(){return(0,G.jsx)(q,{assistantId:O()})}export{ae as TracePage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n,r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as i}from"./jsx-runtime-CVSDxk6A.js";import{t as a}from"./button-CHADMNBN.js";import{t as o}from"./typography-Czgs_2w_.js";import{t as s}from"./card-CL5iEMJO.js";import{t as c}from"./notice-CF2pptne.js";import{n as l}from"./toast-BL8OPiip.js";import{a as u}from"./routes-DLEaIDYY.js";import{In as d,Ln as f,Rn as p}from"./index-BKOx2d-L.js";var m=e(t(),1),h=i();function g(){let e=p({platformHostedOnly:!0}),t=d(),i=f(),g=n();return(0,m.useEffect)(()=>{t&&(l.info(`Upgrade canceled. No changes to your plan.`,{id:`pro-upgrade-cancel`}),g(u.settings.billing,{replace:!0}))},[g,t]),e===`gated`?(0,h.jsx)(r,{replace:!0,to:u.settings.general}):e===`disabled`?(0,h.jsx)(`div`,{className:`max-w-4xl space-y-6`,children:(0,h.jsx)(c,{tone:`info`,children:`Log in to the Vellum platform to manage billing and usage.`})}):!t&&!i?(0,h.jsxs)(`div`,{className:`max-w-4xl space-y-6`,children:[(0,h.jsx)(c,{tone:`warning`,children:`Billing isn't available for the current assistant state.`}),(0,h.jsx)(`div`,{className:`flex justify-end`,children:(0,h.jsx)(a,{variant:`primary`,onClick:()=>g(u.settings.billing,{replace:!0}),children:`Return to billing`})})]}):(0,h.jsx)(`div`,{className:`max-w-4xl space-y-6`,children:(0,h.jsxs)(s,{padding:`lg`,children:[(0,h.jsx)(o,{as:`h1`,variant:`title-large`,children:`Upgrade canceled`}),(0,h.jsx)(o,{as:`p`,variant:`body-medium-default`,className:`mt-2`,children:`Returning you to billing settings…`})]})})}export{g as UpgradeCancelPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n,r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as i}from"./QueryClientProvider-DKhXIxGb.js";import{t as a}from"./useQuery-B45lW1Kk.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import{t as s}from"./button-CHADMNBN.js";import{t as c}from"./typography-Czgs_2w_.js";import{t as l}from"./card-CL5iEMJO.js";import{t as u}from"./notice-CF2pptne.js";import{t as d}from"./loader-circle-BwqYfFHZ.js";import{a as f}from"./routes-DLEaIDYY.js";import{In as p,Ln as m,Rn as h,ln as g,oo as _,ro as v,un as y}from"./index-BKOx2d-L.js";var b=e(t(),1),x=o(),S=1e3,C=1e4,w=2500;function T(){let e=h({platformHostedOnly:!0}),t=p(),o=m(),c=e===`full`&&t,d=n(),_=i(),[v,T]=(0,b.useState)(!1);(0,b.useEffect)(()=>{_.invalidateQueries({queryKey:y()})},[_]);let{data:A,isError:j}=a({...g(),enabled:c,refetchInterval:e=>e.state.data?.plan_id===`pro`||v?!1:S,refetchIntervalInBackground:!1}),M=c?A:void 0,N=c?j:!1;(0,b.useEffect)(()=>{if(!c)return;let e=setTimeout(()=>T(!0),C);return()=>clearTimeout(e)},[c]);let P=M?.plan_id===`pro`;(0,b.useEffect)(()=>{if(!P)return;let e=setTimeout(()=>{d(f.settings.billing,{replace:!0})},w);return()=>clearTimeout(e)},[P,d]);let F=()=>d(f.settings.billing,{replace:!0});return e===`gated`?(0,x.jsx)(r,{replace:!0,to:f.settings.general}):e===`disabled`?(0,x.jsx)(`div`,{className:`max-w-4xl space-y-6`,children:(0,x.jsx)(u,{tone:`info`,children:`Log in to the Vellum platform to manage billing and usage.`})}):!c&&!o?(0,x.jsxs)(`div`,{className:`max-w-4xl space-y-6`,children:[(0,x.jsx)(u,{tone:`warning`,children:`We can't confirm your upgrade for the current assistant. Return to billing to retry.`}),(0,x.jsx)(`div`,{className:`flex justify-end`,children:(0,x.jsx)(s,{variant:`primary`,"data-testid":`upgrade-success-go-to-billing`,onClick:F,children:`Go to billing`})})]}):(0,x.jsx)(`div`,{className:`max-w-4xl space-y-6`,children:(0,x.jsxs)(l,{padding:`lg`,children:[P?(0,x.jsx)(D,{}):N?(0,x.jsx)(k,{}):v?(0,x.jsx)(O,{}):(0,x.jsx)(E,{}),(P||N||v)&&(0,x.jsx)(`div`,{className:`mt-4 flex justify-end`,children:(0,x.jsx)(s,{variant:P||N?`primary`:`outlined`,"data-testid":`upgrade-success-go-to-billing`,onClick:F,children:`Go to billing`})})]})})}function E(){return(0,x.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-6 text-center`,children:[(0,x.jsx)(d,{className:`h-6 w-6 animate-spin text-[var(--content-secondary)]`,"aria-hidden":`true`}),(0,x.jsx)(c,{variant:`title-small`,as:`h1`,children:`Finalizing your upgrade…`}),(0,x.jsx)(c,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`Stripe is confirming your subscription. This usually takes a few seconds.`})]})}function D(){return(0,x.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-6 text-center`,children:[(0,x.jsx)(v,{className:`h-8 w-8 text-[var(--system-positive-strong)]`,"aria-hidden":`true`}),(0,x.jsx)(c,{variant:`title-small`,as:`h1`,children:`Welcome to Pro`}),(0,x.jsx)(c,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`Your Pro plan is active. You'll be redirected back to billing in a moment.`})]})}function O(){return(0,x.jsx)(u,{tone:`warning`,children:`We're processing your upgrade — refresh in a moment to see your new plan.`})}function k(){return(0,x.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-6 text-center`,children:[(0,x.jsx)(_,{className:`h-8 w-8 text-[var(--system-negative-strong)]`,"aria-hidden":`true`}),(0,x.jsx)(c,{variant:`title-small`,as:`h1`,children:`Couldn't reach billing`}),(0,x.jsx)(c,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`We hit a problem checking your subscription. Your upgrade may still be processing — return to billing to refresh.`})]})}export{T as UpgradeSuccessPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n,h as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as i}from"./useQuery-B45lW1Kk.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./dropdown-CocFV5yi.js";import"./src-DOuqBUBT.js";import{t as s}from"./createLucideIcon-D6d6iDdi.js";import{Gn as c,Hn as l,Un as u,Wn as d,w as f}from"./sdk.gen-qH7wLOCJ.js";import{t as p}from"./client.gen-BchW2Z6T.js";import{a as ee}from"./routes-DLEaIDYY.js";import{c as te}from"./query-tags-gNW0M4r7.js";import{Li as m,Ui as h,rr as ne}from"./index-BKOx2d-L.js";import{t as g}from"./use-active-assistant-id-Bdecq9LQ.js";import{i as _,t as v}from"./format-DOj_VDWK.js";import{i as y,o as b,r as x}from"./llm-dimension-CirET4yv.js";import{n as S}from"./usage-window-XvgiaiRa.js";import{t as re}from"./schedules-ByXx8-Sr.js";var C=s(`wand-sparkles`,[[`path`,{d:`m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72`,key:`ul74o6`}],[`path`,{d:`m14 7 3 3`,key:`1r5n42`}],[`path`,{d:`M5 6v4`,key:`ilb8ba`}],[`path`,{d:`M19 14v4`,key:`blhpug`}],[`path`,{d:`M10 2v2`,key:`7u0qdc`}],[`path`,{d:`M7 8H3`,key:`zfb6yr`}],[`path`,{d:`M21 16h-4`,key:`1cnmox`}],[`path`,{d:`M11 3H9`,key:`1obp7u`}]]),w=e(t(),1);function ie(e){if(!e)return{};let t={};for(let n of e.callSites)!n.id||!n.displayName||(t[n.id]={id:n.id,displayName:n.displayName,description:n.description,domain:n.domain});return t}async function ae(e){let{data:t,response:n}=await f({path:{assistant_id:e},throwOnError:!1});if(!n?.ok){let e=await n?.clone().text().catch(()=>``);throw Error(e||n?.statusText||`Failed to load LLM call-site metadata.`)}return t??{domains:[],callSites:[]}}function T(e,t,n){if(e===`task`){let e=t.groupKey;return e?n.callSites?.[e]?.displayName??t.group:t.group}if(e===`profile`){let e=t.groupKey;return e?n.profiles?.[e]?.displayName??t.group:t.group||`Default / Unset`}return t.group}function oe(e,t,n){return!e||e.length===0?[]:e.map(e=>{let r=T(t,e,n);return r===e.group?e:{...e,group:r}})}var E=6,se=`value:`,D=`null:`;function O(e,t=`schedule`){return e===null?`${D}${y(t)?b(t):t}`:`${se}${e}`}function k(e){return[...e].sort((e,t)=>{if(e.date!==t.date)return e.date<t.date?-1:1;let n=M(e.bucketId),r=M(t.bucketId);return n===r?e.bucketId===t.bucketId?0:e.bucketId<t.bucketId?-1:1:n-r})}function ce(e){return e.map(e=>({bucketId:e.bucketId,date:e.date,displayLabel:e.displayLabel,totalInputTokens:e.totalInputTokens,totalOutputTokens:e.totalOutputTokens,totalEstimatedCostUsd:e.totalEstimatedCostUsd,eventCount:e.eventCount,groups:{}}))}function le(e,t,n){return t!==`task`&&t!==`profile`?[...e]:e.map(e=>{let r=!1,i={};for(let[a,o]of Object.entries(e.groups)){let e=T(t,j(o),n);e===o.group?i[a]=o:(r=!0,i[a]={...o,group:e})}return r?{...e,groups:i}:e})}function A(e){let t=new Map;for(let n of e)for(let[e,r]of Object.entries(n.groups)){let n=t.get(e);t.set(e,{label:n?.label??r.group,totalEstimatedCostUsd:(n?.totalEstimatedCostUsd??0)+r.totalEstimatedCostUsd})}let n=Array.from(t.entries()).sort(([e,t],[n,r])=>t.totalEstimatedCostUsd===r.totalEstimatedCostUsd?t.label===r.label?e===n?0:e<n?-1:1:t.label<r.label?-1:1:r.totalEstimatedCostUsd-t.totalEstimatedCostUsd).map(([e,t],n)=>({seriesKey:e,label:t.label,totalEstimatedCostUsd:t.totalEstimatedCostUsd,colorIndex:n}));return{items:n,visibleItems:n.slice(0,E)}}function j(e){return{group:e.group,groupId:e.groupKey,groupKey:e.groupKey,totalInputTokens:e.totalInputTokens,totalOutputTokens:e.totalOutputTokens,totalCacheCreationTokens:0,totalCacheReadTokens:0,totalEstimatedCostUsd:e.totalEstimatedCostUsd,eventCount:e.eventCount}}function M(e){let t=e.lastIndexOf(`|`);if(t<0)return 0;let n=Number(e.slice(t+1));return Number.isFinite(n)?n:0}var N=a(),P=140,ue=40,de=28,fe=2,pe=2,me=1e-6,F=12,I=220,L=56,he=[40,80,60,100,50,70,30],ge=[18,24,28,35,42,50,64,78,92,106,118,96,84,74,68,80,88,72,56,48,40,34,26,20],R=[`var(--usage-trend-stack-positive, var(--system-positive-strong, #10b981))`,`var(--usage-trend-stack-info, var(--system-info-strong, #3b82f6))`,`var(--usage-trend-stack-mid, var(--system-mid-strong, #f59e0b))`,`var(--usage-trend-stack-secondary, var(--content-secondary, #6b7280))`,`var(--usage-trend-stack-negative, var(--system-negative-strong, #f87171))`,`var(--usage-trend-stack-tertiary, var(--content-tertiary, #9ca3af))`];function z(e){return R[e%R.length]}function B(e){return e.displayLabel?e.displayLabel:e.date}function _e(e,t){let n=e+F,r=t+F;return n+I>window.innerWidth&&(n=e-I-F),r+L>window.innerHeight&&(r=t-L-F),{x:n,y:r}}function ve({buckets:e,isHourly:t,legendItems:n}){let[r,i]=(0,w.useState)(null),a=(0,w.useMemo)(()=>k(e),[e]),o=(0,w.useMemo)(()=>A(e),[e]),s=n??o.items,c=n??o.visibleItems,l=(0,w.useMemo)(()=>a.reduce((e,t)=>Math.max(e,t.totalEstimatedCostUsd),0),[a]),u=(0,w.useCallback)((e,t)=>{let n=_e(e.clientX,e.clientY);i({...t,x:n.x,y:n.y})},[]),d=(0,w.useCallback)(()=>i(null),[]);if(a.length===0){let e=(0,N.jsx)(Ce,{title:t?`No hourly data`:`No daily data`,subtitle:`No usage recorded in this time range`});return c.length===0?e:(0,N.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[e,(0,N.jsx)(Se,{items:c})]})}let f=t?de:ue;return(0,N.jsxs)(`div`,{className:`overflow-x-auto`,children:[(0,N.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,N.jsx)(`div`,{className:`flex items-end gap-2`,style:{height:`${P}px`},"aria-hidden":`true`,children:a.map(e=>{let t=l>0?e.totalEstimatedCostUsd/l:0,r=Math.max(fe,P*t);return(0,N.jsx)(`div`,{className:`flex items-end`,style:{width:`${f}px`,minWidth:`${f}px`,height:`${r}px`,opacity:e.totalEstimatedCostUsd>0?1:.3},title:`${B(e)}: ${v(e.totalEstimatedCostUsd)}`,"data-usage-series-bar":e.bucketId,children:(0,N.jsx)(be,{bucket:e,height:r,legendItems:s,hasLegendOverride:n!=null,onSegmentHover:u,onSegmentLeave:d})},e.bucketId)})}),(0,N.jsx)(`div`,{className:`flex items-start gap-2`,children:a.map(e=>(0,N.jsxs)(`div`,{className:`flex flex-col items-center gap-0.5`,style:{width:`${f}px`,minWidth:`${f}px`},children:[(0,N.jsx)(`span`,{className:`truncate text-[10px]`,style:{color:`var(--content-secondary)`},children:v(e.totalEstimatedCostUsd)}),(0,N.jsx)(`span`,{className:`truncate text-[10px]`,style:{color:`var(--content-tertiary)`},children:B(e)})]},e.bucketId))}),c.length>0?(0,N.jsx)(Se,{items:c}):null]}),r?(0,N.jsx)(xe,{tooltip:r}):null]})}function ye({isHourly:e}){let t=e?ge:he,n=e?de:ue;return(0,N.jsx)(`div`,{className:`flex items-end gap-2`,style:{height:`${P}px`},"aria-hidden":`true`,children:t.map((e,t)=>(0,N.jsx)(`div`,{className:`rounded-sm`,style:{width:`${n}px`,height:`${e}px`,background:`color-mix(in srgb, var(--border-base) 40%, transparent)`}},t))})}function be({bucket:e,height:t,legendItems:n,hasLegendOverride:r,onSegmentHover:i,onSegmentLeave:a}){let o=Object.keys(e.groups).length>0,s=n.filter(e=>(e.state??`active`)===`active`).flatMap(t=>{let n=e.groups[t.seriesKey];return!n||n.totalEstimatedCostUsd<=0?[]:[{item:t,value:n}]});if(s.length===0&&!o&&!r){let n={label:`Total`,bucketLabel:B(e),cost:v(e.totalEstimatedCostUsd)};return(0,N.jsx)(`div`,{className:`w-full rounded-sm`,title:`${n.label}: ${n.cost}`,onMouseEnter:e=>i(e,n),onMouseMove:e=>i(e,n),onMouseLeave:a,style:{height:`${t}px`,background:z(0)},"data-usage-series-segment-label":n.label,"data-usage-fallback-segment":`true`})}return s.length===0?null:(0,N.jsx)(`div`,{className:`flex w-full flex-col-reverse overflow-hidden rounded-sm`,style:{height:`${t}px`},"data-usage-series-stack":e.bucketId,children:s.map(({item:n,value:r})=>{let o={label:n.label,bucketLabel:B(e),cost:v(r.totalEstimatedCostUsd)};return(0,N.jsx)(`div`,{title:`${o.label}: ${o.cost}`,onMouseEnter:e=>i(e,o),onMouseMove:e=>i(e,o),onMouseLeave:a,style:{height:`${Math.max(pe,t*r.totalEstimatedCostUsd/Math.max(e.totalEstimatedCostUsd,me))}px`,background:z(n.colorIndex)},"data-usage-series-segment":n.seriesKey,"data-usage-series-segment-label":n.label,"data-usage-series-color-index":n.colorIndex},n.seriesKey)})})}function xe({tooltip:e}){return(0,N.jsxs)(`div`,{className:`pointer-events-none fixed z-50 max-w-[220px] rounded-md border px-2 py-1 shadow-xl`,style:{left:`${e.x}px`,top:`${e.y}px`,background:`var(--surface-overlay, var(--surface-lift))`,borderColor:`var(--border-base)`},"aria-hidden":`true`,children:[(0,N.jsx)(`div`,{className:`truncate text-body-small-default`,style:{color:`var(--content-default)`},children:e.label}),(0,N.jsxs)(`div`,{className:`truncate text-body-small-default`,style:{color:`var(--content-tertiary)`},children:[e.bucketLabel,` · `,e.cost]})]})}function Se({items:e}){return(0,N.jsx)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1 pt-1`,children:e.map(e=>{let t=e.state??`active`,n=t===`inactive`;return(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1`,"data-usage-legend-state":t,children:[(0,N.jsx)(`span`,{className:`h-[7px] w-[7px] shrink-0 rounded-full`,style:{background:n?`var(--content-tertiary)`:z(e.colorIndex),opacity:n?.45:1},"aria-hidden":`true`,"data-usage-series-color-index":e.colorIndex}),(0,N.jsx)(`span`,{className:n?`truncate text-[10px] line-through`:`truncate text-[10px]`,style:{color:`var(--content-tertiary)`,opacity:n?.65:1},children:e.label})]},e.seriesKey)})})}function Ce({title:e,subtitle:t}){return(0,N.jsxs)(`div`,{className:`flex flex-col items-center justify-center rounded-md py-12 text-center`,style:{color:`var(--content-tertiary)`},children:[(0,N.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,N.jsx)(`p`,{className:`mt-1 text-body-small-default`,children:t})]})}function V(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function we(e){return typeof e==`string`&&e.trim()||void 0}function Te(e){if(!V(e)||!V(e.llm)||!V(e.llm.profiles))return{};let t={};for(let[n,r]of Object.entries(e.llm.profiles)){if(!V(r))continue;let e=we(r.label)??n,i=we(r.description);t[n]={id:n,displayName:e,...i?{description:i}:{}}}return t}async function Ee(e){let{data:t,response:n}=await p.get({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:e},throwOnError:!1});if(!n||!n.ok){let e=await n?.clone().text().catch(()=>``);throw Error(e||n?.statusText||`Failed to load inference profile metadata.`)}return Te(t)}var H=class extends Error{status;constructor(e,t){super(t),this.name=`UsageRequestError`,this.status=e}},De={totalInputTokens:0,totalOutputTokens:0,totalCacheCreationTokens:0,totalCacheReadTokens:0,totalEstimatedCostUsd:0,eventCount:0,pricedEventCount:0,unpricedEventCount:0};function U(e){return y(e)?b(e):e}function Oe(e){return W({from:e.from,to:e.to},e.scheduleId)}function ke(e){return W({from:e.from,to:e.to,...e.granularity?{granularity:e.granularity}:{},...e.tz?{tz:e.tz}:{}},e.scheduleId)}function Ae(e){return W({from:e.from,to:e.to,groupBy:U(e.groupBy)},e.scheduleId)}function je(e){return W({from:e.from,to:e.to,granularity:e.granularity,groupBy:U(e.groupBy),...e.tz?{tz:e.tz}:{}},e.scheduleId)}function W(e,t){return t?{...e,scheduleId:t}:e}async function G(e,t){let n=await e?.clone().text().catch(()=>``);throw new H(e?.status??0,n||e?.statusText||t)}async function Me(e,t){let{data:n,response:r}=await c({path:{assistant_id:e},query:Oe(t),throwOnError:!1});return r?.ok?{...De,...n}:G(r,`Failed to load usage totals.`)}async function Ne(e,t){let{data:n,response:r}=await u({path:{assistant_id:e},query:ke(t),throwOnError:!1});return r?.ok?{buckets:(n?.buckets??[]).map(e=>({...e,bucketId:e.bucketId??e.date}))}:G(r,`Failed to load usage buckets.`)}async function K(e,t){let{data:n,response:r}=await l({path:{assistant_id:e},query:Ae(t),throwOnError:!1});return r?.ok?{breakdown:n?.breakdown??[]}:G(r,`Failed to load usage breakdown.`)}async function Pe(e,t){let{data:n,response:r}=await d({path:{assistant_id:e},query:je(t),throwOnError:!1});return r?.ok?{buckets:(n?.buckets??[]).map(e=>({...e,bucketId:e.bucketId??e.date,groups:e.groups??{}}))}:G(r,`Failed to load usage series.`)}function Fe(e){return[`${_(e.totalInputTokens)} direct`,`${_(e.totalCacheCreationTokens)} cache created`,`${_(e.totalCacheReadTokens)} cache read`,`${_(e.totalOutputTokens)} out`].join(` / `)}function q(e){return!Number.isFinite(e)||e===0?`0`:e>=1e6||e>=999950&&e<1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:e.toLocaleString()}function Ie(e){return`${q(e.totalInputTokens+e.totalCacheCreationTokens+e.totalCacheReadTokens)} in / ${q(e.totalOutputTokens)} out`}var Le=`task`,J=`model`,Re=new Set([400,404,422]),ze=3,Be=new Set([`today`,`7d`,`30d`,`90d`,`all`]),Ve=new Set([`actor`,`provider`,`model`,`conversation`,`task`,`profile`,`schedule`]),Y={task:x.task,profile:x.profile,model:x.model,provider:`Provider`,actor:`Actor`,conversation:`Conversation`,schedule:`Schedule`},He=[{value:`task`,label:Y.task},{value:`profile`,label:Y.profile},{value:`model`,label:Y.model},{value:`provider`,label:Y.provider},{value:`schedule`,label:Y.schedule},{value:`conversation`,label:Y.conversation}];function Ue(e){let t=e.get(`range`),n=e.get(`groupBy`),r=qe(n)?n:Le;return{range:Ke(t)?t:`7d`,groupBy:r,scheduleId:r===`schedule`?We(e):void 0}}function We(e){let t=e.get(`scheduleId`);if(!(!t||t.trim().length===0))return t}function Ge(e,t){let n=new URLSearchParams(e);return t.range!==void 0&&n.set(`range`,t.range),t.groupBy!==void 0&&n.set(`groupBy`,t.groupBy),t.scheduleId!==void 0&&(t.scheduleId===null||t.scheduleId.trim().length===0?n.delete(`scheduleId`):n.set(`scheduleId`,t.scheduleId)),n.get(`groupBy`)!==`schedule`&&n.delete(`scheduleId`),n}function Ke(e){return e!=null&&Be.has(e)}function qe(e){return e!=null&&Ve.has(e)}function Je(e){return e!==`conversation`}function Ye(e,t){return e!==`task`&&e!==`profile`?!1:Ze(t)}function Xe(e,t){return!Ze(t)&&e<ze}function Ze(e){return e instanceof H&&Re.has(e.status)}function Qe(e,t){let n=e===`hourly`?`Hourly Trend`:`Daily Trend`;return!t||t===`conversation`?n:`${n} by ${Y[t]}`}function $e({requestedGranularity:e,isLoading:t,buckets:n}){return e===`hourly`&&(t||!n||n.length===0||n.some(et))?`hourly`:`daily`}function et(e){return e.bucketId.includes(`|`)||tt(e.date)}function tt(e){return/^\d{4}-\d{2}-\d{2} ([01]\d|2[0-3]):00$/.test(e)}function nt(e,t,n=Date.now()){return S(e,t,n)}function rt(e){return e===`today`?`hourly`:`daily`}var it=`vellum.assistant.initialMessage`;function at(){try{return globalThis.sessionStorage??null}catch{return null}}function ot(e){try{at()?.setItem(it,e)}catch{}}var st=[{value:`today`,label:`Today`},{value:`7d`,label:`Last 7 days`},{value:`30d`,label:`Last 30 days`},{value:`90d`,label:`Last 90 days`},{value:`all`,label:`All time`}],ct=300*1e3,lt=[`Please load the llm-cost-optimizer skill.`,`Analyze my recent LLM usage and explain the biggest cost contributors by call site, model, and profile.`,`Check my current llm.default, llm.callSites, and llm.profiles.`,`Give me a concise summary of what is driving cost and what you would optimize first.`,`Do not change config yet.`].join(` `),ut=[`Please load the llm-cost-optimizer skill.`,`Analyze my recent LLM usage and current LLM config, then recommend the safest cost-optimization changes.`,`If changes are clearly safe, show me the exact config commands you would run and ask for confirmation before applying them.`].join(` `);function dt({assistantId:e}){let t=n(),[a,o]=r(),{range:s,groupBy:c,scheduleId:l}=(0,w.useMemo)(()=>Ue(a),[a]),u=ne(),d=(0,w.useCallback)(e=>{o(t=>Ge(t,e),{replace:!0})},[o]),f=(0,w.useMemo)(()=>nt(s,u),[s,u]),p=(0,w.useMemo)(()=>rt(s),[s]),m=i({queryKey:te(e),queryFn:()=>re(e),staleTime:1e4}),h=e=>{ot(e),t(ee.assistant)},g=(0,w.useCallback)(e=>{d({range:e})},[d]),_=i({queryKey:[`usage-totals`,e,f.from,f.to,l??null],queryFn:()=>Me(e,{from:f.from,to:f.to,scheduleId:l})}),v=i({queryKey:[`usage-breakdown`,e,f.from,f.to,c,l??null],queryFn:async()=>{try{return{groupBy:c,response:await K(e,{from:f.from,to:f.to,groupBy:c,scheduleId:l})}}catch(t){if(!Ye(c,t))throw t;return{groupBy:J,response:await K(e,{from:f.from,to:f.to,groupBy:J,scheduleId:l})}}},retry:Xe}),y=v.data?.groupBy??c,b=Je(y)?y:void 0,x=i({queryKey:[`usage-series`,e,f.from,f.to,p,u,y,l??null],queryFn:()=>b?Pe(e,{from:f.from,to:f.to,granularity:p,groupBy:b,tz:u,scheduleId:l}):{buckets:[]},enabled:!!b,retry:Xe}),S=i({queryKey:[`usage-daily`,e,f.from,f.to,p,u,l??null],queryFn:()=>Ne(e,{from:f.from,to:f.to,granularity:p,tz:u,scheduleId:l}),enabled:!b||x.isError}),C=i({queryKey:[`usage-call-sites`,e],queryFn:()=>ae(e),enabled:y===`task`,staleTime:1/0}),T=i({queryKey:[`usage-profile-metadata`,e],queryFn:()=>Ee(e),enabled:y===`profile`,staleTime:ct}),E=(0,w.useMemo)(()=>({callSites:ie(C.data),profiles:T.data??{}}),[C.data,T.data]),se=(0,w.useMemo)(()=>{let e=v.data;if(e)return oe(e.response.breakdown,e.groupBy,E)},[v.data,E]),D=(0,w.useMemo)(()=>{if(!(!b||!x.data))return le(x.data.buckets,b,E)},[x.data,b,E]),O=(0,w.useMemo)(()=>{if(S.data)return ce(S.data.buckets)},[S.data]),k=(0,w.useMemo)(()=>b?x.error?O?{isLoading:!1,error:null,data:O,refetch:S.refetch}:{isLoading:S.isLoading||!O&&!S.error,error:S.error??x.error,data:void 0,refetch:S.error?S.refetch:x.refetch}:{isLoading:x.isLoading,error:x.error,data:D,refetch:x.refetch}:{isLoading:S.isLoading,error:S.error,data:O,refetch:S.refetch},[O,S.error,S.isLoading,S.refetch,D,b,x.error,x.isLoading,x.refetch]),A=$e({requestedGranularity:p,isLoading:k.isLoading,buckets:k.data}),j=A===`hourly`,M=b&&x.error?void 0:y,P=(0,w.useMemo)(()=>{if(!(y!==`schedule`||!l))return ft(m.data,l)},[y,l,m.data]);return(0,N.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,N.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,N.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:`Usage`}),(0,N.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:(0,N.jsx)(ht,{range:s,onChange:g})})]}),(0,N.jsx)(`section`,{"aria-label":`Totals`,children:(0,N.jsx)(Z,{query:_,skeleton:(0,N.jsx)(_t,{}),render:e=>(0,N.jsx)(gt,{totals:e})})}),(0,N.jsx)(X,{title:`Inference Usage`,children:(0,N.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,N.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,N.jsx)(`h4`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:Qe(A,M)}),(0,N.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:(0,N.jsx)(vt,{value:y,onChange:e=>{e===c&&y!==c&&(v.refetch(),x.refetch()),d({groupBy:e,scheduleId:e===`schedule`?void 0:null})}})})]}),(0,N.jsx)(Z,{query:k,skeleton:(0,N.jsx)(ye,{isHourly:j}),render:e=>(0,N.jsx)(ve,{buckets:e,isHourly:j,legendItems:P})})]})}),(0,N.jsx)(yt,{query:v,groups:se}),(0,N.jsx)(mt,{onAnalyze:()=>h(lt),onOptimize:()=>h(ut)})]})}function ft(e,t){let n=e??[];return[...n.some(e=>e.id===t)?[]:[{id:t,label:pt(t)}],...n.map(e=>({id:e.id,label:e.name||e.id}))].map((e,n)=>({seriesKey:O(e.id,`schedule`),label:e.label,colorIndex:n,state:e.id===t?`active`:`inactive`}))}function pt(e){return`Unknown schedule (${e})`}function mt({onAnalyze:e,onOptimize:t}){return(0,N.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,N.jsx)(`div`,{className:`h-px w-full`,style:{background:`linear-gradient(to right, transparent, var(--border-base), transparent)`}}),(0,N.jsx)(X,{title:`Cost assistant`,subtitle:`Review recent spend and tune model profile choices.`,children:(0,N.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md px-3 py-3 sm:flex-row sm:items-center`,style:{background:`color-mix(in srgb, var(--border-base) 15%, transparent)`},children:[(0,N.jsxs)(`button`,{type:`button`,onClick:e,className:`inline-flex items-center gap-2 rounded-md border px-3 py-2 text-body-medium-default transition-colors`,style:{borderColor:`var(--border-element)`,color:`var(--content-default)`,background:`var(--surface-lift)`},children:[(0,N.jsx)(h,{className:`h-4 w-4`}),`Analyze costs with assistant`]}),(0,N.jsxs)(`button`,{type:`button`,onClick:t,className:`inline-flex items-center gap-2 rounded-md border px-3 py-2 text-body-medium-default transition-colors`,style:{borderColor:`var(--border-base)`,color:`var(--content-secondary)`,background:`transparent`},children:[(0,N.jsx)(C,{className:`h-4 w-4`}),`Optimize settings`]})]})})]})}function ht({range:e,onChange:t}){return(0,N.jsx)(`div`,{className:`flex items-center`,children:(0,N.jsx)(o,{value:e,onChange:t,options:st.map(e=>({value:e.value,label:e.label}))})})}function X({title:e,subtitle:t,children:n}){return(0,N.jsxs)(`section`,{className:`flex flex-col gap-3 rounded-md border px-4 py-4`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`},children:[(0,N.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,N.jsx)(`h3`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),t?(0,N.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:t}):null]}),n]})}function Z({query:e,skeleton:t,render:n}){return e.isLoading?(0,N.jsx)(N.Fragment,{children:t}):e.error?(0,N.jsx)(wt,{message:e.error instanceof Error?e.error.message:`Failed to load usage.`,onRetry:()=>e.refetch()}):e.data?(0,N.jsx)(N.Fragment,{children:n(e.data)}):(0,N.jsx)(N.Fragment,{children:t})}function gt({totals:e}){return(0,N.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,N.jsxs)(`div`,{className:`flex flex-wrap items-baseline justify-between gap-4`,children:[(0,N.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,N.jsx)(`span`,{style:{fontSize:`30px`,fontWeight:600,lineHeight:1,color:`var(--content-default)`},children:v(e.totalEstimatedCostUsd)}),(0,N.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-secondary)`},children:`Cost`})]}),(0,N.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,N.jsx)(`span`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:_(e.eventCount)}),(0,N.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-secondary)`},children:`LLM Calls`})]})]}),(0,N.jsxs)(`div`,{className:`grid grid-cols-2 gap-3 sm:grid-cols-4`,children:[(0,N.jsx)(Q,{label:`Direct Input Tokens`,value:_(e.totalInputTokens)}),(0,N.jsx)(Q,{label:`Output Tokens`,value:_(e.totalOutputTokens)}),(0,N.jsx)(Q,{label:`Cache Created`,value:_(e.totalCacheCreationTokens)}),(0,N.jsx)(Q,{label:`Cache Read`,value:_(e.totalCacheReadTokens)})]})]})}function Q({label:e,value:t}){return(0,N.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-md px-3 py-2`,style:{background:`color-mix(in srgb, var(--border-base) 15%, transparent)`},children:[(0,N.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-default)`},children:t}),(0,N.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-tertiary)`},children:e})]})}function _t(){return(0,N.jsxs)(`div`,{className:`flex flex-col gap-4`,"aria-hidden":`true`,children:[(0,N.jsxs)(`div`,{className:`flex flex-wrap items-baseline justify-between gap-4`,children:[(0,N.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,N.jsx)($,{width:140,height:30}),(0,N.jsx)($,{width:90,height:12})]}),(0,N.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,N.jsx)($,{width:60,height:16}),(0,N.jsx)($,{width:60,height:12})]})]}),(0,N.jsx)(`div`,{className:`grid grid-cols-2 gap-3 sm:grid-cols-4`,children:Array.from({length:4}).map((e,t)=>(0,N.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-md px-3 py-2`,style:{background:`color-mix(in srgb, var(--border-base) 15%, transparent)`},children:[(0,N.jsx)($,{width:`50%`,height:12}),(0,N.jsx)($,{width:`70%`,height:11})]},t))})]})}function vt({value:e,onChange:t}){return(0,N.jsx)(`div`,{className:`flex items-center`,children:(0,N.jsx)(o,{value:e,onChange:t,menuAlign:`end`,menuMinWidth:196,options:He.map(e=>({value:e.value,label:e.label}))})})}function yt({query:e,groups:t}){let[n,r]=(0,w.useState)(new Set),i=e=>{r(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})};return(0,N.jsx)(X,{title:`Breakdown`,children:(0,N.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,N.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,N.jsx)(bt,{label:`% of total`,active:n.has(`pct`),onClick:()=>i(`pct`)}),(0,N.jsx)(bt,{label:`Tokens`,active:n.has(`tokens`),onClick:()=>i(`tokens`)})]}),(0,N.jsx)(Z,{query:e,skeleton:(0,N.jsx)(St,{}),render:e=>(0,N.jsx)(xt,{groups:t??e.response.breakdown,showPct:n.has(`pct`),showTokens:n.has(`tokens`)})})]})})}function bt({label:e,active:t,onClick:n}){return(0,N.jsx)(`button`,{type:`button`,onClick:n,className:`rounded-full border px-2.5 py-1 text-label-medium-default`,style:{borderColor:t?`var(--content-secondary)`:`var(--border-base)`,background:t?`color-mix(in srgb, var(--content-secondary) 15%, transparent)`:`transparent`,color:t?`var(--content-default)`:`var(--content-tertiary)`},children:e})}function xt({groups:e,showPct:t,showTokens:n}){if(e.length===0)return(0,N.jsx)(Ct,{title:`No breakdown data`,subtitle:`No usage recorded for this grouping`});let r=e.reduce((e,t)=>e+t.totalEstimatedCostUsd,0);return(0,N.jsx)(`div`,{className:`overflow-hidden rounded-md`,children:(0,N.jsxs)(`table`,{className:`w-full table-fixed`,children:[(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{style:{borderBottom:`1px solid var(--border-base)`},children:[(0,N.jsx)(`th`,{className:`px-3 py-2.5 text-left text-label-medium-default`,style:{color:`var(--content-tertiary)`},children:`Group`}),n?(0,N.jsx)(`th`,{className:`px-3 py-2.5 text-left text-label-medium-default`,style:{color:`var(--content-tertiary)`,width:`35%`},children:`Tokens`}):null,t?(0,N.jsx)(`th`,{className:`px-3 py-2.5 text-right text-label-medium-default`,style:{color:`var(--content-tertiary)`,width:`64px`},children:`%`}):null,(0,N.jsx)(`th`,{className:`px-3 py-2.5 text-right text-label-medium-default`,style:{color:`var(--content-tertiary)`,width:`100px`},children:`Cost`})]})}),(0,N.jsx)(`tbody`,{children:e.map((e,i)=>{let a=Fe(e),o=Ie(e),s=r>0?Math.round(e.totalEstimatedCostUsd/r*100):0;return(0,N.jsxs)(`tr`,{style:{borderTop:i===0?`none`:`1px solid var(--border-base)`},children:[(0,N.jsx)(`td`,{className:`min-w-0 px-3 py-2`,style:{color:`var(--content-default)`},children:(0,N.jsx)(`span`,{className:`block truncate text-body-medium-lighter`,title:e.group,children:e.group})}),n?(0,N.jsx)(`td`,{className:`min-w-0 px-3 py-2`,style:{color:`var(--content-secondary)`},children:(0,N.jsx)(`span`,{className:`block truncate text-body-small-default`,title:a,children:o})}):null,t?(0,N.jsx)(`td`,{className:`whitespace-nowrap px-3 py-2 text-right`,children:(0,N.jsxs)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:[s,`%`]})}):null,(0,N.jsx)(`td`,{className:`whitespace-nowrap px-3 py-2 text-right`,children:(0,N.jsx)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-default)`},children:v(e.totalEstimatedCostUsd)})})]},e.groupKey??e.groupId??`${e.group}-${i}`)})})]})})}function St(){return(0,N.jsx)(`div`,{className:`flex flex-col gap-2`,"aria-hidden":`true`,children:Array.from({length:4}).map((e,t)=>(0,N.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,N.jsx)($,{width:100,height:14}),(0,N.jsx)($,{width:`60%`,height:12}),(0,N.jsx)($,{width:50,height:14})]},t))})}function $({width:e,height:t}){return(0,N.jsx)(`div`,{className:`rounded-sm`,style:{width:typeof e==`number`?`${e}px`:e,height:`${t}px`,background:`color-mix(in srgb, var(--border-base) 40%, transparent)`}})}function Ct({title:e,subtitle:t}){return(0,N.jsxs)(`div`,{className:`flex flex-col items-center gap-1 py-8 text-center`,children:[(0,N.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),(0,N.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:t})]})}function wt({message:e,onRetry:t}){return(0,N.jsxs)(`div`,{className:`flex flex-col gap-2 py-2`,children:[(0,N.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,N.jsx)(m,{className:`h-4 w-4 shrink-0`,style:{color:`var(--system-negative-strong, #f87171)`}}),(0,N.jsx)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-default)`},children:e})]}),t?(0,N.jsx)(`button`,{type:`button`,onClick:t,className:`self-start rounded-md border px-3 py-1 text-body-small-default`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`,color:`var(--content-default)`},children:`Retry`}):null]})}function Tt(){return(0,N.jsx)(dt,{assistantId:g()})}export{Tt as UsagePage};
@@ -1 +0,0 @@
1
- import{c as e,r as t}from"./auth-store-waC7X7ya.js";function n(){let n=e.use.currentOrganizationId();return!t()||n!=null}export{n as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{n}from"./QueryClientProvider-DKhXIxGb.js";import{n as r}from"./toast-BL8OPiip.js";import{r as i}from"./api-errors-CsfCFJ8r.js";import{O as a}from"./auth-store-waC7X7ya.js";import{a as o}from"./routes-DLEaIDYY.js";import{B as s,F as c,I as l,On as u,P as d,U as f,V as p,W as m,dt as h,jt as g,ut as _}from"./index-BKOx2d-L.js";import{t as v}from"./use-oauth-complete-deep-link-listener-BGWwfkrM.js";var y=e(t(),1);function b({assistantId:e,providerKey:t,displayName:b,managedAvailable:x,connectionsQueryKey:S,allConnections:C}){let w=n(),T=a(),E=(0,y.useRef)(null),D=(0,y.useRef)(null),O=(0,y.useRef)(null),k=(0,y.useRef)(null),[A,j]=(0,y.useState)(!1),M=()=>{D.current=null,j(!1)},N=()=>{E.current&&!E.current.closed&&E.current.close(),E.current=null,O.current&&=(clearInterval(O.current),null),k.current&&=(clearTimeout(k.current),null)},P=(0,y.useCallback)(e=>{if(e.type!==`vellum:oauth-complete`||!D.current||e.requestId!==D.current.requestId)return;let{oauthStatus:t,oauthCode:n}=e;if(N(),M(),t===`connected`)r.success(`${b} account connected.`),w.invalidateQueries({queryKey:S});else{let e=n?`Error: ${n}`:`Authorization failed`;r.error(`${b} ${e}`)}},[S,b,w]),F=(0,y.useCallback)(async n=>{if(!x)return!1;for(let r=0;r<8;r+=1){r>0&&await l(750);try{if(w.invalidateQueries({queryKey:S}),c(await w.fetchQuery({...g({path:{assistant_id:e}}),staleTime:0}),t,n))return!0}catch{}}return!1},[e,S,x,t,w]);(0,y.useEffect)(()=>{let e=e=>{let t=D.current;if(!t)return;let n=s(e,window.location.origin,t.requestId);n&&P(n)},t=e=>{let t=D.current;if(!t)return;let n=p(e,t.requestId);n&&(P(n),window.localStorage.removeItem(f(t.requestId)))};return window.addEventListener(`message`,e),window.addEventListener(`storage`,t),()=>{window.removeEventListener(`message`,e),window.removeEventListener(`storage`,t)}},[P]),v((0,y.useCallback)(e=>{let t=D.current;t&&e.requestId===t.requestId&&P({type:`vellum:oauth-complete`,requestId:e.requestId,oauthStatus:e.oauthStatus,oauthProvider:e.oauthProvider,oauthCode:e.oauthCode})},[P])),(0,y.useEffect)(()=>h(()=>{let e=D.current;e&&(async()=>{let t=await F(e.baselineConnectionSignatures);D.current&&(M(),t&&r.success(`${b} account connected.`))})()}),[F,b]),(0,y.useEffect)(()=>()=>{O.current&&clearInterval(O.current),k.current&&clearTimeout(k.current),E.current&&!E.current.closed&&E.current.close()},[]);let I=u();return{handleConnect:()=>{if(!x)return;let n=crypto.randomUUID();if(T){j(!0),D.current={requestId:n,provider:t,baselineConnectionSignatures:d(w.getQueryData(S)??C,t)},I.mutate({path:{assistant_id:e,provider:t},body:{requested_scopes:[],redirect_after_connect:`${o.account.oauth.popupComplete}?requestId=${n}&native=1`}},{onSuccess(e){_(e.connect_url)},onError(e){M();let t=i(e,void 0,`Failed to start ${b} authorization.`);r.error(t)}});return}let a=window.open(``,`_blank`,`width=500,height=600`);if(a===null){r.error(`Popup blocked. Please enable popups and try again.`);return}E.current=a,j(!0),D.current={requestId:n,provider:t,baselineConnectionSignatures:d(w.getQueryData(S)??C,t)},O.current=setInterval(()=>{E.current&&E.current.closed&&D.current&&!k.current&&(k.current=setTimeout(async()=>{k.current=null;let e=D.current;if(!e)return;let t=window.localStorage.getItem(f(e.requestId));if(t){let n=m(t);if(n&&n.requestId===e.requestId){P(n),window.localStorage.removeItem(f(e.requestId));return}}let n=await F(e.baselineConnectionSignatures);if(D.current){if(n){N(),M(),r.success(`${b} account connected.`);return}N(),M(),r.error(`${b} connection failed: authorization popup closed.`)}},1e3))},100),I.mutate({path:{assistant_id:e,provider:t},body:{requested_scopes:[],redirect_after_connect:`${o.account.oauth.popupComplete}?requestId=${n}`}},{onSuccess(e){E.current&&!E.current.closed?E.current.location.href=e.connect_url:D.current&&(N(),M(),r.error(`${b} connection failed: popup closed.`))},onError(e){N(),M();let t=i(e,void 0,`Failed to start ${b} authorization.`);r.error(t)}})},oauthInProgress:A,startOAuthPending:I.isPending}}export{b as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n,u as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{p as i}from"./resolved-assistants-store-BTvVAnMH.js";import{t as a}from"./is-electron-CavSPgmY.js";import{A as o,E as s}from"./auth-store-waC7X7ya.js";import{a as c}from"./routes-DLEaIDYY.js";import{n as l,t as u}from"./build-state-Dolr1rr6.js";import{n as d}from"./login-flow-DSUqqkE0.js";var f=e(t(),1);function p(e){let t=n(),p=r(),[m,h]=(0,f.useState)(!1),[g,_]=(0,f.useState)(null),v=(0,f.useRef)(0);return{loading:m,error:g,login:async()=>{let n=e??l(u({sessionSettled:!0,isAuthenticated:!0}),p.pathname);if(i()&&o()){t(`${c.account.login}?returnTo=${encodeURIComponent(n)}`);return}let r=++v.current;_(null),h(!0);try{await s(d,`${c.account.providerCallback}?returnTo=${encodeURIComponent(n)}`,{returnTo:n})}catch{if(r!==v.current)return;_(`Something went wrong. Please try again.`),h(!1)}},cancel:()=>{v.current++,h(!1),_(null),a()&&window.vellum?.auth?.cancelOAuth()}}}export{p as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{i as t,r as n,s as r}from"./local-settings-lVNyIOJ_.js";import{t as i}from"./react-DJZBPgpf.js";import{t as a}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import{t as s}from"./button-CHADMNBN.js";import{t as c}from"./dropdown-CocFV5yi.js";import{t as l}from"./toggle-CEm3M86o.js";import{a as u}from"./routes-DLEaIDYY.js";import{Da as d,Er as f,Tr as p,cr as m,dr as h,fo as g,fr as _,gr as v,hr as y,lr as b,mr as x,pr as S,sr as C,ur as w}from"./index-BKOx2d-L.js";import{t as T}from"./detail-card-DCGV8um_.js";var E=e(i(),1),D=o(),O=`vellum:voice:conversationTimeoutSeconds`,k=[{label:`Ctrl`,activator:{kind:`modifierOnly`,modifiers:[`control`]}},{label:`Alt`,activator:{kind:`modifierOnly`,modifiers:[`option`]}},{label:`Ctrl+Shift`,activator:{kind:`modifierOnly`,modifiers:[`control`,`shift`]}}],A={label:`Fn`,activator:b},j=[{label:`5 seconds`,value:`5`},{label:`10 seconds`,value:`10`},{label:`15 seconds`,value:`15`},{label:`30 seconds`,value:`30`},{label:`60 seconds`,value:`60`}],M=`30`,N=`text-body-small-default text-[var(--content-tertiary)]`;function P(){return(0,D.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,D.jsx)(F,{}),(0,D.jsx)(L,{}),(0,D.jsx)(R,{}),(0,D.jsx)(B,{})]})}function F(){return(0,D.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--field-bg)] px-3 py-2`,children:[(0,D.jsx)(d,{className:`h-3.5 w-3.5 shrink-0 text-[var(--primary-base)]`}),(0,D.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Looking to configure Speech-to-Text or Text-to-Speech models?`}),(0,D.jsxs)(a,{to:u.settings.ai,className:`inline-flex items-center gap-1 text-body-medium-lighter text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[`Go to Models & Services`,(0,D.jsx)(g,{className:`h-3 w-3`})]})]})}var I=``;function L(){let[e,n]=(0,E.useState)([]),[i,a]=(0,E.useState)(!1),[o,l]=(0,E.useState)(()=>f()),u=(0,E.useCallback)(async()=>{if(navigator.mediaDevices?.enumerateDevices)try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(e=>e.kind===`audioinput`);a(e.length>0&&e.every(e=>!e.label)),n(e.filter(e=>e.deviceId!==``&&e.deviceId!==`default`&&e.deviceId!==`communications`))}catch{n([]),a(!1)}},[]),d=(0,E.useCallback)(async()=>{try{let e=await navigator.mediaDevices.getUserMedia({audio:!0});for(let t of e.getTracks())t.stop()}catch{}u()},[u]);(0,E.useEffect)(()=>{u();let e=navigator.mediaDevices;if(!e?.addEventListener)return;let t=()=>void u();return e.addEventListener(`devicechange`,t),()=>e.removeEventListener(`devicechange`,t)},[u]);let m=(0,E.useMemo)(()=>[{value:I,label:`System Default`},...e.map((e,t)=>({value:e.deviceId,label:e.label||`Microphone ${t+1}`}))],[e]),h=(0,E.useCallback)(e=>{l(e),e===I?t(p):r(p,e)},[]);return(0,D.jsx)(T,{title:`Microphone`,subtitle:`Which input device is used for dictation and voice conversations.`,children:(0,D.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,D.jsx)(`div`,{className:`max-w-xs`,children:(0,D.jsx)(c,{options:m,value:m.some(e=>e.value===o)?o:I,onChange:h,"aria-label":`Microphone`})}),i&&(0,D.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,D.jsx)(s,{variant:`outlined`,onClick:d,children:`Allow Microphone Access`}),(0,D.jsx)(`span`,{className:N,children:`Grant microphone access to list your available input devices.`})]})]})})}function R(){let e=C(),[t,i]=(0,E.useState)(()=>{let t=n(w,``);return t?x(t,{preserveFunction:e}):e?A.activator:{kind:`off`}}),[a,o]=(0,E.useState)(!1),[s,c]=(0,E.useState)([]),u=(0,E.useRef)(null),f=(0,E.useRef)(!1),p=(0,E.useMemo)(()=>e?[A,...k]:k,[e]),g=t.kind!==`off`,O=g&&!e,j=(0,E.useCallback)(e=>{i(e),r(w,y(e)),o(!1),c([])},[]),M=(0,E.useCallback)(()=>{o(!0),c([]),f.current=!1,requestAnimationFrame(()=>{u.current?.focus()})},[]),P=(0,E.useCallback)(()=>{o(!1),c([]),f.current=!1},[]),F=(0,E.useCallback)(t=>{let n=[];return e&&t.getModifierState(`Fn`)&&n.push(`function`),t.ctrlKey&&n.push(`control`),t.altKey&&n.push(`option`),t.shiftKey&&n.push(`shift`),t.metaKey&&n.push(`command`),n},[e]),I=(0,E.useCallback)(e=>{if(e.preventDefault(),e.stopPropagation(),e.key===`Escape`){P();return}let t=F(e),n=e.key;if(n===`Control`||n===`Alt`||n===`Shift`||n===`Meta`||n===`Fn`){c(t.includes(`function`)?b.modifiers:v(t));return}if(t.includes(`function`)){j(b);return}f.current=!0,j({kind:`key`,label:n.length===1?n.toUpperCase():n,modifiers:t})},[P,F,j]),L=(0,E.useCallback)(e=>{if(!a)return;e.preventDefault(),e.stopPropagation();let t=e.key;if(t===`Control`||t===`Alt`||t===`Shift`||t===`Meta`||t===`Fn`){if(f.current){f.current=!1,c([]);return}F(e).length===0&&s.length>0&&j({kind:`modifierOnly`,modifiers:s})}},[F,a,s,j]);(0,E.useEffect)(()=>{if(!a)return;let e=e=>{u.current&&!u.current.contains(e.target)&&P()};return window.addEventListener(`mousedown`,e),()=>window.removeEventListener(`mousedown`,e)},[P,a]);let R=g&&!p.some(e=>_(e.activator,t));return(0,D.jsx)(T,{title:`Push to Talk`,subtitle:`Hold the activation key to dictate text or start a voice conversation.`,children:(0,D.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,D.jsx)(l,{checked:g,onChange:n=>{n?t.kind===`off`&&j(e?A.activator:m):j({kind:`off`})},label:`Enable Push to Talk`}),g&&(0,D.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,D.jsx)(`span`,{className:N,children:`Activation Key:`}),(0,D.jsxs)(`div`,{ref:u,tabIndex:a?0:-1,onKeyDown:a?I:void 0,onKeyUp:a?L:void 0,className:`flex flex-wrap items-center gap-2 focus:outline-none`,children:[p.map(e=>{let n=_(e.activator,t);return(0,D.jsx)(z,{label:e.label,selected:n,onClick:()=>j(e.activator)},e.label)}),a?(0,D.jsx)(z,{label:s.length>0?S(s):`Press any key…`,selected:!0,recording:!0,onClick:P}):(0,D.jsx)(z,{label:R?h(t):`Custom`,selected:R,onClick:M})]}),O&&(0,D.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-default text-[var(--content-quiet)]`,children:[(0,D.jsx)(d,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,D.jsx)(`span`,{children:`Push-to-Talk only works while this tab is focused, and browsers may intercept some shortcuts (e.g. Ctrl+T) before the page can see them. For always-on PTT, use the Vellum desktop app.`})]})]})]})})}function z({label:e,selected:t,recording:n=!1,onClick:r}){return(0,D.jsxs)(`button`,{type:`button`,onClick:r,className:[`inline-flex items-center gap-2 rounded-lg border px-3 py-1.5 text-body-medium-lighter transition-colors`,`border-[var(--border-subtle)]`,t?`bg-[var(--surface-active)]`:`bg-[var(--surface-lift)] hover:bg-[var(--surface-hover)]`,n?`animate-pulse`:``].filter(Boolean).join(` `),children:[(0,D.jsx)(`span`,{className:[`inline-block h-2.5 w-2.5 rounded-full border`,t?`border-[var(--primary-base)] bg-[var(--primary-base)]`:`border-[var(--border-element)]`].join(` `)}),(0,D.jsx)(`span`,{className:`text-[var(--content-default)]`,children:e})]})}function B(){let[e,t]=(0,E.useState)(()=>{let e=n(O,M);return j.find(t=>t.value===e)?.value??M});return(0,D.jsx)(T,{title:`Conversation Timeout`,subtitle:`How long the assistant waits for you to start speaking before ending a voice conversation turn.`,children:(0,D.jsx)(`div`,{className:`max-w-xs`,children:(0,D.jsx)(c,{options:j,value:e,onChange:(0,E.useCallback)(e=>{t(e),r(O,e)},[]),"aria-label":`Conversation timeout`})})})}export{P as VoicePage};
@@ -1 +0,0 @@
1
- import{d as e}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t}from"./jsx-runtime-CVSDxk6A.js";import{t as n}from"./button-CHADMNBN.js";import{u as r}from"./resolved-assistants-store-BTvVAnMH.js";import{a as i}from"./routes-DLEaIDYY.js";import{t as a}from"./onboarding-layout-Ckbaim4E.js";import{t as o}from"./use-onboarding-login-DSd1eko2.js";var s=t();function c(){let t=e(),{loading:c,error:l,login:u,cancel:d}=o();return(0,s.jsx)(a,{children:(0,s.jsx)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-xl flex-col items-center px-6 pb-40 text-[var(--content-default)]`,children:(0,s.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center`,children:[(0,s.jsx)(`h1`,{className:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:`Welcome to Vellum`}),(0,s.jsx)(`p`,{className:`mt-3 text-body-medium-lighter text-[var(--content-tertiary)]`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:`Your own personal intelligence is just a step away.`}),l&&(0,s.jsx)(`p`,{className:`mt-4 text-body-small-default text-[var(--system-negative-strong)]`,children:l}),(0,s.jsxs)(`div`,{className:`mt-10 flex w-full max-w-sm flex-col gap-3`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`},children:[(0,s.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:c?d:()=>void u(),children:c?`Cancel`:`Log In`}),(0,s.jsx)(n,{variant:`ghost`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:()=>{c&&d(),r()?t(i.selectAssistant):t(i.onboarding.hosting)},children:`Continue without account`})]})]})})})}export{c as WelcomeScreen};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{h as n}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as r}from"./QueryClientProvider-DKhXIxGb.js";import{t as i}from"./useQuery-B45lW1Kk.js";import{t as a}from"./useMutation-Lj4VunQV.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import{t as s}from"./queryOptions-BtNi-_9H.js";import{t as c}from"./button-CHADMNBN.js";import{t as l}from"./menu-B79-l6IU.js";import{a as u}from"./src-DOuqBUBT.js";import{t as d}from"./confirm-dialog-M0xuyGF3.js";import{n as f,t as p}from"./panel-item-FzMfzMJA.js";import{t as m}from"./input-Cu3PPVCq.js";import{t as h}from"./modal-BYMhDpQo.js";import{t as g}from"./createLucideIcon-D6d6iDdi.js";import{t as _}from"./chevron-right-C0jZwqbo.js";import{t as v}from"./loader-circle-BwqYfFHZ.js";import{t as y}from"./pencil-B3bs98KV.js";import{t as b}from"./x-Df0EF2EP.js";import{Jn as x,Kn as S,Qn as C,Xn as w,Yn as T,Zn as E,qn as D}from"./sdk.gen-qH7wLOCJ.js";import{n as O}from"./use-is-mobile-C5MpTbZg.js";import{Fa as k,Ha as A,Ia as j,Mi as M,Na as N,Pa as P,Ra as F,Ri as ee,Wa as I,Zi as te,co as L,ia as R,ka as z,so as B,za as ne}from"./index-BKOx2d-L.js";import{t as V}from"./use-active-assistant-id-Bdecq9LQ.js";import{n as H,t as U}from"./mobile-sidebar-drawer-BQgKwZF8.js";import{n as W,t as re}from"./file-markdown-B3OXc5Lr.js";import{t as G}from"./format-file-size-DlcqKN6E.js";var ie=g(`arrow-down-a-z`,[[`path`,{d:`m3 16 4 4 4-4`,key:`1co6wj`}],[`path`,{d:`M7 20V4`,key:`1yoxec`}],[`path`,{d:`M20 8h-5`,key:`1vsyxs`}],[`path`,{d:`M15 10V6.5a2.5 2.5 0 0 1 5 0V10`,key:`ag13bf`}],[`path`,{d:`M15 14h5l-5 6h5`,key:`ur5jdg`}]]),ae=g(`arrow-down-wide-narrow`,[[`path`,{d:`m3 16 4 4 4-4`,key:`1co6wj`}],[`path`,{d:`M7 20V4`,key:`1yoxec`}],[`path`,{d:`M11 4h10`,key:`1w87gc`}],[`path`,{d:`M11 8h7`,key:`djye34`}],[`path`,{d:`M11 12h4`,key:`q8tih4`}]]),oe=g(`folder-open`,[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]),K=g(`folder-plus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),q=e(t(),1);function se(e){if(!e)return``;let t=e.indexOf(`;`);return(t===-1?e:e.slice(0,t)).trim()}function ce(e,t){return se(t)===`application/json`?!0:(e??``).toLowerCase().endsWith(`.json`)}function le(e){try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function ue(e){return e.split(`/`).some(e=>e.startsWith(`.`))}var J=o();function de(e){return s({queryFn:async()=>{let{data:t,error:n}=await x({path:e.path,query:{path:e.query.path,...e.query.showHidden?{showHidden:`true`}:{}}});if(n)throw n;return t},queryKey:[`assistantsWorkspaceFileRetrieve`,e]})}function fe({mimeType:e}){let t=e.indexOf(`;`),n=(t===-1?e:e.slice(0,t)).trim(),r=k;return n.startsWith(`image/`)?r=z:n.startsWith(`video/`)?r=M:!n.startsWith(`text/`)&&n!==`application/json`&&n!==`application/octet-stream`&&(r=P),(0,J.jsx)(`span`,{className:`flex h-5 w-5 shrink-0 items-center justify-center rounded`,style:{backgroundColor:`color-mix(in oklab, var(--content-default) 10%, transparent)`},children:(0,J.jsx)(r,{className:`h-3.5 w-3.5`,style:{color:`var(--content-default)`}})})}function pe({viewMode:e,onChange:t}){return(0,J.jsx)(`div`,{className:`inline-flex rounded-md p-0.5`,style:{backgroundColor:`color-mix(in oklab, var(--content-default) 6%, transparent)`},children:[`preview`,`source`].map(n=>{let r=e===n;return(0,J.jsx)(c,{variant:`ghost`,onClick:()=>t(n),className:`h-auto rounded border-0 px-2.5 py-1 text-body-small-default hover:bg-transparent`,style:{backgroundColor:r?`var(--surface-lift)`:`transparent`,color:r?`var(--content-default)`:`var(--content-tertiary)`,boxShadow:r?`0 1px 2px rgba(0,0,0,0.15)`:void 0},children:n===`preview`?`Preview`:`Source`},n)})})}function Y({name:e,mimeType:t,size:n,rightContent:r}){return(0,J.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b px-3 py-2.5`,style:{borderColor:`var(--border-element)`},children:[(0,J.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,J.jsx)(fe,{mimeType:t}),(0,J.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),n!=null&&(0,J.jsx)(`span`,{className:`shrink-0 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:G(n)})]}),r]})}function me({assistantId:e,path:t,mimeType:n,showHidden:r}){let{data:a,isLoading:o}=i({queryFn:async()=>{let n=await D({path:{assistant_id:e},query:{path:t,...r?{showHidden:`true`}:{}},parseAs:`blob`});if(n.error)throw n.error;return n.data},queryKey:[`assistantsWorkspaceFileContentRetrieve`,{assistantId:e,path:t,showHidden:r}],enabled:!!t}),[s,c]=(0,q.useState)(null);return(0,q.useEffect)(()=>{if(!a)return;let e=URL.createObjectURL(a);return c(e),()=>{URL.revokeObjectURL(e),c(null)}},[a]),o?(0,J.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,J.jsx)(v,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})}):s?n.startsWith(`image/`)?(0,J.jsx)(`div`,{className:`flex items-center justify-center p-4`,children:(0,J.jsx)(`img`,{src:s,alt:t.split(`/`).pop()??`image`,className:`max-h-[70vh] max-w-full rounded object-contain`})}):n.startsWith(`video/`)?(0,J.jsx)(`div`,{className:`flex items-center justify-center p-4`,children:(0,J.jsx)(`video`,{src:s,controls:!0,className:`max-h-[70vh] max-w-full rounded`})}):null:null}function he({isDirty:e,isSaving:t,onSave:n,onDiscard:r}){return(0,J.jsxs)(`div`,{className:`flex items-center justify-end gap-2 border-t px-3 py-2`,style:{borderColor:`var(--border-element)`},children:[(0,J.jsx)(c,{variant:`ghost`,size:`compact`,disabled:t,onClick:r,children:`Discard`}),t&&(0,J.jsx)(v,{className:`h-4 w-4 animate-spin`,style:{color:`var(--content-tertiary)`}}),(0,J.jsx)(c,{variant:`primary`,size:`compact`,disabled:!e||t,onClick:n,children:`Save`})]})}function X({content:e,downloadContent:t,fileName:n,mimeType:r,showEdit:i,isEditing:a,onToggleEdit:o}){let[s,l]=(0,q.useState)(!1),u=(0,q.useRef)(null),d=(0,q.useCallback)(()=>{navigator.clipboard.writeText(e).then(()=>{l(!0),u.current&&clearTimeout(u.current),u.current=setTimeout(()=>l(!1),1500)})},[e]),f=t??e,p=(0,q.useCallback)(()=>{let e=new Blob([f],{type:r}),t=URL.createObjectURL(e),i=document.createElement(`a`);i.href=t,i.download=n,i.click(),URL.revokeObjectURL(t)},[f,n,r]);return(0,q.useEffect)(()=>()=>{u.current&&clearTimeout(u.current)},[]),a?null:(0,J.jsxs)(`div`,{className:`absolute right-3 top-3 z-10 flex items-center gap-1 rounded-md bg-[var(--surface-primary)] shadow-sm`,children:[i&&(0,J.jsx)(c,{variant:`ghost`,size:`regular`,iconOnly:(0,J.jsx)(y,{"aria-hidden":!0}),onClick:o,"aria-label":`Edit file`,className:`hover:bg-[var(--surface-base)]`}),(0,J.jsx)(c,{variant:`ghost`,size:`regular`,iconOnly:s?(0,J.jsx)(L,{"aria-hidden":!0}):(0,J.jsx)(I,{"aria-hidden":!0}),onClick:d,"aria-label":s?`Copied`:`Copy file contents`,className:`hover:bg-[var(--surface-base)]`}),(0,J.jsx)(c,{variant:`ghost`,size:`regular`,iconOnly:(0,J.jsx)(A,{"aria-hidden":!0}),onClick:p,"aria-label":`Download file`,className:`hover:bg-[var(--surface-base)]`})]})}var ge=`ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace`;function Z({value:e,onChange:t,onSave:n}){return(0,J.jsx)(`textarea`,{className:`m-0 h-full w-full resize-none overflow-auto border-none bg-transparent p-4 text-body-medium-lighter leading-relaxed outline-none`,style:{color:`var(--content-default)`,fontFamily:ge},value:e,onChange:e=>t(e.target.value),onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&e.key===`s`&&(e.preventDefault(),n())},spellCheck:!1})}function Q({content:e,readOnly:t,whiteSpace:n=`pre-wrap`,onStartEdit:r}){return(0,J.jsx)(`pre`,{className:`m-0 h-full overflow-auto p-4 text-body-medium-lighter leading-relaxed${t?``:` cursor-text`}`,style:{color:`var(--content-default)`,fontFamily:ge,whiteSpace:n},onClick:t?void 0:r,children:e})}function _e({assistantId:e,selectedPath:t,showHidden:n,viewMode:o,onChangeViewMode:s,onBrowse:l,pathRename:u,pathDelete:d}){let f=r(),{data:p,isLoading:m}=i({...de({path:{assistant_id:e},query:{path:t??``,showHidden:n}}),enabled:!!t}),[h,g]=(0,q.useState)(null),[_,y]=(0,q.useState)(null);(0,q.useEffect)(()=>{if(!u)return;let{from:e,to:t}=u,n=n=>n===e?t:n.startsWith(`${e}/`)?t+n.slice(e.length):n;g(e=>e==null?e:n(e)),y(e=>e==null?e:{...e,path:n(e.path)})},[u]),(0,q.useEffect)(()=>{if(!d)return;let{path:e}=d,t=t=>t===e||t.startsWith(`${e}/`);g(e=>e!=null&&t(e)?null:e),y(e=>e!=null&&t(e.path)?null:e)},[d]);let b=h!=null&&h===t,x=p?.content??``,S=_?.path===t?_.content:x,w=()=>{g(null),y(null)},T=a({mutationFn:async({path:t,content:n})=>{let{error:r,response:i}=await C({path:{assistant_id:e},body:{path:t,content:n,encoding:`utf8`},throwOnError:!1});if(!i?.ok||r)throw Error(`Failed to save file`)},onSuccess:(e,t)=>{g(e=>e===t.path?null:e),y(e=>e?.path===t.path?null:e),f.invalidateQueries({queryKey:[`assistantsWorkspaceFileRetrieve`]})}}),E=S!==x,D=(0,q.useCallback)(()=>{t&&E&&!T.isPending&&T.mutate({path:t,content:S})},[t,E,T,S]);if(!t)return(0,J.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-3`,children:[(0,J.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Select a file to view`}),l&&(0,J.jsx)(c,{type:`button`,onClick:l,leftIcon:(0,J.jsx)(oe,{"aria-hidden":!0}),className:`sm:hidden`,children:`Browse files`})]});if(m)return(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,J.jsx)(v,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})});if(!p)return(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,J.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`File not found`})});let O=p.mimeType??`application/octet-stream`,k=p.name??t.split(`/`).pop()??t,A=W(k,O),j=ce(k,O),M=p.content!=null&&!A&&!j,N=t?ue(t):!0,F=b&&(0,J.jsx)(he,{isDirty:E,isSaving:T.isPending,onSave:D,onDiscard:w});if(A&&p.content!=null){let e=b?S:p.content;return(0,J.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,J.jsx)(Y,{name:k,mimeType:O,rightContent:(0,J.jsx)(pe,{viewMode:o,onChange:e=>{b&&w(),s(e)}})}),(0,J.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,J.jsx)(X,{content:e,fileName:k,mimeType:O,showEdit:!N&&o===`source`,isEditing:b,onToggleEdit:()=>b?w():g(t)}),o===`preview`?(0,J.jsx)(`div`,{className:`h-full overflow-auto px-6 py-4`,style:{color:`var(--content-default)`},children:(0,J.jsx)(re,{content:e})}):b?(0,J.jsx)(Z,{value:S,onChange:e=>y({path:t,content:e}),onSave:D}):(0,J.jsx)(Q,{content:p.content,readOnly:N,onStartEdit:()=>g(t)})]}),F]})}if(j&&p.content!=null){let e=b?S:p.content,n=le(e);return(0,J.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,J.jsx)(Y,{name:k,mimeType:O,rightContent:(0,J.jsx)(pe,{viewMode:o,onChange:e=>{b&&w(),s(e)}})}),(0,J.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,J.jsx)(X,{content:o===`preview`?n:e,downloadContent:e,fileName:k,mimeType:O,showEdit:!N&&o===`source`,isEditing:b,onToggleEdit:()=>b?w():g(t)}),o===`preview`?(0,J.jsx)(Q,{content:n,readOnly:!0,whiteSpace:`pre`}):b?(0,J.jsx)(Z,{value:S,onChange:e=>y({path:t,content:e}),onSave:D}):(0,J.jsx)(Q,{content:p.content,readOnly:N,onStartEdit:()=>g(t)})]}),F]})}return M?(0,J.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,J.jsx)(Y,{name:k,mimeType:O,size:p.size}),(0,J.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,J.jsx)(X,{content:b?S:p.content??``,fileName:k,mimeType:O,showEdit:!N,isEditing:b,onToggleEdit:()=>b?w():g(t)}),b?(0,J.jsx)(Z,{value:S,onChange:e=>y({path:t,content:e}),onSave:D}):(0,J.jsx)(Q,{content:p.content??``,readOnly:N,onStartEdit:()=>g(t)})]}),F]}):O.startsWith(`image/`)||O.startsWith(`video/`)?(0,J.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,J.jsx)(Y,{name:k,mimeType:O,size:p.size}),(0,J.jsx)(`div`,{className:`flex-1 overflow-auto`,children:(0,J.jsx)(me,{assistantId:e,path:t,mimeType:O,showHidden:n})})]}):(0,J.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,J.jsx)(Y,{name:k,mimeType:O,size:p.size}),(0,J.jsx)(`div`,{className:`flex flex-1 items-center justify-center p-8`,children:(0,J.jsxs)(`div`,{className:`w-full max-w-sm rounded-lg border p-6 text-center`,style:{borderColor:`var(--border-base)`,backgroundColor:`var(--surface-lift)`},children:[(0,J.jsx)(P,{className:`mx-auto h-10 w-10`,style:{color:`var(--content-tertiary)`}}),(0,J.jsx)(`p`,{className:`mt-3 text-body-medium-default`,style:{color:`var(--content-default)`},children:k}),(0,J.jsxs)(`div`,{className:`mt-2 space-y-1`,children:[(0,J.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:O}),(0,J.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:G(p.size,`Unknown size`)}),p.modifiedAt&&(0,J.jsxs)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:[`Modified: `,new Date(p.modifiedAt).toLocaleString()]})]})]})})]})}function ve(e,t){if(t===`name`)return e;let n=e.slice();return n.sort((e,t)=>{let n=e.size??null,r=t.size??null;return n===null&&r===null?(e.name??``).localeCompare(t.name??``):n===null?1:r===null?-1:n===r?(e.name??``).localeCompare(t.name??``):r-n}),n}function ye(e){return s({queryFn:async()=>{let t={};e.query?.path&&(t.path=e.query.path),e.query?.showHidden&&(t.showHidden=`true`),e.query?.includeDirSizes&&(t.includeDirSizes=`true`);let{data:n,error:r}=await E({path:e.path,query:t});if(r)throw r;if(!n)throw Error(`Failed to load workspace tree`);return n},queryKey:[`assistantsWorkspaceTreeRetrieve`,e]})}async function be(e,t,n,r){let i=n.toLowerCase(),a=r?.toLowerCase(),{data:o}=await E({path:{assistant_id:e},query:t?{path:t}:{}});if(o?.entries?.some(e=>{let t=(e.name??``).toLowerCase();return t===i&&t!==a}))throw Error(`"${n}" already exists here.`)}function xe({entry:e}){return e.type===`directory`?(0,J.jsx)(N,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}):e.mimeType?.startsWith(`image/`)?(0,J.jsx)(z,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}):e.mimeType?.startsWith(`video/`)?(0,J.jsx)(M,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,J.jsx)(k,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}})}function $({entry:e,assistantId:t,expandedPaths:n,selectedPath:r,showHidden:a,sortMode:o,searchLower:s,onToggleExpand:c,onSelectPath:l,onRequestDelete:d,onRequestRename:f,onRequestCreate:p,depth:m}){let h=e.path??``,g=e.name??``,v=e.type===`directory`,b=n.has(h),x=r===h,S=g.startsWith(`.`),C=!ue(h),w=v&&(b||s.length>0),{data:T}=i({...ye({path:{assistant_id:t},query:{path:h,showHidden:a,includeDirSizes:o===`size`}}),enabled:v&&w}),E=(0,q.useMemo)(()=>ve(T?.entries??[],o),[T?.entries,o]),D=s===``||g.toLowerCase().includes(s);if(s!==``&&!v&&!D)return null;let O=(0,J.jsxs)(`button`,{onClick:()=>{v?c(h):l(h)},className:`flex w-full items-center gap-1.5 px-2 py-1 text-left text-body-medium-lighter transition-colors hover:bg-[var(--surface-hover)]`,style:{paddingLeft:`${m*14+8}px`,paddingRight:`8px`,color:x?`var(--content-default)`:S?`var(--content-tertiary)`:`var(--content-default)`,backgroundColor:x?`color-mix(in oklab, var(--primary-base) 12%, transparent)`:void 0,opacity:S&&!x?.7:1},children:[v?w?(0,J.jsx)(B,{className:`h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,J.jsx)(_,{className:`h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,J.jsx)(`span`,{className:`h-3 w-3 shrink-0`}),(0,J.jsx)(xe,{entry:e}),(0,J.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:g}),e.size!=null&&(0,J.jsx)(`span`,{className:`shrink-0 text-label-medium-default tabular-nums`,style:{color:`var(--content-tertiary)`},children:G(e.size)})]});return(0,J.jsxs)(`div`,{children:[C?(0,J.jsxs)(u.Root,{children:[(0,J.jsx)(u.Trigger,{children:O}),(0,J.jsxs)(u.Content,{children:[v&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(u.Item,{leftIcon:(0,J.jsx)(j,{className:`h-3.5 w-3.5`}),onSelect:()=>p({kind:`file`,parentPath:h}),children:`New File`}),(0,J.jsx)(u.Item,{leftIcon:(0,J.jsx)(K,{className:`h-3.5 w-3.5`}),onSelect:()=>p({kind:`folder`,parentPath:h}),children:`New Folder`}),(0,J.jsx)(u.Separator,{})]}),(0,J.jsx)(u.Item,{leftIcon:(0,J.jsx)(ee,{className:`h-3.5 w-3.5`}),onSelect:()=>d({path:h,name:g,isDirectory:v}),children:`Delete`}),(0,J.jsx)(u.Item,{leftIcon:(0,J.jsx)(y,{className:`h-3.5 w-3.5`}),onSelect:()=>f({path:h,name:g,isDirectory:v}),children:`Rename`})]})]}):O,v&&w&&E.length>0&&(0,J.jsx)(`div`,{children:E.map(e=>(0,J.jsx)($,{entry:e,assistantId:t,expandedPaths:n,selectedPath:r,showHidden:a,sortMode:o,searchLower:s,onToggleExpand:c,onSelectPath:l,onRequestDelete:d,onRequestRename:f,onRequestCreate:p,depth:m+1},e.path))})]})}function Se({title:e,placeholder:t,confirmLabel:n,pendingLabel:r,initialName:i,onCancel:a,onConfirm:o,pending:s,error:l}){let u=(0,q.useRef)(null),[d,f]=(0,q.useState)(i??``),p=d.trim(),g=p.length>0&&(/[/\\]/.test(p)||p===`.`||p===`..`),_=p.length>0&&!g&&!s;return(0,J.jsx)(h.Root,{open:!0,onOpenChange:e=>{!e&&!s&&a()},children:(0,J.jsx)(h.Content,{size:`sm`,hideCloseButton:!0,"aria-describedby":void 0,onOpenAutoFocus:e=>{e.preventDefault();let t=u.current;t&&(t.focus(),requestAnimationFrame(()=>{t.setSelectionRange(0,t.value.length)}))},onEscapeKeyDown:e=>{e.preventDefault(),e.stopPropagation(),s||a()},children:(0,J.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),_&&o(p)},children:[(0,J.jsx)(h.Header,{children:(0,J.jsx)(h.Title,{children:e})}),(0,J.jsx)(h.Body,{children:(0,J.jsx)(m,{ref:u,label:`Name`,value:d,onChange:e=>f(e.target.value),placeholder:t,errorText:l??(g?`Enter a single file or folder name without slashes.`:void 0),autoComplete:`off`,spellCheck:!1,fullWidth:!0})}),(0,J.jsxs)(h.Footer,{children:[(0,J.jsx)(c,{type:`button`,variant:`outlined`,onClick:a,disabled:s,children:`Cancel`}),(0,J.jsx)(c,{type:`submit`,variant:`primary`,disabled:!_,children:s?r:n})]})]})})})}function Ce({assistantId:e,expandedPaths:t,selectedPath:n,showHidden:o,sortMode:s,onToggleExpand:l,onExpandPath:u,onSelectPath:f,onToggleShowHidden:p,onChangeSortMode:h,onPathDeleted:g,onPathRenamed:_}){let v=r(),[y,x]=(0,q.useState)(``),E=y.trim().toLowerCase(),[D,O]=(0,q.useState)(!1),[k,A]=(0,q.useState)(null),[j,M]=(0,q.useState)(null),N=(0,q.useCallback)(()=>{A(null),M(null)},[]),{data:P,isLoading:ee}=i(ye({path:{assistant_id:e},query:{showHidden:o,includeDirSizes:s===`size`}})),I=(0,q.useMemo)(()=>ve(P?.entries??[],s),[P?.entries,s]),L=(0,q.useCallback)(()=>{for(let e of[`assistantsWorkspaceTreeRetrieve`,`assistantsWorkspaceFileRetrieve`,`assistantsWorkspaceFileContentRetrieve`])v.invalidateQueries({queryKey:[e]})},[v]),R=a({mutationFn:async t=>{let n=t.parentPath?`${t.parentPath}/${t.name}`:t.name;await be(e,t.parentPath,t.name);let{error:r,response:i}=t.kind===`file`?await C({path:{assistant_id:e},body:{path:n,content:``,encoding:`utf8`},throwOnError:!1}):await T({path:{assistant_id:e},body:{path:n},throwOnError:!1});if(r||!i?.ok)throw Error(typeof r==`string`?r:`Failed to create — check the name and try again.`);return{...t,path:n}},onSuccess:e=>{N(),L(),e.parentPath&&u(e.parentPath),e.kind===`file`?f(e.path):u(e.path)},onError:e=>{M(e instanceof Error?e.message:`Failed to create.`)}}),z=a({mutationFn:async t=>{let n=t.oldPath.lastIndexOf(`/`),r=n===-1?``:t.oldPath.slice(0,n),i=t.oldPath.slice(n+1),a=r?`${r}/${t.newName}`:t.newName;await be(e,r,t.newName,i);let{error:o,response:s}=await w({path:{assistant_id:e},body:{oldPath:t.oldPath,newPath:a},throwOnError:!1});if(o||!s?.ok)throw Error(typeof o==`string`?o:`Failed to rename — check the name and try again.`);return{oldPath:t.oldPath,newPath:a}},onSuccess:({oldPath:e,newPath:t})=>{N(),L(),_(e,t)},onError:e=>{M(e instanceof Error?e.message:`Failed to rename.`)}}),B=(0,q.useCallback)(e=>{M(null),A({type:`create`,...e})},[]),V=(0,q.useCallback)(e=>{M(null),A({type:`rename`,path:e.path,name:e.name})},[]),[H,U]=(0,q.useState)(null),W=a({mutationFn:async t=>{let{error:n,response:r}=await S({path:{assistant_id:e},body:{path:t.path},throwOnError:!1});if(n||!r?.ok)throw Error(typeof n==`string`?n:`Failed to delete — try again.`);return t},onSuccess:e=>{U(null),L(),g(e.path)}}),re=(0,q.useCallback)(e=>{W.reset(),U(e)},[W]);return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`div`,{className:`flex items-center justify-between border-b px-3 py-2.5`,style:{borderColor:`var(--border-element)`},children:[(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-secondary)`},children:`Files`}),(0,J.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[(0,J.jsx)(c,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:s===`size`?(0,J.jsx)(ae,{"aria-hidden":!0}):(0,J.jsx)(ie,{"aria-hidden":!0}),onClick:()=>h(s===`size`?`name`:`size`),"aria-label":s===`size`?`Sort by name`:`Sort by size`,title:s===`size`?`Sorted by size — switch to name`:`Sorted by name — switch to size`,tintColor:s===`size`?`var(--content-default)`:`var(--content-tertiary)`}),(0,J.jsx)(c,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:o?(0,J.jsx)(F,{"aria-hidden":!0}):(0,J.jsx)(ne,{"aria-hidden":!0}),onClick:p,"aria-label":o?`Hide hidden files`:`Show hidden files`,title:o?`Hide hidden files`:`Show hidden files`,tintColor:o?`var(--content-default)`:`var(--content-tertiary)`}),(0,J.jsx)(we,{open:D,onOpenChange:O,onSelectKind:e=>{O(!1),B({kind:e,parentPath:``})}})]})]}),(0,J.jsx)(`div`,{className:`px-3 py-2`,children:(0,J.jsxs)(`div`,{className:`relative`,children:[(0,J.jsx)(m,{type:`text`,value:y,onChange:e=>x(e.target.value),placeholder:`Search files`,leftIcon:(0,J.jsx)(te,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,spellCheck:!1,autoComplete:`off`}),y&&(0,J.jsx)(c,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,J.jsx)(b,{"aria-hidden":!0}),onClick:()=>x(``),"aria-label":`Clear search`,className:`absolute right-1.5 top-1/2 -translate-y-1/2`,tintColor:`var(--content-tertiary)`})]})}),(0,J.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto py-1`,children:ee?(0,J.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,J.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`,style:{color:`var(--content-tertiary)`}})}):I.length?I.map(r=>(0,J.jsx)($,{entry:r,assistantId:e,expandedPaths:t,selectedPath:n,showHidden:o,sortMode:s,searchLower:E,onToggleExpand:l,onSelectPath:f,onRequestDelete:re,onRequestRename:V,onRequestCreate:B,depth:0},r.path)):(0,J.jsx)(`p`,{className:`px-3 py-4 text-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`No files found`})}),k?.type===`create`&&(0,J.jsx)(Se,{title:k.kind===`file`?`New File`:`New Folder`,placeholder:k.kind===`file`?`filename.md`:`folder-name`,confirmLabel:`Create`,pendingLabel:`Creating…`,onCancel:N,onConfirm:e=>{M(null),R.mutate({kind:k.kind,parentPath:k.parentPath,name:e})},pending:R.isPending,error:j},`create-${k.kind}-${k.parentPath}`),k?.type===`rename`&&(0,J.jsx)(Se,{title:`Rename`,placeholder:k.name,confirmLabel:`Rename`,pendingLabel:`Renaming…`,initialName:k.name,onCancel:N,onConfirm:e=>{if(e===k.name){N();return}M(null),z.mutate({oldPath:k.path,newName:e})},pending:z.isPending,error:j},`rename-${k.path}`),(0,J.jsx)(d,{open:H!==null,title:H?.isDirectory?`Delete Folder`:`Delete File`,message:(0,J.jsxs)(J.Fragment,{children:[`Are you sure you want to delete`,` `,(0,J.jsx)(`span`,{style:{color:`var(--content-default)`},children:H?.name}),H?.isDirectory?` and all of its contents`:``,`? This cannot be undone.`,W.error&&(0,J.jsx)(`span`,{className:`mt-2 block`,style:{color:`var(--system-negative-strong)`},children:W.error.message})]}),confirmLabel:W.isPending?`Deleting…`:`Delete`,destructive:!0,isPending:W.isPending,onConfirm:()=>{H&&W.mutate(H)},onCancel:()=>U(null)})]})}function we({open:e,onOpenChange:t,onSelectKind:n}){return O()?(0,J.jsxs)(f.Root,{open:e,onOpenChange:t,children:[(0,J.jsx)(f.Trigger,{asChild:!0,children:(0,J.jsx)(c,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,J.jsx)(R,{"aria-hidden":!0}),"aria-label":`Create new file or folder`,title:`New file or folder`,tintColor:`var(--content-tertiary)`})}),(0,J.jsxs)(f.Content,{children:[(0,J.jsx)(f.Header,{className:`sr-only`,children:(0,J.jsx)(f.Title,{children:`Create new`})}),(0,J.jsxs)(f.Body,{className:`pt-0`,children:[(0,J.jsx)(p,{icon:j,label:`New File`,onSelect:()=>n(`file`)}),(0,J.jsx)(p,{icon:K,label:`New Folder`,onSelect:()=>n(`folder`)})]})]})]}):(0,J.jsxs)(l.Root,{open:e,onOpenChange:t,children:[(0,J.jsx)(l.Trigger,{asChild:!0,children:(0,J.jsx)(c,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,J.jsx)(R,{"aria-hidden":!0}),"aria-label":`Create new file or folder`,title:`New file or folder`,tintColor:`var(--content-tertiary)`})}),(0,J.jsxs)(l.Content,{align:`end`,sideOffset:4,children:[(0,J.jsx)(l.Item,{leftIcon:(0,J.jsx)(j,{className:`h-3.5 w-3.5`}),onSelect:()=>n(`file`),children:`New File`}),(0,J.jsx)(l.Item,{leftIcon:(0,J.jsx)(K,{className:`h-3.5 w-3.5`}),onSelect:()=>n(`folder`),children:`New Folder`})]})]})}function Te({assistantId:e}){let[t,r]=(0,q.useState)(new Set),[i,a]=(0,q.useState)(null),[o,s]=(0,q.useState)(!1),[c]=n(),[l,u]=(0,q.useState)(()=>c.get(`sort`)===`size`?`size`:`name`),[d,f]=(0,q.useState)(`preview`),p=(0,q.useCallback)(e=>{r(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),m=(0,q.useCallback)(e=>{r(t=>{if(t.has(e))return t;let n=new Set(t);return n.add(e),n})},[]),[h,g]=(0,q.useState)(!1),_=(0,q.useCallback)(e=>{a(e),g(!1)},[]),[v,y]=(0,q.useState)(null),b=(0,q.useCallback)(e=>{let t=t=>t===e||t.startsWith(`${e}/`);a(e=>e!==null&&t(e)?null:e),r(e=>{let n=new Set([...e].filter(e=>!t(e)));return n.size===e.size?e:n}),y({path:e})},[]),[x,S]=(0,q.useState)(null),C={assistantId:e,expandedPaths:t,selectedPath:i,showHidden:o,sortMode:l,onToggleExpand:p,onExpandPath:m,onSelectPath:_,onToggleShowHidden:()=>s(e=>!e),onChangeSortMode:u,onPathDeleted:b,onPathRenamed:(0,q.useCallback)((e,t)=>{let n=n=>n===e?t:n.startsWith(`${e}/`)?t+n.slice(e.length):n;a(e=>e===null?e:n(e)),r(e=>{let t=!1,r=new Set;for(let i of e){let e=n(i);e!==i&&(t=!0),r.add(e)}return t?r:e}),S({from:e,to:t})},[])};return(0,J.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col gap-4`,children:[(0,J.jsx)(`div`,{className:`flex items-center sm:hidden`,children:(0,J.jsx)(H,{onClick:()=>g(!0)})}),(0,J.jsx)(U,{open:h,onClose:()=>g(!1),title:`Files`,children:(0,J.jsx)(Ce,{...C})}),(0,J.jsxs)(`div`,{className:`grid min-h-0 flex-1 grid-cols-1 gap-4 sm:grid-cols-[320px_1fr]`,children:[(0,J.jsx)(`div`,{className:`hidden min-h-0 min-w-0 flex-col overflow-hidden rounded-xl border sm:flex`,style:{backgroundColor:`var(--surface-overlay)`,borderColor:`var(--border-base)`},children:(0,J.jsx)(Ce,{...C})}),(0,J.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-col overflow-hidden rounded-xl border`,style:{backgroundColor:`var(--surface-overlay)`,borderColor:`var(--border-base)`},children:(0,J.jsx)(_e,{assistantId:e,selectedPath:i,showHidden:o,viewMode:d,onChangeViewMode:f,onBrowse:()=>g(!0),pathRename:x,pathDelete:v})})]})]})}function Ee(){return(0,J.jsx)(Te,{assistantId:V()})}export{Ee as WorkspacePage};
@@ -1 +0,0 @@
1
- import{t as e}from"./createLucideIcon-D6d6iDdi.js";var t=e(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]);export{t};
@@ -1,34 +0,0 @@
1
- <svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">
2
- <rect width="16" height="16" fill="#f0f0f0"/>
3
-
4
- <!-- Left task list (template layer) -->
5
- <rect x="1" y="2" width="6" height="12" fill="#e8f4f8" stroke="#4a90e2" stroke-width="0.5"/>
6
- <rect x="2" y="3" width="4" height="1" fill="#4a90e2"/>
7
- <rect x="2" y="5" width="1" height="1" fill="#2ecc71"/>
8
- <rect x="4" y="5" width="2" height="1" fill="#95a5a6"/>
9
- <rect x="2" y="7" width="1" height="1" fill="#2ecc71"/>
10
- <rect x="4" y="7" width="2" height="1" fill="#95a5a6"/>
11
- <rect x="2" y="9" width="1" height="1" fill="#2ecc71"/>
12
- <rect x="4" y="9" width="2" height="1" fill="#95a5a6"/>
13
- <rect x="2" y="11" width="1" height="1" fill="#2ecc71"/>
14
- <rect x="4" y="11" width="2" height="1" fill="#95a5a6"/>
15
-
16
- <!-- Right task queue (prioritized work) -->
17
- <rect x="9" y="2" width="6" height="12" fill="#fff4e6" stroke="#f39c12" stroke-width="0.5"/>
18
- <rect x="10" y="3" width="4" height="1" fill="#f39c12"/>
19
-
20
- <!-- Priority indicators (arrows) -->
21
- <rect x="10" y="5" width="1" height="1" fill="#e74c3c"/>
22
- <rect x="12" y="5" width="2" height="1" fill="#95a5a6"/>
23
-
24
- <rect x="10" y="7" width="1" height="1" fill="#f39c12"/>
25
- <rect x="12" y="7" width="2" height="1" fill="#95a5a6"/>
26
-
27
- <rect x="10" y="9" width="1" height="1" fill="#2ecc71"/>
28
- <rect x="12" y="9" width="2" height="1" fill="#95a5a6"/>
29
-
30
- <!-- Connection arrow between lists -->
31
- <rect x="7" y="7" width="2" height="1" fill="#4a90e2" opacity="0.6"/>
32
- <rect x="8" y="6" width="1" height="1" fill="#4a90e2" opacity="0.6"/>
33
- <rect x="8" y="8" width="1" height="1" fill="#4a90e2" opacity="0.6"/>
34
- </svg>