@vellumai/web 0.8.10 → 0.8.11-dev.202606112057.e4bc22e

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 (618) hide show
  1. package/dist/assets/{BundleConfirmPage-CkmGRzTV.js → BundleConfirmPage-CPryoXtF.js} +1 -1
  2. package/dist/assets/{QueryClientProvider-DNHWXaGq.js → QueryClientProvider-BpXwpnE8.js} +1 -1
  3. package/dist/assets/{about-page-M03PCQjM.js → about-page-BI7-fXGl.js} +1 -1
  4. package/dist/assets/account-page-DWObMMoJ.js +1 -0
  5. package/dist/assets/account-shell-CYasU2Kz.js +1 -0
  6. package/dist/assets/add-credits-modal-DVRarsE6.js +1 -0
  7. package/dist/assets/advanced-page-Bp-Wpmea.js +1 -0
  8. package/dist/assets/ai-page-_k0O92uW.js +1 -0
  9. package/dist/assets/ai-utils-Cjgx6ger.js +1 -0
  10. package/dist/assets/{angular-html-EHq37VRB.js → angular-html-B9_fvgaO.js} +1 -1
  11. package/dist/assets/{angular-ts-CyvnMw9x.js → angular-ts-CbYMwHw4.js} +1 -1
  12. package/dist/assets/api-PJAhlDMz.js +39 -0
  13. package/dist/assets/{api-key-screen-_pmVhsup.js → api-key-screen-DGnuXeH7.js} +1 -1
  14. package/dist/assets/{apl-CDFqSPmq.js → apl-CuWsgHB_.js} +1 -1
  15. package/dist/assets/{app-html-cache-DNQd-TK8.js → app-html-cache-Bi4_a89e.js} +1 -1
  16. package/dist/assets/{archive-BmTrKV5M.js → archive-CIHNLBfU.js} +1 -1
  17. package/dist/assets/{archive-page-Bn06aNEy.js → archive-page-Ba68sndX.js} +1 -1
  18. package/dist/assets/arrow-up-d1ABatEx.js +1 -0
  19. package/dist/assets/{assistant-feature-flag-store-0382ImYF.js → assistant-feature-flag-store-64uCGR1a.js} +1 -1
  20. package/dist/assets/assistant-identity-store-Ciz_hQgn.js +1 -0
  21. package/dist/assets/assistant-status-panel-B4J8Pyne.js +1 -0
  22. package/dist/assets/{astro-DwtMGmbh.js → astro-Di_wqNs-.js} +1 -1
  23. package/dist/assets/auth-store-xx3frXnj.js +6 -0
  24. package/dist/assets/{avatar-api-BwHmtSnS.js → avatar-api-CgC19-AQ.js} +1 -1
  25. package/dist/assets/{bell-C7RL04h4.js → bell-CF0zp--e.js} +1 -1
  26. package/dist/assets/billing-page-D2SfWHgP.js +3 -0
  27. package/dist/assets/billing-usage-chart-COxUCZBG.js +33 -0
  28. package/dist/assets/{blade-CxYcTDW-.js → blade-cr3M9QYY.js} +1 -1
  29. package/dist/assets/{bsl-CVaQXkX-.js → bsl-CmrFk4fR.js} +1 -1
  30. package/dist/assets/{bug-DDEBp29t.js → bug-DTFpOd2b.js} +1 -1
  31. package/dist/assets/button-ZmbzEAAS.js +1 -0
  32. package/dist/assets/{cairo-2Y07A7vZ.js → cairo-DxZ38D2j.js} +1 -1
  33. package/dist/assets/{calendar-CP_Q3Aw6.js → calendar-BUa7hyTt.js} +1 -1
  34. package/dist/assets/{capture-error-CZsNGL6n.js → capture-error-CvBWXhSx.js} +1 -1
  35. package/dist/assets/{card-CL5iEMJO.js → card-CrD82Ne1.js} +1 -1
  36. package/dist/assets/check-CKrtWoQ9.js +1 -0
  37. package/dist/assets/check-Z3BL4KoN.js +1 -0
  38. package/dist/assets/{checkbox-qlcBvCFW.js → checkbox-BwXSV7oH.js} +1 -1
  39. package/dist/assets/chevron-left-gyc_YyM6.js +1 -0
  40. package/dist/assets/chevron-right-CxC9-xwF.js +1 -0
  41. package/dist/assets/{chevron-up-D4oYMRNW.js → chevron-up-CzHS217m.js} +1 -1
  42. package/dist/assets/{chunk-5KNZJZUH-DdS6bb-3.js → chunk-5KNZJZUH-Wj10BWAH.js} +1 -1
  43. package/dist/assets/circle-check-big-DdCPAV53.js +1 -0
  44. package/dist/assets/cloud-off-DPQFjDMD.js +1 -0
  45. package/dist/assets/{cn-DFqQkJlk.js → cn-BwSINBj1.js} +1 -1
  46. package/dist/assets/{cobol-B5bQhoAq.js → cobol-CPx5B7KC.js} +1 -1
  47. package/dist/assets/{coffee-CX-zNI46.js → coffee-CM1DG1B0.js} +1 -1
  48. package/dist/assets/command-palette-C5on9xw2.js +1 -0
  49. package/dist/assets/command-palette-window-page-KKxdh-gp.js +1 -0
  50. package/dist/assets/{community-page-Dt39tUwD.js → community-page-BdEiqJuw.js} +1 -1
  51. package/dist/assets/{confirm-dialog-NYG-K9zN.js → confirm-dialog-BJUKpAyf.js} +1 -1
  52. package/dist/assets/{connect-page-Csfk5gxJ.js → connect-page-7eVnRGK0.js} +1 -1
  53. package/dist/assets/{contacts-gateway-DBRvewkn.js → contacts-gateway-CRSloEQR.js} +1 -1
  54. package/dist/assets/contacts-page-route-CMZGJ8sb.js +1 -0
  55. package/dist/assets/{conversation-store-BEgf__eu.js → conversation-store-rDJ22pr_.js} +1 -1
  56. package/dist/assets/{cpp-D-wqygg_.js → cpp-BZZ0Ew3l.js} +1 -1
  57. package/dist/assets/{create-selectors-CDULelrw.js → create-selectors-ClKYtNTG.js} +1 -1
  58. package/dist/assets/{createLucideIcon-Bjb-Kuq7.js → createLucideIcon-B3-Qpd7u.js} +1 -1
  59. package/dist/assets/{createLucideIcon-D6d6iDdi.js → createLucideIcon-C7L1eQfC.js} +1 -1
  60. package/dist/assets/{crystal-2rXzMO-C.js → crystal-Dxf5Z939.js} +1 -1
  61. package/dist/assets/danger-zone-redirect-page-ASvjJo-8.js +1 -0
  62. package/dist/assets/debug-page-CKzIYqAB.js +2 -0
  63. package/dist/assets/deploy-dialogs-DSzZpDGu.js +1 -0
  64. package/dist/assets/{detail-card-B5j4Rqau.js → detail-card-CfY5SD4N.js} +1 -1
  65. package/dist/assets/developer-page-pVpKNBSd.js +1 -0
  66. package/dist/assets/devices-page-BvEySQvS.js +1 -0
  67. package/dist/assets/dictation-overlay-page-BdfeV5cQ.js +1 -0
  68. package/dist/assets/{dist-D6LVk88Z.js → dist-Bn8beCvg.js} +2 -2
  69. package/dist/assets/{dist-BmaCqMgD.js → dist-DLn_2967.js} +3 -3
  70. package/dist/assets/{dist-B1Fpj7hg.js → dist-DnhTfzvk.js} +1 -1
  71. package/dist/assets/{document-viewer-page-DZuzK5Y4.js → document-viewer-page-Nihyapsm.js} +1 -1
  72. package/dist/assets/{dollar-sign-B-1DlpoB.js → dollar-sign-Bifw1AtA.js} +1 -1
  73. package/dist/assets/{domain-field-cWBlWR4h.js → domain-field-DkFSAlNK.js} +1 -1
  74. package/dist/assets/dropdown-CJpDydmg.js +1 -0
  75. package/dist/assets/earn-credits-modal-C-X2R1vl.js +1 -0
  76. package/dist/assets/{edge-DxiTxESb.js → edge-H8PZiD8z.js} +1 -1
  77. package/dist/assets/{elixir-BqExV7Mb.js → elixir-DOOUtTWk.js} +1 -1
  78. package/dist/assets/{ellipsis-vertical-Dxg526It.js → ellipsis-vertical-Cf6GSHZr.js} +1 -1
  79. package/dist/assets/{elm-DoHcZ_98.js → elm-DwIFIkm6.js} +1 -1
  80. package/dist/assets/emails-page-BYWEyCnZ.js +1 -0
  81. package/dist/assets/environment-store-DkxOLVob.js +1 -0
  82. package/dist/assets/{erb-T1Yd4grC.js → erb-BXU_w8Tp.js} +1 -1
  83. package/dist/assets/{erlang-sMV4xc3e.js → erlang-C5fSfESP.js} +1 -1
  84. package/dist/assets/esm-6IxBCGCO.js +2 -0
  85. package/dist/assets/esm-BtyZI1SJ.js +2 -0
  86. package/dist/assets/{esm-BfiJ42Ad.js → esm-C6K1PcVw.js} +2 -2
  87. package/dist/assets/esm-CnSCF6OL.js +2 -0
  88. package/dist/assets/esm-DK50CBln.js +2 -0
  89. package/dist/assets/{external-link-BCB1rbW9.js → external-link-C8AWiS6J.js} +1 -1
  90. package/dist/assets/feature-flag-catalog-n3NQirWN.js +1 -0
  91. package/dist/assets/{file-markdown-DX5x9ziL.js → file-markdown-B41-Bzs5.js} +1 -1
  92. package/dist/assets/flag-query-freshness-DqoNZsp2.js +1 -0
  93. package/dist/assets/{usage-window-D5EMg2nb.js → format-date-label-DYcI3c-X.js} +1 -1
  94. package/dist/assets/{fortran-fixed-form-DKnaUnzq.js → fortran-fixed-form-DZLDEFVv.js} +1 -1
  95. package/dist/assets/{fsharp-BizN7JaO.js → fsharp-CRWAu5AT.js} +1 -1
  96. package/dist/assets/{gdresource-C03Nu36p.js → gdresource-DEBFxllx.js} +1 -1
  97. package/dist/assets/general-page-Bd5Ob8J9.js +1 -0
  98. package/dist/assets/{git-commit-Dlbu4g9u.js → git-commit-NqbSnnsQ.js} +1 -1
  99. package/dist/assets/{git-rebase-Bp5nCjBJ.js → git-rebase-BsfepoAE.js} +1 -1
  100. package/dist/assets/{glimmer-js-BRNkuAjG.js → glimmer-js-CgFlNtM0.js} +1 -1
  101. package/dist/assets/{glimmer-ts-C-WDx-0B.js → glimmer-ts-BUV_cs1z.js} +1 -1
  102. package/dist/assets/{globe-ByNYDdSW.js → globe-LB3TN2EZ.js} +1 -1
  103. package/dist/assets/{glsl-CjrHb9ps.js → glsl-CRwdQFso.js} +1 -1
  104. package/dist/assets/{google-logo-mNxCGWd3.js → google-logo-Byqb5zvP.js} +1 -1
  105. package/dist/assets/{graphql-vJOsI9Q0.js → graphql-4lfrtex3.js} +1 -1
  106. package/dist/assets/{hack-TawZ7_H0.js → hack-CBjAhKbv.js} +1 -1
  107. package/dist/assets/{haml-Ck1tHO4J.js → haml-DSLkR28p.js} +1 -1
  108. package/dist/assets/{handlebars-CW8KnsAX.js → handlebars-ummOU_PA.js} +1 -1
  109. package/dist/assets/{hard-drive-DKBjBUo8.js → hard-drive-VEE5MMlP.js} +1 -1
  110. package/dist/assets/hatching-screen-ChfELbn_.js +1 -0
  111. package/dist/assets/home-page-route-BMqAx5xA.js +1 -0
  112. package/dist/assets/{hosting-screen-B-KyyLUm.js → hosting-screen-CefC7m8a.js} +1 -1
  113. package/dist/assets/{html-derivative-CxaJ6DvG.js → html-derivative-GFgekiTL.js} +1 -1
  114. package/dist/assets/{html-Dni-tmtM.js → html-sDbqX_mI.js} +1 -1
  115. package/dist/assets/{http-Dp4EVAWP.js → http-Cc1hZgsi.js} +1 -1
  116. package/dist/assets/{hurl-CSfNp96n.js → hurl-BM3oSJDt.js} +1 -1
  117. package/dist/assets/{hxml-DHyd-nrX.js → hxml-BwLf8ppu.js} +1 -1
  118. package/dist/assets/identity-page-route-CLwyYvCB.js +1 -0
  119. package/dist/assets/index-C_l6Def5.css +2 -0
  120. package/dist/assets/index-CvigeYcJ.js +123 -0
  121. package/dist/assets/{input-Cu3PPVCq.js → input-oOg5262q.js} +1 -1
  122. package/dist/assets/inspect-page-CtJvrc3e.js +3 -0
  123. package/dist/assets/{install-DzcS2hVv.js → install-F-Nea6aS.js} +1 -1
  124. package/dist/assets/integrations-page-HE9On-tp.js +1 -0
  125. package/dist/assets/{intelligence-layout-DZ_lXLTB.js → intelligence-layout-De80jEdc.js} +1 -1
  126. package/dist/assets/{jinja-CijccQJ8.js → jinja-DJv8rnPG.js} +1 -1
  127. package/dist/assets/{jison-Bt8ZjqFZ.js → jison-C_0f5q2i.js} +1 -1
  128. package/dist/assets/{julia-BiriYc35.js → julia-CTPIJ15n.js} +1 -1
  129. package/dist/assets/{just-DHvFRFSz.js → just-CX7M8aAU.js} +1 -1
  130. package/dist/assets/{keyboard-shortcuts-page-CwEtke1e.js → keyboard-shortcuts-page-BpkbfFY2.js} +1 -1
  131. package/dist/assets/{latex-Dyl4S9re.js → latex-Cs8J7wl-.js} +1 -1
  132. package/dist/assets/lazy-boundary-DnyVkwP3.js +1 -0
  133. package/dist/assets/{lib-B8eh8Q36.js → lib-Byen-VsG.js} +1 -1
  134. package/dist/assets/lib-D6ez33x9.js +1 -0
  135. package/dist/assets/library-detail-page-QzuxSquM.js +1 -0
  136. package/dist/assets/library-page-C0ICi4Qd.js +1 -0
  137. package/dist/assets/{link-2-BHdo-6Lp.js → link-2-Tx_1C5rf.js} +1 -1
  138. package/dist/assets/{liquid-BB4lKYGB.js → liquid-CmNccC7t.js} +1 -1
  139. package/dist/assets/loader-circle-CGG7d7h5.js +1 -0
  140. package/dist/assets/{login-flow-BZiMiMrf.js → login-flow-DJ2SCPJI.js} +1 -1
  141. package/dist/assets/{login-page-C-lBEtiR.js → login-page-DvrhjQfA.js} +1 -1
  142. package/dist/assets/logout-page-Y5bDjndR.js +1 -0
  143. package/dist/assets/{logs-layout-C2Qs3fI-.js → logs-layout-B0Dp07T1.js} +1 -1
  144. package/dist/assets/{lua-BvVuKqEk.js → lua-BidrLXze.js} +1 -1
  145. package/dist/assets/{marko-S1DsBE-c.js → marko-B-rfcbkW.js} +1 -1
  146. package/dist/assets/{mdc-Dh4PJVso.js → mdc-DD3dzYMW.js} +1 -1
  147. package/dist/assets/{memory-router-playground-page-D9miza7X.js → memory-router-playground-page-C8Xda9lP.js} +1 -1
  148. package/dist/assets/{menu-B79-l6IU.js → menu-DbumDKd8.js} +1 -1
  149. package/dist/assets/{minimize-2-CXA_X5M9.js → minimize-2-CKk73ntp.js} +1 -1
  150. package/dist/assets/{misc-MEUnNRwX.js → misc-C0cIsv6t.js} +1 -1
  151. package/dist/assets/{mobile-sidebar-drawer-DrrMr6Xw.js → mobile-sidebar-drawer-IWkE6vpZ.js} +1 -1
  152. package/dist/assets/modal-BlLwYuDU.js +1 -0
  153. package/dist/assets/moon-DIpAu-9u.js +1 -0
  154. package/dist/assets/{native-file-CS-pobfT.js → native-file-C6Fm47NG.js} +2 -2
  155. package/dist/assets/{nextflow-BE6HS58m.js → nextflow-DHqwZiKQ.js} +1 -1
  156. package/dist/assets/{nginx-BZIz2mri.js → nginx-VAm5jQhn.js} +1 -1
  157. package/dist/assets/{nim-DTA68UpI.js → nim-DUebTB1l.js} +1 -1
  158. package/dist/assets/{notice-CF2pptne.js → notice-DiuS2xRb.js} +1 -1
  159. package/dist/assets/notifications-page-CFj3N2cO.js +1 -0
  160. package/dist/assets/{oauth-complete-page-DAbPV3TG.js → oauth-complete-page-DKCkJBSz.js} +1 -1
  161. package/dist/assets/{oauth-popup-complete-page-DyEV43x9.js → oauth-popup-complete-page-DF-CSuOy.js} +2 -2
  162. package/dist/assets/{octagon-x-DV9qasaC.js → octagon-x-Dxswz-8T.js} +1 -1
  163. package/dist/assets/onboarding-layout-De9EVmT6.js +1 -0
  164. package/dist/assets/{page-shell-CYsp3hSr.js → page-shell-wvKdodsb.js} +1 -1
  165. package/dist/assets/panel-item-C8PzGG3W.js +1 -0
  166. package/dist/assets/password-reset-page-BMSONM46.js +1 -0
  167. package/dist/assets/{pdf-eIgXagOI.js → pdf-B82bELK1.js} +1 -1
  168. package/dist/assets/{pencil-BA9LOIzP.js → pencil-DOH2N7Ii.js} +1 -1
  169. package/dist/assets/{perl-G6ZZQsfy.js → perl-s4HKYueO.js} +1 -1
  170. package/dist/assets/{php-BeUbGztq.js → php-CrEn3nLP.js} +1 -1
  171. package/dist/assets/platform-loopback-page-CyLN1xBd.js +1 -0
  172. package/dist/assets/plugin-detail-page-kOc0mtWi.js +1 -0
  173. package/dist/assets/plugins-page-Cd1GcisF.js +1 -0
  174. package/dist/assets/portal-container-ClWEPEwV.js +1 -0
  175. package/dist/assets/pre-chat-flow-zuy1-co_.js +1 -0
  176. package/dist/assets/privacy-page-BZsjHykF.js +1 -0
  177. package/dist/assets/privacy-screen-DQlluVxN.js +1 -0
  178. package/dist/assets/{progress-bar-BxeXgLhp.js → progress-bar-CWaE3Gvr.js} +1 -1
  179. package/dist/assets/provider-callback-page-CBT9uQ7U.js +1 -0
  180. package/dist/assets/{provider-key-D_Hh-rHb.js → provider-key-DU3BhOIc.js} +1 -1
  181. package/dist/assets/{provider-signup-page-vOry8yXY.js → provider-signup-page-BbD1UWvp.js} +1 -1
  182. package/dist/assets/{pug-D45MnfGZ.js → pug-CZ2qCSFY.js} +1 -1
  183. package/dist/assets/{qml-COPmH2mF.js → qml-CLX3hR5A.js} +1 -1
  184. package/dist/assets/{query-tags-Cez88bzY.js → query-tags-DCSzjjRy.js} +1 -1
  185. package/dist/assets/{quick-input-page-nd4iN-tG.js → quick-input-page-B6Sd1F15.js} +1 -1
  186. package/dist/assets/{razor-CQW42Ogp.js → razor-BnZGdhcb.js} +1 -1
  187. package/dist/assets/react-dom-DGIY8AkC.js +1 -0
  188. package/dist/assets/react-query.gen-D96tyR5v.js +1 -0
  189. package/dist/assets/{resize-errors-DejLlS-b.js → resize-errors-CmSdfpdD.js} +1 -1
  190. package/dist/assets/resolved-assistants-store-BqQgWNBK.js +1 -0
  191. package/dist/assets/{review-terms-screen-DDGg4T4h.js → review-terms-screen-D8kqoIUA.js} +1 -1
  192. package/dist/assets/routes-k3kmX-TW.js +1 -0
  193. package/dist/assets/{rst-C9ZVT0AG.js → rst-C-qpvVX5.js} +1 -1
  194. package/dist/assets/{ruby-DDticLOn.js → ruby-BRdFQsP8.js} +1 -1
  195. package/dist/assets/{sas-C5rCQJBu.js → sas-DmLtn6Hf.js} +1 -1
  196. package/dist/assets/{save-DHFrLI4J.js → save-C2o35r8k.js} +1 -1
  197. package/dist/assets/schedules-DRlnAcFc.js +1 -0
  198. package/dist/assets/schedules-page-B_OlliG7.js +1 -0
  199. package/dist/assets/{scss-CLfSZysM.js → scss-BfUUII-b.js} +1 -1
  200. package/dist/assets/sdk.gen-BC9W6R5i.js +1 -0
  201. package/dist/assets/sdk.gen-BQqioqGT.js +6 -0
  202. package/dist/assets/select-assistant-screen-DBYxmSoZ.js +1 -0
  203. package/dist/assets/settings-layout-hrBJknr_.js +1 -0
  204. package/dist/assets/{shaderlab-BEussGgZ.js → shaderlab-COhSH-It.js} +1 -1
  205. package/dist/assets/share-feedback-modal-BFuVwNa8.js +1 -0
  206. package/dist/assets/{shellsession-DA8c5lD0.js → shellsession-WPIGGSfD.js} +1 -1
  207. package/dist/assets/{shortcut-keys-FXO7qQjX.js → shortcut-keys-Ch_7aw7G.js} +1 -1
  208. package/dist/assets/sidebar-tree-DAMtUSyD.js +1 -0
  209. package/dist/assets/{signup-page-CBvfJsht.js → signup-page-BuMSyyWf.js} +1 -1
  210. package/dist/assets/skills-page-BaZivUF8.js +1 -0
  211. package/dist/assets/{sounds-page-C4u0pcg-.js → sounds-page-BZEKAwG1.js} +1 -1
  212. package/dist/assets/{soy-CBeww7qH.js → soy-06dT857r.js} +1 -1
  213. package/dist/assets/{sparql-DOILO3Ud.js → sparql-CD7zwqzG.js} +1 -1
  214. package/dist/assets/{src-hn7lwVCD.js → src-CP-BxN3p.js} +3 -3
  215. package/dist/assets/src-CfUWwwYf.css +1 -0
  216. package/dist/assets/{stat-square-sRJmexc-.js → stat-square-pMhRXw5j.js} +1 -1
  217. package/dist/assets/{stata-D4jcvFy6.js → stata-BBJfOmSv.js} +1 -1
  218. package/dist/assets/{step-indicator-dots-C_NCj5FH.js → step-indicator-dots-LPBIkDCs.js} +1 -1
  219. package/dist/assets/{subagent-detail-panel-0yehIKO8.js → subagent-detail-panel-CKKw9EWS.js} +2 -2
  220. package/dist/assets/{surrealql-B68HrEZ7.js → surrealql-ByQ_cuGg.js} +1 -1
  221. package/dist/assets/{svelte-93u-3tLs.js → svelte-DNAm__-0.js} +1 -1
  222. package/dist/assets/system-events-page-Ck2RKF_1.js +1 -0
  223. package/dist/assets/system-events-redirect-page-7IDxopKP.js +1 -0
  224. package/dist/assets/{tag-Ccr7Quy6.js → tag-b9NxCEFb.js} +1 -1
  225. package/dist/assets/{target-BMMY7Kql.js → target-ChevtE8s.js} +1 -1
  226. package/dist/assets/{templ-Ctw_ylZL.js → templ-_ySDvErV.js} +1 -1
  227. package/dist/assets/{tex-M6sV0M4v.js → tex-By8qwoht.js} +1 -1
  228. package/dist/assets/tiptap-document-editor-BHDUS88h.js +281 -0
  229. package/dist/assets/toast-CEgdxKB5.js +1 -0
  230. package/dist/assets/{toggle-CEm3M86o.js → toggle-DSjpQYbv.js} +1 -1
  231. package/dist/assets/tool-detail-panel-C-mtUeWy.js +1 -0
  232. package/dist/assets/trace-page-DKy0uAmW.js +1 -0
  233. package/dist/assets/{ts-tags-Qp4WvCJw.js → ts-tags-F9bfMBUI.js} +1 -1
  234. package/dist/assets/{twig-CogzkHzb.js → twig-BqXM3EhJ.js} +1 -1
  235. package/dist/assets/{typography-Czgs_2w_.js → typography-BRvk0Bv4.js} +1 -1
  236. package/dist/assets/upgrade-cancel-page-Ekag2ohP.js +1 -0
  237. package/dist/assets/upgrade-success-page-scEnKcRW.js +1 -0
  238. package/dist/assets/usage-page-DGo12Y5z.js +1 -0
  239. package/dist/assets/usage-window-BuUHvYCv.js +1 -0
  240. package/dist/assets/{use-active-assistant-id-BIhArlF_.js → use-active-assistant-id-wLQE-fX0.js} +1 -1
  241. package/dist/assets/use-bus-subscription-Bef7Ex-p.js +1 -0
  242. package/dist/assets/use-daemon-config-DTy5_WX6.js +1 -0
  243. package/dist/assets/{use-is-mobile-D_xrnINF.js → use-is-mobile-BYI3W5i9.js} +1 -1
  244. package/dist/assets/use-is-org-ready-BM1uqLI4.js +1 -0
  245. package/dist/assets/use-oauth-complete-deep-link-listener-d0SbB9Hw.js +1 -0
  246. package/dist/assets/use-onboarding-login-C0qx9D5e.js +1 -0
  247. package/dist/assets/use-reduced-motion-oGRTlpag.js +1 -0
  248. package/dist/assets/{useMutation-BuofVRHk.js → useMutation-xJ4pKtGm.js} +1 -1
  249. package/dist/assets/{useQuery-D2zf6Uhu.js → useQuery-B7Htlnlt.js} +1 -1
  250. package/dist/assets/{utils-Csn9OVRE.js → utils-BW3P_y_y.js} +1 -1
  251. package/dist/assets/{viewer-store-Cc5YI5ay.js → viewer-store-C5SefH9l.js} +1 -1
  252. package/dist/assets/voice-page-CJONAmS7.js +1 -0
  253. package/dist/assets/{vue-CKYV05Wl.js → vue-CjKmo06H.js} +1 -1
  254. package/dist/assets/{vue-html-CD969jd0.js → vue-html-CGzBM2K_.js} +1 -1
  255. package/dist/assets/{vue-vine-BPU_80oA.js → vue-vine-CigH96fn.js} +1 -1
  256. package/dist/assets/{wand-sparkles-DL9Oe56R.js → wand-sparkles-763-FnAW.js} +1 -1
  257. package/dist/assets/weather-forecast-display-CwYUDGLj.js +1 -0
  258. package/dist/assets/{web-hjMLFqJn.js → web-8ne96Hnt.js} +1 -1
  259. package/dist/assets/{web-MavgiYAR.js → web-BA0LRI8n.js} +1 -1
  260. package/dist/assets/{web-oH2q0g1D.js → web-BwtI2h2Y.js} +1 -1
  261. package/dist/assets/{web-XRhV1FIb.js → web-CBkWU9Ev.js} +1 -1
  262. package/dist/assets/{web-DgJRXlLM.js → web-CIa2HRtK.js} +1 -1
  263. package/dist/assets/{web-Cue81zTY.js → web-CocjxavI.js} +1 -1
  264. package/dist/assets/{web-m17sEkBA.js → web-Crq5vl6h.js} +1 -1
  265. package/dist/assets/{welcome-screen-lzsZvDsg.js → welcome-screen-BUEQMoX7.js} +1 -1
  266. package/dist/assets/{with-selector-BomrVLKx.js → with-selector-BjycLVOg.js} +1 -1
  267. package/dist/assets/workspace-page-vusFsyCt.js +1 -0
  268. package/dist/assets/x-CQoBO2C4.js +1 -0
  269. package/dist/assets/x-m6l8Tan1.js +1 -0
  270. package/dist/assets/{xml-B-TXQRmh.js → xml-BnWwjZjy.js} +1 -1
  271. package/dist/assets/{xsl-hDlDZuus.js → xsl-Bfv6cL_g.js} +1 -1
  272. package/dist/index.html +98 -89
  273. package/package.json +1 -1
  274. package/dist/assets/account-page-u7ke_44I.js +0 -1
  275. package/dist/assets/account-shell-qQqbocXz.js +0 -1
  276. package/dist/assets/add-credits-modal-CjJBB_aT.js +0 -1
  277. package/dist/assets/advanced-page-BybHh4NW.js +0 -1
  278. package/dist/assets/ai-page-BjCnCImt.js +0 -1
  279. package/dist/assets/api-DEEx3e9R.js +0 -39
  280. package/dist/assets/arrow-up-BLnb2N1m.js +0 -1
  281. package/dist/assets/assistant-identity-store-dQ1LxIr0.js +0 -1
  282. package/dist/assets/assistant-status-panel-ClxIYpxL.js +0 -1
  283. package/dist/assets/auth-store-CiQCAKS1.js +0 -6
  284. package/dist/assets/billing-page-XLpuMBWG.js +0 -34
  285. package/dist/assets/button-DdEh-9f_.js +0 -1
  286. package/dist/assets/check-CW0KmV0o.js +0 -1
  287. package/dist/assets/chevron-right-zTNPbA1m.js +0 -1
  288. package/dist/assets/command-palette-DFTMiCCM.js +0 -1
  289. package/dist/assets/contacts-page-route-CAfebyIn.js +0 -1
  290. package/dist/assets/danger-zone-redirect-page-G9ozZFrR.js +0 -1
  291. package/dist/assets/debug-page-DuVq7WGa.js +0 -3
  292. package/dist/assets/deploy-dialogs-BjBUBG5o.js +0 -1
  293. package/dist/assets/developer-page-BtLYaMJ4.js +0 -1
  294. package/dist/assets/devices-page-Dr0ybqr8.js +0 -1
  295. package/dist/assets/dropdown-CocFV5yi.js +0 -1
  296. package/dist/assets/earn-credits-modal-BJXnNvv7.js +0 -1
  297. package/dist/assets/emails-page-ChNIsyxX.js +0 -1
  298. package/dist/assets/esm-CautLOfa.js +0 -2
  299. package/dist/assets/esm-DTgeUUet.js +0 -2
  300. package/dist/assets/esm-DZPMmLdo.js +0 -2
  301. package/dist/assets/esm-D_HYq01-.js +0 -2
  302. package/dist/assets/feature-flag-catalog-D6XoH2hm.js +0 -1
  303. package/dist/assets/general-page-Joeygf_N.js +0 -1
  304. package/dist/assets/hatching-screen-B4BX6YJm.js +0 -1
  305. package/dist/assets/home-page-route-CmVT_FWM.js +0 -1
  306. package/dist/assets/identity-page-route-Dl65N_cj.js +0 -1
  307. package/dist/assets/index-D3Lqh6yW.css +0 -2
  308. package/dist/assets/index-DGojzQtP.js +0 -124
  309. package/dist/assets/inspect-page-DGmhgzNU.js +0 -2
  310. package/dist/assets/integrations-page-D_TaVfYl.js +0 -1
  311. package/dist/assets/lib-CNXbvB2y.js +0 -1
  312. package/dist/assets/library-detail-page-DP_uvWHQ.js +0 -1
  313. package/dist/assets/library-page-D4Ay8lOK.js +0 -1
  314. package/dist/assets/loader-circle-BSAFLoPH.js +0 -1
  315. package/dist/assets/logout-page-Dd8xdb39.js +0 -1
  316. package/dist/assets/modal-BYMhDpQo.js +0 -1
  317. package/dist/assets/notifications-page-aakfxDxE.js +0 -1
  318. package/dist/assets/onboarding-layout-BIVa2BnX.js +0 -1
  319. package/dist/assets/panel-item-FzMfzMJA.js +0 -1
  320. package/dist/assets/password-reset-page-BJo9vGl_.js +0 -1
  321. package/dist/assets/platform-loopback-page--72P008D.js +0 -1
  322. package/dist/assets/plugin-detail-page-cM71JV79.js +0 -1
  323. package/dist/assets/plugins-page-BbOw3iEZ.js +0 -1
  324. package/dist/assets/portal-container-DIXEBWUe.js +0 -1
  325. package/dist/assets/pre-chat-flow-DYa4Tg43.js +0 -1
  326. package/dist/assets/privacy-page-qfuUT3ZP.js +0 -1
  327. package/dist/assets/privacy-screen-Iqyv6zx6.js +0 -1
  328. package/dist/assets/provider-callback-page-CxHnf-wJ.js +0 -1
  329. package/dist/assets/react-query.gen-B8xaBreR.js +0 -1
  330. package/dist/assets/resolved-assistants-store-ub66utfl.js +0 -1
  331. package/dist/assets/routes-Dk5Qeryt.js +0 -1
  332. package/dist/assets/schedules-BJAra2Ob.js +0 -1
  333. package/dist/assets/schedules-page-C6MSsxSW.js +0 -1
  334. package/dist/assets/sdk.gen-AJllUeDf.js +0 -6
  335. package/dist/assets/sdk.gen-BO4vbMAj.js +0 -1
  336. package/dist/assets/select-assistant-screen-CNC2S4Bq.js +0 -1
  337. package/dist/assets/settings-layout-BXQK9h6V.js +0 -1
  338. package/dist/assets/share-feedback-modal-Cd3EJn8y.js +0 -1
  339. package/dist/assets/sidebar-tree-CPFfB2hS.js +0 -1
  340. package/dist/assets/skills-page-CS2tWjQe.js +0 -1
  341. package/dist/assets/src-D18r15rs.css +0 -1
  342. package/dist/assets/system-events-page-Dw7NwEcP.js +0 -1
  343. package/dist/assets/system-events-redirect-page-DY7BhERh.js +0 -1
  344. package/dist/assets/tiptap-document-editor-pNgheL8Q.js +0 -274
  345. package/dist/assets/toast-DU1nH33j.js +0 -1
  346. package/dist/assets/tool-detail-panel-B5SgZOMP.js +0 -1
  347. package/dist/assets/trace-page-C7tNAZHn.js +0 -1
  348. package/dist/assets/upgrade-cancel-page-ByiEITdu.js +0 -1
  349. package/dist/assets/upgrade-success-page-CLOlaEfu.js +0 -1
  350. package/dist/assets/usage-page-Drq5qPw2.js +0 -1
  351. package/dist/assets/use-bus-subscription-BuU6xaZz.js +0 -1
  352. package/dist/assets/use-current-platform-assistant-TpNI2OQf.js +0 -1
  353. package/dist/assets/use-is-org-ready-IPLcsl77.js +0 -1
  354. package/dist/assets/use-oauth-complete-deep-link-listener-aRDKwx8y.js +0 -1
  355. package/dist/assets/use-onboarding-login-CWKxGXhS.js +0 -1
  356. package/dist/assets/use-reduced-motion-CZO_MWGV.js +0 -1
  357. package/dist/assets/voice-page-DiYRh5kS.js +0 -1
  358. package/dist/assets/weather-forecast-display-DV6RskYo.js +0 -1
  359. package/dist/assets/workspace-page-DPhpvY0s.js +0 -1
  360. package/dist/assets/x-BDqbYVtS.js +0 -1
  361. package/dist/assets/x-CaVViVFn.js +0 -1
  362. /package/dist/assets/{abap-C765urHY.js → abap-CJ5qsNOr.js} +0 -0
  363. /package/dist/assets/{actionscript-3-lC5SPJIn.js → actionscript-3-CPG7Mt5w.js} +0 -0
  364. /package/dist/assets/{ada-D6z3_0sc.js → ada-DTHGn1mN.js} +0 -0
  365. /package/dist/assets/{andromeeda-DxGTh_os.js → andromeeda-ByMuQkWa.js} +0 -0
  366. /package/dist/assets/{apache-rkls1DSR.js → apache-BAXGyT2E.js} +0 -0
  367. /package/dist/assets/{apex-CNQCNeA7.js → apex-C-m0t3ls.js} +0 -0
  368. /package/dist/assets/{api-errors-ChauV4ed.js → api-errors-CzUlWhv0.js} +0 -0
  369. /package/dist/assets/{applescript-DQYsaxRM.js → applescript-Ctj_cnIn.js} +0 -0
  370. /package/dist/assets/{ara-Zm0W1ER8.js → ara-I-Ll6bdF.js} +0 -0
  371. /package/dist/assets/{asciidoc-uekNNlKP.js → asciidoc-DoqEe5Jh.js} +0 -0
  372. /package/dist/assets/{asm-Bbxb9Q7N.js → asm-DuoaRhq6.js} +0 -0
  373. /package/dist/assets/{aurora-x-CaQsey3l.js → aurora-x-BQSQwgMi.js} +0 -0
  374. /package/dist/assets/{avatar-bundled-components-CrafToy8.js → avatar-bundled-components-D7tRlqlr.js} +0 -0
  375. /package/dist/assets/{avatar-svg-compositor-krWs9LGY.js → avatar-svg-compositor-DQWYhv3A.js} +0 -0
  376. /package/dist/assets/{awk-CNSoW6F_.js → awk-nLjAKVy5.js} +0 -0
  377. /package/dist/assets/{ayu-dark-D3cTidcI.js → ayu-dark-B1PQshVn.js} +0 -0
  378. /package/dist/assets/{ayu-light-Cs1cEPZA.js → ayu-light-BBJDTVIz.js} +0 -0
  379. /package/dist/assets/{ayu-mirage-xGyelbjm.js → ayu-mirage-Ghm7GWi2.js} +0 -0
  380. /package/dist/assets/{ballerina-UrfaUWaS.js → ballerina-Chj948UE.js} +0 -0
  381. /package/dist/assets/{bat-BSseGlJ2.js → bat-DcWN-gqX.js} +0 -0
  382. /package/dist/assets/{beancount-BME0bq77.js → beancount-0zqgc983.js} +0 -0
  383. /package/dist/assets/{berry-BbmX7W94.js → berry-DYmthe8O.js} +0 -0
  384. /package/dist/assets/{bibtex-Bj1CNNvW.js → bibtex-DobJ9kMC.js} +0 -0
  385. /package/dist/assets/{bicep-BSN2uHnH.js → bicep-DbXbWjWc.js} +0 -0
  386. /package/dist/assets/{bird2-DKVBk6e_.js → bird2-CMBgjsIl.js} +0 -0
  387. /package/dist/assets/{c-yTfbDbmI.js → c-TCUxIZQP.js} +0 -0
  388. /package/dist/assets/{c3-Tbt7gffV.js → c3-CoI-X1Nh.js} +0 -0
  389. /package/dist/assets/{cadence-DQUV1O6z.js → cadence-BtJbl79D.js} +0 -0
  390. /package/dist/assets/{catppuccin-frappe-DxbhXt9K.js → catppuccin-frappe-B5GxbNyG.js} +0 -0
  391. /package/dist/assets/{catppuccin-latte-CgFlEQYs.js → catppuccin-latte-Cjs3KO8B.js} +0 -0
  392. /package/dist/assets/{catppuccin-macchiato-Pgo0Bz4Y.js → catppuccin-macchiato-BUHJhyfm.js} +0 -0
  393. /package/dist/assets/{catppuccin-mocha-CUd4v5ay.js → catppuccin-mocha-C45GTFyk.js} +0 -0
  394. /package/dist/assets/{clarity-Cja2-cF9.js → clarity-C1GBt5o3.js} +0 -0
  395. /package/dist/assets/{client.gen-BKAMS0D0.js → client.gen-DX7tGwLn.js} +0 -0
  396. /package/dist/assets/{clojure-1vnBLaIC.js → clojure-De1LN4BG.js} +0 -0
  397. /package/dist/assets/{clsx-CyUKbFfa.js → clsx-C1yEgr5d.js} +0 -0
  398. /package/dist/assets/{cmake-B7nBRZe5.js → cmake-BTi6irXV.js} +0 -0
  399. /package/dist/assets/{codeowners-l0-p2hBj.js → codeowners-DGDe2lkL.js} +0 -0
  400. /package/dist/assets/{codeql-CZegxzQJ.js → codeql-DASad7eB.js} +0 -0
  401. /package/dist/assets/{common-lisp-BwWhYub9.js → common-lisp-B_n0_yDq.js} +0 -0
  402. /package/dist/assets/{coq-DXStvgQ7.js → coq-BJ6Bsdif.js} +0 -0
  403. /package/dist/assets/{csharp-DLXmY1sb.js → csharp-NDV_ob_C.js} +0 -0
  404. /package/dist/assets/{css-B4lldM37.js → css-WaCiFqQg.js} +0 -0
  405. /package/dist/assets/{csv-DGudciUq.js → csv-D1U2EMBC.js} +0 -0
  406. /package/dist/assets/{cue-D53528FL.js → cue-BgXc-58w.js} +0 -0
  407. /package/dist/assets/{cypher-Bv8Z4GK2.js → cypher-BQUUrSfz.js} +0 -0
  408. /package/dist/assets/{d-B0tR3tAH.js → d-Dk8X5HQg.js} +0 -0
  409. /package/dist/assets/{dark-plus-DxGtsBDC.js → dark-plus-C48Md_Gs.js} +0 -0
  410. /package/dist/assets/{dart-BKofA41x.js → dart-BR-2czar.js} +0 -0
  411. /package/dist/assets/{dax-Dd0gvVZ0.js → dax-REiVILeZ.js} +0 -0
  412. /package/dist/assets/{definitions-FC3DcvI3.js → definitions-BzzTb9st.js} +0 -0
  413. /package/dist/assets/{desktop-BbJezzxJ.js → desktop-BddtmJ2I.js} +0 -0
  414. /package/dist/assets/{diff-CPVWfCck.js → diff-JAw112qd.js} +0 -0
  415. /package/dist/assets/{dist-B4KYfSON.js → dist-BBF4HNhc.js} +0 -0
  416. /package/dist/assets/{docker-BUIA6Gjt.js → docker-DCPz4E2Q.js} +0 -0
  417. /package/dist/assets/{dotenv-BLms_imc.js → dotenv-DOeIzr8Z.js} +0 -0
  418. /package/dist/assets/{dracula-CFX8u3fe.js → dracula-D6js5eTV.js} +0 -0
  419. /package/dist/assets/{dracula-soft-DIr29C0b.js → dracula-soft-BlxeqfmB.js} +0 -0
  420. /package/dist/assets/{dream-maker-D1q7VQg6.js → dream-maker-CAQVBXUx.js} +0 -0
  421. /package/dist/assets/{edit-chat-session-Cx2xnSSj.js → edit-chat-session-D4Kn4bvN.js} +0 -0
  422. /package/dist/assets/{effective-timezone-CKEcAtDc.js → effective-timezone-DRkZFWn4.js} +0 -0
  423. /package/dist/assets/{emacs-lisp-BcZ9rlnt.js → emacs-lisp-Ct7UMTzZ.js} +0 -0
  424. /package/dist/assets/{emoji-catalog-data-ZbE1lqD6.js → emoji-catalog-data-DpPNJugD.js} +0 -0
  425. /package/dist/assets/{event-bus-CMBsMREI.js → event-bus-DPa7g-Z7.js} +0 -0
  426. /package/dist/assets/{everforest-dark-BQBBmI9l.js → everforest-dark-bEYV0BTP.js} +0 -0
  427. /package/dist/assets/{everforest-light-Cuh0ru8h.js → everforest-light-DOfPP7Ou.js} +0 -0
  428. /package/dist/assets/{fennel-BpqBXoBR.js → fennel-Cp0VMaIJ.js} +0 -0
  429. /package/dist/assets/{fish-DyYYr9bo.js → fish-D5f2OC7Z.js} +0 -0
  430. /package/dist/assets/{fluent-LgrDR_-H.js → fluent-BgY_PjcY.js} +0 -0
  431. /package/dist/assets/{format-VxJLq14L.js → format-BllYj42A.js} +0 -0
  432. /package/dist/assets/{format-date-lYqfuFdi.js → format-date-BSac45sX.js} +0 -0
  433. /package/dist/assets/{format-file-size-Cx-rVS-D.js → format-file-size-DlcqKN6E.js} +0 -0
  434. /package/dist/assets/{fortran-free-form-zxo4vZkI.js → fortran-free-form-DvK0Zxql.js} +0 -0
  435. /package/dist/assets/{gdscript-8-sj85Vb.js → gdscript-Dj3b1lno.js} +0 -0
  436. /package/dist/assets/{gdshader-BZfJmuLj.js → gdshader-DZggPHjr.js} +0 -0
  437. /package/dist/assets/{genie-BFvJfKnC.js → genie-nrSwQs1c.js} +0 -0
  438. /package/dist/assets/{gherkin-CPWjfG76.js → gherkin-M8II5aCF.js} +0 -0
  439. /package/dist/assets/{github-dark-CDP4O7Bn.js → github-dark-BdZpoKQY.js} +0 -0
  440. /package/dist/assets/{github-dark-default-BcXmigOb.js → github-dark-default-7qHOcpOt.js} +0 -0
  441. /package/dist/assets/{github-dark-dimmed-5_i38q35.js → github-dark-dimmed-DY-1wHOe.js} +0 -0
  442. /package/dist/assets/{github-dark-high-contrast-_CgCWILr.js → github-dark-high-contrast-BIH5FzVb.js} +0 -0
  443. /package/dist/assets/{github-light-B51iW2_d.js → github-light-DcBPAOCJ.js} +0 -0
  444. /package/dist/assets/{github-light-default-WJu0iiQj.js → github-light-default-B5xxr1z9.js} +0 -0
  445. /package/dist/assets/{github-light-high-contrast-CvbJyaey.js → github-light-high-contrast-_YyCaLKc.js} +0 -0
  446. /package/dist/assets/{gleam-DRz17LOo.js → gleam-qY5KMpOX.js} +0 -0
  447. /package/dist/assets/{gn-CJhzP-4V.js → gn-d5oQrQuA.js} +0 -0
  448. /package/dist/assets/{gnuplot-BWrGxdNu.js → gnuplot-sANHiUlF.js} +0 -0
  449. /package/dist/assets/{go-CNIAodSs.js → go-DLjCbxDM.js} +0 -0
  450. /package/dist/assets/{groovy-Dbr7YtTJ.js → groovy-Cp9VVxDv.js} +0 -0
  451. /package/dist/assets/{gruvbox-dark-hard-BRDuiL2M.js → gruvbox-dark-hard-DdbhtbwQ.js} +0 -0
  452. /package/dist/assets/{gruvbox-dark-medium-BSHS7XsT.js → gruvbox-dark-medium-816bBQ3J.js} +0 -0
  453. /package/dist/assets/{gruvbox-dark-soft-D5sY56aX.js → gruvbox-dark-soft-E8RVF5PU.js} +0 -0
  454. /package/dist/assets/{gruvbox-light-hard-Crga28iX.js → gruvbox-light-hard-BScZB0l9.js} +0 -0
  455. /package/dist/assets/{gruvbox-light-medium-DYI_fIXR.js → gruvbox-light-medium-DFjmJOWL.js} +0 -0
  456. /package/dist/assets/{gruvbox-light-soft-DGrx7O6I.js → gruvbox-light-soft-Di9AnTs3.js} +0 -0
  457. /package/dist/assets/{haskell-s3USba_s.js → haskell-BmgaWosX.js} +0 -0
  458. /package/dist/assets/{haxe-DHVuHtAU.js → haxe-DxN0xUdz.js} +0 -0
  459. /package/dist/assets/{hcl-CibSb2Tt.js → hcl-BeJEWMfA.js} +0 -0
  460. /package/dist/assets/{hjson-MSVmDATS.js → hjson-D-hz6RCb.js} +0 -0
  461. /package/dist/assets/{hlsl-wPjA7f4R.js → hlsl-HcXmw_7P.js} +0 -0
  462. /package/dist/assets/{horizon-DSv_Vl7g.js → horizon-PGHvLmqC.js} +0 -0
  463. /package/dist/assets/{horizon-bright-BhWyww1y.js → horizon-bright-thNji4GF.js} +0 -0
  464. /package/dist/assets/{houston-kqxIENiP.js → houston-BXE-Y427.js} +0 -0
  465. /package/dist/assets/{hy-CcDNvXBw.js → hy-FAxUNKPu.js} +0 -0
  466. /package/dist/assets/{imba-ClQFmFPP.js → imba-BlVVxzlB.js} +0 -0
  467. /package/dist/assets/{impersonate-version-flag-DXEwev6c.js → impersonate-version-flag-qdi77BbK.js} +0 -0
  468. /package/dist/assets/{ini-DuVrbFYV.js → ini-fv-lUjId.js} +0 -0
  469. /package/dist/assets/{is-electron-CavSPgmY.js → is-electron-BuSDabCt.js} +0 -0
  470. /package/dist/assets/{java-79Va6bJc.js → java-8kSkq0MQ.js} +0 -0
  471. /package/dist/assets/{javascript-wLwe9AbG.js → javascript-CZ509Fn6.js} +0 -0
  472. /package/dist/assets/{json-DlXFKBYE.js → json-BCTgjlr_.js} +0 -0
  473. /package/dist/assets/{json5-CkCkKH3E.js → json5-Co0dfOIe.js} +0 -0
  474. /package/dist/assets/{jsonc-0Xq7tyz4.js → jsonc-DZIAge7N.js} +0 -0
  475. /package/dist/assets/{jsonl-FSPvpkq2.js → jsonl-PV9frKiZ.js} +0 -0
  476. /package/dist/assets/{jsonnet-BSv69JRS.js → jsonnet-DOuoCGXX.js} +0 -0
  477. /package/dist/assets/{jssm-CyIoWSxC.js → jssm-BRE1B1lL.js} +0 -0
  478. /package/dist/assets/{jsx-AdZrb5z2.js → jsx-DjUPsONV.js} +0 -0
  479. /package/dist/assets/{jsx-runtime-CVSDxk6A.js → jsx-runtime-B-mvcaJS.js} +0 -0
  480. /package/dist/assets/{kanagawa-dragon-Bd79Tun-.js → kanagawa-dragon-BAQcG6K-.js} +0 -0
  481. /package/dist/assets/{kanagawa-lotus-DeCV-Urg.js → kanagawa-lotus-CxL6oGKx.js} +0 -0
  482. /package/dist/assets/{kanagawa-wave-aglxw59J.js → kanagawa-wave-Bc84XIg9.js} +0 -0
  483. /package/dist/assets/{kdl-BUg1cLiI.js → kdl-DPB6WQ1L.js} +0 -0
  484. /package/dist/assets/{kotlin-BhThn95H.js → kotlin-C8DsCdGO.js} +0 -0
  485. /package/dist/assets/{kusto--hwp7U1v.js → kusto-DZaPT_kr.js} +0 -0
  486. /package/dist/assets/{laserwave-C0Ni-UOW.js → laserwave-CHtwcj71.js} +0 -0
  487. /package/dist/assets/{lean-D0WZXxTy.js → lean-CQynT0n7.js} +0 -0
  488. /package/dist/assets/{less-BqMPRJgy.js → less-D8TD6QwT.js} +0 -0
  489. /package/dist/assets/{light-plus-CvXxK5L0.js → light-plus-DweU3ZiF.js} +0 -0
  490. /package/dist/assets/{llm-dimension-DZzl8VAV.js → llm-dimension-CHXid-Al.js} +0 -0
  491. /package/dist/assets/{llvm-DxX8WKJ-.js → llvm-CfojPJjy.js} +0 -0
  492. /package/dist/assets/{log-D8tJQN5p.js → log-Dg0pLhTj.js} +0 -0
  493. /package/dist/assets/{logo-Dh8zozRh.js → logo-BQiqM0as.js} +0 -0
  494. /package/dist/assets/{luau-X-mc9HXh.js → luau-RdE9Vjmf.js} +0 -0
  495. /package/dist/assets/{make-Cw4iUEce.js → make-By4RiDz0.js} +0 -0
  496. /package/dist/assets/{markdown-C4wgDjuo.js → markdown-BYw27NaB.js} +0 -0
  497. /package/dist/assets/{material-theme-CEmeBs_y.js → material-theme-DphBgZX2.js} +0 -0
  498. /package/dist/assets/{material-theme-darker-BXvhddOF.js → material-theme-darker-DOf1AGjx.js} +0 -0
  499. /package/dist/assets/{material-theme-lighter-DMW3Ucs8.js → material-theme-lighter-Bfjap91b.js} +0 -0
  500. /package/dist/assets/{material-theme-ocean-c0mOFI0Z.js → material-theme-ocean-CVJ1NLQp.js} +0 -0
  501. /package/dist/assets/{material-theme-palenight-DHn1ZMRK.js → material-theme-palenight-DwK3s8YC.js} +0 -0
  502. /package/dist/assets/{matlab-DwttN0_Y.js → matlab-NuZ59Wo1.js} +0 -0
  503. /package/dist/assets/{mdx-VNbJXzl_.js → mdx-CHkIJUCD.js} +0 -0
  504. /package/dist/assets/{mermaid-8nLortlR.js → mermaid-6YDIfTf4.js} +0 -0
  505. /package/dist/assets/{min-dark-Cfo9Imnn.js → min-dark-Bcn-Ed9u.js} +0 -0
  506. /package/dist/assets/{min-light-D-eNMY61.js → min-light-ClDDNqSm.js} +0 -0
  507. /package/dist/assets/{mipsasm-CmR7MApm.js → mipsasm-BmnifrSV.js} +0 -0
  508. /package/dist/assets/{mojo-E4JmNL4g.js → mojo-DX3pGYt5.js} +0 -0
  509. /package/dist/assets/{monokai-DkH9jgy0.js → monokai-DTlRf54x.js} +0 -0
  510. /package/dist/assets/{moonbit-B0sciZbe.js → moonbit-DXNpZsex.js} +0 -0
  511. /package/dist/assets/{move-Bn26HYrn.js → move-BQrigDSF.js} +0 -0
  512. /package/dist/assets/{narrat-Cy8di6K9.js → narrat-y9IZpxko.js} +0 -0
  513. /package/dist/assets/{nextflow-groovy-BJBZYnqb.js → nextflow-groovy-6hrTmt9i.js} +0 -0
  514. /package/dist/assets/{night-owl-BaJh1bae.js → night-owl-ClVgPr5T.js} +0 -0
  515. /package/dist/assets/{night-owl-light-DOIQSNZE.js → night-owl-light-DliyqkDS.js} +0 -0
  516. /package/dist/assets/{nix-DYMb3fN3.js → nix-QVazpxj4.js} +0 -0
  517. /package/dist/assets/{nord-Dfe8nufc.js → nord-xnzgsagj.js} +0 -0
  518. /package/dist/assets/{nushell-BecinQos.js → nushell-D3yxszQz.js} +0 -0
  519. /package/dist/assets/{objective-c-wBEbMfkE.js → objective-c-CN9K_Mvf.js} +0 -0
  520. /package/dist/assets/{objective-cpp-DwsMXks9.js → objective-cpp-1Nt-FGbP.js} +0 -0
  521. /package/dist/assets/{ocaml-DwRdjLFM.js → ocaml-BAqygKyw.js} +0 -0
  522. /package/dist/assets/{odin-CjlC7GSD.js → odin-DNSiz22-.js} +0 -0
  523. /package/dist/assets/{one-dark-pro-DQhIyD5N.js → one-dark-pro-HLb75Z-7.js} +0 -0
  524. /package/dist/assets/{one-light-CBfRrrPU.js → one-light-BctXcUo0.js} +0 -0
  525. /package/dist/assets/{openscad-CHCGCt5B.js → openscad-D8M93qco.js} +0 -0
  526. /package/dist/assets/{pascal-DSLi1dwC.js → pascal-DlPEPh1m.js} +0 -0
  527. /package/dist/assets/{pkl-CYrbmtMh.js → pkl-BJKmE8Ch.js} +0 -0
  528. /package/dist/assets/{plastic-CcBG239g.js → plastic-BhAiyi9q.js} +0 -0
  529. /package/dist/assets/{plsql-DW8rLCTs.js → plsql-COxW-BKi.js} +0 -0
  530. /package/dist/assets/{po-DRD9UGH5.js → po-Bk0are9r.js} +0 -0
  531. /package/dist/assets/{poimandres-C1Y8UWlv.js → poimandres-CPmPABid.js} +0 -0
  532. /package/dist/assets/{polar-BuMHPk14.js → polar-C23mbcgg.js} +0 -0
  533. /package/dist/assets/{postcss-D_KibIwL.js → postcss-tD9vlW_o.js} +0 -0
  534. /package/dist/assets/{powerquery-DPqdCtl4.js → powerquery-B4yFA0H9.js} +0 -0
  535. /package/dist/assets/{powershell-B_nHu8ou.js → powershell-DF1dEwQ0.js} +0 -0
  536. /package/dist/assets/{preload-helper-BewR0kVT.js → preload-helper-DLfHRAWR.js} +0 -0
  537. /package/dist/assets/{prisma-CEKpljWu.js → prisma-AiD2F4Nb.js} +0 -0
  538. /package/dist/assets/{prolog-Be9bhwua.js → prolog-T-NPtb8h.js} +0 -0
  539. /package/dist/assets/{proto-DjKKU6XR.js → proto-BIq_RqSh.js} +0 -0
  540. /package/dist/assets/{public-asset-Dx4la7Nv.js → public-asset-joSk6CGP.js} +0 -0
  541. /package/dist/assets/{puppet-B3_5JXyb.js → puppet-DvgeAlRP.js} +0 -0
  542. /package/dist/assets/{purescript-B40B7hnk.js → purescript-C-so5OKo.js} +0 -0
  543. /package/dist/assets/{python-CBtENHpB.js → python-CStmvyMK.js} +0 -0
  544. /package/dist/assets/{qmldir-DmmSKh1z.js → qmldir-BDAjZaxp.js} +0 -0
  545. /package/dist/assets/{qss-DC50xW7x.js → qss-C3Dz36yT.js} +0 -0
  546. /package/dist/assets/{queryOptions-BtNi-_9H.js → queryOptions-C6eUkPeV.js} +0 -0
  547. /package/dist/assets/{r-Bxh_P6nZ.js → r-CZ5Yz5_q.js} +0 -0
  548. /package/dist/assets/{racket-Cd0dc7Z9.js → racket-C2n-9uMB.js} +0 -0
  549. /package/dist/assets/{raku-Bez4O8bz.js → raku-B3ZUijZ6.js} +0 -0
  550. /package/dist/assets/{react-DJZBPgpf.js → react-CrS8D-1X.js} +0 -0
  551. /package/dist/assets/{red-B6c6GahA.js → red-D3VmQ33R.js} +0 -0
  552. /package/dist/assets/{reg-RGHB2vyu.js → reg-14NnaD9S.js} +0 -0
  553. /package/dist/assets/{regexp-B4qMM8sH.js → regexp-Di2Z-hpT.js} +0 -0
  554. /package/dist/assets/{rel-BzD8rdGz.js → rel-CQcgVUhd.js} +0 -0
  555. /package/dist/assets/{riscv-R9qNw498.js → riscv-CbdMtw7I.js} +0 -0
  556. /package/dist/assets/{ron-fTY3p6VR.js → ron-DaVGAnSK.js} +0 -0
  557. /package/dist/assets/{rose-pine-0XrcwhjC.js → rose-pine-CI8WwS-X.js} +0 -0
  558. /package/dist/assets/{rose-pine-dawn-om3p9-A_.js → rose-pine-dawn-ys3Ud6zm.js} +0 -0
  559. /package/dist/assets/{rose-pine-moon-MGxH_v4S.js → rose-pine-moon-DU1a33MV.js} +0 -0
  560. /package/dist/assets/{rosmsg-CVvSijm3.js → rosmsg-BkKdb3Vn.js} +0 -0
  561. /package/dist/assets/{rust-CA961RlG.js → rust-CbGhudXP.js} +0 -0
  562. /package/dist/assets/{sass-CoOeSP7H.js → sass-BqWC3C4N.js} +0 -0
  563. /package/dist/assets/{scala-Bbpmmahb.js → scala-ZFKwJPKG.js} +0 -0
  564. /package/dist/assets/{scheme-D-G16M41.js → scheme-BBA7IJLY.js} +0 -0
  565. /package/dist/assets/{sdbl-BhfGXOJp.js → sdbl-DeklCCNb.js} +0 -0
  566. /package/dist/assets/{semver-Dd0ocNOn.js → semver-D3oqjCCC.js} +0 -0
  567. /package/dist/assets/{shellscript-Cwj5scmN.js → shellscript-BcqfSXnU.js} +0 -0
  568. /package/dist/assets/{slack-dark-EnMwLJh2.js → slack-dark-DQy8xXQr.js} +0 -0
  569. /package/dist/assets/{slack-ochin-DbQZnuuX.js → slack-ochin-JM1oZceH.js} +0 -0
  570. /package/dist/assets/{smalltalk-wkvAA4Ge.js → smalltalk-C8RDUHpM.js} +0 -0
  571. /package/dist/assets/{snazzy-light-HKT43YcO.js → snazzy-light-CA3V2qIs.js} +0 -0
  572. /package/dist/assets/{solarized-dark-DHekkVtS.js → solarized-dark-CHENONSe.js} +0 -0
  573. /package/dist/assets/{solarized-light-MPvd5SW1.js → solarized-light-BvPjwU2q.js} +0 -0
  574. /package/dist/assets/{solidity-B7JThXr2.js → solidity-CFNDGqXN.js} +0 -0
  575. /package/dist/assets/{splunk-GQMh95CP.js → splunk-C3OJf8p0.js} +0 -0
  576. /package/dist/assets/{sql-BXe6lADW.js → sql-BiAnmQy5.js} +0 -0
  577. /package/dist/assets/{ssh-config-DVuuj5mu.js → ssh-config-CiOqv-u4.js} +0 -0
  578. /package/dist/assets/{stylus-DbmaQDjE.js → stylus-CrYUihQ7.js} +0 -0
  579. /package/dist/assets/{swift-BSc6I7H3.js → swift-CV3u85wz.js} +0 -0
  580. /package/dist/assets/{synthwave-84-vXwrabUd.js → synthwave-84-Dm_EfWCO.js} +0 -0
  581. /package/dist/assets/{system-verilog-DGtgT0u9.js → system-verilog-C28LuAF9.js} +0 -0
  582. /package/dist/assets/{systemd-DjhZZzlg.js → systemd-D1e-Zw9b.js} +0 -0
  583. /package/dist/assets/{talonscript-jbZ73QSp.js → talonscript-23jRrv9e.js} +0 -0
  584. /package/dist/assets/{tasl-Cp0NySwy.js → tasl-BIXTqKwN.js} +0 -0
  585. /package/dist/assets/{tcl-CDvB7l7r.js → tcl-EAMZ5XfX.js} +0 -0
  586. /package/dist/assets/{terraform-ViADpNla.js → terraform-D23eIhRC.js} +0 -0
  587. /package/dist/assets/{tokyo-night-CP5B0W8z.js → tokyo-night-DiohzT_E.js} +0 -0
  588. /package/dist/assets/{toml-Ng7oUEBY.js → toml-DClLtSGa.js} +0 -0
  589. /package/dist/assets/{tsv-CBEPJV1q.js → tsv-CQAk7h_9.js} +0 -0
  590. /package/dist/assets/{tsx-Bay-x93q.js → tsx-BtxmDrE5.js} +0 -0
  591. /package/dist/assets/{turtle-6k3HpfrS.js → turtle-B2pl4nRy.js} +0 -0
  592. /package/dist/assets/{typescript-CESsi6qd.js → typescript--a_aGP4y.js} +0 -0
  593. /package/dist/assets/{typespec-BHVNqmiS.js → typespec-UxBW3kvv.js} +0 -0
  594. /package/dist/assets/{typst-CPHv3Z_E.js → typst-CAWioT92.js} +0 -0
  595. /package/dist/assets/{v-DbQnswmZ.js → v-DFpPH1XY.js} +0 -0
  596. /package/dist/assets/{vala-B9xFrP6Q.js → vala-BQF5b1p8.js} +0 -0
  597. /package/dist/assets/{vb-DhUjJFob.js → vb-Day8oHoj.js} +0 -0
  598. /package/dist/assets/{verilog-knoXnPW_.js → verilog-CyuVBXkZ.js} +0 -0
  599. /package/dist/assets/{vesper-DMn9sD5q.js → vesper-7h9fUc8s.js} +0 -0
  600. /package/dist/assets/{vhdl-BC236CWS.js → vhdl-CQ5uuvTq.js} +0 -0
  601. /package/dist/assets/{viml-BiHN9dcP.js → viml-CZzOlRkA.js} +0 -0
  602. /package/dist/assets/{vitesse-black-BPikaA4r.js → vitesse-black-DYDHkdwl.js} +0 -0
  603. /package/dist/assets/{vitesse-dark-etdagetc.js → vitesse-dark-BDFvCB-F.js} +0 -0
  604. /package/dist/assets/{vitesse-light-wF4P0Zsy.js → vitesse-light-Bt0xDa3b.js} +0 -0
  605. /package/dist/assets/{vyper-9LO9XYNL.js → vyper-DQDQsDNp.js} +0 -0
  606. /package/dist/assets/{wasm-BQxIq9Eb.js → wasm-CpVFe1XD.js} +0 -0
  607. /package/dist/assets/{wasm-cLEfWrbG.js → wasm-CvpzMV3q.js} +0 -0
  608. /package/dist/assets/{wenyan-CpO3LOSA.js → wenyan-C3rb3ZrL.js} +0 -0
  609. /package/dist/assets/{wgsl-DVMBiogp.js → wgsl-Ce3r5Mu7.js} +0 -0
  610. /package/dist/assets/{wikitext-C4YdJkhb.js → wikitext-gGtG-P2n.js} +0 -0
  611. /package/dist/assets/{wit-Dk2LwD_7.js → wit-CYzqpRih.js} +0 -0
  612. /package/dist/assets/{wolfram-BewBpAXL.js → wolfram-DVVTBXdF.js} +0 -0
  613. /package/dist/assets/{xterm-D62GGRqD.js → xterm-MSzJ543m.js} +0 -0
  614. /package/dist/assets/{xterm-addon-fit-B4zTZTld.js → xterm-addon-fit-BSv4FD24.js} +0 -0
  615. /package/dist/assets/{yaml-DvBKdDiG.js → yaml-B5mCg3qu.js} +0 -0
  616. /package/dist/assets/{zenscript-CSyyk0b_.js → zenscript-BEQLVn-P.js} +0 -0
  617. /package/dist/assets/{zig-DUP4LvJO.js → zig-DCqiX7Mz.js} +0 -0
  618. /package/dist/assets/{zwitch-19hSuEjR.js → zwitch-jQ1dHQP0.js} +0 -0
@@ -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{n as r}from"./QueryClientProvider-DNHWXaGq.js";import{t as i}from"./useQuery-D2zf6Uhu.js";import{t as a}from"./useMutation-BuofVRHk.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import{t as s}from"./menu-B79-l6IU.js";import{t as c}from"./notice-CF2pptne.js";import{n as l,r as u,t as d}from"./panel-item-FzMfzMJA.js";import{t as f}from"./input-Cu3PPVCq.js";import{t as p}from"./createLucideIcon-D6d6iDdi.js";import{t as m}from"./bell-C7RL04h4.js";import{t as h}from"./loader-circle-BSAFLoPH.js";import{i as g}from"./routes-Dk5Qeryt.js";import{n as _}from"./use-is-mobile-D_xrnINF.js";import{$ as v,Q as y,dn as b,et as x,fa as S,fn as C,hn as w,ji as T,ln as E,mn as D,mo as O,pn as k,un as A}from"./index-DGojzQtP.js";import{r as j}from"./format-date-lYqfuFdi.js";var M=p(`bell-off`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742`,key:`178tsu`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05`,key:`1hqiys`}]]),N=p(`check-check`,[[`path`,{d:`M18 6 7 17l-5-5`,key:`116fxf`}],[`path`,{d:`m22 10-7.5 7.5L13 16`,key:`ke71qq`}]]),P=e(t(),1);function F(e){e.invalidateQueries({queryKey:b()}),e.invalidateQueries({queryKey:w()})}function I(e){return e.snoozed_until?new Date(e.snoozed_until)>new Date:!1}var L=[{label:`1 hour`,hours:1},{label:`4 hours`,hours:4},{label:`24 hours`,hours:24},{label:`1 week`,hours:168}],R=o();function z({notificationId:e,currentlySnoozed:t,children:n}){let i=r(),o=a(D()),c=_(),[u,f]=(0,P.useState)(!1),p=()=>F(i),m=async t=>{let n=new Date(new Date().getTime()+t*60*60*1e3).toISOString();await o.mutateAsync({path:{id:e},body:{snoozed_until:n}}),p()},h=async()=>{await o.mutateAsync({path:{id:e},body:{snoozed_until:null}}),p()};return c?(0,R.jsxs)(l.Root,{open:u,onOpenChange:f,children:[(0,R.jsx)(l.Trigger,{asChild:!0,children:n}),(0,R.jsxs)(l.Content,{children:[(0,R.jsx)(l.Header,{children:(0,R.jsx)(l.Title,{children:`Snooze until…`})}),(0,R.jsxs)(l.Body,{children:[L.map(({label:e,hours:t})=>(0,R.jsx)(d,{label:e,onSelect:()=>{o.isPending||(f(!1),m(t))}},e)),t&&(0,R.jsx)(d,{label:`Clear snooze`,onSelect:()=>{o.isPending||(f(!1),h())}})]})]})]}):(0,R.jsxs)(s.Root,{open:u,onOpenChange:f,children:[(0,R.jsx)(s.Trigger,{children:n}),(0,R.jsxs)(s.Content,{align:`start`,className:`min-w-[12rem]`,children:[(0,R.jsx)(s.Label,{children:`Snooze until…`}),L.map(({label:e,hours:t})=>(0,R.jsx)(s.Item,{disabled:o.isPending,onSelect:()=>void m(t),children:e},e)),t&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(s.Separator,{}),(0,R.jsx)(s.Item,{disabled:o.isPending,onSelect:()=>void h(),children:`Clear snooze`})]})]})]})}function B({existingRules:e,onClose:t,onPauseCreated:n,onPauseDeleted:i,hideTitle:o=!1}){let s=r(),c=a(C()),l=a(k()),[u,d]=(0,P.useState)(``),p=()=>F(s),m=async()=>{let e=new Date(new Date().getTime()+365*24*60*60*1e3).toISOString();n(await c.mutateAsync({body:{notification_type:`alert`,dedupe_key_prefix:``,reason:u.trim()||`User requested pause`,expires_at:e}})),p(),t()},g=async e=>{await l.mutateAsync({path:{rule_id:e}}),i(e),p(),t()},_=c.isPending||l.isPending;return(0,R.jsxs)(`div`,{children:[!o&&(0,R.jsx)(`p`,{className:`mb-2 text-body-medium-default text-[var(--content-default)]`,children:`Pause alerts`}),e.length>0?(0,R.jsxs)(`div`,{className:`space-y-2`,children:[(0,R.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Active pause rules:`}),e.map(e=>(0,R.jsxs)(`div`,{className:`flex items-center justify-between rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-2 py-2`,children:[(0,R.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,R.jsx)(`p`,{className:`truncate text-body-small-default text-[var(--content-default)]`,children:e.reason||`All alerts paused`}),e.expires_at&&(0,R.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:[`Expires `,j(e.expires_at)]})]}),(0,R.jsx)(`button`,{type:`button`,onClick:()=>void g(e.id),disabled:_,className:`ml-2 shrink-0 cursor-pointer rounded px-2 py-1 text-body-small-default text-[var(--system-negative-strong)] transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,children:`Resume`})]},e.id))]}):(0,R.jsxs)(`div`,{className:`space-y-2`,children:[(0,R.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Temporarily mute all alert notifications.`}),(0,R.jsx)(f,{type:`text`,value:u,onChange:e=>d(e.target.value),placeholder:`Reason (optional)`}),(0,R.jsx)(`button`,{type:`button`,onClick:()=>void m(),disabled:_,className:`w-full cursor-pointer rounded-md bg-[var(--primary-base)] px-3 py-1.5 text-body-medium-default text-[var(--content-inset)] transition-opacity hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50`,children:c.isPending?(0,R.jsxs)(`span`,{className:`flex items-center justify-center gap-2`,children:[(0,R.jsx)(h,{className:`h-3 w-3 animate-spin`}),`Pausing…`]}):`Pause all alerts`})]})]})}function V({notification:e,onAck:t,isAcking:n}){let r=e.notification_type===`alert`,i=I(e),a=!e.is_read;return(0,R.jsxs)(`div`,{className:`relative rounded-lg border border-[var(--border-base)] p-4`,style:{background:e.is_resolved?`var(--surface-base)`:`var(--surface-lift)`,opacity:e.is_resolved?.75:1},children:[(0,R.jsx)(`div`,{className:`flex items-start gap-3`,children:(0,R.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col items-start gap-1`,children:[(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[a&&!e.is_resolved&&(0,R.jsx)(`span`,{"aria-hidden":!0,className:`h-2 w-2 shrink-0 rounded-full bg-[var(--primary-base)]`}),r&&(0,R.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[color-mix(in_oklab,var(--system-negative-strong)_14%,transparent)] px-2 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,R.jsx)(T,{className:`h-3 w-3`}),`Alert`]}),i&&(0,R.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--surface-base)] px-2 py-0.5 text-body-small-default text-[var(--content-secondary)]`,children:[(0,R.jsx)(S,{className:`h-3 w-3`}),`Snoozed`]}),e.is_resolved&&(0,R.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[color-mix(in_oklab,var(--system-positive-strong)_14%,transparent)] px-2 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,children:[(0,R.jsx)(O,{className:`h-3 w-3`}),`Resolved`]})]}),(0,R.jsx)(`h3`,{className:`text-body-medium-default leading-tight`,style:{color:e.is_resolved?`var(--content-secondary)`:`var(--content-default)`},children:e.title}),e.body&&(0,R.jsx)(`p`,{className:`text-body-small-default leading-relaxed text-[var(--content-secondary)]`,children:e.body})]})}),(0,R.jsxs)(`div`,{className:`mt-3 flex items-center gap-3 text-body-small-default text-[var(--content-secondary)]`,children:[(0,R.jsxs)(`span`,{children:[`Last seen `,j(e.last_seen_at)]}),e.occurrence_count>1&&(0,R.jsxs)(`span`,{children:[`· `,e.occurrence_count,`× occurrences`]})]}),!e.is_resolved&&(0,R.jsxs)(`div`,{className:`mt-3 flex items-center gap-2 border-t border-[var(--border-base)] pt-3`,children:[(0,R.jsxs)(`button`,{type:`button`,onClick:()=>t(e.id,a),disabled:n,className:`flex cursor-pointer items-center gap-1.5 rounded-md px-3 py-1.5 text-body-small-default transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,style:{background:a?`var(--primary-base)`:`var(--surface-base)`,color:a?`var(--content-inset)`:`var(--content-secondary)`},children:[n?(0,R.jsx)(h,{className:`h-3 w-3 animate-spin`}):(0,R.jsx)(O,{className:`h-3 w-3`}),a?`Mark as read`:`Mark as unread`]}),(0,R.jsx)(z,{notificationId:e.id,currentlySnoozed:i,children:(0,R.jsxs)(`button`,{type:`button`,className:`flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80`,children:[(0,R.jsx)(S,{className:`h-3 w-3`}),i?`Change snooze`:`Snooze`]})})]})]})}function H(){let e=x({platformHostedOnly:!0}),t=y(),o=v(),s=r(),d=_(),[f,p]=(0,P.useState)(`open`),[b,S]=(0,P.useState)(!1),[C,w]=(0,P.useState)([]),{data:T,isLoading:D,isError:O,refetch:k}=i({...A({query:{status:f}}),enabled:e===`full`&&t}),j=e===`full`&&o||(t?D:!1);(0,P.useEffect)(()=>{!t&&b&&S(!1)},[t,b]);let I=t?O:!1,L=t?T?.results??[]:[],z=L.filter(e=>!e.is_read&&!e.is_resolved),H=a(E()),[U,W]=(0,P.useState)(new Set),[G,K]=(0,P.useState)(!1),q=(0,P.useCallback)(()=>F(s),[s]),J=async(e,t)=>{W(t=>new Set(t).add(e));try{await H.mutateAsync({path:{id:e},body:{acknowledged:t}}),q()}finally{W(t=>{let n=new Set(t);return n.delete(e),n})}},Y=async()=>{if(!(z.length===0||G)){K(!0);try{await Promise.allSettled(z.map(e=>H.mutateAsync({path:{id:e.id},body:{acknowledged:!0}})))}finally{q(),K(!1)}}},X=(0,R.jsxs)(`button`,{type:`button`,className:`flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80`,title:`Pause alerts`,children:[(0,R.jsx)(M,{className:`h-3.5 w-3.5`}),`Pause alerts`]}),Z=(0,R.jsx)(B,{existingRules:C,onClose:()=>S(!1),onPauseCreated:e=>w(t=>[...t,e]),onPauseDeleted:e=>w(t=>t.filter(t=>t.id!==e))});return e===`gated`?(0,R.jsx)(n,{replace:!0,to:g.settings.general}):e===`disabled`?(0,R.jsxs)(`div`,{className:`space-y-4`,children:[(0,R.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,R.jsx)(m,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,R.jsxs)(`div`,{className:`flex-1`,children:[(0,R.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Notifications`}),(0,R.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:`Platform alerts and status notifications`})]})]}),(0,R.jsx)(c,{tone:`info`,children:`Log in to the Vellum platform to view notifications.`})]}):(0,R.jsxs)(`div`,{className:`space-y-4`,children:[(0,R.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,R.jsx)(m,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,R.jsxs)(`div`,{className:`flex-1`,children:[(0,R.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Notifications`}),(0,R.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:`Platform alerts and status notifications`})]}),t&&(d?(0,R.jsxs)(l.Root,{open:b,onOpenChange:S,children:[(0,R.jsx)(l.Trigger,{asChild:!0,children:X}),(0,R.jsxs)(l.Content,{children:[(0,R.jsx)(l.Header,{children:(0,R.jsx)(l.Title,{children:`Pause alerts`})}),(0,R.jsx)(l.Body,{children:(0,R.jsx)(B,{existingRules:C,onClose:()=>S(!1),onPauseCreated:e=>w(t=>[...t,e]),onPauseDeleted:e=>w(t=>t.filter(t=>t.id!==e)),hideTitle:!0})})]})]}):(0,R.jsxs)(u.Root,{open:b,onOpenChange:S,children:[(0,R.jsx)(u.Trigger,{asChild:!0,children:X}),(0,R.jsx)(u.Content,{align:`end`,className:`w-72`,children:Z})]}))]}),(0,R.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,R.jsx)(`div`,{className:`flex gap-1 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] p-1`,children:[`open`,`resolved`].map(e=>{let t=f===e;return(0,R.jsx)(`button`,{type:`button`,onClick:()=>p(e),className:`cursor-pointer rounded px-3 py-1 text-body-small-default capitalize transition-colors`,style:{background:t?`var(--surface-lift)`:`transparent`,color:t?`var(--content-default)`:`var(--content-secondary)`,boxShadow:t?`0 1px 2px rgba(0,0,0,0.08)`:void 0},children:e},e)})}),f===`open`&&z.length>1&&(0,R.jsxs)(`button`,{type:`button`,onClick:()=>void Y(),disabled:G,className:`ml-auto flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-transparent px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,children:[G?(0,R.jsx)(h,{className:`h-3 w-3 animate-spin`}):(0,R.jsx)(N,{className:`h-3 w-3`}),`Mark all as read (`,z.length,`)`]})]}),j?(0,R.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,R.jsx)(h,{className:`h-4 w-4 animate-spin`}),`Loading notifications…`]}):I?(0,R.jsxs)(c,{tone:`error`,children:[`Failed to load notifications.`,` `,(0,R.jsx)(`button`,{type:`button`,onClick:()=>void k(),className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]}):L.length===0?(0,R.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 py-12 text-center`,children:[(0,R.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,R.jsx)(m,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,R.jsxs)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:[`No `,f,` notifications`]}),(0,R.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:f===`open`?`You're all caught up!`:`Nothing to show here.`})]}):(0,R.jsx)(`div`,{className:`space-y-3`,children:L.map(e=>(0,R.jsx)(V,{notification:e,onAck:(e,t)=>void J(e,t),isAcking:U.has(e.id)},e.id))})]})}export{H as NotificationsPage};
@@ -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"./public-asset-Dx4la7Nv.js";var a=e(t(),1),o=r();function s({className:e=``}){return(0,o.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none fixed bottom-0 left-0 right-0 flex justify-center overflow-hidden ${e}`,children:(0,o.jsx)(`img`,{src:i(`/login-background-characters.svg`),alt:``,width:1200,height:180,className:`w-full max-w-[900px] object-cover object-bottom`})})}function c({children:e,showCreatureFooter:t=!0}){let[r,i]=(0,a.useState)(null);return(0,o.jsxs)(`div`,{className:`relative flex h-full flex-col bg-[var(--surface-base)]`,children:[(0,o.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:(0,o.jsx)(n,{container:r,children:e})}),t&&(0,o.jsx)(s,{}),(0,o.jsx)(`div`,{ref:i})]})}export{c as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{C as n,_ as r,a as i,b as a,c as o,d as s,f as c,g as l,h as u,i as d,l as f,m as p,n as m,o as h,p as g,r as _,s as v,u as y,y as b}from"./portal-container-DIXEBWUe.js";import{t as x}from"./jsx-runtime-CVSDxk6A.js";import{a as S,o as C,r as w,t as T}from"./cn-DFqQkJlk.js";import{n as E,t as D}from"./dist-B1Fpj7hg.js";import{a as ee,c as te,d as ne,f as O,i as re,l as ie,n as k,o as ae,p as A,r as oe,s as se,t as ce,u as le}from"./dist-D6LVk88Z.js";var j=e(t(),1),M=x(),N=`Popper`,[P,F]=n(N),[ue,de]=P(N),I=e=>{let{__scopePopper:t,children:n}=e,[r,i]=j.useState(null);return(0,M.jsx)(ue,{scope:t,anchor:r,onAnchorChange:i,children:n})};I.displayName=N;var L=`PopperAnchor`,R=j.forwardRef((e,t)=>{let{__scopePopper:n,virtualRef:r,...i}=e,o=de(L,n),s=j.useRef(null),c=C(t,s),l=j.useRef(null);return j.useEffect(()=>{let e=l.current;l.current=r?.current||s.current,e!==l.current&&o.onAnchorChange(l.current)}),r?null:(0,M.jsx)(a.div,{...i,ref:c})});R.displayName=L;var z=`PopperContent`,[fe,B]=P(z),V=j.forwardRef((e,t)=>{let{__scopePopper:n,side:l=`bottom`,sideOffset:d=0,align:m=`center`,alignOffset:h=0,arrowPadding:_=0,avoidCollisions:x=!0,collisionBoundary:S=[],collisionPadding:w=0,sticky:T=`partial`,hideWhenDetached:E=!1,updatePositionStrategy:D=`optimized`,onPlaced:ee,...te}=e,ne=de(z,n),[O,re]=j.useState(null),ie=C(t,e=>re(e)),[k,ae]=j.useState(null),A=i(k),oe=A?.width??0,se=A?.height??0,ce=l+(m===`center`?``:`-`+m),le=typeof w==`number`?w:{top:0,right:0,bottom:0,left:0,...w},N=Array.isArray(S)?S:[S],P=N.length>0,F={padding:le,boundary:N.filter(pe),altBoundary:P},{refs:ue,floatingStyles:I,placement:L,isPositioned:R,middlewareData:B}=p({strategy:`fixed`,placement:ce,whileElementsMounted:(...e)=>u(...e,{animationFrame:D===`always`}),elements:{reference:ne.anchor},middleware:[s({mainAxis:d+se,alignmentAxis:h}),x&&c({mainAxis:!0,crossAxis:!1,limiter:T===`partial`?y():void 0,...F}),x&&o({...F}),g({...F,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)}}),k&&v({element:k,padding:_}),me({arrowWidth:oe,arrowHeight:se}),E&&f({strategy:`referenceHidden`,...F})]}),[V,H]=he(L),U=b(ee);r(()=>{R&&U?.()},[R,U]);let W=B.arrow?.x,G=B.arrow?.y,K=B.arrow?.centerOffset!==0,[q,J]=j.useState();return r(()=>{O&&J(window.getComputedStyle(O).zIndex)},[O]),(0,M.jsx)(`div`,{ref:ue.setFloating,"data-radix-popper-content-wrapper":``,style:{...I,transform:R?I.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:q,"--radix-popper-transform-origin":[B.transformOrigin?.x,B.transformOrigin?.y].join(` `),...B.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,M.jsx)(fe,{scope:n,placedSide:V,onArrowChange:ae,arrowX:W,arrowY:G,shouldHideArrow:K,children:(0,M.jsx)(a.div,{"data-side":V,"data-align":H,...te,ref:ie,style:{...te.style,animation:R?void 0:`none`}})})})});V.displayName=z;var H=`PopperArrow`,U={top:`bottom`,right:`left`,bottom:`top`,left:`right`},W=j.forwardRef(function(e,t){let{__scopePopper:n,...r}=e,i=B(H,n),a=U[i.placedSide];return(0,M.jsx)(`span`,{ref:i.onArrowChange,style:{position:`absolute`,left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[i.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[i.placedSide],visibility:i.shouldHideArrow?`hidden`:void 0},children:(0,M.jsx)(h,{...r,ref:t,style:{...r.style,display:`block`}})})});W.displayName=H;function pe(e){return e!==null}var me=e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=he(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}});function he(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var G=I,K=R,q=V,J=W;function ge(e){let t=_e(e),n=j.forwardRef((e,n)=>{let{children:r,...i}=e,a=j.Children.toArray(r),o=a.find(ye);if(o){let e=o.props.children,r=a.map(t=>t===o?j.Children.count(e)>1?j.Children.only(null):j.isValidElement(e)?e.props.children:null:t);return(0,M.jsx)(t,{...i,ref:n,children:j.isValidElement(e)?j.cloneElement(e,void 0,r):null})}return(0,M.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}function _e(e){let t=j.forwardRef((e,t)=>{let{children:n,...r}=e;if(j.isValidElement(n)){let e=xe(n),i=be(r,n.props);return n.type!==j.Fragment&&(i.ref=t?S(t,e):e),j.cloneElement(n,i)}return j.Children.count(n)>1?j.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var ve=Symbol(`radix.slottable`);function ye(e){return j.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===ve}function be(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function xe(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Y=`Popover`,[Se,Ce]=n(Y,[F]),X=F(),[we,Z]=Se(Y),Te=e=>{let{__scopePopover:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:o=!1}=e,s=X(t),c=j.useRef(null),[u,d]=j.useState(!1),[f,p]=_({prop:r,defaultProp:i??!1,onChange:a,caller:Y});return(0,M.jsx)(G,{...s,children:(0,M.jsx)(we,{scope:t,contentId:l(),triggerRef:c,open:f,onOpenChange:p,onOpenToggle:j.useCallback(()=>p(e=>!e),[p]),hasCustomAnchor:u,onCustomAnchorAdd:j.useCallback(()=>d(!0),[]),onCustomAnchorRemove:j.useCallback(()=>d(!1),[]),modal:o,children:n})})};Te.displayName=Y;var Ee=`PopoverAnchor`,De=j.forwardRef((e,t)=>{let{__scopePopover:n,...r}=e,i=Z(Ee,n),a=X(n),{onCustomAnchorAdd:o,onCustomAnchorRemove:s}=i;return j.useEffect(()=>(o(),()=>s()),[o,s]),(0,M.jsx)(K,{...a,...r,ref:t})});De.displayName=Ee;var Oe=`PopoverTrigger`,ke=j.forwardRef((e,t)=>{let{__scopePopover:n,...r}=e,i=Z(Oe,n),o=X(n),s=C(t,i.triggerRef),c=(0,M.jsx)(a.button,{type:`button`,"aria-haspopup":`dialog`,"aria-expanded":i.open,"aria-controls":i.contentId,"data-state":He(i.open),...r,ref:s,onClick:E(e.onClick,i.onOpenToggle)});return i.hasCustomAnchor?c:(0,M.jsx)(K,{asChild:!0,...o,children:c})});ke.displayName=Oe;var Q=`PopoverPortal`,[Ae,je]=Se(Q,{forceMount:void 0}),Me=e=>{let{__scopePopover:t,forceMount:n,children:r,container:i}=e,a=Z(Q,t);return(0,M.jsx)(Ae,{scope:t,forceMount:n,children:(0,M.jsx)(D,{present:n||a.open,children:(0,M.jsx)(d,{asChild:!0,container:i,children:r})})})};Me.displayName=Q;var $=`PopoverContent`,Ne=j.forwardRef((e,t)=>{let n=je($,e.__scopePopover),{forceMount:r=n.forceMount,...i}=e,a=Z($,e.__scopePopover);return(0,M.jsx)(D,{present:r||a.open,children:a.modal?(0,M.jsx)(Fe,{...i,ref:t}):(0,M.jsx)(Ie,{...i,ref:t})})});Ne.displayName=$;var Pe=ge(`PopoverContent.RemoveScroll`),Fe=j.forwardRef((e,t)=>{let n=Z($,e.__scopePopover),r=j.useRef(null),i=C(t,r),a=j.useRef(!1);return j.useEffect(()=>{let e=r.current;if(e)return le(e)},[]),(0,M.jsx)(ie,{as:Pe,allowPinchZoom:!0,children:(0,M.jsx)(Le,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:E(e.onCloseAutoFocus,e=>{e.preventDefault(),a.current||n.triggerRef.current?.focus()}),onPointerDownOutside:E(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;a.current=t.button===2||n},{checkForDefaultPrevented:!1}),onFocusOutside:E(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1})})})}),Ie=j.forwardRef((e,t)=>{let n=Z($,e.__scopePopover),r=j.useRef(!1),i=j.useRef(!1);return(0,M.jsx)(Le,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,t.detail.originalEvent.type===`pointerdown`&&(i.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),t.detail.originalEvent.type===`focusin`&&i.current&&t.preventDefault()}})}),Le=j.forwardRef((e,t)=>{let{__scopePopover:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,disableOutsidePointerEvents:o,onEscapeKeyDown:s,onPointerDownOutside:c,onFocusOutside:l,onInteractOutside:u,...d}=e,f=Z($,n),p=X(n);return O(),(0,M.jsx)(ne,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:(0,M.jsx)(A,{asChild:!0,disableOutsidePointerEvents:o,onInteractOutside:u,onEscapeKeyDown:s,onPointerDownOutside:c,onFocusOutside:l,onDismiss:()=>f.onOpenChange(!1),children:(0,M.jsx)(q,{"data-state":He(f.open),role:`dialog`,id:f.contentId,...p,...d,ref:t,style:{...d.style,"--radix-popover-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-popover-content-available-width":`var(--radix-popper-available-width)`,"--radix-popover-content-available-height":`var(--radix-popper-available-height)`,"--radix-popover-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-popover-trigger-height":`var(--radix-popper-anchor-height)`}})})})}),Re=`PopoverClose`,ze=j.forwardRef((e,t)=>{let{__scopePopover:n,...r}=e,i=Z(Re,n);return(0,M.jsx)(a.button,{type:`button`,...r,ref:t,onClick:E(e.onClick,()=>i.onOpenChange(!1))})});ze.displayName=Re;var Be=`PopoverArrow`,Ve=j.forwardRef((e,t)=>{let{__scopePopover:n,...r}=e,i=X(n);return(0,M.jsx)(J,{...i,...r,ref:t})});Ve.displayName=Be;function He(e){return e?`open`:`closed`}var Ue=Te,We=De,Ge=ke,Ke=Me,qe=Ne,Je=ze,Ye=Ue;function Xe(e){return(0,M.jsx)(Ge,{"data-slot":`popover-trigger`,...e})}function Ze(e){return(0,M.jsx)(Je,{"data-slot":`popover-close`,...e})}function Qe(e){return(0,M.jsx)(We,{"data-slot":`popover-anchor`,...e})}function $e({className:e,children:t,sideOffset:n=6,align:r=`center`,ref:i,...a}){let o=m();return(0,M.jsx)(Ke,{container:o??void 0,children:(0,M.jsx)(qe,{ref:i,"data-slot":`popover-content`,align:r,sideOffset:n,className:T(`z-50 rounded-lg bg-[var(--surface-lift)] p-2 shadow-[var(--shadow-popover)] outline-none`,`text-[color:var(--content-default)]`,`data-[state=open]:animate-[popoverIn_120ms_ease-out]`,e),...a,children:t})})}var et={Root:Ye,Trigger:Xe,Content:$e,Close:Ze,Anchor:Qe},tt=(0,j.createContext)({});function nt({onOpenChange:e,...t}){return(0,M.jsx)(tt,{value:{onOpenChange:e},children:(0,M.jsx)(ae,{onOpenChange:e,...t})})}function rt(e){return(0,M.jsx)(te,{"data-slot":`bottom-sheet-trigger`,...e})}function it({overlayClassName:e,className:t,children:n,ref:r,...i}){let a=m(),{onOpenChange:o}=(0,j.useContext)(tt);return(0,M.jsxs)(ee,{container:a??void 0,children:[(0,M.jsx)(re,{"data-slot":`bottom-sheet-overlay`,className:T(`fixed inset-0 z-50 bg-black/50`,e),onClick:()=>o?.(!1)}),(0,M.jsx)(k,{ref:r,"data-slot":`bottom-sheet-content`,className:T(`fixed inset-x-0 bottom-0 z-50 flex w-full flex-col rounded-t-[24px] border-t bg-[var(--surface-lift)] border-[var(--border-base)] shadow-xl focus:outline-none`,`max-h-[50dvh]`,`data-[state=open]:animate-[bottomSheetIn_180ms_ease-out]`,t),...i,children:(0,M.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col px-4 pt-4 pb-[calc(16px+var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)))]`,children:n})})]})}function at({icon:e,className:t,children:n,ref:r,...i}){return(0,M.jsxs)(se,{ref:r,"data-slot":`bottom-sheet-title`,className:T(`flex items-center gap-3 text-title-medium text-[var(--content-default)]`,t),...i,children:[e?(0,M.jsx)(`span`,{"aria-hidden":`true`,className:`flex h-10 w-10 shrink-0 items-center justify-center rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(--primary-base) 16%, transparent)`},children:(0,M.jsx)(e,{className:`h-5 w-5 text-[var(--primary-base)]`})}):null,(0,M.jsx)(`span`,{className:`min-w-0 truncate`,children:n})]})}function ot({className:e,children:t,ref:n,...r}){return(0,M.jsx)(oe,{ref:n,"data-slot":`bottom-sheet-description`,className:T(`mt-1 whitespace-pre-line text-body-medium-lighter text-[var(--content-secondary)]`,e),...r,children:t})}function st(e){return(0,M.jsx)(ce,{"data-slot":`bottom-sheet-close`,...e})}function ct({className:e,children:t,...n}){return(0,M.jsx)(`div`,{"data-slot":`bottom-sheet-header`,className:T(`flex flex-col gap-1`,e),...n,children:t})}function lt({className:e,children:t,...n}){return(0,M.jsx)(`div`,{"data-slot":`bottom-sheet-body`,className:T(`flex-1 overflow-y-auto pt-4 text-[var(--content-default)]`,e),...n,children:t})}function ut({className:e,children:t,...n}){return(0,M.jsx)(`div`,{"data-slot":`bottom-sheet-footer`,className:T(`flex justify-end gap-2 pt-4`,e),...n,children:t})}var dt={Root:nt,Trigger:rt,Content:it,Title:at,Description:ot,Close:st,Header:ct,Body:lt,Footer:ut},ft=50,pt=2e3,mt=.8;function ht({children:e,className:t}){let n=(0,j.useRef)(null),r=(0,j.useRef)(null),[i,a]=(0,j.useState)(0);(0,j.useEffect)(()=>{let e=n.current,t=r.current;if(!e||!t)return;let i=()=>{let n=t.scrollWidth-e.clientWidth;a(n>0?n:0)};i();let o=new ResizeObserver(i);return o.observe(e),o.observe(t),()=>o.disconnect()},[e]);let o=i>0,s=Math.max(pt,Math.round(i*2/ft*1e3)),c=Math.round(s/mt);return(0,M.jsxs)(`span`,{"data-slot":`marquee-text`,ref:n,className:T(`relative min-w-0 flex-1 overflow-hidden`,t),children:[(0,M.jsx)(`span`,{className:`block truncate motion-safe:group-hover:invisible`,children:e}),(0,M.jsx)(`span`,{ref:r,"aria-hidden":!0,className:T(`absolute top-0 left-0 invisible block whitespace-nowrap`,`motion-safe:group-hover:visible`,o&&`motion-safe:group-hover:animate-panelitem-marquee`),style:o?{"--panelitem-marquee-distance":`${i}px`,"--panelitem-marquee-duration":`${c}ms`}:void 0,children:e})]})}var gt=[`group relative`,`flex h-8 max-md:h-auto w-full items-center justify-between`,`rounded-[6px] p-[8px] max-md:py-3 gap-[4px]`,`text-left text-body-medium-lighter max-md:text-body-large-default`,`transition-colors`,`bg-transparent`,`text-[var(--content-secondary)]`,`outline-none`].join(` `),_t=[`hover:bg-[var(--surface-hover)]`,`keyboard-focus:ring-2 keyboard-focus:ring-[var(--ring)]`,`cursor-pointer select-none`].join(` `),vt=[`aria-[current=page]:bg-[var(--surface-active)]`,`aria-[current=page]:text-[var(--content-emphasised)]`].join(` `),yt=[`aria-[current=page]:bg-[color-mix(in_oklab,var(--primary-base)_10%,transparent)]`,`aria-[current=page]:text-[var(--primary-base)]`,`aria-[current=page]:font-medium`].join(` `),bt=`flex min-w-0 flex-1 items-center gap-[8px]`,xt=[`shrink-0`,`text-[var(--content-tertiary)]`,`group-hover:text-[var(--content-secondary)]`].join(` `),St=`group-aria-[current=page]:text-[var(--content-default)]`,Ct=`group-aria-[current=page]:text-[var(--primary-base)]`,wt=`min-w-0 flex-1 truncate`,Tt=`shrink-0 text-[var(--content-tertiary)]`,Et=`flex items-center gap-2 shrink-0`,Dt=[`inline-flex items-center justify-center shrink-0`,`text-label-small-default leading-none`,`text-[var(--content-tertiary)]`,`rounded-[4px] bg-[var(--surface-base)] px-[4px] py-[2px]`,`group-hover:bg-transparent group-hover:rounded-none`,`group-hover:px-0 group-hover:py-0`,`group-aria-[current=page]:bg-transparent group-aria-[current=page]:rounded-none`,`group-aria-[current=page]:px-0 group-aria-[current=page]:py-0`].join(` `),Ot=[`flex items-center shrink-0`,`opacity-0 transition-opacity`,`group-hover:opacity-100`,`group-aria-[current=page]:opacity-100`].join(` `);function kt({icon:e,leadingSlot:t,label:n,expandChevron:r,badge:i,trailingAction:a,active:o=!1,activeVariant:s=`default`,disabled:c=!1,onSelect:l,href:u,marqueeOnHover:d=!1,className:f,"aria-label":p,asChild:m=!1,children:h,ref:g,..._}){let v=o?`page`:void 0,y=p??(typeof n==`string`?n:void 0),b=(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(`span`,{className:bt,children:[t===void 0?e?(0,M.jsx)(e,{size:14,"aria-hidden":!0,className:T(`max-md:size-4`,xt,s===`branded`?Ct:St)}):null:t,d?(0,M.jsx)(ht,{children:n}):(0,M.jsx)(`span`,{className:wt,children:n}),r?(0,M.jsx)(r,{size:12,"aria-hidden":!0,className:Tt}):null]}),(0,M.jsxs)(`span`,{className:Et,children:[i==null?null:(0,M.jsx)(`span`,{className:Dt,children:i}),a?(0,M.jsx)(`span`,{className:Ot,onClick:e=>{e.stopPropagation(),e.preventDefault()},children:a}):null]})]}),x=T(gt,(m||!!u||!!l)&&_t,s===`branded`?yt:vt,f);if(m)return(0,M.jsx)(w,{"data-slot":`panel-item`,ref:g,className:x,"aria-current":v,"aria-label":y,..._,children:h});if(u){let{onClick:e,...t}=_;return(0,M.jsx)(`a`,{...t,"data-slot":`panel-item`,ref:g,href:u,className:x,"aria-current":v,"aria-label":y,onClick:t=>{e?.(t),t.defaultPrevented||l?.()},children:b})}if(l){let{onClick:e,onKeyDown:t,...n}=_,r=t=>{if(c){t.preventDefault();return}e?.(t),t.defaultPrevented||l()},i=e=>{c||(t?.(e),!e.defaultPrevented&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),l()))};return(0,M.jsx)(`div`,{...n,"data-slot":`panel-item`,ref:g,role:`button`,tabIndex:c?-1:0,"aria-disabled":c||void 0,className:x,"aria-current":v,"aria-label":y,onClick:r,onKeyDown:i,children:b})}return(0,M.jsx)(`div`,{"data-slot":`panel-item`,ref:g,className:x,"aria-current":v,"aria-label":y,..._,children:b})}export{J as a,F as c,K as i,dt as n,q as o,et as r,G as s,kt as t};
@@ -1 +0,0 @@
1
- import{r as e}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t}from"./jsx-runtime-CVSDxk6A.js";import{i as n}from"./routes-Dk5Qeryt.js";var r=t();function i(){return(0,r.jsx)(e,{to:n.account.login,replace:!0})}export{i as PasswordResetPage};
@@ -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{b as a}from"./resolved-assistants-store-ub66utfl.js";import{k as o,n as s}from"./auth-store-CiQCAKS1.js";import{c}from"./api-DEEx3e9R.js";import{i as l}from"./routes-Dk5Qeryt.js";var u=e(t(),1),d=i(),f=`vellum:loopback:state`,p=`vellum:loopback:returnTo`;function m(){let[e]=r(),t=n(),[i,m]=(0,u.useState)(null);return(0,u.useEffect)(()=>{let n=e.get(`state`),r=e.get(`session_token`),i=sessionStorage.getItem(f),u=sessionStorage.getItem(p)||l.assistant;if(sessionStorage.removeItem(f),sessionStorage.removeItem(p),!n||n!==i){m(`Login failed: state mismatch. Please try again.`);return}if(!r){m(`Login failed: no session token received. Please try again.`);return}if(!/^[a-zA-Z0-9]+$/.test(r)){m(`Login failed: invalid session token.`);return}document.cookie=`sessionid=${r}; path=/; samesite=lax; max-age=1209600`,(async()=>{await s.getState().initSession(),await o(!0);try{let e=await c();if(e.ok&&e.data.length>0){await a(e.data),t(l.assistant,{replace:!0});return}}catch{}t(u,{replace:!0})})()},[e,t]),i?(0,d.jsx)(`div`,{className:`flex min-h-screen items-center justify-center bg-[var(--surface-base)] text-[var(--content-default)]`,children:(0,d.jsxs)(`div`,{className:`max-w-md text-center`,children:[(0,d.jsx)(`p`,{className:`text-body-medium-default`,children:i}),(0,d.jsx)(`button`,{type:`button`,className:`mt-4 rounded-lg border border-[var(--border-disabled)] px-4 py-2 text-sm hover:bg-[var(--surface-lift)]`,onClick:()=>void t(l.welcome),children:`Back to Welcome`})]})}):(0,d.jsx)(`div`,{className:`flex min-h-screen items-center justify-center bg-[var(--surface-base)] text-[var(--content-default)]`,children:(0,d.jsx)(`p`,{className:`text-body-medium-default`,children:`Completing login...`})})}export{m as PlatformLoopbackPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{p as n,r,t as i}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as a}from"./QueryClientProvider-DNHWXaGq.js";import{t as o}from"./useQuery-D2zf6Uhu.js";import{t as s}from"./useMutation-BuofVRHk.js";import{t as c}from"./jsx-runtime-CVSDxk6A.js";import{t as l}from"./button-DdEh-9f_.js";import{t as u}from"./card-CL5iEMJO.js";import"./src-hn7lwVCD.js";import{t as d}from"./confirm-dialog-NYG-K9zN.js";import{t as f}from"./external-link-BCB1rbW9.js";import{t as p}from"./loader-circle-BSAFLoPH.js";import{D as m,E as h,O as g,T as _,j as v,k as y}from"./react-query.gen-B8xaBreR.js";import{i as b}from"./routes-Dk5Qeryt.js";import{t as x}from"./assistant-feature-flag-store-0382ImYF.js";import{Ni as S,bo as C,ji as w,xo as T}from"./index-DGojzQtP.js";import{t as E}from"./use-active-assistant-id-BIhArlF_.js";import{t as D}from"./file-markdown-DX5x9ziL.js";var O=e(t(),1),k=c();function A(){let e=x.use.hasHydrated(),t=x.use.externalPlugins(),c=E(),{name:f}=n(),p=a(),[S,w]=(0,O.useState)(!1),T=o({...h({path:{assistant_id:c,name:f??``}}),enabled:!!c&&!!f}),A=(0,O.useCallback)(()=>{p.invalidateQueries({queryKey:g({path:{assistant_id:c}})}),p.invalidateQueries({queryKey:v({path:{assistant_id:c}})}),f&&p.invalidateQueries({queryKey:m({path:{assistant_id:c,name:f}})})},[c,f,p]),I=s({...y(),onSuccess:A}),L=s({..._(),onSuccess:A});if(!e)return null;if(!t)return(0,k.jsx)(r,{to:b.identity,replace:!0});if(!f)return(0,k.jsx)(r,{to:b.plugins,replace:!0});let R=()=>{I.mutate({path:{assistant_id:c},body:{name:f}})},z=()=>{w(!1),L.mutate({path:{assistant_id:c,name:f}})},B=T.data??null;return(0,k.jsxs)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col`,children:[(0,k.jsxs)(`div`,{className:`mb-4 flex items-start gap-3`,children:[(0,k.jsx)(l,{asChild:!0,variant:`ghost`,children:(0,k.jsx)(i,{to:b.plugins,"aria-label":`Back to plugins`,children:(0,k.jsx)(C,{"aria-hidden":!0})})}),(0,k.jsx)(j,{name:f,plugin:B,onInstall:R,onRemove:()=>w(!0),isInstalling:I.isPending,isRemoving:L.isPending})]}),(I.isError||L.isError)&&(0,k.jsx)(F,{message:I.isError?`Failed to install plugin. Please try again.`:`Failed to remove plugin. Please try again.`}),(0,k.jsx)(u.Root,{asChild:!0,children:(0,k.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-6 py-5`,children:T.isLoading?(0,k.jsx)(N,{}):T.isError||!B?(0,k.jsx)(P,{}):(0,k.jsxs)(k.Fragment,{children:[(0,k.jsx)(M,{plugin:B}),B.readme?(0,k.jsx)(D,{content:B.readme}):(0,k.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`This plugin doesn't ship a README.`})]})})}),(0,k.jsx)(d,{open:S,title:`Remove plugin`,message:`Remove "${B?.name??f}" from this assistant?`,confirmLabel:`Remove`,destructive:!0,onConfirm:z,onCancel:()=>w(!1)})]})}function j({name:e,plugin:t,onInstall:n,onRemove:r,isInstalling:i,isRemoving:a}){let o=t?.installed??!1,s=t?.source.kind===`github`;return(0,k.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-3 sm:flex-row sm:items-center`,children:[(0,k.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[(0,k.jsx)(`div`,{className:`flex h-10 w-10 shrink-0 items-center justify-center text-2xl`,children:s?`📦`:`🧩`}),(0,k.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,k.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,k.jsx)(`h2`,{className:`truncate text-title-medium`,style:{color:`var(--content-default)`},children:t?.name??e}),t?.version?(0,k.jsxs)(`span`,{className:`shrink-0 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:[`v`,t.version]}):null,s?(0,k.jsx)(`span`,{className:`shrink-0 rounded px-1.5 py-0.5 text-body-small-default`,style:{backgroundColor:`var(--surface-secondary)`,color:`var(--content-tertiary)`},children:`external`}):null]}),t?.description?(0,k.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:t.description}):null]})]}),t?o?(0,k.jsx)(l,{type:`button`,variant:`dangerOutline`,onClick:r,disabled:a,leftIcon:a?(0,k.jsx)(p,{className:`animate-spin`,"aria-hidden":!0}):(0,k.jsx)(S,{"aria-hidden":!0}),children:`Remove`}):(0,k.jsx)(l,{type:`button`,onClick:n,disabled:i,leftIcon:i?(0,k.jsx)(p,{className:`animate-spin`,"aria-hidden":!0}):(0,k.jsx)(T,{"aria-hidden":!0}),children:`Install`}):null]})}function M({plugin:e}){let t=[{label:`Source`,value:e.source.kind===`github`?e.source.repo:`First-party`,href:(e.source.kind===`github`?`https://github.com/${e.source.repo}`:null)??void 0}];return e.homepage&&t.push({label:`Homepage`,value:e.homepage,href:e.homepage}),e.license&&t.push({label:`License`,value:e.license}),(0,k.jsx)(`dl`,{className:`mb-5 grid gap-x-6 gap-y-2 border-b pb-5 sm:grid-cols-[max-content_1fr]`,style:{borderColor:`var(--border-base)`},children:t.map(e=>(0,k.jsxs)(`div`,{className:`contents`,children:[(0,k.jsx)(`dt`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:e.label}),(0,k.jsx)(`dd`,{className:`min-w-0 truncate text-body-small-default`,style:{color:`var(--content-secondary)`},children:e.href?(0,k.jsxs)(`a`,{href:e.href,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 underline`,style:{color:`var(--primary-base, #60a5fa)`},children:[e.value,(0,k.jsx)(f,{className:`h-3 w-3`,"aria-hidden":!0})]}):e.value})]},e.label))})}function N(){return(0,k.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,k.jsx)(p,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})})}function P(){return(0,k.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 py-12 text-center`,style:{color:`var(--content-tertiary)`},children:[(0,k.jsx)(w,{className:`h-6 w-6`,"aria-hidden":!0}),(0,k.jsx)(`p`,{className:`text-body-medium-default`,children:`We couldn't load this plugin.`}),(0,k.jsx)(`p`,{className:`text-body-small-default`,children:`It may not exist, or your assistant may be on an older build.`})]})}function F({message:e}){return(0,k.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 rounded px-3 py-2 text-body-small-default`,style:{backgroundColor:`var(--surface-secondary)`,color:`var(--content-warning, var(--content-tertiary))`},role:`alert`,children:[(0,k.jsx)(w,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0}),e]})}export{A as PluginDetailPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{r as n,t as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as i}from"./useQuery-D2zf6Uhu.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./card-CL5iEMJO.js";import"./src-hn7lwVCD.js";import{t as s}from"./input-Cu3PPVCq.js";import{t as c}from"./chevron-right-zTNPbA1m.js";import{t as l}from"./loader-circle-BSAFLoPH.js";import{sn as u}from"./sdk.gen-AJllUeDf.js";import{A as d,O as f}from"./react-query.gen-B8xaBreR.js";import{i as p}from"./routes-Dk5Qeryt.js";import{t as m}from"./assistant-feature-flag-store-0382ImYF.js";import{Yi as h,ji as g,ta as _}from"./index-DGojzQtP.js";import{t as v}from"./use-active-assistant-id-BIhArlF_.js";var y=e(t(),1),b=a();function x({match:e}){let t=e.source.kind===`github`;return(0,b.jsx)(o.Root,{asChild:!0,children:(0,b.jsxs)(r,{to:p.plugin(e.name),className:`group flex cursor-pointer items-center gap-4 px-5 py-4 text-left transition-colors hover:bg-[var(--surface-hover)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:[(0,b.jsx)(`div`,{className:`flex h-10 w-10 shrink-0 items-center justify-center text-2xl`,children:`📦`}),(0,b.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,b.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,b.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-default)`},children:e.name}),t&&(0,b.jsx)(`span`,{className:`shrink-0 rounded px-1.5 py-0.5 text-body-small-default`,style:{backgroundColor:`var(--surface-secondary)`,color:`var(--content-tertiary)`},children:`external`})]}),e.description&&(0,b.jsx)(`p`,{className:`mt-1 truncate text-body-small-default`,style:{color:`var(--content-secondary)`},children:e.description}),(0,b.jsx)(`p`,{className:`mt-1 truncate text-body-small-default`,style:{color:`var(--content-tertiary)`},title:e.path,children:e.path})]}),(0,b.jsx)(c,{className:`h-5 w-5 shrink-0 opacity-0 transition-opacity group-hover:opacity-100`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0})]})})}function S({plugin:e}){return(0,b.jsx)(o.Root,{asChild:!0,children:(0,b.jsxs)(r,{to:p.plugin(e.name),className:`group flex cursor-pointer items-center gap-4 px-5 py-4 text-left transition-colors hover:bg-[var(--surface-hover)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:[(0,b.jsx)(`div`,{className:`flex h-10 w-10 shrink-0 items-center justify-center text-2xl`,children:`🧩`}),(0,b.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,b.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,b.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-default)`},children:e.name}),e.version?(0,b.jsxs)(`span`,{className:`shrink-0 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:[`v`,e.version]}):null]}),(0,b.jsx)(`p`,{className:`mt-1 truncate text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:e.description??`No description provided.`}),e.issues&&e.issues.length>0?(0,b.jsxs)(`p`,{className:`mt-1 truncate text-body-small-default`,style:{color:`var(--content-warning, var(--content-tertiary))`},title:e.issues.join(`; `),children:[e.issues[0],e.issues.length>1?` (+${e.issues.length-1} more)`:``]}):null]}),(0,b.jsx)(c,{className:`h-5 w-5 shrink-0 opacity-0 transition-opacity group-hover:opacity-100`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0})]})})}var C=300*1e3;function w(e,...t){return e?t.some(t=>t?.toLowerCase().includes(e)):!0}function T({assistantId:e}){let[t,n]=(0,y.useState)(``),r=t.trim().toLowerCase(),a=i({queryKey:f({path:{assistant_id:e},query:{q:void 0}}),queryFn:async({signal:t})=>{let n=await u({path:{assistant_id:e},query:{q:void 0},signal:t,throwOnError:!1});if(n.response?.status===404)return{plugins:[]};if(!n.response?.ok)throw Error(`Failed to load plugins`);return n.data??{plugins:[]}},enabled:!!e,staleTime:C}),o=i({...d({path:{assistant_id:e},query:{q:void 0}}),enabled:!!e,staleTime:C}),s=(0,y.useMemo)(()=>E(a.data?.plugins??[]),[a.data?.plugins]),c=(0,y.useMemo)(()=>new Set(s.map(e=>e.name)),[s]),l=(0,y.useMemo)(()=>s.filter(e=>w(r,e.name,e.description)),[s,r]),p=(0,y.useMemo)(()=>(o.data?.matches??[]).filter(e=>!c.has(e.name)&&w(r,e.name,e.description)),[o.data?.matches,c,r]),m=a.isFetching&&!a.isLoading||o.isFetching&&!o.isLoading,h=a.isLoading,g=o.isLoading,_=!h&&!a.isError&&l.length===0,v=!g&&p.length===0;return(0,b.jsxs)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col gap-4`,children:[(0,b.jsx)(D,{search:t,onSearchChange:n,isSearching:m}),(0,b.jsxs)(`div`,{className:`min-w-0 flex-1 overflow-y-auto`,children:[(0,b.jsx)(O,{title:`Installed`}),h?(0,b.jsx)(k,{}):a.isError?(0,b.jsx)(M,{}):_?(0,b.jsx)(A,{hasQuery:!!r}):(0,b.jsx)(`ul`,{className:`flex flex-col gap-2`,children:l.map(e=>(0,b.jsx)(`li`,{children:(0,b.jsx)(S,{plugin:e})},e.id))}),(0,b.jsx)(`div`,{className:`mt-6`}),(0,b.jsx)(O,{title:`Available to install`}),g?(0,b.jsx)(k,{}):o.isError?(0,b.jsx)(N,{}):v?(0,b.jsx)(j,{hasQuery:!!r}):(0,b.jsx)(`ul`,{className:`flex flex-col gap-2`,children:p.map(e=>(0,b.jsx)(`li`,{children:(0,b.jsx)(x,{match:e})},e.path))})]})]})}function E(e){return[...e].sort((e,t)=>e.name.localeCompare(t.name,void 0,{sensitivity:`base`}))}function D({search:e,onSearchChange:t,isSearching:n}){return(0,b.jsx)(`div`,{className:`flex items-center gap-3`,children:(0,b.jsx)(s,{type:`search`,value:e,onChange:e=>{t(e.target.value)},placeholder:`Search Plugins`,"aria-label":`Search Plugins`,leftIcon:(0,b.jsx)(h,{className:`h-4 w-4`,"aria-hidden":!0}),rightIcon:n?(0,b.jsx)(l,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):void 0,fullWidth:!0,wrapperClassName:`flex-1`})})}function O({title:e}){return(0,b.jsx)(`h3`,{className:`mb-2 text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:e})}function k(){return(0,b.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,b.jsx)(l,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})})}function A({hasQuery:e}){let t=e?`No installed plugins match`:`No Plugins Installed`,n=e?`Try a different search term, or browse the catalog below.`:`Install a plugin with the CLI, or browse the catalog below.`,r=e?h:_;return(0,b.jsx)(o.Root,{children:(0,b.jsxs)(o.Body,{className:`flex flex-col items-center justify-center py-10 text-center`,children:[(0,b.jsx)(r,{className:`mb-3 h-8 w-8`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0}),(0,b.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:t}),(0,b.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:n})]})})}function j({hasQuery:e}){let t=e?`No catalog entries match`:`Catalog is empty`,n=e?`Try a different search term, or remove the filter to browse everything.`:`No plugins are currently published in the catalog.`;return(0,b.jsx)(o.Root,{children:(0,b.jsxs)(o.Body,{className:`flex flex-col items-center justify-center py-10 text-center`,children:[(0,b.jsx)(h,{className:`mb-3 h-8 w-8`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0}),(0,b.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:t}),(0,b.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:n})]})})}function M(){return(0,b.jsx)(o.Root,{children:(0,b.jsxs)(o.Body,{className:`flex flex-col items-center justify-center py-10 text-center`,children:[(0,b.jsx)(g,{className:`mb-3 h-8 w-8`,style:{color:`var(--system-danger)`},"aria-hidden":!0}),(0,b.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:`Failed to load plugins`}),(0,b.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 N(){return(0,b.jsx)(o.Root,{children:(0,b.jsxs)(o.Body,{className:`flex flex-col items-center justify-center py-10 text-center`,children:[(0,b.jsx)(_,{className:`mb-3 h-8 w-8`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0}),(0,b.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:`Couldn't load catalog`}),(0,b.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Catalog browsing is temporarily unavailable. Installed plugins are still listed above.`})]})})}function P(){let e=m.use.hasHydrated(),t=m.use.externalPlugins(),r=v();return e?t?(0,b.jsx)(T,{assistantId:r}):(0,b.jsx)(n,{to:p.identity,replace:!0}):null}export{P as PluginsPage};
@@ -1 +0,0 @@
1
- import{o as e,t}from"./chunk-jRWAZmH_.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import{a as i,n as a}from"./cn-DFqQkJlk.js";var o=t((e=>{var t=n();function r(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function i(){}var a={d:{f:i,r:function(){throw Error(r(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},o=Symbol.for(`react.portal`);function s(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var c=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function l(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=a,e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(r(299));return s(e,t,null,n)},e.flushSync=function(e){var t=c.T,n=a.p;try{if(c.T=null,a.p=2,e)return e()}finally{c.T=t,a.p=n,a.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,a.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&a.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin),i=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?a.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:i,fetchPriority:o}):n===`script`&&a.d.X(e,{crossOrigin:r,integrity:i,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`)if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=l(t.as,t.crossOrigin);a.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??a.d.M(e)},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin);a.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`)if(t){var n=l(t.as,t.crossOrigin);a.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else a.d.m(e)},e.requestFormReset=function(e){a.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return c.H.useFormState(e,t,n)},e.useFormStatus=function(){return c.H.useHostTransitionStatus()},e.version=`19.2.6`})),s=t(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=o()})),c=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,l=a,u=(e,t)=>n=>{if(t?.variants==null)return l(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=c(t)||c(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return l(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},d=e(n(),1),f=r();function p(e,t){let n=d.createContext(t),r=e=>{let{children:t,...r}=e,i=d.useMemo(()=>r,Object.values(r));return(0,f.jsx)(n.Provider,{value:i,children:t})};r.displayName=e+`Provider`;function i(r){let i=d.useContext(n);if(i)return i;if(t!==void 0)return t;throw Error(`\`${r}\` must be used within \`${e}\``)}return[r,i]}function m(e,t=[]){let n=[];function r(t,r){let i=d.createContext(r),a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=d.useMemo(()=>o,Object.values(o));return(0,f.jsx)(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o){let s=o?.[e]?.[a]||i,c=d.useContext(s);if(c)return c;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>d.createContext(e));return function(n){let r=n?.[e]||t;return d.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,h(i,...t)]}function h(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return d.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}var g=e(s(),1);function _(e){let t=v(e),n=d.forwardRef((e,n)=>{let{children:r,...i}=e,a=d.Children.toArray(r),o=a.find(b);if(o){let e=o.props.children,r=a.map(t=>t===o?d.Children.count(e)>1?d.Children.only(null):d.isValidElement(e)?e.props.children:null:t);return(0,f.jsx)(t,{...i,ref:n,children:d.isValidElement(e)?d.cloneElement(e,void 0,r):null})}return(0,f.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}function v(e){let t=d.forwardRef((e,t)=>{let{children:n,...r}=e;if(d.isValidElement(n)){let e=S(n),a=x(r,n.props);return n.type!==d.Fragment&&(a.ref=t?i(t,e):e),d.cloneElement(n,a)}return d.Children.count(n)>1?d.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var y=Symbol(`radix.slottable`);function b(e){return d.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===y}function x(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function S(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var C=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=_(`Primitive.${t}`),r=d.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,f.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function w(e,t){e&&g.flushSync(()=>e.dispatchEvent(t))}function T(e){let t=d.useRef(e);return d.useEffect(()=>{t.current=e}),d.useMemo(()=>(...e)=>t.current?.(...e),[])}function E(e,t=globalThis?.document){let n=T(e);d.useEffect(()=>{let e=e=>{e.key===`Escape`&&n(e)};return t.addEventListener(`keydown`,e,{capture:!0}),()=>t.removeEventListener(`keydown`,e,{capture:!0})},[n,t])}var D=globalThis?.document?d.useLayoutEffect:()=>{},O=d.useId||(()=>void 0),k=0;function A(e){let[t,n]=d.useState(O());return D(()=>{e||n(e=>e??String(k++))},[e]),e||(t?`radix-${t}`:``)}var j=[`top`,`right`,`bottom`,`left`],M=Math.min,N=Math.max,P=Math.round,F=Math.floor,I=e=>({x:e,y:e}),ee={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function te(e,t,n){return N(e,M(t,n))}function L(e,t){return typeof e==`function`?e(t):e}function R(e){return e.split(`-`)[0]}function z(e){return e.split(`-`)[1]}function ne(e){return e===`x`?`y`:`x`}function re(e){return e===`y`?`height`:`width`}function B(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function ie(e){return ne(B(e))}function ae(e,t,n){n===void 0&&(n=!1);let r=z(e),i=ie(e),a=re(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=me(o)),[o,me(o)]}function oe(e){let t=me(e);return[se(e),t,se(t)]}function se(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var ce=[`left`,`right`],le=[`right`,`left`],ue=[`top`,`bottom`],de=[`bottom`,`top`];function fe(e,t,n){switch(e){case`top`:case`bottom`:return n?t?le:ce:t?ce:le;case`left`:case`right`:return t?ue:de;default:return[]}}function pe(e,t,n,r){let i=z(e),a=fe(R(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(se)))),a}function me(e){let t=R(e);return ee[t]+e.slice(t.length)}function he(e){return{top:0,right:0,bottom:0,left:0,...e}}function ge(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:he(e)}function _e(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function ve(e,t,n){let{reference:r,floating:i}=e,a=B(t),o=ie(t),s=re(o),c=R(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(z(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}async function ye(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=L(t,e),p=ge(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=_e(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=_e(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var be=50,xe=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:ye},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=ve(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<be&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=ve(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},Se=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=L(e,t)||{};if(l==null)return{};let d=ge(u),f={x:n,y:r},p=ie(i),m=re(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=M(d[_],T),D=M(d[v],T),O=E,k=C-h[m]-D,A=C/2-h[m]/2+w,j=te(O,A,k),N=!c.arrow&&z(i)!=null&&A!==j&&a.reference[m]/2-(A<O?E:D)-h[m]/2<0,P=N?A<O?A-O:A-k:0;return{[p]:f[p]+P,data:{[p]:j,centerOffset:A-j-P,...N&&{alignmentOffset:P}},reset:N}}}),Ce=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=L(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=R(r),_=B(o),v=R(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[me(o)]:oe(o)),x=p!==`none`;!d&&x&&b.push(...pe(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=ae(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(!(u===`alignment`&&_!==B(t))||T.every(e=>B(e.placement)===_?e.overflows[0]>0:!0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=B(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function we(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Te(e){return j.some(t=>e[t]>=0)}var Ee=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=L(e,t);switch(i){case`referenceHidden`:{let e=we(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:Te(e)}}}case`escaped`:{let e=we(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:Te(e)}}}default:return{}}}}},De=new Set([`left`,`top`]);async function Oe(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=R(n),s=z(n),c=B(n)===`y`,l=De.has(o)?-1:1,u=a&&c?-1:1,d=L(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var ke=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await Oe(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},Ae=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=L(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=B(R(i)),p=ne(f),m=u[p],h=u[f];if(o){let e=p===`y`?`top`:`left`,t=p===`y`?`bottom`:`right`,n=m+d[e],r=m-d[t];m=te(n,m,r)}if(s){let e=f===`y`?`top`:`left`,t=f===`y`?`bottom`:`right`,n=h+d[e],r=h-d[t];h=te(n,h,r)}let g=c.fn({...t,[p]:m,[f]:h});return{...g,data:{x:g.x-n,y:g.y-r,enabled:{[p]:o,[f]:s}}}}}},je=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=L(e,t),u={x:n,y:r},d=B(i),f=ne(d),p=u[f],m=u[d],h=L(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=De.has(R(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},Me=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:i,rects:a,platform:o,elements:s}=t,{apply:c=()=>{},...l}=L(e,t),u=await o.detectOverflow(t,l),d=R(i),f=z(i),p=B(i)===`y`,{width:m,height:h}=a.floating,g,_;d===`top`||d===`bottom`?(g=d,_=f===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?`start`:`end`)?`left`:`right`):(_=d,g=f===`end`?`top`:`bottom`);let v=h-u.top-u.bottom,y=m-u.left-u.right,b=M(h-u[g],v),x=M(m-u[_],y),S=!t.middlewareData.shift,C=b,w=x;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(w=y),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(C=v),S&&!f){let e=N(u.left,0),t=N(u.right,0),n=N(u.top,0),r=N(u.bottom,0);p?w=m-2*(e!==0||t!==0?e+t:N(u.left,u.right)):C=h-2*(n!==0||r!==0?n+r:N(u.top,u.bottom))}await c({...t,availableWidth:w,availableHeight:C});let T=await o.getDimensions(s.floating);return m!==T.width||h!==T.height?{reset:{rects:!0}}:{}}}};function Ne(){return typeof window<`u`}function V(e){return Pe(e)?(e.nodeName||``).toLowerCase():`#document`}function H(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function U(e){return((Pe(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function Pe(e){return Ne()?e instanceof Node||e instanceof H(e).Node:!1}function W(e){return Ne()?e instanceof Element||e instanceof H(e).Element:!1}function G(e){return Ne()?e instanceof HTMLElement||e instanceof H(e).HTMLElement:!1}function Fe(e){return!Ne()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof H(e).ShadowRoot}function K(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=Y(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function Ie(e){return/^(table|td|th)$/.test(V(e))}function Le(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var Re=/transform|translate|scale|rotate|perspective|filter/,ze=/paint|layout|strict|content/,q=e=>!!e&&e!==`none`,Be;function Ve(e){let t=W(e)?Y(e):e;return q(t.transform)||q(t.translate)||q(t.scale)||q(t.rotate)||q(t.perspective)||!Ue()&&(q(t.backdropFilter)||q(t.filter))||Re.test(t.willChange||``)||ze.test(t.contain||``)}function He(e){let t=X(e);for(;G(t)&&!J(t);){if(Ve(t))return t;if(Le(t))return null;t=X(t)}return null}function Ue(){return Be??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),Be}function J(e){return/^(html|body|#document)$/.test(V(e))}function Y(e){return H(e).getComputedStyle(e)}function We(e){return W(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function X(e){if(V(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||Fe(e)&&e.host||U(e);return Fe(t)?t.host:t}function Ge(e){let t=X(e);return J(t)?e.ownerDocument?e.ownerDocument.body:e.body:G(t)&&K(t)?t:Ge(t)}function Z(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=Ge(e),i=r===e.ownerDocument?.body,a=H(r);if(i){let e=Ke(a);return t.concat(a,a.visualViewport||[],K(r)?r:[],e&&n?Z(e):[])}else return t.concat(r,Z(r,[],n))}function Ke(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function qe(e){let t=Y(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=G(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=P(n)!==a||P(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function Je(e){return W(e)?e:e.contextElement}function Q(e){let t=Je(e);if(!G(t))return I(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=qe(t),o=(a?P(n.width):n.width)/r,s=(a?P(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var Ye=I(0);function Xe(e){let t=H(e);return!Ue()||!t.visualViewport?Ye:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Ze(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==H(e)?!1:t}function $(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Je(e),o=I(1);t&&(r?W(r)&&(o=Q(r)):o=Q(e));let s=Ze(a,n,r)?Xe(a):I(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=H(a),t=r&&W(r)?H(r):r,n=e,i=Ke(n);for(;i&&r&&t!==n;){let e=Q(i),t=i.getBoundingClientRect(),r=Y(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=H(i),i=Ke(n)}}return _e({width:u,height:d,x:c,y:l})}function Qe(e,t){let n=We(e).scrollLeft;return t?t.left+n:$(U(e)).left+n}function $e(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-Qe(e,n),y:n.top+t.scrollTop}}function et(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=U(r),s=t?Le(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=I(1),u=I(0),d=G(r);if((d||!d&&!a)&&((V(r)!==`body`||K(o))&&(c=We(r)),d)){let e=$(r);l=Q(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?$e(o,c):I(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function tt(e){return Array.from(e.getClientRects())}function nt(e){let t=U(e),n=We(e),r=e.ownerDocument.body,i=N(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=N(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+Qe(e),s=-n.scrollTop;return Y(r).direction===`rtl`&&(o+=N(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var rt=25;function it(e,t){let n=H(e),r=U(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=Ue();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=Qe(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=rt&&(a-=o)}else l<=rt&&(a+=l);return{width:a,height:o,x:s,y:c}}function at(e,t){let n=$(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=G(e)?Q(e):I(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function ot(e,t,n){let r;if(t===`viewport`)r=it(e,n);else if(t===`document`)r=nt(U(e));else if(W(t))r=at(t,n);else{let n=Xe(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return _e(r)}function st(e,t){let n=X(e);return n===t||!W(n)||J(n)?!1:Y(n).position===`fixed`||st(n,t)}function ct(e,t){let n=t.get(e);if(n)return n;let r=Z(e,[],!1).filter(e=>W(e)&&V(e)!==`body`),i=null,a=Y(e).position===`fixed`,o=a?X(e):e;for(;W(o)&&!J(o);){let t=Y(o),n=Ve(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&(i.position===`absolute`||i.position===`fixed`)||K(o)&&!n&&st(e,o))?r=r.filter(e=>e!==o):i=t,o=X(o)}return t.set(e,r),r}function lt(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?Le(t)?[]:ct(t,this._c):[].concat(n),r],o=ot(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=ot(t,a[e],i);s=N(n.top,s),c=M(n.right,c),l=M(n.bottom,l),u=N(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function ut(e){let{width:t,height:n}=qe(e);return{width:t,height:n}}function dt(e,t,n){let r=G(t),i=U(t),a=n===`fixed`,o=$(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=I(0);function l(){c.x=Qe(i)}if(r||!r&&!a)if((V(t)!==`body`||K(i))&&(s=We(t)),r){let e=$(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?$e(i,s):I(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function ft(e){return Y(e).position===`static`}function pt(e,t){if(!G(e)||Y(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return U(e)===n&&(n=n.ownerDocument.body),n}function mt(e,t){let n=H(e);if(Le(e))return n;if(!G(e)){let t=X(e);for(;t&&!J(t);){if(W(t)&&!ft(t))return t;t=X(t)}return n}let r=pt(e,t);for(;r&&Ie(r)&&ft(r);)r=pt(r,t);return r&&J(r)&&ft(r)&&!Ve(r)?n:r||He(e)||n}var ht=async function(e){let t=this.getOffsetParent||mt,n=this.getDimensions,r=await n(e.floating);return{reference:dt(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function gt(e){return Y(e).direction===`rtl`}var _t={convertOffsetParentRelativeRectToViewportRelativeRect:et,getDocumentElement:U,getClippingRect:lt,getOffsetParent:mt,getElementRects:ht,getClientRects:tt,getDimensions:ut,getScale:Q,isElement:W,isRTL:gt};function vt(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function yt(e,t){let n=null,r,i=U(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=F(d),h=F(i.clientWidth-(u+f)),g=F(i.clientHeight-(d+p)),_=F(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:N(0,M(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!vt(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function bt(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=Je(e),u=i||a?[...l?Z(l):[],...t?Z(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?yt(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?$(e):null;c&&g();function g(){let t=$(e);h&&!vt(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var xt=ke,St=Ae,Ct=Ce,wt=Me,Tt=Ee,Et=Se,Dt=je,Ot=(e,t,n)=>{let r=new Map,i={platform:_t,...n},a={...i.platform,_c:r};return xe(e,t,{...i,platform:a})},kt=typeof document<`u`?d.useLayoutEffect:function(){};function At(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!At(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!At(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function jt(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Mt(e,t){let n=jt(e);return Math.round(t*n)/n}function Nt(e){let t=d.useRef(e);return kt(()=>{t.current=e}),t}function Pt(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[u,f]=d.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[p,m]=d.useState(r);At(p,r)||m(r);let[h,_]=d.useState(null),[v,y]=d.useState(null),b=d.useCallback(e=>{e!==w.current&&(w.current=e,_(e))},[]),x=d.useCallback(e=>{e!==T.current&&(T.current=e,y(e))},[]),S=a||h,C=o||v,w=d.useRef(null),T=d.useRef(null),E=d.useRef(u),D=c!=null,O=Nt(c),k=Nt(i),A=Nt(l),j=d.useCallback(()=>{if(!w.current||!T.current)return;let e={placement:t,strategy:n,middleware:p};k.current&&(e.platform=k.current),Ot(w.current,T.current,e).then(e=>{let t={...e,isPositioned:A.current!==!1};M.current&&!At(E.current,t)&&(E.current=t,g.flushSync(()=>{f(t)}))})},[p,t,n,k,A]);kt(()=>{l===!1&&E.current.isPositioned&&(E.current.isPositioned=!1,f(e=>({...e,isPositioned:!1})))},[l]);let M=d.useRef(!1);kt(()=>(M.current=!0,()=>{M.current=!1}),[]),kt(()=>{if(S&&(w.current=S),C&&(T.current=C),S&&C){if(O.current)return O.current(S,C,j);j()}},[S,C,j,O,D]);let N=d.useMemo(()=>({reference:w,floating:T,setReference:b,setFloating:x}),[b,x]),P=d.useMemo(()=>({reference:S,floating:C}),[S,C]),F=d.useMemo(()=>{let e={position:n,left:0,top:0};if(!P.floating)return e;let t=Mt(P.floating,u.x),r=Mt(P.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...jt(P.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,P.floating,u.x,u.y]);return d.useMemo(()=>({...u,update:j,refs:N,elements:P,floatingStyles:F}),[u,j,N,P,F])}var Ft=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:Et({element:r.current,padding:i}).fn(n):r?Et({element:r,padding:i}).fn(n):{}}}},It=(e,t)=>{let n=xt(e);return{name:n.name,fn:n.fn,options:[e,t]}},Lt=(e,t)=>{let n=St(e);return{name:n.name,fn:n.fn,options:[e,t]}},Rt=(e,t)=>({fn:Dt(e).fn,options:[e,t]}),zt=(e,t)=>{let n=Ct(e);return{name:n.name,fn:n.fn,options:[e,t]}},Bt=(e,t)=>{let n=wt(e);return{name:n.name,fn:n.fn,options:[e,t]}},Vt=(e,t)=>{let n=Tt(e);return{name:n.name,fn:n.fn,options:[e,t]}},Ht=(e,t)=>{let n=Ft(e);return{name:n.name,fn:n.fn,options:[e,t]}},Ut=`Arrow`,Wt=d.forwardRef((e,t)=>{let{children:n,width:r=10,height:i=5,...a}=e;return(0,f.jsx)(C.svg,{...a,ref:t,width:r,height:i,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:(0,f.jsx)(`polygon`,{points:`0,0 30,0 15,10`})})});Wt.displayName=Ut;var Gt=Wt;function Kt(e){let[t,n]=d.useState(void 0);return D(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}else n(void 0)},[e]),t}var qt=`Portal`,Jt=d.forwardRef((e,t)=>{let{container:n,...r}=e,[i,a]=d.useState(!1);D(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?g.createPortal((0,f.jsx)(C.div,{...r,ref:t}),o):null});Jt.displayName=qt;var Yt=d.useInsertionEffect||D;function Xt({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,o]=Zt({defaultProp:t,onChange:n}),s=e!==void 0,c=s?e:i;{let t=d.useRef(e!==void 0);d.useEffect(()=>{let e=t.current;e!==s&&console.warn(`${r} is changing from ${e?`controlled`:`uncontrolled`} to ${s?`controlled`:`uncontrolled`}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),t.current=s},[s,r])}return[c,d.useCallback(t=>{if(s){let n=Qt(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}function Zt({defaultProp:e,onChange:t}){let[n,r]=d.useState(e),i=d.useRef(n),a=d.useRef(t);return Yt(()=>{a.current=t},[t]),d.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function Qt(e){return typeof e==`function`}var $t=(0,d.createContext)(null);function en({container:e,children:t}){return(0,f.jsx)($t,{value:e,children:t})}function tn(){return(0,d.useContext)($t)}export{m as C,p as S,s as T,D as _,Kt as a,C as b,zt as c,It as d,Lt as f,A as g,bt as h,Jt as i,Vt as l,Pt as m,tn as n,Gt as o,Bt as p,Xt as r,Ht as s,en as t,Rt as u,E as v,u as w,w as x,T as y};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as r}from"./QueryClientProvider-DNHWXaGq.js";import{t as i}from"./useQuery-D2zf6Uhu.js";import{t as a}from"./useMutation-BuofVRHk.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import{t as s}from"./button-DdEh-9f_.js";import{t as c}from"./card-CL5iEMJO.js";import{t as l}from"./input-Cu3PPVCq.js";import{f as u,l as d,s as f,t as p}from"./resolved-assistants-store-ub66utfl.js";import{t as m}from"./is-electron-CavSPgmY.js";import{t as ee}from"./loader-circle-BSAFLoPH.js";import{t as h}from"./pencil-BA9LOIzP.js";import{t as g}from"./x-BDqbYVtS.js";import{B as _,O as v,V as y,a as b,i as x,n as S}from"./auth-store-CiQCAKS1.js";import{t as C}from"./client.gen-BKAMS0D0.js";import{i as w}from"./routes-Dk5Qeryt.js";import{t as T}from"./public-asset-Dx4la7Nv.js";import{A as te,C as E,Ct as D,G as ne,Ha as O,Jn as k,O as re,W as ie,Xn as A,Yn as j,Zn as M,bt as ae,c as N,fo as P,hr as oe,j as F,k as se,l as ce,mo as I,o as le,pr as ue,rt as de,s as fe,vr as pe,w as L}from"./index-DGojzQtP.js";import{t as R}from"./onboarding-layout-BIVa2BnX.js";import{c as me,i as he,n as z,o as ge,r as _e,s as ve,t as B}from"./step-indicator-dots-C_NCj5FH.js";import{t as ye}from"./use-oauth-complete-deep-link-listener-aRDKwx8y.js";var V=e(t(),1);async function be(){try{let{data:e,response:t}=await C.get({url:`/v1/onboarding/recipe/`,throwOnError:!1});if(!t?.ok||!e)return null;let n=e;return typeof n.cohort!=`string`||!Array.isArray(n.tasks)||typeof n.tone!=`string`||typeof n.bootstrap_template!=`string`||typeof n.initial_message!=`string`||!Array.isArray(n.skills)||typeof n.skip_prechat!=`boolean`?null:{cohort:n.cohort,tasks:n.tasks,tone:n.tone,bootstrapTemplate:n.bootstrap_template,initialMessage:n.initial_message,skills:n.skills,skipPrechat:n.skip_prechat}}catch{return null}}var H=o(),xe=[{label:`Push notifications`,detail:`stay in the loop even when the browser is closed`},{label:`Biometric login`,detail:`Face ID & Touch ID for instant, secure access`},{label:`Native haptics`,detail:`tactile feedback that feels part of the device`},{label:`Home screen access`,detail:`launch your assistant with a single tap`}];function Se({onComplete:e}){function t(){N(),le(),e()}return(0,H.jsx)(R,{showCreatureFooter:!1,children:(0,H.jsxs)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-md flex-col items-center justify-center px-6 pb-40 text-center`,children:[(0,H.jsx)(`div`,{className:`mb-8 flex size-16 items-center justify-center rounded-2xl border`,style:{background:`var(--surface-overlay)`,borderColor:`var(--border-element)`,boxShadow:`0 1px 3px rgba(0,0,0,0.06), 0 4px 12px rgba(0,0,0,0.04)`,animation:`fadeInUp 0.3s ease-out both`},children:(0,H.jsxs)(`svg`,{width:`28`,height:`28`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`,style:{color:`var(--content-default)`},"aria-hidden":!0,children:[(0,H.jsx)(`rect`,{x:`5`,y:`2`,width:`14`,height:`20`,rx:`3`}),(0,H.jsx)(`line`,{x1:`12`,y1:`18`,x2:`12`,y2:`18.01`})]})}),(0,H.jsx)(`p`,{className:`text-label-small-default mb-3 uppercase tracking-[0.2em]`,style:{color:`var(--content-tertiary)`,animation:`fadeInUp 0.3s ease-out 0.05s both`},children:`One more thing`}),(0,H.jsx)(`h1`,{className:`mb-3 text-3xl font-semibold tracking-tight`,style:{color:`var(--content-default)`,animation:`fadeInUp 0.3s ease-out 0.1s both`},children:`Your assistant, in your pocket.`}),(0,H.jsx)(`p`,{className:`text-body-medium-lighter mb-10 max-w-sm`,style:{color:`var(--content-secondary)`,animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`The iOS app keeps your assistant a tap away — with push notifications, biometric login, and native haptics.`}),(0,H.jsx)(`div`,{className:`mb-10 w-full rounded-xl border px-5 py-4`,style:{background:`var(--surface-overlay)`,borderColor:`var(--border-element)`,animation:`fadeInUp 0.3s ease-out 0.2s both`},children:(0,H.jsx)(`ul`,{className:`space-y-4`,children:xe.map((e,t)=>(0,H.jsxs)(`li`,{className:`flex items-start gap-3`,style:{animation:`fadeInUp 0.3s ease-out ${.25+t*.05}s both`},children:[(0,H.jsx)(`span`,{className:`mt-0.5 flex size-5 shrink-0 items-center justify-center rounded-full`,style:{background:`var(--system-positive-weak)`},children:(0,H.jsx)(I,{size:12,style:{color:`var(--system-positive-strong)`}})}),(0,H.jsxs)(`span`,{className:`text-left`,children:[(0,H.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.label}),(0,H.jsxs)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:[` — `,e.detail]})]})]},e.label))})}),(0,H.jsxs)(`div`,{className:`flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.45s both`},children:[(0,H.jsx)(s,{variant:`primary`,size:`regular`,fullWidth:!0,onClick:t,className:`h-11 text-base`,children:`Download on the App Store`}),(0,H.jsx)(s,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:e,className:`h-11 text-base`,children:`Continue in browser`})]})]})})}var U=`google`,Ce=[{id:`gmail`,label:`Gmail`,logoSrc:T(`/images/integrations/gmail.svg`)},{id:`google-calendar`,label:`Google Calendar`,logoSrc:T(`/images/integrations/google-calendar.svg`)},{id:`google-drive`,label:`Google Drive`,logoSrc:T(`/images/integrations/google-drive.svg`)}];function we({assistantId:e,assistantName:t,onConnect:n,onSkip:i,onBack:o}){let c=m(),l=r(),u=v(),d=(0,V.useRef)(null),f=(0,V.useRef)(null),p=(0,V.useRef)(null),h=(0,V.useRef)(null),g=(0,V.useRef)(null),_=(0,V.useRef)(null),y=(0,V.useRef)(null),[b,x]=(0,V.useState)(!1),S=(0,V.useCallback)(()=>{f.current=null,x(!1)},[]),C=(0,V.useCallback)(()=>{g.current&&=(window.removeEventListener(`message`,g.current),null),_.current&&=(window.removeEventListener(`storage`,_.current),null)},[]),T=(0,V.useCallback)(()=>{d.current&&!d.current.closed&&d.current.close(),d.current=null,p.current&&=(clearInterval(p.current),null),h.current&&=(clearTimeout(h.current),null)},[]),E=a({...D()});(0,V.useEffect)(()=>()=>{p.current&&clearInterval(p.current),h.current&&clearTimeout(h.current),d.current&&!d.current.closed&&d.current.close(),g.current&&window.removeEventListener(`message`,g.current),_.current&&window.removeEventListener(`storage`,_.current),y.current&&=(y.current(),null)},[]);let O=(0,V.useCallback)(async()=>{try{return(await l.fetchQuery({...ae({path:{assistant_id:e}}),staleTime:0})).find(e=>e.provider===U&&e.connected)??null}catch{return null}},[e,l]),k=(0,V.useCallback)(async()=>{T(),S(),n((await O())?.scopes_granted??[])},[S,T,O,n]),A=(0,V.useCallback)(e=>{e.type===`vellum:oauth-complete`&&(!f.current||e.requestId!==f.current.requestId||(e.oauthStatus===`connected`?k():(T(),S())))},[S,T,k]),j=(0,V.useCallback)(e=>{let t=f.current;if(!t)return;let n=re(e,window.location.origin,t.requestId);n&&A(n)},[A]),M=(0,V.useCallback)(e=>{let t=f.current;if(!t)return;let n=se(e,t.requestId);n&&(A(n),window.localStorage.removeItem(F(t.requestId)))},[A]);ye((0,V.useCallback)(e=>{let t=f.current;t&&e.requestId===t.requestId&&A({type:`vellum:oauth-complete`,requestId:e.requestId,oauthStatus:e.oauthStatus,oauthProvider:e.oauthProvider,oauthCode:e.oauthCode})},[A]));let N=(0,V.useCallback)(()=>{let t=crypto.randomUUID();if(C(),g.current=j,_.current=M,u){x(!0),f.current={requestId:t},E.mutate({path:{assistant_id:e,provider:U},body:{requested_scopes:[],redirect_after_connect:`${w.account.oauth.popupComplete}?requestId=${t}&native=1`}},{onSuccess(e){ie(e.connect_url)},onError(){S()}}),window.addEventListener(`message`,j),window.addEventListener(`storage`,M),y.current&&y.current();let n=ne(()=>{if(!f.current){n(),y.current=null;return}(async()=>{let e=await O();f.current&&(e?await k():S(),C(),n(),y.current=null)})()});y.current=n;return}let n=window.open(``,`_blank`,`width=500,height=600`);if(n===null){C();return}d.current=n,x(!0),f.current={requestId:t},window.addEventListener(`message`,j),window.addEventListener(`storage`,M),p.current=setInterval(()=>{d.current&&d.current.closed&&f.current&&!h.current&&(h.current=setTimeout(async()=>{h.current=null;let e=f.current;if(!e)return;let t=window.localStorage.getItem(F(e.requestId));if(t)try{let n=JSON.parse(t);if(te(n,e.requestId)){A(n),window.localStorage.removeItem(F(e.requestId)),C();return}}catch{}let n=await O();f.current&&(n?await k():(T(),S()),C())},1e3))},100),E.mutate({path:{assistant_id:e,provider:U},body:{requested_scopes:[],redirect_after_connect:`${w.account.oauth.popupComplete}?requestId=${t}`}},{onSuccess(e){d.current&&!d.current.closed?d.current.location.href=e.connect_url:f.current&&(T(),S(),C())},onError(){T(),S(),C()}})},[e,S,T,O,A,j,M,k,u,C,E]),oe=t||`your assistant`,ce=t||`Your assistant`;return(0,H.jsx)(R,{showCreatureFooter:!1,children:(0,H.jsxs)(`div`,{className:`mx-auto flex w-full max-w-md flex-col items-center ${c?`px-8 pt-7 pb-4 electron-prechat-type`:`px-6 pt-12 pb-40`} text-[var(--content-default)]`,children:[(0,H.jsxs)(`div`,{className:`grid w-full grid-cols-[auto_1fr_auto] items-center`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[(0,H.jsx)(`button`,{type:`button`,onClick:o,"aria-label":`Back`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors hover:bg-[var(--surface-base)]`,children:(0,H.jsx)(P,{className:`h-4 w-4`})}),(0,H.jsx)(`h1`,{className:`text-center ${c?`text-title-large`:`text-3xl font-semibold tracking-tight`}`,children:`Connect Google`}),(0,H.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`})]}),(0,H.jsx)(`p`,{className:`mt-4 text-center text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`If you use Google, ${oe} can use Gmail, Calendar, and Drive with your permission.`}),(0,H.jsx)(`div`,{className:`mt-6 flex items-stretch justify-center gap-3`,style:{animation:`fadeInUp 0.3s ease-out 0.2s both`},children:Ce.map(e=>(0,H.jsxs)(`div`,{className:`flex w-24 flex-col items-center gap-2.5 rounded-2xl bg-[var(--surface-lift)] px-3 pb-3 pt-4`,children:[(0,H.jsx)(`img`,{src:e.logoSrc,alt:``,width:28,height:28,className:`h-7 w-7 object-contain`,loading:`eager`}),(0,H.jsx)(`span`,{className:`text-center text-xs leading-tight text-[var(--content-tertiary)]`,children:e.label})]},e.id))}),(0,H.jsx)(`p`,{className:`mt-8 text-center text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`fadeInUp 0.3s ease-out 0.25s both`},children:`${ce} will never send email, change calendar events, or edit files without your permission. You can disconnect at any time.`}),(0,H.jsxs)(`div`,{className:`mt-8 flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.35s both`},children:[(0,H.jsx)(s,{variant:`primary`,size:`regular`,fullWidth:!0,onClick:N,disabled:b||E.isPending,className:`${c?`h-9`:`h-11 text-base`}`,children:b||E.isPending?(0,H.jsxs)(`span`,{className:`flex items-center justify-center gap-2`,children:[(0,H.jsx)(ee,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}),`Waiting for authorization...`]}):`Connect Google`}),(0,H.jsx)(s,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:i,disabled:b||E.isPending,className:`${c?`h-9`:`h-11 text-base`}`,children:`Skip for now`})]})]})})}var W=[{id:`grounded`,label:`Grounded`,descriptor:`Calm and precise`,tagline:`Measured. No filler.`,names:[`Penn`,`Sage`,`Atlas`,`Orion`,`Reed`,`Quill`]},{id:`warm`,label:`Warm`,descriptor:`Warm and easy`,tagline:`Friendly and casual.`,names:[`Kit`,`Remy`,`Wren`,`Milo`,`Fenn`,`Cleo`]},{id:`energetic`,label:`Energetic`,descriptor:`Fast and direct`,tagline:`Brief. To the point.`,names:[`Nova`,`Ember`,`Cade`,`Lark`,`Vela`,`Ziggy`]},{id:`poetic`,label:`Poetic`,descriptor:`Quiet and observant`,tagline:`Listens, then replies.`,names:[`Luna`,`Iris`,`Vesper`,`Lyra`,`Juno`,`Ada`]}],Te=6;function Ee(){return W.flatMap(e=>e.names)}function De(){let e=Ee(),t=Math.min(Te,e.length);for(let n=0;n<t;n+=1){let t=n+Math.floor(Math.random()*(e.length-n)),r=e[n];e[n]=e[t],e[t]=r}return e.slice(0,t)}function Oe({userName:e,assistantName:t,selectedGroupId:n,displayedAssistantNames:r,onUserNameChange:i,onAssistantNameChange:a,onGroupChange:o,onBack:c,onComplete:u,onSkip:d}){let f=m();return(0,H.jsx)(R,{showCreatureFooter:!1,children:(0,H.jsxs)(`div`,{className:`mx-auto flex w-full max-w-md flex-col items-center ${f?`px-8 pt-11 pb-4 electron-prechat-type`:`px-6 pt-12 pb-40`} text-[var(--content-default)]`,children:[(0,H.jsxs)(`div`,{className:`grid w-full items-center ${c?`grid-cols-[auto_1fr_auto]`:``}`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[c?(0,H.jsx)(`button`,{type:`button`,onClick:c,"aria-label":`Back`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors hover:bg-[var(--surface-base)]`,children:(0,H.jsx)(P,{className:`h-4 w-4`})}):null,(0,H.jsx)(`h1`,{className:`text-center ${f?`text-title-large`:`text-3xl font-semibold tracking-tight`}`,children:`Let's get to know each other.`}),c?(0,H.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`}):null]}),(0,H.jsx)(`p`,{className:`mt-2 text-center text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`You can change these any time.`}),(0,H.jsxs)(`div`,{className:`${f?`mt-6`:`mt-8`} flex w-full flex-col ${f?`gap-4`:`gap-6`}`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,H.jsx)(l,{label:`Your name`,placeholder:`Your name`,value:e,onChange:e=>i(e.target.value),fullWidth:!0}),(0,H.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,H.jsx)(l,{label:`What should I go by?`,placeholder:`Assistant name`,value:t,onChange:e=>a(e.target.value),fullWidth:!0}),(0,H.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`A few to try`}),(0,H.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:r.map(e=>{let n=e===t;return(0,H.jsx)(`button`,{type:`button`,onClick:()=>a(e),"aria-pressed":n,className:`cursor-pointer rounded-full border px-3 py-1 text-label-small-default transition-colors ${n?`border-[var(--primary-base)] bg-[var(--primary-base)] text-[var(--content-inset)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] text-[var(--content-secondary)] hover:bg-[var(--surface-base)]`}`,children:e},e)})})]}),(0,H.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,H.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Pick a vibe`}),(0,H.jsx)(`div`,{className:`grid grid-cols-2 gap-2`,children:W.map(e=>(0,H.jsx)(ke,{group:e,isActive:n===e.id,onToggle:()=>o(n===e.id?null:e.id)},e.id))})]})]}),(0,H.jsxs)(`div`,{className:`mt-8 flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,H.jsx)(s,{variant:`primary`,size:`regular`,fullWidth:!0,onClick:u,className:`${f?`h-9`:`h-11 text-base`}`,children:`Let's go`}),(0,H.jsx)(s,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:d,className:`${f?`h-9`:`h-11 text-base`}`,children:`Skip`})]})]})})}function ke({group:e,isActive:t,onToggle:n}){return(0,H.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":t,"aria-label":`${e.label}, ${e.descriptor}`,className:`flex cursor-pointer flex-col items-start gap-0.5 rounded-lg border p-3 text-left transition-colors ${t?`border-[var(--primary-base)] bg-[var(--primary-base)] text-[var(--content-inset)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] hover:bg-[var(--surface-base)]`}`,children:[(0,H.jsx)(`span`,{className:`text-body-medium-default ${t?`text-[var(--content-inset)]`:`text-[var(--content-default)]`}`,children:e.descriptor}),(0,H.jsx)(`span`,{className:`text-body-small-default ${t?`text-[var(--content-inset)] opacity-60`:`text-[var(--content-tertiary)]`}`,children:e.tagline})]})}function Ae({userName:e,assistantName:t,displayedAssistantNames:n,onUserNameChange:r,onAssistantNameChange:i,onBack:a,onContinue:o,onSkip:c,currentStep:u,totalSteps:d}){return(0,H.jsx)(R,{showCreatureFooter:!1,children:(0,H.jsxs)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-md flex-col px-6 pb-40 text-[var(--content-default)]`,children:[(0,H.jsxs)(`div`,{className:`grid w-full grid-cols-[auto_1fr_auto] items-center pb-4`,style:{paddingTop:`calc(var(--safe-area-inset-top, env(safe-area-inset-top, 0px)) + 1rem)`,animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[a?(0,H.jsx)(s,{variant:`ghost`,size:`compact`,iconOnly:(0,H.jsx)(P,{}),onClick:a,"aria-label":`Back`}):(0,H.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`}),(0,H.jsx)(`div`,{className:`flex justify-center`,children:(0,H.jsx)(B,{current:u,total:d})}),(0,H.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`})]}),(0,H.jsxs)(`div`,{className:`flex flex-1 flex-col items-center pt-4`,children:[(0,H.jsx)(`h1`,{className:`text-center text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:`Let's get to know each other.`}),(0,H.jsx)(`p`,{className:`mt-2 text-center text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`You can change these any time.`}),(0,H.jsxs)(`div`,{className:`mt-8 flex w-full flex-col gap-6`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,H.jsx)(l,{label:`Your name`,placeholder:`Your name`,value:e,onChange:e=>r(e.target.value),fullWidth:!0}),(0,H.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,H.jsx)(l,{label:`What should I go by?`,placeholder:`Assistant name`,value:t,onChange:e=>i(e.target.value),fullWidth:!0}),(0,H.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`A few to try`}),(0,H.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:n.map(e=>{let n=e===t;return(0,H.jsx)(`button`,{type:`button`,onClick:()=>i(e),"aria-pressed":n,className:`cursor-pointer rounded-full border px-3 py-1 text-label-small-default transition-colors ${n?`border-[var(--primary-base)] bg-[var(--primary-base)] text-[var(--content-inset)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] text-[var(--content-secondary)] hover:bg-[var(--surface-base)]`}`,children:e},e)})})]})]})]}),(0,H.jsxs)(`div`,{className:`flex w-full flex-col gap-2 pb-4`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,H.jsx)(s,{variant:`primary`,size:`regular`,fullWidth:!0,onClick:o,className:`h-11 text-base`,children:`Continue`}),(0,H.jsx)(s,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:c,className:`h-11 text-base`,children:`Skip`})]})]})})}var je=[{id:`chatgpt`,label:`ChatGPT`,logoSrc:T(`/images/prior-assistants/chatgpt.svg`)},{id:`claude`,label:`Claude`,logoSrc:T(`/images/prior-assistants/claude.svg`)},{id:`openclaw`,label:`OpenClaw`,logoSrc:T(`/images/prior-assistants/openclaw.png`)},{id:`hermes`,label:`Hermes`,logoSrc:T(`/images/prior-assistants/hermes.png`)},{id:`manus`,label:`Manus`,logoSrc:T(`/images/prior-assistants/manus.svg`)},{id:`gemini`,label:`Gemini`,logoSrc:T(`/images/prior-assistants/gemini.svg`)},{id:`copilot`,label:`Copilot`,logoSrc:T(`/images/prior-assistants/copilot.svg`)}];function Me({selectedAssistants:e,onChange:t,onBack:n,onContinue:r,onSkip:i}){let a=m(),[o,u]=(0,V.useState)(()=>G(e)),[d,f]=(0,V.useState)(()=>o.length>0),p=(0,V.useRef)(K(e));(0,V.useEffect)(()=>{let t=K(e);if(t===p.current)return;let n=G(e);u(n),f(e=>e||n.length>0),p.current=t},[e]),(0,V.useEffect)(()=>{let n=new Set([...e].filter(e=>!e.startsWith(`other:`))),r=new Set;for(let e of o.split(`,`)){let t=e.trim();t&&(r.has(t)||(r.add(t),n.add(`other:${t}`)))}Ne(n,e)||(p.current=K(n),t(n))},[o]);let ee=n=>{let r=new Set(e);r.has(n)?r.delete(n):r.add(n),t(r)},_=(0,V.useMemo)(()=>{let e=new Set;return o.split(`,`).map(e=>e.trim()).filter(t=>!t||e.has(t)?!1:(e.add(t),!0))},[o]),v=e.size===0?`Continue`:`Continue · ${e.size} selected`;return(0,H.jsx)(R,{showCreatureFooter:!1,children:(0,H.jsxs)(`div`,{className:`mx-auto flex w-full max-w-2xl flex-col items-center ${a?`px-8 pt-7 pb-4 electron-prechat-type`:`px-6 pt-12 pb-40`} text-[var(--content-default)]`,children:[(0,H.jsxs)(`div`,{className:`grid w-full items-center grid-cols-[auto_1fr_auto]`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[(0,H.jsx)(`button`,{type:`button`,onClick:n,"aria-label":`Back`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors hover:bg-[var(--surface-base)]`,children:(0,H.jsx)(P,{className:`h-4 w-4`})}),(0,H.jsx)(`h1`,{className:`text-center ${a?`text-title-large`:`text-3xl font-semibold tracking-tight`}`,children:`Have you used any of these?`}),(0,H.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`})]}),(0,H.jsx)(`p`,{className:`${a?`mt-3`:`mt-4`} text-center text-body-medium-lighter text-[var(--content-${a?`secondary`:`tertiary`})]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`If you've built anything with another assistant, I can help you bring it over.`}),(0,H.jsxs)(`div`,{className:`${a?`mt-4`:`mt-8`} grid w-full grid-cols-2 gap-2 sm:grid-cols-3 md:grid-cols-4`,style:{animation:`fadeInUp 0.3s ease-out 0.2s both`},children:[je.map(t=>(0,H.jsx)(Pe,{assistant:t,selected:e.has(t.id),onToggle:()=>ee(t.id)},t.id)),d?null:(0,H.jsx)(Fe,{onClick:()=>f(!0)})]}),d?(0,H.jsx)(c,{padding:`md`,className:`mt-3 w-full border-[var(--primary-base)] bg-[color-mix(in_srgb,var(--primary-base)_8%,transparent)]`,children:(0,H.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,H.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,H.jsx)(h,{className:`h-3.5 w-3.5 text-[var(--content-secondary)]`,"aria-hidden":`true`}),(0,H.jsx)(`span`,{className:`text-body-medium-default prechat-md-regular text-[var(--content-default)]`,children:`Something else`}),(0,H.jsx)(`button`,{type:`button`,onClick:()=>{f(!1),u(``)},"aria-label":`Dismiss custom assistants`,className:`ml-auto inline-flex h-6 w-6 cursor-pointer items-center justify-center rounded-md text-[var(--content-tertiary)] hover:bg-[var(--surface-base)]`,children:(0,H.jsx)(g,{className:`h-3 w-3`,"aria-hidden":`true`})})]}),(0,H.jsx)(l,{"aria-label":`Other assistants`,placeholder:`e.g. Perplexity, Poe, Character.AI...`,value:o,onChange:e=>u(e.target.value),helperText:`Separate multiple assistants with commas`,fullWidth:!0}),_.length>0?(0,H.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:_.map(e=>(0,H.jsx)(`span`,{className:`rounded-full bg-[var(--primary-base)] px-3 py-1 text-label-small-default text-[var(--content-inset)]`,children:e},e))}):null]})}):null,(0,H.jsxs)(`div`,{className:`${a?`mt-6`:`mt-8`} flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,H.jsx)(s,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:e.size===0,onClick:r,className:`${a?`h-9`:`h-11 text-base`}`,children:v}),(0,H.jsx)(s,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:i,className:`${a?`h-9`:`h-11 text-base`}`,children:`I haven't used any`})]})]})})}function Ne(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function G(e){return[...e].filter(e=>e.startsWith(`other:`)).map(e=>e.slice(6)).sort().join(`, `)}function K(e){return[...e].filter(e=>e.startsWith(`other:`)).sort().join(`|`)}function Pe({assistant:e,selected:t,onToggle:n}){return(0,H.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":t,"aria-label":e.label,className:`relative flex h-[88px] w-full cursor-pointer flex-col items-center justify-center gap-1.5 rounded-lg border p-2 transition-colors ${t?`border-[var(--primary-base)] bg-[color-mix(in_srgb,var(--primary-base)_10%,transparent)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] hover:bg-[var(--surface-base)]`}`,children:[(0,H.jsx)(q,{assistant:e,size:32}),(0,H.jsx)(`span`,{className:`line-clamp-2 text-center text-label-medium-default text-[var(--content-default)]`,children:e.label}),t?(0,H.jsx)(`span`,{"aria-hidden":`true`,className:`absolute right-2 top-2 flex h-4 w-4 items-center justify-center rounded-full bg-[var(--primary-base)]`,children:(0,H.jsx)(I,{className:`h-2.5 w-2.5 text-[var(--content-inset)]`,"aria-hidden":`true`})}):null]})}function Fe({onClick:e}){return(0,H.jsxs)(`button`,{type:`button`,onClick:e,"aria-label":`Something else`,className:`flex h-[88px] w-full cursor-pointer flex-col items-center justify-center gap-1.5 rounded-lg border border-[var(--border-element)] bg-[var(--surface-lift)] p-2 transition-colors hover:bg-[var(--surface-base)]`,children:[(0,H.jsx)(`span`,{className:`flex h-8 w-8 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,H.jsx)(O,{className:`h-4 w-4 text-[var(--content-secondary)]`,"aria-hidden":`true`})}),(0,H.jsx)(`span`,{className:`line-clamp-2 text-center text-label-medium-default text-[var(--content-default)]`,children:`Something else`})]})}function q({assistant:e,size:t}){if(e.logoSrc)return e.logoSrcDark?(0,H.jsxs)(H.Fragment,{children:[(0,H.jsx)(`span`,{className:`flex items-center justify-center dark:hidden`,style:{width:t,height:t},"aria-hidden":`true`,children:(0,H.jsx)(`img`,{src:e.logoSrc,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})}),(0,H.jsx)(`span`,{className:`hidden items-center justify-center dark:flex`,style:{width:t,height:t},"aria-hidden":`true`,children:(0,H.jsx)(`img`,{src:e.logoSrcDark,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})})]}):(0,H.jsx)(`span`,{className:`flex items-center justify-center`,style:{width:t,height:t},children:(0,H.jsx)(`img`,{src:e.logoSrc,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})});let n=e.label.slice(0,2).toUpperCase();return(0,H.jsx)(`span`,{className:`flex items-center justify-center rounded-full bg-[var(--surface-base)] text-label-small-default text-[var(--content-default)]`,style:{width:t,height:t},"aria-hidden":`true`,children:n})}function Ie({selectedTasks:e,onChange:t,onBack:n,onContinue:r,onSkip:i}){let a=m(),o=n=>{let r=new Set(e);r.has(n)?r.delete(n):r.add(n),t(r)};return(0,H.jsx)(R,{showCreatureFooter:!1,children:(0,H.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-col items-center ${a?`px-8 pt-7 pb-4 electron-prechat-type`:`px-6 pt-12 pb-40`} text-[var(--content-default)]`,children:[(0,H.jsxs)(`div`,{className:`grid w-full grid-cols-[auto_1fr_auto] items-center`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[(0,H.jsx)(`button`,{type:`button`,onClick:n,"aria-label":`Back`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors hover:bg-[var(--surface-base)]`,children:(0,H.jsx)(P,{className:`h-4 w-4`})}),(0,H.jsx)(`h1`,{className:`text-center ${a?`text-title-large`:`text-3xl font-semibold tracking-tight`}`,children:`What are you working on?`}),(0,H.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`})]}),(0,H.jsx)(`p`,{className:`${a?`mt-2`:`mt-4`} text-center text-body-medium-lighter text-[var(--content-${a?`secondary`:`tertiary`})]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`Pick the one or two you do most — you can select more if it really is all of it.`}),(0,H.jsx)(`div`,{className:`${a?`mt-6`:`mt-8`} flex w-full flex-col ${a?`gap-1`:`gap-2`}`,style:{animation:`fadeInUp 0.3s ease-out 0.2s both`},children:E.map(t=>{let n=L[t.iconKey],r=e.has(t.id);return(0,H.jsxs)(`button`,{type:`button`,onClick:()=>o(t.id),"aria-pressed":r,className:`group flex w-full cursor-pointer items-center ${a?`gap-2 p-3`:`gap-3 px-4 py-3`} rounded-lg border text-left transition-colors ${r?`border-[var(--primary-base)] bg-[var(--primary-base)]/10`:`border-[var(--border-element)] bg-[var(--surface-lift)] hover:bg-[var(--surface-base)]`}`,children:[(0,H.jsx)(`div`,{className:`flex w-6 shrink-0 items-center justify-center text-[var(--content-secondary)]`,children:n?(0,H.jsx)(n,{className:`h-4 w-4`}):null}),(0,H.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,H.jsx)(`div`,{className:`text-body-medium-default prechat-md-regular text-[var(--content-default)]`,children:t.label}),(0,H.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:t.sublabel})]}),(0,H.jsx)(`div`,{"aria-hidden":`true`,className:`flex h-5 w-5 shrink-0 items-center justify-center rounded-md ${r?`bg-[var(--primary-base)]`:`border-[1.5px] border-[var(--border-element)]`}`,children:r?(0,H.jsx)(I,{className:`h-3 w-3 text-[var(--content-inset)]`}):null})]},t.id)})}),(0,H.jsxs)(`div`,{className:`${a?`mt-6`:`mt-8`} flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,H.jsx)(s,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:e.size===0,onClick:r,className:`${a?`h-9`:`h-11 text-base`}`,children:`Continue`}),(0,H.jsx)(s,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:i,className:`${a?`h-9`:`h-11 text-base`}`,children:`I'll set this up later`})]})]})})}var Le=new Set([`gmail`,`google-calendar`,`google-drive`]),Re=[{id:`gmail`,label:`Gmail`,logoSrc:T(`/images/integrations/gmail.svg`)},{id:`outlook`,label:`Outlook`,logoSrc:T(`/images/integrations/outlook.png`)},{id:`google-calendar`,label:`Google Calendar`,logoSrc:T(`/images/integrations/google-calendar.svg`)},{id:`slack`,label:`Slack`,logoSrc:T(`/images/integrations/slack.svg`)},{id:`notion`,label:`Notion`,logoSrc:T(`/images/integrations/notion.svg`)},{id:`linear`,label:`Linear`,logoSrc:T(`/images/integrations/linear-light-logo.svg`)},{id:`jira`,label:`Jira`,logoSrc:T(`/images/integrations/jira.svg`)},{id:`github`,label:`GitHub`,logoSrc:T(`/images/integrations/github.svg`),logoSrcDark:T(`/images/integrations/github-dark.svg`)},{id:`figma`,label:`Figma`,logoSrc:T(`/images/integrations/figma.svg`)},{id:`google-drive`,label:`Google Drive`,logoSrc:T(`/images/integrations/google-drive.svg`)},{id:`excel`,label:`Excel`,logoSrc:T(`/images/integrations/excel.svg`)},{id:`apple-notes`,label:`Apple Notes`,logoSrc:T(`/images/integrations/apple-notes.svg`)}];function J(e){let t=e.map(e=>e.startsWith(`other:`)?e.slice(6):e);return Array.from(new Set(t)).sort()}function ze({selectedTools:e,onChange:t,onBack:n,onContinue:r,onSkip:i}){let a=m(),[o,u]=(0,V.useState)(()=>Ve(e)),[d,f]=(0,V.useState)(()=>o.length>0),p=(0,V.useRef)(Y(e));(0,V.useEffect)(()=>{let t=Y(e);if(t===p.current)return;let n=Ve(e);u(n),f(e=>e||n.length>0),p.current=t},[e]),(0,V.useEffect)(()=>{let n=new Set([...e].filter(e=>!e.startsWith(`other:`))),r=new Set;for(let e of o.split(`,`)){let t=e.trim();t&&(r.has(t)||(r.add(t),n.add(`other:${t}`)))}Be(n,e)||(p.current=Y(n),t(n))},[o]);let ee=n=>{let r=new Set(e);r.has(n)?r.delete(n):r.add(n),t(r)},_=(0,V.useMemo)(()=>{let e=new Set;return o.split(`,`).map(e=>e.trim()).filter(t=>!t||e.has(t)?!1:(e.add(t),!0))},[o]),v=e.size===0?`Continue`:`Continue · ${e.size} selected`;return(0,H.jsx)(R,{showCreatureFooter:!1,children:(0,H.jsxs)(`div`,{className:`mx-auto flex w-full max-w-2xl flex-col items-center ${a?`px-8 pt-7 pb-4 electron-prechat-type`:`px-6 pt-12 pb-40`} text-[var(--content-default)]`,children:[(0,H.jsxs)(`div`,{className:`grid w-full items-center ${n?`grid-cols-[auto_1fr_auto]`:``}`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[n?(0,H.jsx)(`button`,{type:`button`,onClick:n,"aria-label":`Back`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors hover:bg-[var(--surface-base)]`,children:(0,H.jsx)(P,{className:`h-4 w-4`})}):null,(0,H.jsx)(`h1`,{className:`text-center ${a?`text-title-large`:`text-3xl font-semibold tracking-tight`}`,children:`What do you use?`}),n?(0,H.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`}):null]}),(0,H.jsx)(`p`,{className:`${a?`mt-3`:`mt-4`} text-center text-body-medium-lighter text-[var(--content-${a?`secondary`:`tertiary`})]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`This helps me tailor how I assist you. No connections needed — you can set those up later.`}),(0,H.jsxs)(`div`,{className:`grid w-full gap-2 ${a?`mt-4 grid-cols-4`:`mt-8 grid-cols-2 sm:grid-cols-3 md:grid-cols-4`}`,style:{animation:`fadeInUp 0.3s ease-out 0.2s both`},children:[Re.map(t=>(0,H.jsx)(X,{tool:t,selected:e.has(t.id),onToggle:()=>ee(t.id),electron:a},t.id)),d?null:(0,H.jsx)(He,{onClick:()=>f(!0),electron:a})]}),d?(0,H.jsx)(c,{padding:a?`sm`:`md`,className:`mt-3 w-full border-[var(--primary-base)] bg-[color-mix(in_srgb,var(--primary-base)_8%,transparent)]`,children:(0,H.jsxs)(`div`,{className:`flex flex-col ${a?`gap-2`:`gap-3`}`,children:[(0,H.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,H.jsx)(h,{className:`h-3.5 w-3.5 text-[var(--content-secondary)]`,"aria-hidden":`true`}),(0,H.jsx)(`span`,{className:`text-body-medium-default prechat-md-regular text-[var(--content-default)]`,children:`Something else`}),(0,H.jsx)(`button`,{type:`button`,onClick:()=>{f(!1),u(``)},"aria-label":`Dismiss custom tools`,className:`ml-auto inline-flex h-6 w-6 cursor-pointer items-center justify-center rounded-md text-[var(--content-tertiary)] hover:bg-[var(--surface-base)]`,children:(0,H.jsx)(g,{className:`h-3 w-3`,"aria-hidden":`true`})})]}),(0,H.jsx)(l,{"aria-label":`Other tools`,placeholder:`e.g. Trello, Basecamp, Asana...`,value:o,onChange:e=>u(e.target.value),helperText:`Separate multiple tools with commas`,fullWidth:!0}),_.length>0?(0,H.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:_.map(e=>(0,H.jsx)(`span`,{className:`rounded-full bg-[var(--primary-base)] px-3 py-1 text-label-small-default text-[var(--content-inset)]`,children:e},e))}):null]})}):null,(0,H.jsxs)(`div`,{className:`${a?`mt-6`:`mt-8`} flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,H.jsx)(s,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:e.size===0,onClick:r,className:`${a?`h-9`:`h-11 text-base`}`,children:v}),(0,H.jsx)(s,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:i,className:`${a?`h-9`:`h-11 text-base`}`,children:`I'll set this up later`})]})]})})}function Be(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function Ve(e){return[...e].filter(e=>e.startsWith(`other:`)).map(e=>e.slice(6)).sort().join(`, `)}function Y(e){return[...e].filter(e=>e.startsWith(`other:`)).sort().join(`|`)}function X({tool:e,selected:t,onToggle:n,electron:r}){return(0,H.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":t,"aria-label":e.label,className:`relative flex ${r?`h-[72px]`:`h-[88px]`} w-full cursor-pointer flex-col items-center justify-center gap-1.5 rounded-lg border p-2 transition-colors ${t?`border-[var(--primary-base)] bg-[color-mix(in_srgb,var(--primary-base)_10%,transparent)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] hover:bg-[var(--surface-base)]`}`,children:[(0,H.jsx)(Ue,{tool:e,size:32}),(0,H.jsx)(`span`,{className:`${r?`w-full truncate`:`line-clamp-2`} text-center text-label-medium-default text-[var(--content-default)]`,children:e.label}),t?(0,H.jsx)(`span`,{"aria-hidden":`true`,className:`absolute right-2 top-2 flex h-4 w-4 items-center justify-center rounded-full bg-[var(--primary-base)]`,children:(0,H.jsx)(I,{className:`h-2.5 w-2.5 text-[var(--content-inset)]`,"aria-hidden":`true`})}):null]})}function He({onClick:e,electron:t}){return(0,H.jsxs)(`button`,{type:`button`,onClick:e,"aria-label":`Something else`,className:`flex ${t?`min-h-[72px]`:`h-[88px]`} w-full cursor-pointer flex-col items-center justify-center gap-1.5 rounded-lg border border-[var(--border-element)] bg-[var(--surface-lift)] p-2 transition-colors hover:bg-[var(--surface-base)]`,children:[(0,H.jsx)(`span`,{className:`flex h-8 w-8 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,H.jsx)(O,{className:`h-4 w-4 text-[var(--content-secondary)]`,"aria-hidden":`true`})}),(0,H.jsx)(`span`,{className:`line-clamp-2 text-center text-label-medium-default text-[var(--content-default)]`,children:`Something else`})]})}function Ue({tool:e,size:t}){if(e.logoSrc)return e.logoSrcDark?(0,H.jsxs)(H.Fragment,{children:[(0,H.jsx)(`span`,{className:`flex items-center justify-center dark:hidden`,style:{width:t,height:t},"aria-hidden":`true`,children:(0,H.jsx)(`img`,{src:e.logoSrc,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})}),(0,H.jsx)(`span`,{className:`hidden items-center justify-center dark:flex`,style:{width:t,height:t},"aria-hidden":`true`,children:(0,H.jsx)(`img`,{src:e.logoSrcDark,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})})]}):(0,H.jsx)(`span`,{className:`flex items-center justify-center`,style:{width:t,height:t},children:(0,H.jsx)(`img`,{src:e.logoSrc,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})});let n=e.label.slice(0,2).toUpperCase();return(0,H.jsx)(`span`,{className:`flex items-center justify-center rounded-full bg-[var(--surface-base)] text-label-small-default text-[var(--content-default)]`,style:{width:t,height:t},"aria-hidden":`true`,children:n})}function We({selectedGroupId:e,onGroupChange:t,onBack:n,onContinue:r,onSkip:i,currentStep:a,totalSteps:o}){return(0,H.jsx)(R,{showCreatureFooter:!1,children:(0,H.jsxs)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-md flex-col px-6 pb-40 text-[var(--content-default)]`,children:[(0,H.jsxs)(`div`,{className:`grid w-full grid-cols-[auto_1fr_auto] items-center pb-4`,style:{paddingTop:`calc(var(--safe-area-inset-top, env(safe-area-inset-top, 0px)) + 1rem)`,animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[(0,H.jsx)(s,{variant:`ghost`,size:`compact`,iconOnly:(0,H.jsx)(P,{}),onClick:n,"aria-label":`Back`}),(0,H.jsx)(`div`,{className:`flex justify-center`,children:(0,H.jsx)(B,{current:a,total:o})}),(0,H.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`})]}),(0,H.jsxs)(`div`,{className:`flex flex-1 flex-col items-center pt-4`,children:[(0,H.jsx)(`h1`,{className:`w-full text-left text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:`What's my vibe?`}),(0,H.jsx)(`p`,{className:`mt-2 w-full text-left text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`You can change this any time.`}),(0,H.jsx)(`div`,{className:`mt-8 flex w-full flex-col gap-3`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:W.map(n=>{let r=e===n.id;return(0,H.jsxs)(`button`,{type:`button`,onClick:()=>t(r?null:n.id),"aria-pressed":r,className:`flex cursor-pointer items-center justify-between rounded-xl border px-4 py-4 text-left transition-colors ${r?`border-[var(--content-default)] bg-[var(--surface-lift)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] hover:bg-[var(--surface-base)]`}`,children:[(0,H.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:n.descriptor}),(0,H.jsx)(`span`,{className:`flex h-5 w-5 items-center justify-center rounded-full border-2 transition-colors ${r?`border-[var(--content-default)]`:`border-[var(--content-disabled)]`}`,children:r&&(0,H.jsx)(`span`,{className:`h-2.5 w-2.5 rounded-full bg-[var(--content-default)]`})})]},n.id)})})]}),(0,H.jsxs)(`div`,{className:`flex w-full flex-col gap-2 pb-4`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,H.jsx)(s,{variant:`primary`,size:`regular`,fullWidth:!0,onClick:r,className:`h-11 text-base`,children:`Continue`}),(0,H.jsx)(s,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:i,className:`h-11 text-base`,children:`Skip`})]})]})})}function Ge(e){let[t,n]=(0,V.useState)(()=>(e??``).trim()),r=(0,V.useRef)(!1);return(0,V.useEffect)(()=>{if(r.current)return;let t=(e??``).trim();t&&n(e=>e||t)},[e]),{value:t,onChange:(0,V.useCallback)(e=>{r.current=!0,n(e)},[])}}var Ke=[`gmail`,`google-calendar`,`google-drive`],Z=`experiment-activation-flow-2026-06-03`,Q=`BOOTSTRAP-ACTIVATION-RAIL.md`;function $(e,t,n){return t?.initialMessage?t.initialMessage:n?j(e):k}function qe(e){let{mode:t,recipe:n}=e,r=e.connectedScopes!==void 0,i;i=t===`native`?{tools:[],tasks:[],tone:e.tone,googleConnected:!1}:t===`paredDown`?{tools:r?[...Ke]:[],tasks:n?.tasks??[],tone:e.tone,googleConnected:r}:{tools:J([...e.selectedTools]),tasks:[...e.selectedTasks].sort(),tone:e.tone},n&&(i.cohort=n.cohort,i.bootstrapTemplate=n.bootstrapTemplate,i.skills=n.skills),e.activationFlowEnabled&&(i.cohort=Z,i.bootstrapTemplate=Q);let a=e.userName.trim();a&&(i.userName=a);let o=e.assistantName.trim();return o&&(i.assistantName=o),t===`paredDown`?r&&(i.googleScopes=e.connectedScopes):t===`control`&&(r?(i.googleConnected=!0,i.googleScopes=e.connectedScopes):e.googleConnected?(i.googleConnected=!0,i.googleScopes=e.googleScopes):i.googleConnected=!1),t===`control`&&e.selectedPriorAssistants.size>0&&(i.priorAssistants=J([...e.selectedPriorAssistants])),i.initialMessage=$(i,e.activationFlowEnabled?null:n,e.selfIntroGreetingEnabled),i}function Je(e){return!e.localMode||e.platformSession===`present`?!0:e.platformSession===`unknown`&&e.hasCachedPlatformAssistant}function Ye(e){let{paredDown:t}=e;return[{id:`name`,funnelStep:z.nameVibe,enabled:!0},{id:`taskTone`,funnelStep:z.controlWorkType,enabled:!t},{id:`tools`,funnelStep:z.controlTools,enabled:!t},{id:`priorAssistants`,funnelStep:z.controlPriorAssistants,enabled:!t&&e.canOfferPriorAssistants},{id:`google`,funnelStep:t?z.gmailConnect:z.controlGmailConnect,enabled:e.canOfferGoogleStep&&(t||e.hasGoogleTool)},{id:`iosApp`,funnelStep:z.controlGetApp,enabled:!t&&e.showIOSAppStep}].filter(e=>e.enabled).map(({enabled:e,...t})=>t)}function Xe(){return[{id:`nativeName`,funnelStep:null},{id:`nativeVibe`,funnelStep:null}]}var Ze=`1`;function Qe(e){return e===`nativeVibe`||e===Ze?`nativeVibe`:null}function $e(e,t){let n=e.findIndex(e=>e.id===t);return n<0?null:e[n+1]?.id??null}function et(e,t){let n=e.findIndex(e=>e.id===t);return n<=0?null:e[n-1]?.id??null}var tt=3;function nt(){let e=d();return e?.cloud===`vellum`?e.assistantId:f()[0]?.assistantId??null}function rt(){let e=n(),t=S.use.user(),r=x(),a=b(),o=t?.id??null,s=t?.firstName??``,c=t?.lastName??``,l=v(),d=p.use.activeAssistantId(),f=u(),m=ce()&&!fe(),ee=ue.use.stringFlags().preChatOnboardingExperiment20260606??`control`,h=(ue.use.stringFlags().experimentActivationFlow20260603??`control`)===`variant-a`,g=ue.use.selfIntroGreeting(),C=ge(ee),T=ve()??C,te=T===_e.paredDown,E=f?nt():null,D=o?`prechat_native_screen:${o}`:null,[ne,O]=(0,V.useState)(()=>l?`nativeName`:`name`),k=(0,V.useCallback)(e=>{if(D)try{e===null?sessionStorage.removeItem(D):sessionStorage.setItem(D,e)}catch{}},[D]);(0,V.useLayoutEffect)(()=>{if(D)try{let e=Qe(sessionStorage.getItem(D));e&&O(e)}catch{}},[D]),(0,V.useEffect)(()=>{l&&k(ne===`nativeVibe`?`nativeVibe`:null)},[l,ne,k]);let re=S.use.platformSession(),ie=y(re),[j,ae]=(0,V.useState)(()=>new Set),[N,P]=(0,V.useState)(()=>new Set),[F,se]=(0,V.useState)(()=>new Set),{value:I,onChange:le}=Ge(f&&!ie?``:s||c),[L,R]=(0,V.useState)(null),[z]=(0,V.useState)(()=>De()),[B,ye]=(0,V.useState)(``),[xe,U]=(0,V.useState)(!1),[Ce,W]=(0,V.useState)([]),{data:Te}=i({...de(),enabled:!a&&r&&(!f||ie)}),{data:Ee,isLoading:ke}=i({queryKey:[`onboarding-recipe`,o],queryFn:be,enabled:!a&&r&&!l&&!f,staleTime:1/0}),je=Ee??null,Ne=Te?.id??d??E,G=Je({localMode:f,platformSession:re,hasCachedPlatformAssistant:E!==null}),K=G,Pe=G,Fe=(0,V.useCallback)(async()=>{await _.checkAssistant(),e(`${w.assistant}?onboarding=1`,{replace:!0})},[e]),[q,Re]=(0,V.useState)(()=>a||!r?{userId:o,decision:`pending`}:{userId:o,decision:pe()&&oe()?`ok`:`missing`}),J=q.decision;(0,V.useEffect)(()=>{a||!r||q.userId===o&&q.decision!==`pending`||Re({userId:o,decision:pe()&&oe()?`ok`:`missing`})},[q,a,r,o]),(0,V.useEffect)(()=>{if(!a){if(!r){e(w.account.login,{replace:!0});return}if(J===`missing`&&!l){e(w.onboarding.privacy,{replace:!0});return}}},[J,a,r,l,e,Fe,o]);let Be=a||!r||!(l||J===`ok`)||!!ke;function Ve(e,t=T){he(e,{userId:o,variant:me(t)})}let Y=[...j].some(e=>Le.has(e)),X=l?Xe():Ye({paredDown:te,canOfferPriorAssistants:Pe,canOfferGoogleStep:K,hasGoogleTool:Y,showIOSAppStep:m});async function He(e){M(qe({mode:te?`paredDown`:`control`,recipe:je,selectedTools:j,selectedTasks:N,selectedPriorAssistants:e?.selectedPriorAssistants??F,tone:L??je?.tone??`grounded`,userName:I,assistantName:B,selfIntroGreetingEnabled:g,activationFlowEnabled:h,googleConnected:xe,googleScopes:Ce,connectedScopes:e?.connectedScopes}));let t=B.trim();t&&A(t),_.markExpectingFirstMessage(),await Fe()}function Ue(){M(qe({mode:`native`,recipe:null,selectedTools:j,selectedTasks:N,selectedPriorAssistants:F,tone:L??`grounded`,userName:I,assistantName:B,selfIntroGreetingEnabled:g,googleConnected:!1,googleScopes:[]}));let t=B.trim();t&&A(t),k(null),e(w.onboarding.privacy)}let Ke=e=>{l?Ue():He(e)},Z=(e,t)=>{e.funnelStep&&Ve(e.funnelStep);let n=$e(X,e.id);n?O(n):Ke(t)},Q=e=>{let t=et(X,e);t&&O(t)};if(Be)return null;let $=X.find(e=>e.id===ne)??X[0];return $?$.id===`nativeName`?(0,H.jsx)(Ae,{userName:I,assistantName:B,displayedAssistantNames:z,onUserNameChange:le,onAssistantNameChange:ye,onContinue:()=>Z($),onSkip:()=>Z($),currentStep:0,totalSteps:tt}):$.id===`nativeVibe`?(0,H.jsx)(We,{selectedGroupId:L,onGroupChange:R,onBack:()=>Q($.id),onContinue:()=>Z($),onSkip:()=>Z($),currentStep:1,totalSteps:tt}):$.id===`name`?(0,H.jsx)(Oe,{userName:I,assistantName:B,selectedGroupId:L,displayedAssistantNames:z,onUserNameChange:le,onAssistantNameChange:ye,onGroupChange:R,onComplete:()=>Z($),onSkip:()=>Z($)}):$.id===`taskTone`?(0,H.jsx)(Ie,{selectedTasks:N,onChange:P,onBack:()=>Q($.id),onContinue:()=>Z($),onSkip:()=>Z($)}):$.id===`tools`?(0,H.jsx)(ze,{selectedTools:j,onChange:ae,onBack:()=>Q($.id),onContinue:()=>Z($),onSkip:()=>Z($)}):$.id===`priorAssistants`?(0,H.jsx)(Me,{selectedAssistants:F,onChange:se,onBack:()=>Q($.id),onContinue:()=>Z($),onSkip:()=>{let e=new Set;se(e),Z($,{selectedPriorAssistants:e})}}):$.id===`google`?Ne?(0,H.jsx)(we,{assistantId:Ne,assistantName:B,onConnect:e=>{U(!0),W(e),Z($,{connectedScopes:e})},onSkip:()=>Z($),onBack:()=>Q($.id)}):null:$.id===`iosApp`?(0,H.jsx)(Se,{onComplete:()=>Z($)}):null:null}export{rt as PreChatFlow};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{n as t,o as n,r}from"./device-settings-C07QvMzm.js";import{t as i}from"./react-DJZBPgpf.js";import{T as a}from"./portal-container-DIXEBWUe.js";import{n as o}from"./QueryClientProvider-DNHWXaGq.js";import{t as s}from"./useQuery-D2zf6Uhu.js";import{t as c}from"./useMutation-BuofVRHk.js";import{t as l}from"./jsx-runtime-CVSDxk6A.js";import{t as u}from"./button-DdEh-9f_.js";import{t as d}from"./card-CL5iEMJO.js";import{t as f}from"./dropdown-CocFV5yi.js";import{t as p}from"./confirm-dialog-NYG-K9zN.js";import{t as m}from"./notice-CF2pptne.js";import{t as h}from"./tag-Ccr7Quy6.js";import{t as g}from"./input-Cu3PPVCq.js";import{t as _}from"./toggle-CEm3M86o.js";import{n as v}from"./toast-DU1nH33j.js";import{t as y}from"./chevron-right-zTNPbA1m.js";import{t as b}from"./loader-circle-BSAFLoPH.js";import{t as x}from"./pencil-BA9LOIzP.js";import{t as S}from"./x-BDqbYVtS.js";import{C,O as w,S as T,b as E,d as D,r as O,v as k,w as A,x as j,y as ee}from"./auth-store-CiQCAKS1.js";import{t as te}from"./sdk.gen-BO4vbMAj.js";import{$ as M,Gi as N,Ni as P,Q as F,S as I,b as L,d as R,et as z,f as ne,nt as re,p as ie,po as ae,tt as oe,u as B,x as V}from"./index-DGojzQtP.js";import{t as H}from"./use-active-assistant-id-BIhArlF_.js";import{t as U}from"./detail-card-B5j4Rqau.js";var W=e(i(),1),G=l();function K(){let e=z({platformHostedOnly:!0}),t=F(),n=M(),r=o(),{data:i,isLoading:a,isError:l}=s({...oe(),enabled:e===`full`&&t}),u=c({mutationFn:async e=>{let{data:t}=await te({body:{access_consented:e},throwOnError:!0});return t},onSuccess:e=>{r.setQueryData(re(),e),v.success(e?.access_consented?`Admin data access enabled.`:`Admin data access disabled.`)},onError:()=>{v.error(`Failed to update log access consent.`)}});if(e===`gated`)return null;let d=e===`full`&&n,f=i?.access_consented??!1,p=e!==`full`||!t||a||l||u.isPending;return(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,G.jsxs)(`div`,{className:`flex-1`,children:[(0,G.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Allow admin access to assistant data`}),(0,G.jsxs)(`p`,{className:`mt-1 text-body-small-default text-[var(--content-tertiary)]`,children:[`Lets Vellum administrators reach privileged data on your assistant pod for debugging — today this means tailing the daily assistant log at`,` `,(0,G.jsx)(`code`,{className:`rounded bg-[var(--surface-base)] px-1.5 font-mono text-[var(--content-secondary)] dark:bg-[var(--surface-lift)] dark:text-[var(--content-default)]`,children:`/workspace/data/logs/assistant-YYYY-MM-DD.log`}),`. Off by default. Turn on temporarily when asking support to investigate an issue, then turn off when you're done.`]}),e===`full`&&l&&(0,G.jsx)(`p`,{className:`mt-1 text-body-small-default text-[var(--system-negative-strong)]`,children:`Failed to load consent setting.`})]}),(0,G.jsx)(`div`,{className:`flex items-center gap-2`,children:e===`disabled`?null:(0,G.jsxs)(G.Fragment,{children:[(u.isPending||d)&&(0,G.jsx)(b,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,G.jsx)(_,{checked:f,disabled:p,onChange:()=>u.mutate(!f)})]})})]}),e===`disabled`&&(0,G.jsx)(m,{tone:`info`,className:`mt-3`,children:`Log in to the Vellum platform to manage admin data access.`})]})}function se(){let e=w(),[t,n]=(0,W.useState)(()=>j()),[r,i]=(0,W.useState)(!1),[a,o]=(0,W.useState)(`Face ID`),[s,c]=(0,W.useState)(!1);if((0,W.useEffect)(()=>{e&&(E().then(i),ee().then(o))},[e]),!e||!r)return null;let l=async()=>{c(!0);try{if(t)T(!1),await k(),n(!1);else{let e=A();e&&await C(e),T(!0),n(!0)}}finally{c(!1)}};return(0,G.jsx)(U,{title:`Security`,children:(0,G.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,G.jsxs)(`div`,{className:`flex-1`,children:[(0,G.jsxs)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:[`Use `,a,` for sign-in`]}),(0,G.jsxs)(`p`,{className:`mt-1 text-body-small-default text-[var(--content-tertiary)]`,children:[`When your session expires, verify with `,a,` or your device passcode instead of signing in again.`]})]}),(0,G.jsx)(_,{checked:t,onChange:()=>void l(),disabled:s})]})})}function q(){return(0,G.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}var J=B.map(e=>({value:e.id,label:e.label,icon:(0,G.jsx)(e.icon,{className:`h-3.5 w-3.5`})}));function ce(){let e=H(),t=o(),{data:n,isError:r}=s({queryKey:[`thresholds`,e],queryFn:()=>ne(e),staleTime:3e4}),[i,a]=(0,W.useState)(`relaxed`),[c,l]=(0,W.useState)(`conservative`),[u,p]=(0,W.useState)(`strict`),[m,h]=(0,W.useState)(!1),g=(0,W.useRef)(!1),[_,v]=(0,W.useState)(!1),b=(0,W.useRef)(null),x=(0,W.useRef)(null);(0,W.useEffect)(()=>{!n||g.current||(a(R(n.interactive).id),l(R(n.autonomous).id),p(R(n.headless).id),v(!0))},[n]),(0,W.useEffect)(()=>()=>{b.current!==null&&(clearTimeout(b.current),b.current=null,x.current?.(),x.current=null)},[]);let S=(0,W.useCallback)((n,r,i)=>{if(!e||!_)return;let a=B.find(e=>e.id===n)?.riskThreshold,o=B.find(e=>e.id===r)?.riskThreshold,s=B.find(e=>e.id===i)?.riskThreshold;!a||!o||!s||ie(e,{interactive:a,autonomous:o,headless:s}).then(()=>{t.invalidateQueries({queryKey:[`thresholds`,e]})}).catch(()=>{})},[e,_,t]),C=(0,W.useCallback)((e,t,n)=>{b.current!==null&&clearTimeout(b.current),x.current=()=>S(e,t,n),b.current=setTimeout(()=>{x.current?.(),b.current=null,x.current=null},500)},[S]),w=(0,W.useCallback)(e=>{g.current=!0,a(e),C(e,c,u)},[c,u,C]),T=(0,W.useCallback)(e=>{g.current=!0,l(e),C(i,e,u)},[i,u,C]),E=(0,W.useCallback)(e=>{g.current=!0,p(e),C(i,c,e)},[i,c,C]),D=B.find(e=>e.id===i),O=B.find(e=>e.id===c),k=B.find(e=>e.id===u),A=!e||!_;return(0,G.jsxs)(d,{children:[(0,G.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Risk Tolerance`}),(0,G.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Control which actions your assistant can take without asking first. Each action is classified by risk level — your tolerance determines which levels auto-approve.`}),r&&(0,G.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--system-negative-strong)]`,children:`Could not load threshold settings. Check your connection and reload.`}),(0,G.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Conversations`}),(0,G.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:`When you're chatting with your assistant directly.`}),(0,G.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,G.jsx)(f,{value:i,onChange:w,options:J,disabled:A})}),D&&(0,G.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:D.description})]}),(0,G.jsx)(q,{}),(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`button`,{type:`button`,onClick:()=>h(e=>!e),className:`flex items-center gap-1 text-[var(--content-secondary)] hover:text-[var(--content-default)] transition-colors`,"aria-expanded":m,children:[m?(0,G.jsx)(ae,{className:`h-4 w-4`}):(0,G.jsx)(y,{className:`h-4 w-4`}),(0,G.jsx)(`span`,{className:`text-body-medium-default`,children:`Advanced`})]}),(0,G.jsxs)(`div`,{className:m?`mt-4 space-y-4`:`hidden`,children:[(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Background`}),(0,G.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:`When your assistant acts without you — scheduled tasks, background jobs, and external triggers.`}),(0,G.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,G.jsx)(f,{value:c,onChange:T,options:J,disabled:A})}),O&&(0,G.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:O.description})]}),(0,G.jsx)(q,{}),(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Headless`}),(0,G.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:`When triggered externally with no interactive client.`}),(0,G.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,G.jsx)(f,{value:u,onChange:E,options:J,disabled:A})}),k&&(0,G.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:k.description})]})]})]})]})]})}var Y=e(a(),1),le=[`bash`,`file_read`,`file_write`,`file_edit`,`web_fetch`,`skill_load`],ue=[{value:`low`,label:`Low`,description:`Auto-approve without prompting`},{value:`medium`,label:`Medium`,description:`Prompt before executing`},{value:`high`,label:`High`,description:`Always require explicit approval`}];function de({assistantId:e,existingRule:t,onClose:n,onSaved:r}){let i=(0,W.useRef)(null),[a,o]=(0,W.useState)(t.tool),[s,c]=(0,W.useState)(t.pattern),[l,u]=(0,W.useState)(t.risk),[d,p]=(0,W.useState)(t.description??``),[h,_]=(0,W.useState)(!1),[v,y]=(0,W.useState)(null),b=s.trim(),x=b.length>0&&!h,C=(0,W.useCallback)(async n=>{if(n.preventDefault(),!x)return;let i=d.trim()||`${a} — ${b}`;_(!0),y(null);try{await I(e,t.id,{risk:l,description:i}),r()}catch(e){y(e instanceof Error?e.message:`Failed to save trust rule.`)}finally{_(!1)}},[e,x,d,t,r,l,a,b]);return(0,Y.createPortal)((0,G.jsx)(`div`,{ref:i,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`trust-rule-form-title`,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:(0,W.useCallback)(e=>{e.key===`Escape`&&n()},[n]),onClick:(0,W.useCallback)(e=>{e.target===i.current&&n()},[n]),children:(0,G.jsxs)(`div`,{className:`mx-4 flex max-h-[calc(100vh-2rem)] w-full max-w-md flex-col rounded-xl border border-[var(--border-base)] bg-[var(--surface-lift)] shadow-xl`,children:[(0,G.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[var(--border-base)] px-6 py-4`,children:[(0,G.jsx)(`h2`,{id:`trust-rule-form-title`,className:`text-title-medium text-[var(--content-default)]`,children:`Edit Trust Rule`}),(0,G.jsx)(`button`,{type:`button`,onClick:n,"aria-label":`Close`,className:`rounded-lg p-1.5 text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-base)] hover:text-[var(--content-default)]`,children:(0,G.jsx)(S,{className:`h-4 w-4`})})]}),(0,G.jsxs)(`form`,{onSubmit:e=>void C(e),className:`min-h-0 flex-1 space-y-4 overflow-y-auto px-6 py-4`,children:[v&&(0,G.jsx)(m,{tone:`error`,children:v}),(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`label`,{htmlFor:`trust-rule-tool`,className:`block text-body-medium-default text-[var(--content-default)]`,children:`Tool`}),(0,G.jsx)(`div`,{className:`mt-1`,children:(0,G.jsx)(f,{value:a,onChange:o,disabled:!0,options:le.map(e=>({value:e,label:e}))})})]}),(0,G.jsx)(g,{label:`Pattern`,type:`text`,value:s,onChange:e=>c(e.target.value),placeholder:`e.g., git *`,disabled:!0}),(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`span`,{className:`block text-body-medium-default text-[var(--content-default)]`,children:`Risk Level`}),(0,G.jsx)(`div`,{className:`mt-2 flex gap-2`,children:ue.map(e=>(0,G.jsxs)(`button`,{type:`button`,onClick:()=>u(e.value),className:`flex-1 rounded-lg border px-3 py-2 text-left text-body-small-default transition-colors ${l===e.value?e.value===`low`?`border-[var(--system-positive-strong)] bg-[var(--system-positive-weak)] text-[var(--system-positive-strong)]`:e.value===`medium`?`border-[var(--system-warning-strong)] bg-[var(--system-warning-weak)] text-[var(--system-warning-strong)]`:`border-[var(--system-negative-strong)] bg-[var(--system-negative-weak)] text-[var(--system-negative-strong)]`:`border-[var(--border-element)] text-[var(--content-default)] hover:bg-[var(--surface-base)]`}`,children:[(0,G.jsx)(`div`,{children:e.label}),(0,G.jsx)(`div`,{className:`mt-0.5 text-label-medium-default leading-tight opacity-70`,children:e.description})]},e.value))})]}),(0,G.jsx)(g,{label:`Description (optional)`,type:`text`,value:d,onChange:e=>p(e.target.value),placeholder:`${a} — ${b||`pattern`}`}),(0,G.jsxs)(`div`,{className:`flex justify-end gap-2 pt-2`,children:[(0,G.jsx)(`button`,{type:`button`,onClick:n,className:`rounded-lg border border-[var(--border-element)] bg-white px-4 py-2 text-body-medium-default text-[var(--content-default)] transition-colors hover:bg-[var(--surface-base)] dark:border-[var(--border-base)] dark:bg-[var(--surface-lift)] dark:hover:bg-[var(--ghost-hover)]`,children:`Cancel`}),(0,G.jsx)(`button`,{type:`submit`,disabled:!x,className:`rounded-lg bg-[var(--system-positive-strong)] px-4 py-2 text-body-medium-default text-white transition-colors hover:bg-[var(--system-positive-strong)] disabled:cursor-not-allowed disabled:opacity-50`,children:h?`Saving…`:`Save`})]})]})]})}),document.body)}function fe(e){return e.origin===`default`&&!e.userModified}function pe(e,t){let n=new Set,r=[];for(let t of e)n.has(t.id)||(n.add(t.id),r.push(t));for(let e of t)n.has(e.id)||(n.add(e.id),r.push(e));return r.sort((e,t)=>e.tool===t.tool?e.description.localeCompare(t.description):e.tool.localeCompare(t.tool))}function me(e){switch(e){case`low`:return`positive`;case`medium`:return`warning`;case`high`:return`negative`}}function X(e){return e.charAt(0).toUpperCase()+e.slice(1)}function he({assistantId:e,onClose:t}){let n=(0,W.useRef)(null),[r,i]=(0,W.useState)([]),[a,o]=(0,W.useState)(!0),[s,c]=(0,W.useState)(null),[l,d]=(0,W.useState)(null),[f,g]=(0,W.useState)(null),[v,y]=(0,W.useState)(!1),b=(0,W.useCallback)(async t=>{if(t){let[t,n]=await Promise.all([V(e),V(e,{origin:`default`})]);return pe(t,n)}return V(e)},[e]),S=(0,W.useCallback)(async()=>{o(!0);try{i(await b(v)),c(null)}catch(e){c(e instanceof Error?e.message:`Failed to load trust rules.`)}finally{o(!1)}},[b,v]);(0,W.useEffect)(()=>{let e=!1;return(async()=>{o(!0);try{let t=await b(v);e||(i(t),c(null))}catch(t){e||c(t instanceof Error?t.message:`Failed to load trust rules.`)}finally{e||o(!1)}})(),()=>{e=!0}},[b,v]);let C=(0,W.useCallback)(async()=>{if(f)try{await L(e,f.id),S()}catch(e){c(e instanceof Error?e.message:`Failed to delete trust rule.`)}finally{g(null)}},[e,f,S]);return(0,Y.createPortal)((0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{ref:n,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`trust-rules-title`,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:(0,W.useCallback)(e=>{e.key===`Escape`&&t()},[t]),onClick:(0,W.useCallback)(e=>{e.target===n.current&&t()},[t]),children:(0,G.jsxs)(`div`,{className:`mx-4 flex max-h-[80vh] w-full max-w-2xl flex-col rounded-xl border border-[var(--border-base)] bg-[var(--surface-lift)] shadow-xl`,children:[(0,G.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[var(--border-base)] px-6 py-4`,children:[(0,G.jsx)(`h2`,{id:`trust-rules-title`,className:`text-title-medium text-[var(--content-default)]`,children:`Trust Rules`}),(0,G.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,G.jsx)(_,{checked:v,onChange:y,label:`Show all defaults`}),(0,G.jsx)(u,{variant:`outlined`,onClick:t,children:`Done`})]})]}),(0,G.jsxs)(`div`,{className:`flex-1 overflow-y-auto px-6 py-4`,children:[s&&(0,G.jsx)(`div`,{className:`mb-3`,children:(0,G.jsx)(m,{tone:`error`,children:s})}),a?(0,G.jsx)(`div`,{className:`flex h-48 items-center justify-center text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Loading…`}):r.length===0?(0,G.jsxs)(`div`,{className:`flex h-48 flex-col items-center justify-center gap-2 px-6 text-[var(--content-tertiary)]`,children:[(0,G.jsx)(N,{className:`h-8 w-8`}),(0,G.jsx)(`p`,{className:`max-w-xs text-center text-body-medium-lighter`,children:`No trust rules yet. Rules are created when you classify actions from permission prompts.`})]}):(0,G.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)]`,children:r.map(e=>{let t=fe(e);return(0,G.jsxs)(`li`,{className:`flex items-start gap-3 py-3`,children:[(0,G.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e.tool}),(0,G.jsx)(h,{tone:me(e.risk),children:X(e.risk)}),e.origin===`default`&&(0,G.jsx)(h,{tone:`neutral`,children:`Default`}),e.userModified&&(0,G.jsx)(h,{tone:`warning`,children:`Modified`})]}),(0,G.jsx)(`div`,{className:`mt-1 truncate font-mono text-body-small-default text-[var(--content-secondary)]`,children:e.pattern}),e.description&&(0,G.jsx)(`div`,{className:`mt-0.5 truncate text-body-small-default text-[var(--content-tertiary)]`,children:e.description})]}),(0,G.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,G.jsx)(`button`,{type:`button`,"aria-label":`Edit ${e.tool} rule`,onClick:()=>d(e),className:`rounded-lg p-1.5 text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-base)] hover:text-[var(--content-default)]`,children:(0,G.jsx)(x,{className:`h-4 w-4`})}),(!t||e.userModified)&&(0,G.jsx)(`button`,{type:`button`,"aria-label":`Delete ${e.tool} rule`,onClick:()=>g(e),className:`rounded-lg p-1.5 text-[var(--system-negative-strong)] transition-colors hover:bg-[var(--system-negative-weak)]`,children:(0,G.jsx)(P,{className:`h-4 w-4`})})]})]},e.id)})})]})]})}),l&&(0,G.jsx)(de,{assistantId:e,existingRule:l,onClose:()=>d(null),onSaved:()=>{d(null),S()}}),(0,G.jsx)(p,{open:f!==null,title:`Delete Trust Rule?`,message:f?`Remove the ${X(f.risk).toLowerCase()}-risk rule for ${f.tool} matching "${f.pattern}"?`:``,confirmLabel:`Delete`,cancelLabel:`Cancel`,destructive:!0,onConfirm:()=>void C(),onCancel:()=>g(null)})]}),document.body)}function Z(){let e=H(),[t,n]=(0,W.useState)(!1);return(0,G.jsxs)(d,{children:[(0,G.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,G.jsx)(N,{className:`mt-0.5 h-5 w-5 shrink-0 text-[var(--content-secondary)]`}),(0,G.jsxs)(`div`,{className:`flex-1`,children:[(0,G.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Trust Rules`}),(0,G.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Manage per-tool rules that control which actions auto-approve and which require your explicit permission.`})]}),(0,G.jsx)(u,{variant:`outlined`,onClick:()=>n(!0),children:`Manage`})]}),t&&(0,G.jsx)(he,{assistantId:e,onClose:()=>n(!1)})]})}var ge=[{value:`dontRetain`,label:`Don't retain`},{value:`oneHour`,label:`1 hour`},{value:`oneDay`,label:`1 day`},{value:`sevenDays`,label:`7 days`},{value:`thirtyDays`,label:`30 days`},{value:`ninetyDays`,label:`90 days`},{value:`keepForever`,label:`Keep forever`}],_e=`thirtyDays`;function Q({label:e,helperText:t,checked:n,onChange:r}){return(0,G.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,G.jsxs)(`div`,{className:`flex-1`,children:[(0,G.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e}),(0,G.jsx)(`p`,{className:`mt-1 text-body-small-default text-[var(--content-tertiary)]`,children:t})]}),(0,G.jsx)(_,{checked:n,onChange:r,label:e})]})}function $(){return(0,G.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}function ve(){let e=z({platformHostedOnly:!0}),i=O(),[a,o]=(0,W.useState)(()=>t(`shareAnalytics`,!0)),[s,c]=(0,W.useState)(()=>t(`shareDiagnostics`,!0)),[l,u]=(0,W.useState)(()=>r(`llmLogRetention`,_e));return(0,G.jsxs)(`div`,{className:`space-y-4`,children:[(0,G.jsx)(se,{}),(0,G.jsx)(Z,{}),(0,G.jsx)(ce,{}),(0,G.jsx)(U,{title:`Privacy`,children:(0,G.jsxs)(`div`,{className:`space-y-4`,children:[(0,G.jsx)(Q,{label:`Share Analytics`,helperText:`Send anonymous product usage data. Your conversations and personal data are never included.`,checked:a,onChange:()=>{let e=!a;o(e),D(`share_analytics`,e,i)}}),(0,G.jsx)($,{}),(0,G.jsx)(Q,{label:`Share Diagnostics`,helperText:`Send crash reports and performance metrics. Your conversations and personal data are never included.`,checked:s,onChange:()=>{let e=!s;c(e),D(`share_diagnostics`,e,i)}}),(0,G.jsx)($,{}),(0,G.jsx)(K,{}),e!==`gated`&&(0,G.jsx)($,{}),(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`label`,{htmlFor:`llm-log-retention`,className:`block text-body-medium-default text-[var(--content-default)]`,children:`LLM Request Log Retention`}),(0,G.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,G.jsx)(f,{value:l,onChange:e=>{u(e),n(`llmLogRetention`,e)},options:ge})}),(0,G.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:`How long to keep LLM request and response logs on this device. These logs record the prompts and completions sent to model providers and are used for debugging. Shorter retention improves privacy; longer retention helps troubleshoot issues.`})]})]})})]})}export{ve as PrivacyPage};
@@ -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-DdEh-9f_.js";import{t as o}from"./card-CL5iEMJO.js";import{t as s}from"./checkbox-qlcBvCFW.js";import{t as c}from"./toggle-CEm3M86o.js";import{t as l}from"./is-electron-CavSPgmY.js";import{O as u,n as d,r as f,u as p}from"./auth-store-CiQCAKS1.js";import{i as m,r as h}from"./routes-Dk5Qeryt.js";import{Sr as g,Va as _,br as v,pr as y,xr as b,yr as x}from"./index-DGojzQtP.js";import{t as S}from"./onboarding-layout-BIVa2BnX.js";import{a as C,c as w,i as T,n as E,o as D,t as O}from"./step-indicator-dots-C_NCj5FH.js";var k=e(t(),1),A=i();function j({label:e,helperText:t,checked:n,onChange:r}){let i=(0,k.useId)();return(0,A.jsxs)(`div`,{className:`flex items-start gap-4`,children:[(0,A.jsx)(c,{checked:n,onChange:r,id:i}),(0,A.jsxs)(`label`,{htmlFor:i,className:`min-w-0 flex-1 cursor-pointer`,children:[(0,A.jsx)(`span`,{className:`block text-body-medium-default text-[var(--content-default)]`,children:e}),(0,A.jsx)(`span`,{className:`mt-1 block text-body-small-default text-[var(--content-tertiary)]`,children:t})]})]})}var M=`[&_button[data-state=checked]]:bg-[var(--primary-base)] [&_svg]:text-[var(--content-inset)]`;function N(){let e=n(),[t]=r(),i=d.use.user()?.id??null,c=l(),N=u(),P=D(y.use.stringFlags().preChatOnboardingExperiment20260606??`control`),[F,I]=v(),[L,R]=b(),[z,B]=g(),[V,H]=x(),U=f();(0,k.useEffect)(()=>{N||C()},[N]);let W=(0,k.useCallback)(()=>{if(p({userId:i,tos:z,ai:V,shareAnalytics:F,shareDiagnostics:L,hasPlatformSession:U}),!N){let e=w(P);T(E.privacyTos,{userId:i,variant:e})}let n=t.get(`hosting`),r=new URLSearchParams;n&&r.set(`hosting`,n);let a=r.toString();e(`${m.onboarding.hatching}${a?`?${a}`:``}`)},[V,U,N,e,P,t,F,L,z,i]),G=(0,A.jsxs)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:[`I agree to the`,` `,(0,A.jsx)(`a`,{href:h(m.docs.legal.termsOfUse),target:`_blank`,rel:`noreferrer`,className:`underline`,children:`Terms of Service`}),` `,`and`,` `,(0,A.jsx)(`a`,{href:h(m.docs.legal.privacyPolicy),target:`_blank`,rel:`noreferrer`,className:`underline`,children:`Privacy Policy`})]}),K=(0,A.jsxs)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:[`I agree to the`,` `,(0,A.jsx)(`a`,{href:h(m.docs.legal.dataSharing),target:`_blank`,rel:`noreferrer`,className:`underline`,children:`AI Data Sharing Policy`})]});return(0,A.jsx)(S,{children:(0,A.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-col items-center px-6 ${c?`pb-16`:`py-16`} text-[var(--content-default)]`,style:c?{paddingTop:`calc(var(--safe-area-inset-top, env(safe-area-inset-top, 0px)) + 1.5rem)`}:void 0,children:[N&&(0,A.jsx)(`div`,{className:`mb-8 flex w-full justify-center`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:(0,A.jsx)(O,{current:2,total:3})}),(0,A.jsx)(`h1`,{className:`text-3xl font-semibold tracking-tight`,children:`Before You Start`}),(0,A.jsx)(`p`,{className:`mt-4 text-center text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Choose your privacy preferences. You can update these anytime in the Settings.`}),(0,A.jsx)(o,{padding:`md`,className:`mt-8 w-full`,children:(0,A.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,A.jsx)(j,{label:`Share Analytics`,helperText:`Send anonymous product usage data.`,checked:F,onChange:I}),(0,A.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`}),(0,A.jsx)(j,{label:`Share Diagnostics`,helperText:`Send crash reports and performance metrics.`,checked:L,onChange:R}),(0,A.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`}),(0,A.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,A.jsx)(_,{className:`h-4 w-4 shrink-0`}),(0,A.jsx)(`span`,{children:`Your conversations and personal data are never included.`})]})]})}),(0,A.jsx)(`div`,{className:`mt-6 flex w-full items-start`,children:(0,A.jsx)(s,{checked:V,onCheckedChange:e=>H(e===!0),label:K,"aria-label":`I agree to the AI Data Sharing Policy`,className:M})}),(0,A.jsx)(`div`,{className:`mt-4 flex w-full items-start`,children:(0,A.jsx)(s,{checked:z,onCheckedChange:e=>B(e===!0),label:G,"aria-label":`I agree to the Terms of Service and Privacy Policy`,className:M})}),(0,A.jsxs)(`div`,{className:`mt-8 flex w-full flex-col gap-2`,children:[(0,A.jsx)(a,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:!z||!V,onClick:W,className:`h-11 text-base`,children:`Start`}),(0,A.jsx)(a,{variant:`outlined`,size:`regular`,fullWidth:!0,onClick:()=>e(-1),className:`h-11 text-base`,children:`Back`})]})]})})}export{N as PrivacyScreen};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-CZsNGL6n.js";import{t as n}from"./react-DJZBPgpf.js";import{d as r,h as i,t as a}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import{b as s,f as c}from"./resolved-assistants-store-ub66utfl.js";import{I as l,M as u,n as d}from"./auth-store-CiQCAKS1.js";import{c as f}from"./api-DEEx3e9R.js";import{i as p}from"./routes-Dk5Qeryt.js";import{H as m}from"./index-DGojzQtP.js";import{r as h,t as g}from"./account-shell-qQqbocXz.js";import{a as _,i as v}from"./login-flow-BZiMiMrf.js";var y=e(n(),1),b=o();function x(){let[e]=i(),n=r(),o=d.use.refreshSession(),x=e.get(`error`),[S,C]=(0,y.useState)(null),w=(0,y.useRef)(!1),T=e.get(`returnTo`),E=v(e);return(0,y.useEffect)(()=>{w.current||x||(w.current=!0,(async()=>{try{let t=await l(),r=u(t.ok&&!!t.data.user,t.ok?[]:t.flows??[]);switch(r.kind){case`authenticated`:{if(await o(),c())try{let e=await f();if(e.ok&&e.data.length>0&&(await s(e.data),!T)){n(p.assistant,{replace:!0});break}}catch{}let e=p.assistant,{destination:t,requiresFullPageNavigation:r}=_({returnTo:T,fallback:e,authIntent:E});r?window.location.href=t:n(t,{replace:!0});break}case`provider_signup`:{let t=e.get(`returnTo`);n(t?`${p.account.providerSignup}?returnTo=${encodeURIComponent(t)}`:p.account.providerSignup,{replace:!0});break}case`error`:C(r.message);break}}catch(e){t(e,{context:`provider_callback`}),C(`Something went wrong. Please try signing in again.`)}})())},[E,x,o,T,n,e]),x===`signup_closed`?(0,b.jsxs)(g,{children:[(0,b.jsx)(h,{title:`Signups are currently closed`,subtitle:`Join the community to request access or learn when signups reopen.`}),(0,b.jsxs)(`div`,{className:`flex flex-col items-center gap-4`,children:[(0,b.jsx)(`a`,{href:m,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center justify-center gap-2 rounded-lg bg-[var(--primary-base)] px-6 py-3 text-sm font-medium text-white no-underline transition-colors hover:bg-[var(--primary-hover)]`,children:`Join the community`}),(0,b.jsx)(a,{to:p.account.login,className:`text-sm font-medium text-[var(--content-emphasised)] hover:underline`,children:`Back to sign in`})]})]}):x||S?(0,b.jsxs)(g,{children:[(0,b.jsx)(h,{title:`Authentication failed`,subtitle:S??`Something went wrong during social sign-in. Please try again or use a different method.`}),(0,b.jsx)(`div`,{className:`flex flex-col items-center gap-4`,children:(0,b.jsx)(a,{to:p.account.login,className:`inline-flex items-center justify-center gap-2 rounded-lg bg-[var(--primary-base)] px-6 py-3 text-sm font-medium text-white no-underline transition-colors hover:bg-[var(--primary-hover)]`,children:`Back to sign in`})})]}):(0,b.jsx)(g,{children:(0,b.jsx)(h,{title:`Completing sign-in...`,subtitle:`Please wait while we finish authenticating you.`})})}export{x as ProviderCallbackPage};
@@ -1 +0,0 @@
1
- import{t as e}from"./queryOptions-BtNi-_9H.js";import{A as t,Dn as n,Dt as r,En as i,Jn as a,Ln as o,On as s,Tn as c,an as ee,bt as l,cn as u,ct as d,dt as te,j as ne,k as re,kt as ie,ln as f,lt as p,o as m,on as h,ot as g,ut as _,v,wn as y,x as b,y as x}from"./sdk.gen-AJllUeDf.js";var S=(e,t,n,r)=>{let i={_id:e,baseUrl:t?.baseUrl||(t?.client??a).getConfig().baseUrl};return n&&(i._infinite=n),r&&(i.tags=r),t?.body&&(i.body=t.body),t?.headers&&(i.headers=t.headers),t?.path&&(i.path=t.path),t?.query&&(i.query=t.query),[i]},C=e=>S(`appsGet`,e),w=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await m({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:C(t)}),T=e=>S(`channelsAvailableGet`,e),E=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await v({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:T(t)}),D=e=>S(`channelsReadinessGet`,e),O=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await x({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:D(t)}),k=e=>S(`configGet`,e),A=e=>S(`configLlmCallsitesGet`,e),j=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await b({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:A(t)}),M=e=>({mutationFn:async t=>{let{data:n}=await re({...e,...t,throwOnError:!0});return n}}),N=e=>S(`contactsGet`,e),P=n=>e({queryFn:async({queryKey:e,signal:r})=>{let{data:i}=await t({...n,...e[0],signal:r,throwOnError:!0});return i},queryKey:N(n)}),F=e=>({mutationFn:async t=>{let{data:n}=await ne({...e,...t,throwOnError:!0});return n}}),I=e=>S(`documentsGet`,e),L=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await g({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:I(t)}),R=e=>S(`groupsGet`,e),z=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await _({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:R(t)}),B=e=>({mutationFn:async t=>{let{data:n}=await te({...e,...t,throwOnError:!0});return n}}),V=e=>({mutationFn:async t=>{let{data:n}=await d({...e,...t,throwOnError:!0});return n}}),H=e=>({mutationFn:async t=>{let{data:n}=await p({...e,...t,throwOnError:!0});return n}}),U=e=>S(`homeFeedGet`,e),W=e=>S(`homeStateGet`,e),G=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await l({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:W(t)}),K=e=>S(`inferenceProviderconnectionsGet`,e),q=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:i}=await r({...t,...e[0],signal:n,throwOnError:!0});return i},queryKey:K(t)}),J=e=>({mutationFn:async t=>{let{data:n}=await ie({...e,...t,throwOnError:!0});return n}}),Y=e=>S(`pluginsGet`,e),ae=e=>({mutationFn:async t=>{let{data:n}=await ee({...e,...t,throwOnError:!0});return n}}),X=e=>S(`pluginsByNameGet`,e),oe=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await h({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:X(t)}),se=e=>({mutationFn:async t=>{let{data:n}=await u({...e,...t,throwOnError:!0});return n}}),Z=e=>S(`pluginsSearchGet`,e),ce=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await f({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:Z(t)}),Q=e=>S(`skillsGet`,e),le=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await s({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:Q(t)}),ue=e=>({mutationFn:async t=>{let{data:n}=await y({...e,...t,throwOnError:!0});return n}}),de=e=>S(`skillsByIdFilesGet`,e),fe=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await i({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:de(t)}),pe=e=>S(`skillsByIdFilesContentGet`,e),$=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await c({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:pe(t)}),me=e=>S(`skillsCategoriesGet`,e),he=t=>e({queryFn:async({queryKey:e,signal:r})=>{let{data:i}=await n({...t,...e[0],signal:r,throwOnError:!0});return i},queryKey:me(t)}),ge=e=>S(`ttsProvidersGet`,e),_e=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await o({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:ge(t)});export{ce as A,K as C,X as D,oe as E,he as F,le as I,Q as L,ue as M,$ as N,Y as O,fe as P,_e as R,q as S,ae as T,R as _,D as a,G as b,M as c,F as d,L as f,z as g,H as h,O as i,Z as j,se as k,P as l,V as m,C as n,k as o,I as p,E as r,j as s,w as t,N as u,B as v,J as w,W as x,U as y};
@@ -1 +0,0 @@
1
- import{i as e,r as t,s as n}from"./local-settings-lVNyIOJ_.js";import{n as r,t as i}from"./create-selectors-CDULelrw.js";import{t as a}from"./is-electron-CavSPgmY.js";var o=`vellum:gw:token`,s=`vellum:gw:expiresAt`,c=`vellum:gw:tokenSource`,l=`gw:token`,u=`gw:expiresAt`,d=`gw:tokenSource`,f=null,p=0,m=null;function h(){return R()&&Y()!=null}function g(){return h()&&v()!==null}function _(e){return Date.now()/1e3>=e-60}function v(){if(f&&!_(p))return f;f=null;try{let e=localStorage.getItem(o)??localStorage.getItem(l),t=localStorage.getItem(s)??localStorage.getItem(u);if(e&&t){let n=Number(t);if(!_(n))return f=e,p=n,f}}catch{}return null}async function y(e,t){let n=e??`/auth/token`,r={};t&&(r.Authorization=`Bearer ${t}`);let i=await fetch(n,{method:`POST`,headers:r});if(!i.ok)throw Error(`Gateway token request failed: ${i.status}`);let{token:a,expiresAt:l}=await i.json();try{localStorage.setItem(o,a),localStorage.setItem(s,String(l)),localStorage.setItem(c,n)}catch{}return f=a,p=l,m=n,a}async function b(e,t){let n=e??`/auth/token`,r=m??localStorage.getItem(c)??localStorage.getItem(d);return r&&r!==n&&S(),v()||y(e,t)}function x(){let e=Y();if(e)return`${e}/auth/token`}function S(){f=null,p=0,m=null;try{localStorage.removeItem(o),localStorage.removeItem(s),localStorage.removeItem(c),localStorage.removeItem(l),localStorage.removeItem(u),localStorage.removeItem(d)}catch{}}var C={url:null,token:null};function w(e){C=e===null?{url:null,token:null}:{url:e.url,token:e.token}}function ee(){return C.url}function te(){return C.token}var T=i(r(e=>({lockfile:null,setLockfile:t=>e({lockfile:t})})));function E(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function ne(e){if(E(e)&&typeof e.gatewayPort==`number`&&typeof e.daemonPort==`number`)return{gatewayPort:e.gatewayPort,daemonPort:e.daemonPort}}function re(e){if(!E(e)||typeof e.assistantId!=`string`)return null;let t={assistantId:e.assistantId};typeof e.name==`string`&&(t.name=e.name),typeof e.cloud==`string`&&(t.cloud=e.cloud),typeof e.runtimeUrl==`string`&&(t.runtimeUrl=e.runtimeUrl),typeof e.species==`string`&&(t.species=e.species),typeof e.hatchedAt==`string`&&(t.hatchedAt=e.hatchedAt);let n=ne(e.resources);return n&&(t.resources=n),t}function D(e){let t=E(e)?e:{},n=Array.isArray(t.assistants)?t.assistants:[],r=[];for(let e of n){let t=re(e);t&&r.push(t)}return{assistants:r,activeAssistant:typeof t.activeAssistant==`string`?t.activeAssistant:null}}var O=class extends Error{status;constructor(e,t){super(t),this.name=`GuardianTokenError`,this.status=e}};async function ie(e=`vellum`,t){return a()?window.vellum.localMode.hatch(e,t):(await fetch(`/assistant/__local/hatch`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({species:e,remote:t})})).json()}async function k(){if(a())return window.vellum.localMode.readLockfile();let e=await fetch(`/assistant/__local/lockfile`);if(!e.ok)throw Error(`lockfile fetch failed: ${e.status}`);return e.json()}async function A(e,t){return a()?window.vellum.localMode.saveLockfileAssistant(e,t):(await fetch(`/assistant/__local/lockfile`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({assistant:e,activeAssistant:t})})).json()}async function ae(e){return a()?window.vellum.localMode.replacePlatformAssistants(e):(await fetch(`/assistant/__local/lockfile`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({syncPlatform:!0,platformAssistants:e})})).json()}async function oe(e){return a()?window.vellum.localMode.retire(e):(await fetch(`/assistant/__local/retire`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({assistantId:e})})).json()}async function se(e){if(a()){let t=window.vellum.localMode.wake;return t?t(e):{ok:!1,error:`Wake is not supported by this app version`}}return(await fetch(`/assistant/__local/wake`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({assistantId:e})})).json()}async function ce(e){if(a()){let t=await window.vellum.localMode.guardianToken(e);if(!t.ok)throw new O(t.status,t.error);return t.accessToken}let t=await fetch(`/assistant/__local/guardian-token/${encodeURIComponent(e)}`);if(!t.ok){let e=await t.json().catch(()=>({}));throw new O(t.status,e.error??`Guardian token request failed: ${t.status}`)}let{accessToken:n}=await t.json();return n}var j=()=>T.getState().lockfile,M=e=>T.getState().setLockfile(e),N={assistants:[],activeAssistant:null},P=`vellum:local:lockfile`,F=`vellum:local:selectedAssistantId`;function I(){return window.__VELLUM_CONFIG__?.platformUrl||window.location.origin}var L=e=>{M(e),n(P,JSON.stringify(e))},le=new Set([`1`,`true`,`yes`]);function R(){return!le.has(`false`)}async function z(){try{let e=await k();return L(e),e}catch{let e={...N};return M(e),e}}function B(){let e=j();if(e)return e;let n=t(P,``);if(n)try{let e=D(JSON.parse(n));return M(e),e}catch{}let r={...N};return M(r),r}async function V(e){let t=await A(e,e.assistantId);t.ok&&L(t.lockfile)}async function H(e){let t=B().assistants.find(t=>t.assistantId===e);if(!t)return;let n=await A({...t},e);n.ok&&L(n.lockfile)}async function U(e){let t=await ae(e.filter(e=>!e.is_local).map(e=>({assistantId:e.id,cloud:`vellum`,runtimeUrl:I(),hatchedAt:e.created})));t.ok&&L(t.lockfile)}async function ue(e){let t=await oe(e);return t.ok&&(J(),S(),w(null),await z()),t}function de(){return B().assistants.length>0}function W(e){return e.cloud!==`vellum`&&e.resources?.gatewayPort!=null}function G(e){return e.cloud===`vellum`}function fe(){return B().assistants.filter(W)}function pe(){return B().assistants.filter(G)}function K(){let e=B(),t=e.assistants.find(t=>t.assistantId===e.activeAssistant);if(t)return t;if(e.assistants.length===1)return e.assistants[0]}function q(){let e=t(F,``);if(e){let t=B().assistants.find(t=>t.assistantId===e);if(t)return t}return K()}function me(e){n(F,e)}function J(){e(F)}function he(e){return`/assistant/__gateway/${e}`}function Y(){if(!R())return;let e=q();if(!(!e||!W(e)))return he(e.resources.gatewayPort)}async function X(){let e=x();if(!e)return;let t=q();await b(e,t?await ce(t.assistantId):void 0);let n=Y();n&&w({url:`${window.location.origin}${n}`,token:v()})}function ge(e){return e instanceof O?e.status!==403:!0}async function _e(){try{await X();return}catch(e){if(!ge(e))throw e;let t=q()?.assistantId;if(!t||!(await se(t)).ok)throw e;await X()}}var ve=`vellum:currentAssistantId:`;function Z(e){return`${ve}${e}`}function Q(){if(typeof window>`u`)return{};let e={};try{for(let t=0;t<window.localStorage.length;t++){let n=window.localStorage.key(t);if(n&&n.startsWith(`vellum:currentAssistantId:`)){let t=n.slice(26),r=window.localStorage.getItem(n);r!=null&&(e[t]=r)}}}catch{}return e}function ye(e){if(!(typeof window>`u`))try{for(let[t,n]of Object.entries(e)){let e=Z(t);window.localStorage.getItem(e)!==n&&window.localStorage.setItem(e,n)}}catch{}}function be(e){if(!(typeof window>`u`))try{window.localStorage.removeItem(Z(e))}catch{}}var $=r(e=>({assistants:[],activeAssistantId:null,selectedPlatformAssistantByOrg:Q(),setFromLockfile:t=>e({assistants:t.assistants.map(e=>({id:e.assistantId,name:e.name,hatchedAt:e.hatchedAt,isLocal:W(e),isPlatformHosted:G(e)}))}),setFromApi:t=>e({assistants:t.map(e=>({id:e.id,name:e.name,hatchedAt:e.created,isLocal:e.is_local,isPlatformHosted:!e.is_local}))}),remove:t=>e(e=>({assistants:e.assistants.filter(e=>e.id!==t)})),clear:()=>e({assistants:[]}),setActiveAssistantId:t=>e({activeAssistantId:t}),setSelectedPlatformAssistant:(t,n)=>{n??be(t),e(e=>{let r={...e.selectedPlatformAssistantByOrg};return n==null?delete r[t]:r[t]=n,ye(r),{selectedPlatformAssistantByOrg:r}})}})),xe=i($);R()&&T.subscribe(e=>{e.lockfile&&$.getState().setFromLockfile(e.lockfile)}),typeof window<`u`&&window.addEventListener(`storage`,e=>{(e.key===null||e.key.startsWith(`vellum:currentAssistantId:`))&&$.setState({selectedPlatformAssistantByOrg:Q()})});export{g as A,ee as C,v as D,b as E,x as O,te as S,S as T,V as _,Y as a,U as b,I as c,W as d,R as f,ue as g,_e as h,fe as i,h as k,q as l,X as m,J as n,B as o,z as p,K as r,pe as s,xe as t,de as u,H as v,w,ie as x,me as y};
@@ -1 +0,0 @@
1
- var e=e=>e,t=(e,t)=>`${e}/${t}`,n=e(`/assistant/logs/usage`),r={assistant:e(`/assistant`),about:e(`/assistant/about`),bundleConfirm:e(`/assistant/bundle/confirm`),quickInput:e(`/assistant/quick-input`),conversations:e(`/assistant/conversations`),conversation:n=>t(e(`/assistant/conversations`),n),inspect:n=>`${t(e(`/assistant/conversations`),n)}/inspect`,logs:{root:e(`/assistant/logs`),trace:e(`/assistant/logs/trace`),usage:n,usageForSchedule:e=>`${n}?${new URLSearchParams({range:`7d`,groupBy:`schedule`,scheduleId:e}).toString()}`,emails:e(`/assistant/logs/emails`),systemEvents:e(`/assistant/logs/system-events`)},account:{root:e(`/account`),login:e(`/account/login`),signup:e(`/account/signup`),providerSignup:e(`/account/provider/signup`),providerCallback:e(`/account/provider/callback`),oauth:{popupComplete:e(`/account/oauth/popup-complete`),complete:e(`/account/oauth/complete`),desktopComplete:e(`/account/oauth/desktop-complete`)}},welcome:e(`/assistant/welcome`),selectAssistant:e(`/assistant/select-assistant`),reviewTerms:e(`/assistant/review-terms`),onboarding:{hosting:e(`/assistant/onboarding/hosting`),apiKey:e(`/assistant/onboarding/api-key`),privacy:e(`/assistant/onboarding/privacy`),prechat:e(`/assistant/onboarding/prechat`),hatching:e(`/assistant/onboarding/hatching`)},home:e(`/assistant/home`),identity:e(`/assistant/identity`),plugins:e(`/assistant/plugins`),plugin:n=>t(e(`/assistant/plugins`),n),skills:e(`/assistant/skills`),workspace:e(`/assistant/workspace`),library:{root:e(`/assistant/library`),app:n=>t(e(`/assistant/library`),n)},document:n=>t(e(`/assistant/documents`),n),connect:e(`/assistant/connect`),contacts:{root:e(`/assistant/contacts`)},settings:{root:e(`/assistant/settings`),general:e(`/assistant/settings/general`),ai:e(`/assistant/settings/ai`),integrations:e(`/assistant/settings/integrations`),schedules:e(`/assistant/settings/schedules`),schedule:n=>t(e(`/assistant/settings/schedules`),n),notifications:e(`/assistant/settings/notifications`),keyboardShortcuts:e(`/assistant/settings/keyboard-shortcuts`),sounds:e(`/assistant/settings/sounds`),voice:e(`/assistant/settings/voice`),devices:e(`/assistant/settings/devices`),privacy:e(`/assistant/settings/privacy`),archive:e(`/assistant/settings/archive`),billing:e(`/assistant/settings/billing`),community:e(`/assistant/settings/community`),debug:e(`/assistant/settings/debug`),developer:e(`/assistant/settings/developer`),advanced:e(`/assistant/settings/advanced`),dangerZone:e(`/assistant/settings/danger-zone`),systemEvents:e(`/assistant/settings/system-events`),upgradeCancel:e(`/assistant/settings/billing/upgrade/cancel`),upgradeSuccess:e(`/assistant/settings/billing/upgrade/success`)},admin:{root:e(`/admin`)},docs:{hostingOptions:e(`/docs/hosting-options`),legal:{privacyPolicy:e(`/docs/privacy-policy`),termsOfUse:e(`/docs/vellum-terms-of-use`),dataSharing:e(`/docs/data-sharing`),prohibitedUse:e(`/docs/prohibited-use`),privacyAndData:e(`/docs/trust-security/privacy-and-data`)}}},i=`vellum.ai`;function a(e){return o(e)}function o(e){return`https://${i}${e}`}function s(){return r.admin.root}export{r as i,o as n,a as r,s as t};
@@ -1 +0,0 @@
1
- import{gn as e}from"./sdk.gen-AJllUeDf.js";import{n as t,r as n,t as r}from"./api-errors-ChauV4ed.js";async function i(i){let{data:a,error:o,response:s}=await e({path:{assistant_id:i},throwOnError:!1});if(t(s,o,`Failed to load schedules.`),!s.ok)throw new r(s.status,n(o,s,`Failed to load schedules.`));return a?.schedules??[]}export{i as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-CZsNGL6n.js";import{t as n}from"./react-DJZBPgpf.js";import{d as r,p as i}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as a}from"./QueryClientProvider-DNHWXaGq.js";import{t as o}from"./useQuery-D2zf6Uhu.js";import{t as s}from"./jsx-runtime-CVSDxk6A.js";import{t as c}from"./button-DdEh-9f_.js";import{t as l}from"./notice-CF2pptne.js";import{t as u}from"./tag-Ccr7Quy6.js";import{t as d}from"./panel-item-FzMfzMJA.js";import{n as f,t as p}from"./input-Cu3PPVCq.js";import{t as m}from"./toggle-CEm3M86o.js";import{t as h}from"./modal-BYMhDpQo.js";import{n as g}from"./toast-DU1nH33j.js";import{t as _}from"./calendar-CP_Q3Aw6.js";import{t as v}from"./chevron-right-zTNPbA1m.js";import{t as y}from"./loader-circle-BSAFLoPH.js";import{D as b,E as x,O as S,T as C,_n as w,dn as T,fn as E,gt as D,hn as O,ht as k,mn as A,mt as j,pn as M,pt as N,vn as P}from"./sdk.gen-AJllUeDf.js";import{n as F,r as I,t as L}from"./api-errors-ChauV4ed.js";import{i as R}from"./routes-Dk5Qeryt.js";import{c as ee,l as te,s as ne}from"./query-tags-Cez88bzY.js";import{t as re}from"./assistant-feature-flag-store-0382ImYF.js";import{t as ie}from"./effective-timezone-CKEcAtDc.js";import{Ni as ae,Pn as oe,bo as z,ha as se,ho as ce,ia as B,na as V}from"./index-DGojzQtP.js";import{t as le}from"./use-active-assistant-id-BIhArlF_.js";import{t as H}from"./detail-card-B5j4Rqau.js";import{n as ue}from"./usage-window-D5EMg2nb.js";import{t as de}from"./schedules-BJAra2Ob.js";var U=e(n(),1);async function fe(e,t){let{error:n,response:r}=await w({path:{assistant_id:e},body:t,throwOnError:!1});if(F(r,n,`Failed to create schedule.`),!r.ok)throw new L(r.status,I(n,r,`Failed to create schedule.`))}async function pe(e,t,n){let{error:r,response:i}=await E({path:{assistant_id:e,id:t},body:n,throwOnError:!1});if(F(i,r,`Failed to update schedule.`),!i.ok)throw new L(i.status,I(r,i,`Failed to update schedule.`))}async function me(e){return de(e)}async function he(e,t,n=10){let{data:r,error:i,response:a}=await A({path:{assistant_id:e,id:t},query:{limit:n},throwOnError:!1});if(F(a,i,`Failed to load schedule runs.`),!a.ok)throw new L(a.status,I(i,a,`Failed to load schedule runs.`));return r?.runs??[]}async function ge(e,t){let{data:n,error:r,response:i}=await P({path:{assistant_id:e},query:{from:t.from,to:t.to},throwOnError:!1});if(F(i,r,`Failed to load schedule usage.`),!i.ok)throw new L(i.status,I(r,i,`Failed to load schedule usage.`));return n?.summaries??[]}async function _e(e,t,n){let{error:r,response:i}=await O({path:{assistant_id:e,id:t},body:{enabled:n},throwOnError:!1});if(F(i,r,`Failed to toggle schedule.`),!i.ok)throw new L(i.status,I(r,i,`Failed to toggle schedule.`))}async function ve(e,t){let{error:n,response:r}=await T({path:{assistant_id:e,id:t},throwOnError:!1});if(F(r,n,`Failed to delete schedule.`),!r.ok&&r.status!==204)throw new L(r.status,I(n,r,`Failed to delete schedule.`))}async function ye(e,t){let{error:n,response:r}=await M({path:{assistant_id:e,id:t},throwOnError:!1});if(F(r,n,`Failed to run schedule.`),!r.ok)throw new L(r.status,I(n,r,`Failed to run schedule.`))}async function W(e,t=10){let{data:n,error:r,response:i}=await D({path:{assistant_id:e},query:{limit:t},throwOnError:!1});if(F(i,r,`Failed to load heartbeat runs.`),!i.ok)throw new L(i.status,I(r,i,`Failed to load heartbeat runs.`));return(n?.runs??[]).map(e=>({id:e.id,jobId:`heartbeat`,status:e.status,startedAt:e.startedAt??e.scheduledFor,finishedAt:e.finishedAt,durationMs:e.durationMs,output:e.skipReason?`Skipped: ${e.skipReason}`:null,error:e.error,conversationId:e.conversationId,conversationExists:e.conversationExists,conversationArchivedAt:e.conversationArchivedAt,estimatedCostUsd:e.estimatedCostUsd,createdAt:e.createdAt}))}async function G(e,t=10){let{data:n,error:r,response:i}=await S({path:{assistant_id:e},query:{limit:t},throwOnError:!1});if(F(i,r,`Failed to load consolidation runs.`),!i.ok)throw new L(i.status,I(r,i,`Failed to load consolidation runs.`));return(n?.runs??[]).map(e=>({id:e.id,jobId:`consolidation`,status:e.status,startedAt:e.startedAt??e.scheduledFor,finishedAt:e.finishedAt,durationMs:e.durationMs,output:null,error:e.error,conversationId:e.conversationId,conversationExists:e.conversationExists,conversationArchivedAt:e.conversationArchivedAt,estimatedCostUsd:e.estimatedCostUsd,createdAt:e.createdAt}))}async function be(e){let{data:t,error:n,response:r}=await N({path:{assistant_id:e},throwOnError:!1});if(F(r,n,`Failed to load heartbeat config.`),!r.ok||!t)throw new L(r.status,I(n,r,`Failed to load heartbeat config.`));return t}async function K(e,t){let{data:n,error:r,response:i}=await e();if(F(i,r,t),!i.ok||!n)throw new L(i.status,I(r,i,t));return n}async function xe(e,t){return K(()=>j({path:{assistant_id:e},body:t,throwOnError:!1}),`Failed to update heartbeat config.`)}async function Se(e){let{data:t,error:n,response:r}=await k({path:{assistant_id:e},throwOnError:!1});if(F(r,n,`Failed to run heartbeat.`),!r.ok||!t)throw new L(r.status,I(n,r,`Failed to run heartbeat.`));return t}async function Ce(e){let{data:t,error:n,response:r}=await C({path:{assistant_id:e},throwOnError:!1});if(F(r,n,`Failed to load consolidation config.`),!r.ok||!t)throw new L(r.status,I(n,r,`Failed to load consolidation config.`));return t}async function we(e,t){return K(()=>x({path:{assistant_id:e},body:t,throwOnError:!1}),`Failed to update consolidation config.`)}async function Te(e){let{data:t,error:n,response:r}=await b({path:{assistant_id:e},throwOnError:!1});if(F(r,n,`Failed to run consolidation.`),!r.ok||!t)throw new L(r.status,I(n,r,`Failed to run consolidation.`));return t}var q=s(),Ee=[{label:`Every hour`,expression:`0 * * * *`},{label:`Every day at 9am`,expression:`0 9 * * *`},{label:`Every weekday at 9am`,expression:`0 9 * * 1-5`},{label:`Every Monday at 9am`,expression:`0 9 * * 1`},{label:`Every 1st of month, 9am`,expression:`0 9 1 * *`}];function J({isOpen:e,assistantId:t,onClose:n,onCreated:r}){return(0,q.jsx)(h.Root,{open:e,onOpenChange:e=>{e||n()},children:e?(0,q.jsx)(De,{assistantId:t,onClose:n,onCreated:r}):null})}function De({assistantId:e,onClose:t,onCreated:n}){let[r,i]=(0,U.useState)(``),[a,o]=(0,U.useState)(``),[s,l]=(0,U.useState)(``),[u,d]=(0,U.useState)(``),[m,g]=(0,U.useState)(!1),[_,v]=(0,U.useState)(null),y=r.trim(),b=a.trim(),x=s.trim(),S=y.length>0&&b.length>0&&x.length>0&&!m;return(0,q.jsxs)(h.Content,{size:`md`,children:[(0,q.jsxs)(h.Header,{children:[(0,q.jsx)(h.Title,{children:`Create schedule`}),(0,q.jsx)(h.Description,{children:`Schedule a recurring instruction for your assistant. Runs in execute mode — the message is delivered to the assistant on each fire.`})]}),(0,q.jsxs)(`form`,{onSubmit:async t=>{if(t.preventDefault(),S){g(!0),v(null);try{let t={name:y,expression:b,message:x},r=u.trim();r&&(t.timezone=r),await fe(e,t),g(!1),n()}catch(e){v(e instanceof Error?e.message:`Failed to create schedule.`),g(!1)}}},children:[(0,q.jsx)(h.Body,{children:(0,q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,q.jsx)(p,{label:`Name`,placeholder:`Morning briefing`,value:r,onChange:e=>i(e.target.value),required:!0,autoFocus:!0,fullWidth:!0}),(0,q.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,q.jsx)(p,{label:`Cron expression`,placeholder:`0 9 * * *`,value:a,onChange:e=>o(e.target.value),required:!0,fullWidth:!0,helperText:`Standard 5-field cron (minute hour day month weekday). RRULE expressions are also accepted.`}),(0,q.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:Ee.map(e=>(0,q.jsx)(c,{variant:`outlined`,size:`compact`,type:`button`,onClick:()=>o(e.expression),children:e.label},e.expression))})]}),(0,q.jsx)(p,{label:`Timezone (optional)`,placeholder:`America/New_York`,value:u,onChange:e=>d(e.target.value),fullWidth:!0,helperText:`IANA timezone name. Leave blank to use UTC.`}),(0,q.jsx)(f,{label:`Message`,placeholder:`What should the assistant do on each fire?`,value:s,onChange:e=>l(e.target.value),required:!0,fullWidth:!0,rows:4}),_?(0,q.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:_}):null]})}),(0,q.jsxs)(h.Footer,{children:[(0,q.jsx)(c,{variant:`outlined`,onClick:t,type:`button`,children:`Cancel`}),(0,q.jsx)(c,{variant:`primary`,type:`submit`,disabled:!S,children:m?`Creating…`:`Create schedule`})]})]})]})}function Oe(e=ie(),t=Date.now()){return ue(`7d`,e,t)}function Y(e){return e?new Date(e).toLocaleString(void 0,{month:`short`,day:`numeric`,hour:`numeric`,minute:`2-digit`,hour12:!0}):`—`}function ke(e){return e==null?`—`:e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}var Ae=new Intl.NumberFormat(void 0,{style:`currency`,currency:`USD`,minimumFractionDigits:2,maximumFractionDigits:4});function X(e){return e==null||!Number.isFinite(e)?`—`:Ae.format(e)}function je(e){return`${e.toLocaleString()} ${e===1?`run`:`runs`}`}function Me(e){let t=Math.round(e/6e4);return t>=60&&t%60==0?`Every ${t/60} hr`:`Every ${t} min`}function Ne(e){return!!e.createdFromConversationId&&e.createdFromConversationExists===!0&&e.createdFromConversationArchivedAt==null}function Pe(e){return!!e.conversationId&&e.conversationExists===!0&&e.conversationArchivedAt==null}function Fe(e){return Ne(e)?e.createdFromConversationId??null:null}function Ie(e){return Pe(e)?e.conversationId??null:null}function Le(e){return typeof e==`string`&&e.length>0}var Z={heartbeat:`system-heartbeat`,consolidation:`system-consolidation`};function Re(e,t){return e&&t}function ze(e){switch(e){case Z.heartbeat:return`heartbeat`;case Z.consolidation:return`consolidation`;default:return null}}function Be(e){if(e.cronExpression)return e.timezone?`Cron: ${e.cronExpression} (${e.timezone})`:`Cron: ${e.cronExpression}`;let t=Me(e.intervalMs);return e.activeHoursStart!=null&&e.activeHoursEnd!=null&&(t+=` (${e.activeHoursStart}:00–${e.activeHoursEnd}:00)`),t}function Ve(e){return Me(e.intervalMs)}var He={execute:`positive`,notify:`warning`,script:`neutral`},Ue=1800;function We(e){let t=[],n=[];for(let r of e)r.isOneShot?n.push(r):t.push(r);return t.sort((e,t)=>e.enabled===t.enabled?(e.nextRunAt??1/0)-(t.nextRunAt??1/0):e.enabled?-1:1),n.sort((e,t)=>{let n=e.lastRunAt??e.nextRunAt??0;return(t.lastRunAt??t.nextRunAt??0)-n}),{recurring:t,oneTime:n}}function Ge(e,t,n=!0){return{queryKey:ee(e,t),queryFn:()=>e?ge(e,Oe(t)):Promise.resolve([]),enabled:n,staleTime:1e4}}function Ke(e){return{scheduleId:e,runCount:0,totalEstimatedCostUsd:0,eventCount:0}}function qe(e,t,n){let r=(t??[]).filter(e=>{let t=e.startedAt??e.createdAt;return t>=n.from&&t<=n.to});return{scheduleId:e,runCount:r.length,totalEstimatedCostUsd:r.reduce((e,t)=>{let n=t.estimatedCostUsd;return typeof n==`number`&&Number.isFinite(n)?e+n:e},0),eventCount:0}}function Q({status:e}){return(0,q.jsx)(`span`,{className:`inline-block h-2 w-2 rounded-full`,style:{backgroundColor:e===`ok`||e===`completed`?`var(--system-positive-strong)`:e===`error`||e===`failed`?`var(--system-negative-strong)`:`var(--content-tertiary)`},"aria-label":e??`unknown`})}function Je({scheduleName:e,usage:t,onOpenUsage:n}){if(t.status===`loading`)return(0,q.jsxs)(`div`,{"aria-label":`Loading schedule usage`,className:`flex w-[136px] shrink-0 items-center justify-end gap-3`,children:[(0,q.jsx)(`span`,{className:`h-8 w-14 animate-pulse rounded bg-[var(--surface-muted)]`}),(0,q.jsx)(`span`,{className:`h-8 w-14 animate-pulse rounded bg-[var(--surface-muted)]`})]});let r=t.status===`error`,i=r?`--`:X(t.summary.totalEstimatedCostUsd),a=r?`--`:je(t.summary.runCount);return(0,q.jsxs)(`div`,{className:`flex w-[136px] shrink-0 items-center justify-end gap-3 text-right`,children:[n?(0,q.jsxs)(`button`,{type:`button`,onClick:n,"aria-label":`View usage for ${e}`,className:`min-w-[54px] cursor-pointer rounded px-1 py-0.5 text-right transition-colors hover:bg-[var(--surface-hover)]`,children:[(0,q.jsx)(`span`,{className:`block text-label-small-default text-[var(--content-tertiary)]`,children:`Cost`}),(0,q.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-default)]`,children:i})]}):(0,q.jsxs)(`span`,{"aria-label":`Cost for ${e} in the last 7 days: ${i}`,className:`block min-w-[54px] px-1 py-0.5`,children:[(0,q.jsx)(`span`,{className:`block text-label-small-default text-[var(--content-tertiary)]`,children:`Cost`}),(0,q.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-default)]`,children:i})]}),(0,q.jsxs)(`span`,{"aria-label":`Runs for ${e} in the last 7 days: ${a}`,className:`block min-w-[54px] px-1 py-0.5`,children:[(0,q.jsx)(`span`,{className:`block text-label-small-default text-[var(--content-tertiary)]`,children:`Runs`}),(0,q.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-default)]`,children:a})]})]})}function $({runs:e,isLoading:t,emptyMessage:n=`No runs yet.`}){let i=r(),[a,o]=(0,U.useState)(null);return(0,q.jsx)(H,{title:`Recent runs`,children:t?(0,q.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,q.jsx)(y,{className:`h-5 w-5 animate-spin text-stone-400`})}):!e||e.length===0?(0,q.jsx)(`p`,{className:`py-4 text-center text-body-medium-lighter text-[var(--content-tertiary)] italic`,children:n}):(0,q.jsx)(`div`,{className:`divide-y divide-[var(--border-base)]`,children:e.map((e,t)=>{let n=Ie(e),r=Le(e.output),s=Le(e.error),c=!n&&(r||s),l=a===e.id,u=`schedule-run-details-${t}`;return(0,q.jsxs)(`div`,{children:[(0,q.jsx)(d,{label:(0,q.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[(0,q.jsx)(Q,{status:e.status}),(0,q.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,q.jsx)(`span`,{className:`block text-body-medium-lighter text-[var(--content-default)]`,children:Y(e.startedAt)}),(0,q.jsxs)(`span`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:[ke(e.durationMs),` ·`,` `,X(e.estimatedCostUsd),e.status===`error`&&e.error&&(0,q.jsxs)(`span`,{className:`ml-2 text-[var(--system-negative-strong)]`,children:[e.error.slice(0,80),e.error.length>80?`…`:``]})]})]}),n||c?(0,q.jsx)(v,{className:`h-4 w-4 shrink-0 text-[var(--content-tertiary)] transition-transform ${l?`rotate-90`:``}`}):null]}),onSelect:n?()=>i(R.conversation(n)):c?()=>o(l?null:e.id):void 0,"aria-label":`Run at ${Y(e.startedAt)}`,"aria-expanded":c?l:void 0,"aria-controls":c?u:void 0,className:`h-auto py-2.5 gap-3 -mx-2 px-2`}),c&&l?(0,q.jsx)(`div`,{id:u,className:`px-2 pb-3`,children:(0,q.jsxs)(`div`,{className:`space-y-3 rounded-md border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3`,children:[r?(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`div`,{className:`mb-1 text-body-small-default text-[var(--content-secondary)]`,children:`Output`}),(0,q.jsx)(`pre`,{className:`max-h-64 overflow-auto whitespace-pre-wrap break-words text-body-small-default font-mono text-[var(--content-default)]`,children:e.output})]}):null,s?(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`div`,{className:`mb-1 text-body-small-default text-[var(--content-secondary)]`,children:`Error`}),(0,q.jsx)(`pre`,{className:`max-h-64 overflow-auto whitespace-pre-wrap break-words text-body-small-default font-mono text-[var(--system-negative-strong)]`,children:e.error})]}):null]})}):null]},e.id)})})})}function Ye({schedule:e,assistantId:n,onUpdated:r}){let i=Math.round((e.timeoutMs??6e4)/1e3),[a,o]=(0,U.useState)(!1),[s,l]=(0,U.useState)(String(i)),[u,d]=(0,U.useState)(!1),f=()=>{l(String(i)),o(!0)},m=async i=>{d(!0);try{await pe(n,e.id,{timeoutMs:i}),o(!1),r()}catch(e){t(e,{context:`schedule_update_timeout`}),g.error(`Failed to update timeout.`)}finally{d(!1)}};return a?(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Timeout`}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(p,{type:`number`,min:1,max:Ue,value:s,onChange:e=>l(e.target.value),className:`w-24`,"aria-label":`Timeout in seconds`}),(0,q.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:`sec`}),(0,q.jsx)(c,{size:`compact`,onClick:()=>{let e=Number(s);if(!Number.isInteger(e)||e<1||e>1800){g.error(`Timeout must be a whole number between 1 and ${Ue} seconds.`);return}m(e*1e3)},disabled:u,children:u?`Saving…`:`Save`}),(0,q.jsx)(c,{variant:`outlined`,size:`compact`,onClick:()=>o(!1),disabled:u,children:`Cancel`})]})]}):(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Timeout`}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsxs)(`span`,{children:[i,`s`,e.timeoutMs==null?` (default)`:``]}),(0,q.jsx)(c,{variant:`outlined`,size:`compact`,onClick:f,children:`Edit`}),e.timeoutMs!=null&&(0,q.jsx)(c,{variant:`outlined`,size:`compact`,onClick:()=>void m(null),disabled:u,children:`Reset`})]})]})}function Xe({schedule:e,assistantId:n,onBack:i,onDeleted:a,onUpdated:s}){let l=r(),{data:d,isLoading:f,refetch:p}=o({queryKey:ne(n,e.id),queryFn:()=>he(n,e.id),staleTime:1e4}),[m,h]=(0,U.useState)(!1),[_,v]=(0,U.useState)(!1),[b,x]=(0,U.useState)(!1),S=async()=>{h(!0);try{await ye(n,e.id),p()}catch(e){t(e,{context:`schedule_run_now`}),g.error(`Failed to run schedule.`)}finally{h(!1)}},C=async()=>{x(!0);try{await ve(n,e.id),a()}catch(e){t(e,{context:`schedule_delete`}),g.error(`Failed to delete schedule.`),x(!1),v(!1)}},w=Fe(e);return(0,q.jsxs)(`div`,{className:`space-y-4`,children:[(0,q.jsxs)(`button`,{type:`button`,onClick:i,className:`flex items-center gap-1.5 text-body-medium-lighter text-[var(--content-secondary)] hover:text-[var(--content-default)] transition-colors`,children:[(0,q.jsx)(z,{className:`h-4 w-4`}),`Back to schedules`]}),(0,q.jsx)(H,{title:e.name,subtitle:e.description??void 0,accessory:(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(u,{tone:He[e.mode]??`neutral`,children:e.mode}),(0,q.jsx)(c,{variant:`outlined`,size:`compact`,leftIcon:(0,q.jsx)(ce,{className:`h-3.5 w-3.5`}),onClick:()=>l(R.logs.usageForSchedule(e.id)),children:`View usage`}),w?(0,q.jsx)(c,{variant:`outlined`,size:`compact`,leftIcon:(0,q.jsx)(se,{className:`h-3.5 w-3.5`}),onClick:()=>l(R.conversation(w)),children:`Source`}):null,e.mode===`script`&&(0,q.jsx)(c,{variant:`outlined`,size:`compact`,leftIcon:m?(0,q.jsx)(y,{className:`h-3.5 w-3.5 animate-spin`}):(0,q.jsx)(B,{className:`h-3.5 w-3.5`}),onClick:S,disabled:m,children:m?`Running…`:`Run now`})]}),children:(0,q.jsxs)(`div`,{className:`space-y-2 text-body-medium-lighter`,children:[e.mode===`script`&&e.script&&(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)] text-body-small-default`,children:`Command`}),(0,q.jsx)(`pre`,{className:`mt-1 rounded-md bg-[var(--surface-sunken)] p-2 text-body-small-default font-mono text-[var(--content-default)] whitespace-pre-wrap break-all`,children:e.script})]}),e.mode===`script`&&(0,q.jsx)(Ye,{schedule:e,assistantId:n,onUpdated:s}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Status`}),(0,q.jsx)(`span`,{children:e.enabled?`Enabled`:`Disabled`})]}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Next run`}),(0,q.jsx)(`span`,{children:Y(e.nextRunAt)})]}),e.lastRunAt&&(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Last run`}),(0,q.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(Q,{status:e.lastStatus}),Y(e.lastRunAt)]})]})]})}),(0,q.jsx)($,{runs:d,isLoading:f}),(0,q.jsx)(H,{title:`Danger zone`,children:(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Delete this schedule`}),(0,q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Permanently removes the schedule and all its run history. This cannot be undone.`})]}),_?(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,q.jsx)(c,{variant:`ghost`,size:`compact`,onClick:()=>v(!1),disabled:b,children:`Cancel`}),(0,q.jsx)(c,{variant:`danger`,size:`compact`,onClick:()=>void C(),disabled:b,children:b?`Deleting…`:`Yes, delete`})]}):(0,q.jsx)(c,{variant:`dangerOutline`,size:`compact`,leftIcon:(0,q.jsx)(ae,{className:`h-3.5 w-3.5`}),onClick:()=>v(!0),children:`Delete`})]})})]})}function Ze({schedule:e,usage:t,onClick:n,onToggle:r,onOpenUsage:i}){return(0,q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 py-3 first:pt-0 last:pb-0 [&+&]:border-t [&+&]:border-[var(--border-base)]`,children:[(0,q.jsxs)(`button`,{type:`button`,onClick:n,className:`min-w-0 flex-1 text-left`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`span`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:e.name}),(0,q.jsx)(u,{tone:He[e.mode]??`neutral`,children:e.mode})]}),(0,q.jsxs)(`div`,{className:`mt-0.5 flex items-center gap-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:e.description}),e.lastRunAt&&(0,q.jsxs)(`span`,{className:`flex shrink-0 items-center gap-1`,children:[(0,q.jsx)(Q,{status:e.lastStatus}),Y(e.lastRunAt)]})]})]}),(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-3`,children:[(0,q.jsx)(Je,{scheduleName:e.name,usage:t,onOpenUsage:i}),(0,q.jsx)(m,{checked:e.enabled,onChange:r,"aria-label":`Toggle ${e.name}`}),(0,q.jsx)(`button`,{type:`button`,onClick:n,"aria-label":`Open ${e.name}`,className:`flex h-7 w-7 cursor-pointer items-center justify-center rounded text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-hover)]`,children:(0,q.jsx)(v,{className:`h-4 w-4`})})]})]})}function Qe({kind:e,assistantId:t,name:n,subtitle:r,enabled:i,nextRunAt:a,lastRunAt:s,isRunning:l,onBack:d,onRunNow:f}){let{data:p,isLoading:m}=o({queryKey:[`system-task-runs`,t,e],queryFn:()=>e===`heartbeat`?W(t):G(t),staleTime:1e4});return(0,q.jsxs)(`div`,{className:`space-y-4`,children:[(0,q.jsxs)(`button`,{type:`button`,onClick:d,className:`flex items-center gap-1.5 text-body-medium-lighter text-[var(--content-secondary)] hover:text-[var(--content-default)] transition-colors`,children:[(0,q.jsx)(z,{className:`h-4 w-4`}),`Back to schedules`]}),(0,q.jsx)(H,{title:n,subtitle:r,accessory:(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(u,{tone:`neutral`,children:`system`}),(0,q.jsx)(c,{variant:`outlined`,size:`compact`,leftIcon:l?(0,q.jsx)(y,{className:`h-3.5 w-3.5 animate-spin`}):(0,q.jsx)(B,{className:`h-3.5 w-3.5`}),onClick:f,disabled:l,children:l?`Running…`:`Run now`})]}),children:(0,q.jsxs)(`div`,{className:`space-y-2 text-body-medium-lighter`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Status`}),(0,q.jsx)(`span`,{children:i?`Enabled`:`Disabled`})]}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Next run`}),(0,q.jsx)(`span`,{children:Y(a)})]}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Last run`}),(0,q.jsx)(`span`,{children:Y(s)})]})]})}),(0,q.jsx)($,{runs:p,isLoading:m})]})}function $e({name:e,subtitle:t,enabled:n,nextRunAt:r,lastRunAt:i,usage:a,showToggle:o,onClick:s,onToggle:c}){return(0,q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 rounded-md px-2 py-3 transition-colors hover:bg-[var(--surface-hover)] [&+&]:border-t [&+&]:border-[var(--border-base)]`,children:[(0,q.jsxs)(`button`,{type:`button`,onClick:s,"aria-label":`Open ${e}`,className:`flex min-w-0 flex-1 cursor-pointer flex-wrap items-center gap-3 text-left focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:[(0,q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`span`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:e}),(0,q.jsx)(u,{tone:`neutral`,children:`system`})]}),(0,q.jsx)(`div`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:t}),(0,q.jsxs)(`div`,{className:`mt-0.5 flex flex-wrap items-center gap-x-3 gap-y-1 text-body-small-default text-[var(--content-tertiary)]`,children:[r?(0,q.jsxs)(`span`,{children:[`Next: `,Y(r)]}):null,i?(0,q.jsxs)(`span`,{children:[`Last: `,Y(i)]}):null]})]}),(0,q.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-end gap-3`,children:[(0,q.jsx)(Je,{scheduleName:e,usage:a}),o?null:(0,q.jsx)(`span`,{className:`h-2 w-2 rounded-full`,style:{backgroundColor:n?`var(--system-positive-strong)`:`var(--content-disabled)`},"aria-label":n?`enabled`:`disabled`}),(0,q.jsx)(v,{className:`h-4 w-4 text-[var(--content-tertiary)]`})]})]}),o?(0,q.jsx)(m,{checked:n,onChange:c,"aria-label":`Toggle ${e}`}):null]})}function et({heartbeatConfig:e,consolidationConfig:t,heartbeatUsage:n,consolidationUsage:r,isLoading:i,hasError:a,onRetry:o,onSelectHeartbeat:s,onSelectConsolidation:c,showSystemTaskToggles:u,onToggleHeartbeat:d,onToggleConsolidation:f}){let p=e!=null,m=t?.available===!0;return!i&&!a&&!p&&!m?null:(0,q.jsx)(H,{title:`System`,subtitle:`Built-in jobs managed by the assistant runtime.`,children:i?(0,q.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,q.jsx)(y,{className:`h-5 w-5 animate-spin text-stone-400`})}):a&&!p&&!m?(0,q.jsxs)(l,{tone:`error`,children:[`Failed to load system jobs.`,` `,(0,q.jsx)(`button`,{type:`button`,onClick:o,className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]}):(0,q.jsxs)(`div`,{children:[p?(0,q.jsx)($e,{name:`Heartbeat`,subtitle:Be(e),enabled:e.enabled,nextRunAt:e.nextRunAt,lastRunAt:e.lastRunAt,usage:n,showToggle:u,onClick:s,onToggle:d}):null,m?(0,q.jsx)($e,{name:`Consolidation`,subtitle:Ve(t),enabled:t.enabled,nextRunAt:t.nextRunAt,lastRunAt:t.lastRunAt,usage:r,showToggle:u,onClick:c,onToggle:f}):null,a?(0,q.jsx)(`div`,{className:`pt-3 first:pt-0`,children:(0,q.jsxs)(l,{tone:`error`,children:[`Some system jobs failed to load.`,` `,(0,q.jsx)(`button`,{type:`button`,onClick:o,className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]})}):null]})})}function tt(e,n){let r=a(),{data:i,isLoading:s,isError:c,refetch:l}=o({queryKey:[`heartbeat-config`,e],queryFn:()=>be(e),enabled:!!e,staleTime:1e4}),{data:u,isLoading:d,isError:f,refetch:p}=o({queryKey:[`consolidation-config`,e],queryFn:()=>Ce(e),enabled:!!e,staleTime:1e4}),{data:m,isLoading:h,isError:_,refetch:v}=o({queryKey:[`system-task-runs-summary`,e,`heartbeat`,100],queryFn:()=>W(e,100),enabled:!!e&&i!=null,staleTime:1e4}),{data:y,isLoading:b,isError:x,refetch:S}=o({queryKey:[`system-task-runs-summary`,e,`consolidation`,100],queryFn:()=>G(e,100),enabled:!!e&&u?.available===!0,staleTime:1e4}),C=(0,U.useMemo)(()=>Oe(n),[n]),w=(0,U.useMemo)(()=>h?{status:`loading`}:_?{status:`error`}:{status:`ready`,summary:qe(Z.heartbeat,m,C)},[m,_,h,C]),T=(0,U.useMemo)(()=>b?{status:`loading`}:x?{status:`error`}:{status:`ready`,summary:qe(Z.consolidation,y,C)},[y,x,b,C]),[E,D]=(0,U.useState)(!1),[O,k]=(0,U.useState)(!1),A=(0,U.useRef)([]),j=(0,U.useCallback)(t=>{if(!e)return;let n=()=>{r.invalidateQueries({queryKey:[`system-task-runs`,e,t]})};n();let i=setTimeout(n,1e3),a=setTimeout(n,5e3);A.current.push(i,a)},[e,r]),M=(0,U.useCallback)(async n=>{if(!e)return;let r=n===`heartbeat`?D:k,i=n===`heartbeat`?Se:Te,a=n===`heartbeat`?l:p,o=n===`heartbeat`?v:S,s=n===`heartbeat`?`Heartbeat started.`:`Consolidation queued.`,c=n===`heartbeat`?`Heartbeat skipped.`:`Consolidation already queued or running.`;r(!0);try{let t=await i(e);a(),j(n),o(),t.ran?g.success(s):g.info(c)}catch(e){t(e,{context:`${n}_run_now`}),g.error(`Failed to run ${n}.`)}finally{r(!1)}},[e,p,S,l,v,j]),N=(0,U.useCallback)(async(n,i)=>{if(!e)return;let a=n===`heartbeat`?xe:we,o=[`${n}-config`,e],s=n===`heartbeat`?`Heartbeat`:`Consolidation`;try{let t=await a(e,{enabled:i});r.setQueryData(o,t),g.success(i?`${s} enabled.`:`${s} disabled.`)}catch(e){t(e,{context:`${n}_toggle`}),g.error(`Failed to toggle ${s.toLowerCase()}.`)}},[e,r]),P=(0,U.useCallback)(()=>{l(),p(),v(),S()},[p,S,l,v]);return(0,U.useEffect)(()=>{let e=A;return()=>{for(let t of e.current)clearTimeout(t);e.current=[]}},[]),{heartbeatConfig:i,consolidationConfig:u,heartbeatUsage:w,consolidationUsage:T,isLoading:s||d,hasError:c||f,hasAnySystemTask:i!=null||u?.available===!0,isHeartbeatRunning:E,isConsolidationRunning:O,isHeartbeatLoading:s,isHeartbeatError:c,isConsolidationLoading:d,isConsolidationError:f,refetchHeartbeat:l,refetchConsolidation:p,handleRunNow:M,handleToggle:N,refetchAll:P}}function nt({onCreate:e}){return(0,q.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-lift)] px-6 py-16 text-center`,children:[(0,q.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--tag-bg-neutral)]`,children:(0,q.jsx)(_,{className:`h-6 w-6 text-[var(--content-faint)]`})}),(0,q.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:`No schedules`}),(0,q.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-quiet)]`,children:`Scheduled automations will appear here once created. You can create one yourself or ask your assistant to set it up.`}),(0,q.jsx)(`div`,{className:`mt-4`,children:(0,q.jsxs)(c,{variant:`primary`,onClick:e,children:[(0,q.jsx)(V,{className:`h-4 w-4`}),`Create schedule`]})})]})}function rt({onBack:e}){return(0,q.jsxs)(`div`,{className:`space-y-4`,children:[(0,q.jsxs)(`button`,{type:`button`,onClick:e,className:`flex items-center gap-1.5 text-body-medium-lighter text-[var(--content-secondary)] hover:text-[var(--content-default)] transition-colors`,children:[(0,q.jsx)(z,{className:`h-4 w-4`}),`Back to schedules`]}),(0,q.jsx)(l,{tone:`error`,children:`Schedule not found. It may have been deleted or the link may be out of date.`})]})}function it(){let e=r(),{scheduleId:n}=i(),a=oe(),s=Re(re.use.hasHydrated(),re.use.systemScheduleToggles()),u=le(),{data:d,isLoading:f,isError:p,refetch:m}=o({queryKey:te(u),queryFn:()=>me(u),staleTime:1e4}),{data:h,isLoading:_,isError:v}=o(Ge(u,a,n==null)),b=tt(u,a),x=ze(n),[S,C]=(0,U.useState)(!1),w=(0,U.useMemo)(()=>n&&!x?d?.find(e=>e.id===n)??null:null,[d,n,x]),T=(0,U.useMemo)(()=>new Map((h??[]).map(e=>[e.scheduleId,e])),[h]),E=(0,U.useCallback)(e=>_?{status:`loading`}:v?{status:`error`}:{status:`ready`,summary:T.get(e)??Ke(e)},[v,_,T]),D=()=>e(R.settings.schedules),O=t=>e(R.settings.schedule(t)),k=(0,U.useCallback)(()=>{C(!1),m(),g.success(`Schedule created.`)},[m]),A=(0,U.useCallback)(async(e,n)=>{try{await _e(u,e,n),m()}catch(e){t(e,{context:`schedule_toggle`}),g.error(`Failed to toggle schedule.`)}},[u,m]);if(x===`heartbeat`&&b.heartbeatConfig)return(0,q.jsx)(Qe,{kind:`heartbeat`,assistantId:u,name:`Heartbeat`,subtitle:Be(b.heartbeatConfig),enabled:b.heartbeatConfig.enabled,nextRunAt:b.heartbeatConfig.nextRunAt,lastRunAt:b.heartbeatConfig.lastRunAt,isRunning:b.isHeartbeatRunning,onBack:D,onRunNow:()=>void b.handleRunNow(`heartbeat`)},`heartbeat`);if(x===`consolidation`&&b.consolidationConfig?.available===!0)return(0,q.jsx)(Qe,{kind:`consolidation`,assistantId:u,name:`Consolidation`,subtitle:Ve(b.consolidationConfig),enabled:b.consolidationConfig.enabled,nextRunAt:b.consolidationConfig.nextRunAt,lastRunAt:b.consolidationConfig.lastRunAt,isRunning:b.isConsolidationRunning,onBack:D,onRunNow:()=>void b.handleRunNow(`consolidation`)},`consolidation`);if(w)return(0,q.jsx)(Xe,{schedule:w,assistantId:u,onBack:D,onDeleted:()=>{D(),m()},onUpdated:()=>void m()},w.id);if(f||x&&b.isLoading)return(0,q.jsx)(`div`,{className:`w-full`,children:(0,q.jsx)(`div`,{className:`flex min-h-[400px] items-center justify-center`,children:(0,q.jsx)(y,{className:`h-6 w-6 animate-spin text-stone-400`})})});if(p&&!d)return(0,q.jsx)(`div`,{className:`w-full`,children:(0,q.jsxs)(l,{tone:`error`,children:[`Failed to load schedules.`,` `,(0,q.jsx)(`button`,{type:`button`,onClick:()=>void m(),className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]})});if(x&&b.hasError)return(0,q.jsxs)(`div`,{className:`mx-auto max-w-[940px] space-y-3`,children:[(0,q.jsxs)(l,{tone:`error`,children:[`Failed to load`,` `,x===`heartbeat`?`heartbeat`:`consolidation`,` `,`schedule.`,` `,(0,q.jsx)(`button`,{type:`button`,onClick:()=>{x===`heartbeat`?b.refetchHeartbeat():b.refetchConsolidation()},className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]}),(0,q.jsxs)(c,{variant:`outlined`,onClick:D,children:[(0,q.jsx)(z,{className:`h-4 w-4`}),`Back to schedules`]})]});if(n!=null)return(0,q.jsx)(rt,{onBack:D});if(!d||d.length===0&&!b.hasAnySystemTask&&!b.isLoading&&!b.hasError)return(0,q.jsxs)(`div`,{className:`w-full`,children:[(0,q.jsx)(nt,{onCreate:()=>C(!0)}),u?(0,q.jsx)(J,{isOpen:S,assistantId:u,onClose:()=>C(!1),onCreated:k}):null]});let{recurring:j,oneTime:M}=We(d);return(0,q.jsxs)(`div`,{className:`space-y-4`,children:[(0,q.jsx)(`div`,{className:`flex items-center justify-end`,children:(0,q.jsxs)(c,{variant:`primary`,onClick:()=>C(!0),children:[(0,q.jsx)(V,{className:`h-4 w-4`}),`New schedule`]})}),v?(0,q.jsx)(l,{tone:`warning`,className:`py-2 text-body-small-default`,children:`Schedule usage stats are unavailable right now.`}):null,j.length>0&&(0,q.jsx)(H,{title:`Schedules`,subtitle:`Recurring automations managed by your assistant.`,children:(0,q.jsx)(`div`,{children:j.map(t=>(0,q.jsx)(Ze,{schedule:t,usage:E(t.id),onClick:()=>O(t.id),onToggle:e=>void A(t.id,e),onOpenUsage:()=>e(R.logs.usageForSchedule(t.id))},t.id))})}),(0,q.jsx)(et,{heartbeatConfig:b.heartbeatConfig,consolidationConfig:b.consolidationConfig,heartbeatUsage:b.heartbeatUsage,consolidationUsage:b.consolidationUsage,isLoading:b.isLoading,hasError:b.hasError,onRetry:b.refetchAll,onSelectHeartbeat:()=>O(Z.heartbeat),onSelectConsolidation:()=>O(Z.consolidation),showSystemTaskToggles:s,onToggleHeartbeat:e=>void b.handleToggle(`heartbeat`,e),onToggleConsolidation:e=>void b.handleToggle(`consolidation`,e)}),M.length>0&&(0,q.jsx)(H,{title:`One-time`,subtitle:`One-shot automations that run once at a scheduled time.`,children:(0,q.jsx)(`div`,{children:M.map(t=>(0,q.jsx)(Ze,{schedule:t,usage:E(t.id),onClick:()=>O(t.id),onToggle:e=>void A(t.id,e),onOpenUsage:()=>e(R.logs.usageForSchedule(t.id))},t.id))})}),u?(0,q.jsx)(J,{isOpen:S,assistantId:u,onClose:()=>C(!1),onCreated:k}):null]})}export{it as SchedulesPage};