@vellumai/web 0.10.8 → 0.10.9-dev.202607152225.ec6fdbf

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 (428) hide show
  1. package/dist/assets/{AnimatePresence-s1Z1HHWx.js → AnimatePresence-TZWSGjkI.js} +1 -1
  2. package/dist/assets/{BundleConfirmPage-C6bP7QB3.js → BundleConfirmPage-DgcqY17E.js} +1 -1
  3. package/dist/assets/{Combination-Cd_aWAsj.js → Combination-BJXmG5wD.js} +1 -1
  4. package/dist/assets/{a2a-invite-B9cylfIO.js → a2a-invite-hUo4WSAL.js} +1 -1
  5. package/dist/assets/{about-page-XGv9RAQu.js → about-page-BXF1KCN9.js} +1 -1
  6. package/dist/assets/account-page-BtKfeSgV.js +1 -0
  7. package/dist/assets/{account-shell-CdhP9l8T.js → account-shell-BVt4WGoT.js} +1 -1
  8. package/dist/assets/{acp-run-detail-panel-B1-zyOUe.js → acp-run-detail-panel-dcYWtQOo.js} +4 -4
  9. package/dist/assets/activity-steps-panel-GH3dyhG2.js +1 -0
  10. package/dist/assets/{add-credits-modal-PP1PX8Qv.js → add-credits-modal-XShL7AQ5.js} +1 -1
  11. package/dist/assets/ai-page-P438M1mx.js +1 -0
  12. package/dist/assets/animated-avatar-Y-A_0vmk.js +1 -0
  13. package/dist/assets/{api-_7pKLlYA.js → api-BsCfy4XV.js} +1 -1
  14. package/dist/assets/{api-BsQZ81K5.js → api-Dj9Z-j-6.js} +1 -1
  15. package/dist/assets/{api-key-screen-DTSP_-Da.js → api-key-screen-D5mqS5uB.js} +1 -1
  16. package/dist/assets/app-types-CTJGOi24.js +1 -0
  17. package/dist/assets/archive-redirect-page-BzPbcTFb.js +1 -0
  18. package/dist/assets/arrow-left-C2re-gYj.js +1 -0
  19. package/dist/assets/{assistant-feature-flag-store-DA8Oj9Mf.js → assistant-feature-flag-store-eHqy0FOb.js} +1 -1
  20. package/dist/assets/assistant-identity-store-Bc4hbSCe.js +1 -0
  21. package/dist/assets/assistant-status-panel-Dnnejpmx.js +1 -0
  22. package/dist/assets/auth-store-Ce9wqr8c.js +2 -0
  23. package/dist/assets/background-task-detail-panel-Dr2O-AOO.js +1 -0
  24. package/dist/assets/ban-Ih5bAOHZ.js +1 -0
  25. package/dist/assets/{bell-BQLonLMp.js → bell-BbESwsZk.js} +1 -1
  26. package/dist/assets/billing-page-Cuir7xDL.js +3 -0
  27. package/dist/assets/{bookmark-CNrithFf.js → bookmark-Dzconbsv.js} +1 -1
  28. package/dist/assets/{bookmarks-page-CjcavZv8.js → bookmarks-page-IeNT-se-.js} +1 -1
  29. package/dist/assets/{brain-BLDXGaUy.js → brain-CMiHVWFK.js} +1 -1
  30. package/dist/assets/browser-CUdEL48R.js +2 -0
  31. package/dist/assets/{bug-BsuQ5ciQ.js → bug-YmXTm_XW.js} +1 -1
  32. package/dist/assets/{build-state-PUXrUU4W.js → build-state-Cc8lgfTd.js} +1 -1
  33. package/dist/assets/button-BQVYX8n_.js +1 -0
  34. package/dist/assets/{calendar-h-mv1itX.js → calendar-D0labpMU.js} +1 -1
  35. package/dist/assets/card-D8zyWtZh.js +1 -0
  36. package/dist/assets/channels-page-route-HVoMtCIE.js +9 -0
  37. package/dist/assets/chat-CPqIbgZQ.js +1 -0
  38. package/dist/assets/chat-markdown-message-DekUplzJ.js +2 -0
  39. package/dist/assets/check-wF3S-AV4.js +1 -0
  40. package/dist/assets/checkbox-m-fy9ift.js +1 -0
  41. package/dist/assets/{chevron-down-qD-re7AW.js → chevron-down-DpYf9Gwq.js} +1 -1
  42. package/dist/assets/chevron-left-B_RAz34t.js +1 -0
  43. package/dist/assets/chevron-right-jRymmL7S.js +1 -0
  44. package/dist/assets/{chevron-up-3jCod9LW.js → chevron-up-DHI-QRpz.js} +1 -1
  45. package/dist/assets/{chunk-5KNZJZUH-DdS6bb-3.js → chunk-5KNZJZUH-SU6Q_tDT.js} +1 -1
  46. package/dist/assets/{circle-alert-zOqdmf25.js → circle-alert-CTnM6GCb.js} +1 -1
  47. package/dist/assets/circle-check-DqvTjWle.js +1 -0
  48. package/dist/assets/{client-feature-flag-store-DkJl-g9A.js → client-feature-flag-store-BWSPRAZI.js} +1 -1
  49. package/dist/assets/{client-identity-CadrtY_b.js → client-identity-C1M6QeKU.js} +1 -1
  50. package/dist/assets/{clipboard-copy-DF6K1xc6.js → clipboard-copy-DbekAYi3.js} +1 -1
  51. package/dist/assets/{cloud-off-Db1nySkc.js → cloud-off-Cj66Ozsp.js} +1 -1
  52. package/dist/assets/code-D1zl7aOd.js +1 -0
  53. package/dist/assets/{command-palette-6o4m7BM9.js → command-palette-D0KUPO0z.js} +1 -1
  54. package/dist/assets/{command-palette-window-page-BsJlr5bh.js → command-palette-window-page-C7FWkvBe.js} +1 -1
  55. package/dist/assets/{community-page-CJA4JfuC.js → community-page-DdajiWNT.js} +1 -1
  56. package/dist/assets/{confirm-dialog-CSkhRFRk.js → confirm-dialog-kE8y7s20.js} +1 -1
  57. package/dist/assets/{connect-page-DZgU3jCf.js → connect-page-8DGIdo6r.js} +1 -1
  58. package/dist/assets/consent-Bg13wifR.js +1 -0
  59. package/dist/assets/{consent-controls-Cnr1DzCr.js → consent-controls-9HzLiDGE.js} +1 -1
  60. package/dist/assets/{contacts-gateway-CW5CipBv.js → contacts-gateway-DsqzGIxS.js} +1 -1
  61. package/dist/assets/contacts-page-route-DKRLyHc9.js +1 -0
  62. package/dist/assets/{conversation-list-fetchers-DS9vmqfD.js → conversation-list-fetchers-CQ_dcy46.js} +1 -1
  63. package/dist/assets/{cpu-BJuB2Khn.js → cpu-CEyjQpZz.js} +1 -1
  64. package/dist/assets/{credential-entry-page-9H2HOu88.js → credential-entry-page-Bz05OQ1l.js} +1 -1
  65. package/dist/assets/credentials-page-DQUaGcSk.js +1 -0
  66. package/dist/assets/{credit-card-BuyWdO9t.js → credit-card-BY-vD21O.js} +1 -1
  67. package/dist/assets/danger-zone-redirect-page-BObfZbXc.js +1 -0
  68. package/dist/assets/debug-page-CHEFIcwt.js +4 -0
  69. package/dist/assets/{deploy-dialogs-paL_zcvG.js → deploy-dialogs-CHO7qgXb.js} +1 -1
  70. package/dist/assets/detail-card-ft5Na6Jw.js +1 -0
  71. package/dist/assets/{detail-panel-stop-button-y7O3HqJj.js → detail-panel-stop-button-DFd5vXbh.js} +1 -1
  72. package/dist/assets/developer-page-D5TyzQhJ.js +1 -0
  73. package/dist/assets/device-settings-BBwtGKJb.js +1 -0
  74. package/dist/assets/devices-redirect-page-C1LQBzrn.js +1 -0
  75. package/dist/assets/{diagnostics-COsnZMe5.js → diagnostics-BbfP585e.js} +1 -1
  76. package/dist/assets/{dictation-overlay-page-BkEBWrWm.js → dictation-overlay-page-DButFzu3.js} +1 -1
  77. package/dist/assets/{dist-CxHeCOEv.js → dist-Btg1osd6.js} +1 -1
  78. package/dist/assets/{dist-DqmYHxdg.js → dist-CxzJhU4a.js} +1 -1
  79. package/dist/assets/dist-Df9Kbc9v.js +1 -0
  80. package/dist/assets/{dist-HJ505Xnn.js → dist-URk13ITj.js} +1 -1
  81. package/dist/assets/document-viewer-page-ChwaY2Gu.js +1 -0
  82. package/dist/assets/{domain-field-C5a2iMot.js → domain-field-DKKi4dF-.js} +1 -1
  83. package/dist/assets/{download-CAuK-nZ6.js → download-B6XjnEzx.js} +1 -1
  84. package/dist/assets/dropdown-BxYrCXBS.js +1 -0
  85. package/dist/assets/edge-swipe-arbiter-store-CdpmheQU.js +1 -0
  86. package/dist/assets/effective-timezone-D6A5ISj1.js +1 -0
  87. package/dist/assets/{emails-page-7c9kVi_k.js → emails-page-DsPeayRI.js} +1 -1
  88. package/dist/assets/esm-BIBV_tQW.js +1 -0
  89. package/dist/assets/esm-BpVuRCaK.js +2 -0
  90. package/dist/assets/{esm-CT8NUp3h.js → esm-BtlRHesG.js} +2 -2
  91. package/dist/assets/esm-C0eM5us1.js +2 -0
  92. package/dist/assets/esm-Cjx6Josx.js +2 -0
  93. package/dist/assets/esm-_n61e_LE.js +2 -0
  94. package/dist/assets/esm-p7tDK3Q-.js +2 -0
  95. package/dist/assets/{external-link-Dqpx9nRm.js → external-link-Cczz6xJ4.js} +1 -1
  96. package/dist/assets/eye-C2rSrbD-.js +1 -0
  97. package/dist/assets/eye-off-BQ9J3pF2.js +1 -0
  98. package/dist/assets/feature-flag-catalog-CAYgyMOh.js +1 -0
  99. package/dist/assets/{file-DsyJLS2u.js → file-C8pjlmtk.js} +1 -1
  100. package/dist/assets/file-editor-BzlaskSf.js +1 -0
  101. package/dist/assets/file-markdown-wMH_OULm.js +2 -0
  102. package/dist/assets/{file-text-CYJz-GvF.js → file-text-DA128T4K.js} +1 -1
  103. package/dist/assets/folder-open-7DKBH5WB.js +1 -0
  104. package/dist/assets/general-page-DUGHbJWs.js +1 -0
  105. package/dist/assets/{globe-4qSOWE2N.js → globe-inD5tOKN.js} +1 -1
  106. package/dist/assets/haptics-CBEu5JKM.js +2 -0
  107. package/dist/assets/{hard-drive-rDxhoRUm.js → hard-drive-BXh9qCfi.js} +1 -1
  108. package/dist/assets/hatching-screen-BfL6mMQl.js +1 -0
  109. package/dist/assets/home-page-route-CRwgwG7m.js +1 -0
  110. package/dist/assets/{hosting-screen-BZLZular.js → hosting-screen-CiNC7D5K.js} +1 -1
  111. package/dist/assets/identity-page-route-CWHBHNdp.js +7 -0
  112. package/dist/assets/index-31nbLUeS.js +209 -0
  113. package/dist/assets/index-Bp6Atcow.css +2 -0
  114. package/dist/assets/{info-DsOyuMO9.js → info-DLFMsCl-.js} +1 -1
  115. package/dist/assets/ingest-B0ofnlye.js +1 -0
  116. package/dist/assets/input-6HVXMszw.js +1 -0
  117. package/dist/assets/inspect-page-CU5v4vjm.js +9 -0
  118. package/dist/assets/integrations-page-Bf9wNW1o.js +1 -0
  119. package/dist/assets/intelligence-layout-BnPHR15j.js +1 -0
  120. package/dist/assets/{key-round-CD3JWrs1.js → key-round-BggUE1Ns.js} +1 -1
  121. package/dist/assets/keyboard-shortcuts-redirect-page-ChK4kTis.js +1 -0
  122. package/dist/assets/latest-assistant-text-B12Sw3_u.js +24 -0
  123. package/dist/assets/library-detail-page-DBg_wsW2.js +1 -0
  124. package/dist/assets/library-page-BLEm33Z3.js +1 -0
  125. package/dist/assets/{link-2-4bMylQ5v.js → link-2-YnZe-oMg.js} +1 -1
  126. package/dist/assets/list-row-B9k-FoZv.js +1 -0
  127. package/dist/assets/loader-circle-C9QrtO3C.js +1 -0
  128. package/dist/assets/{local-mode-grqHUoNh.js → local-mode-Bskd5bsT.js} +1 -1
  129. package/dist/assets/{log-in--aqELu3z.js → log-in-Xv-AVlu8.js} +1 -1
  130. package/dist/assets/{login-flow-B6q00uIW.js → login-flow-CmlnYi0j.js} +1 -1
  131. package/dist/assets/login-page-CGHvLIez.js +1 -0
  132. package/dist/assets/{logout-page-BV0URcAd.js → logout-page-DuPCZ90A.js} +1 -1
  133. package/dist/assets/logs-layout-BRxIej3c.js +1 -0
  134. package/dist/assets/memory-page-route-pnpeSii_.js +1 -0
  135. package/dist/assets/{memory-router-playground-page-CQxX6mCn.js → memory-router-playground-page-LGFJw3s7.js} +1 -1
  136. package/dist/assets/menu-CLA56vz8.js +1 -0
  137. package/dist/assets/{messages-Bl6a3LUN.js → messages-DBgRkgBa.js} +2 -2
  138. package/dist/assets/{metric-card-DvXjHVCV.js → metric-card-C3DDH1u1.js} +1 -1
  139. package/dist/assets/mic-Dmvwrxe8.js +1 -0
  140. package/dist/assets/{middleware-pbPQ0upo.js → middleware-DL-IveDQ.js} +1 -1
  141. package/dist/assets/{minimize-2-Clnet2W7.js → minimize-2-B8VHIj-G.js} +1 -1
  142. package/dist/assets/{misc-BYQPh7vS.js → misc-CS-Pktrv.js} +1 -1
  143. package/dist/assets/mobile-sidebar-drawer-CfUSy_Ou.js +1 -0
  144. package/dist/assets/modal-bIQsMU63.js +1 -0
  145. package/dist/assets/{monitor-DfbL8_59.js → monitor-Cy7Q70-7.js} +1 -1
  146. package/dist/assets/{moon-B8qiwjrW.js → moon-jDX7sipq.js} +1 -1
  147. package/dist/assets/mutation-error-CFLGO21o.js +1 -0
  148. package/dist/assets/native-biometric-BvCjSInu.js +6 -0
  149. package/dist/assets/{native-file-DI99Emal.js → native-file-C6oXU5FE.js} +2 -2
  150. package/dist/assets/notice-BiZA71pR.js +1 -0
  151. package/dist/assets/notifications-page-clztNuMl.js +1 -0
  152. package/dist/assets/{oauth-complete-page-BlJm9tRJ.js → oauth-complete-page-BK-eCVgQ.js} +1 -1
  153. package/dist/assets/{oauth-popup-complete-page-BqUopTat.js → oauth-popup-complete-page-Cs2egwq6.js} +1 -1
  154. package/dist/assets/onboarding-store-tqBxGvkR.js +1 -0
  155. package/dist/assets/page-shell-BvXbg7Db.js +1 -0
  156. package/dist/assets/{pairing-page-B5GrCx4C.js → pairing-page-BE4ph4ik.js} +1 -1
  157. package/dist/assets/panel-item-CfuwAm7q.js +1 -0
  158. package/dist/assets/password-reset-page-8SeFGA1l.js +1 -0
  159. package/dist/assets/{pencil-CUIr0IFo.js → pencil-BOTCmXXR.js} +1 -1
  160. package/dist/assets/personality-page-DncIme1O.js +1 -0
  161. package/dist/assets/platform-detection-BTuzpl34.js +1 -0
  162. package/dist/assets/platform-loopback-page-LBbH5z8z.js +1 -0
  163. package/dist/assets/{plugin-detail-page-Byuqbr1N.js → plugin-detail-page-CiUmOJx4.js} +1 -1
  164. package/dist/assets/plugins-page-DGpvzJ6A.js +1 -0
  165. package/dist/assets/plugins-surface-B2vYGNIS.js +1 -0
  166. package/dist/assets/plus-D54jrPDF.js +1 -0
  167. package/dist/assets/popover-rW459udD.js +1 -0
  168. package/dist/assets/prechat-route-Blw5oByr.js +1 -0
  169. package/dist/assets/prefs-BhGkdtWC.js +1 -0
  170. package/dist/assets/privacy-page-DtJ7Ta9Q.js +1 -0
  171. package/dist/assets/privacy-screen-DCmdN-F6.js +1 -0
  172. package/dist/assets/{usage-window-C6gWu5Qu.js → profile-metadata-CbcuGTHP.js} +1 -1
  173. package/dist/assets/progress-bar-Wa6qo8OT.js +1 -0
  174. package/dist/assets/provider-callback-page-DqiHRsf7.js +1 -0
  175. package/dist/assets/{provider-key-3AHnKoz9.js → provider-key-BIMvWJCe.js} +1 -1
  176. package/dist/assets/provider-signup-page-D5rIiZ2o.js +1 -0
  177. package/dist/assets/puzzle-0_oQwgsv.js +1 -0
  178. package/dist/assets/{quick-input-page-Cv_CzapK.js → quick-input-page-BEwEfXyk.js} +1 -1
  179. package/dist/assets/react-query.gen-DjmYXavs.js +1 -0
  180. package/dist/assets/react-query.gen-JxTd3SS8.js +1 -0
  181. package/dist/assets/{refresh-cw-DevIHL7J.js → refresh-cw-BkscUrbN.js} +1 -1
  182. package/dist/assets/{remote-gateway-session-CbBWrPZH.js → remote-gateway-session-CBKZhJak.js} +1 -1
  183. package/dist/assets/{repeat-C8Im6j--.js → repeat-BRYsTqh_.js} +1 -1
  184. package/dist/assets/research-mock-page-VikWGUam.js +1 -0
  185. package/dist/assets/research-onboarding-route-BiLio9x3.js +42 -0
  186. package/dist/assets/{resize-errors-DqIkO0UI.js → resize-errors-yH10K9Qq.js} +1 -1
  187. package/dist/assets/{resolved-assistants-store-BSZbT8Ju.js → resolved-assistants-store-DAzPZ1eV.js} +1 -1
  188. package/dist/assets/{return-to-BwxkOGDI.js → return-to-ugSGJ0dm.js} +1 -1
  189. package/dist/assets/review-terms-screen-DybxZzqn.js +1 -0
  190. package/dist/assets/risk-b98f7VDW.js +3 -0
  191. package/dist/assets/routes-Bzvx8bnp.js +1 -0
  192. package/dist/assets/schedules-oC-weaYP.js +1 -0
  193. package/dist/assets/{sdk.gen-BwnFjFcp.js → sdk.gen-CFgJ4K6f.js} +1 -1
  194. package/dist/assets/sdk.gen-Z7XkRg5O.js +1 -0
  195. package/dist/assets/security-redirect-page-GKy7eRUs.js +1 -0
  196. package/dist/assets/{select-assistant-screen-Br-PNDO1.js → select-assistant-screen-BFDxdgLn.js} +1 -1
  197. package/dist/assets/{setting-row-CUka7_L9.js → setting-row-f2idXB8B.js} +1 -1
  198. package/dist/assets/settings-divider-BPEDTMBU.js +1 -0
  199. package/dist/assets/settings-layout-BlQX4ZgU.js +1 -0
  200. package/dist/assets/share-feedback-modal-CsAJJ_oZ.js +1 -0
  201. package/dist/assets/shield-check-kgUZeU9b.js +1 -0
  202. package/dist/assets/{sidebar-tree-C1_LiBB9.js → sidebar-tree-Osepkg7m.js} +1 -1
  203. package/dist/assets/signup-page-CL3T-Z4a.js +1 -0
  204. package/dist/assets/{signup-shell-DufHA5do.js → signup-shell-C2c8tEWo.js} +1 -1
  205. package/dist/assets/site-favicon-Bf4BKQG1.js +1 -0
  206. package/dist/assets/skill-detail-page-B1AuSkFK.js +1 -0
  207. package/dist/assets/{skill-detail-panel-BGoRUWNU.js → skill-detail-panel-CeOWb3Bf.js} +1 -1
  208. package/dist/assets/{skills-AtSQBwXr.js → skills-ByKs3Zjf.js} +1 -1
  209. package/dist/assets/skills-page-HoaDTYTI.js +1 -0
  210. package/dist/assets/{sound-manager-6UbdgQrj.js → sound-manager-DUFvLLrG.js} +1 -1
  211. package/dist/assets/sounds-redirect-page-BE1uLXxt.js +1 -0
  212. package/dist/assets/{sparkles-PGiR5v1g.js → sparkles-BK3KXCjl.js} +1 -1
  213. package/dist/assets/{src-zsLiFPw3.js → src-A8hMQd90.js} +39 -39
  214. package/dist/assets/{subagent-detail-panel-BGuVa8-m.js → subagent-detail-panel-DQJPOafB.js} +2 -2
  215. package/dist/assets/{subagent-store-Bz4irJre.js → subagent-store-UK3sycHi.js} +1 -1
  216. package/dist/assets/system-events-page-f63DiHJ0.js +1 -0
  217. package/dist/assets/system-events-redirect-page-BxksRhif.js +1 -0
  218. package/dist/assets/tag-D0AE0-aA.js +1 -0
  219. package/dist/assets/theme-preferences-DW9WTu2f.js +1 -0
  220. package/dist/assets/theme-stage-page-Bo5V4ZDW.js +1 -0
  221. package/dist/assets/{tiptap-document-editor-C-eOEBR_.js → tiptap-document-editor-ChljO0fw.js} +2 -2
  222. package/dist/assets/toast-B5Hr1kIL.js +1 -0
  223. package/dist/assets/toggle-CWrJ2t4S.js +1 -0
  224. package/dist/assets/{tool-detail-panel-wAuQ7gi8.js → tool-detail-panel-_oXYE81O.js} +2 -2
  225. package/dist/assets/{triangle-alert-Z0Gq0IuB.js → triangle-alert-CnjNKhNx.js} +1 -1
  226. package/dist/assets/typography-Cqi8q9o7.js +1 -0
  227. package/dist/assets/{upgrade-cancel-page-BGgPmDmT.js → upgrade-cancel-page-C4sJ4IHi.js} +1 -1
  228. package/dist/assets/{upgrade-success-page-TJBopZ0Z.js → upgrade-success-page-v7UtvYeb.js} +1 -1
  229. package/dist/assets/usage-redirect-page-DlxixrFd.js +1 -0
  230. package/dist/assets/{use-active-assistant-id-BWXi63qg.js → use-active-assistant-id-KipCgPNT.js} +1 -1
  231. package/dist/assets/use-assistant-identity-details-BpbmaZva.js +1 -0
  232. package/dist/assets/{use-edge-swipe-back-B4XlZ1Iu.js → use-edge-swipe-back-DTpbr5KC.js} +1 -1
  233. package/dist/assets/use-invite-link-dialog-2FBB54DX.js +1 -0
  234. package/dist/assets/use-is-org-ready-MUDnKy3r.js +1 -0
  235. package/dist/assets/use-onboarding-login-_LAXettN.js +1 -0
  236. package/dist/assets/{use-reduced-motion-Cj0Z8KSf.js → use-reduced-motion-BPBlq9_a.js} +1 -1
  237. package/dist/assets/use-skill-actions-CrU5Sgk_.js +1 -0
  238. package/dist/assets/use-skill-categories-BhT4D6gt.js +1 -0
  239. package/dist/assets/{use-skill-detail-files-Dpp521cY.js → use-skill-detail-files-DNY3WFns.js} +1 -1
  240. package/dist/assets/{user-plus-DMh4_UTz.js → user-plus-KuzSTM_D.js} +1 -1
  241. package/dist/assets/{utils-xg2dl_KJ.js → utils-CNB1P-cO.js} +1 -1
  242. package/dist/assets/{viewer-store-B8-Qnbx9.js → viewer-store-CFywMdJp.js} +1 -1
  243. package/dist/assets/voice-page-otevqz9B.js +1 -0
  244. package/dist/assets/{weather-forecast-display-Bix8rpji.js → weather-forecast-display-CcKGlN7f.js} +1 -1
  245. package/dist/assets/{web-RhBklijR.js → web-BPvLuAGE.js} +1 -1
  246. package/dist/assets/{web-D8PpvYf_.js → web-BUVD1SEs.js} +1 -1
  247. package/dist/assets/{web-C1L-cpPj.js → web-Bf269a_Y.js} +1 -1
  248. package/dist/assets/{web-CJiP8Lg6.js → web-CELqsarU.js} +1 -1
  249. package/dist/assets/{web-O1LOb-o9.js → web-CFPJ_DoC.js} +1 -1
  250. package/dist/assets/{web-BD2N6zhd.js → web-DFW5YV0h.js} +1 -1
  251. package/dist/assets/{web-BaubW4Pp.js → web-DyY0a6OS.js} +1 -1
  252. package/dist/assets/{web-Duw5A2aP.js → web-KeVAvkzP.js} +1 -1
  253. package/dist/assets/{welcome-screen-CVI4Hjnt.js → welcome-screen-C8axlf6E.js} +1 -1
  254. package/dist/assets/workflow-detail-panel-DkqCKrOL.js +1 -0
  255. package/dist/assets/{workflow-store-B7ofewCi.js → workflow-store-k8Si-dKc.js} +1 -1
  256. package/dist/assets/workspace-page-CS0P8RFO.js +1 -0
  257. package/dist/assets/x-BYcSiJRX.js +1 -0
  258. package/dist/index.html +146 -142
  259. package/dist/skills/chat-complex-documents/assets/icon.svg +26 -0
  260. package/package.json +1 -1
  261. package/dist/assets/account-page-Dno1SeJN.js +0 -1
  262. package/dist/assets/activity-steps-panel-BGyfMCXK.js +0 -1
  263. package/dist/assets/advanced-page-vCbMVJsK.js +0 -1
  264. package/dist/assets/ai-page-BIYybKux.js +0 -1
  265. package/dist/assets/animated-avatar-Cqpzb8O4.js +0 -1
  266. package/dist/assets/archive-0aqysuyd.js +0 -1
  267. package/dist/assets/archive-page-RZ2VP63A.js +0 -1
  268. package/dist/assets/arrow-left-DI9551VI.js +0 -1
  269. package/dist/assets/assistant-identity-store-CX03CK8q.js +0 -1
  270. package/dist/assets/assistant-status-panel-BC0RTDls.js +0 -1
  271. package/dist/assets/auth-store-C09YAZEu.js +0 -2
  272. package/dist/assets/background-task-detail-panel-BfnsD-3B.js +0 -1
  273. package/dist/assets/ban-CVKGuUAQ.js +0 -1
  274. package/dist/assets/billing-page-1z_L2m6q.js +0 -3
  275. package/dist/assets/browser-C6a_nhhZ.js +0 -2
  276. package/dist/assets/button-amTXFI-2.js +0 -1
  277. package/dist/assets/card-Bv5O5juh.js +0 -1
  278. package/dist/assets/channels-page-route-WjNmd0sS.js +0 -9
  279. package/dist/assets/chat-B8mgARYR.js +0 -1
  280. package/dist/assets/chat-markdown-message-BnX6bhgs.js +0 -2
  281. package/dist/assets/check-DFNrQERi.js +0 -1
  282. package/dist/assets/checkbox-EdyezNqo.js +0 -1
  283. package/dist/assets/chevron-left-BMF1xNfR.js +0 -1
  284. package/dist/assets/chevron-right-DqqmezXC.js +0 -1
  285. package/dist/assets/circle-check-VSiny8yl.js +0 -1
  286. package/dist/assets/cn-C36Yvcac.js +0 -1
  287. package/dist/assets/code-Czx7d7SK.js +0 -1
  288. package/dist/assets/contacts-page-route-P0neH-PV.js +0 -1
  289. package/dist/assets/copy-Cn1FKrEp.js +0 -1
  290. package/dist/assets/credentials-page-MkKE_19-.js +0 -1
  291. package/dist/assets/danger-zone-redirect-page-BWg7rn8D.js +0 -1
  292. package/dist/assets/debug-page-B88f4aDU.js +0 -4
  293. package/dist/assets/detail-card-xKZlkbz5.js +0 -1
  294. package/dist/assets/developer-page-BFMS6pwU.js +0 -1
  295. package/dist/assets/devices-page-B3D5iLhD.js +0 -1
  296. package/dist/assets/dist-BItmZQO6.js +0 -1
  297. package/dist/assets/document-viewer-page-B631L6-3.js +0 -1
  298. package/dist/assets/dropdown-ByHOpeOU.js +0 -1
  299. package/dist/assets/earn-credits-modal-CFla-iKl.js +0 -1
  300. package/dist/assets/edge-swipe-arbiter-store-BeOhrE7M.js +0 -1
  301. package/dist/assets/effective-timezone-C4nukIC4.js +0 -1
  302. package/dist/assets/esm-B54gzHCZ.js +0 -1
  303. package/dist/assets/esm-Bzs_witt.js +0 -2
  304. package/dist/assets/esm-C5J59K0j.js +0 -2
  305. package/dist/assets/esm-DEu9JbAE.js +0 -2
  306. package/dist/assets/esm-DZkj1VLJ.js +0 -2
  307. package/dist/assets/esm-DtJz1M8R.js +0 -2
  308. package/dist/assets/feature-flag-catalog-GgSNKkqP.js +0 -1
  309. package/dist/assets/file-editor-sT7eHxsw.js +0 -1
  310. package/dist/assets/file-markdown-Bq97tNxs.js +0 -2
  311. package/dist/assets/general-page-D-Gr2lkW.js +0 -1
  312. package/dist/assets/haptics-lMERs7us.js +0 -2
  313. package/dist/assets/hatching-screen-BlwicgIz.js +0 -1
  314. package/dist/assets/home-page-route-D24x4A0S.js +0 -1
  315. package/dist/assets/identity-page-route-BwOJeenx.js +0 -1
  316. package/dist/assets/index-C9GrLGul.css +0 -2
  317. package/dist/assets/index-yu6nDHvG.js +0 -113
  318. package/dist/assets/input-CoUmPnRU.js +0 -1
  319. package/dist/assets/inspect-page-1RejwSP_.js +0 -9
  320. package/dist/assets/integrations-page-BV5BiHPD.js +0 -1
  321. package/dist/assets/intelligence-layout-iQFO8in_.js +0 -1
  322. package/dist/assets/keyboard-shortcuts-page-jt13JtxS.js +0 -1
  323. package/dist/assets/library-detail-page-BAGWt1Lw.js +0 -1
  324. package/dist/assets/library-page-CqeoBhDY.js +0 -1
  325. package/dist/assets/list-row-D5MFdbkH.js +0 -1
  326. package/dist/assets/llm-dimension-DyYwG3mU.js +0 -1
  327. package/dist/assets/loader-circle-Cz7opInR.js +0 -1
  328. package/dist/assets/login-page-BQVTWuQc.js +0 -1
  329. package/dist/assets/logs-layout-DO3yfZqD.js +0 -1
  330. package/dist/assets/menu-Dy5QbnTj.js +0 -1
  331. package/dist/assets/mobile-sidebar-drawer-Epbt6p-k.js +0 -1
  332. package/dist/assets/modal-D5nLWNN9.js +0 -1
  333. package/dist/assets/mutation-error-DYv0eJ_i.js +0 -1
  334. package/dist/assets/native-biometric-Czaf9IqI.js +0 -6
  335. package/dist/assets/notice-DkcNAP8O.js +0 -1
  336. package/dist/assets/notifications-page-CXaZpD3s.js +0 -1
  337. package/dist/assets/page-shell-BUGBKCmv.js +0 -1
  338. package/dist/assets/panel-item-CouW2A55.js +0 -1
  339. package/dist/assets/password-reset-page-BCk9Si73.js +0 -1
  340. package/dist/assets/platform-detection-BrxvFUiR.js +0 -1
  341. package/dist/assets/platform-loopback-page-MZdCPXRI.js +0 -1
  342. package/dist/assets/plugins-page-Ci0CoSAN.js +0 -1
  343. package/dist/assets/plugins-surface-z3RTZS4H.js +0 -1
  344. package/dist/assets/plus-DItfr5ux.js +0 -1
  345. package/dist/assets/popover-CFL4WZTr.js +0 -1
  346. package/dist/assets/prechat-route-9JFn-w_1.js +0 -1
  347. package/dist/assets/prefs-B1Y3q3c8.js +0 -1
  348. package/dist/assets/privacy-page-BTpvj9ZP.js +0 -1
  349. package/dist/assets/privacy-screen-CUbVcDf_.js +0 -1
  350. package/dist/assets/progress-bar-Ca8gmE3B.js +0 -1
  351. package/dist/assets/provider-callback-page-fB2tIyqL.js +0 -1
  352. package/dist/assets/provider-signup-page-C4Dn-wtJ.js +0 -1
  353. package/dist/assets/react-query.gen-C6wVk6Rw.js +0 -1
  354. package/dist/assets/react-query.gen-DPzPS206.js +0 -1
  355. package/dist/assets/research-mock-page-1T92rXz3.js +0 -1
  356. package/dist/assets/research-onboarding-route-CmWgwOFk.js +0 -63
  357. package/dist/assets/review-terms-screen-DrD4vywk.js +0 -1
  358. package/dist/assets/risk-Dopd25rc.js +0 -3
  359. package/dist/assets/routes-BbeIx_F9.js +0 -1
  360. package/dist/assets/save-aD5JFIZf.js +0 -1
  361. package/dist/assets/schedules-BfKi12EZ.js +0 -1
  362. package/dist/assets/sdk.gen-CmKfVpgB.js +0 -1
  363. package/dist/assets/security-page-BYI7twYM.js +0 -1
  364. package/dist/assets/settings-layout-lddMUg7A.js +0 -1
  365. package/dist/assets/share-feedback-modal-DSwfhMsV.js +0 -1
  366. package/dist/assets/shortcut-keys-B2EE-634.js +0 -1
  367. package/dist/assets/signup-page-D6hAK-Us.js +0 -1
  368. package/dist/assets/site-favicon-fQHLTT6F.js +0 -1
  369. package/dist/assets/skill-detail-page-BlfgTyFC.js +0 -1
  370. package/dist/assets/skill-icon-cNkD2w1X.js +0 -1
  371. package/dist/assets/skills-page-DeIiyhVc.js +0 -1
  372. package/dist/assets/sounds-page-BgLLJ-o9.js +0 -1
  373. package/dist/assets/stat-square-CTHnQ1jc.js +0 -1
  374. package/dist/assets/system-events-page-C1hXOYmg.js +0 -1
  375. package/dist/assets/system-events-redirect-page-DbaFKRXH.js +0 -1
  376. package/dist/assets/tag-CV4v7fRF.js +0 -1
  377. package/dist/assets/toast-xTp-xwYL.js +0 -1
  378. package/dist/assets/toggle-CDfguvUz.js +0 -1
  379. package/dist/assets/typography-D5f7kt80.js +0 -1
  380. package/dist/assets/usage-page-DLWFk2P0.js +0 -1
  381. package/dist/assets/use-bus-subscription-C3H3CmM_.js +0 -1
  382. package/dist/assets/use-invite-link-dialog-BdnW1BHj.js +0 -1
  383. package/dist/assets/use-is-org-ready-jhEM-4rY.js +0 -1
  384. package/dist/assets/use-onboarding-login-B-1jrjFL.js +0 -1
  385. package/dist/assets/use-skill-actions-BpVxiQZY.js +0 -1
  386. package/dist/assets/use-skill-categories-CCxtjMC_.js +0 -1
  387. package/dist/assets/voice-page-BoCTB8Jx.js +0 -1
  388. package/dist/assets/workflow-detail-panel-CwZH3tDl.js +0 -1
  389. package/dist/assets/workspace-page-CwIsXk1j.js +0 -1
  390. package/dist/assets/x-CkSVp1Ok.js +0 -1
  391. /package/dist/assets/{app-info-Clwt3pCt.js → app-info-AJ6nA0RS.js} +0 -0
  392. /package/dist/assets/{avatar-bundled-components--1Wyhs4r.js → avatar-bundled-components-DgzHRe6Z.js} +0 -0
  393. /package/dist/assets/{avatar-svg-compositor-CnDf9Ibf.js → avatar-svg-compositor-C_lXkZLZ.js} +0 -0
  394. /package/dist/assets/{browser-timezone-2SnmKDjM.js → browser-timezone-DjbAts-Z.js} +0 -0
  395. /package/dist/assets/{build.umd-CxdKgGWo.js → build.umd-CVjrbvyL.js} +0 -0
  396. /package/dist/assets/{bundle-mjs-BZt35okJ.js → bundle-mjs-CK9sN9wG.js} +0 -0
  397. /package/dist/assets/{by-tool-use-id-index-BokzI3ZP.js → by-tool-use-id-index-CBaMK-eh.js} +0 -0
  398. /package/dist/assets/{composer-focus-BZr63Cvs.js → composer-focus-CpeV_gfi.js} +0 -0
  399. /package/dist/assets/{conversation-selection-BBHkzcfy.js → conversation-selection-DYJPsAjJ.js} +0 -0
  400. /package/dist/assets/{conversation-store-BljZWolF.js → conversation-store-CnRrUeSu.js} +0 -0
  401. /package/dist/assets/{createLucideIcon-IRfcSUxS.js → createLucideIcon-Bjb-Kuq7.js} +0 -0
  402. /package/dist/assets/{definitions-CaYcW4Yq.js → definitions-BaillmRO.js} +0 -0
  403. /package/dist/assets/{definitions-DScTW2c-.js → definitions-Ce8XXjMI.js} +0 -0
  404. /package/dist/assets/{dist-DS5iJwBJ2.js → dist-DyRKd0bN2.js} +0 -0
  405. /package/dist/assets/{domains-D3QF404Q.js → domains-CIIVdIa8.js} +0 -0
  406. /package/dist/assets/{emoji-catalog-data-D8lRMt3A.js → emoji-catalog-data-BNtUmdK0.js} +0 -0
  407. /package/dist/assets/{environment-store-C0f32873.js → environment-store-R_3zZFKL.js} +0 -0
  408. /package/dist/assets/{format-date-CghpPTDc.js → format-date-Cda44k2J.js} +0 -0
  409. /package/dist/assets/{format-file-size-DzVEncaw.js → format-file-size-BSrdQr7P.js} +0 -0
  410. /package/dist/assets/{native-deep-link-CJGNy9bj.js → native-deep-link-CbHUZ2h_.js} +0 -0
  411. /package/dist/assets/{onboarding-step-layout-2XcmxqFN.js → onboarding-step-layout-BfSOxqy3.js} +0 -0
  412. /package/dist/assets/{optimistic-lifecycle-BvfDBY8o.js → optimistic-lifecycle-CR11Vyrt.js} +0 -0
  413. /package/dist/assets/{pdf-C3Qukw-J.js → pdf-BjgNZTii.js} +0 -0
  414. /package/dist/assets/{pointer-Cdz7NGHe.js → pointer-CzC_8USk.js} +0 -0
  415. /package/dist/assets/{prechat-P1y7ZM6C.js → prechat-Ddpjms85.js} +0 -0
  416. /package/dist/assets/{prechat-names-clVy5Mee.js → prechat-names-DEWE0LUf.js} +0 -0
  417. /package/dist/assets/{proxy-o6cPThl2.js → proxy-Cadlowdl.js} +0 -0
  418. /package/dist/assets/{public-asset-GKv5zCfZ.js → public-asset-Budc22a_.js} +0 -0
  419. /package/dist/assets/{research-onboarding-persistence-DnuHyFyB.js → research-onboarding-persistence-BmACYjeE.js} +0 -0
  420. /package/dist/assets/{sdk.gen-BhtkuoSl.js → sdk.gen-C9oZyNeN.js} +0 -0
  421. /package/dist/assets/{status-badge-pill-0N6rTEBg.js → status-badge-pill-DQHLgr0r.js} +0 -0
  422. /package/dist/assets/{step-indicator-dots-D03TmFKG.js → step-indicator-dots-iS_Q2OX6.js} +0 -0
  423. /package/dist/assets/{three-dot-indicator-DNuHHwtA.js → three-dot-indicator-ByrGmGYU.js} +0 -0
  424. /package/dist/assets/{typed-storage-5IU6qVWg.js → typed-storage-BRvgA7pX.js} +0 -0
  425. /package/dist/assets/{use-copy-to-clipboard-BCTXSMa-.js → use-copy-to-clipboard-CtO2o7KE.js} +0 -0
  426. /package/dist/assets/{workflow-status-ZrbiLW5D.js → workflow-status-4RYJ-tdh.js} +0 -0
  427. /package/dist/assets/{xterm-CBmd_y-b.js → xterm-ChjrCiYv.js} +0 -0
  428. /package/dist/assets/{xterm-addon-fit-THPW0uy0.js → xterm-addon-fit-D_4nBxep.js} +0 -0
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{r as t,s as n}from"./local-settings-lVNyIOJ_.js";import{t as r}from"./capture-error-Dhiismgm.js";import{t as i}from"./react-DJZBPgpf.js";import{t as a}from"./button-BQVYX8n_.js";import{m as o,u as s}from"./chunk-5KNZJZUH-SU6Q_tDT.js";import{N as c,O as l,S as u,T as d,c as f,n as p}from"./QueryClientProvider-DKhXIxGb.js";import{a as m,c as h,d as g,i as _,l as v,o as y,r as b,s as x,t as S,u as C}from"./useQuery-B45lW1Kk.js";import{t as w}from"./jsx-runtime-CVSDxk6A.js";import{t as T}from"./card-D8zyWtZh.js";import{t as E}from"./createLucideIcon-Bjb-Kuq7.js";import{t as D}from"./check-wF3S-AV4.js";import{t as O}from"./chevron-down-DpYf9Gwq.js";import{t as k}from"./chevron-right-jRymmL7S.js";import{t as A}from"./circle-alert-CTnM6GCb.js";import{t as j}from"./circle-check-DqvTjWle.js";import{n as M,o as N,t as P}from"./list-row-B9k-FoZv.js";import{t as F}from"./external-link-Cczz6xJ4.js";import{t as I}from"./key-round-BggUE1Ns.js";import{t as L}from"./loader-circle-C9QrtO3C.js";import{t as R}from"./log-in-Xv-AVlu8.js";import{t as z}from"./pencil-BOTCmXXR.js";import{t as B}from"./plus-D54jrPDF.js";import{t as ee}from"./refresh-cw-BkscUrbN.js";import{t as te}from"./sparkles-BK3KXCjl.js";import{t as ne}from"./x-BYcSiJRX.js";import{t as re}from"./notice-BiZA71pR.js";import{t as V}from"./popover-rW459udD.js";import{t as H}from"./input-6HVXMszw.js";import{t as ie}from"./toggle-CWrJ2t4S.js";import{t as U}from"./modal-bIQsMU63.js";import{n as W,t as ae}from"./panel-item-CfuwAm7q.js";import{n as G}from"./toast-B5Hr1kIL.js";import{t as K}from"./confirm-dialog-kE8y7s20.js";import{Rr as q}from"./sdk.gen-CFgJ4K6f.js";import{$ as oe,$t as se,Q as ce,Qt as le,Z as ue,en as de,et as fe,nt as pe,tn as me,tt as he}from"./react-query.gen-JxTd3SS8.js";import{r as ge}from"./api-errors-CrWDzVca.js";import{S as _e}from"./auth-store-Ce9wqr8c.js";import{r as ve}from"./api-BsCfy4XV.js";import{m as ye}from"./native-biometric-BvCjSInu.js";import{c as be}from"./routes-Bzvx8bnp.js";import{n as xe,t as Se}from"./browser-CUdEL48R.js";import{Ct as Ce,S as we,St as Te,b as J,x as Ee}from"./react-query.gen-DjmYXavs.js";import{t as De}from"./assistant-feature-flag-store-eHqy0FOb.js";import{$t as Oe,Bt as Y,Cr as ke,D as Ae,Gr as je,Jt as Me,Ki as Ne,Pi as Pe,Ur as Fe,Xt as Ie,Yt as Le,Zt as Re,_a as ze,bi as X,en as Be,ji as Ve,qt as He,tn as Ue,wr as We}from"./index-31nbLUeS.js";import{t as Ge}from"./use-active-assistant-id-KipCgPNT.js";function Ke(e,t){let n=new Set(t);return e.filter(e=>!n.has(e))}function qe(e,t,n){let r=e.slice(0);return r[t]=n,r}var Je=class extends c{#e;#t;#n;#r;#i;#a;#o;#s;#c;#l=[];constructor(e,t,n){super(),this.#e=e,this.#r=n,this.#n=[],this.#i=[],this.#t=[],this.setQueries(t)}onSubscribe(){this.listeners.size===1&&this.#i.forEach(e=>{e.subscribe(t=>{this.#p(e,t)})})}onUnsubscribe(){this.listeners.size||this.destroy()}destroy(){this.listeners=new Set,this.#i.forEach(e=>{e.destroy()})}setQueries(e,t){this.#n=e,this.#r=t,f.batch(()=>{let e=this.#i,t=this.#f(this.#n);t.forEach(e=>e.observer.setOptions(e.defaultedQueryOptions));let n=t.map(e=>e.observer),r=n.map(e=>e.getCurrentResult()),i=e.length!==n.length,a=n.some((t,n)=>t!==e[n]),o=i||a,s=o?!0:r.some((e,t)=>{let n=this.#t[t];return!n||!l(e,n)});!o&&!s||(o&&(this.#l=t,this.#i=n),this.#t=r,this.hasListeners()&&(o&&(Ke(e,n).forEach(e=>{e.destroy()}),Ke(n,e).forEach(e=>{e.subscribe(t=>{this.#p(e,t)})})),this.#m()))})}getCurrentResult(){return this.#t}getQueries(){return this.#i.map(e=>e.getCurrentQuery())}getObservers(){return this.#i}getOptimisticResult(e,t){let n=this.#f(e),r=n.map(e=>e.observer.getOptimisticResult(e.defaultedQueryOptions)),i=n.map(e=>e.defaultedQueryOptions.queryHash);return[r,e=>this.#d(e??r,t,i),()=>this.#u(r,n)]}#u(e,t){return t.map((n,r)=>{let i=e[r];return n.defaultedQueryOptions.notifyOnChangeProps?i:n.observer.trackResult(i,e=>{t.forEach(t=>{t.observer.trackProp(e)})})})}#d(e,t,n){if(t){let r=this.#c,i=n!==void 0&&r!==void 0&&(r.length!==n.length||n.some((e,t)=>e!==r[t]));return(!this.#a||this.#t!==this.#s||i||t!==this.#o)&&(this.#o=t,this.#s=this.#t,n!==void 0&&(this.#c=n),this.#a=d(this.#a,t(e))),this.#a}return e}#f(e){let t=new Map;this.#i.forEach(e=>{let n=e.options.queryHash;if(!n)return;let r=t.get(n);r?r.push(e):t.set(n,[e])});let n=[];return e.forEach(e=>{let r=this.#e.defaultQueryOptions(e),i=t.get(r.queryHash)?.shift()??new g(this.#e,r);n.push({defaultedQueryOptions:r,observer:i})}),n}#p(e,t){let n=this.#i.indexOf(e);n!==-1&&(this.#t=qe(this.#t,n,t),this.#m())}#m(){if(this.hasListeners()){let e=this.#a,t=this.#u(this.#t,this.#l);e!==this.#d(t,this.#r?.combine)&&f.batch(()=>{this.listeners.forEach(e=>{e(this.#t)})})}}},Z=e(i(),1);function Ye({queries:e,...t},n){let r=p(n),i=C(),a=v(),o=Z.useMemo(()=>e.map(e=>{let t=r.defaultQueryOptions(e);return t._optimisticResults=i?`isRestoring`:`optimistic`,t}),[e,r,i]);o.forEach(e=>{b(e),y(e,a,r.getQueryCache().get(e.queryHash))}),h(a);let[s]=Z.useState(()=>new Je(r,o,t)),[c,l,d]=s.getOptimisticResult(o,t.combine),S=!i&&t.subscribed!==!1;Z.useSyncExternalStore(Z.useCallback(e=>S?s.subscribe(f.batchCalls(e)):u,[s,S]),()=>s.getCurrentResult(),()=>s.getCurrentResult()),Z.useEffect(()=>{s.setQueries(o,t)},[o,t,s]);let w=c.some((e,t)=>m(o[t],e))?c.flatMap((e,t)=>{let n=o[t];return n&&m(n,e)?_(n,new g(r,n),a):[]}):[];if(w.length>0)throw Promise.all(w);let T=c.find((e,t)=>{let n=o[t];return n&&x({result:e,errorResetBoundary:a,throwOnError:n.throwOnError,query:r.getQueryCache().get(n.queryHash),suspense:n.suspense})});if(T?.error)throw T.error;return l(d())}var Xe=E(`cable`,[[`path`,{d:`M17 19a1 1 0 0 1-1-1v-2a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v2a1 1 0 0 1-1 1z`,key:`trhst0`}],[`path`,{d:`M17 21v-2`,key:`ds4u3f`}],[`path`,{d:`M19 14V6.5a1 1 0 0 0-7 0v11a1 1 0 0 1-7 0V10`,key:`1mo9zo`}],[`path`,{d:`M21 21v-2`,key:`eo0ou`}],[`path`,{d:`M3 5V3`,key:`1k5hjh`}],[`path`,{d:`M4 10a2 2 0 0 1-2-2V6a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2a2 2 0 0 1-2 2z`,key:`1dd30t`}],[`path`,{d:`M7 5V3`,key:`1t1388`}]]),Ze=E(`calendar-plus`,[[`path`,{d:`M16 19h6`,key:`xwg31i`}],[`path`,{d:`M16 2v4`,key:`4m81vk`}],[`path`,{d:`M19 16v6`,key:`tddt3s`}],[`path`,{d:`M21 12.598V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8.5`,key:`1glfrc`}],[`path`,{d:`M3 10h18`,key:`8toen8`}],[`path`,{d:`M8 2v4`,key:`1cmpym`}]]);function Qe({assistantId:e,providerKey:t,displayName:n,managedAvailable:r,connectionsQueryKey:i,allConnections:a}){let o=p(),s=ye(),c=(0,Z.useRef)(null),l=(0,Z.useRef)(null),u=(0,Z.useRef)(null),d=(0,Z.useRef)(null),[f,m]=(0,Z.useState)(!1),h=()=>{l.current=null,m(!1)},g=()=>{c.current&&!c.current.closed&&c.current.close(),c.current=null,u.current&&=(clearInterval(u.current),null),d.current&&=(clearTimeout(d.current),null)},_=(0,Z.useCallback)(e=>{if(e.type!==`vellum:oauth-complete`||!l.current||e.requestId!==l.current.requestId)return;let{oauthStatus:t,oauthCode:r}=e;if(g(),h(),t===`connected`)G.success(`${n} account connected.`),o.invalidateQueries({queryKey:i});else{let e=r?`Error: ${r}`:`Authorization failed`;G.error(`${n} ${e}`)}},[i,n,o]),v=(0,Z.useCallback)(async(e,n)=>{if(!r)return!1;for(let r=0;r<8;r+=1){r>0&&await Le(750);try{if(o.invalidateQueries({queryKey:i}),Me(await o.fetchQuery({...J({path:{assistant_id:e}}),staleTime:0}),t,n))return!0}catch{}}return!1},[i,r,t,o]);(0,Z.useEffect)(()=>{let e=e=>{let t=l.current;if(!t)return;let n=Ie(e,window.location.origin,t.requestId);n&&_(n)},t=e=>{let t=l.current;if(!t)return;let n=Re(e,t.requestId);n&&(_(n),window.localStorage.removeItem(Oe(t.requestId)))};return window.addEventListener(`message`,e),window.addEventListener(`storage`,t),()=>{window.removeEventListener(`message`,e),window.removeEventListener(`storage`,t)}},[_]),Ue((0,Z.useCallback)(e=>{let t=l.current;t&&e.requestId===t.requestId&&_({type:`vellum:oauth-complete`,requestId:e.requestId,oauthStatus:e.oauthStatus,oauthProvider:e.oauthProvider,oauthCode:e.oauthCode})},[_])),(0,Z.useEffect)(()=>xe(()=>{let e=l.current;e&&(async()=>{let t=await v(e.platformAssistantId,e.baselineConnectionSignatures);l.current&&(h(),t&&G.success(`${n} account connected.`))})()}),[v,n]),(0,Z.useEffect)(()=>()=>{u.current&&clearInterval(u.current),d.current&&clearTimeout(d.current),c.current&&!c.current.closed&&c.current.close()},[]);let y=Ce();return{handleConnect:(i=[])=>{if(!r)return;let f=crypto.randomUUID();m(!0);let p=async r=>{let c;try{c=await _e(e)}catch(e){g(),h(),G.error(e instanceof Error?e.message:`Failed to start ${n} authorization.`);return}let u=He(await o.fetchQuery({...J({path:{assistant_id:c}}),staleTime:0}).catch(()=>c===e?a??[]:[]),t);l.current={requestId:f,provider:t,platformAssistantId:c,baselineConnectionSignatures:u},y.mutate({path:{assistant_id:c,provider:t},body:{requested_scopes:i,redirect_after_connect:`${be.account.oauth.popupComplete}?requestId=${f}${s?`&native=1`:``}`}},{onSuccess(e){if(s){Se(e.connect_url);return}r&&!r.closed?r.location.href=e.connect_url:l.current&&(g(),h(),G.error(`${n} connection failed: popup closed.`))},onError(e){g(),h();let t=ge(e,void 0,`Failed to start ${n} authorization.`);G.error(t)}})};if(s){p(null);return}let b=window.open(``,`_blank`,`width=500,height=600`);if(b===null){h(),G.error(`Popup blocked. Please enable popups and try again.`);return}c.current=b,u.current=setInterval(()=>{c.current&&c.current.closed&&l.current&&!d.current&&(d.current=setTimeout(async()=>{d.current=null;let e=l.current;if(!e)return;let t=window.localStorage.getItem(Oe(e.requestId));if(t){let n=Be(t);if(n&&n.requestId===e.requestId){_(n),window.localStorage.removeItem(Oe(e.requestId));return}}let r=await v(e.platformAssistantId,e.baselineConnectionSignatures);if(l.current){if(r){g(),h(),G.success(`${n} account connected.`);return}g(),h(),G.error(`${n} connection failed: authorization popup closed.`)}},1e3))},100),p(b)},oauthInProgress:f,startOAuthPending:y.isPending}}var Q=w();function $e({displayName:e,providerKey:t,logoUrl:n,connections:r,connectionsLoading:i,startPending:o,oauthInProgress:s,disconnectingId:c,onConnect:l,onDisconnect:u,connectPresets:d=[]}){let f=o||s;return i?(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,Q.jsx)(L,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):r.length===0?o||s?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,Q.jsx)(Y,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(L,{className:`h-3.5 w-3.5 animate-spin`}),`Waiting for authorization...`]})]}):(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,Q.jsx)(Y,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-secondary)]`,children:`Connect Account to continue`}),(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-2`,children:[(0,Q.jsx)(a,{variant:`primary`,size:`compact`,leftIcon:(0,Q.jsx)(B,{}),onClick:()=>l(),disabled:f,children:`Connect Account`}),d.map(e=>(0,Q.jsx)(a,{variant:`outlined`,size:`compact`,leftIcon:(0,Q.jsx)(Ze,{}),onClick:()=>l(e.scopes),disabled:f,children:e.label},e.id))]})]}):(0,Q.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)]`,children:[(0,Q.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)]`,children:r.map(r=>{let i=c===r.id;return(0,Q.jsxs)(`li`,{className:`flex items-center gap-3 px-4 py-3`,children:[(0,Q.jsx)(Y,{providerKey:t,displayName:e,logoUrl:n,size:20}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:r.account_label??`${e} Account`}),(0,Q.jsx)(a,{variant:`dangerOutline`,size:`compact`,iconOnly:i?(0,Q.jsx)(L,{className:`animate-spin`}):(0,Q.jsx)(X,{}),onClick:()=>u(r),disabled:i,"aria-label":`Disconnect ${r.account_label??`${e} account`}`})]},r.id)})}),(0,Q.jsx)(`div`,{className:`border-t border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:f?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(L,{className:`h-3.5 w-3.5 animate-spin`}),`Waiting for authorization...`]}):(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Q.jsx)(a,{variant:`primary`,size:`compact`,leftIcon:(0,Q.jsx)(F,{}),onClick:()=>l(),disabled:f,children:`Connect account`}),d.map(e=>(0,Q.jsx)(a,{variant:`outlined`,size:`compact`,leftIcon:(0,Q.jsx)(Ze,{}),onClick:()=>l(e.scopes),disabled:f,children:e.label},e.id))]})})]})}function et(e){return e.length>16?`${e.slice(0,12)}…${e.slice(-4)}`:e.length>8?`${e.slice(0,8)}…`:e}function tt(e){try{return new Date(e).toLocaleDateString(void 0,{year:`numeric`,month:`short`,day:`numeric`})}catch{return``}}function nt({assistantId:e,providerKey:t,displayName:n,logoUrl:r}){let i=p(),o=S({...oe({path:{assistant_id:e},query:{provider_key:t}}),select:e=>e.apps}),s=S({...he({path:{assistant_id:e,providerKey:t}}),select:e=>e.oauth_callback_url}),c=o.data??[],l=s.data??null,u=Ye({queries:c.map(t=>({...ue({path:{assistant_id:e,appId:t.id}}),select:e=>e.connections}))}),d={};c.forEach((e,t)=>{d[e.id]=u[t]?.data??[]});let f=fe({path:{assistant_id:e},query:{provider_key:t}}),m=de({onSuccess:()=>{i.invalidateQueries({queryKey:f}),x(``),w(``),y(!1),G.success(`${n} OAuth app added.`)},onError:e=>{G.error(e.message||`Failed to create OAuth app`)}}),h=se({onSuccess:()=>{i.invalidateQueries({queryKey:f}),G.success(`OAuth app deleted.`)},onError:e=>{G.error(e.message||`Failed to delete OAuth app`)}}),g=le({onSuccess:e=>{`auth_url`in e&&(window.location.href=e.auth_url)},onError:e=>{G.error(e.message||`Failed to start OAuth flow`)}}),_=me(),[v,y]=(0,Z.useState)(!1),[b,x]=(0,Z.useState)(``),[C,w]=(0,Z.useState)(``),[E,O]=(0,Z.useState)(!1),[k,A]=(0,Z.useState)(null),[j,M]=(0,Z.useState)(null),P=m.isPending,I=h.isPending?h.variables?.path?.id??null:null,R=g.isPending?g.variables?.path?.appId??null:null,z=_.isPending?_.variables?.path?.id??null:null,ee=()=>{let n=b.trim(),r=C.trim();!n||!r||m.mutate({path:{assistant_id:e},body:{provider_key:t,client_id:n,client_secret:r}})},te=()=>{let t=k;A(null),t&&h.mutate({path:{assistant_id:e,id:t.id}})},ne=t=>{g.mutate({path:{assistant_id:e,appId:t.id},body:{callback_transport:`gateway`,scopes:[]}})};return o.isLoading?(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,Q.jsx)(L,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[c.length===0||v?(0,Q.jsx)(T.Root,{children:(0,Q.jsxs)(T.Body,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`space-y-1`,children:[(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:c.length===0?`Add your own ${n} OAuth app`:`Add another ${n} OAuth app`}),(0,Q.jsx)(`p`,{className:`text-body-small-default leading-relaxed text-[var(--content-tertiary)]`,children:`Credentials are stored encrypted on the assistant and are never sent to Vellum.`})]}),l?(0,Q.jsxs)(`div`,{className:`space-y-1`,children:[(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Redirect URL`}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(H,{type:`text`,value:l,readOnly:!0,fullWidth:!0}),(0,Q.jsx)(a,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{navigator.clipboard.writeText(l).then(()=>{O(!0),G.success(`Copied to clipboard!`),setTimeout(()=>O(!1),2e3)})},"aria-label":E?`Copied`:`Copy redirect URL`,iconOnly:E?(0,Q.jsx)(D,{"aria-hidden":!0}):(0,Q.jsx)(N,{"aria-hidden":!0})})]}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Add this URL to your OAuth app's redirect settings.`})]}):null,(0,Q.jsx)(H,{label:`Client ID`,type:`text`,value:b,onChange:e=>x(e.target.value),placeholder:`Enter your client ID`,fullWidth:!0}),(0,Q.jsx)(H,{label:`Client Secret`,type:`password`,value:C,onChange:e=>w(e.target.value),placeholder:`Enter your client secret`,fullWidth:!0}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-end gap-2 pt-1`,children:[c.length>0?(0,Q.jsx)(a,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{y(!1),x(``),w(``)},disabled:P,children:`Cancel`}):null,(0,Q.jsx)(a,{type:`button`,size:`compact`,onClick:ee,disabled:P||!b.trim()||!C.trim(),leftIcon:P?(0,Q.jsx)(L,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(B,{"aria-hidden":!0}),children:`Add App`})]})]})}):null,c.map(e=>{let i=d[e.id]??[],o=I===e.id,s=R===e.id;return(0,Q.jsx)(T.Root,{children:(0,Q.jsxs)(T.Body,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 space-y-0.5`,children:[(0,Q.jsx)(`p`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:et(e.client_id)}),(0,Q.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[`Added `,tt(e.created_at)]})]}),(0,Q.jsx)(a,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>A(e),disabled:o,"aria-label":`Delete OAuth app ${et(e.client_id)}`,iconOnly:o?(0,Q.jsx)(L,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(X,{"aria-hidden":!0})})]}),i.length>0?(0,Q.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)] overflow-hidden rounded-md border border-[var(--border-base)] dark:divide-[var(--border-base)] dark:border-[var(--border-base)]`,children:i.map(i=>{let o=z===i.id;return(0,Q.jsxs)(`li`,{className:`flex items-center gap-3 px-3 py-2`,children:[(0,Q.jsx)(Y,{providerKey:t,displayName:n,logoUrl:r,size:18}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-lighter text-[var(--content-default)]`,children:i.account_info??`${n} Account`}),(0,Q.jsx)(a,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>M({appId:e.id,connection:i}),disabled:o,"aria-label":`Disconnect ${i.account_info??`${n} account`}`,iconOnly:o?(0,Q.jsx)(L,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(X,{"aria-hidden":!0})})]},i.id)})}):null,(0,Q.jsx)(a,{type:`button`,size:`compact`,onClick:()=>ne(e),disabled:s,className:`w-full`,leftIcon:s?(0,Q.jsx)(L,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(F,{"aria-hidden":!0}),children:s?`Waiting for authorization...`:`Connect account`})]})},e.id)}),c.length>0&&!v?(0,Q.jsx)(a,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>y(!0),className:`w-full border-dashed`,leftIcon:(0,Q.jsx)(B,{"aria-hidden":!0}),children:`Add Another App`}):null,(0,Q.jsx)(K,{open:k!==null,title:`Delete OAuth app`,message:k?`Delete OAuth app '${et(k.client_id)}'? This will disconnect all linked accounts.`:``,confirmLabel:`Delete`,destructive:!0,onConfirm:te,onCancel:()=>A(null)}),(0,Q.jsx)(K,{open:j!==null,title:`Disconnect ${n}?`,message:j?`Disconnect ${j.connection.account_info??`${n} Account`}? You can reconnect later.`:``,confirmLabel:`Disconnect`,destructive:!0,onConfirm:()=>{let t=j;M(null),t&&_.mutate({path:{assistant_id:e,id:t.connection.id}},{onSuccess:()=>{let r=ce({path:{assistant_id:e,appId:t.appId}});i.invalidateQueries({queryKey:r}),i.invalidateQueries({queryKey:f}),G.success(`${n} account disconnected.`)},onError:e=>{G.error(e.message||`Failed to disconnect account`)}})},onCancel:()=>M(null)})]})}var rt={};function it(e){return rt[e]??[]}function at({assistantId:e,platformAssistantId:t,providerKey:n,displayName:r,description:i,logoUrl:o,platformGate:s,onClose:c}){let l=p(),u=s===`full`,d=!Fe(),[f,m]=(0,Z.useState)(s===`gated`&&d?`your-own`:`managed`);(0,Z.useEffect)(()=>{!d&&f===`your-own`&&m(`managed`)},[d,f]);let[h,g]=(0,Z.useState)(null),[_,v]=(0,Z.useState)(null),y=Ee({path:{assistant_id:t}}),{data:b,isLoading:x}=S({...J({path:{assistant_id:t}}),enabled:u}),C=(b??[]).filter(e=>e.provider===n&&e.connected),{handleConnect:w,oauthInProgress:T,startOAuthPending:E}=Qe({assistantId:e,providerKey:n,displayName:r,managedAvailable:u,connectionsQueryKey:y,allConnections:b}),D={path:{assistant_id:t}},O=Te({onSuccess(e,t){G.success(`${r} account disconnected.`);let n=t.path.connection_id;we(l,D,e=>e?.filter(e=>e.id!==n)),l.invalidateQueries({queryKey:y}),g(null)},onError(e){let t=ge(e,void 0,`Failed to disconnect ${r} account.`);G.error(t),g(null)}});(0,Z.useEffect)(()=>{let e=e=>{e.key===`Escape`&&c()};document.addEventListener(`keydown`,e);let t=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.removeEventListener(`keydown`,e),document.body.style.overflow=t}},[c]);let k=e=>{v(e)},A=()=>{let e=_;v(null),e&&(g(e.id),O.mutate({path:{assistant_id:t,connection_id:e.id}}))},j=i?`Configure ${r} OAuth for ${i}`:`Configure ${r} OAuth`;return(0,Q.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4`,children:[(0,Q.jsxs)(`div`,{role:`dialog`,"aria-modal":`true`,"aria-labelledby":`integration-modal-title`,className:`flex w-full max-w-[520px] flex-col overflow-hidden rounded-xl bg-white shadow-xl dark:bg-[var(--surface-lift)]`,children:[(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border-b border-[var(--border-base)] px-5 py-4 dark:border-[var(--border-base)]`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(Y,{providerKey:n,displayName:r,logoUrl:o,size:32}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsxs)(`h2`,{id:`integration-modal-title`,className:`text-title-small text-[var(--content-default)]`,children:[r,` OAuth`]}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:j})]})]}),(0,Q.jsx)(a,{variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(ne,{}),"aria-label":`Close`,onClick:c})]}),(0,Q.jsxs)(`div`,{className:`space-y-4 px-5 py-4`,children:[s!==`gated`&&d&&(0,Q.jsxs)(`div`,{role:`tablist`,"aria-label":`OAuth mode`,className:`flex w-full rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] p-0.5 dark:border-[var(--border-base)] dark:bg-[var(--surface-base)]/40`,children:[(0,Q.jsx)(ot,{active:f===`managed`,onClick:()=>m(`managed`),children:`Managed`}),(0,Q.jsx)(ot,{active:f===`your-own`,onClick:()=>m(`your-own`),children:`Your Own`})]}),f===`managed`&&s!==`gated`?s===`disabled`?(0,Q.jsx)(Ae,{children:`Log in to the Vellum platform to manage OAuth connections.`}):(0,Q.jsx)($e,{displayName:r,providerKey:n,logoUrl:o,connections:C,connectionsLoading:x,startPending:E,oauthInProgress:T,disconnectingId:O.isPending?h:null,onConnect:w,onDisconnect:k,connectPresets:it(n)}):d?(0,Q.jsx)(nt,{assistantId:e,providerKey:n,displayName:r,logoUrl:o}):null]}),(0,Q.jsx)(`div`,{className:`flex justify-end border-t border-[var(--border-base)] px-5 py-3 dark:border-[var(--border-base)]`,children:(0,Q.jsx)(a,{variant:`outlined`,size:`compact`,onClick:c,children:`Confirm`})})]}),(0,Q.jsx)(K,{open:_!==null,title:`Disconnect ${r}?`,message:_?`Disconnect ${_.account_label??`${r} Account`}? You can reconnect later.`:``,confirmLabel:`Disconnect`,destructive:!0,onConfirm:A,onCancel:()=>v(null)})]})}function ot({active:e,onClick:t,children:n}){return(0,Q.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e,onClick:t,className:`flex-1 cursor-pointer rounded-[5px] px-3 py-1.5 text-body-medium-default transition-colors ${e?`bg-white text-[var(--content-default)] shadow-sm dark:bg-[var(--surface-lift)] dark:text-[var(--content-default)]`:`text-[var(--content-secondary)] hover:text-[var(--content-default)] dark:text-[var(--content-disabled)] dark:hover:text-[var(--content-default)]`}`,children:n})}function st({platformAssistantId:e,providerKey:t,displayName:n,description:r,logoUrl:i,connection:o,platformGate:s,onConfigure:c}){let l=p(),u=!!o?.connected,[d,f]=(0,Z.useState)(!1),[m,h]=(0,Z.useState)(!1),g=ke(),_=Ee({path:{assistant_id:e}}),v={path:{assistant_id:e}},y=Te({onSuccess(e,t){G.success(`${n} account disconnected.`);let r=t.path.connection_id;we(l,v,e=>e?.filter(e=>e.id!==r)),l.invalidateQueries({queryKey:_})},onError(e){let t=ge(e,void 0,`Failed to disconnect ${n} account.`);G.error(t)}}),b=()=>{o?.id&&h(!0)};return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(T.Root,{children:(0,Q.jsxs)(T.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,Q.jsx)(Y,{providerKey:t,displayName:n,logoUrl:i,size:32}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:n}),r&&(0,Q.jsx)(`p`,{className:`truncate text-body-medium-lighter text-[var(--content-tertiary)]`,children:r})]}),u&&s===`full`?(0,Q.jsx)(`div`,{className:`shrink-0`,children:(0,Q.jsx)(ct,{displayName:n,open:d,onOpenChange:f,onEditConnections:()=>{f(!1),c()},onDisable:()=>{f(!1),b()},disablePending:y.isPending,isMobile:g})}):(0,Q.jsx)(a,{variant:`primary`,onClick:c,className:`shrink-0`,children:`Enable`})]})}),(0,Q.jsx)(K,{open:m,title:`Disconnect ${n}?`,message:`Disconnect your ${n} account? You can reconnect it later.`,confirmLabel:`Disconnect`,destructive:!0,onConfirm:()=>{h(!1),o?.id&&y.mutate({path:{assistant_id:e,connection_id:o.id}})},onCancel:()=>h(!1)})]})}function ct({displayName:e,open:t,onOpenChange:n,onEditConnections:r,onDisable:i,disablePending:o,isMobile:s}){return s?(0,Q.jsxs)(W.Root,{open:t,onOpenChange:n,children:[(0,Q.jsx)(W.Trigger,{asChild:!0,children:(0,Q.jsx)(a,{variant:`outlined`,rightIcon:(0,Q.jsx)(O,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:`Configure`})}),(0,Q.jsxs)(W.Content,{children:[(0,Q.jsx)(W.Header,{children:(0,Q.jsx)(W.Title,{children:e})}),(0,Q.jsxs)(W.Body,{children:[(0,Q.jsx)(ae,{icon:z,label:`Edit connections`,onSelect:r}),(0,Q.jsx)(ae,{icon:o?L:ze,label:`Disable`,onSelect:()=>{o||i()}})]})]})]}):(0,Q.jsxs)(V.Root,{open:t,onOpenChange:n,children:[(0,Q.jsx)(V.Trigger,{asChild:!0,children:(0,Q.jsx)(a,{variant:`outlined`,rightIcon:(0,Q.jsx)(O,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:`Configure`})}),(0,Q.jsxs)(V.Content,{align:`end`,sideOffset:4,role:`menu`,className:`w-56 overflow-hidden p-0`,children:[(0,Q.jsx)(a,{type:`button`,role:`menuitem`,variant:`ghost`,onClick:r,className:`w-full justify-start rounded-none`,leftIcon:(0,Q.jsx)(z,{"aria-hidden":!0}),children:`Edit connections`}),(0,Q.jsx)(a,{type:`button`,role:`menuitem`,variant:`dangerGhost`,onClick:i,disabled:o,className:`w-full justify-start rounded-none`,leftIcon:o?(0,Q.jsx)(L,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(ze,{"aria-hidden":!0}),children:`Disable`})]})]})}var lt=[{value:`none`,label:`None`},{value:`oauth`,label:`OAuth`},{value:`bearer`,label:`Bearer Token`},{value:`api-key`,label:`API Key`}],ut=[{value:`sse`,label:`SSE`},{value:`streamable-http`,label:`Streamable HTTP`},{value:`stdio`,label:`Stdio (command)`}];function dt({open:e,onClose:t,onAdd:n,isPending:r}){let[i,o]=(0,Z.useState)(``),[s,c]=(0,Z.useState)(`sse`),[l,u]=(0,Z.useState)(``),[d,f]=(0,Z.useState)(``),[p,m]=(0,Z.useState)(``),[h,g]=(0,Z.useState)(`none`),[_,v]=(0,Z.useState)(``),[y,b]=(0,Z.useState)(`X-API-Key`),[x,S]=(0,Z.useState)(``),C=(0,Z.useCallback)(()=>{o(``),c(`sse`),u(``),f(``),m(``),g(`none`),v(``),b(`X-API-Key`),S(``)},[]),w=(0,Z.useCallback)(()=>{r||(C(),t())},[r,C,t]),T=(0,Z.useCallback)(()=>{let e=i.trim();if(!e)return;let t={name:e,transportType:s};if(s===`stdio`){let e=d.trim();if(!e)return;t.command=e;let n=p.trim();n&&(t.args=n.split(/\s+/))}else{let e=l.trim();if(!e)return;t.url=e,h===`bearer`&&_.trim()?t.headers={Authorization:`Bearer ${_.trim()}`}:h===`api-key`&&y.trim()&&x.trim()?t.headers={[y.trim()]:x.trim()}:h===`oauth`&&(t.autoAuth=!0)}n(t)},[i,s,l,d,p,h,_,y,x,n]),E=s===`stdio`,D=i.trim()&&(E?d.trim():l.trim());return(0,Q.jsx)(U.Root,{open:e,onOpenChange:e=>{e||w()},children:(0,Q.jsxs)(U.Content,{size:`md`,children:[(0,Q.jsxs)(U.Header,{children:[(0,Q.jsx)(U.Title,{icon:Xe,children:`Add MCP Server`}),(0,Q.jsx)(U.Description,{children:`Connect to a Model Context Protocol server to extend available tools.`})]}),(0,Q.jsx)(U.Body,{children:(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-name`,children:`Server name`}),(0,Q.jsx)(H,{id:`mcp-name`,type:`text`,value:i,onChange:e=>o(e.target.value),placeholder:`my-server`,fullWidth:!0,autoFocus:!0})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-transport`,children:`Transport`}),(0,Q.jsx)(`select`,{id:`mcp-transport`,value:s,onChange:e=>c(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:ut.map(e=>(0,Q.jsx)(`option`,{value:e.value,children:e.label},e.value))})]}),E?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-command`,children:`Command`}),(0,Q.jsx)(H,{id:`mcp-command`,type:`text`,value:d,onChange:e=>f(e.target.value),placeholder:`npx -y @modelcontextprotocol/server-example`,fullWidth:!0})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-args`,children:`Arguments (space-separated)`}),(0,Q.jsx)(H,{id:`mcp-args`,type:`text`,value:p,onChange:e=>m(e.target.value),placeholder:`--port 3000`,fullWidth:!0})]})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-url`,children:`Server URL`}),(0,Q.jsx)(H,{id:`mcp-url`,type:`url`,value:l,onChange:e=>u(e.target.value),placeholder:`https://example.com/mcp`,fullWidth:!0})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-auth`,children:`Authentication`}),(0,Q.jsx)(`select`,{id:`mcp-auth`,value:h,onChange:e=>g(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:lt.map(e=>(0,Q.jsx)(`option`,{value:e.value,children:e.label},e.value))})]}),h===`oauth`?(0,Q.jsx)(`p`,{className:`rounded-md border border-[var(--border-element)] bg-[var(--surface-base)] px-3 py-2 text-body-small-default text-[var(--content-tertiary)]`,children:`OAuth credentials will be configured through a browser-based authorization flow after the server is added.`}):null,h===`bearer`?(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-bearer`,children:`Bearer token`}),(0,Q.jsx)(H,{id:`mcp-bearer`,type:`password`,value:_,onChange:e=>v(e.target.value),placeholder:`tok_...`,fullWidth:!0})]}):null,h===`api-key`?(0,Q.jsxs)(`div`,{className:`flex gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-apikey-header`,children:`Header name`}),(0,Q.jsx)(H,{id:`mcp-apikey-header`,type:`text`,value:y,onChange:e=>b(e.target.value),placeholder:`X-API-Key`,fullWidth:!0})]}),(0,Q.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-apikey-value`,children:`API key`}),(0,Q.jsx)(H,{id:`mcp-apikey-value`,type:`password`,value:x,onChange:e=>S(e.target.value),placeholder:`sk_...`,fullWidth:!0})]})]}):null]})]})}),(0,Q.jsxs)(U.Footer,{children:[(0,Q.jsx)(a,{variant:`ghost`,onClick:w,disabled:r,children:`Cancel`}),(0,Q.jsx)(a,{variant:`primary`,onClick:T,disabled:!D||r,children:r?`Adding...`:`Add Server`})]})]})})}async function ft(e){let{data:t,response:n}=await q.get({url:`/v1/assistants/{assistant_id}/internal/mcp/list`,path:{assistant_id:e}});if(!n?.ok)throw Error(`Failed to fetch MCP servers: ${n?.status}`);return t}async function pt(e){let{data:t,response:n}=await q.get({url:`/v1/assistants/{assistant_id}/internal/mcp/tools-summary`,path:{assistant_id:e}});if(!n?.ok)throw Error(`Failed to fetch MCP tools summary: ${n?.status}`);return t}async function mt(e,t){let{response:n}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/update`,path:{assistant_id:e},body:t});if(!n?.ok)throw Error(`Failed to update MCP server: ${n?.status}`)}async function ht(e,t){let{response:n}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/add`,path:{assistant_id:e},body:t});if(!n?.ok)throw Error(`Failed to add MCP server: ${n?.status}`)}async function gt(e,t){let{response:n}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/remove`,path:{assistant_id:e},body:{name:t}});if(!n?.ok)throw Error(`Failed to remove MCP server: ${n?.status}`)}async function _t(e,t){let{data:n,response:r}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/auth/start`,path:{assistant_id:e},body:{serverId:t}});if(!r?.ok)throw Error(`Failed to start MCP auth: ${r?.status}`);return n}async function vt(e,t){let{data:n,response:r}=await q.get({url:`/v1/assistants/{assistant_id}/internal/mcp/auth/status/${encodeURIComponent(t)}`,path:{assistant_id:e}});if(!r?.ok)throw Error(`Failed to poll MCP auth status: ${r?.status}`);return n}async function yt(e,t){let{response:n}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/auth/revoke`,path:{assistant_id:e},body:{serverId:t}});if(!n?.ok)throw Error(`Failed to revoke OAuth for ${t}: ${n?.status}`)}async function bt(e){let{response:t}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/reload`,path:{assistant_id:e},body:{}});if(!t?.ok)throw Error(`Failed to reload MCP servers: ${t?.status}`)}var xt={connected:{icon:j,label:`Connected`,className:`text-[var(--system-positive-strong)]`},"needs-auth":{icon:I,label:`Needs Auth`,className:`text-[var(--system-warning-strong)]`},disabled:{icon:Pe,label:`Disabled`,className:`text-[var(--content-tertiary)]`}},St={icon:A,label:`Error`,className:`text-[var(--system-negative-strong)]`};function Ct({server:e,toolsSummary:t,onToggleEnabled:n,onRemove:r,onConfigure:i,onAuthenticate:o,onRevokeOAuth:s,isUpdating:c,isAuthenticating:l,isRevoking:u}){let[d,f]=(0,Z.useState)(!1),p=xt[e.status]??St,m=p.icon,h=(0,Z.useCallback)(t=>n(e.id,t),[n,e.id]),g=(0,Z.useCallback)(()=>r(e.id),[r,e.id]),_=(0,Z.useCallback)(()=>i(e.id),[i,e.id]),v=(0,Z.useCallback)(()=>o(e.id),[o,e.id]),y=(0,Z.useCallback)(()=>s(e.id),[s,e.id]),b=(0,Z.useCallback)(()=>f(e=>!e),[]);return(0,Q.jsx)(T.Root,{children:(0,Q.jsxs)(T.Body,{children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,Q.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,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.id}),(0,Q.jsxs)(`span`,{className:`flex items-center gap-1 text-label-medium-default ${p.className}`,children:[(0,Q.jsx)(m,{className:`h-3.5 w-3.5`}),p.label]}),e.hasOAuth?(0,Q.jsx)(`span`,{className:`rounded-full bg-[var(--surface-lift)] px-2 py-0.5 text-label-small-default text-[var(--content-secondary)]`,children:`OAuth`}):null]}),(0,Q.jsxs)(`div`,{className:`mt-0.5 flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(`span`,{children:e.transport.type}),t?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{"aria-hidden":`true`,children:`·`}),(0,Q.jsxs)(`span`,{children:[t.toolCount,` `,t.toolCount===1?`tool`:`tools`]}),(0,Q.jsx)(`span`,{"aria-hidden":`true`,children:`·`}),(0,Q.jsxs)(`span`,{children:[`~`,t.estimatedTokens.toLocaleString(),` tokens`]})]}):null]})]})}),(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[c||l?(0,Q.jsx)(L,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}):null,e.status===`needs-auth`&&e.transport.type!==`stdio`&&!e.hasOAuth?(0,Q.jsx)(a,{variant:`ghost`,size:`compact`,leftIcon:(0,Q.jsx)(R,{}),onClick:v,disabled:l,children:l?`Authenticating...`:`Authenticate`}):null,e.hasOAuth?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(a,{variant:`ghost`,size:`compact`,leftIcon:(0,Q.jsx)(ee,{}),onClick:v,disabled:l,tooltip:`Re-authenticate OAuth`,children:`Re-auth`}),(0,Q.jsx)(a,{variant:`dangerGhost`,size:`compact`,leftIcon:(0,Q.jsx)(Ne,{}),onClick:y,disabled:u,tooltip:`Revoke OAuth credentials`,children:u?`Revoking...`:`Revoke`})]}):null,(0,Q.jsx)(ie,{checked:e.enabled,onChange:h,disabled:c,"aria-label":`${e.enabled?`Disable`:`Enable`} ${e.id}`}),(0,Q.jsx)(a,{variant:`ghost`,size:`compact`,onClick:_,tooltip:`Configure`,children:`Configure`}),(0,Q.jsx)(a,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,Q.jsx)(X,{}),onClick:g,tooltip:`Remove server`,"aria-label":`Remove ${e.id}`})]})]}),t&&t.tools.length>0?(0,Q.jsxs)(`div`,{className:`mt-3 border-t border-[var(--border-base)] pt-2`,children:[(0,Q.jsxs)(`button`,{type:`button`,onClick:b,className:`flex w-full cursor-pointer items-center gap-1 text-body-small-default text-[var(--content-secondary)] hover:text-[var(--content-default)]`,children:[d?(0,Q.jsx)(O,{className:`h-3.5 w-3.5`}):(0,Q.jsx)(k,{className:`h-3.5 w-3.5`}),t.toolCount,` registered `,t.toolCount===1?`tool`:`tools`]}),d?(0,Q.jsx)(`div`,{className:`mt-2 max-h-60 overflow-y-auto`,children:t.tools.map(e=>(0,Q.jsx)(P,{title:e.name,subtitle:e.description||void 0,trailing:(0,Q.jsxs)(`span`,{className:`whitespace-nowrap text-body-small-default text-[var(--content-secondary)]`,children:[`~`,e.estimatedTokens.toLocaleString(),` tok`]})},e.name))}):null]}):null]})})}var wt=[{value:`none`,label:`None`},{value:`bearer`,label:`Bearer Token`},{value:`api-key`,label:`API Key`}],Tt=[`low`,`medium`,`high`];function Et({server:e,toolsSummary:t,onClose:n,onSave:r,isPending:i}){let[o,s]=(0,Z.useState)(`medium`),[c,l]=(0,Z.useState)(`none`),[u,d]=(0,Z.useState)(``),[f,p]=(0,Z.useState)(`X-API-Key`),[m,h]=(0,Z.useState)(``);(0,Z.useEffect)(()=>{e&&(s(e.defaultRiskLevel),l(e.authType),d(``),p(e.authHeaderName??`X-API-Key`),h(``))},[e]);let g=(0,Z.useCallback)(()=>{if(!e)return;let t=c!==e.authType,n=c===`bearer`&&u.trim()!==``,i=c===`api-key`&&f.trim()!==``&&m.trim()!==``,a=t||n||i,s;s=a?c===`none`?null:c===`bearer`&&u.trim()?{Authorization:`Bearer ${u.trim()}`}:c===`api-key`&&f.trim()&&m.trim()?{[f.trim()]:m.trim()}:void 0:void 0,r(e.id,{name:e.id,defaultRiskLevel:o,...s===void 0?{}:{headers:s}})},[e,o,c,u,f,m,r]),_=(0,Z.useCallback)(()=>{i||n()},[i,n]);return e?(0,Q.jsx)(U.Root,{open:!!e,onOpenChange:e=>{e||_()},children:(0,Q.jsxs)(U.Content,{size:`lg`,children:[(0,Q.jsxs)(U.Header,{children:[(0,Q.jsx)(U.Title,{icon:Xe,children:e.id}),(0,Q.jsxs)(U.Description,{children:[e.transport.type,` transport · `,e.status]})]}),(0,Q.jsx)(U.Body,{children:(0,Q.jsxs)(`div`,{className:`space-y-5`,children:[(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-risk`,children:`Default risk level`}),(0,Q.jsx)(`select`,{id:`mcp-risk`,value:o,onChange:e=>s(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:Tt.map(e=>(0,Q.jsx)(`option`,{value:e,children:e.charAt(0).toUpperCase()+e.slice(1)},e))})]}),e.transport.type===`stdio`?null:(0,Q.jsxs)(Q.Fragment,{children:[e.hasOAuth?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md border border-[var(--border-element)] bg-[var(--surface-base)] px-3 py-2`,children:[(0,Q.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Authentication`}),(0,Q.jsx)(`span`,{className:`rounded-full bg-[var(--surface-lift)] px-2 py-0.5 text-label-small-default text-[var(--content-default)]`,children:`OAuth`}),(0,Q.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`— managed via OAuth flow`})]}):null,e.hasOAuth?null:(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-auth`,children:`Authentication`}),(0,Q.jsx)(`select`,{id:`mcp-detail-auth`,value:c,onChange:e=>l(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:wt.map(e=>(0,Q.jsx)(`option`,{value:e.value,children:e.label},e.value))})]}),c===`bearer`&&!e.hasOAuth?(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-bearer`,children:`Bearer token`}),(0,Q.jsx)(H,{id:`mcp-detail-bearer`,type:`password`,value:u,onChange:e=>d(e.target.value),placeholder:e.hasStaticAuth&&e.authType===`bearer`?`•••••••• (leave blank to keep current)`:`tok_...`,fullWidth:!0})]}):null,c===`api-key`&&!e.hasOAuth?(0,Q.jsxs)(`div`,{className:`flex gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-apikey-header`,children:`Header name`}),(0,Q.jsx)(H,{id:`mcp-detail-apikey-header`,type:`text`,value:f,onChange:e=>p(e.target.value),placeholder:`X-API-Key`,fullWidth:!0})]}),(0,Q.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-apikey-value`,children:`API key`}),(0,Q.jsx)(H,{id:`mcp-detail-apikey-value`,type:`password`,value:m,onChange:e=>h(e.target.value),placeholder:e.hasStaticAuth&&e.authType===`api-key`?`•••••••• (leave blank to keep current)`:`sk_...`,fullWidth:!0})]})]}):null]}),t&&t.tools.length>0?(0,Q.jsxs)(`div`,{className:`space-y-2`,children:[(0,Q.jsxs)(`h3`,{className:`text-body-medium-default text-[var(--content-default)]`,children:[`Registered tools (`,t.toolCount,`)`]}),(0,Q.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[`Total estimated token overhead: ~`,t.estimatedTokens.toLocaleString(),` tokens`]}),(0,Q.jsx)(`div`,{className:`max-h-64 overflow-y-auto rounded-lg border border-[var(--border-base)]`,children:(0,Q.jsxs)(`table`,{className:`w-full text-body-small-default`,children:[(0,Q.jsx)(`thead`,{children:(0,Q.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] bg-[var(--surface-base)]`,children:[(0,Q.jsx)(`th`,{className:`px-3 py-2 text-left font-medium text-[var(--content-secondary)]`,children:`Tool`}),(0,Q.jsx)(`th`,{className:`px-3 py-2 text-left font-medium text-[var(--content-secondary)]`,children:`Description`}),(0,Q.jsx)(`th`,{className:`px-3 py-2 text-right font-medium text-[var(--content-secondary)]`,children:`Tokens`})]})}),(0,Q.jsx)(`tbody`,{children:t.tools.map(e=>(0,Q.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] last:border-b-0`,children:[(0,Q.jsx)(`td`,{className:`px-3 py-2 font-medium text-[var(--content-default)]`,children:e.name}),(0,Q.jsx)(`td`,{className:`max-w-xs truncate px-3 py-2 text-[var(--content-tertiary)]`,children:e.description||`—`}),(0,Q.jsxs)(`td`,{className:`px-3 py-2 text-right text-[var(--content-tertiary)]`,children:[`~`,e.estimatedTokens.toLocaleString()]})]},e.name))})]})})]}):null]})}),(0,Q.jsxs)(U.Footer,{children:[(0,Q.jsx)(a,{variant:`ghost`,onClick:_,disabled:i,children:`Cancel`}),(0,Q.jsx)(a,{variant:`primary`,onClick:g,disabled:i,children:i?`Saving...`:`Save`})]})]})}):null}var Dt=`mcp-servers`,Ot=`mcp-tools-summary`,kt=`Help me set up an MCP server to extend you with external tools.`;function At(){let e=Ge(),t=p(),n=s(),r=De.use.mcpAddServer(),i=De.use.hasHydrated(),[o,c]=(0,Z.useState)(!1),[l,u]=(0,Z.useState)(null),[d,f]=(0,Z.useState)(null),[m,h]=(0,Z.useState)(new Set),[g,_]=(0,Z.useState)(!1),[v,y]=(0,Z.useState)(!1),[b,x]=(0,Z.useState)(!1),[C,w]=(0,Z.useState)(!1),[T,E]=(0,Z.useState)(null),[D,O]=(0,Z.useState)(null),{data:k,isLoading:A,isError:j}=S({queryKey:[Dt,e],queryFn:()=>ft(e)}),{data:M}=S({queryKey:[Ot,e],queryFn:()=>pt(e)}),N=(0,Z.useCallback)(()=>{t.invalidateQueries({queryKey:[Dt,e]}),t.invalidateQueries({queryKey:[Ot,e]})},[t,e]),P=(0,Z.useMemo)(()=>{let e=new Map;if(M)for(let t of M.servers)e.set(t.serverId,t);return e},[M]),F=(0,Z.useMemo)(()=>!l||!k?null:k.servers.find(e=>e.id===l)??null,[l,k]),I=(0,Z.useCallback)(async(t,n)=>{h(e=>new Set(e).add(t));try{await mt(e,{name:t,enabled:n}),N()}catch{G.error(`Failed to ${n?`enable`:`disable`} ${t}`)}finally{h(e=>{let n=new Set(e);return n.delete(t),n})}},[e,N]),R=(0,Z.useCallback)(async()=>{if(d){y(!0);try{await gt(e,d),N(),G.success(`Removed ${d}`),f(null)}catch{G.error(`Failed to remove ${d}`)}finally{y(!1)}}},[d,e,N]),z=(0,Z.useCallback)(async t=>{E(t);let n;try{n=await _t(e,t)}catch{G.error(`Failed to start authentication for ${t}`),E(null);return}try{if(n.already_authenticated){G.success(`${t} is already authenticated`),N();return}window.open(n.auth_url,`_blank`,`noopener,noreferrer`);for(let n=0;n<60;n++){await new Promise(e=>setTimeout(e,3e3));let n=await vt(e,t);if(n.status===`complete`){G.success(`${t} authenticated successfully`),N();return}if(n.status===`error`){G.error(n.error??`Authentication failed for ${t}`);return}}G.error(`Authentication timed out for ${t}`)}catch{G.error(`Authentication polling failed for ${t}`)}finally{E(null),N()}},[e,N]),te=(0,Z.useCallback)(async t=>{O(t);try{await yt(e,t),N(),G.success(`OAuth credentials revoked for ${t}`)}catch{G.error(`Failed to revoke OAuth for ${t}`)}finally{O(null)}},[e,N]),ne=(0,Z.useCallback)(async t=>{let n=t.autoAuth?window.open(`about:blank`,`_blank`,`noopener`):null;_(!0);try{await ht(e,t),N(),G.success(`Added ${t.name}`),c(!1)}catch{G.error(`Failed to add ${t.name}`),n?.close(),_(!1);return}if(_(!1),t.autoAuth){E(t.name);try{let r=await _t(e,t.name);if(r.already_authenticated){n?.close(),G.success(`${t.name} is already authenticated`),N();return}n?n.location.href=r.auth_url:window.open(r.auth_url,`_blank`,`noopener,noreferrer`);for(let n=0;n<60;n++){await new Promise(e=>setTimeout(e,3e3));let n=await vt(e,t.name);if(n.status===`complete`){G.success(`${t.name} authenticated successfully`),N();return}if(n.status===`error`){G.error(n.error??`Authentication failed for ${t.name}`);return}}G.error(`Authentication timed out for ${t.name}`)}catch{n?.close(),G.error(`Failed to start authentication for ${t.name}`)}finally{E(null),N()}}},[e,N]),re=(0,Z.useCallback)(async(t,n)=>{x(!0);try{await mt(e,n),N(),G.success(`Updated ${t}`),u(null)}catch{G.error(`Failed to update ${t}`)}finally{x(!1)}},[e,N]),V=(0,Z.useCallback)(async()=>{w(!0);try{await bt(e),N(),G.success(`MCP servers reloaded`)}catch{G.error(`Failed to reload MCP servers`)}finally{w(!1)}},[e,N]),H=(0,Z.useCallback)(()=>{r?c(!0):We(n,{prompt:kt})},[r,n]),ie=k?.servers??[];return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:`MCP Servers`}),(0,Q.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:`Manage Model Context Protocol server connections and their registered tools.`})]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(a,{variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(ee,{className:C?`animate-spin`:``}),onClick:V,disabled:C,tooltip:`Reload all servers`,"aria-label":`Reload MCP servers`}),r?(0,Q.jsx)(a,{variant:`primary`,size:`compact`,leftIcon:(0,Q.jsx)(B,{}),onClick:()=>c(!0),children:`Add Server`}):null]})]}),M?(0,Q.jsxs)(`div`,{className:`flex gap-4 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,Q.jsxs)(`span`,{children:[M.totalToolCount,` total `,M.totalToolCount===1?`tool`:`tools`]}),(0,Q.jsxs)(`span`,{children:[`~`,M.totalEstimatedTokens.toLocaleString(),` total tokens`]})]}):null,A?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(L,{className:`h-4 w-4 animate-spin`}),(0,Q.jsx)(`span`,{children:`Loading MCP servers...`})]}):j?(0,Q.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Failed to load MCP servers. Check that an assistant is running.`}):ie.length===0?(0,Q.jsxs)(`button`,{type:`button`,onClick:H,disabled:!i,className:`flex w-full flex-col items-center gap-2 rounded-lg border border-dashed border-[var(--border-element)] px-4 py-12 text-center transition-colors hover:border-[var(--border-active)] hover:bg-[var(--surface-hover)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] disabled:pointer-events-none`,children:[(0,Q.jsx)(Xe,{className:`h-6 w-6 text-[var(--content-disabled)]`}),(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`No MCP Servers`}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:r?`Add an MCP server to extend your assistant with external tools.`:`Chat with your assistant to set up an MCP server.`})]}):(0,Q.jsx)(`div`,{className:`space-y-2`,children:ie.map(e=>(0,Q.jsx)(Ct,{server:e,toolsSummary:P.get(e.id),onToggleEnabled:I,onRemove:f,onConfigure:u,onAuthenticate:z,onRevokeOAuth:te,isUpdating:m.has(e.id),isAuthenticating:T===e.id,isRevoking:D===e.id},e.id))}),r?(0,Q.jsx)(dt,{open:o,onClose:()=>c(!1),onAdd:ne,isPending:g}):null,(0,Q.jsx)(Et,{server:F,toolsSummary:l?P.get(l):void 0,onClose:()=>u(null),onSave:re,isPending:b}),(0,Q.jsx)(K,{open:!!d,title:`Remove MCP Server`,message:`Are you sure you want to remove "${d}"? This will disconnect all tools provided by this server.`,confirmLabel:`Remove`,destructive:!0,isPending:v,onConfirm:R,onCancel:()=>f(null)})]})}function jt(){return(0,Q.jsx)(At,{})}function Mt(e,t){let[n,r]=(0,Z.useState)({platformAssistantId:null,isLoading:!1,error:null});return(0,Z.useEffect)(()=>{if(!t||!e){r({platformAssistantId:null,isLoading:!1,error:null});return}let n=!0;return r({platformAssistantId:null,isLoading:!0,error:null}),_e(e).then(e=>{n&&r({platformAssistantId:e,isLoading:!1,error:null})}).catch(e=>{n&&r({platformAssistantId:null,isLoading:!1,error:e instanceof Error?e:Error(String(e))})}),()=>{n=!1}},[e,t]),n}var Nt=`vellum:integrations:bannerDismissed`,Pt=[{value:`all`,label:`All`},{value:`enabled`,label:`Enabled`},{value:`not-enabled`,label:`Not Enabled`}];function $(e,t){return e?.find(e=>e.provider===t)??null}function Ft(e){return e===`mcp`?`mcp`:`oauth`}function It(){let[e]=o(),i=s(),a=je(),[c,l]=(0,Z.useState)(null),[u,d]=(0,Z.useState)(!0),[f,p]=(0,Z.useState)(``),[m,h]=(0,Z.useState)(`all`),[g,_]=(0,Z.useState)(!1),[v,y]=(0,Z.useState)(!0),[b,x]=(0,Z.useState)(null);(0,Z.useEffect)(()=>{y(t(Nt,`false`)===`true`)},[]);let C=()=>{y(!0),n(Nt,`true`)};(0,Z.useEffect)(()=>{let e=!0;return(async()=>{try{let t=await ve();e&&t.ok&&l(t.data)}catch(e){r(e,{context:`integrations.getAssistant`})}finally{e&&d(!1)}})(),()=>{e=!1}},[]);let{platformAssistantId:w,isLoading:T}=Mt(c?.id,a===`full`),{data:E,isLoading:D,isError:k}=S({...pe({path:{assistant_id:c?.id??``}}),select:e=>e.providers,enabled:!!c}),{data:A,isLoading:j}=S({...J({path:{assistant_id:w??``}}),enabled:!!w&&a===`full`});(0,Z.useEffect)(()=>{let t=e.get(`oauth_status`);if(!t)return;let n=e.get(`oauth_provider`),r=n?n.charAt(0).toUpperCase()+n.slice(1):null;if(t===`connected`)G.success(r?`${r} account connected successfully.`:`Account connected successfully.`);else if(t===`error`){let t=e.get(`oauth_code`)??`unknown`;G.error({denied:`Authorization was denied. Please try again.`,state_invalid:`Authorization state was invalid. Please try again.`,state_expired:`Authorization expired. Please try again.`,exchange_failed:`Failed to complete authorization. Please try again.`,identity_failed:`Failed to verify account identity. Please try again.`}[t]??(r?`Failed to connect ${r}.`:`Failed to connect. Please try again.`))}i(be.settings.integrations,{replace:!0})},[e,i]);let M=(0,Z.useMemo)(()=>E?.filter(e=>e.supports_managed_mode)??[],[E]),N=(0,Z.useMemo)(()=>{let e=f.trim().toLowerCase(),t=M.filter(t=>{if(t.provider_key===`slack`)return!1;if(!e)return!0;let n=(t.display_name??t.provider_key).toLowerCase(),r=(t.description??``).toLowerCase();return n.includes(e)||r.includes(e)});return m!==`all`&&(t=t.filter(e=>{let t=!!$(A,e.provider_key)?.connected;return m===`enabled`?t:!t})),[...t].sort((e,t)=>{let n=!!$(A,e.provider_key)?.connected;if(n!==!!$(A,t.provider_key)?.connected)return n?-1:1;let r=(e.display_name??e.provider_key).toLowerCase(),i=(t.display_name??t.provider_key).toLowerCase();return r.localeCompare(i)})},[M,A,f,m]),P=u||D||j||T,F=Pt.find(e=>e.value===m)?.label??`All`,I=(()=>{if(f.trim())return`No integrations matched`;switch(m){case`enabled`:return`No Enabled Integrations`;case`not-enabled`:return`All Integrations Are Enabled`;default:return`No Integrations Available`}})(),R=(()=>{if(f.trim())return`No integrations matched "${f.trim()}"`;switch(m){case`enabled`:return`Connect an integration to get started.`;case`not-enabled`:return`All available integrations have been connected.`;default:return`Check your connection and try again.`}})(),z=(0,Z.useMemo)(()=>b?M.find(e=>e.provider_key===b)??null:null,[M,b]);return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[!v&&(0,Q.jsxs)(re,{tone:`info`,icon:(0,Q.jsx)(te,{className:`h-3.5 w-3.5`}),onDismiss:C,children:[(0,Q.jsx)(`span`,{className:`text-body-medium-default`,children:`Tip:`}),` You can enable integrations by mentioning them in chat.`]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(H,{type:`text`,value:f,onChange:e=>p(e.target.value),placeholder:`Search Integrations`,"aria-label":`Search integrations`,leftIcon:(0,Q.jsx)(Ve,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,wrapperClassName:`flex-1`}),(0,Q.jsxs)(V.Root,{open:g,onOpenChange:_,children:[(0,Q.jsx)(V.Trigger,{asChild:!0,children:(0,Q.jsxs)(`button`,{type:`button`,"aria-haspopup":`listbox`,"aria-expanded":g,className:`flex w-36 cursor-pointer items-center justify-between gap-2 rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-lighter text-[var(--content-default)] transition-colors hover:bg-[var(--ghost-hover)]`,children:[(0,Q.jsx)(`span`,{children:F}),(0,Q.jsx)(O,{className:`h-3.5 w-3.5`})]})}),(0,Q.jsx)(V.Content,{align:`end`,sideOffset:4,className:`w-36 overflow-hidden p-0`,children:(0,Q.jsx)(`div`,{role:`listbox`,children:Pt.map(e=>{let t=e.value===m;return(0,Q.jsx)(`button`,{type:`button`,role:`option`,"aria-selected":t,onClick:()=>{h(e.value),_(!1)},className:`flex w-full cursor-pointer items-center px-3 py-1.5 text-left hover:bg-[var(--ghost-hover)] ${t?`text-body-medium-default text-[var(--content-default)]`:`text-body-medium-lighter text-[var(--content-default)]`}`,children:e.label},e.value)})})})]})]}),(0,Q.jsx)(`div`,{children:P?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(L,{className:`h-4 w-4 animate-spin`}),(0,Q.jsx)(`span`,{children:`Loading...`})]}):k?(0,Q.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Failed to load integrations. Please try again.`}):c?N.length===0?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-2 rounded-lg border border-dashed border-[var(--border-element)] px-4 py-12 text-center`,children:[(0,Q.jsx)(Ve,{className:`h-6 w-6 text-[var(--content-disabled)]`}),(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:I}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:R})]}):(0,Q.jsx)(`div`,{className:`space-y-2`,children:N.map(e=>(0,Q.jsx)(st,{platformAssistantId:w??c.id,providerKey:e.provider_key,displayName:e.display_name??e.provider_key,description:e.description,logoUrl:e.logo_url,connection:$(A,e.provider_key),platformGate:a,onConfigure:()=>x(e.provider_key)},e.provider_key))}):(0,Q.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No assistant found. Hatch an assistant to connect integrations.`})}),z&&c&&(0,Q.jsx)(at,{assistantId:c.id,platformAssistantId:w??c.id,providerKey:z.provider_key,displayName:z.display_name??z.provider_key,description:z.description,logoUrl:z.logo_url,platformGate:a,onClose:()=>x(null)})]})}function Lt(){let[e,t]=o(),n=Ft(e.get(`tab`));return(0,Q.jsx)(`div`,{className:`space-y-6`,children:(0,Q.jsxs)(M.Root,{value:n,onValueChange:n=>{let r=Ft(n),i=new URLSearchParams(e);r===`mcp`?i.set(`tab`,`mcp`):i.delete(`tab`),t(i,{replace:!0})},children:[(0,Q.jsxs)(M.List,{children:[(0,Q.jsx)(M.Trigger,{value:`oauth`,children:`OAuth`}),(0,Q.jsx)(M.Trigger,{value:`mcp`,children:`MCP`})]}),(0,Q.jsx)(M.Panel,{value:`oauth`,className:`pt-4`,children:(0,Q.jsx)(Z.Suspense,{children:(0,Q.jsx)(It,{})})}),(0,Q.jsx)(M.Panel,{value:`mcp`,className:`pt-4`,children:(0,Q.jsx)(jt,{})})]})})}export{Lt as IntegrationsPage};
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{l as n,r,t as i}from"./chunk-5KNZJZUH-SU6Q_tDT.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./typography-Cqi8q9o7.js";import{t as s}from"./chevron-left-B_RAz34t.js";import"./src-A8hMQd90.js";import{t as c}from"./assistant-identity-store-Bc4hbSCe.js";import{c as l}from"./routes-Bzvx8bnp.js";import{Cr as u,Nn as d}from"./index-31nbLUeS.js";import{t as f}from"./page-shell-BvXbg7Db.js";var p=e(t(),1),m=a(),h=[{label:`Plugins`,to:l.plugins},{label:`Skills`,to:l.skills.root},{label:`Memory`,to:l.memory},{label:`Workspace`,to:l.workspace},{label:`Contacts`,to:l.contacts.root},{label:`Channels`,to:l.channels}];function g(e){return h.find(({to:t})=>e===t||e.startsWith(t+`/`))??null}function _(){let e=c.use.name(),{pathname:t}=n(),a=u(),h=d.use.setTopBarCenter(),_=g(t),v=_?_.label:`About ${e||`Assistant`}`;return(0,p.useEffect)(()=>(h(a?(0,m.jsx)(o,{variant:`body-medium-default`,className:`truncate text-[var(--content-secondary)]`,children:v}):null),()=>{h(null)}),[a,v,h]),_?(0,m.jsxs)(f,{children:[(0,m.jsxs)(`div`,{className:`mb-4 flex shrink-0 items-center gap-1.5`,children:[(0,m.jsx)(i,{to:l.identity,className:`-ml-2 flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors outline-none hover:bg-[var(--surface-hover)] hover:text-[var(--content-default)] focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,"aria-label":`Back to ${e||`Assistant`}`,title:`Back to ${e||`Assistant`}`,children:(0,m.jsx)(s,{className:`h-5 w-5`,"aria-hidden":!0})}),(0,m.jsx)(`h1`,{className:`text-title-large text-[var(--content-default)] max-md:hidden`,children:_.label})]}),(0,m.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-y-auto`,children:(0,m.jsx)(r,{})})]}):(0,m.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:(0,m.jsx)(r,{})})}export{_ as IntelligenceLayout};
@@ -1 +1 @@
1
- import{t as e}from"./createLucideIcon-IRfcSUxS.js";var t=e(`key-round`,[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]);export{t};
1
+ import{t as e}from"./createLucideIcon-Bjb-Kuq7.js";var t=e(`key-round`,[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]);export{t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{u as n}from"./chunk-5KNZJZUH-SU6Q_tDT.js";import{c as r}from"./routes-Bzvx8bnp.js";var i=e(t(),1);function a(){let e=n();return(0,i.useEffect)(()=>{e(`${r.settings.general}?preferences=open`,{replace:!0})},[e]),null}export{a as KeyboardShortcutsRedirectPage};
@@ -0,0 +1,24 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";var n=e(t(),1),r={w:1280,h:800};function i(){return typeof window>`u`?r:{w:window.innerWidth,h:window.innerHeight}}function a(){let[e,t]=(0,n.useState)(null),[r,a]=(0,n.useState)(()=>i());return(0,n.useLayoutEffect)(()=>{if(!e)return;let t=()=>{let t=e.getBoundingClientRect();a({w:t.width,h:t.height})};t();let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[e]),{ref:t,size:r}}var o={companionCoworker:`companion-coworker`,genzBoomer:`genz-boomer`,executeCollaborate:`execute-collaborate`,playfulSerious:`playful-serious`,politeUnfiltered:`polite-unfiltered`},s=2;function c({processing:e,sawProcessing:t,hasReply:n,stableReads:r}){return e===void 0?n&&r>=s:!e&&(n||t)}var l=e=>Math.max(0,Math.min(100,Math.round(e)));function u(e,t,n){let r=t=>l(e[t]??50),i=r(o.companionCoworker),a=r(o.executeCollaborate),s=r(o.playfulSerious),c=r(o.politeUnfiltered),u=t?.trim()||`The user`,d=n?.trim(),f=d?`Your name is ${d}. Write exactly \`- **Name:** ${d}\` in IDENTITY.md — do not rename yourself or invent a different name, even if the file currently shows a placeholder or a different name. This changes your personality, not who you are.`:"Keep your existing name exactly as it is — this changes your personality, not who you are. Do not rename yourself, and if your name is already set, carry it through verbatim (don't treat it as a placeholder to fill). Whatever the name ends up being, keep it on IDENTITY.md's `- **Name:** …` line.";return`<system-message>
2
+ ${u} wants to customize your personality.
3
+ This is what they want you to be:
4
+ Companion (0-100): ${100-i}
5
+ Coworker (0-100): ${i}
6
+ Voice Style (0 = Gen Z, 100 = Boomer): ${r(o.genzBoomer)}
7
+ Execute Independently (0 - 100): ${100-a}
8
+ Collaborative (0 - 100): ${a}
9
+ Playfulness (0 - 100): ${100-s}
10
+ Seriousness (0 - 100): ${s}
11
+ Politeness (0 - 100): ${100-c}
12
+ Unfiltered Rawness/Crassness (0 - 100): ${c}
13
+
14
+ Rewrite your own identity files (IDENTITY.md and SOUL.md) to reflect your new personality — first person, in a voice and style that matches it. Do not touch users/guardian.md or anything else under users/: that is your user's profile (their name, work, preferences), not your identity.
15
+
16
+ Overwrite each file completely with file_write: write the whole file fresh in one pass. This is a from-scratch rewrite, not an edit — do not append to what's already there, do not patch individual lines, and leave none of the current default wording behind. Fill in every IDENTITY.md placeholder (the _(not yet chosen)_ / _(not yet established)_ fields).
17
+
18
+ IDENTITY.md must keep a line reading exactly \`- **Personality:** <one short sentence>\` — a single sentence summarizing this new personality in your own voice. UI surfaces parse that exact line format to display your personality, so do not omit or reformat it.
19
+
20
+ ${f}
21
+
22
+ Each rewritten file must still be complete: SOUL.md keeps everything you operate by — how you use memory, your boundaries, your compliance stance — re-expressed in your new voice rather than dropped. When you finish, both files should read top-to-bottom as this new personality, with nothing left in the generic default voice.
23
+ </system-message>`}function d(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(!(!n||n.role!==`assistant`))return(n.contentBlocks??[]).filter(e=>e.type===`text`).map(e=>e.text).join(`
24
+ `).trim()}return``}export{i as a,a as i,u as n,c as r,d as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{f as n,l as r,u as i}from"./chunk-5KNZJZUH-SU6Q_tDT.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./loader-circle-C9QrtO3C.js";import"./src-A8hMQd90.js";import{n as s}from"./toast-B5Hr1kIL.js";import{n as c}from"./sdk.gen-CFgJ4K6f.js";import{c as l}from"./routes-Bzvx8bnp.js";import{o as u}from"./viewer-store-CFywMdJp.js";import{Cr as d,Lt as f,Rt as p,bt as m,r as h,wr as g}from"./index-31nbLUeS.js";import{t as _}from"./use-active-assistant-id-KipCgPNT.js";import{t as v}from"./deploy-dialogs-CHO7qgXb.js";import{t as y}from"./use-edge-swipe-back-DTpbr5KC.js";import{t as b}from"./app-types-CTJGOi24.js";var x=e(t(),1),S=a();function C({enabled:e}){return e?(0,S.jsx)(`div`,{"aria-hidden":!0,className:`absolute inset-y-0 left-0 z-10`,style:{width:20}}):null}function w(){let{appId:e}=n(),t=_(),a=i(),{pathname:w}=r(),T=d(),E=f.use.isDeploying(),D=(0,x.useRef)(null),[O,k]=(0,x.useState)(null),[A,j]=(0,x.useState)(null),[M,N]=(0,x.useState)(!1),P=(0,x.useRef)(null);(0,x.useEffect)(()=>{if(e)return P.current=e,k(null),j(null),c({path:{assistant_id:t,id:e},throwOnError:!0}).then(({data:n})=>{P.current===e&&(u(t,n.appId,n.html),k({appId:n.appId,dirName:n.dirName,name:n.name,html:n.html,origin:n.origin}))}).catch(t=>{P.current===e&&j(t instanceof Error?t.message:`Failed to open app`)}),()=>{P.current=null}},[t,e]);let F=(0,x.useCallback)(()=>{a(l.library.root)},[a]);y({containerRef:D,onBack:F,enabled:T,navKey:w});let I=h(),L=(0,x.useCallback)(()=>{O&&I(O)},[O,I]),R=(0,x.useCallback)(async()=>{if(!(!O||M)){N(!0);try{await p(t,O.appId,O.name),s.success(`App exported`,{description:`${O.name}.vellum`})}catch(e){s.error(`Failed to share app`,{description:e instanceof Error?e.message:void 0})}finally{N(!1)}}},[t,O,M]),z=(0,x.useCallback)(()=>{O&&f.getState().deployApp(t,O.appId,O.name,O.html)},[t,O]),B=(0,x.useCallback)(e=>{g(a,{prompt:e})},[a]);return e?A?(0,S.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-4`,children:[(0,S.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:A}),(0,S.jsx)(`button`,{type:`button`,onClick:F,className:`text-body-medium-default text-[var(--primary-base)] underline`,children:`Back to Library`})]}):O?(0,S.jsxs)(S.Fragment,{children:[(0,S.jsxs)(`div`,{ref:D,className:`relative flex min-h-0 flex-1 flex-col`,children:[(0,S.jsx)(C,{enabled:T}),(0,S.jsx)(m,{appId:O.appId,appName:O.name,html:O.html,assistantId:t,onClose:F,...b(O.origin)?{}:{onEdit:L,onShare:R,isSharing:M,onDeploy:z,isDeploying:E},enableFullscreen:!0})]}),(0,S.jsx)(v,{assistantId:t,onStartConversation:B})]}):(0,S.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,S.jsx)(o,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}):null}export{w as LibraryDetailPage};
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-BQVYX8n_.js";import{u as r}from"./chunk-5KNZJZUH-SU6Q_tDT.js";import{n as i}from"./QueryClientProvider-DKhXIxGb.js";import{t as a}from"./useQuery-B45lW1Kk.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import{t as s}from"./menu-CLA56vz8.js";import{t as c}from"./download-B6XjnEzx.js";import{t as l}from"./file-text-DA128T4K.js";import{t as u}from"./globe-inD5tOKN.js";import"./src-A8hMQd90.js";import{t as d}from"./input-6HVXMszw.js";import{n as f,t as p}from"./panel-item-CfuwAm7q.js";import{n as m}from"./toast-B5Hr1kIL.js";import{s as h}from"./sdk.gen-CFgJ4K6f.js";import{E as g,n as _,t as v}from"./react-query.gen-JxTd3SS8.js";import{c as y}from"./routes-Bzvx8bnp.js";import{a as b}from"./viewer-store-CFywMdJp.js";import{t as x}from"./pointer-CzC_8USk.js";import{t as S}from"./misc-CS-Pktrv.js";import{Ca as C,Cr as w,Ii as T,Li as E,Lt as D,Qi as O,Rt as k,bi as A,gt as j,hn as M,ht as N,ji as P,ln as F,q as I,sa as L,wr as R}from"./index-31nbLUeS.js";import{t as z}from"./use-active-assistant-id-KipCgPNT.js";import{t as B}from"./deploy-dialogs-CHO7qgXb.js";import{t as V}from"./page-shell-BvXbg7Db.js";import{t as H}from"./app-types-CTJGOi24.js";import{t as U}from"./format-date-Cda44k2J.js";var W=e(t(),1),G=o();function K(e){return e===1?`1 word`:`${e} words`}function q({document:e,onOpen:t}){return(0,G.jsxs)(`div`,{className:`group relative flex flex-col gap-2`,children:[(0,G.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:S(`relative flex w-full cursor-pointer flex-col items-center justify-center gap-2 overflow-hidden rounded-xl border border-[var(--border-base)] bg-[var(--surface-base)]`,`aspect-[16/10]`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:[(0,G.jsx)(l,{size:34,className:`text-[var(--content-tertiary)]`}),(0,G.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:K(e.wordCount)})]}),(0,G.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:`flex cursor-pointer flex-col gap-0.5 px-0.5 text-left outline-none`,children:[(0,G.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:e.title}),(0,G.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:U(new Date(e.updatedAt))})]})]})}function J({fileInputRef:e,isImporting:t,onImportBundle:r,onNewConversation:i}){return(0,G.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4 py-24`,children:[(0,G.jsx)(`input`,{ref:e,type:`file`,accept:`.vellum`,className:`hidden`,onChange:r}),(0,G.jsx)(`div`,{className:`flex h-16 w-16 items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,G.jsx)(O,{size:32,className:`text-[var(--content-tertiary)]`})}),(0,G.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Your library is empty`}),(0,G.jsx)(`p`,{className:`max-w-md text-center text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:`Ask your assistant to build something, or import a shared app`}),(0,G.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[i?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(n,{variant:`primary`,size:`regular`,onClick:i,children:`New Conversation`}),(0,G.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:`or`})]}):null,(0,G.jsxs)(n,{variant:`outlined`,size:`regular`,onClick:()=>e.current?.click(),disabled:t,children:[t?(0,G.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`}):(0,G.jsx)(c,{size:14}),(0,G.jsx)(`span`,{className:`ml-1.5`,children:`Import .vellum File`})]})]})]})}function Y({app:e,assistantId:t,isPinned:n,onOpen:r,onPin:i,onDelete:a,onDeploy:o,justImported:s,onAnimationEnd:c}){let[l,u]=(0,W.useState)(!1),d=H(e.origin),f=d?void 0:a,p=d?void 0:o,h=(0,W.useCallback)(()=>b(t,e.id),[t,e.id]),g=(0,W.useCallback)(async()=>{if(!l){u(!0);try{await k(t,e.id,e.name),m.success(`App exported`,{description:`${e.name}.vellum`})}catch(e){m.error(`Failed to share app`,{description:e instanceof Error?e.message:void 0})}finally{u(!1)}}},[t,e.id,e.name,l]),[_,v]=(0,W.useState)(!1),y=w();return(0,G.jsx)(M,{trailingActions:x()?[{id:`pin`,label:n?`Unpin`:`Pin`,icon:n?E:T,onSelect:()=>i(e)},...f?[{id:`delete`,label:`Delete`,icon:A,variant:`destructive`,onSelect:()=>f(e)}]:[]]:[],className:`rounded-xl`,children:(0,G.jsxs)(`div`,{className:S(`group relative flex flex-col gap-2`,s&&`animate-[card-entrance_400ms_ease-out]`),onAnimationEnd:s?c:void 0,children:[(0,G.jsx)(`button`,{type:`button`,onClick:()=>r(e.id),className:S(`relative w-full cursor-pointer overflow-hidden rounded-xl`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:(0,G.jsx)(I,{name:e.name,icon:e.icon,loadHtml:h})}),(0,G.jsx)(`div`,{className:S(`absolute right-2 top-2 z-20 transition-opacity`,`max-md:opacity-100`,`md:group-hover:opacity-100 md:group-focus-within:opacity-100`,_?`opacity-100`:`md:opacity-0`),children:(0,G.jsx)(X,{appName:e.name,isPinned:n,open:_,onOpenChange:v,onPin:()=>i(e),onDelete:f?()=>f(e):void 0,onShare:d?void 0:g,onDeploy:p,isMobile:y})}),(0,G.jsxs)(`button`,{type:`button`,onClick:()=>r(e.id),className:`flex cursor-pointer flex-col gap-0.5 px-0.5 text-left outline-none`,children:[(0,G.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:e.name}),(0,G.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:U(new Date(e.createdAt))})]})]})})}function X({appName:e,isPinned:t,open:r,onOpenChange:i,onPin:a,onDelete:o,onShare:c,onDeploy:l,isMobile:d}){return d?(0,G.jsxs)(f.Root,{open:r,onOpenChange:i,children:[(0,G.jsx)(f.Trigger,{asChild:!0,children:(0,G.jsx)(n,{variant:`primary`,size:`compact`,iconOnly:(0,G.jsx)(L,{}),"aria-label":`App actions`,onClick:e=>e.stopPropagation()})}),(0,G.jsxs)(f.Content,{children:[(0,G.jsx)(f.Header,{className:`sr-only`,children:(0,G.jsx)(f.Title,{children:e})}),(0,G.jsxs)(f.Body,{className:`pt-0`,children:[(0,G.jsx)(p,{icon:t?E:T,label:t?`Unpin`:`Pin`,onSelect:()=>{i(!1),a()}}),c?(0,G.jsx)(p,{icon:C,label:(0,G.jsxs)(`span`,{className:`flex flex-col gap-0.5 overflow-visible whitespace-normal`,children:[(0,G.jsx)(`span`,{children:`Share`}),(0,G.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Export as .vellum file`})]}),onSelect:()=>{i(!1),c()}}):null,l?(0,G.jsx)(p,{icon:u,label:(0,G.jsxs)(`span`,{className:`flex flex-col gap-0.5 overflow-visible whitespace-normal`,children:[(0,G.jsx)(`span`,{children:`Deploy to Vercel`}),(0,G.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Publish as a static page`})]}),onSelect:()=>{i(!1),l()}}):null,o?(0,G.jsx)(p,{icon:A,label:`Delete`,onSelect:()=>{i(!1),o()}}):null]})]})]}):(0,G.jsxs)(s.Root,{open:r,onOpenChange:i,children:[(0,G.jsx)(s.Trigger,{asChild:!0,children:(0,G.jsx)(n,{variant:`primary`,size:`compact`,iconOnly:(0,G.jsx)(L,{}),"aria-label":`App actions`,onClick:e=>e.stopPropagation()})}),(0,G.jsxs)(s.Content,{align:`end`,sideOffset:4,children:[(0,G.jsx)(s.Item,{leftIcon:t?(0,G.jsx)(E,{size:14}):(0,G.jsx)(T,{size:14}),onSelect:()=>a(),className:`whitespace-nowrap`,children:t?`Unpin`:`Pin`}),c?(0,G.jsx)(s.Item,{leftIcon:(0,G.jsx)(C,{size:14}),onSelect:()=>c(),className:`whitespace-nowrap`,children:`Share`}):null,l?(0,G.jsx)(s.Item,{leftIcon:(0,G.jsx)(u,{size:14}),onSelect:()=>l(),className:`whitespace-nowrap`,children:`Deploy to Vercel`}):null,o?(0,G.jsx)(s.Item,{leftIcon:(0,G.jsx)(A,{size:14,className:`text-red-600`}),onSelect:()=>o(),className:`whitespace-nowrap text-red-600 data-[highlighted]:text-red-700`,children:`Delete`}):null]})]})}function Z({title:e,apps:t,assistantId:n,pinnedAppIds:r,lastImportedAppId:i,onOpen:a,onPin:o,onDelete:s,onDeploy:c,onAnimationEnd:l}){return t.length===0?null:(0,G.jsxs)(`section`,{children:[(0,G.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)]`,children:e}),(0,G.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6`,children:t.map(e=>(0,G.jsx)(Y,{app:e,assistantId:n,isPinned:r.has(e.id),onOpen:a,onPin:o,onDelete:s,justImported:e.id===i,onAnimationEnd:l,onDeploy:c?()=>c(e.id):void 0},e.id))})]})}var Q=(e,t)=>t.updatedAt-e.updatedAt||t.createdAt-e.createdAt;function $(e){let t=F.use.pinnedAppIds(),{data:n=[],isLoading:r,error:i}=a({...v({path:{assistant_id:e}}),select:e=>e.apps}),{data:o=[],isLoading:s,error:c}=a({...g({path:{assistant_id:e}}),select:e=>e.documents}),l=r||s,u=i&&c?i instanceof Error?i.message:`Failed to load library`:null,[d,f]=(0,W.useState)(``),p=(0,W.useMemo)(()=>{if(!d.trim())return n;let e=d.toLowerCase();return n.filter(t=>t.name.toLowerCase().includes(e)||t.description?.toLowerCase().includes(e))},[n,d]);return{apps:n,documents:o,filteredApps:p,pinnedApps:(0,W.useMemo)(()=>p.filter(e=>t.has(e.id)).sort(Q),[p,t]),recentApps:(0,W.useMemo)(()=>p.filter(e=>!t.has(e.id)).sort(Q),[p,t]),filteredDocuments:(0,W.useMemo)(()=>{if(!d.trim())return o;let e=d.toLowerCase();return o.filter(t=>t.title.toLowerCase().includes(e))},[o,d]),searchText:d,setSearchText:f,loading:l,error:u}}async function ee(e,t){let{data:n,error:r,response:i}=await h({path:{assistant_id:e},body:t,bodySerializer:e=>e,headers:{"Content-Type":`application/octet-stream`},throwOnError:!1});if(!i||!i.ok){let e=(r&&typeof r==`object`&&`message`in r?r.message:null)??`Failed to import app.`;throw Error(e)}return n}function te({assistantId:e,assistantName:t,title:r,onNewConversation:a,onOpenDocument:o,onOpenApp:s}){let l=i(),u=F.use.togglePin(),f=F.use.pinnedAppIds(),p=D.use.isDeploying(),{apps:h,documents:g,filteredApps:v,pinnedApps:y,recentApps:x,filteredDocuments:S,searchText:C,setSearchText:w,loading:T,error:E}=$(e),{pendingDelete:O,isDeleting:k,requestDelete:A,confirmDelete:M,cancelDelete:I}=N(e),L=(0,W.useRef)(null),[R,z]=(0,W.useState)(!1),V=(0,W.useCallback)(async t=>{let n=t.target.files?.[0];if(!(!n||R)){z(!0);try{let t=await ee(e,n);await l.invalidateQueries({queryKey:_({path:{assistant_id:e}})}),m.success(t.name+` imported`),s(t.appId)}catch(e){m.error(e instanceof Error?e.message:`Failed to import app`)}finally{z(!1),L.current&&(L.current.value=``)}}},[e,R,l,s]),H=(0,W.useCallback)(async t=>{if(p)return;let n=h.find(e=>e.id===t)?.name??`this app`;try{let r=await b(e,t);D.getState().deployApp(e,t,n,r)}catch{D.getState().deployApp(e,t,n,``)}},[e,p,h]),U=(0,W.useCallback)(e=>u(e),[u]);return T?(0,G.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,G.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2 border-[var(--border-base)] border-t-[var(--primary-base)]`,role:`status`,"aria-label":`Loading apps`})}):E?(0,G.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4`,children:[(0,G.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:E}),(0,G.jsx)(`button`,{type:`button`,className:`rounded-lg bg-[var(--primary-base)] px-4 py-2 text-body-medium-default text-[var(--content-inset)] transition-colors hover:bg-[var(--primary-hover)]`,onClick:()=>window.location.reload(),children:`Retry`})]}):h.length===0&&g.length===0?(0,G.jsx)(J,{fileInputRef:L,isImporting:R,onImportBundle:V,onNewConversation:a?()=>a():void 0}):(0,G.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[(0,G.jsxs)(`div`,{className:`mb-4 flex shrink-0 items-center justify-between gap-4`,children:[r?(0,G.jsx)(`h1`,{className:`text-title-large text-[var(--content-default)]`,children:r}):(0,G.jsx)(`span`,{}),(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,G.jsx)(`input`,{ref:L,type:`file`,accept:`.vellum`,className:`hidden`,onChange:V}),(0,G.jsxs)(n,{variant:`outlined`,size:`regular`,onClick:()=>L.current?.click(),disabled:R,children:[R?(0,G.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`}):(0,G.jsx)(c,{size:14}),(0,G.jsx)(`span`,{className:`ml-1.5`,children:`Import`})]})]})]}),(0,G.jsx)(`div`,{className:`mb-6 shrink-0`,children:(0,G.jsx)(d,{fullWidth:!0,type:`text`,placeholder:`Search your library`,value:C,onChange:e=>w(e.target.value),leftIcon:(0,G.jsx)(P,{size:16})})}),(0,G.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:v.length===0&&S.length===0?(0,G.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16`,children:[(0,G.jsx)(P,{size:32,className:`mb-4 text-[var(--content-tertiary)]`}),(0,G.jsxs)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:[`No apps or documents matched “`,C,`”`]})]}):(0,G.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[(0,G.jsx)(Z,{title:`Pinned`,apps:y,assistantId:e,pinnedAppIds:f,onOpen:s,onPin:U,onDelete:A,onDeploy:H}),(0,G.jsx)(Z,{title:`Recents`,apps:x,assistantId:e,pinnedAppIds:f,onOpen:s,onPin:U,onDelete:A,onDeploy:H}),S.length>0?(0,G.jsxs)(`section`,{children:[(0,G.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)]`,children:`Documents`}),(0,G.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6`,children:S.map(e=>(0,G.jsx)(q,{document:e,onOpen:e=>{o&&o(e)}},e.surfaceId))})]}):null]})}),(0,G.jsx)(B,{assistantId:e,assistantName:t,onStartConversation:a}),(0,G.jsx)(j,{app:O,isDeleting:k,onConfirm:M,onCancel:I})]})}function ne(){let e=z(),t=r();return(0,G.jsx)(V,{children:(0,G.jsx)(te,{assistantId:e,title:`Library`,onNewConversation:(0,W.useCallback)(e=>{R(t,{prompt:e})},[t]),onOpenDocument:(0,W.useCallback)(e=>{t(y.document(e))},[t]),onOpenApp:(0,W.useCallback)(e=>{t(y.library.app(e))},[t])})})}export{ne as LibraryPage};
@@ -1 +1 @@
1
- import{t as e}from"./createLucideIcon-IRfcSUxS.js";var t=e(`link-2`,[[`path`,{d:`M9 17H7A5 5 0 0 1 7 7h2`,key:`8i5ue5`}],[`path`,{d:`M15 7h2a5 5 0 1 1 0 10h-2`,key:`1b9ql8`}],[`line`,{x1:`8`,x2:`16`,y1:`12`,y2:`12`,key:`1jonct`}]]);export{t};
1
+ import{t as e}from"./createLucideIcon-Bjb-Kuq7.js";var t=e(`link-2`,[[`path`,{d:`M9 17H7A5 5 0 0 1 7 7h2`,key:`8i5ue5`}],[`path`,{d:`M15 7h2a5 5 0 1 1 0 10h-2`,key:`1b9ql8`}],[`line`,{x1:`8`,x2:`16`,y1:`12`,y2:`12`,key:`1jonct`}]]);export{t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{P as n,R as r}from"./button-BQVYX8n_.js";import{t as i}from"./jsx-runtime-CVSDxk6A.js";import{t as a}from"./createLucideIcon-Bjb-Kuq7.js";import{t as o}from"./chevron-right-jRymmL7S.js";import{a as s,i as c,n as l,o as u,r as d,s as f,t as p}from"./dist-Df9Kbc9v.js";var m=a(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),h=e(t(),1),g=i();function _(e){let t=e+`CollectionProvider`,[n,i]=f(t),[a,o]=n(t,{collectionRef:{current:null},itemMap:new Map}),s=e=>{let{scope:t,children:n}=e,r=h.useRef(null),i=h.useRef(new Map).current;return(0,g.jsx)(a,{scope:t,itemMap:i,collectionRef:r,children:n})};s.displayName=t;let c=e+`CollectionSlot`,u=l(c),d=h.forwardRef((e,t)=>{let{scope:n,children:i}=e;return(0,g.jsx)(u,{ref:r(t,o(c,n).collectionRef),children:i})});d.displayName=c;let p=e+`CollectionItemSlot`,m=`data-radix-collection-item`,_=l(p),v=h.forwardRef((e,t)=>{let{scope:n,children:i,...a}=e,s=h.useRef(null),c=r(t,s),l=o(p,n);return h.useEffect(()=>(l.itemMap.set(s,{ref:s,...a}),()=>void l.itemMap.delete(s))),(0,g.jsx)(_,{[m]:``,ref:c,children:i})});v.displayName=p;function y(t){let n=o(e+`CollectionConsumer`,t);return h.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${m}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return[{Provider:s,Slot:d,ItemSlot:v},y,i]}var v=h.useId||(()=>void 0),y=0;function b(e){let[t,n]=h.useState(v());return s(()=>{e||n(e=>e??String(y++))},[e]),e||(t?`radix-${t}`:``)}function ee(e){let t=h.useRef(e);return h.useEffect(()=>{t.current=e}),h.useMemo(()=>(...e)=>t.current?.(...e),[])}var x=h.createContext(void 0);function S(e){let t=h.useContext(x);return e||t||`ltr`}var C=`rovingFocusGroup.onEntryFocus`,te={bubbles:!1,cancelable:!0},w=`RovingFocusGroup`,[T,E,D]=_(w),[O,k]=f(w,[D]),[A,j]=O(w),M=h.forwardRef((e,t)=>(0,g.jsx)(T.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,g.jsx)(T.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,g.jsx)(N,{...e,ref:t})})}));M.displayName=w;var N=h.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,orientation:i,loop:a=!1,dir:o,currentTabStopId:s,defaultCurrentTabStopId:l,onCurrentTabStopIdChange:d,onEntryFocus:f,preventScrollOnEntryFocus:m=!1,..._}=e,v=h.useRef(null),y=r(t,v),b=S(o),[x,T]=c({prop:s,defaultProp:l??null,onChange:d,caller:w}),[D,O]=h.useState(!1),k=ee(f),j=E(n),M=h.useRef(!1),[N,P]=h.useState(0);return h.useEffect(()=>{let e=v.current;if(e)return e.addEventListener(C,k),()=>e.removeEventListener(C,k)},[k]),(0,g.jsx)(A,{scope:n,orientation:i,dir:b,loop:a,currentTabStopId:x,onItemFocus:h.useCallback(e=>T(e),[T]),onItemShiftTab:h.useCallback(()=>O(!0),[]),onFocusableItemAdd:h.useCallback(()=>P(e=>e+1),[]),onFocusableItemRemove:h.useCallback(()=>P(e=>e-1),[]),children:(0,g.jsx)(p.div,{tabIndex:D||N===0?-1:0,"data-orientation":i,..._,ref:y,style:{outline:`none`,...e.style},onMouseDown:u(e.onMouseDown,()=>{M.current=!0}),onFocus:u(e.onFocus,e=>{let t=!M.current;if(e.target===e.currentTarget&&t&&!D){let t=new CustomEvent(C,te);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=j().filter(e=>e.focusable);z([e.find(e=>e.active),e.find(e=>e.id===x),...e].filter(Boolean).map(e=>e.ref.current),m)}}M.current=!1}),onBlur:u(e.onBlur,()=>O(!1))})})}),P=`RovingFocusGroupItem`,F=h.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:a,children:o,...s}=e,c=b(),l=a||c,d=j(P,n),f=d.currentTabStopId===l,m=E(n),{onFocusableItemAdd:_,onFocusableItemRemove:v,currentTabStopId:y}=d;return h.useEffect(()=>{if(r)return _(),()=>v()},[r,_,v]),(0,g.jsx)(T.ItemSlot,{scope:n,id:l,focusable:r,active:i,children:(0,g.jsx)(p.span,{tabIndex:f?0:-1,"data-orientation":d.orientation,...s,ref:t,onMouseDown:u(e.onMouseDown,e=>{r?d.onItemFocus(l):e.preventDefault()}),onFocus:u(e.onFocus,()=>d.onItemFocus(l)),onKeyDown:u(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){d.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=R(e,d.orientation,d.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=m().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=d.loop?ne(n,r+1):n.slice(r+1)}setTimeout(()=>z(n))}}),children:typeof o==`function`?o({isCurrentTabStop:f,hasTabStop:y!=null}):o})})});F.displayName=P;var I={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function L(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function R(e,t,n){let r=L(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return I[r]}function z(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function ne(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var re=M,ie=F,B=`Tabs`,[ae,oe]=f(B,[k]),V=k(),[H,U]=ae(B),W=h.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,onValueChange:i,defaultValue:a,orientation:o=`horizontal`,dir:s,activationMode:l=`automatic`,...u}=e,d=S(s),[f,m]=c({prop:r,onChange:i,defaultProp:a??``,caller:B});return(0,g.jsx)(H,{scope:n,baseId:b(),value:f,onValueChange:m,orientation:o,dir:d,activationMode:l,children:(0,g.jsx)(p.div,{dir:d,"data-orientation":o,...u,ref:t})})});W.displayName=B;var G=`TabsList`,K=h.forwardRef((e,t)=>{let{__scopeTabs:n,loop:r=!0,...i}=e,a=U(G,n),o=V(n);return(0,g.jsx)(re,{asChild:!0,...o,orientation:a.orientation,dir:a.dir,loop:r,children:(0,g.jsx)(p.div,{role:`tablist`,"aria-orientation":a.orientation,...i,ref:t})})});K.displayName=G;var q=`TabsTrigger`,J=h.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,disabled:i=!1,...a}=e,o=U(q,n),s=V(n),c=Z(o.baseId,r),l=Q(o.baseId,r),d=r===o.value;return(0,g.jsx)(ie,{asChild:!0,...s,focusable:!i,active:d,children:(0,g.jsx)(p.button,{type:`button`,role:`tab`,"aria-selected":d,"aria-controls":l,"data-state":d?`active`:`inactive`,"data-disabled":i?``:void 0,disabled:i,id:c,...a,ref:t,onMouseDown:u(e.onMouseDown,e=>{!i&&e.button===0&&e.ctrlKey===!1?o.onValueChange(r):e.preventDefault()}),onKeyDown:u(e.onKeyDown,e=>{[` `,`Enter`].includes(e.key)&&o.onValueChange(r)}),onFocus:u(e.onFocus,()=>{let e=o.activationMode!==`manual`;!d&&!i&&e&&o.onValueChange(r)})})})});J.displayName=q;var Y=`TabsContent`,X=h.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,forceMount:i,children:a,...o}=e,s=U(Y,n),c=Z(s.baseId,r),l=Q(s.baseId,r),u=r===s.value,f=h.useRef(u);return h.useEffect(()=>{let e=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,g.jsx)(d,{present:i||u,children:({present:n})=>(0,g.jsx)(p.div,{"data-state":u?`active`:`inactive`,"data-orientation":s.orientation,role:`tabpanel`,"aria-labelledby":c,hidden:!n,id:l,tabIndex:0,...o,ref:t,style:{...e.style,animationDuration:f.current?`0s`:void 0},children:n&&a})})});X.displayName=Y;function Z(e,t){return`${e}-trigger-${t}`}function Q(e,t){return`${e}-content-${t}`}var se=W,ce=K,le=J,$=X;function ue({className:e,ref:t,...n}){return(0,g.jsx)(se,{ref:t,"data-slot":`tabs`,className:e,...n})}function de({className:e,ref:t,...r}){return(0,g.jsx)(ce,{ref:t,"data-slot":`tabs-list`,className:n(`flex items-center border-b border-[var(--border-base)]`,e),...r})}function fe({className:e,ref:t,...r}){return(0,g.jsx)(le,{ref:t,"data-slot":`tabs-trigger`,className:n(`relative -mb-px inline-flex cursor-pointer items-center gap-1.5 border-b-2 border-transparent bg-transparent px-2.5 py-[7px]`,`text-body-medium-default whitespace-nowrap`,`text-[var(--content-tertiary)] transition-colors`,`outline-none keyboard-focus:ring-2 keyboard-focus:ring-[var(--ring)] keyboard-focus:ring-offset-0`,`hover:bg-[var(--surface-hover)] hover:text-[var(--content-default)]`,`data-[state=active]:border-[var(--primary-base)] data-[state=active]:text-[var(--content-default)]`,`data-[state=active]:hover:bg-transparent`,`disabled:cursor-not-allowed disabled:text-[var(--content-disabled)]`,`disabled:hover:bg-transparent disabled:hover:text-[var(--content-disabled)]`,e),...r})}function pe({className:e,ref:t,...r}){return(0,g.jsx)($,{ref:t,"data-slot":`tabs-panel`,className:n(`outline-none keyboard-focus:ring-2 keyboard-focus:ring-[var(--ring)] keyboard-focus:ring-offset-0`,e),...r})}var me={Root:ue,List:de,Trigger:fe,Panel:pe};function he({leading:e,title:t,subtitle:r,trailing:i,showChevron:a,selected:s,disabled:c,onClick:l,href:u,contentAriaLabel:d,className:f,ref:p,...m}){let h=!!(l||u),_=a??h,v=(0,g.jsxs)(g.Fragment,{children:[(0,g.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,g.jsx)(`span`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:t}),r==null?null:(0,g.jsx)(`span`,{className:`min-w-0 text-label-small-default text-[var(--content-tertiary)]`,children:r})]}),i!=null||_?(0,g.jsxs)(`div`,{className:`flex shrink-0 items-center gap-4`,children:[i,_?(0,g.jsx)(o,{className:`h-4 w-4 text-[var(--content-tertiary)]`}):null]}):null]}),y=`flex min-w-0 flex-1 items-center gap-4 text-left focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,b;return b=u&&!c?(0,g.jsx)(`a`,{href:u,"aria-label":d,className:n(y,`cursor-pointer`),children:v}):l?(0,g.jsx)(`button`,{type:`button`,onClick:l,disabled:c,"aria-label":d,className:n(y,`cursor-pointer disabled:cursor-not-allowed`),children:v}):(0,g.jsx)(`div`,{className:y,children:v}),(0,g.jsxs)(`div`,{...m,ref:p,"data-slot":`list-row`,className:n(`flex items-center gap-3 rounded-md px-2 py-3 transition-colors`,`[&+&]:border-t [&+&]:border-[var(--border-base)]`,h&&!s&&!c&&`hover:bg-[var(--surface-hover)]`,s&&`bg-[var(--surface-active)]`,c&&`opacity-60`,f),children:[e,b]})}export{_ as a,b as i,me as n,m as o,S as r,he as t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./createLucideIcon-Bjb-Kuq7.js";var t=e(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]);export{t};
@@ -36,4 +36,4 @@ import{i as e,r as t,s as n}from"./local-settings-lVNyIOJ_.js";import{n as r,t a
36
36
 
37
37
  `)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=w,s=!Se.jitless,c=s&&Me.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?Un([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function Kn(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!k(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>j(e,r,y())))}),t)}var qn=_(`$ZodUnion`,(e,t)=>{F.init(e,t),x(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),x(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),x(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),x(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>Ee(e.source)).join(`|`)})$`)}});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(i,a)=>{if(n)return r(i,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:i.value,issues:[]},a);if(t instanceof Promise)s.push(t),o=!0;else{if(t.issues.length===0)return t;s.push(t)}}return o?Promise.all(s).then(t=>Kn(t,i,e,a)):Kn(s,i,e,a)}}),Jn=_(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,qn.init(e,t);let n=e._zod.parse;x(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=b(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!w(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,input:o,path:[t.discriminator],inst:e}),i)}}),Yn=_(`$ZodIntersection`,(e,t)=>{F.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>Zn(e,t,n)):Zn(e,i,a)}});function Xn(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(T(e)&&T(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=Xn(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=Xn(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Zn(e,t,n){let r=new Map,i;for(let n of t.issues)if(n.code===`unrecognized_keys`){i??=n;for(let e of n.keys)r.has(e)||r.set(e,{}),r.get(e).l=!0}else e.issues.push(n);for(let t of n.issues)if(t.code===`unrecognized_keys`)for(let e of t.keys)r.has(e)||r.set(e,{}),r.get(e).r=!0;else e.issues.push(t);let a=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),k(e))return e;let o=Xn(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}var Qn=_(`$ZodRecord`,(e,t)=>{F.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!T(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){s.add(typeof e==`number`?e.toString():e);let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...A(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...A(e,o.issues)),n.value[e]=o.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&It.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>j(e,r,y())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...A(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...A(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),$n=_(`$ZodEnum`,(e,t)=>{F.init(e,t);let n=Ce(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Pe.has(typeof e)).map(e=>typeof e==`string`?E(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),er=_(`$ZodLiteral`,(e,t)=>{if(F.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?E(e):e?E(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),tr=_(`$ZodTransform`,(e,t)=>{F.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new xe(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new v;return n.value=i,n}});function nr(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}var rr=_(`$ZodOptional`,(e,t)=>{F.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,x(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),x(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Ee(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>nr(t,e.value)):nr(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),ir=_(`$ZodExactOptional`,(e,t)=>{rr.init(e,t),x(e._zod,`values`,()=>t.innerType._zod.values),x(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),ar=_(`$ZodNullable`,(e,t)=>{F.init(e,t),x(e._zod,`optin`,()=>t.innerType._zod.optin),x(e._zod,`optout`,()=>t.innerType._zod.optout),x(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Ee(e.source)}|null)$`):void 0}),x(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),or=_(`$ZodDefault`,(e,t)=>{F.init(e,t),e._zod.optin=`optional`,x(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>sr(e,t)):sr(r,t)}});function sr(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var cr=_(`$ZodPrefault`,(e,t)=>{F.init(e,t),e._zod.optin=`optional`,x(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),lr=_(`$ZodNonOptional`,(e,t)=>{F.init(e,t),x(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>ur(t,e)):ur(i,e)}});function ur(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var dr=_(`$ZodCatch`,(e,t)=>{F.init(e,t),x(e._zod,`optin`,()=>t.innerType._zod.optin),x(e._zod,`optout`,()=>t.innerType._zod.optout),x(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>j(e,n,y()))},input:e.value}),e.issues=[]),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>j(e,n,y()))},input:e.value}),e.issues=[]),e)}}),fr=_(`$ZodPipe`,(e,t)=>{F.init(e,t),x(e._zod,`values`,()=>t.in._zod.values),x(e._zod,`optin`,()=>t.in._zod.optin),x(e._zod,`optout`,()=>t.out._zod.optout),x(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>pr(e,t.in,n)):pr(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>pr(e,t.out,n)):pr(r,t.out,n)}});function pr(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}var mr=_(`$ZodReadonly`,(e,t)=>{F.init(e,t),x(e._zod,`propValues`,()=>t.innerType._zod.propValues),x(e._zod,`values`,()=>t.innerType._zod.values),x(e._zod,`optin`,()=>t.innerType?._zod?.optin),x(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(hr):hr(r)}});function hr(e){return e.value=Object.freeze(e.value),e}var gr=_(`$ZodCustom`,(e,t)=>{P.init(e,t),F.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>_r(t,n,r,e));_r(i,n,r,e)}});function _r(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(M(e))}}var vr,yr=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function br(){return new yr}(vr=globalThis).__zod_globalRegistry??(vr.__zod_globalRegistry=br());var L=globalThis.__zod_globalRegistry;function xr(e,t){return new e({type:`string`,...O(t)})}function Sr(e,t){return new e({type:`string`,coerce:!0,...O(t)})}function Cr(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...O(t)})}function wr(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...O(t)})}function Tr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...O(t)})}function Er(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...O(t)})}function Dr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...O(t)})}function Or(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...O(t)})}function kr(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...O(t)})}function Ar(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...O(t)})}function jr(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...O(t)})}function Mr(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...O(t)})}function Nr(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...O(t)})}function Pr(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...O(t)})}function Fr(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...O(t)})}function Ir(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...O(t)})}function Lr(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...O(t)})}function Rr(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...O(t)})}function zr(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...O(t)})}function Br(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...O(t)})}function Vr(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...O(t)})}function Hr(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...O(t)})}function Ur(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...O(t)})}function Wr(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...O(t)})}function Gr(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...O(t)})}function Kr(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...O(t)})}function qr(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...O(t)})}function Jr(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...O(t)})}function Yr(e,t){return new e({type:`number`,checks:[],...O(t)})}function Xr(e,t){return new e({type:`number`,coerce:!0,checks:[],...O(t)})}function Zr(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...O(t)})}function Qr(e,t){return new e({type:`boolean`,...O(t)})}function $r(e,t){return new e({type:`null`,...O(t)})}function ei(e){return new e({type:`unknown`})}function ti(e,t){return new e({type:`never`,...O(t)})}function ni(e,t){return new Ht({check:`less_than`,...O(t),value:e,inclusive:!1})}function ri(e,t){return new Ht({check:`less_than`,...O(t),value:e,inclusive:!0})}function ii(e,t){return new Ut({check:`greater_than`,...O(t),value:e,inclusive:!1})}function ai(e,t){return new Ut({check:`greater_than`,...O(t),value:e,inclusive:!0})}function oi(e,t){return new Wt({check:`multiple_of`,...O(t),value:e})}function si(e,t){return new Kt({check:`max_length`,...O(t),maximum:e})}function R(e,t){return new qt({check:`min_length`,...O(t),minimum:e})}function ci(e,t){return new Jt({check:`length_equals`,...O(t),length:e})}function li(e,t){return new Xt({check:`string_format`,format:`regex`,...O(t),pattern:e})}function ui(e){return new Zt({check:`string_format`,format:`lowercase`,...O(e)})}function di(e){return new Qt({check:`string_format`,format:`uppercase`,...O(e)})}function fi(e,t){return new $t({check:`string_format`,format:`includes`,...O(t),includes:e})}function pi(e,t){return new en({check:`string_format`,format:`starts_with`,...O(t),prefix:e})}function mi(e,t){return new tn({check:`string_format`,format:`ends_with`,...O(t),suffix:e})}function z(e){return new nn({check:`overwrite`,tx:e})}function hi(e){return z(t=>t.normalize(e))}function gi(){return z(e=>e.trim())}function _i(){return z(e=>e.toLowerCase())}function vi(){return z(e=>e.toUpperCase())}function yi(){return z(e=>Ae(e))}function bi(e,t,n){return new e({type:`array`,element:t,...O(n)})}function xi(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...O(n)})}function Si(e){let t=Ci(n=>(n.addIssue=e=>{if(typeof e==`string`)n.issues.push(M(e,n.value,t._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=n.value,r.inst??=t,r.continue??=!t._zod.def.abort,n.issues.push(M(r))}},e(n.value,n)));return t}function Ci(e,t){let n=new P({check:`custom`,...O(t)});return n._zod.check=e,n}function wi(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??L,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,external:e?.external??void 0}}function B(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,B(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&V(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&o.schema._prefault&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function Ti(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
38
38
 
39
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function Ei(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(a[e.defId]=e.def)}e.external||Object.keys(a).length>0&&(e.target===`draft-2020-12`?i.$defs=a:i.definitions=a);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,`~standard`,{value:{...t[`~standard`],jsonSchema:{input:H(t,`input`,e.processors),output:H(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function V(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return V(r.element,n);if(r.type===`set`)return V(r.valueType,n);if(r.type===`lazy`)return V(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type===`default`||r.type===`prefault`)return V(r.innerType,n);if(r.type===`intersection`)return V(r.left,n)||V(r.right,n);if(r.type===`record`||r.type===`map`)return V(r.keyType,n)||V(r.valueType,n);if(r.type===`pipe`)return V(r.in,n)||V(r.out,n);if(r.type===`object`){for(let e in r.shape)if(V(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(V(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(V(e,n))return!0;return!!(r.rest&&V(r.rest,n))}return!1}var Di=(e,t={})=>n=>{let r=wi({...n,processors:t});return B(e,r),Ti(r,e),Ei(r,e)},H=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=wi({...i??{},target:a,io:t,processors:n});return B(e,o),Ti(o,e),Ei(o,e)},Oi={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},ki=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=Oi[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},Ai=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;typeof s==`string`&&s.includes(`int`)?i.type=`integer`:i.type=`number`,typeof u==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u),typeof a==`number`&&(i.minimum=a,typeof u==`number`&&t.target!==`draft-04`&&(u>=a?delete i.minimum:delete i.exclusiveMinimum)),typeof l==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l),typeof o==`number`&&(i.maximum=o,typeof l==`number`&&t.target!==`draft-04`&&(l<=o?delete i.maximum:delete i.exclusiveMaximum)),typeof c==`number`&&(i.multipleOf=c)},ji=(e,t,n,r)=>{n.type=`boolean`},Mi=(e,t,n,r)=>{t.target===`openapi-3.0`?(n.type=`string`,n.nullable=!0,n.enum=[null]):n.type=`null`},Ni=(e,t,n,r)=>{n.not={}},Pi=(e,t,n,r)=>{let i=e._zod.def,a=Ce(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Fi=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0)if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a},Ii=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},Li=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},Ri=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=B(a.element,t,{...r,path:[...r.path,`items`]})},zi=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=B(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=B(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},Bi=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>B(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Vi=(e,t,n,r)=>{let i=e._zod.def,a=B(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=B(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},Hi=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=B(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else (t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=B(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=B(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},Ui=(e,t,n,r)=>{let i=e._zod.def,a=B(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},Wi=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Gi=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Ki=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},qi=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},Ji=(e,t,n,r)=>{let i=e._zod.def,a=t.io===`input`?i.in._zod.def.type===`transform`?i.out:i.in:i.out;B(a,t,r);let o=t.seen.get(e);o.ref=a},Yi=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Xi=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Zi=_(`ZodISODateTime`,(e,t)=>{vn.init(e,t),K.init(e,t)});function Qi(e){return Gr(Zi,e)}var $i=_(`ZodISODate`,(e,t)=>{yn.init(e,t),K.init(e,t)});function ea(e){return Kr($i,e)}var ta=_(`ZodISOTime`,(e,t)=>{bn.init(e,t),K.init(e,t)});function na(e){return qr(ta,e)}var ra=_(`ZodISODuration`,(e,t)=>{xn.init(e,t),K.init(e,t)});function ia(e){return Jr(ra,e)}var aa=(e,t)=>{qe.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>Xe(e,t)},flatten:{value:t=>Ye(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,we,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,we,2)}},isEmpty:{get(){return e.issues.length===0}}})};_(`ZodError`,aa);var U=_(`ZodError`,aa,{Parent:Error}),oa=Ze(U),sa=Qe(U),ca=$e(U),la=N(U),ua=nt(U),da=rt(U),fa=it(U),pa=at(U),ma=ot(U),ha=st(U),ga=ct(U),_a=lt(U),W=_(`ZodType`,(e,t)=>(F.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:H(e,`input`),output:H(e,`output`)}}),e.toJSONSchema=Di(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone(C(t,{checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0}),e.with=e.check,e.clone=(t,n)=>D(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>oa(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>ca(e,t,n),e.parseAsync=async(t,n)=>sa(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>la(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>ua(e,t,n),e.decode=(t,n)=>da(e,t,n),e.encodeAsync=async(t,n)=>fa(e,t,n),e.decodeAsync=async(t,n)=>pa(e,t,n),e.safeEncode=(t,n)=>ma(e,t,n),e.safeDecode=(t,n)=>ha(e,t,n),e.safeEncodeAsync=async(t,n)=>ga(e,t,n),e.safeDecodeAsync=async(t,n)=>_a(e,t,n),e.refine=(t,n)=>e.check(Fo(t,n)),e.superRefine=t=>e.check(Io(t)),e.overwrite=t=>e.check(z(t)),e.optional=()=>_o(e),e.exactOptional=()=>yo(e),e.nullable=()=>xo(e),e.nullish=()=>_o(xo(e)),e.nonoptional=t=>Do(e,t),e.array=()=>Qa(e),e.or=t=>no([e,t]),e.and=t=>oo(e,t),e.transform=t=>jo(e,ho(t)),e.default=t=>Co(e,t),e.prefault=t=>To(e,t),e.catch=t=>ko(e,t),e.pipe=t=>jo(e,t),e.readonly=()=>No(e),e.describe=t=>{let n=e.clone();return L.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return L.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return L.get(e);let n=e.clone();return L.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=t=>t(e),e)),va=_(`_ZodString`,(e,t)=>{on.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ki(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(li(...t)),e.includes=(...t)=>e.check(fi(...t)),e.startsWith=(...t)=>e.check(pi(...t)),e.endsWith=(...t)=>e.check(mi(...t)),e.min=(...t)=>e.check(R(...t)),e.max=(...t)=>e.check(si(...t)),e.length=(...t)=>e.check(ci(...t)),e.nonempty=(...t)=>e.check(R(1,...t)),e.lowercase=t=>e.check(ui(t)),e.uppercase=t=>e.check(di(t)),e.trim=()=>e.check(gi()),e.normalize=(...t)=>e.check(hi(...t)),e.toLowerCase=()=>e.check(_i()),e.toUpperCase=()=>e.check(vi()),e.slugify=()=>e.check(yi())}),ya=_(`ZodString`,(e,t)=>{on.init(e,t),va.init(e,t),e.email=t=>e.check(Cr(ba,t)),e.url=t=>e.check(kr(Ca,t)),e.jwt=t=>e.check(Wr(Ra,t)),e.emoji=t=>e.check(Ar(wa,t)),e.guid=t=>e.check(wr(xa,t)),e.uuid=t=>e.check(Tr(Sa,t)),e.uuidv4=t=>e.check(Er(Sa,t)),e.uuidv6=t=>e.check(Dr(Sa,t)),e.uuidv7=t=>e.check(Or(Sa,t)),e.nanoid=t=>e.check(jr(Ta,t)),e.guid=t=>e.check(wr(xa,t)),e.cuid=t=>e.check(Mr(Ea,t)),e.cuid2=t=>e.check(Nr(Da,t)),e.ulid=t=>e.check(Pr(Oa,t)),e.base64=t=>e.check(Vr(Fa,t)),e.base64url=t=>e.check(Hr(Ia,t)),e.xid=t=>e.check(Fr(ka,t)),e.ksuid=t=>e.check(Ir(Aa,t)),e.ipv4=t=>e.check(Lr(ja,t)),e.ipv6=t=>e.check(Rr(Ma,t)),e.cidrv4=t=>e.check(zr(Na,t)),e.cidrv6=t=>e.check(Br(Pa,t)),e.e164=t=>e.check(Ur(La,t)),e.datetime=t=>e.check(Qi(t)),e.date=t=>e.check(ea(t)),e.time=t=>e.check(na(t)),e.duration=t=>e.check(ia(t))});function G(e){return xr(ya,e)}var K=_(`ZodStringFormat`,(e,t)=>{I.init(e,t),va.init(e,t)}),ba=_(`ZodEmail`,(e,t)=>{ln.init(e,t),K.init(e,t)}),xa=_(`ZodGUID`,(e,t)=>{sn.init(e,t),K.init(e,t)}),Sa=_(`ZodUUID`,(e,t)=>{cn.init(e,t),K.init(e,t)}),Ca=_(`ZodURL`,(e,t)=>{un.init(e,t),K.init(e,t)}),wa=_(`ZodEmoji`,(e,t)=>{dn.init(e,t),K.init(e,t)}),Ta=_(`ZodNanoID`,(e,t)=>{fn.init(e,t),K.init(e,t)}),Ea=_(`ZodCUID`,(e,t)=>{pn.init(e,t),K.init(e,t)}),Da=_(`ZodCUID2`,(e,t)=>{mn.init(e,t),K.init(e,t)}),Oa=_(`ZodULID`,(e,t)=>{hn.init(e,t),K.init(e,t)}),ka=_(`ZodXID`,(e,t)=>{gn.init(e,t),K.init(e,t)}),Aa=_(`ZodKSUID`,(e,t)=>{_n.init(e,t),K.init(e,t)}),ja=_(`ZodIPv4`,(e,t)=>{Sn.init(e,t),K.init(e,t)}),Ma=_(`ZodIPv6`,(e,t)=>{Cn.init(e,t),K.init(e,t)}),Na=_(`ZodCIDRv4`,(e,t)=>{wn.init(e,t),K.init(e,t)}),Pa=_(`ZodCIDRv6`,(e,t)=>{Tn.init(e,t),K.init(e,t)}),Fa=_(`ZodBase64`,(e,t)=>{Dn.init(e,t),K.init(e,t)}),Ia=_(`ZodBase64URL`,(e,t)=>{kn.init(e,t),K.init(e,t)}),La=_(`ZodE164`,(e,t)=>{An.init(e,t),K.init(e,t)}),Ra=_(`ZodJWT`,(e,t)=>{Mn.init(e,t),K.init(e,t)}),za=_(`ZodNumber`,(e,t)=>{Nn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ai(e,t,n,r),e.gt=(t,n)=>e.check(ii(t,n)),e.gte=(t,n)=>e.check(ai(t,n)),e.min=(t,n)=>e.check(ai(t,n)),e.lt=(t,n)=>e.check(ni(t,n)),e.lte=(t,n)=>e.check(ri(t,n)),e.max=(t,n)=>e.check(ri(t,n)),e.int=t=>e.check(Ha(t)),e.safe=t=>e.check(Ha(t)),e.positive=t=>e.check(ii(0,t)),e.nonnegative=t=>e.check(ai(0,t)),e.negative=t=>e.check(ni(0,t)),e.nonpositive=t=>e.check(ri(0,t)),e.multipleOf=(t,n)=>e.check(oi(t,n)),e.step=(t,n)=>e.check(oi(t,n)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function Ba(e){return Yr(za,e)}var Va=_(`ZodNumberFormat`,(e,t)=>{Pn.init(e,t),za.init(e,t)});function Ha(e){return Zr(Va,e)}var Ua=_(`ZodBoolean`,(e,t)=>{Fn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ji(e,t,n,r)});function Wa(e){return Qr(Ua,e)}var Ga=_(`ZodNull`,(e,t)=>{In.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Mi(e,t,n,r)});function Ka(e){return $r(Ga,e)}var qa=_(`ZodUnknown`,(e,t)=>{Ln.init(e,t),W.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Ja(){return ei(qa)}var Ya=_(`ZodNever`,(e,t)=>{Rn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ni(e,t,n,r)});function Xa(e){return ti(Ya,e)}var Za=_(`ZodArray`,(e,t)=>{Bn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ri(e,t,n,r),e.element=t.element,e.min=(t,n)=>e.check(R(t,n)),e.nonempty=t=>e.check(R(1,t)),e.max=(t,n)=>e.check(si(t,n)),e.length=(t,n)=>e.check(ci(t,n)),e.unwrap=()=>e.element});function Qa(e,t){return bi(Za,e,t)}var $a=_(`ZodObject`,(e,t)=>{Gn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>zi(e,t,n,r),x(e,`shape`,()=>t.shape),e.keyof=()=>uo(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Ja()}),e.loose=()=>e.clone({...e._zod.def,catchall:Ja()}),e.strict=()=>e.clone({...e._zod.def,catchall:Xa()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>ze(e,t),e.safeExtend=t=>Be(e,t),e.merge=t=>Ve(e,t),e.pick=t=>Le(e,t),e.omit=t=>Re(e,t),e.partial=(...t)=>He(go,e,t[0]),e.required=(...t)=>Ue(Eo,e,t[0])});function eo(e,t){return new $a({type:`object`,shape:e??{},...O(t)})}var to=_(`ZodUnion`,(e,t)=>{qn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Bi(e,t,n,r),e.options=t.options});function no(e,t){return new to({type:`union`,options:e,...O(t)})}var ro=_(`ZodDiscriminatedUnion`,(e,t)=>{to.init(e,t),Jn.init(e,t)});function io(e,t,n){return new ro({type:`union`,options:t,discriminator:e,...O(n)})}var ao=_(`ZodIntersection`,(e,t)=>{Yn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Vi(e,t,n,r)});function oo(e,t){return new ao({type:`intersection`,left:e,right:t})}var so=_(`ZodRecord`,(e,t)=>{Qn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Hi(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function co(e,t,n){return new so({type:`record`,keyType:e,valueType:t,...O(n)})}var lo=_(`ZodEnum`,(e,t)=>{$n.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Pi(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new lo({...t,checks:[],...O(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new lo({...t,checks:[],...O(r),entries:i})}});function uo(e,t){return new lo({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...O(t)})}var fo=_(`ZodLiteral`,(e,t)=>{er.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Fi(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,`value`,{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function po(e,t){return new fo({type:`literal`,values:Array.isArray(e)?e:[e],...O(t)})}var mo=_(`ZodTransform`,(e,t)=>{tr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Li(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new xe(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(M(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(M(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function ho(e){return new mo({type:`transform`,transform:e})}var go=_(`ZodOptional`,(e,t)=>{rr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Xi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function _o(e){return new go({type:`optional`,innerType:e})}var vo=_(`ZodExactOptional`,(e,t)=>{ir.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Xi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function yo(e){return new vo({type:`optional`,innerType:e})}var bo=_(`ZodNullable`,(e,t)=>{ar.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ui(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function xo(e){return new bo({type:`nullable`,innerType:e})}var So=_(`ZodDefault`,(e,t)=>{or.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Gi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Co(e,t){return new So({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ne(t)}})}var wo=_(`ZodPrefault`,(e,t)=>{cr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ki(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function To(e,t){return new wo({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ne(t)}})}var Eo=_(`ZodNonOptional`,(e,t)=>{lr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Wi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Do(e,t){return new Eo({type:`nonoptional`,innerType:e,...O(t)})}var Oo=_(`ZodCatch`,(e,t)=>{dr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>qi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ko(e,t){return new Oo({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var Ao=_(`ZodPipe`,(e,t)=>{fr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ji(e,t,n,r),e.in=t.in,e.out=t.out});function jo(e,t){return new Ao({type:`pipe`,in:e,out:t})}var Mo=_(`ZodReadonly`,(e,t)=>{mr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Yi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function No(e){return new Mo({type:`readonly`,innerType:e})}var Po=_(`ZodCustom`,(e,t)=>{gr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ii(e,t,n,r)});function Fo(e,t={}){return xi(Po,e,t)}function Io(e){return Si(e)}function Lo(e,t){return jo(ho(e),t)}function Ro(e){return typeof e.cloud==`string`&&e.cloud?e.cloud:typeof e.project==`string`&&e.project?`gcp`:typeof e.sshUser==`string`&&e.sshUser?`custom`:`local`}var zo=eo({instanceDir:G().optional(),gatewayPort:Ba(),daemonPort:Ba(),runtimeVersion:G().optional(),runtimeInstallDir:G().optional()}),Bo=eo({assistantId:G(),name:G().optional(),cloud:G().optional(),runtimeUrl:G().optional(),species:G().optional(),hatchedAt:G().optional(),organizationId:G().optional(),platformAssistantId:G().optional(),platformBaseUrl:G().optional(),platformOrganizationId:G().optional(),resources:zo.optional()});function Vo(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Ho(e){if(!Vo(e)||typeof e.assistantId!=`string`)return null;let t={};for(let[n,r]of Object.entries(Bo.shape)){let i=r.safeParse(e[n]);i.success&&i.data!==void 0&&(t[n]=i.data)}return t.cloud=Ro(e),t}function Uo(e){let t=Vo(e)?e:{},n=Array.isArray(t.assistants)?t.assistants:[],r=[];for(let e of n){let t=Ho(e);t&&r.push(t)}return{assistants:r,activeAssistant:typeof t.activeAssistant==`string`?t.activeAssistant:null}}var q=class extends Error{status;constructor(e,t){super(t),this.name=`GuardianTokenError`,this.status=e}};function Wo(e){return e instanceof q&&(e.status===404||e.status===401)}var J=`The local assistant host isn't available here.`;function Go(){if(!(typeof window>`u`))return window.__VELLUM_CONFIG__}function Ko(){if(a())return!0;let e=Go();return!(!e||e.mode===`remote-gateway`)}async function Y(e,t,n){if(!Ko())return{ok:!1,error:n};let r;try{r=await fetch(e,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)})}catch{return{ok:!1,error:n}}return await r.json().catch(()=>null)??{ok:!1,error:n}}async function qo(e=`vellum`,t){return a()?window.vellum.localMode.hatch(e,t):Y(`/assistant/__local/hatch`,{species:e,remote:t},J)}async function Jo(){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 Yo(e,t){return a()?window.vellum.localMode.saveLockfileAssistant(e,t):Y(`/assistant/__local/lockfile`,{assistant:e,activeAssistant:t},J)}async function Xo(e,t){return a()?window.vellum.localMode.replacePlatformAssistants(e,t):Y(`/assistant/__local/lockfile`,{syncPlatform:!0,platformAssistants:e,organizationId:t},J)}async function Zo(e){return a()?window.vellum.localMode.retire(e):Y(`/assistant/__local/retire`,{assistantId:e},J)}async function Qo(e){if(a()){let t=window.vellum.localMode.sleep;return t?t(e):{ok:!1,error:`Sleep is not supported by this app version`}}return Y(`/assistant/__local/sleep`,{assistantId:e},J)}async function $o(e,t){if(a()){let n=window.vellum.localMode.wake;return n?n(e,t):{ok:!1,error:`Wake is not supported by this app version`}}return Y(`/assistant/__local/wake`,{assistantId:e,repairGuardian:t?.repairGuardian},`Wake failed. Try running vellum wake in your terminal.`)}async function es(e,t){if(a()){let n=window.vellum.localMode.upgrade;return n?n(e,t):{ok:!1,error:`Update and restart the desktop app to enable local upgrades.`}}let n={assistantId:e,...t?.latest?{latest:!0}:{},...t?.version?{version:t.version}:{},...t?.force?{force:!0}:{}};return(await fetch(`/assistant/__local/upgrade`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(n)})).json()}async function ts(e){if(a()){let t=window.vellum.localMode.status;return t?t(e):{ok:!1,status:501,error:`Local assistant status is not supported by this app version`}}if(!Ko())return{ok:!1,status:0,error:J};let t;try{t=await fetch(`/assistant/__local/status/${encodeURIComponent(e)}`)}catch{return{ok:!1,status:0,error:J}}return await t.json().catch(()=>null)??{ok:!1,status:t.status,error:J}}async function ns(e){if(a()){let t=await window.vellum.localMode.guardianToken(e);if(!t.ok)throw new q(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 q(t.status,e.error??`Guardian token request failed: ${t.status}`)}let{accessToken:n}=await t.json();return n}async function rs(e){return(await Y(`/assistant/__local/platform-session`,{token:e},J)).ok}async function is(){if(Ko())try{await fetch(`/assistant/__local/platform-session`,{method:`DELETE`})}catch{}}var as=()=>be.getState().lockfile,os=(e,t=!0)=>be.getState().setLockfile(e,t),ss={assistants:[],activeAssistant:null},cs=`vellum:local:lockfile`;function ls(){return window.__VELLUM_CONFIG__?.platformUrl||window.location.origin}function us(){return window.__VELLUM_CONFIG__??{}}function X(){return us().mode===`remote-gateway`}function ds(){return{assistants:[{assistantId:`self`,name:`Local Assistant`,cloud:`local`,runtimeUrl:window.location.origin,hatchedAt:`1970-01-01T00:00:00.000Z`,resources:{gatewayPort:0,daemonPort:0}}],activeAssistant:`self`}}var Z=e=>{os(e),n(cs,JSON.stringify(e)),As()},fs=new Set([`1`,`true`,`yes`]);function ps(){return!fs.has(`false`)}function ms(){let e=us();return e?.disablePlatform==null?!1:!!e.disablePlatform}async function hs(){if(X()){let e=ds();return Z(e),e}try{let e=await Jo();return Z(e),e}catch{return Q()}}function Q(){if(X()){let e=ds();return os(e),e}let e=as();if(e)return e;let n=t(cs,``);if(n)try{let e=Uo(JSON.parse(n));return os(e),e}catch{}let r={...ss};return os(r,!1),r}async function gs(e){let t=await Yo(e,e.assistantId);t.ok&&Z(t.lockfile)}async function _s(e){let t=await Yo({...e},void 0);t.ok&&Z(t.lockfile)}async function vs(e){if(X())return;let t=Q().assistants.find(t=>t.assistantId===e);if(!t)return;let n=await Yo({...t},e);n.ok&&Z(n.lockfile)}async function ys(e,t,n=()=>!0){if(t==null||!n())return;let r=await Xo(e.filter(e=>!e.is_local).map(e=>({assistantId:e.id,...e.name!=null&&{name:e.name},cloud:`vellum`,runtimeUrl:ls(),hatchedAt:e.created,...t!=null&&{organizationId:t}})),t);r.ok&&n()&&Z(r.lockfile)}async function bs(e){let t=await Zo(e);return t.ok&&(l(),he(),_e(null),await hs()),t}function xs(){return Q().assistants.length>0}function Ss(e){return e.cloud===`local`}function Cs(e){return e.cloud===`vellum`}function ws(e){let t=Q().assistants.find(t=>t.assistantId===e);return!!t&&Ss(t)}function Ts(){return Q().assistants.filter(Ss)}function Es(){return Q().assistants.filter(Cs)}function Ds(){let e=Q(),t=e.assistants.find(t=>t.assistantId===e.activeAssistant);if(t)return t;if(e.assistants.length===1)return e.assistants[0]}function Os(){let e=s();if(e){let t=Q().assistants.find(t=>t.assistantId===e);if(t)return t}return Ds()}function ks(e){return Q().assistants.find(t=>t.assistantId===e)}function As(){let e=s();e&&(Q().assistants.some(t=>t.assistantId===e)||l())}function js(e){return`/assistant/__gateway/${e}`}function Ms(e){return!!e&&ps()&&!X()&&Ss(e)}function $(e=Os()){if(!Ms(e))return;let t=e.resources?.gatewayPort;if(t!=null)return js(t)}async function Ns(){let e=$();if(!e)return!1;try{let t=await fetch(`${e}/readyz`);if(!t.ok)return!1;let n=await t.json();return typeof n==`object`&&!!n&&`status`in n&&n.status===`ok`}catch{return!1}}var Ps=class extends Error{constructor(e){super(`Local assistant ${e} has no resolved gateway`),this.name=`UnresolvedLocalGatewayError`}};async function Fs(e){let t=e??Os(),n=me(t);if(!n){if(Ms(t))throw new Ps(t.assistantId);return}await pe(n,t?await ns(t.assistantId):void 0);let r=$(t);r&&_e({url:`${window.location.origin}${r}`,token:g()})}function Is(e){return e instanceof q?e.status!==403:!0}async function Ls(e){try{await Fs(e);return}catch(t){if(!Is(t))throw t;let n=(e??Os())?.assistantId;if(!n||!(await $o(n)).ok)throw t;await Fs((await hs()).assistants.find(e=>e.assistantId===n)??e)}}export{be as $,Ko as A,Qa as B,vs as C,ns as D,is as E,$o as F,eo as G,io as H,za as I,G as J,Lo as K,ya as L,Wo as M,Qo as N,ts as O,es as P,Sr as Q,uo as R,gs as S,_s as T,po as U,Wa as V,Ba as W,Ja as X,no as Y,Xr as Z,hs as _,Q as a,g as at,Ns as b,ls as c,ce as ct,ws as d,o as dt,ye as et,Ss as f,l as ft,X as g,ms as h,$ as i,pe as it,rs as j,qo as k,Os as l,d as lt,Cs as m,c as mt,Ds as n,_e as nt,ks as o,me as ot,ps as p,s as pt,co as q,Ts as r,he as rt,Es as s,se as st,Ps as t,ve as tt,xs as u,de as ut,Fs as v,ys as w,bs as x,Ls as y,Ka as z};
39
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function Ei(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(a[e.defId]=e.def)}e.external||Object.keys(a).length>0&&(e.target===`draft-2020-12`?i.$defs=a:i.definitions=a);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,`~standard`,{value:{...t[`~standard`],jsonSchema:{input:H(t,`input`,e.processors),output:H(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function V(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return V(r.element,n);if(r.type===`set`)return V(r.valueType,n);if(r.type===`lazy`)return V(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type===`default`||r.type===`prefault`)return V(r.innerType,n);if(r.type===`intersection`)return V(r.left,n)||V(r.right,n);if(r.type===`record`||r.type===`map`)return V(r.keyType,n)||V(r.valueType,n);if(r.type===`pipe`)return V(r.in,n)||V(r.out,n);if(r.type===`object`){for(let e in r.shape)if(V(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(V(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(V(e,n))return!0;return!!(r.rest&&V(r.rest,n))}return!1}var Di=(e,t={})=>n=>{let r=wi({...n,processors:t});return B(e,r),Ti(r,e),Ei(r,e)},H=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=wi({...i??{},target:a,io:t,processors:n});return B(e,o),Ti(o,e),Ei(o,e)},Oi={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},ki=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=Oi[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},Ai=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;typeof s==`string`&&s.includes(`int`)?i.type=`integer`:i.type=`number`,typeof u==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u),typeof a==`number`&&(i.minimum=a,typeof u==`number`&&t.target!==`draft-04`&&(u>=a?delete i.minimum:delete i.exclusiveMinimum)),typeof l==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l),typeof o==`number`&&(i.maximum=o,typeof l==`number`&&t.target!==`draft-04`&&(l<=o?delete i.maximum:delete i.exclusiveMaximum)),typeof c==`number`&&(i.multipleOf=c)},ji=(e,t,n,r)=>{n.type=`boolean`},Mi=(e,t,n,r)=>{t.target===`openapi-3.0`?(n.type=`string`,n.nullable=!0,n.enum=[null]):n.type=`null`},Ni=(e,t,n,r)=>{n.not={}},Pi=(e,t,n,r)=>{let i=e._zod.def,a=Ce(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Fi=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0)if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a},Ii=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},Li=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},Ri=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=B(a.element,t,{...r,path:[...r.path,`items`]})},zi=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=B(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=B(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},Bi=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>B(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Vi=(e,t,n,r)=>{let i=e._zod.def,a=B(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=B(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},Hi=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=B(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else (t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=B(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=B(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},Ui=(e,t,n,r)=>{let i=e._zod.def,a=B(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},Wi=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Gi=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Ki=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},qi=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},Ji=(e,t,n,r)=>{let i=e._zod.def,a=t.io===`input`?i.in._zod.def.type===`transform`?i.out:i.in:i.out;B(a,t,r);let o=t.seen.get(e);o.ref=a},Yi=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Xi=(e,t,n,r)=>{let i=e._zod.def;B(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Zi=_(`ZodISODateTime`,(e,t)=>{vn.init(e,t),K.init(e,t)});function Qi(e){return Gr(Zi,e)}var $i=_(`ZodISODate`,(e,t)=>{yn.init(e,t),K.init(e,t)});function ea(e){return Kr($i,e)}var ta=_(`ZodISOTime`,(e,t)=>{bn.init(e,t),K.init(e,t)});function na(e){return qr(ta,e)}var ra=_(`ZodISODuration`,(e,t)=>{xn.init(e,t),K.init(e,t)});function ia(e){return Jr(ra,e)}var aa=(e,t)=>{qe.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>Xe(e,t)},flatten:{value:t=>Ye(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,we,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,we,2)}},isEmpty:{get(){return e.issues.length===0}}})};_(`ZodError`,aa);var U=_(`ZodError`,aa,{Parent:Error}),oa=Ze(U),sa=Qe(U),ca=$e(U),la=N(U),ua=nt(U),da=rt(U),fa=it(U),pa=at(U),ma=ot(U),ha=st(U),ga=ct(U),_a=lt(U),W=_(`ZodType`,(e,t)=>(F.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:H(e,`input`),output:H(e,`output`)}}),e.toJSONSchema=Di(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone(C(t,{checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0}),e.with=e.check,e.clone=(t,n)=>D(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>oa(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>ca(e,t,n),e.parseAsync=async(t,n)=>sa(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>la(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>ua(e,t,n),e.decode=(t,n)=>da(e,t,n),e.encodeAsync=async(t,n)=>fa(e,t,n),e.decodeAsync=async(t,n)=>pa(e,t,n),e.safeEncode=(t,n)=>ma(e,t,n),e.safeDecode=(t,n)=>ha(e,t,n),e.safeEncodeAsync=async(t,n)=>ga(e,t,n),e.safeDecodeAsync=async(t,n)=>_a(e,t,n),e.refine=(t,n)=>e.check(Fo(t,n)),e.superRefine=t=>e.check(Io(t)),e.overwrite=t=>e.check(z(t)),e.optional=()=>_o(e),e.exactOptional=()=>yo(e),e.nullable=()=>xo(e),e.nullish=()=>_o(xo(e)),e.nonoptional=t=>Do(e,t),e.array=()=>Qa(e),e.or=t=>no([e,t]),e.and=t=>oo(e,t),e.transform=t=>jo(e,ho(t)),e.default=t=>Co(e,t),e.prefault=t=>To(e,t),e.catch=t=>ko(e,t),e.pipe=t=>jo(e,t),e.readonly=()=>No(e),e.describe=t=>{let n=e.clone();return L.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return L.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return L.get(e);let n=e.clone();return L.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=t=>t(e),e)),va=_(`_ZodString`,(e,t)=>{on.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ki(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(li(...t)),e.includes=(...t)=>e.check(fi(...t)),e.startsWith=(...t)=>e.check(pi(...t)),e.endsWith=(...t)=>e.check(mi(...t)),e.min=(...t)=>e.check(R(...t)),e.max=(...t)=>e.check(si(...t)),e.length=(...t)=>e.check(ci(...t)),e.nonempty=(...t)=>e.check(R(1,...t)),e.lowercase=t=>e.check(ui(t)),e.uppercase=t=>e.check(di(t)),e.trim=()=>e.check(gi()),e.normalize=(...t)=>e.check(hi(...t)),e.toLowerCase=()=>e.check(_i()),e.toUpperCase=()=>e.check(vi()),e.slugify=()=>e.check(yi())}),ya=_(`ZodString`,(e,t)=>{on.init(e,t),va.init(e,t),e.email=t=>e.check(Cr(ba,t)),e.url=t=>e.check(kr(Ca,t)),e.jwt=t=>e.check(Wr(Ra,t)),e.emoji=t=>e.check(Ar(wa,t)),e.guid=t=>e.check(wr(xa,t)),e.uuid=t=>e.check(Tr(Sa,t)),e.uuidv4=t=>e.check(Er(Sa,t)),e.uuidv6=t=>e.check(Dr(Sa,t)),e.uuidv7=t=>e.check(Or(Sa,t)),e.nanoid=t=>e.check(jr(Ta,t)),e.guid=t=>e.check(wr(xa,t)),e.cuid=t=>e.check(Mr(Ea,t)),e.cuid2=t=>e.check(Nr(Da,t)),e.ulid=t=>e.check(Pr(Oa,t)),e.base64=t=>e.check(Vr(Fa,t)),e.base64url=t=>e.check(Hr(Ia,t)),e.xid=t=>e.check(Fr(ka,t)),e.ksuid=t=>e.check(Ir(Aa,t)),e.ipv4=t=>e.check(Lr(ja,t)),e.ipv6=t=>e.check(Rr(Ma,t)),e.cidrv4=t=>e.check(zr(Na,t)),e.cidrv6=t=>e.check(Br(Pa,t)),e.e164=t=>e.check(Ur(La,t)),e.datetime=t=>e.check(Qi(t)),e.date=t=>e.check(ea(t)),e.time=t=>e.check(na(t)),e.duration=t=>e.check(ia(t))});function G(e){return xr(ya,e)}var K=_(`ZodStringFormat`,(e,t)=>{I.init(e,t),va.init(e,t)}),ba=_(`ZodEmail`,(e,t)=>{ln.init(e,t),K.init(e,t)}),xa=_(`ZodGUID`,(e,t)=>{sn.init(e,t),K.init(e,t)}),Sa=_(`ZodUUID`,(e,t)=>{cn.init(e,t),K.init(e,t)}),Ca=_(`ZodURL`,(e,t)=>{un.init(e,t),K.init(e,t)}),wa=_(`ZodEmoji`,(e,t)=>{dn.init(e,t),K.init(e,t)}),Ta=_(`ZodNanoID`,(e,t)=>{fn.init(e,t),K.init(e,t)}),Ea=_(`ZodCUID`,(e,t)=>{pn.init(e,t),K.init(e,t)}),Da=_(`ZodCUID2`,(e,t)=>{mn.init(e,t),K.init(e,t)}),Oa=_(`ZodULID`,(e,t)=>{hn.init(e,t),K.init(e,t)}),ka=_(`ZodXID`,(e,t)=>{gn.init(e,t),K.init(e,t)}),Aa=_(`ZodKSUID`,(e,t)=>{_n.init(e,t),K.init(e,t)}),ja=_(`ZodIPv4`,(e,t)=>{Sn.init(e,t),K.init(e,t)}),Ma=_(`ZodIPv6`,(e,t)=>{Cn.init(e,t),K.init(e,t)}),Na=_(`ZodCIDRv4`,(e,t)=>{wn.init(e,t),K.init(e,t)}),Pa=_(`ZodCIDRv6`,(e,t)=>{Tn.init(e,t),K.init(e,t)}),Fa=_(`ZodBase64`,(e,t)=>{Dn.init(e,t),K.init(e,t)}),Ia=_(`ZodBase64URL`,(e,t)=>{kn.init(e,t),K.init(e,t)}),La=_(`ZodE164`,(e,t)=>{An.init(e,t),K.init(e,t)}),Ra=_(`ZodJWT`,(e,t)=>{Mn.init(e,t),K.init(e,t)}),za=_(`ZodNumber`,(e,t)=>{Nn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ai(e,t,n,r),e.gt=(t,n)=>e.check(ii(t,n)),e.gte=(t,n)=>e.check(ai(t,n)),e.min=(t,n)=>e.check(ai(t,n)),e.lt=(t,n)=>e.check(ni(t,n)),e.lte=(t,n)=>e.check(ri(t,n)),e.max=(t,n)=>e.check(ri(t,n)),e.int=t=>e.check(Ha(t)),e.safe=t=>e.check(Ha(t)),e.positive=t=>e.check(ii(0,t)),e.nonnegative=t=>e.check(ai(0,t)),e.negative=t=>e.check(ni(0,t)),e.nonpositive=t=>e.check(ri(0,t)),e.multipleOf=(t,n)=>e.check(oi(t,n)),e.step=(t,n)=>e.check(oi(t,n)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function Ba(e){return Yr(za,e)}var Va=_(`ZodNumberFormat`,(e,t)=>{Pn.init(e,t),za.init(e,t)});function Ha(e){return Zr(Va,e)}var Ua=_(`ZodBoolean`,(e,t)=>{Fn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ji(e,t,n,r)});function Wa(e){return Qr(Ua,e)}var Ga=_(`ZodNull`,(e,t)=>{In.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Mi(e,t,n,r)});function Ka(e){return $r(Ga,e)}var qa=_(`ZodUnknown`,(e,t)=>{Ln.init(e,t),W.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Ja(){return ei(qa)}var Ya=_(`ZodNever`,(e,t)=>{Rn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ni(e,t,n,r)});function Xa(e){return ti(Ya,e)}var Za=_(`ZodArray`,(e,t)=>{Bn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ri(e,t,n,r),e.element=t.element,e.min=(t,n)=>e.check(R(t,n)),e.nonempty=t=>e.check(R(1,t)),e.max=(t,n)=>e.check(si(t,n)),e.length=(t,n)=>e.check(ci(t,n)),e.unwrap=()=>e.element});function Qa(e,t){return bi(Za,e,t)}var $a=_(`ZodObject`,(e,t)=>{Gn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>zi(e,t,n,r),x(e,`shape`,()=>t.shape),e.keyof=()=>uo(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Ja()}),e.loose=()=>e.clone({...e._zod.def,catchall:Ja()}),e.strict=()=>e.clone({...e._zod.def,catchall:Xa()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>ze(e,t),e.safeExtend=t=>Be(e,t),e.merge=t=>Ve(e,t),e.pick=t=>Le(e,t),e.omit=t=>Re(e,t),e.partial=(...t)=>He(go,e,t[0]),e.required=(...t)=>Ue(Eo,e,t[0])});function eo(e,t){return new $a({type:`object`,shape:e??{},...O(t)})}var to=_(`ZodUnion`,(e,t)=>{qn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Bi(e,t,n,r),e.options=t.options});function no(e,t){return new to({type:`union`,options:e,...O(t)})}var ro=_(`ZodDiscriminatedUnion`,(e,t)=>{to.init(e,t),Jn.init(e,t)});function io(e,t,n){return new ro({type:`union`,options:t,discriminator:e,...O(n)})}var ao=_(`ZodIntersection`,(e,t)=>{Yn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Vi(e,t,n,r)});function oo(e,t){return new ao({type:`intersection`,left:e,right:t})}var so=_(`ZodRecord`,(e,t)=>{Qn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Hi(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function co(e,t,n){return new so({type:`record`,keyType:e,valueType:t,...O(n)})}var lo=_(`ZodEnum`,(e,t)=>{$n.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Pi(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new lo({...t,checks:[],...O(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new lo({...t,checks:[],...O(r),entries:i})}});function uo(e,t){return new lo({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...O(t)})}var fo=_(`ZodLiteral`,(e,t)=>{er.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Fi(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,`value`,{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function po(e,t){return new fo({type:`literal`,values:Array.isArray(e)?e:[e],...O(t)})}var mo=_(`ZodTransform`,(e,t)=>{tr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Li(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new xe(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(M(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(M(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function ho(e){return new mo({type:`transform`,transform:e})}var go=_(`ZodOptional`,(e,t)=>{rr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Xi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function _o(e){return new go({type:`optional`,innerType:e})}var vo=_(`ZodExactOptional`,(e,t)=>{ir.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Xi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function yo(e){return new vo({type:`optional`,innerType:e})}var bo=_(`ZodNullable`,(e,t)=>{ar.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ui(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function xo(e){return new bo({type:`nullable`,innerType:e})}var So=_(`ZodDefault`,(e,t)=>{or.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Gi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Co(e,t){return new So({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ne(t)}})}var wo=_(`ZodPrefault`,(e,t)=>{cr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ki(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function To(e,t){return new wo({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ne(t)}})}var Eo=_(`ZodNonOptional`,(e,t)=>{lr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Wi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Do(e,t){return new Eo({type:`nonoptional`,innerType:e,...O(t)})}var Oo=_(`ZodCatch`,(e,t)=>{dr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>qi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ko(e,t){return new Oo({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var Ao=_(`ZodPipe`,(e,t)=>{fr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ji(e,t,n,r),e.in=t.in,e.out=t.out});function jo(e,t){return new Ao({type:`pipe`,in:e,out:t})}var Mo=_(`ZodReadonly`,(e,t)=>{mr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Yi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function No(e){return new Mo({type:`readonly`,innerType:e})}var Po=_(`ZodCustom`,(e,t)=>{gr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ii(e,t,n,r)});function Fo(e,t={}){return xi(Po,e,t)}function Io(e){return Si(e)}function Lo(e,t){return jo(ho(e),t)}function Ro(e){return typeof e.cloud==`string`&&e.cloud?e.cloud:typeof e.project==`string`&&e.project?`gcp`:typeof e.sshUser==`string`&&e.sshUser?`custom`:`local`}var zo=eo({instanceDir:G().optional(),gatewayPort:Ba(),daemonPort:Ba(),runtimeVersion:G().optional(),runtimeInstallDir:G().optional()}),Bo=eo({assistantId:G(),name:G().optional(),cloud:G().optional(),runtimeUrl:G().optional(),species:G().optional(),hatchedAt:G().optional(),organizationId:G().optional(),platformAssistantId:G().optional(),platformBaseUrl:G().optional(),platformOrganizationId:G().optional(),resources:zo.optional()});function Vo(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Ho(e){if(!Vo(e)||typeof e.assistantId!=`string`)return null;let t={};for(let[n,r]of Object.entries(Bo.shape)){let i=r.safeParse(e[n]);i.success&&i.data!==void 0&&(t[n]=i.data)}return t.cloud=Ro(e),t}function Uo(e){let t=Vo(e)?e:{},n=Array.isArray(t.assistants)?t.assistants:[],r=[];for(let e of n){let t=Ho(e);t&&r.push(t)}return{assistants:r,activeAssistant:typeof t.activeAssistant==`string`?t.activeAssistant:null}}var q=class extends Error{status;constructor(e,t){super(t),this.name=`GuardianTokenError`,this.status=e}};function Wo(e){return e instanceof q&&(e.status===404||e.status===401)}var J=`The local assistant host isn't available here.`;function Go(){if(!(typeof window>`u`))return window.__VELLUM_CONFIG__}function Ko(){if(a())return!0;let e=Go();return!(!e||e.mode===`remote-gateway`)}async function Y(e,t,n){if(!Ko())return{ok:!1,error:n};let r;try{r=await fetch(e,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)})}catch{return{ok:!1,error:n}}return await r.json().catch(()=>null)??{ok:!1,error:n}}async function qo(e=`vellum`,t){return a()?window.vellum.localMode.hatch(e,t):Y(`/assistant/__local/hatch`,{species:e,remote:t},J)}async function Jo(){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 Yo(e,t){return a()?window.vellum.localMode.saveLockfileAssistant(e,t):Y(`/assistant/__local/lockfile`,{assistant:e,activeAssistant:t},J)}async function Xo(e,t){return a()?window.vellum.localMode.replacePlatformAssistants(e,t):Y(`/assistant/__local/lockfile`,{syncPlatform:!0,platformAssistants:e,organizationId:t},J)}async function Zo(e){return a()?window.vellum.localMode.retire(e):Y(`/assistant/__local/retire`,{assistantId:e},J)}async function Qo(e){if(a()){let t=window.vellum.localMode.sleep;return t?t(e):{ok:!1,error:`Sleep is not supported by this app version`}}return Y(`/assistant/__local/sleep`,{assistantId:e},J)}async function $o(e,t){if(a()){let n=window.vellum.localMode.wake;return n?n(e,t):{ok:!1,error:`Wake is not supported by this app version`}}return Y(`/assistant/__local/wake`,{assistantId:e,repairGuardian:t?.repairGuardian},`Wake failed. Try running vellum wake in your terminal.`)}async function es(e,t){if(a()){let n=window.vellum.localMode.upgrade;return n?n(e,t):{ok:!1,error:`Update and restart the desktop app to enable local upgrades.`}}let n={assistantId:e,...t?.latest?{latest:!0}:{},...t?.version?{version:t.version}:{},...t?.force?{force:!0}:{}};return(await fetch(`/assistant/__local/upgrade`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(n)})).json()}async function ts(e){if(a()){let t=window.vellum.localMode.status;return t?t(e):{ok:!1,status:501,error:`Local assistant status is not supported by this app version`}}if(!Ko())return{ok:!1,status:0,error:J};let t;try{t=await fetch(`/assistant/__local/status/${encodeURIComponent(e)}`)}catch{return{ok:!1,status:0,error:J}}return await t.json().catch(()=>null)??{ok:!1,status:t.status,error:J}}async function ns(e){if(a()){let t=await window.vellum.localMode.guardianToken(e);if(!t.ok)throw new q(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 q(t.status,e.error??`Guardian token request failed: ${t.status}`)}let{accessToken:n}=await t.json();return n}async function rs(e){return(await Y(`/assistant/__local/platform-session`,{token:e},J)).ok}async function is(){if(Ko())try{await fetch(`/assistant/__local/platform-session`,{method:`DELETE`})}catch{}}var as=()=>be.getState().lockfile,os=(e,t=!0)=>be.getState().setLockfile(e,t),ss={assistants:[],activeAssistant:null},cs=`vellum:local:lockfile`;function ls(){return window.__VELLUM_CONFIG__?.platformUrl||window.location.origin}function us(){return window.__VELLUM_CONFIG__??{}}function X(){return us().mode===`remote-gateway`}function ds(){return{assistants:[{assistantId:`self`,name:`Local Assistant`,cloud:`local`,runtimeUrl:window.location.origin,hatchedAt:`1970-01-01T00:00:00.000Z`,resources:{gatewayPort:0,daemonPort:0}}],activeAssistant:`self`}}var Z=e=>{os(e),n(cs,JSON.stringify(e)),js()},fs=new Set([`1`,`true`,`yes`]);function ps(){return!fs.has(`false`)}function ms(){let e=us();return e?.disablePlatform==null?!1:!!e.disablePlatform}async function hs(){if(X()){let e=ds();return Z(e),e}try{let e=await Jo();return Z(e),e}catch{return Q()}}function Q(){if(X()){let e=ds();return os(e),e}let e=as();if(e)return e;let n=t(cs,``);if(n)try{let e=Uo(JSON.parse(n));return os(e),e}catch{}let r={...ss};return os(r,!1),r}async function gs(e){let t=await Yo(e,e.assistantId);t.ok&&Z(t.lockfile)}async function _s(e){let t=await Yo({...e},void 0);t.ok&&Z(t.lockfile)}async function vs(e){if(X())return;let t=Q().assistants.find(t=>t.assistantId===e);if(!t)return;let n=await Yo({...t},e);n.ok&&Z(n.lockfile)}async function ys(e,t,n=()=>!0){if(t==null||!n())return;let r=await Xo(e.filter(e=>!e.is_local).map(e=>({assistantId:e.id,...e.name!=null&&{name:e.name},cloud:`vellum`,runtimeUrl:ls(),hatchedAt:e.created,...t!=null&&{organizationId:t}})),t);r.ok&&n()&&Z(r.lockfile)}async function bs(e){let t=await Zo(e);return t.ok&&(l(),he(),_e(null),await hs()),t}function xs(){return Q().assistants.length>0}function Ss(e){return e.cloud===`local`}function Cs(e){return e.cloud===`local`||e.cloud===`docker`}function ws(e){return e.cloud===`vellum`}function Ts(e){let t=Q().assistants.find(t=>t.assistantId===e);return!!t&&Ss(t)}function Es(){return Q().assistants.filter(Ss)}function Ds(){return Q().assistants.filter(ws)}function Os(){let e=Q(),t=e.assistants.find(t=>t.assistantId===e.activeAssistant);if(t)return t;if(e.assistants.length===1)return e.assistants[0]}function ks(){let e=s();if(e){let t=Q().assistants.find(t=>t.assistantId===e);if(t)return t}return Os()}function As(e){return Q().assistants.find(t=>t.assistantId===e)}function js(){let e=s();e&&(Q().assistants.some(t=>t.assistantId===e)||l())}function Ms(e){return`/assistant/__gateway/${e}`}function Ns(e){return!!e&&ps()&&!X()&&Cs(e)}function Ps(e){let t=e.resources?.gatewayPort;if(t!=null)return t;if(e.runtimeUrl)try{let t=new URL(e.runtimeUrl);if(t.hostname!==`localhost`&&t.hostname!==`127.0.0.1`)return;let n=Number(t.port);return Number.isInteger(n)&&n>0?n:void 0}catch{return}}function $(e=ks()){if(!Ns(e))return;let t=Ps(e);if(t!=null)return Ms(t)}async function Fs(){let e=$();if(!e)return!1;try{let t=await fetch(`${e}/readyz`);if(!t.ok)return!1;let n=await t.json();return typeof n==`object`&&!!n&&`status`in n&&n.status===`ok`}catch{return!1}}var Is=class extends Error{constructor(e){super(`Local assistant ${e} has no resolved gateway`),this.name=`UnresolvedLocalGatewayError`}};async function Ls(e){let t=e??ks(),n=me(t);if(!n){if(Ns(t))throw new Is(t.assistantId);return}await pe(n,t?await ns(t.assistantId):void 0);let r=$(t);r&&_e({url:`${window.location.origin}${r}`,token:g()})}function Rs(e){return e instanceof q?e.status!==403:!0}async function zs(e){try{await Ls(e);return}catch(t){if(!Rs(t))throw t;let n=(e??ks())?.assistantId;if(!n||!(await $o(n)).ok)throw t;await Ls((await hs()).assistants.find(e=>e.assistantId===n)??e)}}export{be as $,Ko as A,Qa as B,vs as C,ns as D,is as E,$o as F,eo as G,io as H,za as I,G as J,Lo as K,ya as L,Wo as M,Qo as N,ts as O,es as P,Sr as Q,uo as R,gs as S,_s as T,po as U,Wa as V,Ba as W,Ja as X,no as Y,Xr as Z,hs as _,Q as a,g as at,Fs as b,ls as c,ce as ct,Ts as d,o as dt,ye as et,Ss as f,l as ft,X as g,ms as h,$ as i,pe as it,rs as j,qo as k,ks as l,d as lt,ws as m,c as mt,Os as n,_e as nt,As as o,me as ot,ps as p,s as pt,co as q,Es as r,he as rt,Ds as s,se as st,Is as t,ve as tt,xs as u,de as ut,Ls as v,ys as w,bs as x,zs as y,Ka as z};
@@ -1 +1 @@
1
- import{t as e}from"./createLucideIcon-IRfcSUxS.js";var t=e(`log-in`,[[`path`,{d:`m10 17 5-5-5-5`,key:`1bsop3`}],[`path`,{d:`M15 12H3`,key:`6jk70r`}],[`path`,{d:`M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4`,key:`u53s6r`}]]);export{t};
1
+ import{t as e}from"./createLucideIcon-Bjb-Kuq7.js";var t=e(`log-in`,[[`path`,{d:`m10 17 5-5-5-5`,key:`1bsop3`}],[`path`,{d:`M15 12H3`,key:`6jk70r`}],[`path`,{d:`M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4`,key:`u53s6r`}]]);export{t};
@@ -1 +1 @@
1
- import{c as e}from"./routes-BbeIx_F9.js";import{r as t,t as n}from"./build-state-PUXrUU4W.js";var r=`workos`,i=e.account.providerCallback,a=`authIntent`;function o(e,t={}){let n=new URLSearchParams;e&&n.set(`returnTo`,e),t.authIntent&&n.set(a,t.authIntent);let r=n.toString();return r?`${i}?${r}`:i}function s(e){return e.get(a)===`signup`?`signup`:`login`}function c(e){return e.startsWith(`http`)||e.startsWith(`/accounts/`)||e.startsWith(`/v1/`)||e.startsWith(`/_allauth/`)}function l(e,t){return u({returnTo:e,fallback:t,authIntent:`login`})}function u({returnTo:e,fallback:r,authIntent:i}){let a=t(n(),{kind:`post-auth`,authIntent:i,returnTo:e,fallback:r}),o=a.action===`redirect`?a.to:r;return{destination:o,requiresFullPageNavigation:c(o)}}export{u as a,s as i,r as n,l as o,o as r,i as t};
1
+ import{c as e}from"./routes-Bzvx8bnp.js";import{r as t,t as n}from"./build-state-Cc8lgfTd.js";var r=`workos`,i=e.account.providerCallback,a=`authIntent`;function o(e,t={}){let n=new URLSearchParams;e&&n.set(`returnTo`,e),t.authIntent&&n.set(a,t.authIntent);let r=n.toString();return r?`${i}?${r}`:i}function s(e){return e.get(a)===`signup`?`signup`:`login`}function c(e){return e.startsWith(`http`)||e.startsWith(`/accounts/`)||e.startsWith(`/v1/`)||e.startsWith(`/_allauth/`)}function l(e,t){return u({returnTo:e,fallback:t,authIntent:`login`})}function u({returnTo:e,fallback:r,authIntent:i}){let a=t(n(),{kind:`post-auth`,authIntent:i,returnTo:e,fallback:r}),o=a.action===`redirect`?a.to:r;return{destination:o,requiresFullPageNavigation:c(o)}}export{u as a,s as i,r as n,l as o,o as r,i as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{P as n,t as r}from"./button-BQVYX8n_.js";import{m as i,t as a}from"./chunk-5KNZJZUH-SU6Q_tDT.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import"./src-A8hMQd90.js";import{f as s,m as c,p as l}from"./native-biometric-BvCjSInu.js";import{c as u}from"./routes-Bzvx8bnp.js";import{n as d,r as f}from"./login-flow-CmlnYi0j.js";import{t as p}from"./public-asset-Budc22a_.js";var m=e(t(),1),h=o();function g({children:e}){return(0,h.jsxs)(`div`,{className:`fixed inset-0 z-50 flex flex-col items-center justify-center bg-[var(--surface-base)] text-[var(--content-default)]`,children:[(0,h.jsx)(`img`,{src:p(`/vellum-logo.svg`),alt:`Vellum`,width:220,height:66,className:`block dark:hidden`}),(0,h.jsx)(`img`,{src:p(`/vellum-logo-white.svg`),alt:`Vellum`,width:220,height:66,className:`hidden dark:block`}),e,(0,h.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute left-1/2 w-full max-w-[900px] -translate-x-1/2`,style:{bottom:0},children:(0,h.jsx)(`img`,{src:p(`/login-background-characters.svg`),alt:``,width:880,height:182,className:`h-auto w-full`})})]})}function _(){return(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(`div`,{className:`pointer-events-none absolute top-[120px] left-1/2 z-0 -translate-x-1/2`,children:(0,h.jsx)(`img`,{src:p(`/vellum-logo-white.svg`),alt:`Vellum`,width:92,height:28})}),(0,h.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute right-0 bottom-0 left-1/2 z-0 w-full max-w-[1100px] -translate-x-1/2`,children:(0,h.jsx)(`img`,{src:p(`/login-background-characters.svg`),alt:``,width:880,height:182,className:`h-auto w-full`})})]})}var v=`flex w-full max-w-[448px] flex-col gap-6 rounded-lg border border-[var(--border-disabled)] bg-[var(--surface-lift)] p-6`;function y({children:e}){return(0,h.jsx)(`div`,{className:v,children:e})}function b({children:e}){return(0,h.jsx)(`h1`,{className:`text-title-large text-center text-[var(--content-emphasised)]`,children:e})}function x({children:e,className:t}){return(0,h.jsx)(`p`,{className:n(`text-body-small-default text-center text-[var(--system-negative-strong)]`,t),children:e})}function S({children:e}){return(0,h.jsx)(`div`,{className:`dark`,children:(0,h.jsxs)(`div`,{className:`relative min-h-screen overflow-x-hidden bg-[var(--surface-base)] text-[var(--content-default)]`,children:[(0,h.jsx)(_,{}),(0,h.jsx)(`div`,{className:`relative z-10 flex min-h-screen flex-col items-center justify-center px-4`,children:e})]})})}var C={signup_closed:`Sign-ups are currently closed. Visit vellum.ai/community to request access.`};function w({returnTo:e}){let[t,n]=(0,m.useState)(null),[i,a]=(0,m.useState)(!1),o=async()=>{n(null),a(!0);try{await l({returnTo:e??null})}catch(e){let t=e&&typeof e==`object`&&`code`in e?e.code:void 0;if(t===`USER_CANCELLED`){a(!1);return}if(t===`AUTH_ERROR`){let t=e&&typeof e==`object`&&`data`in e&&e.data&&typeof e.data==`object`&&`authError`in e.data&&typeof e.data.authError==`string`?e.data.authError:void 0;n((t&&C[t])??`Something went wrong. Please try again.`)}else console.error(`[native-auth] auth flow failed:`,e),n(`Something went wrong. Please try again.`);a(!1)}};return(0,h.jsx)(g,{children:(0,h.jsxs)(`div`,{className:`z-10 mt-8 flex w-full max-w-[320px] flex-col items-center gap-3`,children:[t&&(0,h.jsx)(x,{className:`max-w-[280px]`,children:t}),(0,h.jsx)(r,{type:`button`,variant:`primary`,fullWidth:!0,onClick:()=>{o()},disabled:i,className:`max-w-[300px]`,children:`Sign in`})]})})}function T({returnTo:e}){let[t,n]=(0,m.useState)(null),[i,o]=(0,m.useState)(!1),c=f(e),l=e?`${u.account.signup}?returnTo=${encodeURIComponent(e)}`:u.account.signup,p=async()=>{n(null),o(!0);try{await s(d,c,{returnTo:e})}catch(e){console.error(`[web-login] auth flow failed:`,e),n(`Something went wrong. Please try again.`),o(!1)}};return(0,h.jsx)(S,{children:(0,h.jsxs)(y,{children:[(0,h.jsx)(b,{children:`Sign in to Vellum`}),t&&(0,h.jsx)(x,{children:t}),(0,h.jsx)(`div`,{className:`flex flex-col items-center gap-3`,children:(0,h.jsx)(r,{type:`button`,variant:`primary`,fullWidth:!0,onClick:()=>void p(),disabled:i,className:`max-w-[300px]`,children:`Continue`})}),(0,h.jsxs)(`p`,{className:`text-body-small-default flex justify-center gap-1`,children:[(0,h.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Don't have an account?`}),(0,h.jsx)(a,{to:l,className:`font-medium text-[var(--content-emphasised)] hover:underline`,children:`Sign up`})]})]})})}function E(){let[e]=i(),t=c(),n=e.get(`returnTo`);return t?(0,h.jsx)(w,{returnTo:n}):(0,h.jsx)(T,{returnTo:n})}export{E as LoginPage};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{h as n}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import{n as i}from"./auth-store-C09YAZEu.js";import{t as a}from"./return-to-BwxkOGDI.js";import{c as o}from"./routes-BbeIx_F9.js";import{hr as s}from"./index-yu6nDHvG.js";import{r as c,t as l}from"./account-shell-CdhP9l8T.js";var u=e(t(),1),d=r();function f(){let[e]=n(),t=i.use.logout(),r=(0,u.useRef)(!1);return(0,u.useEffect)(()=>{if(r.current)return;r.current=!0;let n=a(e.get(`returnTo`),o.account.login),i=n.startsWith(`http`)||n===o.account.login?n:`${o.account.login}?returnTo=${encodeURIComponent(n)}`,c=!1;return t().then(()=>{c||s(i)},()=>{c||s(i)}),()=>{c=!0}},[t,e]),(0,d.jsx)(l,{children:(0,d.jsx)(c,{title:`Signing out...`})})}export{f as LogoutPage};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{m as n}from"./chunk-5KNZJZUH-SU6Q_tDT.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import{n as i}from"./auth-store-Ce9wqr8c.js";import{t as a}from"./return-to-ugSGJ0dm.js";import{c as o}from"./routes-Bzvx8bnp.js";import{xr as s}from"./index-31nbLUeS.js";import{r as c,t as l}from"./account-shell-BVt4WGoT.js";var u=e(t(),1),d=r();function f(){let[e]=n(),t=i.use.logout(),r=(0,u.useRef)(!1);return(0,u.useEffect)(()=>{if(r.current)return;r.current=!0;let n=a(e.get(`returnTo`),o.account.login),i=n.startsWith(`http`)||n===o.account.login?n:`${o.account.login}?returnTo=${encodeURIComponent(n)}`,c=!1;return t().then(()=>{c||s(i)},()=>{c||s(i)}),()=>{c=!0}},[t,e]),(0,d.jsx)(l,{children:(0,d.jsx)(c,{title:`Signing out...`})})}export{f as LogoutPage};
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{l as n,r}from"./chunk-5KNZJZUH-SU6Q_tDT.js";import{t as i}from"./jsx-runtime-CVSDxk6A.js";import{t as a}from"./createLucideIcon-Bjb-Kuq7.js";import{c as o}from"./routes-Bzvx8bnp.js";import{Gi as s,Gr as c}from"./index-31nbLUeS.js";import{n as l,t as u}from"./sidebar-tree-Osepkg7m.js";var d=a(`monitor-cog`,[[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`m14.305 7.53.923-.382`,key:`1mlnsw`}],[`path`,{d:`m15.228 4.852-.923-.383`,key:`82mpwg`}],[`path`,{d:`m16.852 3.228-.383-.924`,key:`ln4sir`}],[`path`,{d:`m16.852 8.772-.383.923`,key:`1dejw0`}],[`path`,{d:`m19.148 3.228.383-.924`,key:`192kgf`}],[`path`,{d:`m19.53 9.696-.382-.924`,key:`fiavlr`}],[`path`,{d:`m20.772 4.852.924-.383`,key:`1j8mgp`}],[`path`,{d:`m20.772 7.148.924.383`,key:`zix9be`}],[`path`,{d:`M22 13v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7`,key:`1tnzv8`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}]]),f=e(t(),1),p=[{id:`emails`,label:`Emails`,href:o.logs.emails,icon:s},{id:`system-events`,label:`System Events`,href:o.logs.systemEvents,icon:d}],m=i();function h(){let e=c({platformHostedOnly:!0}),t=c(),{pathname:i}=n(),a=(0,f.useMemo)(()=>p.filter(n=>!(n.id===`system-events`&&e===`gated`||n.id===`emails`&&t===`gated`)),[e,t]),s=(0,f.useMemo)(()=>{let e=p.find(e=>i===e.href||i.startsWith(e.href+`/`));return e?e.label:i===o.logs.root?p[0]?.label??`Logs & Usage`:`Logs & Usage`},[i]);return(0,m.jsx)(l,{backHref:o.assistant,sidebar:(0,m.jsx)(u,{items:a,indexPath:o.logs.root}),title:s,menuRoute:o.logs.root,children:(0,m.jsx)(r,{})})}export{h as LogsLayout};
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-BQVYX8n_.js";import{u as r}from"./chunk-5KNZJZUH-SU6Q_tDT.js";import{t as i}from"./useQuery-B45lW1Kk.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./queryOptions-BtNi-_9H.js";import{n as s,t as c}from"./minimize-2-B8VHIj-G.js";import{t as l}from"./sparkles-BK3KXCjl.js";import{t as u}from"./x-BYcSiJRX.js";import{j as d}from"./src-A8hMQd90.js";import{t as f}from"./file-markdown-wMH_OULm.js";import{mn as p,pn as m}from"./sdk.gen-CFgJ4K6f.js";import{n as h,r as g,t as _}from"./api-errors-CrWDzVca.js";import{t as v}from"./consent-Bg13wifR.js";import{t as y}from"./ingest-B0ofnlye.js";import{Mi as b,Ui as x,di as S,ji as C,ui as w,wr as ee}from"./index-31nbLUeS.js";import{t as te}from"./use-active-assistant-id-KipCgPNT.js";var T=e(t(),1),E={x:600,y:450},D=`Failed to load the memory graph.`;function O(e){return o({queryKey:[`memory-graph`,e],staleTime:5*6e4,queryFn:async()=>{let{data:t,error:n,response:r}=await m({path:{assistant_id:e},throwOnError:!1});if(h(r,n,D),r.status===404)return{kind:`unsupported`};if(!r.ok)throw new _(r.status,g(n,r,D));return!t||t.supported===!1?{kind:`unsupported`}:{kind:`ready`,graph:t}}})}var k=`memory_tab_v1`,A=crypto.randomUUID();function j(e){typeof window>`u`||v()&&y([{type:`onboarding`,daemon_event_id:crypto.randomUUID(),recorded_at:Date.now(),screen:`memory`,session_id:A,step_name:e,funnel_version:k}])}var M=Math.PI*(3-Math.sqrt(5)),N=7,P=2.4,F=34,I=10;function L(e){return Math.min(F,N+P*Math.sqrt(e))}function ne(e){return e===`concept`||e===`skill`||e===`capability`?e:`other`}function R(e){return e===`link`||e===`learned`?e:`other`}function re(e,t={}){let n=t.center??E,r=e.nodes,i=r.length;if(i===0)return{nodes:[],edges:[]};let a=new Map;r.forEach((e,t)=>a.set(e.id,t));let o=e.edges.filter(e=>e.source!==e.target&&a.has(e.source)&&a.has(e.target)),s=Array(i).fill(0),c=[];for(let e of o){let t=a.get(e.source),n=a.get(e.target);s[t]++,s[n]++,c.push([t,n])}let l=r.map((e,t)=>L(s[t])),u=70+26*Math.sqrt(i),d=r.map((e,t)=>{let r=(t+.5)/i,a=Math.acos(1-2*r),o=t*M,s=u*Math.cbrt(r),c=Math.sin(a);return{x:n.x+s*c*Math.cos(o),y:n.y+s*c*Math.sin(o),z:s*Math.cos(a),vx:0,vy:0,vz:0}}),f=t.iterations??Math.max(90,Math.min(340,Math.round(46e3/i))),p=.011,m=.82,h=.5,g=1,_=1-.001**(1/f);for(let e=0;e<f;e++){for(let e=0;e<i;e++){let t=d[e];for(let n=e+1;n<i;n++){let r=d[n],i=t.x-r.x,a=t.y-r.y,o=t.z-r.z,s=i*i+a*a+o*o;s<.01&&(i=(e-n)*.1+.1,a=.1,o=.05,s=i*i+a*a+o*o);let c=Math.sqrt(s),l=6400/s,u=i/c*l,f=a/c*l,p=o/c*l;t.vx+=u,t.vy+=f,t.vz+=p,r.vx-=u,r.vy-=f,r.vz-=p}}for(let[e,t]of c){let n=d[e],r=d[t],i=r.x-n.x,a=r.y-n.y,o=r.z-n.z,s=Math.sqrt(i*i+a*a+o*o)||.01,c=.05*(s-140),l=i/s*c,u=a/s*c,f=o/s*c;n.vx+=l,n.vy+=u,n.vz+=f,r.vx-=l,r.vy-=u,r.vz-=f}for(let e=0;e<i;e++){let t=d[e];t.vx+=(n.x-t.x)*p,t.vy+=(n.y-t.y)*p,t.vz+=(0-t.z)*p,t.x+=t.vx*g*h,t.y+=t.vy*g*h,t.z+=t.vz*g*h,t.vx*=m,t.vy*=m,t.vz*=m}g*=1-_}for(let e=0;e<10;e++){let e=!1;for(let t=0;t<i;t++){let n=d[t];for(let r=t+1;r<i;r++){let i=d[r],a=i.x-n.x,o=i.y-n.y,s=i.z-n.z,c=Math.sqrt(a*a+o*o+s*s),u=l[t]+l[r]+I;if(c>=u)continue;c<.01&&(a=(r-t)*.1+.1,o=.1,s=.05,c=Math.sqrt(a*a+o*o+s*s));let f=(u-c)/2,p=a/c*f,m=o/c*f,h=s/c*f;n.x-=p,n.y-=m,n.z-=h,i.x+=p,i.y+=m,i.z+=h,e=!0}}if(!e)break}return{nodes:r.map((e,t)=>{let n={id:e.id,x:d[t].x,y:d[t].y,z:d[t].z,radius:l[t],label:e.label,kind:ne(e.kind),degree:s[t]};return e.summary&&(n.summary=e.summary),e.updatedAtMs!==void 0&&(n.updatedAtMs=e.updatedAtMs),n}),edges:o.map((e,t)=>{let n={id:`${e.source}__${e.target}__${t}`,fromId:e.source,toId:e.target,kind:R(e.kind),directed:e.directed??!1};return e.description&&(n.description=e.description),n})}}var z=`Failed to load this concept.`;function B(e,t){return o({queryKey:[`memory-graph-node`,e,t],enabled:!!(e&&t),queryFn:async()=>{let{data:n,error:r,response:i}=await p({path:{assistant_id:e},query:{id:t??``},throwOnError:!1});if(h(i,r,z),!i.ok)throw new _(i.status,g(r,i,z));return n??{found:!1}}})}var V=a();function H(e){return e?new Date(e).toLocaleDateString(`en-GB`,{day:`numeric`,month:`short`,year:`numeric`}):null}function ie({assistantId:e,node:t,onClose:r,onOpenThread:a}){let o=i(B(e,t.id)),s=o.data,c=H(t.updatedAtMs),d=s?.title??t.label;return(0,T.useEffect)(()=>{let e=e=>{e.key===`Escape`&&r()};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[r]),(0,V.jsxs)(`div`,{"data-graph-panel":!0,className:`absolute inset-0 z-20 flex justify-end`,onPointerDown:e=>e.stopPropagation(),onPointerMove:e=>e.stopPropagation(),onPointerUp:e=>e.stopPropagation(),children:[(0,V.jsx)(`div`,{className:`absolute inset-0`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 55%, transparent)`},onClick:r}),(0,V.jsxs)(`aside`,{className:`relative flex h-full min-h-0 w-full max-w-md flex-col overflow-hidden`,style:{backgroundColor:`var(--surface-lift)`,borderLeft:`1px solid var(--border-base)`},children:[(0,V.jsxs)(`header`,{className:`flex shrink-0 items-start justify-between gap-3 border-b px-5 py-4`,style:{borderColor:`var(--border-base)`},children:[(0,V.jsxs)(`div`,{className:`min-w-0`,children:[(0,V.jsx)(`h2`,{className:`truncate text-title-small`,style:{color:`var(--content-default)`},title:s?.title??t.label,children:s?.title??t.label}),c?(0,V.jsxs)(`p`,{className:`mt-0.5 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:[`Updated `,c]}):null]}),(0,V.jsx)(n,{variant:`ghost`,iconOnly:(0,V.jsx)(u,{"aria-hidden":!0}),onClick:r,"aria-label":`Close`,tintColor:`var(--content-tertiary)`})]}),(0,V.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-5 py-4`,style:{touchAction:`pan-y`},children:o.isLoading?(0,V.jsx)(`div`,{className:`flex justify-center py-8`,children:(0,V.jsx)(`div`,{className:`h-5 w-5 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):o.isError?(0,V.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Couldn't load this concept. Try again in a moment.`}):s?.found&&s.content?.trim()?(0,V.jsx)(f,{content:s.content}):(0,V.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`This concept doesn't have written content yet — it exists as a link in the graph, but its page is empty.`})}),a?(0,V.jsxs)(`footer`,{className:`flex shrink-0 gap-2 border-t px-5 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,V.jsx)(n,{variant:`outlined`,size:`regular`,className:`flex-1`,leftIcon:(0,V.jsx)(x,{size:16,"aria-hidden":!0}),onClick:()=>a(`Tell me what you remember about "${d}" and how it connects to the rest of what you know.`),children:`Ask about this`}),(0,V.jsx)(n,{variant:`primary`,size:`regular`,className:`flex-1`,leftIcon:(0,V.jsx)(l,{size:16,"aria-hidden":!0}),onClick:()=>a(`I want to refine what you remember about "${d}". Ask me what's off and we'll correct it together.`),children:`Refine`})]}):null]})]})}function ae({onDismiss:e}){return(0,V.jsxs)(`div`,{"data-graph-control":!0,className:`pointer-events-auto absolute left-1/2 top-4 z-10 flex w-[min(30rem,calc(100%-6rem))] -translate-x-1/2 items-start gap-3 rounded-xl px-4 py-3`,style:{backgroundColor:`var(--surface-lift)`,border:`1px solid var(--border-base)`,boxShadow:`0 4px 12px rgba(0, 0, 0, 0.25)`},children:[(0,V.jsx)(`span`,{className:`mt-0.5 shrink-0`,style:{color:`var(--primary-base)`},"aria-hidden":!0,children:(0,V.jsx)(l,{size:18})}),(0,V.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,V.jsx)(`p`,{className:`text-body-medium-emphasised`,style:{color:`var(--content-default)`},children:`This is your assistant's mind`}),(0,V.jsx)(`p`,{className:`mt-0.5 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:`Every idea it learns — and the links it draws between them — shows up here. The map grows and rearranges itself as you talk, so the more you share, the richer it gets.`})]}),(0,V.jsx)(n,{variant:`ghost`,iconOnly:(0,V.jsx)(u,{"aria-hidden":!0}),onClick:e,"aria-label":`Dismiss`,tintColor:`var(--content-tertiary)`})]})}var oe={concept:`#5B8DEF`,skill:`#A665C9`,capability:`#0E9B8B`,other:`#8D99A5`},se=[`#5B8DEF`,`#FB923C`,`#2DD4BF`,`#F472B6`,`#A3E635`,`#C084FC`,`#FACC15`,`#38BDF8`,`#F87171`,`#4ADE80`],U={concept:`Concept`,skill:`Skill`,capability:`Capability`,other:`Other`},ce=`#E9A23B`;function le({nodeKinds:e,coloredByTheme:t,hasLinks:n,hasLearned:r,onToggleLink:i,onToggleLearned:a,linkActive:o,learnedActive:s}){return(0,V.jsxs)(`div`,{"data-graph-control":!0,className:`pointer-events-none absolute bottom-4 left-4 flex flex-col gap-1.5 rounded-lg px-3 py-2`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 78%, transparent)`,border:`1px solid var(--border-base)`},children:[e.map(e=>(0,V.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,V.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 rounded-full`,style:{backgroundColor:oe[e]}}),(0,V.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:U[e]})]},e)),t&&(0,V.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:`Colored by theme`}),(e.length>0||t)&&(n||r)&&(0,V.jsx)(`div`,{className:`mt-0.5 border-t pt-1.5`,style:{borderColor:`var(--border-base)`}}),n&&(0,V.jsx)(W,{swatchStyle:{borderTop:`2px solid var(--content-tertiary)`},label:`Link`,onToggle:i,active:o}),r&&(0,V.jsx)(W,{swatchStyle:{borderTop:`2px dashed #E9A23B`},label:`Learned`,onToggle:a,active:s})]})}function W({swatchStyle:e,label:t,onToggle:n,active:r}){let i=(0,V.jsx)(`span`,{className:`inline-block h-0 w-4`,style:e}),a=(0,V.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:t});return n?(0,V.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":r,className:`pointer-events-auto flex cursor-pointer items-center gap-2 border-0 bg-transparent p-0 transition-opacity`,style:{opacity:r===!1?.4:1},children:[i,a]}):(0,V.jsxs)(`div`,{className:`flex items-center gap-2`,children:[i,a]})}var G=8;function ue(e,t){let n=e.length;if(n===0)return new Map;let r=new Map;e.forEach((e,t)=>r.set(e.id,t));let i=e.map(()=>[]);for(let e of t){let t=r.get(e.fromId),n=r.get(e.toId);t===void 0||n===void 0||t===n||(i[t].push(n),i[n].push(t))}let a=e.map((e,t)=>t);for(let e=0;e<G;e++)for(let e=0;e<n;e++){let t=i[e];if(t.length===0)continue;let n=new Map;for(let e of t)n.set(a[e],(n.get(a[e])??0)+1);let r=a[e],o=-1;for(let[e,t]of n)(t>o||t===o&&e<r)&&(r=e,o=t);a[e]=r}let o=new Map,s=new Map;return e.forEach((e,t)=>{let n=a[t],r=o.get(n);r===void 0&&(r=o.size,o.set(n,r)),s.set(e.id,r)}),s}var K=[{value:`all`,label:`All`},{value:`month`,label:`Month`},{value:`week`,label:`Week`}];function de({value:e,onChange:t}){return(0,V.jsx)(d,{ariaLabel:`Recency window`,items:K,value:e,onChange:t,className:`!w-auto [&>*]:!flex-none`})}var q=`vellum:memoryGraph:introDismissed:`;function J(e){return`${q}${e}`}function Y(e){if(!e)return!0;try{return window.localStorage.getItem(J(e))===`1`}catch{return!0}}function fe(e){let[t,n]=(0,T.useState)(()=>Y(e));return(0,T.useEffect)(()=>{n(Y(e))},[e]),[t,(0,T.useCallback)(()=>{n(!0);try{window.localStorage.setItem(J(e),`1`)}catch{}},[e])]}var pe=[`concept`,`skill`,`capability`,`other`],me=.13,he=2600,ge=.006,X=1.15,_e=3,ve=.32,ye=.45,be=3,xe=4,Z=1440*60*1e3,Se=14*Z,Ce=12,we=2*Z,Te=80,Ee=340,De=.12,Oe=12;function ke(e){let t=getComputedStyle(e);return{content:t.getPropertyValue(`--content-default`).trim()||`#e5e7eb`,tertiary:t.getPropertyValue(`--content-tertiary`).trim()||`#8792a0`}}function Ae(e){return e.kind===`learned`?`Learned association`:e.description??`Linked concepts`}function je(e,t,n){return t==null?!1:e==null||n-e>t}function Me({title:e,detail:t}){return(0,V.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 px-6 text-center`,children:[(0,V.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),t?(0,V.jsx)(`p`,{className:`max-w-sm text-body-small-default`,style:{color:`var(--content-tertiary)`},children:t}):null]})}function Ne({assistantId:e,className:t,isFullscreen:r,onToggleFullscreen:a,onOpenThread:o}){let l=(0,T.useRef)(null),d=(0,T.useRef)(null),f=i(O(e)),p=f.data?.kind===`ready`?f.data.graph:null,m=(0,T.useMemo)(()=>p?re(p):{nodes:[],edges:[]},[p]),h=f.data?.kind===`ready`&&m.nodes.length>0,g=(0,T.useMemo)(()=>ue(m.nodes,m.edges),[m.nodes,m.edges]),_=(0,T.useMemo)(()=>{let e=new Map;for(let t of m.nodes){let n=g.get(t.id);if(n==null||t.degree===0)continue;let r=e.get(n);(!r||t.degree>r.degree||t.degree===r.degree&&t.id<r.id)&&e.set(n,t)}let t=new Set;for(let n of e.values())t.add(n.id);return t},[g,m.nodes]),v=(0,T.useMemo)(()=>{let e=new Map,t=(t,n)=>{let r=e.get(t);r||(r=new Set,e.set(t,r)),r.add(n)};for(let e of m.edges)t(e.fromId,e.toId),t(e.toId,e.fromId);return e},[m.edges]),y=(0,T.useMemo)(()=>{if(m.nodes.length===0)return 1;let e=m.nodes.map(e=>{let t=e.x-E.x,n=e.y-E.y;return Math.sqrt(t*t+n*n+e.z*e.z)+e.radius}).sort((e,t)=>e-t),t=Math.min(e.length-1,Math.floor(e.length*.92));return Math.max(1,e[t])},[m.nodes]),x=(0,T.useRef)({yaw:.5,pitch:.32,zoom:1,hoveredId:null,dragging:!1,moved:!1,lastX:0,lastY:0,lastInteractAt:-1/0,dirty:!0}),ee=(0,T.useRef)([]),te=(0,T.useRef)([]),D=(0,T.useRef)({content:`#e5e7eb`,tertiary:`#8792a0`}),k=(0,T.useRef)(null),[A,M]=(0,T.useState)(null),[N,P]=(0,T.useState)(null),[F,I]=(0,T.useState)(null),L=(0,T.useCallback)(e=>{j(`node_opened`),I(e)},[]),[ne,R]=fe(e),[z,B]=(0,T.useState)(``),H=(0,T.useRef)(!1),U=z.trim().toLowerCase(),W=(0,T.useMemo)(()=>{if(!U)return null;let e=new Set;for(let t of m.nodes)t.label.toLowerCase().includes(U)&&e.add(t.id);return e},[U,m.nodes]),G=(0,T.useRef)({active:!1,matches:null});(0,T.useEffect)(()=>{G.current={active:!!W,matches:W},x.current.dirty=!0},[W]),(0,T.useEffect)(()=>{z.trim()||(H.current=!1)},[z]);let K=(0,T.useMemo)(()=>!W||W.size===0?[]:m.nodes.filter(e=>W.has(e.id)).sort((e,t)=>t.degree-e.degree).slice(0,8),[W,m.nodes]),[q,J]=(0,T.useState)(`all`),Y=(0,T.useRef)(null);(0,T.useEffect)(()=>{Y.current=q===`week`?7*Z:q===`month`?30*Z:null,x.current.dirty=!0},[q]);let Ne=(0,T.useMemo)(()=>m.nodes.some(e=>e.updatedAtMs!=null),[m.nodes]);(0,T.useEffect)(()=>{!Ne&&q!==`all`&&J(`all`)},[Ne,q]);let[Q,$]=(0,T.useState)({link:!0,learned:!0}),Pe=(0,T.useRef)(Q);(0,T.useEffect)(()=>{Pe.current=Q,x.current.dirty=!0},[Q]),(0,T.useEffect)(()=>{B(``),J(`all`),$({link:!0,learned:!0}),H.current=!1},[e]);let Fe=(0,T.useCallback)(e=>{if(!e)return null;let t=m.nodes.find(t=>t.id===e);return t?t.summary?`${t.label} — ${t.summary}`:t.label:null},[m.nodes]),Ie=(0,T.useCallback)(()=>{let e=x.current;e.yaw=.5,e.pitch=.32,e.zoom=1,e.lastInteractAt=-1/0,e.dirty=!0,M(null)},[]),Le=(0,T.useCallback)(e=>{let t=x.current;t.zoom=Math.max(ye,Math.min(be,t.zoom*e)),t.lastInteractAt=performance.now(),t.dirty=!0},[]),Re=(0,T.useCallback)(e=>{k.current=e,x.current.lastInteractAt=performance.now(),x.current.dirty=!0},[]);(0,T.useEffect)(()=>{if(!h)return;let e=d.current,t=l.current;if(!e||!t)return;let n=e.getContext(`2d`);if(!n)return;let r=m.nodes,i=m.edges,a=g,o=_,s=v,c=y,u=window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;D.current=ke(t);let f=Math.min(window.devicePixelRatio||1,2),p=0,b=0,S=()=>{let n=t.getBoundingClientRect();p=n.width,b=n.height,f=Math.min(window.devicePixelRatio||1,2),e.width=Math.max(1,Math.round(p*f)),e.height=Math.max(1,Math.round(b*f)),e.style.width=`${p}px`,e.style.height=`${b}px`,D.current=ke(t),x.current.dirty=!0};S();let C=new ResizeObserver(S);C.observe(t);let w=0,T=0,O=e=>{let t=T?Math.min(.05,(e-T)/1e3):0;T=e;let l=x.current,d=D.current,m=Date.now(),h=k.current;if(!l.dragging&&e-l.lastInteractAt>he&&!u&&!h&&(l.yaw+=me*t),h){let e=r.find(e=>e.id===h);if(!e)k.current=null;else{let t=e.x-E.x,n=e.y-E.y,r=e.z,i=-Math.atan2(t,r),a=Math.hypot(t,r),o=Math.max(-X,Math.min(X,Math.atan2(n,a))),s=Math.min(be,1.6),c=u?1:.15,d=i-l.yaw;d=Math.atan2(Math.sin(d),Math.cos(d)),l.yaw+=d*c,l.pitch+=(o-l.pitch)*c,l.zoom+=(s-l.zoom)*c,l.dirty=!0,Math.abs(d)<.01&&Math.abs(o-l.pitch)<.01&&Math.abs(s-l.zoom)<.02&&(k.current=null)}}if(u&&!l.dirty){w=requestAnimationFrame(O);return}l.dirty=!1;let g=Math.cos(l.yaw),_=Math.sin(l.yaw),v=Math.cos(l.pitch),y=Math.sin(l.pitch),S=_e*c,C=Math.min(p,b)*.88/(2*c)*l.zoom,A=p/2,j=b/2;n.setTransform(f,0,0,f,0,0),n.clearRect(0,0,p,b);let M=l.hoveredId,N=M?s.get(M):void 0,P=e=>!M||e===M||(N?.has(e)??!1),F=G.current,I=F.active,L=e=>!I||(F.matches?.has(e)??!1),ne=Y.current,R=e=>je(e.updatedAtMs,ne,m),re=Pe.current,z=r.length<=Te?1:Math.max(De,1-(r.length-Te)/(Ee-Te)*(1-De)),B=Array(r.length);for(let e=0;e<r.length;e++){let t=r[e],n=t.x-E.x,i=t.y-E.y,a=t.z,o=n*g+a*_,s=-n*_+a*g,l=i*v-s*y,u=i*y+s*v,d=S/(S-u);B[e]={node:t,sx:A+o*C*d,sy:j+l*C*d,sr:Math.max(1.2,t.radius*C*d),depth:Math.max(0,Math.min(1,(u+c)/(2*c)))}}let V=B.map((e,t)=>t).sort((e,t)=>B[e].depth-B[t].depth),H=new Map;for(let e of B)H.set(e.node.id,e);let ie=[];n.lineCap=`round`;for(let e of i){let t=H.get(e.fromId),r=H.get(e.toId);if(!t||!r)continue;let i=e.kind===`learned`;if(i?!re.learned:!re.link)continue;let a=I&&(!L(e.fromId)||!L(e.toId))||R(t.node)||R(r.node),o=M!=null&&(e.fromId===M||e.toId===M),s=(t.depth+r.depth)/2;a||ie.push({ax:t.sx,ay:t.sy,bx:r.sx,by:r.sy,kind:e.kind,description:e.description,depth:s});let c=(i?.34:.28)*(.4+.6*s),l=i?c*z:c,u;u=a?.03:M==null?l:o?.9:P(e.fromId)&&P(e.toId)?c:.05,n.globalAlpha=u,n.strokeStyle=i?ce:d.tertiary,n.lineWidth=(o?2:1)*(.6+.6*s),n.setLineDash(i?[4,4]:[]),n.beginPath(),n.moveTo(t.sx,t.sy),n.lineTo(r.sx,r.sy),n.stroke()}n.setLineDash([]);for(let t of V){let r=B[t],i=r.node,o=i.kind===`concept`?se[(a.get(i.id)??0)%se.length]:oe[i.kind],s=I&&!L(i.id)||R(i),c=!s&&P(i.id),l=i.id===M,d=ve+(1-ve)*r.depth,f=s?d*.08:c?d:d*.18,p=(l?16:i.degree>=xe?8:4)*r.depth,h=i.updatedAtMs;if(h){let n=m-h,i=Math.max(0,1-n/Se);if(i>0){let a=i*Ce;!u&&n<we&&(a*=.55+.45*Math.sin(e/420+t*1.7)),p+=a*r.depth}}n.shadowColor=o,n.shadowBlur=c?p:0,n.globalAlpha=f*.55,n.fillStyle=o,n.beginPath(),n.arc(r.sx,r.sy,r.sr,0,Math.PI*2),n.fill(),n.shadowBlur=0,n.globalAlpha=f,n.lineWidth=l?2.5:1.4,n.strokeStyle=o,n.stroke()}n.shadowBlur=0,n.textAlign=`center`,n.textBaseline=`top`,n.font=`11px ui-sans-serif, system-ui, sans-serif`;for(let e of V){let t=B[e],r=t.node;if(I&&!L(r.id)||R(r)||!(I?t.depth>.3:M==null?o.has(r.id)||r.degree>=xe&&t.depth>.55:P(r.id)))continue;n.globalAlpha=(r.id===M?1:.85)*(.4+.6*t.depth),n.fillStyle=d.content;let i=r.label.length>22?`${r.label.slice(0,21)}…`:r.label;n.fillText(i,t.sx,t.sy+t.sr+3)}n.globalAlpha=1,ee.current=B.map(e=>({id:e.node.id,sx:e.sx,sy:e.sy,sr:e.sr,depth:e.depth,updatedAtMs:e.node.updatedAtMs})),te.current=ie,w=requestAnimationFrame(O)};return w=requestAnimationFrame(O),()=>{cancelAnimationFrame(w),C.disconnect()}},[h,m,v,y,g,_]);let ze=(0,T.useCallback)((e,t)=>{let n=G.current,r=Y.current,i=Date.now(),a=null,o=-1;for(let s of ee.current){if(n.active&&!(n.matches?.has(s.id)??!1)||je(s.updatedAtMs,r,i))continue;let c=e-s.sx,l=t-s.sy;c*c+l*l<=(s.sr+5)*(s.sr+5)&&s.depth>o&&(a=s.id,o=s.depth)}return a},[]),Be=(0,T.useCallback)((e,t)=>{let n=null,r=1/0,i=-1;for(let a of te.current){let o=a.bx-a.ax,s=a.by-a.ay,c=o*o+s*s,l=0;c>0&&(l=((e-a.ax)*o+(t-a.ay)*s)/c,l=Math.max(0,Math.min(1,l)));let u=e-(a.ax+l*o),d=t-(a.ay+l*s),f=Math.sqrt(u*u+d*d);f>5||(f<r||f===r&&a.depth>i)&&(n={kind:a.kind,description:a.description},r=f,i=a.depth)}return n},[]),Ve=e=>{let t=l.current.getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}},He=(0,T.useCallback)(e=>{if(e.button!==0||e.target.closest(`[data-graph-control]`))return;let t=x.current;k.current=null,t.dragging=!0,t.moved=!1,t.lastX=e.clientX,t.lastY=e.clientY,t.lastInteractAt=performance.now(),e.currentTarget.setPointerCapture(e.pointerId)},[]),Ue=(0,T.useCallback)(e=>{let t=x.current;if(t.dragging){let n=e.clientX-t.lastX,r=e.clientY-t.lastY;(Math.abs(n)>2||Math.abs(r)>2)&&(t.moved=!0),t.yaw+=n*ge,t.pitch=Math.max(-X,Math.min(X,t.pitch+r*ge)),t.lastX=e.clientX,t.lastY=e.clientY,t.lastInteractAt=performance.now(),t.dirty=!0;return}let{x:n,y:r}=Ve(e),i=ze(n,r);if(i!==t.hoveredId&&(t.hoveredId=i,t.dirty=!0,M(Fe(i))),i)P(null);else{let e=Be(n,r);P(e?Ae(e):null)}},[ze,Fe,Be]),We=(0,T.useCallback)(e=>{let t=x.current;if(!t.dragging)return;t.dragging=!1,t.lastInteractAt=performance.now(),t.dirty=!0;let n=e.currentTarget;if(n.hasPointerCapture(e.pointerId)&&n.releasePointerCapture(e.pointerId),!t.moved){let{x:t,y:n}=Ve(e),r=ze(t,n);if(r){let e=m.nodes.find(e=>e.id===r);e&&L({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs})}else M(null)}},[ze,m.nodes,L]),Ge=(0,T.useCallback)(()=>{let e=x.current;P(null),!(e.dragging||e.hoveredId==null)&&(e.hoveredId=null,e.dirty=!0,M(null))},[]);(0,T.useEffect)(()=>{let e=l.current;if(!e||!h)return;let t=e=>{if(e.target.closest?.(`[data-graph-panel]`))return;e.preventDefault();let t=x.current;t.zoom=Math.max(ye,Math.min(be,t.zoom*(1-e.deltaY/500))),t.lastInteractAt=performance.now(),t.dirty=!0};return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},[h]);let Ke=(0,T.useMemo)(()=>{let e=new Set(m.nodes.map(e=>e.kind));return pe.filter(t=>e.has(t))},[m.nodes]),qe=(0,T.useMemo)(()=>m.edges.some(e=>e.kind===`learned`),[m.edges]),Je=(0,T.useMemo)(()=>m.edges.some(e=>e.kind!==`learned`),[m.edges]);(0,T.useEffect)(()=>{!(Je&&qe)&&(!Q.link||!Q.learned)&&$({link:!0,learned:!0})},[Je,qe,Q]);let Ye=f.data?.kind===`ready`&&!ne,Xe;return Xe=f.isLoading?(0,V.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,V.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):f.isError?(0,V.jsx)(Me,{title:`Couldn't load the memory graph`,detail:`Something went wrong fetching your assistant's memory. Try again in a moment.`}):f.data?.kind===`unsupported`?(0,V.jsx)(Me,{title:`Memory graph isn't available`,detail:`The active memory backend doesn't expose a concept graph.`}):h?(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(`canvas`,{ref:d,className:`absolute inset-0 h-full w-full`}),m.nodes.length>Oe||z?(0,V.jsxs)(`div`,{"data-graph-control":!0,className:`absolute top-4 z-20 ${a?`left-16`:`left-4`}`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-1.5 rounded-full px-2.5 py-1`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`},children:[(0,V.jsx)(C,{size:14,"aria-hidden":!0,style:{color:`var(--content-tertiary)`}}),(0,V.jsx)(`input`,{type:`text`,value:z,onChange:e=>{let t=e.target.value;t.trim()&&!H.current&&(j(`search`),H.current=!0),B(t)},onKeyDown:e=>{e.key===`Escape`?B(``):e.key===`Enter`&&K.length>0&&(e.preventDefault(),Re(K[0].id))},placeholder:`Search concepts…`,"aria-label":`Search concepts`,className:`w-36 bg-transparent text-[12px] outline-none placeholder:text-[var(--content-tertiary)]`,style:{color:`var(--content-default)`}}),z?(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(`span`,{className:`text-[11px] tabular-nums`,style:{color:`var(--content-tertiary)`},children:W?.size??0}),(0,V.jsx)(`button`,{type:`button`,onClick:()=>B(``),"aria-label":`Clear search`,className:`flex items-center`,style:{color:`var(--content-tertiary)`},children:(0,V.jsx)(u,{size:13})})]}):null]}),z&&K.length>0?(0,V.jsx)(`ul`,{className:`mt-1.5 flex max-h-56 w-52 list-none flex-col overflow-y-auto rounded-xl py-1`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 92%, transparent)`,border:`1px solid var(--border-base)`},children:K.map(e=>(0,V.jsx)(`li`,{children:(0,V.jsx)(`button`,{type:`button`,onClick:()=>{Re(e.id),L({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs})},className:`block w-full truncate px-3 py-1 text-left text-[12px] hover:bg-[color-mix(in_srgb,var(--content-tertiary)_14%,transparent)]`,style:{color:`var(--content-default)`},children:e.label})},e.id))}):null]}):null,(m.nodes.length>Oe||q!==`all`)&&Ne?(0,V.jsx)(`div`,{"data-graph-control":!0,className:`absolute top-14 z-10 ${a?`left-16`:`left-4`}`,children:(0,V.jsx)(de,{value:q,onChange:J})}):null,(0,V.jsx)(le,{nodeKinds:Ke.filter(e=>e!==`concept`),coloredByTheme:Ke.includes(`concept`),hasLinks:Je,hasLearned:qe,...Je&&qe?{onToggleLink:()=>$(e=>({...e,link:!e.link})),onToggleLearned:()=>$(e=>({...e,learned:!e.learned})),linkActive:Q.link,learnedActive:Q.learned}:{}}),(A??N)&&!Ye?(0,V.jsx)(`div`,{className:`pointer-events-none absolute left-1/2 top-4 max-w-[80%] -translate-x-1/2 truncate rounded-full px-3 py-1 text-[12px]`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-default)`},children:A??N}):null,(0,V.jsx)(`div`,{className:`pointer-events-none absolute bottom-4 right-4 text-[11px]`,style:{color:`var(--content-tertiary)`},children:`drag to rotate · scroll to zoom`}),p?.truncated?(0,V.jsxs)(`div`,{className:`pointer-events-none absolute bottom-4 left-1/2 -translate-x-1/2 rounded-full px-3 py-1 text-[11px]`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-tertiary)`},children:[`Showing the `,m.nodes.length,` most-connected concepts`]}):null,(0,V.jsxs)(`div`,{"data-graph-control":!0,className:`absolute right-4 top-4 flex flex-col gap-1`,children:[(0,V.jsx)(n,{variant:`ghost`,iconOnly:(0,V.jsx)(w,{}),onClick:()=>Le(1.25),"aria-label":`Zoom in`,tooltip:`Zoom in`}),(0,V.jsx)(n,{variant:`ghost`,iconOnly:(0,V.jsx)(S,{}),onClick:()=>Le(.8),"aria-label":`Zoom out`,tooltip:`Zoom out`}),(0,V.jsx)(n,{variant:`ghost`,iconOnly:(0,V.jsx)(b,{}),onClick:Ie,"aria-label":`Reset view`,tooltip:`Reset view`})]})]}):(0,V.jsx)(Me,{title:`No concepts yet`,detail:`As your assistant learns and links ideas, they'll appear here as a living map of its memory.`}),(0,V.jsxs)(`div`,{ref:l,className:`relative select-none overflow-hidden rounded-xl ${t??``}`,style:{backgroundColor:`var(--surface-base)`,backgroundImage:`radial-gradient(circle at center, color-mix(in srgb, var(--content-tertiary) 8%, transparent), transparent 62%)`,touchAction:`none`,cursor:h?`grab`:`default`},onPointerDown:h?He:void 0,onPointerMove:h?Ue:void 0,onPointerUp:h?We:void 0,onPointerCancel:h?We:void 0,onPointerLeave:h?Ge:void 0,children:[a?(0,V.jsx)(`div`,{className:`absolute left-4 top-4 z-10`,"data-graph-control":!0,children:(0,V.jsx)(n,{variant:`ghost`,iconOnly:r?(0,V.jsx)(c,{}):(0,V.jsx)(s,{}),onClick:a,"aria-label":r?`Exit fullscreen`:`Enter fullscreen`,tooltip:r?`Exit fullscreen`:`Enter fullscreen`})}):null,Ye?(0,V.jsx)(ae,{onDismiss:R}):null,Xe,h&&F?(0,V.jsx)(ie,{assistantId:e,node:F,onClose:()=>I(null),onOpenThread:o}):null]})}function Q({onOpenThread:e}){let t=te(),n=(0,T.useRef)(!1);return(0,T.useEffect)(()=>{n.current||(n.current=!0,j(`opened`))},[]),(0,V.jsx)(`div`,{className:`flex h-full min-h-0 flex-col`,children:(0,V.jsx)(Ne,{assistantId:t,className:`h-full w-full`,onOpenThread:e})})}function $(){let e=r();return(0,V.jsx)(Q,{onOpenThread:t=>{j(`chat_from_node`),ee(e,{prompt:t})}},te())}export{$ as MemoryPageRoute};