cognova 0.2.13 → 0.2.15

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 (386) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/-mGU8_Hv.js +1 -0
  3. package/.output/public/_nuxt/0GqCtQ9S.js +1 -0
  4. package/.output/public/_nuxt/{DFpmIy6J.js → 1wCoXZ14.js} +1 -1
  5. package/.output/public/_nuxt/2J1KxdHv.js +1 -0
  6. package/.output/public/_nuxt/6VDUZECX.js +1 -0
  7. package/.output/public/_nuxt/{C7m9zGMG.js → 8WMJQbWG.js} +1 -1
  8. package/.output/public/_nuxt/9Rw88G6h.js +1 -0
  9. package/.output/public/_nuxt/{BjsKx597.js → B-yW4SD3.js} +1 -1
  10. package/.output/public/_nuxt/B20jNAhm.js +1 -0
  11. package/.output/public/_nuxt/B3OpTH_e.js +1 -0
  12. package/.output/public/_nuxt/B9Y3_B5G.js +1 -0
  13. package/.output/public/_nuxt/B9_vmatf.js +1 -0
  14. package/.output/public/_nuxt/B9o6sFST.js +1 -0
  15. package/.output/public/_nuxt/{CseYuM6E.js → BAY3_Hrq.js} +1 -1
  16. package/.output/public/_nuxt/{B_9zJTqe.js → BD5rPkc2.js} +3 -3
  17. package/.output/public/_nuxt/BGYoW3kO.js +1 -0
  18. package/.output/public/_nuxt/BHUy5EAj.js +1 -0
  19. package/.output/public/_nuxt/BLdMRpJD.js +1 -0
  20. package/.output/public/_nuxt/{D6tVZcRs.js → BOCn_SGf.js} +12 -12
  21. package/.output/public/_nuxt/BQi8LIrn.js +1 -0
  22. package/.output/public/_nuxt/BS1t375R.js +1 -0
  23. package/.output/public/_nuxt/BTGeP1bA.js +1 -0
  24. package/.output/public/_nuxt/{pdYvpiud.js → BVYYP4eQ.js} +5 -5
  25. package/.output/public/_nuxt/BWQ7zE01.js +1 -0
  26. package/.output/public/_nuxt/BWqJInD3.js +1 -0
  27. package/.output/public/_nuxt/BXdQ9ASJ.js +1 -0
  28. package/.output/public/_nuxt/{DQhm-UPG.js → BXxZokD_.js} +2 -2
  29. package/.output/public/_nuxt/BZ7DAtPi.js +1 -0
  30. package/.output/public/_nuxt/BZm9w7en.js +1 -0
  31. package/.output/public/_nuxt/B_hNqC64.js +1 -0
  32. package/.output/public/_nuxt/Be47YE2L.js +1 -0
  33. package/.output/public/_nuxt/BgIS9_ti.js +39 -0
  34. package/.output/public/_nuxt/BgavRUl_.js +1 -0
  35. package/.output/public/_nuxt/Bh0yGTzr.js +1 -0
  36. package/.output/public/_nuxt/BhhMUror.js +1 -0
  37. package/.output/public/_nuxt/Bj5e7QPz.js +1 -0
  38. package/.output/public/_nuxt/{9kAKMaPC.js → Bnn59-FS.js} +1 -1
  39. package/.output/public/_nuxt/BoCU3mWu.js +1 -0
  40. package/.output/public/_nuxt/Br6epbzY.js +1 -0
  41. package/.output/public/_nuxt/Br81Sr2R.js +1 -0
  42. package/.output/public/_nuxt/BrkEOLHu.js +9 -0
  43. package/.output/public/_nuxt/BtrNCc2S.js +1 -0
  44. package/.output/public/_nuxt/BxsQlbgl.js +1 -0
  45. package/.output/public/_nuxt/BzrhNhdT.js +1 -0
  46. package/.output/public/_nuxt/{B-DMcEU9.js → C-78dDNd.js} +1 -1
  47. package/.output/public/_nuxt/C1oaoi1p.js +1 -0
  48. package/.output/public/_nuxt/C2-_hcwB.js +1 -0
  49. package/.output/public/_nuxt/{TxMdabnL.js → C2Gh3qqr.js} +1 -1
  50. package/.output/public/_nuxt/C2OHaW6l.js +1 -0
  51. package/.output/public/_nuxt/C3szZmvA.js +1 -0
  52. package/.output/public/_nuxt/C3xzleKP.js +1 -0
  53. package/.output/public/_nuxt/C4sG6rdW.js +1 -0
  54. package/.output/public/_nuxt/C5Cu9Fx6.js +1 -0
  55. package/.output/public/_nuxt/{LRO7YHoH.js → C5gfF7J1.js} +1 -1
  56. package/.output/public/_nuxt/C6Eoiclo.js +1 -0
  57. package/.output/public/_nuxt/C7hFztZL.js +1 -0
  58. package/.output/public/_nuxt/CAVUAxNU.js +2 -0
  59. package/.output/public/_nuxt/{CiNxIhaq.js → CCeM5lW2.js} +1 -1
  60. package/.output/public/_nuxt/CDcQ31Eh.js +1 -0
  61. package/.output/public/_nuxt/CHbHVtCy.js +1 -0
  62. package/.output/public/_nuxt/CHnVFnBW.js +1 -0
  63. package/.output/public/_nuxt/CLNcmNQS.js +1 -0
  64. package/.output/public/_nuxt/{D7N3EZ-I.js → CPwCTHun.js} +1 -1
  65. package/.output/public/_nuxt/{CFmvNggn.js → CS8SdmH2.js} +1 -1
  66. package/.output/public/_nuxt/CTGm_mc8.js +1 -0
  67. package/.output/public/_nuxt/{DNcOC5zj.js → CTQFGHjS.js} +1 -1
  68. package/.output/public/_nuxt/{B0nzD8Sk.js → CVVtVzXC.js} +1 -1
  69. package/.output/public/_nuxt/CZNOaqeX.js +1 -0
  70. package/.output/public/_nuxt/C_A_NkeC.js +2 -0
  71. package/.output/public/_nuxt/{CGplHfmR.js → C_doutX-.js} +1 -1
  72. package/.output/public/_nuxt/{BrX-PnSK.js → CbDLhrNA.js} +2 -2
  73. package/.output/public/_nuxt/CePKCqSb.js +1 -0
  74. package/.output/public/_nuxt/Cet4T_yO.js +1 -0
  75. package/.output/public/_nuxt/{C6OSRpRd.js → CjJPkhbc.js} +1 -1
  76. package/.output/public/_nuxt/CkZT4LGq.js +1 -0
  77. package/.output/public/_nuxt/CkrW8sGL.js +1 -0
  78. package/.output/public/_nuxt/Co0UxVsx.js +1 -0
  79. package/.output/public/_nuxt/CqS0zXYQ.js +1 -0
  80. package/.output/public/_nuxt/CskGv_Km.js +1 -0
  81. package/.output/public/_nuxt/{DuzpliIL.js → CuvkTsqs.js} +1 -1
  82. package/.output/public/_nuxt/{B2wI_pYg.js → CxMuZEwX.js} +1 -1
  83. package/.output/public/_nuxt/{9O1MXkck.js → CxSijT71.js} +8 -8
  84. package/.output/public/_nuxt/Cywo6tZI.js +1 -0
  85. package/.output/public/_nuxt/D1reIfpX.js +1 -0
  86. package/.output/public/_nuxt/D1uV2uir.js +1 -0
  87. package/.output/public/_nuxt/{BWuL2CzO.js → D2edadpd.js} +1 -1
  88. package/.output/public/_nuxt/D3cEeQh7.js +1 -0
  89. package/.output/public/_nuxt/D41A2mE2.js +1 -0
  90. package/.output/public/_nuxt/D49P2RhG.js +1 -0
  91. package/.output/public/_nuxt/D867g6Ds.js +1 -0
  92. package/.output/public/_nuxt/DEFWIjWl.js +1 -0
  93. package/.output/public/_nuxt/DFTEBTzZ.js +1 -0
  94. package/.output/public/_nuxt/{-HePz7lp.js → DHRexj9X.js} +2 -2
  95. package/.output/public/_nuxt/DL4EpgqQ.js +1 -0
  96. package/.output/public/_nuxt/DLHnP6tw.js +1 -0
  97. package/.output/public/_nuxt/DM20WaLq.js +1 -0
  98. package/.output/public/_nuxt/{B8DFEjxA.js → DNAMjHbb.js} +1 -1
  99. package/.output/public/_nuxt/{CLkkdThv.js → DP8t9VWs.js} +24 -24
  100. package/.output/public/_nuxt/DTR31rjp.js +1 -0
  101. package/.output/public/_nuxt/{Bc8bTnkd.js → DTlSLSo1.js} +3 -3
  102. package/.output/public/_nuxt/{DowkFZ2V.js → DVdnhfXT.js} +1 -1
  103. package/.output/public/_nuxt/{DvHS7_h2.js → DZikIgHK.js} +1 -1
  104. package/.output/public/_nuxt/D_YGqvw_.js +1 -0
  105. package/.output/public/_nuxt/D_k1YwXm.js +1 -0
  106. package/.output/public/_nuxt/Daf2MbWG.js +7 -0
  107. package/.output/public/_nuxt/DcJ0GstJ.js +1 -0
  108. package/.output/public/_nuxt/DcYKh6QA.js +1 -0
  109. package/.output/public/_nuxt/DhN3_DYH.js +1 -0
  110. package/.output/public/_nuxt/DhSvBSt3.js +1 -0
  111. package/.output/public/_nuxt/DhlIWT8K.js +1 -0
  112. package/.output/public/_nuxt/DjsqyRqt.js +1 -0
  113. package/.output/public/_nuxt/DpSM97eH.js +1 -0
  114. package/.output/public/_nuxt/DqR9SdeU.js +1 -0
  115. package/.output/public/_nuxt/DqmQtg6Y.js +1 -0
  116. package/.output/public/_nuxt/Dsuag_iW.js +1 -0
  117. package/.output/public/_nuxt/Dtr_0IbE.js +1 -0
  118. package/.output/public/_nuxt/DwrmFEZN.js +1 -0
  119. package/.output/public/_nuxt/DxE8r3r4.js +1 -0
  120. package/.output/public/_nuxt/G_CsVlOR.js +1 -0
  121. package/.output/public/_nuxt/Gyw_2f6x.js +1 -0
  122. package/.output/public/_nuxt/HStC1ZyE.js +1 -0
  123. package/.output/public/_nuxt/Hh9mv0Ek.js +1 -0
  124. package/.output/public/_nuxt/LR0kCjbe.js +1 -0
  125. package/.output/public/_nuxt/MYeLvJGV.js +1 -0
  126. package/.output/public/_nuxt/NKs0EGrh.js +1 -0
  127. package/.output/public/_nuxt/PY5EGujn.js +1 -0
  128. package/.output/public/_nuxt/PamJNol9.js +1 -0
  129. package/.output/public/_nuxt/RlvwEbHv.js +1 -0
  130. package/.output/public/_nuxt/{BghuwIGa.js → TNpdJOlc.js} +1 -1
  131. package/.output/public/_nuxt/TSYrPbLR.js +1 -0
  132. package/.output/public/_nuxt/U-eBrbR4.js +1 -0
  133. package/.output/public/_nuxt/UuqXScSw.js +1 -0
  134. package/.output/public/_nuxt/V04-MrLN.js +1 -0
  135. package/.output/public/_nuxt/X0o5GcBb.js +1 -0
  136. package/.output/public/_nuxt/XQNzmQy9.js +1 -0
  137. package/.output/public/_nuxt/Y59XKprr.js +1 -0
  138. package/.output/public/_nuxt/YZQjZgsH.js +1 -0
  139. package/.output/public/_nuxt/_-TGPiLQ.js +1 -0
  140. package/.output/public/_nuxt/builds/latest.json +1 -1
  141. package/.output/public/_nuxt/builds/meta/7c42ae85-1cae-45f0-8cb9-ad3a10165c2c.json +1 -0
  142. package/.output/public/_nuxt/dashboard.ByJQ-Wzh.css +1 -0
  143. package/.output/public/_nuxt/entry.ZJxWCrU6.css +1 -0
  144. package/.output/public/_nuxt/{D12qPplu.js → hCeWb_38.js} +1 -1
  145. package/.output/public/_nuxt/{sBzyvWMJ.js → hrPTRWjM.js} +1 -1
  146. package/.output/public/_nuxt/jC4pIK1p.js +1 -0
  147. package/.output/public/_nuxt/jTT1R-Vz.js +1 -0
  148. package/.output/public/_nuxt/{CRRw0Thu.js → kkAMoB43.js} +1 -1
  149. package/.output/public/_nuxt/{h_bXa-f2.js → mzM4BGtv.js} +1 -1
  150. package/.output/public/_nuxt/o-s8JBm2.js +1 -0
  151. package/.output/public/_nuxt/pwJTkIQ4.js +1 -0
  152. package/.output/public/_nuxt/{BL1mkqgd.js → rIgg2Arf.js} +3 -3
  153. package/.output/public/_nuxt/subdxgSQ.js +1 -0
  154. package/.output/public/_nuxt/t8B72leH.js +1 -0
  155. package/.output/public/_nuxt/vCFAHwdt.js +1 -0
  156. package/.output/public/_nuxt/z-MP0bB7.js +1 -0
  157. package/.output/server/chunks/build/CodeIcon-CWD5HcV7.mjs +1 -1
  158. package/.output/server/chunks/build/DropdownMenu-BBrV9nXz.mjs +1 -1
  159. package/.output/server/chunks/build/{EditorToolbar-DIfb5arC.mjs → EditorToolbar-B9OwSI5e.mjs} +3 -3
  160. package/.output/server/chunks/build/{EditorToolbar-DIfb5arC.mjs.map → EditorToolbar-B9OwSI5e.mjs.map} +1 -1
  161. package/.output/server/chunks/build/Img-CWLmvN1t.mjs +1 -1
  162. package/.output/server/chunks/build/MDC-Dx0YPDhe.mjs +1 -1
  163. package/.output/server/chunks/build/Select-BB1oLrCD.mjs +1 -1
  164. package/.output/server/chunks/build/SelectMenu-DPssg6zD.mjs +1 -1
  165. package/.output/server/chunks/build/Table-DCwTlhCj.mjs +1 -1
  166. package/.output/server/chunks/build/Tooltip-TRyl6dje.mjs +1 -1
  167. package/.output/server/chunks/build/Tree-DUhXKd8y.mjs +1 -1
  168. package/.output/server/chunks/build/{_id_-DN00UDdO.mjs → _id_-CwBeklIM.mjs} +296 -430
  169. package/.output/server/chunks/build/_id_-CwBeklIM.mjs.map +1 -0
  170. package/.output/server/chunks/build/{_name_-BnS_KEfX.mjs → _name_-D7MtW4Vu.mjs} +2 -2
  171. package/.output/server/chunks/build/{_name_-BnS_KEfX.mjs.map → _name_-D7MtW4Vu.mjs.map} +1 -1
  172. package/.output/server/chunks/build/{_uuid_-DfJaumTE.mjs → _uuid_-lvG92ein.mjs} +4 -4
  173. package/.output/server/chunks/build/{_uuid_-DfJaumTE.mjs.map → _uuid_-lvG92ein.mjs.map} +1 -1
  174. package/.output/server/chunks/build/account-LDZ4TL6x.mjs +513 -0
  175. package/.output/server/chunks/build/account-LDZ4TL6x.mjs.map +1 -0
  176. package/.output/server/chunks/build/app-CGhRZPNT.mjs +252 -0
  177. package/.output/server/chunks/build/app-CGhRZPNT.mjs.map +1 -0
  178. package/.output/server/chunks/build/{chat-m4-n9vC6.mjs → chat-BphuYhvA.mjs} +18 -27
  179. package/.output/server/chunks/build/chat-BphuYhvA.mjs.map +1 -0
  180. package/.output/server/chunks/build/client.precomputed.mjs +1 -1
  181. package/.output/server/chunks/build/cookie-C_iulBi6.mjs +1 -1
  182. package/.output/server/chunks/build/{dashboard-CiVTAZuF.mjs → dashboard-nDujDyOg.mjs} +55 -16
  183. package/.output/server/chunks/build/{dashboard-CiVTAZuF.mjs.map → dashboard-nDujDyOg.mjs.map} +1 -1
  184. package/.output/server/chunks/build/{docs-ChGwOPg5.mjs → docs-Bwucwp0r.mjs} +664 -592
  185. package/.output/server/chunks/build/docs-Bwucwp0r.mjs.map +1 -0
  186. package/.output/server/chunks/build/fetch-BB7Qzkwe.mjs +1 -1
  187. package/.output/server/chunks/build/{hooks-D328DcO6.mjs → hooks-D6PmTth8.mjs} +19 -29
  188. package/.output/server/chunks/build/hooks-D6PmTth8.mjs.map +1 -0
  189. package/.output/server/chunks/build/{index-CAnGTRlu.mjs → index-CJkn2jiM.mjs} +2 -2
  190. package/.output/server/chunks/build/{index-CAnGTRlu.mjs.map → index-CJkn2jiM.mjs.map} +1 -1
  191. package/.output/server/chunks/build/index-CxDxc9fm.mjs +1 -1
  192. package/.output/server/chunks/build/index-Cz9Y6NwN.mjs +723 -0
  193. package/.output/server/chunks/build/index-Cz9Y6NwN.mjs.map +1 -0
  194. package/.output/server/chunks/build/index-hwhuKhuZ.mjs +76 -0
  195. package/.output/server/chunks/build/index-hwhuKhuZ.mjs.map +1 -0
  196. package/.output/server/chunks/build/integrations-D5JWURiJ.mjs +1499 -0
  197. package/.output/server/chunks/build/integrations-D5JWURiJ.mjs.map +1 -0
  198. package/.output/server/chunks/build/{library-Aeg7_Lsb.mjs → library-DxRdgP6X.mjs} +2 -2
  199. package/.output/server/chunks/build/{library-Aeg7_Lsb.mjs.map → library-DxRdgP6X.mjs.map} +1 -1
  200. package/.output/server/chunks/build/{login-DnnElTl2.mjs → login-BmER_VoU.mjs} +2 -2
  201. package/.output/server/chunks/build/{login-DnnElTl2.mjs.map → login-BmER_VoU.mjs.map} +1 -1
  202. package/.output/server/chunks/build/manage-secrets-BWzqc_-f.mjs +669 -0
  203. package/.output/server/chunks/build/manage-secrets-BWzqc_-f.mjs.map +1 -0
  204. package/.output/server/chunks/build/server.mjs +65 -34
  205. package/.output/server/chunks/build/server.mjs.map +1 -1
  206. package/.output/server/chunks/build/settings-neokAVE5.mjs +154 -0
  207. package/.output/server/chunks/build/settings-neokAVE5.mjs.map +1 -0
  208. package/.output/server/chunks/build/styles.mjs +2 -2
  209. package/.output/server/chunks/build/{tasks-DnAFqbtt.mjs → tasks-CnpIQNpS.mjs} +27 -37
  210. package/.output/server/chunks/build/tasks-CnpIQNpS.mjs.map +1 -0
  211. package/.output/server/chunks/build/{useAgents-DHEXiFSc.mjs → useAgents-nmbkB9-_.mjs} +5 -26
  212. package/.output/server/chunks/build/useAgents-nmbkB9-_.mjs.map +1 -0
  213. package/.output/server/chunks/build/{view-n2sYa4Zh.mjs → view-mb0ISqfM.mjs} +3 -3
  214. package/.output/server/chunks/build/{view-n2sYa4Zh.mjs.map → view-mb0ISqfM.mjs.map} +1 -1
  215. package/.output/server/chunks/nitro/nitro.mjs +1000 -858
  216. package/.output/server/chunks/nitro/nitro.mjs.map +1 -1
  217. package/.output/server/chunks/routes/api/index.get.mjs +17 -2
  218. package/.output/server/chunks/routes/api/index.get.mjs.map +1 -1
  219. package/.output/server/chunks/routes/api/index.get3.mjs +21 -3
  220. package/.output/server/chunks/routes/api/index.get3.mjs.map +1 -1
  221. package/.output/server/chunks/routes/api/index.get4.mjs +10 -9
  222. package/.output/server/chunks/routes/api/index.get4.mjs.map +1 -1
  223. package/.output/server/chunks/routes/api/index.get9.mjs +10 -8
  224. package/.output/server/chunks/routes/api/index.get9.mjs.map +1 -1
  225. package/.output/server/chunks/routes/api/memory/search.get.mjs +10 -5
  226. package/.output/server/chunks/routes/api/memory/search.get.mjs.map +1 -1
  227. package/.output/server/chunks/routes/renderer.mjs +1 -1
  228. package/.output/server/index.mjs +1 -1
  229. package/.output/server/package.json +1 -1
  230. package/app/components/AssistantPanel.client.vue +16 -314
  231. package/app/components/agents/AgentCard.vue +111 -0
  232. package/app/components/agents/AgentInfoCard.vue +54 -0
  233. package/app/components/agents/AgentRunHistory.vue +103 -0
  234. package/app/components/agents/AgentRunModal.vue +1 -24
  235. package/app/components/agents/AgentStatsCards.vue +1 -26
  236. package/app/components/assistant/AssistantChat.vue +156 -0
  237. package/app/components/assistant/AssistantTerminal.client.vue +178 -0
  238. package/app/components/chat/ConversationList.vue +2 -12
  239. package/app/components/files/FileTree.vue +23 -202
  240. package/app/components/files/FileTreeModals.vue +226 -0
  241. package/app/components/hooks/HookStatsCards.vue +1 -6
  242. package/app/components/hooks/ToolBreakdownTable.vue +1 -6
  243. package/app/components/search/DashboardSearch.vue +38 -1
  244. package/app/components/tasks/TaskCard.vue +2 -7
  245. package/app/components/tasks/TaskDetail.vue +4 -9
  246. package/app/composables/useSearch.ts +21 -11
  247. package/app/layouts/dashboard.vue +1 -1
  248. package/app/pages/agents/[id].vue +6 -197
  249. package/app/pages/agents/index.vue +9 -142
  250. package/app/pages/settings/account.vue +243 -0
  251. package/app/pages/settings/app.vue +230 -0
  252. package/app/pages/settings/index.vue +12 -0
  253. package/app/pages/settings/integrations.vue +794 -0
  254. package/app/pages/settings/manage-secrets.vue +295 -0
  255. package/app/pages/settings.vue +20 -1581
  256. package/dist/cli/index.js +676 -212
  257. package/package.json +1 -1
  258. package/server/api/agents/index.get.ts +20 -1
  259. package/server/api/conversations/index.get.ts +23 -5
  260. package/server/api/documents/index.get.ts +11 -9
  261. package/server/api/memory/search.get.ts +11 -6
  262. package/server/api/tasks/index.get.ts +11 -9
  263. package/server/drizzle/migrations/0016_full_text_search.sql +127 -0
  264. package/server/drizzle/migrations/meta/_journal.json +7 -0
  265. package/shared/types/index.ts +7 -1
  266. package/shared/utils/formatting.ts +105 -0
  267. package/.output/public/_nuxt/4ALIM-zZ.js +0 -1
  268. package/.output/public/_nuxt/5sUbkh_6.js +0 -16
  269. package/.output/public/_nuxt/6bB8Ev7a.js +0 -1
  270. package/.output/public/_nuxt/7rT1DCe2.js +0 -1
  271. package/.output/public/_nuxt/B2PqR2Vu.js +0 -1
  272. package/.output/public/_nuxt/B5FuOh7E.js +0 -1
  273. package/.output/public/_nuxt/B6om4MW2.js +0 -1
  274. package/.output/public/_nuxt/B7ikW4eF.js +0 -1
  275. package/.output/public/_nuxt/B9kWNcU7.js +0 -1
  276. package/.output/public/_nuxt/BAZ8sewA.js +0 -1
  277. package/.output/public/_nuxt/BCPwL4ma.js +0 -1
  278. package/.output/public/_nuxt/BCrlmHh_.js +0 -1
  279. package/.output/public/_nuxt/BD-AFJWW.js +0 -1
  280. package/.output/public/_nuxt/BGcQMReV.js +0 -1
  281. package/.output/public/_nuxt/BNJJSRKh.js +0 -1
  282. package/.output/public/_nuxt/BNeeERBt.js +0 -1
  283. package/.output/public/_nuxt/BSJb5amZ.js +0 -1
  284. package/.output/public/_nuxt/BSsaE9Db.js +0 -1
  285. package/.output/public/_nuxt/BVO3XpHT.js +0 -1
  286. package/.output/public/_nuxt/B_Lr1vlV.js +0 -1
  287. package/.output/public/_nuxt/Bl0qBhCG.js +0 -1
  288. package/.output/public/_nuxt/Bl43dkDq.js +0 -1
  289. package/.output/public/_nuxt/BnMTFF5R.js +0 -1
  290. package/.output/public/_nuxt/BtV7oNn3.js +0 -1
  291. package/.output/public/_nuxt/BvFYnRMR.js +0 -1
  292. package/.output/public/_nuxt/BvTUBUNN.js +0 -1
  293. package/.output/public/_nuxt/ByLsRRoQ.js +0 -1
  294. package/.output/public/_nuxt/C1LcEMwB.js +0 -1
  295. package/.output/public/_nuxt/C2IiXp9N.js +0 -2
  296. package/.output/public/_nuxt/C796kFT9.js +0 -1
  297. package/.output/public/_nuxt/C8AtdrMH.js +0 -1
  298. package/.output/public/_nuxt/CAWbHTgy.js +0 -1
  299. package/.output/public/_nuxt/CJPrV25_.js +0 -1
  300. package/.output/public/_nuxt/CKKEWapF.js +0 -1
  301. package/.output/public/_nuxt/CNjv28J2.js +0 -1
  302. package/.output/public/_nuxt/CT8s4rqa.js +0 -1
  303. package/.output/public/_nuxt/CZSOrxUy.js +0 -1
  304. package/.output/public/_nuxt/CaNEL9JC.js +0 -39
  305. package/.output/public/_nuxt/CbTLg9oX.js +0 -1
  306. package/.output/public/_nuxt/CfCXpVn5.js +0 -1
  307. package/.output/public/_nuxt/ChmNlvWR.js +0 -1
  308. package/.output/public/_nuxt/Ck0QYdxe.js +0 -1
  309. package/.output/public/_nuxt/Ckb0pu4-.js +0 -1
  310. package/.output/public/_nuxt/CkwPRs1D.js +0 -1
  311. package/.output/public/_nuxt/CmEJg8C6.js +0 -2
  312. package/.output/public/_nuxt/CmL_vMJD.js +0 -1
  313. package/.output/public/_nuxt/Cq8zPxkT.js +0 -1
  314. package/.output/public/_nuxt/CxRnB4NC.js +0 -1
  315. package/.output/public/_nuxt/D0zMyG8n.js +0 -1
  316. package/.output/public/_nuxt/D1XYB283.js +0 -1
  317. package/.output/public/_nuxt/D2NxqyzW.js +0 -1
  318. package/.output/public/_nuxt/D5xyrvFu.js +0 -1
  319. package/.output/public/_nuxt/D8iBB0Py.js +0 -1
  320. package/.output/public/_nuxt/D8oIH8m1.js +0 -1
  321. package/.output/public/_nuxt/DB2zZev7.js +0 -1
  322. package/.output/public/_nuxt/DBrOAqkm.js +0 -1
  323. package/.output/public/_nuxt/DDXDFweK.js +0 -1
  324. package/.output/public/_nuxt/DFZkCmLQ.js +0 -1
  325. package/.output/public/_nuxt/DKZmgHNU.js +0 -1
  326. package/.output/public/_nuxt/DR8tGJhL.js +0 -1
  327. package/.output/public/_nuxt/DVAEVTjy.js +0 -1
  328. package/.output/public/_nuxt/DVqrPkCJ.js +0 -1
  329. package/.output/public/_nuxt/DWZ9ieYa.js +0 -1
  330. package/.output/public/_nuxt/DWj6VsZv.js +0 -1
  331. package/.output/public/_nuxt/DXJ9PxCv.js +0 -1
  332. package/.output/public/_nuxt/D_ziPROx.js +0 -1
  333. package/.output/public/_nuxt/Da2vwoYG.js +0 -1
  334. package/.output/public/_nuxt/Ddz3HcBB.js +0 -1
  335. package/.output/public/_nuxt/DgYei0bK.js +0 -1
  336. package/.output/public/_nuxt/Di_3GV_R.js +0 -1
  337. package/.output/public/_nuxt/Djog1f_e.js +0 -1
  338. package/.output/public/_nuxt/Dkap2-Pj.js +0 -7
  339. package/.output/public/_nuxt/DlJe_sHk.js +0 -1
  340. package/.output/public/_nuxt/DlPOQpH_.js +0 -1
  341. package/.output/public/_nuxt/DmYWMtVA.js +0 -1
  342. package/.output/public/_nuxt/DmxKU7sH.js +0 -1
  343. package/.output/public/_nuxt/DsodHRrQ.js +0 -1
  344. package/.output/public/_nuxt/DwSY6_2U.js +0 -1
  345. package/.output/public/_nuxt/DypJaSm-.js +0 -1
  346. package/.output/public/_nuxt/DzKaXH6P.js +0 -1
  347. package/.output/public/_nuxt/FK-jSuOT.js +0 -1
  348. package/.output/public/_nuxt/Fc2JsQt4.js +0 -1
  349. package/.output/public/_nuxt/IYCBGuRS.js +0 -1
  350. package/.output/public/_nuxt/NrRzUJNY.js +0 -1
  351. package/.output/public/_nuxt/OeVS0Rsb.js +0 -1
  352. package/.output/public/_nuxt/OlF0QnKF.js +0 -1
  353. package/.output/public/_nuxt/QuAoqY7t.js +0 -1
  354. package/.output/public/_nuxt/RlXHkmOd.js +0 -9
  355. package/.output/public/_nuxt/WZnvL9Dh.js +0 -1
  356. package/.output/public/_nuxt/ZvG7a1W3.js +0 -1
  357. package/.output/public/_nuxt/aPNZBVrG.js +0 -1
  358. package/.output/public/_nuxt/builds/meta/495aca73-bfa5-456e-b96a-f02e009c72d3.json +0 -1
  359. package/.output/public/_nuxt/dashboard.BxCOkJwt.css +0 -1
  360. package/.output/public/_nuxt/entry.C_udkZt9.css +0 -1
  361. package/.output/public/_nuxt/evY81hM3.js +0 -1
  362. package/.output/public/_nuxt/i6QBzaEi.js +0 -1
  363. package/.output/public/_nuxt/iTVKJ1kw.js +0 -1
  364. package/.output/public/_nuxt/j92uR3uR.js +0 -1
  365. package/.output/public/_nuxt/jdUkeAj_.js +0 -1
  366. package/.output/public/_nuxt/jeRvcMHU.js +0 -1
  367. package/.output/public/_nuxt/kuv0zpKq.js +0 -1
  368. package/.output/public/_nuxt/l3lKQs7b.js +0 -1
  369. package/.output/public/_nuxt/qIgZ7OXa.js +0 -1
  370. package/.output/public/_nuxt/qcVwZv8e.js +0 -1
  371. package/.output/public/_nuxt/ru8fqqWs.js +0 -1
  372. package/.output/public/_nuxt/sgmhgpCS.js +0 -1
  373. package/.output/public/_nuxt/y2jv0da-.js +0 -1
  374. package/.output/public/_nuxt/yyS4-kAX.js +0 -1
  375. package/.output/public/_nuxt/zIoBLBHF.js +0 -1
  376. package/.output/public/_nuxt/zpazwPgx.js +0 -1
  377. package/.output/server/chunks/build/_id_-DN00UDdO.mjs.map +0 -1
  378. package/.output/server/chunks/build/chat-m4-n9vC6.mjs.map +0 -1
  379. package/.output/server/chunks/build/docs-ChGwOPg5.mjs.map +0 -1
  380. package/.output/server/chunks/build/hooks-D328DcO6.mjs.map +0 -1
  381. package/.output/server/chunks/build/index-C9PuieXh.mjs +0 -820
  382. package/.output/server/chunks/build/index-C9PuieXh.mjs.map +0 -1
  383. package/.output/server/chunks/build/settings-B2KXoGcz.mjs +0 -3232
  384. package/.output/server/chunks/build/settings-B2KXoGcz.mjs.map +0 -1
  385. package/.output/server/chunks/build/tasks-DnAFqbtt.mjs.map +0 -1
  386. package/.output/server/chunks/build/useAgents-DHEXiFSc.mjs.map +0 -1
@@ -1 +0,0 @@
1
- import{u as b}from"./DWZ9ieYa.js";import{a as y,c as l,a1 as I,q as g,a2 as F,S,T as C,U as u,V as K,C as r,a3 as h,a4 as w,k as T}from"./D6tVZcRs.js";import{i as q,g as B,w as R,f as k}from"./DwSY6_2U.js";var x=y({__name:"RovingFocusItem",props:{tabStopId:{type:String,required:!1},focusable:{type:Boolean,required:!1,default:!0},active:{type:Boolean,required:!1},allowShiftKey:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(d){const n=d,a=q(),f=b(),i=l(()=>n.tabStopId||f),c=l(()=>a.currentTabStopId.value===i.value),{getItems:p,CollectionItem:m}=I();g(()=>{n.focusable&&a.onFocusableItemAdd()}),F(()=>{n.focusable&&a.onFocusableItemRemove()});function v(e){if(e.key==="Tab"&&e.shiftKey){a.onItemShiftTab();return}if(e.target!==e.currentTarget)return;const t=B(e,a.orientation.value,a.dir.value);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||!n.allowShiftKey&&e.shiftKey)return;e.preventDefault();let o=[...p().map(s=>s.ref).filter(s=>s.dataset.disabled!=="")];if(t==="last")o.reverse();else if(t==="prev"||t==="next"){t==="prev"&&o.reverse();const s=o.indexOf(e.currentTarget);o=a.loop.value?R(o,s+1):o.slice(s+1)}T(()=>k(o))}}return(e,t)=>(C(),S(r(m),null,{default:u(()=>[K(r(h),{tabindex:c.value?0:-1,"data-orientation":r(a).orientation.value,"data-active":e.active?"":void 0,"data-disabled":e.focusable?void 0:"",as:e.as,"as-child":e.asChild,onMousedown:t[0]||(t[0]=o=>{e.focusable?r(a).onItemFocus(i.value):o.preventDefault()}),onFocus:t[1]||(t[1]=o=>r(a).onItemFocus(i.value)),onKeydown:v},{default:u(()=>[w(e.$slots,"default")]),_:3},8,["tabindex","data-orientation","data-active","data-disabled","as","as-child"])]),_:3}))}}),M=x;export{M as R};
@@ -1 +0,0 @@
1
- import{bp as K,c as L,bq as N,e as E,$ as P,f as M,a7 as x,aT as R,br as C,be as q,k as D,a2 as I,a5 as $,bs as H,a as Y,a_ as j,ah as X,y as T,S as z,T as G,U as V,a4 as J,C as Q,a3 as Z,bt as b,M as A,bu as F,bv as ee,bw as te,bx as k,by as _,bz as ne}from"./D6tVZcRs.js";const ae=K(()=>{const e=E(new Map),t=E(),n=L(()=>{for(const v of e.value.values())if(v)return!0;return!1}),o=P({scrollBody:E(!0)});let c=null;const p=()=>{document.body.style.paddingRight="",document.body.style.marginRight="",document.body.style.pointerEvents="",document.documentElement.style.removeProperty("--scrollbar-width"),document.body.style.overflow=t.value??"",C&&c?.(),t.value=void 0};return M(n,(v,m)=>{if(!x)return;if(!v){m&&p();return}t.value===void 0&&(t.value=document.body.style.overflow);const l=window.innerWidth-document.documentElement.clientWidth,h={padding:l,margin:0},r=o.scrollBody?.value?typeof o.scrollBody.value=="object"?R({padding:o.scrollBody.value.padding===!0?l:o.scrollBody.value.padding,margin:o.scrollBody.value.margin===!0?l:o.scrollBody.value.margin},h):h:{padding:0,margin:0};l>0&&(document.body.style.paddingRight=typeof r.padding=="number"?`${r.padding}px`:String(r.padding),document.body.style.marginRight=typeof r.margin=="number"?`${r.margin}px`:String(r.margin),document.documentElement.style.setProperty("--scrollbar-width",`${l}px`),document.body.style.overflow="hidden"),C&&(c=q(document,"touchmove",a=>re(a),{passive:!1})),D(()=>{document.body.style.pointerEvents="none",document.body.style.overflow="hidden"})},{immediate:!0,flush:"sync"}),e});function pe(e){const t=Math.random().toString(36).substring(2,7),n=ae();n.value.set(t,e??!1);const o=L({get:()=>n.value.get(t)??!1,set:c=>n.value.set(t,c)});return N(()=>{n.value.delete(t)}),o}function W(e){const t=window.getComputedStyle(e);if(t.overflowX==="scroll"||t.overflowY==="scroll"||t.overflowX==="auto"&&e.clientWidth<e.scrollWidth||t.overflowY==="auto"&&e.clientHeight<e.scrollHeight)return!0;{const n=e.parentNode;return!(n instanceof Element)||n.tagName==="BODY"?!1:W(n)}}function re(e){const t=e||window.event,n=t.target;return n instanceof Element&&W(n)?!1:t.touches.length>1?!0:(t.preventDefault&&t.cancelable&&t.preventDefault(),!1)}var oe=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},g=new WeakMap,w=new WeakMap,S={},O=0,U=function(e){return e&&(e.host||U(e.parentNode))},se=function(e,t){return t.map(function(n){if(e.contains(n))return n;var o=U(n);return o&&e.contains(o)?o:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},ue=function(e,t,n,o){var c=se(t,Array.isArray(e)?e:[e]);S[n]||(S[n]=new WeakMap);var p=S[n],v=[],m=new Set,l=new Set(c),h=function(a){!a||m.has(a)||(m.add(a),h(a.parentNode))};c.forEach(h);var r=function(a){!a||l.has(a)||Array.prototype.forEach.call(a.children,function(s){if(m.has(s))r(s);else try{var d=s.getAttribute(o),u=d!==null&&d!=="false",i=(g.get(s)||0)+1,f=(p.get(s)||0)+1;g.set(s,i),p.set(s,f),v.push(s),i===1&&u&&w.set(s,!0),f===1&&s.setAttribute(n,"true"),u||s.setAttribute(o,"true")}catch(y){console.error("aria-hidden: cannot operate on ",s,y)}})};return r(t),m.clear(),O++,function(){v.forEach(function(a){var s=g.get(a)-1,d=p.get(a)-1;g.set(a,s),p.set(a,d),s||(w.has(a)||a.removeAttribute(o),w.delete(a)),d||a.removeAttribute(n)}),O--,O||(g=new WeakMap,g=new WeakMap,w=new WeakMap,S={})}},ie=function(e,t,n){n===void 0&&(n="data-aria-hidden");var o=Array.from(Array.isArray(e)?e:[e]),c=oe(e);return c?(o.push.apply(o,Array.from(c.querySelectorAll("[aria-live], script"))),ue(o,c,n,"aria-hidden")):function(){return null}};function me(e){let t;M(()=>$(e),n=>{n?t=ie(n):t&&t()}),I(()=>{t&&t()})}const ce=H(()=>E([]));function le(){const e=ce();return{add(t){const n=e.value[0];t!==n&&n?.pause(),e.value=B(e.value,t),e.value.unshift(t)},remove(t){e.value=B(e.value,t),e.value[0]?.resume()}}}function B(e,t){const n=[...e],o=n.indexOf(t);return o!==-1&&n.splice(o,1),n}function de(e){return e.filter(t=>t.tagName!=="A")}var fe=Y({__name:"FocusScope",props:{loop:{type:Boolean,required:!1,default:!1},trapped:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["mountAutoFocus","unmountAutoFocus"],setup(e,{emit:t}){const n=e,o=t,{currentRef:c,currentElement:p}=j(),v=E(null),m=le(),l=X({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}});T(r=>{if(!x)return;const a=p.value;if(!n.trapped)return;function s(f){if(l.paused||!a)return;const y=f.target;a.contains(y)?v.value=y:b(v.value,{select:!0})}function d(f){if(l.paused||!a)return;const y=f.relatedTarget;y!==null&&(a.contains(y)||b(v.value,{select:!0}))}function u(f){a.contains(v.value)||b(a)}document.addEventListener("focusin",s),document.addEventListener("focusout",d);const i=new MutationObserver(u);a&&i.observe(a,{childList:!0,subtree:!0}),r(()=>{document.removeEventListener("focusin",s),document.removeEventListener("focusout",d),i.disconnect()})}),T(async r=>{const a=p.value;if(await D(),!a)return;m.add(l);const s=A();if(!a.contains(s)){const u=new CustomEvent(F,_);a.addEventListener(F,i=>o("mountAutoFocus",i)),a.dispatchEvent(u),u.defaultPrevented||(ee(de(te(a)),{select:!0}),A()===s&&b(a))}r(()=>{a.removeEventListener(F,f=>o("mountAutoFocus",f));const u=new CustomEvent(k,_),i=f=>{o("unmountAutoFocus",f)};a.addEventListener(k,i),a.dispatchEvent(u),setTimeout(()=>{u.defaultPrevented||b(s??document.body,{select:!0}),a.removeEventListener(k,i),m.remove(l)},0)})});function h(r){if(!n.loop&&!n.trapped||l.paused)return;const a=r.key==="Tab"&&!r.altKey&&!r.ctrlKey&&!r.metaKey,s=A();if(a&&s){const d=r.currentTarget,[u,i]=ne(d);u&&i?!r.shiftKey&&s===i?(r.preventDefault(),n.loop&&b(u,{select:!0})):r.shiftKey&&s===u&&(r.preventDefault(),n.loop&&b(i,{select:!0})):s===d&&r.preventDefault()}}return(r,a)=>(G(),z(Q(Z),{ref_key:"currentRef",ref:c,tabindex:"-1","as-child":r.asChild,as:r.as,onKeydown:h},{default:V(()=>[J(r.$slots,"default")]),_:3},8,["as-child","as"]))}}),ye=fe;export{ye as F,pe as a,me as u};
@@ -1 +0,0 @@
1
- import{_ as H}from"./BnMTFF5R.js";import{_ as J,a as X}from"./CfCXpVn5.js";import{_ as Z}from"./BAZ8sewA.js";import{_ as ee}from"./ByLsRRoQ.js";import{_ as te}from"./D8oIH8m1.js";import{_ as oe}from"./OlF0QnKF.js";import{e as u,ah as ae,c as ne,a as re,ag as le,f as C,q as se,G as k,V as l,U as a,C as c,ai as w,T as _,ab as s,S,aj as ce,ak as ie,_ as ue,Y as me,ae as y,aV as de,aa as M,a9 as pe,aW as fe}from"./D6tVZcRs.js";import{_ as _e}from"./BWuL2CzO.js";import{_ as ye}from"./-HePz7lp.js";import{_ as he}from"./evY81hM3.js";import{f as ve}from"./CWePHsZr.js";import"./ZvG7a1W3.js";import"./D12qPplu.js";import"./C7m9zGMG.js";import"./IYCBGuRS.js";import"./B6om4MW2.js";import"./BvFYnRMR.js";import"./CAWbHTgy.js";import"./B2wI_pYg.js";import"./sBzyvWMJ.js";import"./DvHS7_h2.js";import"./DWZ9ieYa.js";import"./qcVwZv8e.js";import"./C6Y-ieo6.js";import"./DwSY6_2U.js";import"./BNeeERBt.js";import"./88opOQSr.js";import"./B0nzD8Sk.js";import"./DFZkCmLQ.js";import"./DB2zZev7.js";import"./BNJJSRKh.js";import"./C8ut0f5H.js";function ge(){const m=u([]),d=u(!0),p=u(null),g=ae({query:"",chunkType:"all",limit:50});async function b(i){d.value=!0,p.value=null;const e={...g,...i};try{const o={};e.query&&(o.query=e.query),e.chunkType&&e.chunkType!=="all"&&(o.chunkType=e.chunkType),e.projectPath&&(o.projectPath=e.projectPath),e.limit&&(o.limit=String(e.limit));const f=await $fetch("/api/memory/search",{query:o});return m.value=f.data,f.data}catch(o){throw p.value="Failed to load memories",console.error("Failed to load memories:",o),o}finally{d.value=!1}}async function T(i){try{await $fetch(`/api/memory/${i}`,{method:"DELETE"}),m.value=m.value.filter(e=>e.id!==i)}catch(e){throw console.error("Failed to delete memory:",e),e}}const h=ne(()=>{const i=m.value.reduce((e,o)=>(e[o.chunkType]=(e[o.chunkType]||0)+1,e),{});return{total:m.value.length,byType:i}});return{memories:m,loading:d,error:p,filters:g,stats:h,fetchMemories:b,deleteMemory:T}}const be={class:"contents"},Te={class:"p-4"},xe={key:0,class:"space-y-3"},ke={key:1,class:"flex flex-col items-center justify-center h-64 text-neutral-500"},we=["title"],De={class:"flex items-center gap-2"},Ue={class:"w-16 h-1.5 bg-neutral-200 dark:bg-neutral-700 rounded-full overflow-hidden"},$e={class:"text-xs text-muted"},Ce={class:"text-sm text-muted"},Se={class:"text-sm text-muted"},D="__all__",ct=re({__name:"memories",setup(m){const d=le(),{memories:p,loading:g,filters:b,stats:T,fetchMemories:h,deleteMemory:i}=ge(),e=u(!1),o=u(null),f=u(!1),V=[{value:D,label:"All Types"},{value:"decision",label:"Decisions"},{value:"fact",label:"Facts"},{value:"solution",label:"Solutions"},{value:"pattern",label:"Patterns"},{value:"preference",label:"Preferences"},{value:"summary",label:"Summaries"}],x=u(D),v=u("");C(x,n=>{b.chunkType=n===D?"all":n,h()});const F=fe(()=>{b.query=v.value||void 0,h()},300);C(v,F);function q(n){o.value=n,e.value=!0}async function A(){if(o.value){f.value=!0;try{await i(o.value),d.add({title:"Memory deleted",color:"success"}),e.value=!1}catch{d.add({title:"Failed to delete memory",color:"error"})}finally{f.value=!1,o.value=null}}}function N(n){switch(n){case"decision":return"primary";case"fact":return"info";case"solution":return"success";case"pattern":return"warning";case"preference":return"neutral";case"summary":return"neutral";default:return"neutral"}}function B(n){switch(n){case"decision":return"i-lucide-git-branch";case"fact":return"i-lucide-info";case"solution":return"i-lucide-check-circle";case"pattern":return"i-lucide-repeat";case"preference":return"i-lucide-settings";case"summary":return"i-lucide-file-text";default:return"i-lucide-circle"}}function K(n){return ve(new Date(n),{addSuffix:!0})}const L=[{accessorKey:"chunkType",header:"Type"},{accessorKey:"content",header:"Content"},{accessorKey:"relevanceScore",header:"Relevance"},{accessorKey:"accessCount",header:"Accessed"},{accessorKey:"createdAt",header:"Created"},{accessorKey:"actions",header:""}];function P(n){return[[{label:"Delete",icon:"i-lucide-trash-2",color:"error",onSelect:()=>q(n)}]]}return se(()=>{h()}),(n,r)=>{const U=H,j=X,E=Z,z=ee,I=te,R=oe,$=ue,G=me,O=_e,Q=ye,W=J,Y=he;return _(),k("div",be,[l(W,{id:"memories",grow:""},{header:a(()=>[l(j,{title:"Memories"},{leading:a(()=>[c(T).total>0?(_(),S(U,{key:0,color:"neutral",variant:"subtle",class:"ml-2"},{default:a(()=>[M(y(c(T).total),1)]),_:1})):pe("",!0)]),_:1}),l(I,null,{left:a(()=>[l(E,{modelValue:c(x),"onUpdate:modelValue":r[0]||(r[0]=t=>w(x)?x.value=t:null),items:V,"value-key":"value",class:"w-40"},null,8,["modelValue"])]),right:a(()=>[l(z,{modelValue:c(v),"onUpdate:modelValue":r[1]||(r[1]=t=>w(v)?v.value=t:null),placeholder:"Search memories...",icon:"i-lucide-search",class:"w-64"},null,8,["modelValue"])]),_:1})]),body:a(()=>[s("div",Te,[c(g)?(_(),k("div",xe,[(_(),k(ce,null,ie(10,t=>l(R,{key:t,class:"h-12 w-full"})),64))])):c(p).length===0?(_(),k("div",ke,[l($,{name:"i-lucide-brain",class:"w-12 h-12 mb-4"}),r[4]||(r[4]=s("p",{class:"text-lg font-medium"}," No memories yet ",-1)),r[5]||(r[5]=s("p",{class:"text-sm text-center max-w-md mt-2"}," Memories are automatically extracted from your Claude conversations. They will appear here once extraction hooks are triggered. ",-1))])):(_(),S(Q,{key:2,data:c(p),columns:L},{"chunkType-cell":a(({row:t})=>[l(U,{color:N(t.original.chunkType),variant:"subtle",size:"sm"},{default:a(()=>[l($,{name:B(t.original.chunkType),class:"w-3 h-3 mr-1"},null,8,["name"]),M(" "+y(t.original.chunkType),1)]),_:2},1032,["color"])]),"content-cell":a(({row:t})=>[s("span",{class:"text-sm line-clamp-2",title:t.original.content},y(t.original.content),9,we)]),"relevanceScore-cell":a(({row:t})=>[s("div",De,[s("div",Ue,[s("div",{class:"h-full bg-primary-500 rounded-full",style:de({width:`${t.original.relevanceScore*100}%`})},null,4)]),s("span",$e,y((t.original.relevanceScore*100).toFixed(0))+"% ",1)])]),"accessCount-cell":a(({row:t})=>[s("span",Ce,y(t.original.accessCount)+"x ",1)]),"createdAt-cell":a(({row:t})=>[s("span",Se,y(K(t.original.createdAt)),1)]),"actions-cell":a(({row:t})=>[l(O,{items:P(t.original.id)},{default:a(()=>[l(G,{icon:"i-lucide-more-horizontal",color:"neutral",variant:"ghost",size:"xs"})]),_:1},8,["items"])]),_:1},8,["data"]))])]),_:1}),l(Y,{open:c(e),"onUpdate:open":r[2]||(r[2]=t=>w(e)?e.value=t:null),title:"Delete Memory",description:"Are you sure you want to delete this memory? This action cannot be undone.","confirm-label":"Delete","confirm-color":"error",icon:"i-lucide-trash-2",loading:c(f),onConfirm:A,onCancel:r[3]||(r[3]=t=>o.value=null)},null,8,["open","loading"])])}}});export{ct as default};
@@ -1 +0,0 @@
1
- import{r as t}from"./NrRzUJNY.js";import a from"./iTVKJ1kw.js";import{P as e,S as n,T as s,U as c,C as i}from"./D6tVZcRs.js";import"./iik6CYzq.js";const d={__name:"ProseCaution",setup(p){const o=e();return(r,f)=>(s(),n(a,{color:"error",icon:i(o).ui.icons.caution},{default:c(()=>[t(r.$slots,"default",{mdcUnwrap:"p"})]),_:3},8,["icon"]))}};export{d as default};
@@ -1 +0,0 @@
1
- import{d as a,n as i}from"./D6tVZcRs.js";import{u}from"./BghuwIGa.js";const r=a(()=>{const{isAuthenticated:e,isPending:t}=u();if(!t.value&&!e.value)return i("/login")});export{r as default};
@@ -1 +0,0 @@
1
- import{aq as z,ao as R,ar as O,bg as A,N as H,P as U,c as y,f as I,aB as E,aT as G,G as _,T as g,V as t,U as o,a4 as s,C as l,ab as m,S as b,a9 as h,W as n,X as q,a3 as j,aE as W,aF as X,aj as Y,am as v,bD as J,Y as N,ap as K,aa as Q,ae as Z,a as ee,af as te,_ as ae}from"./D6tVZcRs.js";import{_ as le}from"./D2NxqyzW.js";import{c as C}from"./D12qPplu.js";import{_ as M}from"./jeRvcMHU.js";import{_ as se}from"./BVO3XpHT.js";import{_ as oe}from"./DFZkCmLQ.js";import{_ as ne}from"./DKZmgHNU.js";import{_ as ie}from"./BD-AFJWW.js";import"./DB2zZev7.js";import"./DWZ9ieYa.js";import"./BNJJSRKh.js";import"./CAWbHTgy.js";import"./DvHS7_h2.js";import"./B5FuOh7E.js";const re={slots:{root:"bg-default/75 backdrop-blur border-b border-default h-(--ui-header-height) sticky top-0 z-50",container:"flex items-center justify-between gap-3 h-full",left:"lg:flex-1 flex items-center gap-1.5",center:"hidden lg:flex",right:"flex items-center justify-end lg:flex-1 gap-1.5",title:"shrink-0 font-bold text-xl text-highlighted flex items-end gap-1.5",toggle:"lg:hidden",content:"lg:hidden",overlay:"lg:hidden",header:"px-4 sm:px-6 h-(--ui-header-height) shrink-0 flex items-center justify-between gap-3",body:"p-4 sm:p-6 overflow-y-auto"},variants:{toggleSide:{left:{toggle:"-ms-1.5"},right:{toggle:"-me-1.5"}}}},ue=Object.assign({inheritAttrs:!1},{__name:"UHeader",props:z({as:{type:null,required:!1,default:"header"},title:{type:String,required:!1,default:"Nuxt UI"},to:{type:String,required:!1,default:"/"},mode:{type:null,required:!1,default:"modal"},menu:{type:null,required:!1},toggle:{type:[Boolean,Object],required:!1,default:!0},toggleSide:{type:String,required:!1,default:"right"},class:{type:null,required:!1},ui:{type:null,required:!1}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:["update:open"],setup(a){const e=a,d=R(),i=O(a,"open",{type:Boolean,default:!1}),r=A(),{t:u}=H(),p=U(),[S,$]=C(),[x,k]=C(),[V,w]=C(),D=y(()=>(d.title&&J(d.title())||e.title||"Nuxt UI").trim());I(()=>r.fullPath,()=>{i.value=!1});const f=y(()=>v({extend:v(re),...p.ui?.header||{}})()),F=y(()=>({slideover:se,modal:oe,drawer:ne})[e.mode]),L=E(()=>G(e.menu,{content:{onOpenAutoFocus:c=>c.preventDefault()}},e.mode==="modal"?{fullscreen:!0,transition:!1}:{}));function B(){i.value=!i.value}return(c,P)=>(g(),_(Y,null,[t(l(V),null,{default:o(()=>[s(c.$slots,"toggle",{open:i.value,toggle:B,ui:f.value},()=>[a.toggle?(g(),b(N,q({key:0,color:"neutral",variant:"ghost","aria-label":i.value?l(u)("header.close"):l(u)("header.open"),icon:i.value?l(p).ui.icons.close:l(p).ui.icons.menu},typeof a.toggle=="object"?a.toggle:{},{"data-slot":"toggle",class:f.value.toggle({class:e.ui?.toggle,toggleSide:a.toggleSide}),onClick:B}),null,16,["aria-label","icon","class"])):h("",!0)])]),_:3}),t(l(S),null,{default:o(()=>[m("div",{"data-slot":"left",class:n(f.value.left({class:e.ui?.left}))},[a.toggleSide==="left"?(g(),b(l(w),{key:0})):h("",!0),s(c.$slots,"left",{},()=>[t(K,{to:a.to,"aria-label":D.value,"data-slot":"title",class:n(f.value.title({class:e.ui?.title}))},{default:o(()=>[s(c.$slots,"title",{},()=>[Q(Z(a.title),1)])]),_:3},8,["to","aria-label","class"])])],2)]),_:3}),t(l(x),null,{default:o(()=>[m("div",{"data-slot":"right",class:n(f.value.right({class:e.ui?.right}))},[s(c.$slots,"right"),a.toggleSide==="right"?(g(),b(l(w),{key:0})):h("",!0)],2)]),_:3}),t(l(j),q({as:a.as},c.$attrs,{"data-slot":"root",class:f.value.root({class:[e.ui?.root,e.class]})}),{default:o(()=>[s(c.$slots,"top"),t(M,{"data-slot":"container",class:n(f.value.container({class:e.ui?.container}))},{default:o(()=>[t(l($)),m("div",{"data-slot":"center",class:n(f.value.center({class:e.ui?.center}))},[s(c.$slots,"default")],2),t(l(k))]),_:3},8,["class"]),s(c.$slots,"bottom")]),_:3},16,["as","class"]),t(l(F),q({open:i.value,"onUpdate:open":P[0]||(P[0]=T=>i.value=T),title:l(u)("header.title"),description:l(u)("header.description")},L.value,{ui:{overlay:f.value.overlay({class:e.ui?.overlay}),content:f.value.content({class:e.ui?.content})}}),{content:o(T=>[s(c.$slots,"content",W(X(T)),()=>[a.mode!=="drawer"?(g(),_("div",{key:0,"data-slot":"header",class:n(f.value.header({class:e.ui?.header}))},[t(l($)),t(l(k))],2)):h("",!0),m("div",{"data-slot":"body",class:n(f.value.body({class:e.ui?.body}))},[s(c.$slots,"body")],2)])]),_:3},16,["open","title","description","ui"])],64))}}),ce={base:"min-h-[calc(100vh-var(--ui-header-height))]"},de={__name:"UMain",props:{as:{type:null,required:!1},class:{type:null,required:!1}},setup(a){const e=a,d=U(),i=y(()=>v({extend:v(ce),...d.ui?.main||{}}));return(r,u)=>(g(),b(l(j),{as:a.as,class:n(i.value({class:e.class}))},{default:o(()=>[s(r.$slots,"default")]),_:3},8,["as","class"]))}},fe={slots:{root:"",top:"py-8 lg:py-12",bottom:"py-8 lg:py-12",container:"py-8 lg:py-4 lg:flex lg:items-center lg:justify-between lg:gap-x-3",left:"flex items-center justify-center lg:justify-start lg:flex-1 gap-x-1.5 mt-3 lg:mt-0 lg:order-1",center:"mt-3 lg:mt-0 lg:order-2 flex items-center justify-center",right:"lg:flex-1 flex items-center justify-center lg:justify-end gap-x-1.5 lg:order-3"}},ge={__name:"UFooter",props:{as:{type:null,required:!1,default:"footer"},class:{type:null,required:!1},ui:{type:null,required:!1}},setup(a){const e=a,d=R(),i=U(),r=y(()=>v({extend:v(fe),...i.ui?.footer||{}})());return(u,p)=>(g(),b(l(j),{as:a.as,"data-slot":"root",class:n(r.value.root({class:[e.ui?.root,e.class]}))},{default:o(()=>[d.top?(g(),_("div",{key:0,"data-slot":"top",class:n(r.value.top({class:e.ui?.top}))},[s(u.$slots,"top")],2)):h("",!0),t(M,{"data-slot":"container",class:n(r.value.container({class:e.ui?.container}))},{default:o(()=>[m("div",{"data-slot":"right",class:n(r.value.right({class:e.ui?.right}))},[s(u.$slots,"right")],2),m("div",{"data-slot":"center",class:n(r.value.center({class:e.ui?.center}))},[s(u.$slots,"default")],2),m("div",{"data-slot":"left",class:n(r.value.left({class:e.ui?.left}))},[s(u.$slots,"left")],2)]),_:3},8,["class"]),d.bottom?(g(),_("div",{key:1,"data-slot":"bottom",class:n(r.value.bottom({class:e.ui?.bottom}))},[s(u.$slots,"bottom")],2)):h("",!0)]),_:3},8,["as","class"]))}},Ue=ee({__name:"view",setup(a){return(e,d)=>{const i=ae,r=te,u=le,p=ue,S=de,$=ie,x=N,k=ge;return g(),_("div",null,[t(p,null,{left:o(()=>[t(r,{to:"/",class:"flex items-center gap-2"},{default:o(()=>[t(i,{name:"i-lucide-brain",class:"size-6 text-primary"}),d[0]||(d[0]=m("span",{class:"font-semibold"},"Cognova",-1))]),_:1})]),right:o(()=>[t(u)]),_:1}),t(S,null,{default:o(()=>[s(e.$slots,"default")]),_:3}),t($,{icon:"i-lucide-brain",ui:{icon:"text-primary"}}),t(k,null,{left:o(()=>[...d[1]||(d[1]=[m("p",{class:"text-muted text-sm"}," Shared via Cognova ",-1)])]),right:o(()=>[t(x,{icon:"i-simple-icons-github",to:"https://github.com/Patrity/cognova",target:"_blank","aria-label":"View on GitHub",color:"neutral",variant:"ghost"}),t(x,{icon:"i-simple-icons-x",to:"https://x.com/Patrity/",target:"_blank","aria-label":"View Twitter",color:"neutral",variant:"ghost"})]),_:1})])}}});export{Ue as default};
@@ -1 +0,0 @@
1
- import{P as l,c as n,G as r,T as p,a4 as u,W as d,am as e}from"./D6tVZcRs.js";const m={base:"bg-muted"},h={__name:"ProseThead",props:{class:{type:null,required:!1}},setup(s){const a=s,t=l(),o=n(()=>e({extend:e(m),...t.ui?.prose?.thead||{}}));return(c,i)=>(p(),r("thead",{class:d(o.value({class:a.class}))},[u(c.$slots,"default")],2))}};export{h as default};
@@ -1,39 +0,0 @@
1
- import{a as E,c as L,G as g,T as u,a9 as N,aj as C,ak as B,ab as p,V as y,_ as Z,ae as x,W as G,C as _,aI as lt,e as D,q as I,k as ct,a2 as dt,f as O,aN as ut,S as w,b8 as ht,U as v,aa as V,Y as mt}from"./D6tVZcRs.js";import{X as vt,O as J,c as P,i as _t,a as ft,b as gt,g as M,m as W,d as pt,e as K,h as yt,j as q,s as A,k as X,l as bt,n as kt,o as xt,p as $t,q as St,r as wt,t as Dt,S as Vt,C as Tt,A as Ct,z as Bt,f as Y,_ as Et}from"./9O1MXkck.js";import{_ as Mt,a as At}from"./CfCXpVn5.js";import{_ as z}from"./OlF0QnKF.js";import{c as Nt}from"./DQhm-UPG.js";import{_ as U}from"./DXJ9PxCv.js";import{e as Ht}from"./D12qPplu.js";import{_ as Pt}from"./DlAUqK2U.js";import{_ as Q}from"./-HePz7lp.js";import{_ as tt}from"./BnMTFF5R.js";import{f as Ut}from"./CWePHsZr.js";import{u as jt}from"./B-DMcEU9.js";import"./C8ut0f5H.js";import"./CqkleIqs.js";import"./ZvG7a1W3.js";import"./C7m9zGMG.js";import"./88opOQSr.js";import"./B0nzD8Sk.js";const Ft={class:"grid gap-4 grid-cols-2 sm:grid-cols-3 lg:grid-cols-5"},Wt={class:"flex items-center gap-2 text-muted text-sm mb-1"},Ot=E({__name:"HookStatsCards",props:{stats:{},loading:{type:Boolean}},setup(h){const n=h;function r(a){return a<1e3?`${a}ms`:a<6e4?`${(a/1e3).toFixed(1)}s`:`${(a/6e4).toFixed(1)}m`}const o=L(()=>{if(!n.stats)return[];const a=n.stats;return[{title:"Total Events",icon:"i-lucide-activity",value:a.totalEvents},{title:"Blocked",icon:"i-lucide-shield-alert",value:a.blockedEvents,color:"text-error"},{title:"Block Rate",icon:"i-lucide-percent",value:`${a.blockRate}%`},{title:"Avg Duration",icon:"i-lucide-clock",value:r(a.avgDurationMs)},{title:"Sessions",icon:"i-lucide-users",value:a.recentSessions.length}]});return(a,c)=>{const l=z,s=Z;return u(),g("div",Ft,[h.loading?(u(),g(C,{key:0},B(5,t=>p("div",{key:t,class:"p-4 rounded-lg bg-elevated border border-default"},[y(l,{class:"h-4 w-16 mb-2"}),y(l,{class:"h-8 w-12"})])),64)):h.stats?(u(!0),g(C,{key:1},B(_(o),t=>(u(),g("div",{key:t.title,class:"p-4 rounded-lg bg-elevated border border-default"},[p("div",Wt,[y(s,{name:t.icon,class:"size-4"},null,8,["name"]),p("span",null,x(t.title),1)]),p("p",{class:G(["text-2xl font-semibold",t.color])},x(t.value),3)]))),128)):N("",!0)])}}}),Rt=Object.assign(Ot,{__name:"HooksHookStatsCards"});function Gt({x:h,y:n,w:r,h:o,tl:a=!1,tr:c=!1,bl:l=!1,br:s=!1,r:t=0}){let e;e=`M${h+t},${n}h${r-2*t}`;let i=c?t:0,d=c?0:t;return e+=`a${i},${i} 0 0 1 ${i},${i}`,e+=`h${d}v${d}`,e+=`v${o-2*t}`,i=s?t:0,d=s?0:t,e+=`a${i},${i} 0 0 1 ${-i},${i}`,e+=`v${d}h${-d}`,e+=`h${2*t-r}`,i=l?t:0,d=l?0:t,e+=`a${i},${i} 0 0 1 ${-i},${-i}`,e+=`h${-d}v${-d}`,e+=`v${2*t-o}`,i=a?t:0,d=a?0:t,e+=`a${i},${i} 0 0 1 ${i},${-i}`,e+=`v${-d}h${d}`,e+="z",e}const zt=Object.assign(Object.assign({},vt),{color:void 0,barMaxWidth:void 0,barWidth:void 0,dataStep:void 0,barPadding:0,roundedCorners:2,cursor:null,barMinHeight1Px:!1,barMinHeightZeroValue:null,orientation:J.Vertical}),et=P`
2
- label: stacked-bar-component;
3
- `,Kt=_t`
4
- :root {
5
- --vis-stacked-bar-cursor: default;
6
- --vis-stacked-bar-fill-color: var(--vis-color-main);
7
- --vis-stacked-bar-stroke-color: none;
8
- --vis-stacked-bar-stroke-width: 0px;
9
- --vis-stacked-bar-hover-stroke-width: none;
10
- --vis-stacked-bar-hover-stroke-color: none;
11
-
12
- /* Dark Theme */
13
- --vis-dark-stacked-bar-stroke-color: none;
14
- }
15
-
16
- body.theme-dark ${`.${et}`} {
17
- --vis-stacked-bar-stroke-color: var(--vis-dark-stacked-bar-stroke-color);
18
- }
19
- `,H=P`
20
- label: bar;
21
- fill: var(--vis-stacked-bar-fill-color);
22
- stroke: var(--vis-stacked-bar-stroke-color);
23
- stroke-width: var(--vis-stacked-bar-stroke-width);
24
- cursor: var(--vis-stacked-bar-cursor);
25
-
26
- &:hover {
27
- stroke-width: var(--vis-stacked-bar-hover-stroke-width);
28
- stroke: var(--vis-stacked-bar-hover-stroke-color);
29
- }
30
- `,R=P`
31
- label: barGroup;
32
- `,at=P`
33
- label: barGroupExit;
34
- `,qt=Object.freeze(Object.defineProperty({__proto__:null,bar:H,barGroup:R,barGroupExit:at,globalStyles:Kt,root:et},Symbol.toStringTag,{value:"Module"}));class st extends ft{constructor(n){super(),this._defaultConfig=zt,this.config=this._defaultConfig,this.getAccessors=()=>gt(this.config.y)?this.config.y:[this.config.y],this.stacked=!0,this.events={},this._barData=[],n&&this.setConfig(n)}get bleed(){if(this._barData=this._getVisibleData(),this._barData.length===0)return{top:0,bottom:0,left:0,right:0};const n=!this.isVertical()&&this.dataScale.range()[0]>this.dataScale.range()[1],r=this.dataScale.domain(),o=this._getBarWidth()/2,a=this._barData.map((S,m)=>M(S,this.config.x,m)),c=W(a),l=pt(a),s=this.dataScale(c),t=this.dataScale(l),e=this.dataScale.invert(s+(n?o:-o)),i=this.dataScale.invert(t+(n?-o:o)),d=e<=r[0]?this.dataScale(r[0])-this.dataScale(e):0,$=i>r[1]?this.dataScale(i)-this.dataScale(r[1]):0;return{top:this.isVertical()?0:n?-$:d,bottom:this.isVertical()?0:n?-d:$,left:this.isVertical()?d:0,right:this.isVertical()?$:0}}get dataScale(){return this.isVertical()?this.xScale:this.yScale}get valueScale(){return this.isVertical()?this.yScale:this.xScale}isVertical(){return this.config.orientation===J.Vertical}_render(n){const{config:r}=this,o=K(n)?n:r.duration,a=this.getAccessors(),c=yt(this._barData,0,a,this._prevNegative);this._prevNegative=c.map(m=>!!m.isMostlyNegative);const l=this.g.selectAll(`.${R}`).data(this._barData,(m,f)=>{var k;return`${(k=q(m,r.id,f))!==null&&k!==void 0?k:f}`}),s=(m,f)=>{const k=this.dataScale(M(m,r.x,f)),b=this.isVertical()?k:0,j=this.isVertical()?0:k;return`translate(${b},${j})`},e=l.enter().append("g").attr("class",R).attr("transform",s).style("opacity",1).merge(l);A(e,o).attr("transform",s).style("opacity",1);const i=l.exit().attr("class",at);A(i,o).style("opacity",0).remove(),A(i.selectAll(`.${H}`),o).attr("transform",this.isVertical()?`translate(0,${this._height/3})`:`translate(${this._width/6},0)`);const d=e.selectAll(`.${H}`).data((m,f)=>c.map((k,b)=>Object.assign(Object.assign({},m),{_index:f,_stacked:k[f],_ending:b===c.length-1||b<=c.length-1&&c[b+1][f][0]!==k[f][1]}))),S=d.enter().append("path").attr("class",H).attr("d",(m,f)=>this._getBarPath(m,f,!0)).style("fill",(m,f)=>X(m,r.color,f)).merge(d);A(S,o).attr("d",(m,f)=>this._getBarPath(m,f)).style("fill",(m,f)=>X(m,r.color,f)).style("cursor",(m,f)=>q(m,r.cursor,f)),A(d.exit(),o).style("opacity",0).remove()}_getBarWidth(){const{config:n,datamodel:{data:r}}=this;if(bt(r))return 0;if(n.barWidth)return W([n.barWidth,n.barMaxWidth]);const o=this.dataScale.bandwidth,a=this.dataScale.domain?this.dataScale.domain():[];let l=1+(o?a.length:a[1]-a[0])/n.dataStep||!o&&r.filter((e,i)=>{const d=M(e,n.x,i);return d>=a[0]&&d<=a[1]}).length||r.length;!o&&l>=2&&(l+=1);const t=(l<2?1:1-n.barPadding)*(this.isVertical()?this._width:this._height)/l;return W([t,n.barMaxWidth])}_getVisibleData(){const{config:n,datamodel:{data:r}}=this,o=this._getBarWidth(),a=r.length<2?0:o/2,c=this.dataScale,l=Math.abs(c.invert(a)-c.invert(0));return r?.filter((t,e)=>{const i=M(t,n.x,e),d=c.domain(),$=+d[0],S=+d[1];return i>=$-l&&i<=S+l})}_getBarPath(n,r,o=!1){const{config:a}=this,c=this.getAccessors(),l=this._getBarWidth(),s=n._stacked[1]<0,t=n._ending,e=M(n,c[r],n._index),i=o?0:Math.abs(this.valueScale(n._stacked[0])-this.valueScale(n._stacked[1])),d=!o&&a.barMinHeight1Px&&i<1&&isFinite(e)&&e!==a.barMinHeightZeroValue?1:i,$=o?this.valueScale(0):this.valueScale(s?n._stacked[0]:n._stacked[1])-(i<1&&a.barMinHeight1Px?1:0),S=-l/2,m=l,f=a.roundedCorners?K(a.roundedCorners)?+a.roundedCorners:m/2:0,k=$t(f,0,Math.min(i,m)/2),b=this.yScale.range()[0]>this.yScale.range()[1];return Gt({x:this.isVertical()?S:$-d,y:this.isVertical()?$+(b?0:-d):S,w:this.isVertical()?m:d,h:this.isVertical()?d:m,tl:t&&(this.isVertical()?!s&&b||s&&!b:s),tr:t&&(this.isVertical()?!s&&b||s&&!b:!s),br:t&&(this.isVertical()?s&&b||!s&&!b:!s),bl:t&&(this.isVertical()?s&&b||!s&&!b:s),r:k})}getValueScaleExtent(n){const{datamodel:r}=this,o=this.getAccessors(),a=n?this._getVisibleData():r.data;return kt(a,...o)}getDataScaleExtent(){const{config:n,datamodel:r}=this;return xt(r.data,n.x)}getYDataExtent(n){return this.isVertical()?this.getValueScaleExtent(n):this.getDataScaleExtent()}getXDataExtent(){return this.isVertical()?this.getDataScaleExtent():this.getValueScaleExtent(!1)}}st.selectors=qt;const Xt={"data-vis-component":""},Yt=E({__name:"index",props:{color:{},barWidth:{},barMaxWidth:{},dataStep:{},barPadding:{},roundedCorners:{type:[Number,Boolean]},cursor:{},barMinHeight1Px:{type:Boolean},barMinHeightZeroValue:{},orientation:{},x:{},y:{},id:{type:Function},xScale:{type:[Object,Function]},yScale:{type:[Object,Function]},excludeFromDomainCalculation:{type:Boolean},duration:{},events:{},attributes:{},data:{}},setup(h,{expose:n}){const r=lt(St),o=h,a=L(()=>r.data.value??o.data),c=wt(o),l=D();return I(()=>{ct(()=>{var s;l.value=new st(c.value),(s=l.value)==null||s.setData(a.value),r.update(l.value)})}),dt(()=>{var s;(s=l.value)==null||s.destroy(),r.destroy()}),O(c,(s,t)=>{var e;Dt(s,t)||(e=l.value)==null||e.setConfig(c.value)}),O(a,()=>{var s;(s=l.value)==null||s.setData(a.value)}),n({component:l}),(s,t)=>(u(),g("div",Xt))}}),Lt={class:"flex items-center justify-between"},Zt={class:"text-sm font-medium"},It={key:0,class:"flex items-center justify-center h-48 text-muted"},Jt=E({__name:"HookActivityChart.client",props:{data:{},title:{},height:{}},setup(h){const n=h,r=ut("cardRef"),{width:o}=Ht(r),a=(e,i)=>i,c=[e=>e.allowed,e=>e.blocked],l=["var(--ui-success)","var(--ui-error)"],s=e=>{const i=n.data[e];return i?Y(new Date(i.date),"d MMM"):""},t=e=>`<div class="p-2 text-sm">
35
- <div class="font-medium">${Y(new Date(e.date),"MMM d, yyyy")}</div>
36
- <div class="text-success">Allowed: ${e.allowed}</div>
37
- <div class="text-error">Blocked: ${e.blocked}</div>
38
- <div class="text-muted">Total: ${e.total}</div>
39
- </div>`;return(e,i)=>{const d=U;return u(),w(d,{ref_key:"cardRef",ref:r,ui:{root:"overflow-visible",body:"!px-0 !pt-0 !pb-3"}},ht({default:v(()=>[h.data.length===0?(u(),g("div",It," No activity data ")):(u(),w(_(Vt),{key:1,data:h.data,padding:{top:10,left:10,right:10,bottom:10},class:G(h.height||"h-48"),width:_(o)},{default:v(()=>[y(_(Yt),{x:a,y:c,color:l,"bar-padding":.2}),y(_(Tt),{type:"x",x:a,"tick-format":s}),y(_(Ct),{color:"var(--ui-primary)",template:t}),y(_(Bt))]),_:1},8,["data","class","width"]))]),_:2},[h.title?{name:"header",fn:v(()=>[p("div",Lt,[p("p",Zt,x(h.title),1),i[0]||(i[0]=p("div",{class:"flex items-center gap-4 text-xs"},[p("span",{class:"flex items-center gap-1"},[p("span",{class:"w-3 h-3 rounded bg-success"}),V(" Allowed ")]),p("span",{class:"flex items-center gap-1"},[p("span",{class:"w-3 h-3 rounded bg-error"}),V(" Blocked ")])],-1))])]),key:"0"}:void 0]),1536)}}}),Qt=Object.assign(Pt(Jt,[["__scopeId","data-v-78e2a979"]]),{__name:"HooksHookActivityChart"}),te={key:0,class:"space-y-3"},ee={key:1,class:"text-center text-muted py-8"},ae={class:"font-mono text-sm"},se=E({__name:"ToolBreakdownTable",props:{data:{},loading:{type:Boolean}},setup(h){function n(o){return o<1e3?`${o}ms`:o<6e4?`${(o/1e3).toFixed(1)}s`:`${(o/6e4).toFixed(1)}m`}function r(o,a){const c=a>0?o/a*100:0;return c>50?"text-error":c>25?"text-warning":"text-success"}return(o,a)=>{const c=z,l=Q,s=U;return u(),w(s,null,{header:v(()=>[...a[0]||(a[0]=[p("p",{class:"text-sm font-medium"}," Tool Usage Breakdown ",-1)])]),default:v(()=>[h.loading?(u(),g("div",te,[(u(),g(C,null,B(5,t=>y(c,{key:t,class:"h-10 w-full"})),64))])):h.data.length===0?(u(),g("div",ee," No tool usage data yet ")):(u(),w(l,{key:2,data:h.data,columns:[{accessorKey:"toolName",header:"Tool"},{accessorKey:"total",header:"Total"},{accessorKey:"blocked",header:"Blocked"},{accessorKey:"avgDurationMs",header:"Avg Duration"}]},{"toolName-cell":v(({row:t})=>[p("span",ae,x(t.original.toolName),1)]),"blocked-cell":v(({row:t})=>[p("span",{class:G(r(t.original.blocked,t.original.total))},x(t.original.blocked),3)]),"avgDurationMs-cell":v(({row:t})=>[V(x(n(t.original.avgDurationMs)),1)]),_:1},8,["data"]))]),_:1})}}}),oe=Object.assign(se,{__name:"HooksToolBreakdownTable"}),ne={key:0,class:"space-y-3"},re={key:1,class:"text-center text-muted py-8"},ie={key:0,class:"font-mono text-sm"},le={key:1,class:"text-muted"},ce={key:0},de={key:1,class:"text-muted"},ue={class:"text-muted text-sm"},he=E({__name:"RecentEventsTable",props:{events:{},loading:{type:Boolean}},setup(h){function n(o){switch(o){case"SessionStart":return"success";case"SessionEnd":return"neutral";case"PreToolUse":return"info";case"PostToolUse":return"success";case"PostToolUseFailure":return"error";case"UserPromptSubmit":return"info";default:return"neutral"}}function r(o){return Ut(new Date(o),{addSuffix:!0})}return(o,a)=>{const c=z,l=tt,s=Q,t=U;return u(),w(t,null,{header:v(()=>[...a[0]||(a[0]=[p("p",{class:"text-sm font-medium"}," Recent Events ",-1)])]),default:v(()=>[h.loading?(u(),g("div",ne,[(u(),g(C,null,B(10,e=>y(c,{key:e,class:"h-10 w-full"})),64))])):h.events.length===0?(u(),g("div",re," No events recorded yet ")):(u(),w(s,{key:2,data:h.events,columns:[{accessorKey:"eventType",header:"Event"},{accessorKey:"toolName",header:"Tool"},{accessorKey:"blocked",header:"Status"},{accessorKey:"durationMs",header:"Duration"},{accessorKey:"createdAt",header:"Time"}]},{"eventType-cell":v(({row:e})=>[y(l,{color:n(e.original.eventType),variant:"subtle",size:"sm"},{default:v(()=>[V(x(e.original.eventType),1)]),_:2},1032,["color"])]),"toolName-cell":v(({row:e})=>[e.original.toolName?(u(),g("span",ie,x(e.original.toolName),1)):(u(),g("span",le," - "))]),"blocked-cell":v(({row:e})=>[e.original.blocked?(u(),w(l,{key:0,color:"error",variant:"subtle",size:"sm"},{default:v(()=>[...a[1]||(a[1]=[V(" Blocked ",-1)])]),_:1})):(u(),w(l,{key:1,color:"success",variant:"subtle",size:"sm"},{default:v(()=>[...a[2]||(a[2]=[V(" Allowed ",-1)])]),_:1}))]),"durationMs-cell":v(({row:e})=>[e.original.durationMs?(u(),g("span",ce,x(e.original.durationMs)+"ms ",1)):(u(),g("span",de," - "))]),"createdAt-cell":v(({row:e})=>[p("span",ue,x(r(e.original.createdAt)),1)]),_:1},8,["data"]))]),_:1})}}}),me=Object.assign(he,{__name:"HooksRecentEventsTable"});function ve(){const h=D([]),n=D(null),r=D(!1),o=D(null);async function a(s){r.value=!0,o.value=null;try{const t=await $fetch("/api/hooks/events",{query:s});return h.value=t.data,t.data}catch(t){throw o.value="Failed to load hook events",console.error("Failed to load hook events:",t),t}finally{r.value=!1}}async function c(s="7d"){r.value=!0,o.value=null;try{const t=await $fetch("/api/hooks/stats",{query:{period:s}});return n.value=t.data,t.data}catch(t){throw o.value="Failed to load hook stats",console.error("Failed to load hook stats:",t),t}finally{r.value=!1}}async function l(s,t=100){try{return(await $fetch("/api/hooks/events",{query:{sessionId:s,limit:t}})).data}catch(e){throw console.error("Failed to fetch session events:",e),e}}return{events:h,stats:n,loading:r,error:o,fetchEvents:a,fetchStats:c,fetchEventsBySession:l}}const _e=Nt(Qt),fe={class:"contents"},ge={class:"p-4 space-y-6"},pe={class:"grid lg:grid-cols-2 gap-6"},ye={key:0,class:"text-center text-muted py-8"},be={key:1,class:"space-y-3"},ke={class:"text-sm"},xe={key:1,class:"flex flex-col items-center justify-center h-64 text-neutral-500"},Oe=E({__name:"hooks",setup(h){const{fetchEvents:n,fetchStats:r}=ve(),{agentStatsPeriod:o}=jt(),a=D([]),c=D(null),l=D(!1),s=D(o.value),t=[{label:"24h",value:"24h"},{label:"7d",value:"7d"},{label:"30d",value:"30d"}];async function e(){l.value=!0;try{const[i,d]=await Promise.all([r(s.value),n({limit:50})]);c.value=i,a.value=d}catch(i){console.error("Failed to load hook data:",i)}finally{l.value=!1}}return O(s,()=>{o.value=s.value,e()}),I(e),(i,d)=>{const $=mt,S=Et,m=At,f=Rt,k=_e,b=oe,j=tt,ot=U,nt=me,rt=Z,it=Mt;return u(),g("div",fe,[y(it,{id:"hooks",grow:""},{header:v(()=>[y(m,{title:"Hook Analytics"},{right:v(()=>[y(S,null,{default:v(()=>[(u(),g(C,null,B(t,T=>y($,{key:T.value,color:_(s)===T.value?"primary":"neutral",variant:_(s)===T.value?"solid":"ghost",size:"sm",onClick:F=>s.value=T.value},{default:v(()=>[V(x(T.label),1)]),_:2},1032,["color","variant","onClick"])),64))]),_:1})]),_:1})]),body:v(()=>[p("div",ge,[y(f,{stats:_(c),loading:_(l)},null,8,["stats","loading"]),_(c)&&_(c).dailyActivity.length>0?(u(),w(k,{key:0,data:_(c).dailyActivity,title:"Daily Activity"},null,8,["data"])):N("",!0),p("div",pe,[y(b,{data:_(c)?.toolBreakdown??[],loading:_(l)},null,8,["data","loading"]),_(c)?(u(),w(ot,{key:0},{header:v(()=>[...d[0]||(d[0]=[p("p",{class:"text-sm font-medium"}," Events by Type ",-1)])]),default:v(()=>[!_(c).eventsByType||Object.keys(_(c).eventsByType).length===0?(u(),g("div",ye," No events by type data ")):(u(),g("div",be,[(u(!0),g(C,null,B(_(c).eventsByType,(T,F)=>(u(),g("div",{key:F,class:"flex items-center justify-between"},[p("span",ke,x(F),1),y(j,{color:"neutral",variant:"subtle"},{default:v(()=>[V(x(T),1)]),_:2},1024)]))),128))]))]),_:1})):N("",!0)]),y(nt,{events:_(a),loading:_(l)},null,8,["events","loading"]),!_(l)&&_(a).length===0&&!_(c)?.totalEvents?(u(),g("div",xe,[y(rt,{name:"i-lucide-webhook",class:"w-12 h-12 mb-4"}),d[1]||(d[1]=p("p",{class:"text-lg font-medium"}," No hook events yet ",-1)),d[2]||(d[2]=p("p",{class:"text-sm text-center max-w-md"}," Hook events will appear here once Claude Code hooks are triggered. Make sure your hooks are configured in ~/.claude/settings.json ",-1))])):N("",!0)])]),_:1})])}}});export{Oe as default};
@@ -1 +0,0 @@
1
- import{P as c,c as n,G as i,T as l,a4 as p,W as u,am as s,aa as d,ae as m}from"./D6tVZcRs.js";const f={base:"pb-4 text-muted *:first:mt-0 *:last:mb-0 *:my-1.5"},b={__name:"ProseAccordionItem",props:{label:{type:String,required:!0},description:{type:String,required:!1},class:{type:null,required:!1}},setup(e){const t=e,a=c(),r=n(()=>s({extend:s(f),...a.ui?.prose?.accordionItem||{}}));return(o,g)=>(l(),i("div",{class:u(r.value({class:t.class}))},[p(o.$slots,"default",{},()=>[d(m(e.description),1)])],2))}};export{b as default};
@@ -1 +0,0 @@
1
- import{u as C,a as B,_ as P,b as j}from"./ZvG7a1W3.js";import{P as T,L as R,aB as V,c as x,G as k,T as r,ab as b,a4 as l,X as q,C as e,aj as N,am as y,W as n,S as m,a9 as f,ao as M,V as z,U as D,aE as c,aF as g,_ as A,aa as O,ae as U,a3 as E}from"./D6tVZcRs.js";import{c as F}from"./D12qPplu.js";const K={slots:{root:"relative flex flex-col min-w-0 min-h-svh lg:not-last:border-e lg:not-last:border-default shrink-0",body:"flex flex-col gap-4 sm:gap-6 flex-1 overflow-y-auto p-4 sm:p-6",handle:""},variants:{size:{true:{root:"w-full lg:w-(--width)"},false:{root:"flex-1"}}}},G=["data-dragging"],J=Object.assign({inheritAttrs:!1},{__name:"UDashboardPanel",props:{class:{type:null,required:!1},ui:{type:null,required:!1},id:{type:String,required:!1},minSize:{type:Number,required:!1,default:15},maxSize:{type:Number,required:!1},defaultSize:{type:Number,required:!1},resizable:{type:Boolean,required:!1,default:!1}},setup(a){const t=a,p=T(),h=C({storageKey:"dashboard",unit:"%"}),i=`${h.storageKey}-panel-${t.id||R()}`,{el:v,size:u,isDragging:s,onMouseDown:o,onTouchStart:$,onDoubleClick:w}=B(i,V(()=>({...h,...t}))),S=x(()=>y({extend:y(K),...p.ui?.dashboardPanel||{}})({size:!!u.value}));return(d,L)=>(r(),k(N,null,[b("div",q({id:i,ref_key:"el",ref:v},d.$attrs,{"data-dragging":e(s),"data-slot":"root",class:S.value.root({class:[t.ui?.root,t.class]}),style:[e(u)?{"--width":`${e(u)}${e(h).unit}`}:void 0]}),[l(d.$slots,"default",{},()=>[l(d.$slots,"header"),b("div",{"data-slot":"body",class:n(S.value.body({class:t.ui?.body}))},[l(d.$slots,"body")],2),l(d.$slots,"footer")])],16,G),l(d.$slots,"resize-handle",{onMouseDown:e(o),onTouchStart:e($),onDoubleClick:e(w)},()=>[a.resizable?(r(),m(P,{key:0,"aria-controls":i,"data-slot":"handle",class:n(S.value.handle({class:t.ui?.handle})),onMousedown:e(o),onTouchstart:e($),onDblclick:e(w)},null,8,["class","onMousedown","onTouchstart","onDblclick"])):f("",!0)])],64))}}),I={slots:{root:"h-(--ui-header-height) shrink-0 flex items-center justify-between border-b border-default px-4 sm:px-6 gap-1.5",left:"flex items-center gap-1.5 min-w-0",icon:"shrink-0 size-5 self-center me-1.5",title:"flex items-center gap-1.5 font-semibold text-highlighted truncate",center:"hidden lg:flex",right:"flex items-center shrink-0 gap-1.5",toggle:""},variants:{toggleSide:{left:{toggle:""},right:{toggle:""}}}},Q=Object.assign({inheritAttrs:!1},{__name:"UDashboardNavbar",props:{as:{type:null,required:!1},icon:{type:null,required:!1},title:{type:String,required:!1},toggle:{type:[Boolean,Object],required:!1,default:!0},toggleSide:{type:String,required:!1,default:"left"},class:{type:null,required:!1},ui:{type:null,required:!1}},setup(a){const t=a,p=M(),h=T(),i=C({}),[v,u]=F(),s=x(()=>y({extend:y(I),...h.ui?.dashboardNavbar||{}})());return(o,$)=>(r(),k(N,null,[z(e(v),null,{default:D(()=>[l(o.$slots,"toggle",c(g({...e(i),ui:s.value})),()=>[a.toggle?(r(),m(j,q({key:0},typeof a.toggle=="object"?a.toggle:{},{side:a.toggleSide,"data-slot":"toggle",class:s.value.toggle({class:t.ui?.toggle,toggleSide:a.toggleSide})}),null,16,["side","class"])):f("",!0)])]),_:3}),z(e(E),q({as:a.as},o.$attrs,{"data-slot":"root",class:s.value.root({class:[t.ui?.root,t.class]})}),{default:D(()=>[b("div",{"data-slot":"left",class:n(s.value.left({class:t.ui?.left}))},[a.toggleSide==="left"?(r(),m(e(u),{key:0})):f("",!0),l(o.$slots,"left",c(g(e(i))),()=>[l(o.$slots,"leading",c(g({...e(i),ui:s.value})),()=>[a.icon?(r(),m(A,{key:0,name:a.icon,"data-slot":"icon",class:n(s.value.icon({class:t.ui?.icon}))},null,8,["name","class"])):f("",!0)]),b("h1",{"data-slot":"title",class:n(s.value.title({class:t.ui?.title}))},[l(o.$slots,"title",{},()=>[O(U(a.title),1)])],2),l(o.$slots,"trailing",c(g({...e(i),ui:s.value})))])],2),p.default?(r(),k("div",{key:0,"data-slot":"center",class:n(s.value.center({class:t.ui?.center}))},[l(o.$slots,"default",c(g(e(i))))],2)):f("",!0),b("div",{"data-slot":"right",class:n(s.value.right({class:t.ui?.right}))},[l(o.$slots,"right",c(g(e(i)))),a.toggleSide==="right"?(r(),m(e(u),{key:0})):f("",!0)],2)]),_:3},16,["as","class"])],64))}});export{J as _,Q as a};
@@ -1 +0,0 @@
1
- import{r as n}from"./NrRzUJNY.js";import a from"./iTVKJ1kw.js";import{P as s,S as t,T as e,U as i,C as p}from"./D6tVZcRs.js";import"./iik6CYzq.js";const d={__name:"ProseWarning",setup(c){const o=s();return(r,f)=>(e(),t(a,{color:"warning",icon:p(o).ui.icons.warning},{default:i(()=>[n(r.$slots,"default",{mdcUnwrap:"p"})]),_:3},8,["icon"]))}};export{d as default};
@@ -1 +0,0 @@
1
- import{r as l}from"./NrRzUJNY.js";import{P as c,c as p,S as n,T as m,U as u,W as i,am as s}from"./D6tVZcRs.js";import{_ as d}from"./BnMTFF5R.js";import"./iik6CYzq.js";const f={base:"rounded-full"},v={__name:"ProseBadge",props:{class:{type:null,required:!1}},setup(a){const e=a,o=c(),r=p(()=>s({extend:s(f),...o.ui?.prose?.badge||{}}));return(t,_)=>(m(),n(d,{color:"primary",variant:"subtle",class:i(r.value({class:e.class}))},{default:u(()=>[l(t.$slots,"default",{mdcUnwrap:"p"})]),_:3},8,["class"]))}};export{v as default};
@@ -1 +0,0 @@
1
- import{ao as i,P as p,c as v,G as t,T as d,ab as m,a9 as f,a4 as c,W as o,am as l}from"./D6tVZcRs.js";const b={slots:{root:"my-5",preview:"flex justify-center border border-muted relative p-4 rounded-md",code:"[&>div>pre]:rounded-t-none [&>div]:my-0"},variants:{code:{true:{preview:"border-b-0 rounded-b-none"}}}},C={__name:"ProseCodePreview",props:{class:{type:null,required:!1},ui:{type:null,required:!1}},setup(n){const e=n,r=i(),u=p(),s=v(()=>l({extend:l(b),...u.ui?.prose?.codePreview||{}})({code:!!r.code}));return(a,w)=>(d(),t("div",{class:o(s.value.root({class:[e.ui?.root,e.class]}))},[m("div",{class:o(s.value.preview({class:[e.ui?.preview]}))},[c(a.$slots,"default")],2),r.code?(d(),t("div",{key:0,class:o(s.value.code({class:[e.ui?.code]}))},[c(a.$slots,"code")],2)):f("",!0)],2))}};export{C as default};
@@ -1 +0,0 @@
1
- import{a as w,a_ as P,S as g,T as n,U as i,a4 as q,aE as L,aF as R,C as t,aR as U,bK as F,c as v,aQ as G,f as Q,e as S,bL as X,ao as I,bM as J,q as K,be as A,V as B,X as _,aD as Y,aa as Z,ae as M,al as ee,bE as te,Q as ae,ay as j,au as re,bf as oe,b5 as le,a3 as se,aC as ne,P as ie,az as ue,aA as de,aB as x,aT as pe,am as $,a9 as O,G as E,W as H,aj as fe,ak as ce}from"./D6tVZcRs.js";import{P as ge,a as ye,b as ve,c as be}from"./BvFYnRMR.js";import{u as me}from"./qcVwZv8e.js";import{u as _e}from"./DWZ9ieYa.js";import{_ as qe}from"./BNeeERBt.js";var he=w({__name:"TooltipArrow",props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"svg"}},setup(l){const u=l;return P(),(e,d)=>(n(),g(t(ge),L(R(u)),{default:i(()=>[q(e.$slots,"default")]),_:3},16))}}),Ce=he;const z="tooltip.open",[D,Te]=U("TooltipRoot");var we=w({__name:"TooltipRoot",props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},delayDuration:{type:Number,required:!1,default:void 0},disableHoverableContent:{type:Boolean,required:!1,default:void 0},disableClosingTrigger:{type:Boolean,required:!1,default:void 0},disabled:{type:Boolean,required:!1,default:void 0},ignoreNonKeyboardFocus:{type:Boolean,required:!1,default:void 0}},emits:["update:open"],setup(l,{emit:u}){const e=l,d=u;P();const a=F(),c=v(()=>e.disableHoverableContent??a.disableHoverableContent.value),f=v(()=>e.disableClosingTrigger??a.disableClosingTrigger.value),p=v(()=>e.disabled??a.disabled.value),y=v(()=>e.delayDuration??a.delayDuration.value),m=v(()=>e.ignoreNonKeyboardFocus??a.ignoreNonKeyboardFocus.value),r=G(e,"open",d,{defaultValue:e.defaultOpen,passive:e.open===void 0});Q(r,k=>{a.onClose&&(k?(a.onOpen(),document.dispatchEvent(new CustomEvent(z))):a.onClose())});const o=S(!1),s=S(),h=v(()=>r.value?o.value?"delayed-open":"instant-open":"closed"),{start:C,stop:T}=X(()=>{o.value=!0,r.value=!0},y,{immediate:!1});function b(){T(),o.value=!1,r.value=!0}function N(){T(),r.value=!1}function W(){C()}return Te({contentId:"",open:r,stateAttribute:h,trigger:s,onTriggerChange(k){s.value=k},onTriggerEnter(){a.isOpenDelayed.value?W():b()},onTriggerLeave(){c.value?N():T()},onOpen:b,onClose:N,disableHoverableContent:c,disableClosingTrigger:f,disabled:p,ignoreNonKeyboardFocus:m}),(k,Fe)=>(n(),g(t(ye),null,{default:i(()=>[q(k.$slots,"default",{open:t(r)})]),_:3}))}}),Pe=we,ke=w({__name:"TooltipContentImpl",props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1,default:"top"},sideOffset:{type:Number,required:!1,default:0},align:{type:null,required:!1,default:"center"},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1,default:!0},collisionBoundary:{type:null,required:!1,default:()=>[]},collisionPadding:{type:[Number,Object],required:!1,default:0},arrowPadding:{type:Number,required:!1,default:0},sticky:{type:String,required:!1,default:"partial"},hideWhenDetached:{type:Boolean,required:!1,default:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:["escapeKeyDown","pointerDownOutside"],setup(l,{emit:u}){const e=l,d=u,a=D(),{forwardRef:c}=P(),f=I(),p=v(()=>f.default?.({})),y=v(()=>{if(e.ariaLabel)return e.ariaLabel;let r="";function o(s){typeof s.children=="string"&&s.type!==J?r+=s.children:Array.isArray(s.children)&&s.children.forEach(h=>o(h))}return p.value?.forEach(s=>o(s)),r}),m=v(()=>{const{ariaLabel:r,...o}=e;return o});return K(()=>{A(window,"scroll",r=>{r.target?.contains(a.trigger.value)&&a.onClose()}),A(window,z,a.onClose)}),(r,o)=>(n(),g(t(te),{"as-child":"","disable-outside-pointer-events":!1,onEscapeKeyDown:o[0]||(o[0]=s=>d("escapeKeyDown",s)),onPointerDownOutside:o[1]||(o[1]=s=>{t(a).disableClosingTrigger.value&&t(a).trigger.value?.contains(s.target)&&s.preventDefault(),d("pointerDownOutside",s)}),onFocusOutside:o[2]||(o[2]=ee(()=>{},["prevent"])),onDismiss:o[3]||(o[3]=s=>t(a).onClose())},{default:i(()=>[B(t(ve),_({ref:t(c),"data-state":t(a).stateAttribute.value},{...r.$attrs,...m.value},{style:{"--reka-tooltip-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-tooltip-content-available-width":"var(--reka-popper-available-width)","--reka-tooltip-content-available-height":"var(--reka-popper-available-height)","--reka-tooltip-trigger-width":"var(--reka-popper-anchor-width)","--reka-tooltip-trigger-height":"var(--reka-popper-anchor-height)"}}),{default:i(()=>[q(r.$slots,"default"),B(t(Y),{id:t(a).contentId,role:"tooltip"},{default:i(()=>[Z(M(y.value),1)]),_:1},8,["id"])]),_:3},16,["data-state"])]),_:3}))}}),V=ke,Be=w({__name:"TooltipContentHoverable",props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},setup(l){const e=ae(l),{forwardRef:d,currentElement:a}=P(),{trigger:c,onClose:f}=D(),p=F(),{isPointerInTransit:y,onPointerExit:m}=me(c,a);return p.isPointerInTransitRef=y,m(()=>{f()}),(r,o)=>(n(),g(V,_({ref:t(d)},t(e)),{default:i(()=>[q(r.$slots,"default")]),_:3},16))}}),Oe=Be,Se=w({__name:"TooltipContent",props:{forceMount:{type:Boolean,required:!1},ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1,default:"top"},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:["escapeKeyDown","pointerDownOutside"],setup(l,{emit:u}){const e=l,d=u,a=D(),c=j(e,d),{forwardRef:f}=P();return(p,y)=>(n(),g(t(oe),{present:p.forceMount||t(a).open.value},{default:i(()=>[(n(),g(re(t(a).disableHoverableContent.value?V:Oe),_({ref:t(f)},t(c)),{default:i(()=>[q(p.$slots,"default")]),_:3},16))]),_:3},8,["present"]))}}),De=Se,Ne=w({__name:"TooltipPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(l){const u=l;return(e,d)=>(n(),g(t(le),L(R(u)),{default:i(()=>[q(e.$slots,"default")]),_:3},16))}}),xe=Ne,Ee=w({__name:"TooltipTrigger",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(l){const u=l,e=D(),d=F();e.contentId||=_e(void 0,"reka-tooltip-content");const{forwardRef:a,currentElement:c}=P(),f=S(!1),p=S(!1),y=v(()=>e.disabled.value?{}:{click:T,focus:h,pointermove:o,pointerleave:s,pointerdown:r,blur:C});K(()=>{e.onTriggerChange(c.value)});function m(){setTimeout(()=>{f.value=!1},1)}function r(){e.open&&!e.disableClosingTrigger.value&&e.onClose(),f.value=!0,document.addEventListener("pointerup",m,{once:!0})}function o(b){b.pointerType!=="touch"&&!p.value&&!d.isPointerInTransitRef.value&&(e.onTriggerEnter(),p.value=!0)}function s(){e.onTriggerLeave(),p.value=!1}function h(b){f.value||e.ignoreNonKeyboardFocus.value&&!b.target.matches?.(":focus-visible")||e.onOpen()}function C(){e.onClose()}function T(){e.disableClosingTrigger.value||e.onClose()}return(b,N)=>(n(),g(t(be),{"as-child":"",reference:b.reference},{default:i(()=>[B(t(se),_({ref:t(a),"aria-describedby":t(e).open.value?t(e).contentId:void 0,"data-state":t(e).stateAttribute.value,as:b.as,"as-child":u.asChild,"data-grace-area-trigger":""},ne(y.value)),{default:i(()=>[q(b.$slots,"default")]),_:3},16,["aria-describedby","data-state","as","as-child"])]),_:3},8,["reference"]))}}),Le=Ee;const Re={slots:{content:"flex items-center gap-1 bg-default text-highlighted shadow-sm rounded-sm ring ring-default h-6 px-2.5 py-1 text-xs select-none data-[state=delayed-open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in] origin-(--reka-tooltip-content-transform-origin) pointer-events-auto",arrow:"fill-default",text:"truncate",kbds:"hidden lg:inline-flex items-center shrink-0 gap-0.5 not-first-of-type:before:content-['·'] not-first-of-type:before:me-0.5",kbdsSize:"sm"}},Me={__name:"UTooltip",props:{text:{type:String,required:!1},kbds:{type:Array,required:!1},content:{type:Object,required:!1},arrow:{type:[Boolean,Object],required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},reference:{type:null,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1},defaultOpen:{type:Boolean,required:!1},open:{type:Boolean,required:!1},delayDuration:{type:Number,required:!1},disableHoverableContent:{type:Boolean,required:!1},disableClosingTrigger:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},ignoreNonKeyboardFocus:{type:Boolean,required:!1}},emits:["update:open"],setup(l,{emit:u}){const e=l,d=u,a=I(),c=ie(),f=j(ue(e,"defaultOpen","open","delayDuration","disableHoverableContent","disableClosingTrigger","ignoreNonKeyboardFocus"),d),p=de(x(()=>e.portal)),y=x(()=>pe(e.content,{side:"bottom",sideOffset:8,collisionPadding:8})),m=x(()=>e.arrow),r=v(()=>$({extend:$(Re),...c.ui?.tooltip||{}})({side:y.value.side}));return(o,s)=>(n(),g(t(Pe),_(t(f),{disabled:!(l.text||l.kbds?.length||a.content)||e.disabled}),{default:i(({open:h})=>[a.default||l.reference?(n(),g(t(Le),_({key:0},o.$attrs,{"as-child":"",reference:l.reference,class:e.class}),{default:i(()=>[q(o.$slots,"default",{open:h})]),_:2},1040,["reference","class"])):O("",!0),B(t(xe),L(R(t(p))),{default:i(()=>[B(t(De),_(y.value,{"data-slot":"content",class:r.value.content({class:[!a.default&&e.class,e.ui?.content]})}),{default:i(()=>[q(o.$slots,"content",{ui:r.value},()=>[l.text?(n(),E("span",{key:0,"data-slot":"text",class:H(r.value.text({class:e.ui?.text}))},M(l.text),3)):O("",!0),l.kbds?.length?(n(),E("span",{key:1,"data-slot":"kbds",class:H(r.value.kbds({class:e.ui?.kbds}))},[(n(!0),E(fe,null,ce(l.kbds,(C,T)=>(n(),g(qe,_({key:T,size:e.ui?.kbdsSize||r.value.kbdsSize()},{ref_for:!0},typeof C=="string"?{value:C}:C),null,16,["size"]))),128))],2)):O("",!0)]),l.arrow?(n(),g(t(Ce),_({key:0},m.value,{"data-slot":"arrow",class:r.value.arrow({class:e.ui?.arrow})}),null,16,["class"])):O("",!0)]),_:3},16,["class"])]),_:3},16)]),_:3},16,["disabled"]))}};export{Me as _};
@@ -1,2 +0,0 @@
1
- import{a as Q,e as k,c as L,G as l,T as n,ab as x,a9 as w,S as M,V as B,C as c,ae as z,U as Y,aa as ce,_ as le,W as H,aj as W,ak as X,ai as ie,ag as fe,r as P,bI as ve,bJ as ge,Y as he,k as xe}from"./D6tVZcRs.js";import{_ as me}from"./C2IiXp9N.js";import{_ as ye}from"./DFZkCmLQ.js";import{c as be}from"./DQhm-UPG.js";import{_ as ke}from"./TxMdabnL.js";import{_ as _e}from"./BnMTFF5R.js";import{s as we}from"./DlPOQpH_.js";const Ce={class:"border border-default rounded-lg my-2 overflow-hidden"},$e={class:"font-mono text-xs"},Ue=Q({__name:"ToolCallBlock",props:{toolName:{},result:{},isError:{type:Boolean},pending:{type:Boolean}},setup(e){const o=e,m=k(!1),f={Read:"i-lucide-file-text",Edit:"i-lucide-pencil",Write:"i-lucide-file-plus",Bash:"i-lucide-terminal",Glob:"i-lucide-search",Grep:"i-lucide-text-search",Task:"i-lucide-git-branch",WebFetch:"i-lucide-globe",WebSearch:"i-lucide-search"},U=L(()=>f[o.toolName]||"i-lucide-wrench"),h=L(()=>o.result?o.result.length>500?o.result.slice(0,500)+"...":o.result:"");return($,a)=>{const s=le,v=_e;return n(),l("div",Ce,[x("button",{class:"flex items-center gap-2 w-full px-3 py-2 text-sm text-muted hover:bg-elevated/50 transition-colors",onClick:a[0]||(a[0]=y=>m.value=!c(m))},[e.pending?(n(),M(s,{key:0,name:"i-lucide-loader-2",class:"size-4 animate-spin text-primary"})):(n(),M(s,{key:1,name:c(U),class:"size-4"},null,8,["name"])),x("span",$e,z(e.toolName),1),e.isError?(n(),M(v,{key:2,color:"error",variant:"subtle",size:"xs"},{default:Y(()=>[...a[1]||(a[1]=[ce(" error ",-1)])]),_:1})):e.pending?(n(),M(v,{key:3,color:"warning",variant:"subtle",size:"xs"},{default:Y(()=>[...a[2]||(a[2]=[ce(" running ",-1)])]),_:1})):w("",!0),B(s,{name:c(m)?"i-lucide-chevron-up":"i-lucide-chevron-down",class:"size-4 ms-auto"},null,8,["name"])]),c(m)&&e.result?(n(),l("div",{key:0,class:H(["border-t border-default px-3 py-2 text-xs font-mono bg-elevated/25 max-h-64 overflow-auto whitespace-pre-wrap",{"text-error":e.isError}])},z(c(h)),3)):w("",!0)])}}}),pe=Object.assign(Ue,{__name:"ChatToolCallBlock"}),je=be(ke),Ie={key:0},Se={key:0,class:"flex flex-wrap gap-2 mb-2"},Te=["src","onClick"],De={key:1,class:"flex flex-wrap gap-2 mb-2"},Ee=["onClick"],Me={class:"truncate max-w-32"},Ae={key:2,class:"text-sm whitespace-pre-wrap"},ze={key:0,class:"chat-prose prose prose-sm dark:prose-invert max-w-none"},Be={key:1,class:"flex items-center gap-3 mt-2 text-xs text-dimmed"},Re={key:0},Fe={key:1},Le={class:"flex items-center justify-center"},Oe=["src"],Pe={class:"flex items-center gap-2"},Ne={class:"text-sm font-medium truncate"},qe={class:"h-[60vh] overflow-hidden rounded-lg border border-default"},We=Q({__name:"MessageBubble",props:{message:{}},setup(e){function o(i){return i.filter(p=>p.type==="text").map(p=>p.text).join(`
2
- `)}function m(i){return i.filter(p=>p.type==="image")}function f(i){return i.filter(p=>p.type==="document")}function U(i){const p=[];for(const _ of i)if(_.type==="tool_use")p.push({name:_.name,id:_.id});else if(_.type==="tool_result"){const j=p.find(I=>I.id===_.tool_use_id);j&&(j.result=_.content,j.isError=_.is_error)}return p}function h(i){return i.source.media_type==="application/pdf"?"i-lucide-file-text":"i-lucide-file-code"}const $=k(null),a=L({get:()=>$.value!==null,set:i=>{i||($.value=null)}}),s=k(null),v=L({get:()=>s.value!==null,set:i=>{i||(s.value=null)}}),y=L(()=>s.value?.source.data||""),R={md:"markdown",js:"javascript",mjs:"javascript",cjs:"javascript",jsx:"javascript",ts:"typescript",tsx:"typescript",mts:"typescript",json:"json",html:"html",htm:"html",css:"css",scss:"css",sass:"css",less:"css",vue:"vue",svelte:"html",py:"python",sql:"sql",yaml:"yaml",yml:"yaml",sh:"bash",bash:"bash",zsh:"bash",fish:"bash",go:"go",rs:"rust",dockerfile:"dockerfile",java:"java",kt:"java",c:"cpp",cpp:"cpp",h:"cpp",hpp:"cpp",cs:"cpp",xml:"xml",graphql:"plaintext",gql:"plaintext",toml:"plaintext",ini:"plaintext",csv:"plaintext",txt:"plaintext",log:"plaintext",env:"plaintext",prisma:"plaintext",proto:"plaintext"},t=L(()=>{if(!s.value?.title)return"plaintext";const i=s.value.title.split(".").pop()?.toLowerCase()||"";return R[i]||"plaintext"});function u(i){if(i.source.media_type==="application/pdf"){const p=atob(i.source.data),_=new Uint8Array(p.length);for(let S=0;S<p.length;S++)_[S]=p.charCodeAt(S);const j=new Blob([_],{type:"application/pdf"}),I=URL.createObjectURL(j);window.open(I,"_blank"),setTimeout(()=>URL.revokeObjectURL(I),1e4)}else s.value=i}const r={telegram:"i-simple-icons-telegram",discord:"i-simple-icons-discord",imessage:"i-lucide-message-circle",email:"i-lucide-mail",google:"i-simple-icons-google"};function C(i){return!i||i==="web"?null:r[i]||null}function O(i){if(!i)return"";const p=i instanceof Date?i:new Date(i),j=new Date().getTime()-p.getTime(),I=Math.floor(j/6e4),S=Math.floor(j/36e5);return I<1?"just now":I<60?`${I}m ago`:S<24?`${S}h ago`:p.toLocaleDateString(void 0,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})}return(i,p)=>{const _=le,j=me,I=pe,S=ye,ee=je;return n(),l("div",{class:H(["flex",e.message.role==="user"?"justify-end":"justify-start"])},[e.message.role==="user"&&C(e.message.source)?(n(),M(_,{key:0,name:C(e.message.source),class:"size-4 text-dimmed self-end mb-1 mr-1.5 shrink-0"},null,8,["name"])):w("",!0),x("div",{class:H(["max-w-[85%] rounded-xl px-4 py-3",e.message.role==="user"?"bg-primary/5 text-highlighted":"bg-muted"])},[e.message.role==="user"?(n(),l("div",Ie,[m(e.message.content).length?(n(),l("div",Se,[(n(!0),l(W,null,X(m(e.message.content),(b,G)=>(n(),l("img",{key:G,src:`data:${b.source.media_type};base64,${b.source.data}`,class:"max-w-48 max-h-48 rounded-lg object-contain cursor-pointer hover:opacity-80 transition-opacity",onClick:g=>$.value=b},null,8,Te))),128))])):w("",!0),f(e.message.content).length?(n(),l("div",De,[(n(!0),l(W,null,X(f(e.message.content),(b,G)=>(n(),l("button",{key:G,class:"flex items-center gap-1.5 px-2.5 py-1.5 rounded-lg bg-elevated/50 border border-default text-xs hover:bg-elevated transition-colors cursor-pointer",onClick:g=>u(b)},[B(_,{name:h(b),class:"size-3.5 text-dimmed shrink-0"},null,8,["name"]),x("span",Me,z(b.title||"Document"),1),b.source.media_type==="application/pdf"?(n(),M(_,{key:0,name:"i-lucide-external-link",class:"size-3 text-dimmed shrink-0"})):w("",!0)],8,Ee))),128))])):w("",!0),o(e.message.content)?(n(),l("div",Ae,z(o(e.message.content)),1)):w("",!0)])):(n(),l(W,{key:1},[o(e.message.content)?(n(),l("div",ze,[B(j,{value:o(e.message.content)},null,8,["value"])])):w("",!0),(n(!0),l(W,null,X(U(e.message.content),b=>(n(),M(I,{key:b.id,"tool-name":b.name,result:b.result,"is-error":b.isError},null,8,["tool-name","result","is-error"]))),128)),e.message.costUsd||e.message.durationMs?(n(),l("div",Be,[e.message.costUsd?(n(),l("span",Re,"$"+z(e.message.costUsd.toFixed(4)),1)):w("",!0),e.message.durationMs?(n(),l("span",Fe,z((e.message.durationMs/1e3).toFixed(1))+"s",1)):w("",!0)])):w("",!0)],64)),e.message.createdAt?(n(),l("div",{key:2,class:H(["mt-1 text-xs text-dimmed",e.message.role==="user"?"text-right":""])},z(O(e.message.createdAt)),3)):w("",!0)],2),B(S,{open:c(a),"onUpdate:open":p[0]||(p[0]=b=>ie(a)?a.value=b:null)},{content:Y(()=>[x("div",Le,[c($)?(n(),l("img",{key:0,src:`data:${c($).source.media_type};base64,${c($).source.data}`,class:"max-w-full max-h-[80vh] object-contain rounded-lg"},null,8,Oe)):w("",!0)])]),_:1},8,["open"]),B(S,{open:c(v),"onUpdate:open":p[1]||(p[1]=b=>ie(v)?v.value=b:null)},{header:Y(()=>[x("div",Pe,[B(_,{name:"i-lucide-file-code",class:"size-4 text-dimmed"}),x("span",Ne,z(c(s)?.title||"File"),1)])]),body:Y(()=>[x("div",qe,[c(s)?(n(),M(ee,{key:0,"model-value":c(y),language:c(t),"read-only":""},null,8,["model-value","language"])):w("",!0)])]),_:1},8,["open"])],2)}}}),wt=Object.assign(We,{__name:"ChatMessageBubble"}),Ve={class:"flex justify-start"},Je={class:"max-w-[85%] rounded-xl px-4 py-3 bg-elevated/50"},Ge={key:0,class:"chat-prose prose prose-sm dark:prose-invert max-w-none"},Ke=Q({__name:"StreamingMessage",props:{text:{},toolCalls:{}},setup(e){return(o,m)=>{const f=me,U=pe;return n(),l("div",Ve,[x("div",Je,[e.text?(n(),l("div",Ge,[B(f,{value:e.text},null,8,["value"])])):w("",!0),(n(!0),l(W,null,X(e.toolCalls,(h,$)=>(n(),M(U,{key:$,"tool-name":h.name,result:h.result,"is-error":h.isError,pending:!h.result},null,8,["tool-name","result","is-error","pending"]))),128)),m[0]||(m[0]=x("div",{class:"flex items-center gap-1.5 mt-2"},[x("span",{class:"size-2 rounded-full bg-primary animate-pulse"}),x("span",{class:"text-xs text-dimmed"},"Thinking...")],-1))])])}}}),Ct=Object.assign(Ke,{__name:"ChatStreamingMessage"}),Ye=["image/jpeg","image/png","image/gif","image/webp"],He=new Set(["application/json","application/javascript","application/typescript","application/xml","application/x-yaml","application/x-sh","application/sql","application/toml","application/x-httpd-php"]),Xe=20*1024*1024;function ne(){return typeof crypto<"u"&&crypto.randomUUID?crypto.randomUUID():Math.random().toString(36).slice(2)}function ue(e){return new Promise((o,m)=>{const f=new FileReader;f.onload=()=>{const h=f.result.split(",")[1];h?o(h):m(new Error("Failed to read file as base64"))},f.onerror=()=>m(f.error),f.readAsDataURL(e)})}function Ze(e){return new Promise((o,m)=>{const f=new FileReader;f.onload=()=>o(f.result),f.onerror=()=>m(f.error),f.readAsText(e)})}function Qe(e){return Ye.includes(e)}function et(e){return e.startsWith("text/")||He.has(e)}function tt(e){return e==="application/pdf"}function nt(){const e=k([]),o=fe();async function m(a){for(const s of Array.from(a)){if(s.size>Xe){o.add({title:"File too large",description:`${s.name} exceeds 20MB limit`,color:"error"});continue}const v=s.type||"";try{if(Qe(v)){const y=await ue(s),R=URL.createObjectURL(s);e.value.push({id:ne(),kind:"image",previewUrl:R,base64:y,mediaType:v,name:s.name})}else if(tt(v)){const y=await ue(s);e.value.push({id:ne(),kind:"document",data:y,sourceType:"base64",name:s.name})}else if(et(v)||st(s.name)){const y=await Ze(s);e.value.push({id:ne(),kind:"document",data:y,sourceType:"text",name:s.name})}else o.add({title:"Unsupported file type",description:`${s.name} (${v||"unknown type"})`,color:"error"})}catch{o.add({title:"Failed to read file",description:s.name,color:"error"})}}}function f(a){const s=e.value.findIndex(v=>v.id===a);if(s!==-1){const v=e.value[s];v.kind==="image"&&URL.revokeObjectURL(v.previewUrl),e.value.splice(s,1)}}function U(){for(const a of e.value)a.kind==="image"&&URL.revokeObjectURL(a.previewUrl);e.value=[]}function h(){return e.value.filter(a=>a.kind==="image").map(a=>({type:"image",source:{type:"base64",media_type:a.mediaType,data:a.base64}}))}function $(){return e.value.filter(a=>a.kind==="document").map(a=>({type:"document",source:a.sourceType==="base64"?{type:"base64",media_type:"application/pdf",data:a.data}:{type:"text",media_type:"text/plain",data:a.data},title:a.name}))}return{attachments:P(e),addFiles:m,removeAttachment:f,clearAttachments:U,toImageBlocks:h,toDocumentBlocks:$}}function st(e){const o=e.split(".").pop()?.toLowerCase();return o?new Set(["txt","md","js","ts","jsx","tsx","py","rb","rs","go","java","c","cpp","h","hpp","cs","swift","kt","scala","json","yaml","yml","toml","ini","cfg","conf","xml","html","htm","css","scss","sass","less","sh","bash","zsh","fish","ps1","bat","cmd","sql","graphql","gql","proto","csv","tsv","log","env","gitignore","dockerignore","vue","svelte","astro","prisma","tf","r","lua","dart"]).has(o):!1}const at={key:0,class:"absolute inset-0 bg-primary/10 border-2 border-dashed border-primary rounded-lg flex items-center justify-center z-10"},ot={key:1,class:"flex items-center gap-2 mb-2 text-xs text-dimmed"},it={key:2,class:"flex gap-2 mb-2 flex-wrap"},lt=["src","alt"],rt={class:"text-xs truncate max-w-24"},ct=["onClick"],ut={class:"flex items-start gap-2"},dt=["disabled"],mt=["accept"],pt=Q({__name:"ChatInput",props:{sessionStatus:{},connectionStatus:{}},emits:["send","interrupt"],setup(e,{emit:o}){const m=e,f=o,{attachments:U,addFiles:h,removeAttachment:$,clearAttachments:a,toImageBlocks:s,toDocumentBlocks:v}=nt(),y=k(""),R=k(null),t=k(null),u=k(!1),r=L(()=>m.sessionStatus==="streaming"),C=L(()=>m.connectionStatus==="connected"),O=L(()=>C.value&&!r.value&&(y.value.trim().length>0||U.value.length>0));function i(g){g.key==="Enter"&&!g.shiftKey&&(g.preventDefault(),p())}function p(){if(!O.value)return;const g=s(),d=v();f("send",y.value.trim(),g.length>0?g:void 0,d.length>0?d:void 0),y.value="",a(),xe(()=>{R.value&&(R.value.style.height="auto")})}function _(g){const d=g.target;d.style.height="auto",d.style.height=Math.min(d.scrollHeight,200)+"px"}function j(g){const d=Array.from(g.clipboardData?.files||[]);d.length>0&&(g.preventDefault(),h(d))}function I(g){g.preventDefault(),u.value=!0}function S(){u.value=!1}function ee(g){g.preventDefault(),u.value=!1;const d=Array.from(g.dataTransfer?.files||[]);d.length>0&&h(d)}function b(g){const d=g.target;d.files?.length&&h(d.files),d.value=""}const G=["image/jpeg","image/png","image/gif","image/webp","application/pdf",".txt",".md",".js",".ts",".jsx",".tsx",".py",".rb",".rs",".go",".java",".c",".cpp",".h",".cs",".swift",".kt",".json",".yaml",".yml",".toml",".ini",".xml",".html",".css",".scss",".sh",".sql",".graphql",".csv",".log",".vue",".svelte",".prisma",".lua",".dart"].join(",");return(g,d)=>{const re=le,te=he;return n(),l("div",{class:"border-t border-default p-4 relative",onDragover:I,onDragleave:S,onDrop:ee},[c(u)?(n(),l("div",at,[...d[3]||(d[3]=[x("span",{class:"text-sm text-primary font-medium"},"Drop files here",-1)])])):w("",!0),c(C)?w("",!0):(n(),l("div",ot,[d[4]||(d[4]=x("span",{class:"size-2 rounded-full bg-warning"},null,-1)),x("span",null,z(e.connectionStatus==="connecting"?"Connecting...":"Disconnected"),1)])),c(U).length?(n(),l("div",it,[(n(!0),l(W,null,X(c(U),T=>(n(),l("div",{key:T.id,class:H(["relative group rounded-lg overflow-hidden border border-default",T.kind==="image"?"size-16":"h-10 px-3 flex items-center gap-1.5 bg-elevated/50"])},[T.kind==="image"?(n(),l("img",{key:0,src:T.previewUrl,alt:T.name,class:"size-full object-cover"},null,8,lt)):(n(),l(W,{key:1},[B(re,{name:T.name.endsWith(".pdf")?"i-lucide-file-text":"i-lucide-file-code",class:"size-4 text-dimmed shrink-0"},null,8,["name"]),x("span",rt,z(T.name),1)],64)),x("button",{class:"absolute top-0 right-0 p-0.5 bg-error/80 rounded-bl-lg opacity-0 group-hover:opacity-100 transition-opacity",onClick:vt=>c($)(T.id)},[B(re,{name:"i-lucide-x",class:"size-3 text-white"})],8,ct)],2))),128))])):w("",!0),x("div",ut,[ve(x("textarea",{ref_key:"textareaRef",ref:R,"onUpdate:modelValue":d[0]||(d[0]=T=>ie(y)?y.value=T:null),disabled:!c(C)||c(r),placeholder:"Send a message...",rows:"1",class:"flex-1 resize-none bg-elevated/50 border border-default rounded-lg px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-primary/50 disabled:opacity-50",onKeydown:i,onInput:_,onPaste:j},null,40,dt),[[ge,c(y)]]),x("input",{ref_key:"fileInputRef",ref:t,type:"file",accept:c(G),multiple:"",class:"hidden",onChange:b},null,40,mt),B(te,{icon:"i-lucide-paperclip",variant:"ghost",color:"neutral",size:"md",disabled:!c(C)||c(r),onClick:d[1]||(d[1]=T=>c(t)?.click())},null,8,["disabled"]),c(r)?(n(),M(te,{key:0,icon:"i-lucide-square",color:"error",variant:"soft",size:"md",onClick:d[2]||(d[2]=T=>f("interrupt"))})):(n(),M(te,{key:1,icon:"i-lucide-send",color:"primary",disabled:!c(O),size:"md",onClick:p},null,8,["disabled"]))])],32)}}}),$t=Object.assign(pt,{__name:"ChatInput"});function se(){if(typeof crypto<"u"&&crypto.randomUUID)return crypto.randomUUID();const e=new Uint8Array(16);crypto.getRandomValues(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128;const o=Array.from(e,m=>m.toString(16).padStart(2,"0")).join("");return`${o.slice(0,8)}-${o.slice(8,12)}-${o.slice(12,16)}-${o.slice(16,20)}-${o.slice(20)}`}const N=k("disconnected"),q=k("idle"),F=k(null),V=k([]),K=k([]),A=k(""),E=k({}),de=k(0),ae=k(!1),D=k(null),Z=k(0),ft=5;let oe=!1,J=null;function Ut(){function e(){return`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}/_ws/chat`}function o(t){switch(t.type){case"chat:session_created":F.value=t.conversationId,y();break;case"chat:stream_start":q.value="streaming",A.value="",E.value={};break;case"chat:text_delta":A.value+=t.delta;break;case"chat:tool_start":E.value={...E.value,[t.toolUseId]:{name:t.toolName}};break;case"chat:tool_end":{const u=E.value[t.toolUseId];u&&(E.value={...E.value,[t.toolUseId]:{...u,result:t.result,isError:t.isError}});break}case"chat:stream_end":{q.value="idle",de.value=t.costUsd;const u=[];A.value&&u.push({type:"text",text:A.value});for(const[r,C]of Object.entries(E.value))u.push({type:"tool_use",id:r,name:C.name,input:{}}),C.result!==void 0&&u.push({type:"tool_result",tool_use_id:r,content:C.result,is_error:C.isError});u.length>0&&V.value.push({id:se(),conversationId:t.conversationId,role:"assistant",content:u,costUsd:t.costUsd,durationMs:t.durationMs,createdAt:new Date}),A.value="",E.value={},y();break}case"chat:error":q.value="error",console.error("[chat] Server error:",t.message);break;case"chat:interrupted":q.value="interrupted",A.value&&(V.value.push({id:se(),conversationId:t.conversationId,role:"assistant",content:[{type:"text",text:A.value}],createdAt:new Date}),A.value="",E.value={});break}}function m(){if(D.value?.readyState===WebSocket.OPEN||oe&&N.value==="connecting")return;oe=!0,N.value="connecting";const t=new WebSocket(e());D.value=t,t.onopen=()=>{N.value="connected",Z.value=0,U()},t.onmessage=u=>{try{const r=JSON.parse(u.data);if(r.type==="chat:connected"||r.type==="pong")return;o(r)}catch(r){console.error("[chat] Failed to parse message:",r)}},t.onclose=()=>{N.value="disconnected",h(),Z.value<ft&&(Z.value++,setTimeout(m,2e3*Z.value))},t.onerror=()=>{N.value="error"}}function f(){h(),D.value&&(D.value.close(),D.value=null),N.value="disconnected",oe=!1}function U(){J&&clearInterval(J),J=we(()=>{D.value?.readyState===WebSocket.OPEN&&D.value.send(JSON.stringify({type:"ping"}))},3e4)}function h(){J&&(clearInterval(J),J=null)}function $(t,u,r){if(!D.value||D.value.readyState!==WebSocket.OPEN)return;const C=[];if(u?.length)for(const O of u)C.push(O);if(r?.length)for(const O of r)C.push(O);t&&C.push({type:"text",text:t}),V.value.push({id:se(),conversationId:F.value||"",role:"user",content:C,createdAt:new Date}),D.value.send(JSON.stringify({type:"chat:send",message:t,attachments:u?.length?u:void 0,documents:r?.length?r:void 0,conversationId:F.value}))}function a(){!D.value||!F.value||D.value.send(JSON.stringify({type:"chat:interrupt",conversationId:F.value}))}function s(){F.value=null,V.value=[],q.value="idle",A.value="",E.value={}}async function v(t){ae.value=!0;try{const u=await $fetch(`/api/conversations/${t}`);F.value=t,V.value=(u.data.messages||[]).map(r=>({...r,createdAt:new Date(r.createdAt)})),q.value="idle"}catch(u){console.error("[chat] Failed to load conversation:",u)}finally{ae.value=!1}}async function y(){try{const t=await $fetch("/api/conversations");K.value=t.data}catch(t){console.error("[chat] Failed to load conversations:",t)}}async function R(t){if(!K.value.find(r=>r.id===t)?.isMain)try{await $fetch(`/api/conversations/${t}`,{method:"DELETE"}),K.value=K.value.filter(r=>r.id!==t),F.value===t&&s()}catch(r){console.error("[chat] Failed to delete conversation:",r)}}return{connectionStatus:P(N),sessionStatus:P(q),activeConversationId:P(F),messages:V,conversations:K,streamingText:P(A),streamingToolCalls:P(E),lastCostUsd:P(de),loading:P(ae),connect:m,disconnect:f,sendMessage:$,interrupt:a,startNewConversation:s,loadConversation:v,loadConversations:y,deleteConversation:R}}export{wt as _,Ct as a,$t as b,Ut as u};
@@ -1 +0,0 @@
1
- import{P as t,c as o,S as r,T as l,W as i,_ as u,am as e}from"./D6tVZcRs.js";const p={base:"size-4 shrink-0 align-sub"},d={__name:"ProseIcon",props:{name:{type:String,required:!0},class:{type:null,required:!1}},setup(s){const a=s,n=t(),c=o(()=>e({extend:e(p),...n.ui?.prose?.icon||{}}));return(m,f)=>(l(),r(u,{name:s.name,class:i(c.value({class:a.class}))},null,8,["name","class"]))}};export{d as default};
@@ -1 +0,0 @@
1
- import{P as d,c,G as o,T as n,a4 as i,W as u,am as s}from"./D6tVZcRs.js";const p={base:"[&:first-child>th:first-child]:rounded-tl-md [&:first-child>th:last-child]:rounded-tr-md [&:last-child>td:first-child]:rounded-bl-md [&:last-child>td:last-child]:rounded-br-md"},f={__name:"ProseTr",props:{class:{type:null,required:!1}},setup(t){const e=t,l=d(),a=c(()=>s({extend:s(p),...l.ui?.prose?.tr||{}}));return(r,m)=>(n(),o("tr",{class:u(a.value({class:e.class}))},[i(r.$slots,"default")],2))}};export{f as default};
@@ -1 +0,0 @@
1
- import{a as c,aR as M,aP as C,a_ as b,aQ as S,e as h,S as m,T as _,U as p,a4 as y,C as a,a3 as g,c as v,q as B,V as q,aV as $,a9 as V,bf as k,f as w,bB as z,X as L,k as F,bm as P,al as A}from"./D6tVZcRs.js";import{R as D}from"./DwSY6_2U.js";import{R as H}from"./C8AtdrMH.js";import{u as N}from"./IYCBGuRS.js";import{u as O}from"./DWZ9ieYa.js";const[T,K]=M("TabsRoot");var E=c({__name:"TabsRoot",props:{defaultValue:{type:null,required:!1},orientation:{type:String,required:!1,default:"horizontal"},dir:{type:String,required:!1},activationMode:{type:String,required:!1,default:"automatic"},modelValue:{type:null,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["update:modelValue"],setup(u,{emit:o}){const s=u,e=o,{orientation:r,unmountOnHide:n,dir:l}=C(s),t=N(l);b();const i=S(s,"modelValue",e,{defaultValue:s.defaultValue,passive:s.modelValue===void 0}),d=h();return K({modelValue:i,changeModelValue:f=>{i.value=f},orientation:r,dir:t,unmountOnHide:n,activationMode:s.activationMode,baseId:O(void 0,"reka-tabs"),tabsList:d}),(f,W)=>(_(),m(a(g),{dir:a(t),"data-orientation":a(r),"as-child":f.asChild,as:f.as},{default:p(()=>[y(f.$slots,"default",{modelValue:a(i)})]),_:3},8,["dir","data-orientation","as-child","as"]))}}),ee=E;function I(u,o){return`${u}-trigger-${o}`}function R(u,o){return`${u}-content-${o}`}var j=c({__name:"TabsContent",props:{value:{type:[String,Number],required:!0},forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(u){const o=u,{forwardRef:s}=b(),e=T(),r=v(()=>I(e.baseId,o.value)),n=v(()=>R(e.baseId,o.value)),l=v(()=>o.value===e.modelValue.value),t=h(l.value);return B(()=>{requestAnimationFrame(()=>{t.value=!1})}),(i,d)=>(_(),m(a(k),{present:i.forceMount||l.value,"force-mount":""},{default:p(({present:f})=>[q(a(g),{id:n.value,ref:a(s),"as-child":i.asChild,as:i.as,role:"tabpanel","data-state":l.value?"active":"inactive","data-orientation":a(e).orientation.value,"aria-labelledby":r.value,hidden:!f,tabindex:"0",style:$({animationDuration:t.value?"0s":void 0})},{default:p(()=>[!a(e).unmountOnHide.value||f?y(i.$slots,"default",{key:0}):V("v-if",!0)]),_:2},1032,["id","as-child","as","data-state","data-orientation","aria-labelledby","hidden","style"])]),_:3},8,["present"]))}}),ae=j,G=c({__name:"TabsIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(u){const o=u,s=T();b();const e=h(),r=h({size:null,position:null});w(()=>[s.modelValue.value,s?.dir.value],async()=>{await F(),n()},{immediate:!0}),z([s.tabsList,e],n);function n(){e.value=s.tabsList.value?.querySelector('[role="tab"][data-state="active"]'),e.value&&(s.orientation.value==="horizontal"?r.value={size:e.value.offsetWidth,position:e.value.offsetLeft}:r.value={size:e.value.offsetHeight,position:e.value.offsetTop})}return(l,t)=>typeof r.value.size=="number"?(_(),m(a(g),L({key:0},o,{style:{"--reka-tabs-indicator-size":`${r.value.size}px`,"--reka-tabs-indicator-position":`${r.value.position}px`}}),{default:p(()=>[y(l.$slots,"default")]),_:3},16,["style"])):V("v-if",!0)}}),te=G,Q=c({__name:"TabsList",props:{loop:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(u){const o=u,{loop:s}=C(o),{forwardRef:e,currentElement:r}=b(),n=T();return n.tabsList=r,(l,t)=>(_(),m(a(D),{"as-child":"",orientation:a(n).orientation.value,dir:a(n).dir.value,loop:a(s)},{default:p(()=>[q(a(g),{ref:a(e),role:"tablist","as-child":l.asChild,as:l.as,"aria-orientation":a(n).orientation.value},{default:p(()=>[y(l.$slots,"default")]),_:3},8,["as-child","as","aria-orientation"])]),_:3},8,["orientation","dir","loop"]))}}),oe=Q,U=c({__name:"TabsTrigger",props:{value:{type:[String,Number],required:!0},disabled:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(u){const o=u,{forwardRef:s}=b(),e=T(),r=v(()=>I(e.baseId,o.value)),n=v(()=>R(e.baseId,o.value)),l=v(()=>o.value===e.modelValue.value);return(t,i)=>(_(),m(a(H),{"as-child":"",focusable:!t.disabled,active:l.value},{default:p(()=>[q(a(g),{id:r.value,ref:a(s),role:"tab",type:t.as==="button"?"button":void 0,as:t.as,"as-child":t.asChild,"aria-selected":l.value?"true":"false","aria-controls":n.value,"data-state":l.value?"active":"inactive",disabled:t.disabled,"data-disabled":t.disabled?"":void 0,"data-orientation":a(e).orientation.value,onMousedown:i[0]||(i[0]=A(d=>{!t.disabled&&d.ctrlKey===!1?a(e).changeModelValue(t.value):d.preventDefault()},["left"])),onKeydown:i[1]||(i[1]=P(d=>a(e).changeModelValue(t.value),["enter","space"])),onFocus:i[2]||(i[2]=()=>{const d=a(e).activationMode!=="manual";!l.value&&!t.disabled&&d&&a(e).changeModelValue(t.value)})},{default:p(()=>[y(t.$slots,"default")]),_:3},8,["id","type","as","as-child","aria-selected","aria-controls","data-state","disabled","data-disabled","data-orientation"])]),_:3},8,["focusable","active"]))}}),se=U;export{te as T,oe as a,ee as b,se as c,ae as d};
@@ -1 +0,0 @@
1
- import{c as s,aQ as R,a6 as I,a as m,aR as x,aP as w,a_ as A,S as g,T as _,U as y,a4 as b,C as o,a3 as k,bm as O}from"./D6tVZcRs.js";import{b as E,a as M,C as T}from"./Djog1f_e.js";import{u as D}from"./DWZ9ieYa.js";import{u as H}from"./IYCBGuRS.js";import{i as K}from"./C6OSRpRd.js";import{u as P}from"./C6Y-ieo6.js";function $({type:t,defaultValue:l,modelValue:a}){const e=a||l;return a!==void 0||l!==void 0?Array.isArray(e)?"multiple":"single":t??"single"}function j({type:t,defaultValue:l,modelValue:a}){return t||$({type:t,defaultValue:l,modelValue:a})}function F({type:t,defaultValue:l}){return l!==void 0?l:t==="single"?void 0:[]}function N(t,l){const a=s(()=>j(t)),e=R(t,"modelValue",l,{defaultValue:F(t),passive:t.modelValue===void 0,deep:!0});function n(i){if(a.value==="single")e.value=I(i,e.value)?void 0:i;else{const d=Array.isArray(e.value)?[...e.value||[]]:[e.value].filter(Boolean);if(K(d,i)){const u=d.findIndex(p=>I(p,i));d.splice(u,1)}else d.push(i);e.value=d}}const r=s(()=>a.value==="single");return{modelValue:e,changeModelValue:n,isSingle:r}}const[q,Q]=x("AccordionRoot");var U=m({__name:"AccordionRoot",props:{collapsible:{type:Boolean,required:!1,default:!1},disabled:{type:Boolean,required:!1,default:!1},dir:{type:String,required:!1},orientation:{type:String,required:!1,default:"vertical"},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},type:{type:String,required:!1},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1}},emits:["update:modelValue"],setup(t,{emit:l}){const a=t,e=l,{dir:n,disabled:r,unmountOnHide:i}=w(a),d=H(n),{modelValue:u,changeModelValue:p,isSingle:h}=N(a,e),{forwardRef:c,currentElement:f}=A();return Q({disabled:r,direction:d,orientation:a.orientation,parentElement:f,isSingle:h,collapsible:a.collapsible,modelValue:u,changeModelValue:p,unmountOnHide:i}),(v,B)=>(_(),g(o(k),{ref:o(c),"as-child":v.asChild,as:v.as},{default:y(()=>[b(v.$slots,"default",{modelValue:o(u)})]),_:3},8,["as-child","as"]))}}),te=U,C=(function(t){return t.Open="open",t.Closed="closed",t})(C||{});const[V,z]=x("AccordionItem");var G=m({__name:"AccordionItem",props:{disabled:{type:Boolean,required:!1},value:{type:String,required:!0},unmountOnHide:{type:Boolean,required:!1,default:void 0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(t,{expose:l}){const a=t,e=q(),n=s(()=>e.isSingle.value?a.value===e.modelValue.value:Array.isArray(e.modelValue.value)&&e.modelValue.value.includes(a.value)),r=s(()=>e.disabled.value||a.disabled),i=s(()=>r.value?"":void 0),d=s(()=>n.value?C.Open:C.Closed);l({open:n,dataDisabled:i});const{currentRef:u,currentElement:p}=A();z({open:n,dataState:d,disabled:r,dataDisabled:i,triggerId:"",currentRef:u,currentElement:p,value:s(()=>a.value)});function h(c){const f=c.target;if(Array.from(e.parentElement.value?.querySelectorAll("[data-reka-collection-item]")??[]).findIndex(S=>S===f)===-1)return null;P(c,f,e.parentElement.value,{arrowKeyOptions:e.orientation,dir:e.direction.value,focus:!0})}return(c,f)=>(_(),g(o(E),{"data-orientation":o(e).orientation,"data-disabled":i.value,"data-state":d.value,disabled:r.value,open:n.value,as:a.as,"as-child":a.asChild,"unmount-on-hide":a.unmountOnHide??o(e).unmountOnHide.value,onKeydown:O(h,["up","down","left","right","home","end"])},{default:y(()=>[b(c.$slots,"default",{open:n.value})]),_:3},8,["data-orientation","data-disabled","data-state","disabled","open","as","as-child","unmount-on-hide"]))}}),oe=G,J=m({__name:"AccordionContent",props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(t){const l=t,a=q(),e=V();return A(),(n,r)=>(_(),g(o(M),{role:"region","as-child":l.asChild,as:n.as,"force-mount":l.forceMount,"aria-labelledby":o(e).triggerId,"data-state":o(e).dataState.value,"data-disabled":o(e).dataDisabled.value,"data-orientation":o(a).orientation,style:{"--reka-accordion-content-width":"var(--reka-collapsible-content-width)","--reka-accordion-content-height":"var(--reka-collapsible-content-height)"},onContentFound:r[0]||(r[0]=i=>o(a).changeModelValue(o(e).value.value))},{default:y(()=>[b(n.$slots,"default")]),_:3},8,["as-child","as","force-mount","aria-labelledby","data-state","data-disabled","data-orientation"]))}}),le=J,L=m({__name:"AccordionTrigger",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(t){const l=t,a=q(),e=V();e.triggerId||=D(void 0,"reka-accordion-trigger");function n(){const r=a.isSingle.value&&e.open.value&&!a.collapsible;e.disabled.value||r||a.changeModelValue(e.value.value)}return(r,i)=>(_(),g(o(T),{id:o(e).triggerId,ref:o(e).currentRef,"data-reka-collection-item":"",as:l.as,"as-child":l.asChild,"aria-disabled":o(e).disabled.value||void 0,"aria-expanded":o(e).open.value||!1,"data-disabled":o(e).dataDisabled.value,"data-orientation":o(a).orientation,"data-state":o(e).dataState.value,disabled:o(e).disabled.value,onClick:n},{default:y(()=>[b(r.$slots,"default")]),_:3},8,["id","as","as-child","aria-disabled","aria-expanded","data-disabled","data-orientation","data-state","disabled"]))}}),ne=L;export{oe as A,V as a,ne as b,le as c,te as d,q as i};
@@ -1 +0,0 @@
1
- import{P as r,c,G as l,T as p,a4 as u,W as m,am as s}from"./D6tVZcRs.js";const i={base:""},g={__name:"ProseStrong",props:{class:{type:null,required:!1}},setup(e){const a=e,o=r(),t=c(()=>s({extend:s(i),...o.ui?.prose?.strong||{}}));return(n,f)=>(p(),l("strong",{class:m(t.value({class:a.class}))},[u(n.$slots,"default")],2))}};export{g as default};
@@ -1 +0,0 @@
1
- import{N as y,O as q,P as g,Q as m,R as k,c as v,S as B,T as C,U as _,V as u,_ as d,C as e,W as c,X as h,Y as b}from"./D6tVZcRs.js";const w=Object.assign({inheritAttrs:!1},{__name:"UColorModeButton",props:{color:{type:null,required:!1,default:"neutral"},variant:{type:null,required:!1,default:"ghost"},label:{type:String,required:!1},activeColor:{type:null,required:!1},activeVariant:{type:null,required:!1},size:{type:null,required:!1},square:{type:Boolean,required:!1},block:{type:Boolean,required:!1},loadingAuto:{type:Boolean,required:!1},onClick:{type:[Function,Array],required:!1},class:{type:null,required:!1},ui:{type:null,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1},as:{type:null,required:!1},type:{type:null,required:!1},disabled:{type:Boolean,required:!1},exactActiveClass:{type:String,required:!1},viewTransition:{type:Boolean,required:!1}},setup(p){const a=p,{t:n}=y(),i=q(),o=g(),f=m(k(a,"icon")),l=v({get(){return i.value==="dark"},set(r){i.preference=r?"dark":"light"}});return(r,t)=>(C(),B(b,h({...e(f),"aria-label":l.value?e(n)("colorMode.switchToLight"):e(n)("colorMode.switchToDark"),...r.$attrs},{onClick:t[0]||(t[0]=s=>l.value=!l.value)}),{leading:_(({ui:s})=>[u(d,{class:c(s.leadingIcon({class:[a.ui?.leadingIcon,"hidden dark:inline-block"]})),name:e(o).ui.icons.dark},null,8,["class","name"]),u(d,{class:c(s.leadingIcon({class:[a.ui?.leadingIcon,"dark:hidden"]})),name:e(o).ui.icons.light},null,8,["class","name"])]),_:1},16))}});export{w as _};
@@ -1 +0,0 @@
1
- import{P as l,c as n,G as c,T as p,a4 as d,W as u,am as e}from"./D6tVZcRs.js";const m={base:"py-3 px-4 font-semibold text-sm text-left border-e border-b first:border-s border-t border-muted"},b={__name:"ProseTh",props:{class:{type:null,required:!1}},setup(s){const t=s,o=l(),r=n(()=>e({extend:e(m),...o.ui?.prose?.th||{}}));return(a,f)=>(p(),c("th",{class:u(r.value({class:t.class}))},[d(a.$slots,"default")],2))}};export{b as default};
@@ -1 +0,0 @@
1
- import{P as c,c as n,G as l,T as p,a4 as m,W as u,am as s}from"./D6tVZcRs.js";const i={base:""},_={__name:"ProseEm",props:{class:{type:String,required:!1}},setup(e){const a=e,t=c(),o=n(()=>s({extend:s(i),...t.ui?.prose?.em||{}}));return(r,f)=>(p(),l("em",{class:u(o.value({class:a.class}))},[m(r.$slots,"default")],2))}};export{_ as default};
@@ -1 +0,0 @@
1
- import{P as n,c,am as r,S as f,T as d,U as p,a4 as t,ab as i,W as l,C as m,a3 as h}from"./D6tVZcRs.js";const g={slots:{root:"shrink-0 flex items-center justify-between border-b border-default px-4 sm:px-6 gap-1.5 overflow-x-auto min-h-[49px]",left:"flex items-center gap-1.5",right:"flex items-center gap-1.5"}},x={__name:"UDashboardToolbar",props:{as:{type:null,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1}},setup(o){const s=o,u=n(),e=c(()=>r({extend:r(g),...u.ui?.dashboardToolbar||{}})());return(a,b)=>(d(),f(m(h),{as:o.as,"data-slot":"root",class:l(e.value.root({class:[s.ui?.root,s.class]}))},{default:p(()=>[t(a.$slots,"default",{},()=>[i("div",{"data-slot":"left",class:l(e.value.left({class:[s.ui?.left]}))},[t(a.$slots,"left")],2),i("div",{"data-slot":"right",class:l(e.value.right({class:[s.ui?.right]}))},[t(a.$slots,"right")],2)])]),_:3},8,["as","class"]))}};export{x as _};
@@ -1 +0,0 @@
1
- import{a as u,aR as v,aQ as m,e as d,aP as y,a4 as p,C as t,S as f,T as c,U as _,aE as D,aF as C,b5 as q,a_ as R,q as B,X as h,a3 as x}from"./D6tVZcRs.js";import{u as P}from"./DWZ9ieYa.js";const[T,b]=v("DialogRoot");var E=u({inheritAttrs:!1,__name:"DialogRoot",props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1,default:!1},modal:{type:Boolean,required:!1,default:!0}},emits:["update:open"],setup(o,{emit:r}){const e=o,a=m(e,"open",r,{defaultValue:e.defaultOpen,passive:e.open===void 0}),l=d(),i=d(),{modal:g}=y(e);return b({open:a,modal:g,openModal:()=>{a.value=!0},onOpenChange:s=>{a.value=s},onOpenToggle:()=>{a.value=!a.value},contentId:"",titleId:"",descriptionId:"",triggerElement:l,contentElement:i}),(s,O)=>p(s.$slots,"default",{open:t(a),close:()=>a.value=!1})}}),$=E,I=u({__name:"DialogPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(o){const r=o;return(e,n)=>(c(),f(t(q),D(C(r)),{default:_(()=>[p(e.$slots,"default")]),_:3},16))}}),F=I,k=u({__name:"DialogTrigger",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(o){const r=o,e=T(),{forwardRef:n,currentElement:a}=R();return e.contentId||=P(void 0,"reka-dialog-content"),B(()=>{e.triggerElement.value=a.value}),(l,i)=>(c(),f(t(x),h(r,{ref:t(n),type:l.as==="button"?"button":void 0,"aria-haspopup":"dialog","aria-expanded":t(e).open.value||!1,"aria-controls":t(e).open.value?t(e).contentId:void 0,"data-state":t(e).open.value?"open":"closed",onClick:t(e).onOpenToggle}),{default:_(()=>[p(l.$slots,"default")]),_:3},16,["type","aria-expanded","aria-controls","data-state","onClick"]))}}),S=k;export{S as D,F as a,$ as b,T as i};
@@ -1 +0,0 @@
1
- import{P as t,c,G as l,T as n,W as p,am as s}from"./D6tVZcRs.js";const u={base:"border-t border-default my-12"},f={__name:"ProseHr",props:{class:{type:null,required:!1}},setup(e){const a=e,r=t(),o=c(()=>s({extend:s(u),...r.ui?.prose?.hr||{}}));return(m,i)=>(n(),l("hr",{class:p(o.value({class:a.class}))},null,2))}};export{f as default};
@@ -1 +0,0 @@
1
- import{P as f,ac as m,c as i,G as n,T as o,a4 as c,W as r,am as u}from"./D6tVZcRs.js";const p={slots:{base:"text-4xl text-highlighted font-bold mb-8 scroll-mt-[calc(45px+var(--ui-header-height))] lg:scroll-mt-(--ui-header-height)",link:"inline-flex items-center gap-2"}},g=["id"],k=["href"],y={__name:"ProseH1",props:{id:{type:String,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1}},setup(e){const s=e,d=f(),{headings:t}=m().public?.mdc||{},a=i(()=>u({extend:u(p),...d.ui?.prose?.h1||{}})()),h=i(()=>s.id&&typeof t?.anchorLinks=="object"&&t.anchorLinks.h1);return(l,b)=>(o(),n("h1",{id:e.id,class:r(a.value.base({class:s.class}))},[e.id&&h.value?(o(),n("a",{key:0,href:`#${e.id}`,class:r(a.value.link({class:s.ui?.link}))},[c(l.$slots,"default")],10,k)):c(l.$slots,"default",{key:1})],10,g))}};export{y as default};
@@ -1 +0,0 @@
1
- import{ao as F,N as H,P as I,ay as L,az as U,aA as W,aB as q,c as w,am as B,S as u,T as o,U as r,V as v,a9 as n,C as t,X as $,aC as X,a4 as d,aD as Y,aa as g,ae as b,G as h,W as f,ab as G,Y as K,aE as C,aF as P,aj as M}from"./D6tVZcRs.js";import{D as J,a as Q,b as Z}from"./DB2zZev7.js";import{D as _,a as x,b as O,c as ee,d as E}from"./BNJJSRKh.js";import{c as te}from"./D12qPplu.js";const ae={slots:{overlay:"fixed inset-0",content:"bg-default divide-y divide-default flex flex-col focus:outline-none",header:"flex items-center gap-1.5 p-4 sm:px-6 min-h-16",wrapper:"",body:"flex-1 p-4 sm:p-6",footer:"flex items-center gap-1.5 p-4 sm:px-6",title:"text-highlighted font-semibold",description:"mt-1 text-muted text-sm",close:"absolute top-4 end-4"},variants:{transition:{true:{overlay:"data-[state=open]:animate-[fade-in_200ms_ease-out] data-[state=closed]:animate-[fade-out_200ms_ease-in]",content:"data-[state=open]:animate-[scale-in_200ms_ease-out] data-[state=closed]:animate-[scale-out_200ms_ease-in]"}},fullscreen:{true:{content:"inset-0"},false:{content:"w-[calc(100vw-2rem)] max-w-lg rounded-lg shadow-lg ring ring-default"}},overlay:{true:{overlay:"bg-elevated/75"}},scrollable:{true:{overlay:"overflow-y-auto",content:"relative"},false:{content:"fixed",body:"overflow-y-auto"}}},compoundVariants:[{scrollable:!0,fullscreen:!1,class:{overlay:"grid place-items-center p-4 sm:py-8"}},{scrollable:!1,fullscreen:!1,class:{content:"top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 max-h-[calc(100dvh-2rem)] sm:max-h-[calc(100dvh-4rem)] overflow-hidden"}}]},ne={__name:"UModal",props:{title:{type:String,required:!1},description:{type:String,required:!1},content:{type:Object,required:!1},overlay:{type:Boolean,required:!1,default:!0},scrollable:{type:Boolean,required:!1},transition:{type:Boolean,required:!1,default:!0},fullscreen:{type:Boolean,required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},close:{type:[Boolean,Object],required:!1,default:!0},closeIcon:{type:null,required:!1},dismissible:{type:Boolean,required:!1,default:!0},class:{type:null,required:!1},ui:{type:null,required:!1},open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1},modal:{type:Boolean,required:!1,default:!0}},emits:["after:leave","after:enter","close:prevent","update:open"],setup(a,{emit:S}){const e=a,m=S,l=F(),{t:T}=H(),k=I(),V=L(U(e,"open","defaultOpen","modal"),m),N=W(q(()=>e.portal)),R=q(()=>e.content),j=w(()=>e.dismissible?e.scrollable?{pointerDownOutside:s=>{const c=s.detail.originalEvent,p=c.target;(c.offsetX>p.clientWidth||c.offsetY>p.clientHeight)&&s.preventDefault()}}:{}:["pointerDownOutside","interactOutside","escapeKeyDown"].reduce((c,p)=>(c[p]=y=>{y.preventDefault(),m("close:prevent")},c),{})),[A,D]=te(),i=w(()=>B({extend:B(ae),...k.ui?.modal||{}})({transition:e.transition,fullscreen:e.fullscreen,overlay:e.overlay,scrollable:e.scrollable}));return(s,c)=>(o(),u(t(Z),C(P(t(V))),{default:r(({open:p,close:y})=>[v(t(A),null,{default:r(()=>[v(t(_),$({"data-slot":"content",class:i.value.content({class:[!l.default&&e.class,e.ui?.content]})},R.value,{onAfterEnter:c[0]||(c[0]=z=>m("after:enter")),onAfterLeave:c[1]||(c[1]=z=>m("after:leave"))},X(j.value)),{default:r(()=>[l.content&&(a.title||l.title||a.description||l.description)?(o(),u(t(Y),{key:0},{default:r(()=>[a.title||l.title?(o(),u(t(x),{key:0},{default:r(()=>[d(s.$slots,"title",{},()=>[g(b(a.title),1)])]),_:3})):n("",!0),a.description||l.description?(o(),u(t(O),{key:1},{default:r(()=>[d(s.$slots,"description",{},()=>[g(b(a.description),1)])]),_:3})):n("",!0)]),_:3})):n("",!0),d(s.$slots,"content",{close:y},()=>[l.header||a.title||l.title||a.description||l.description||e.close||l.close?(o(),h("div",{key:0,"data-slot":"header",class:f(i.value.header({class:e.ui?.header}))},[d(s.$slots,"header",{close:y},()=>[G("div",{"data-slot":"wrapper",class:f(i.value.wrapper({class:e.ui?.wrapper}))},[a.title||l.title?(o(),u(t(x),{key:0,"data-slot":"title",class:f(i.value.title({class:e.ui?.title}))},{default:r(()=>[d(s.$slots,"title",{},()=>[g(b(a.title),1)])]),_:3},8,["class"])):n("",!0),a.description||l.description?(o(),u(t(O),{key:1,"data-slot":"description",class:f(i.value.description({class:e.ui?.description}))},{default:r(()=>[d(s.$slots,"description",{},()=>[g(b(a.description),1)])]),_:3},8,["class"])):n("",!0)],2),d(s.$slots,"actions"),e.close||l.close?(o(),u(t(ee),{key:0,"as-child":""},{default:r(()=>[d(s.$slots,"close",{ui:i.value},()=>[e.close?(o(),u(K,$({key:0,icon:a.closeIcon||t(k).ui.icons.close,color:"neutral",variant:"ghost","aria-label":t(T)("modal.close")},typeof e.close=="object"?e.close:{},{"data-slot":"close",class:i.value.close({class:e.ui?.close})}),null,16,["icon","aria-label","class"])):n("",!0)])]),_:2},1024)):n("",!0)])],2)):n("",!0),l.body?(o(),h("div",{key:1,"data-slot":"body",class:f(i.value.body({class:e.ui?.body}))},[d(s.$slots,"body",{close:y})],2)):n("",!0),l.footer?(o(),h("div",{key:2,"data-slot":"footer",class:f(i.value.footer({class:e.ui?.footer}))},[d(s.$slots,"footer",{close:y})],2)):n("",!0)])]),_:2},1040,["class"])]),_:2},1024),l.default?(o(),u(t(J),{key:0,"as-child":"",class:f(e.class)},{default:r(()=>[d(s.$slots,"default",{open:p})]),_:2},1032,["class"])):n("",!0),v(t(Q),C(P(t(N))),{default:r(()=>[a.scrollable?(o(),u(t(E),{key:0,"data-slot":"overlay",class:f(i.value.overlay({class:e.ui?.overlay}))},{default:r(()=>[v(t(D))]),_:1},8,["class"])):(o(),h(M,{key:1},[a.overlay?(o(),u(t(E),{key:0,"data-slot":"overlay",class:f(i.value.overlay({class:e.ui?.overlay}))},null,8,["class"])):n("",!0),v(t(D))],64))]),_:1},16)]),_:3},16))}};export{ne as _};
@@ -1 +0,0 @@
1
- import{a as le,aR as ua,S as F,T as N,C as w,e as S,c as U,y as ge,U as W,a4 as H,al as da,aV as ca,G as me,ab as He,ay as ze,X as Le,ao as We,aP as va,h as fa,f as ee,q as Ue,b6 as pa,a2 as ma,k as je,P as ha,az as ya,aA as ga,aB as Oe,am as ke,a9 as M,V as Re,W as X,aE as Ee,aF as Ce,aC as wa,aD as ba,aa as ce,ae as ve,au as $a}from"./D6tVZcRs.js";import{d as Sa,D as xa,a as Ne,b as Ae}from"./BNJJSRKh.js";import{b as Da,D as Ta,a as Ba}from"./DB2zZev7.js";(function(){var e;try{if(typeof document<"u"){var t=document.createElement("style");t.nonce=(e=document.head.querySelector("meta[property=csp-nonce]"))==null?void 0:e.content,t.appendChild(document.createTextNode('[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32,.72,0,1);animation-duration:.5s;animation-timing-function:cubic-bezier(.32,.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform, 100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform, 100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform, 100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform, 100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top],[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height, 0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left],[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height, 0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(.32,.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32,.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true]):after{content:"";position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]:after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]:after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]:after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]:after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not([data-state=closed]){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:hover,[data-vaul-handle]:active{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover: hover) and (pointer: fine){[data-vaul-drawer]{-webkit-user-select:none;user-select:none}}@media (pointer: fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{0%{transform:translate3d(0,var(--initial-transform, 100%),0)}to{transform:translateZ(0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform, 100%),0)}}@keyframes slideFromTop{0%{transform:translate3d(0,calc(var(--initial-transform, 100%) * -1),0)}to{transform:translateZ(0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform, 100%) * -1),0)}}@keyframes slideFromLeft{0%{transform:translate3d(calc(var(--initial-transform, 100%) * -1),0,0)}to{transform:translateZ(0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform, 100%) * -1),0,0)}}@keyframes slideFromRight{0%{transform:translate3d(var(--initial-transform, 100%),0,0)}to{transform:translateZ(0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform, 100%),0,0)}}')),document.head.appendChild(t)}}catch(n){console.error("vite-plugin-css-injected-by-js",n)}})();const Pa=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Oa=e=>typeof e<"u";function ka(e){return JSON.parse(JSON.stringify(e))}function qe(e,t,n,s={}){var a,h,d;const{clone:c=!1,passive:$=!1,eventName:T,deep:y=!1,defaultValue:o,shouldEmit:l}=s,g=fa(),m=n||g?.emit||((a=g?.$emit)==null?void 0:a.bind(g))||((d=(h=g?.proxy)==null?void 0:h.$emit)==null?void 0:d.bind(g?.proxy));let v=T;t||(t="modelValue"),v=v||`update:${t.toString()}`;const z=r=>c?typeof c=="function"?c(r):ka(r):r,q=()=>Oa(e[t])?z(e[t]):o,p=r=>{l?l(r)&&m(v,r):m(v,r)};if($){const r=q(),u=S(r);let f=!1;return ee(()=>e[t],x=>{f||(f=!0,u.value=z(x),je(()=>f=!1))}),ee(u,x=>{!f&&(x!==e[t]||y)&&p(x)},{deep:y}),u}else return U({get(){return q()},set(r){p(r)}})}const[oe,Ra]=ua("DrawerRoot"),Me=new WeakMap;function E(e,t,n=!1){if(!e||!(e instanceof HTMLElement)||!t)return;const s={};Object.entries(t).forEach(([a,h])=>{if(a.startsWith("--")){e.style.setProperty(a,h);return}s[a]=e.style[a],e.style[a]=h}),!n&&Me.set(e,s)}function Ea(e,t){if(!e||!(e instanceof HTMLElement))return;const n=Me.get(e);n&&Object.entries(n).forEach(([s,a])=>{e.style[s]=a})}function fe(e,t){const n=window.getComputedStyle(e),s=n.transform||n.webkitTransform||n.mozTransform;let a=s.match(/^matrix3d\((.+)\)$/);return a?Number.parseFloat(a[1].split(", ")[k(t)?13:12]):(a=s.match(/^matrix\((.+)\)$/),a?Number.parseFloat(a[1].split(", ")[k(t)?5:4]):null)}function Ca(e){return 8*(Math.log(e+1)-2)}function k(e){switch(e){case"top":case"bottom":return!0;case"left":case"right":return!1;default:return e}}function ye(e,t){if(!e)return()=>{};const n=e.style.cssText;return Object.assign(e.style,t),()=>{e.style.cssText=n}}function Na(...e){return(...t)=>{for(const n of e)typeof n=="function"&&n(...t)}}const P={DURATION:.5,EASE:[.32,.72,0,1]},Ve=.4,Aa=.25,qa=100,Xe=8,pe=16,Ye=26,Ie="vaul-dragging";function Ia({activeSnapPoint:e,snapPoints:t,drawerRef:n,overlayRef:s,fadeFromIndex:a,onSnapPointChange:h,direction:d}){const c=S(typeof window<"u"?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);function $(){c.value={innerWidth:window.innerWidth,innerHeight:window.innerHeight}}Ue(()=>{typeof window<"u"&&window.addEventListener("resize",$)}),pa(()=>{typeof window<"u"&&window.removeEventListener("resize",$)});const T=U(()=>(t.value&&e.value===t.value[t.value.length-1])??null),y=U(()=>t.value&&t.value.length>0&&(a?.value||a?.value===0)&&!Number.isNaN(a?.value)&&t.value[a?.value??-1]===e.value||!t.value),o=U(()=>{var p;return((p=t.value)==null?void 0:p.findIndex(r=>r===e.value))??null}),l=U(()=>{var p;return((p=t.value)==null?void 0:p.map(r=>{const u=typeof r=="string";let f=0;if(u&&(f=Number.parseInt(r,10)),k(d.value)){const D=u?f:c.value?r*c.value.innerHeight:0;return c.value?d.value==="bottom"?c.value.innerHeight-D:-c.value.innerHeight+D:D}const x=u?f:c.value?r*c.value.innerWidth:0;return c.value?d.value==="right"?c.value.innerWidth-x:-c.value.innerWidth+x:x}))??[]}),g=U(()=>{var p;return o.value!==null?(p=l.value)==null?void 0:p[o.value]:null}),m=p=>{var r,u,f,x;const D=((r=l.value)==null?void 0:r.findIndex(L=>L===p))??null;je(()=>{var L;h(D,l.value),E((L=n.value)==null?void 0:L.$el,{transition:`transform ${P.DURATION}s cubic-bezier(${P.EASE.join(",")})`,transform:k(d.value)?`translate3d(0, ${p}px, 0)`:`translate3d(${p}px, 0, 0)`})}),l.value&&D!==l.value.length-1&&D!==a?.value?E((u=s.value)==null?void 0:u.$el,{transition:`opacity ${P.DURATION}s cubic-bezier(${P.EASE.join(",")})`,opacity:"0"}):E((f=s.value)==null?void 0:f.$el,{transition:`opacity ${P.DURATION}s cubic-bezier(${P.EASE.join(",")})`,opacity:"1"}),e.value=D!==null?((x=t.value)==null?void 0:x[D])??null:null};ee([e,l,t],()=>{var p;if(e.value){const r=((p=t.value)==null?void 0:p.findIndex(u=>u===e.value))??-1;l.value&&r!==-1&&typeof l.value[r]=="number"&&m(l.value[r])}},{immediate:!0});function v({draggedDistance:p,closeDrawer:r,velocity:u,dismissible:f}){var x,D,L;if(a.value===void 0)return;const G=d.value==="bottom"||d.value==="right"?(g.value??0)-p:(g.value??0)+p,re=o.value===a.value-1,K=o.value===0,Y=p>0;if(re&&E((x=s.value)==null?void 0:x.$el,{transition:`opacity ${P.DURATION}s cubic-bezier(${P.EASE.join(",")})`}),u>2&&!Y){f?r():m(l.value[0]);return}if(u>2&&Y&&l&&t.value){m(l.value[t.value.length-1]);return}const ae=(D=l.value)==null?void 0:D.reduce((V,b)=>typeof V!="number"||typeof b!="number"?V:Math.abs(b-G)<Math.abs(V-G)?b:V),J=k(d.value)?window.innerHeight:window.innerWidth;if(u>Ve&&Math.abs(p)<J*.4){const V=Y?1:-1;if(V>0&&T){m(l.value[(((L=t.value)==null?void 0:L.length)??0)-1]);return}if(K&&V<0&&f&&r(),o.value===null)return;m(l.value[o.value+V]);return}m(ae)}function z({draggedDistance:p}){var r;if(g.value===null)return;const u=d.value==="bottom"||d.value==="right"?g.value-p:g.value+p;(d.value==="bottom"||d.value==="right")&&u<l.value[l.value.length-1]||(d.value==="top"||d.value==="left")&&u>l.value[l.value.length-1]||E((r=n.value)==null?void 0:r.$el,{transform:k(d.value)?`translate3d(0, ${u}px, 0)`:`translate3d(${u}px, 0, 0)`})}function q(p,r){if(!t.value||typeof o.value!="number"||!l.value||a.value===void 0)return null;const u=o.value===a.value-1;if(o.value>=a.value&&r)return 0;if(u&&!r)return 1;if(!y.value&&!u)return null;const f=u?o.value+1:o.value-1,x=u?l.value[f]-l.value[f-1]:l.value[f+1]-l.value[f],D=p/Math.abs(x);return u?1-D:D}return{isLastSnapPoint:T,shouldFade:y,getPercentageDragged:q,activeSnapPointIndex:o,onRelease:v,onDrag:z,snapPointsOffset:l}}function Fe(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}let ne=null;function Fa(e){const{isOpen:t,modal:n,nested:s,hasBeenOpened:a,preventScrollRestoration:h,noBodyStyles:d}=e,c=S(typeof window<"u"?window.location.href:""),$=S(0);function T(){if(Fe()&&ne===null&&t.value&&!d.value){ne={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height};const{scrollX:o,innerHeight:l}=window;document.body.style.setProperty("position","fixed","important"),Object.assign(document.body.style,{top:`${-$.value}px`,left:`${-o}px`,right:"0px",height:"auto"}),setTimeout(()=>{requestAnimationFrame(()=>{const g=l-window.innerHeight;g&&$.value>=l&&(document.body.style.top=`-${$.value+g}px`)})},300)}}function y(){if(Fe()&&ne!==null&&!d.value){const o=-Number.parseInt(document.body.style.top,10),l=-Number.parseInt(document.body.style.left,10);Object.assign(document.body.style,ne),window.requestAnimationFrame(()=>{if(h.value&&c.value!==window.location.href){c.value=window.location.href;return}window.scrollTo(l,o)}),ne=null}}return Ue(()=>{function o(){$.value=window.scrollY}o(),window.addEventListener("scroll",o),ma(()=>{window.removeEventListener("scroll",o)})}),ee([t,a,c],()=>{s.value||!a.value||(t.value?(window.matchMedia("(display-mode: standalone)").matches||T(),n.value||setTimeout(()=>{y()},500)):y())}),{restorePositionSetting:y}}function Ha(e,t){return e&&e.value?e:t}function za(e){const{emitDrag:t,emitRelease:n,emitClose:s,emitOpenChange:a,open:h,dismissible:d,nested:c,modal:$,shouldScaleBackground:T,setBackgroundColorOnScale:y,scrollLockTimeout:o,closeThreshold:l,activeSnapPoint:g,fadeFromIndex:m,direction:v,noBodyStyles:z,handleOnly:q,preventScrollRestoration:p}=e,r=S(h.value??!1),u=S(!1),f=S(!1),x=S(!1),D=S(null),L=S(null),G=S(null),re=S(null),K=S(null),Y=S(!1),ae=S(null),J=S(0),V=S(!1);S(0);const b=S(null);S(0);const we=U(()=>{var i;return((i=b.value)==null?void 0:i.$el.getBoundingClientRect().height)||0}),I=Ha(e.snapPoints,S(void 0)),Ze=U(()=>{var i;return I&&(((i=I.value)==null?void 0:i.length)??0)>0}),_e=S(null),{activeSnapPointIndex:be,onRelease:Ke,snapPointsOffset:Je,onDrag:Qe,shouldFade:$e,getPercentageDragged:ea}=Ia({snapPoints:I,activeSnapPoint:g,drawerRef:b,fadeFromIndex:m,overlayRef:D,onSnapPointChange:aa,direction:v});function aa(i,O){I.value&&i===O.length-1&&(L.value=new Date)}Fa({isOpen:r,modal:$,nested:c,hasBeenOpened:u,noBodyStyles:z,preventScrollRestoration:p});function ie(){return(window.innerWidth-Ye)/window.innerWidth}function Se(i,O){var R;if(!i)return!1;let B=i;const C=(R=window.getSelection())==null?void 0:R.toString(),A=b.value?fe(b.value.$el,v.value):null,j=new Date;if(B.hasAttribute("data-vaul-no-drag")||B.closest("[data-vaul-no-drag]"))return!1;if(v.value==="right"||v.value==="left")return!0;if(L.value&&j.getTime()-L.value.getTime()<500)return!1;if(A!==null&&(v.value==="bottom"?A>0:A<0))return!0;if(C&&C.length>0)return!1;if(K.value&&j.getTime()-K.value.getTime()<o.value&&A===0||O)return K.value=j,!1;for(;B;){if(B.scrollHeight>B.clientHeight){if(B.scrollTop!==0)return K.value=new Date,!1;if(B.getAttribute("role")==="dialog")return!0}B=B.parentNode}return!0}function ta(i){!d.value&&!I.value||b.value&&!b.value.$el.contains(i.target)||(f.value=!0,G.value=new Date,i.target.setPointerCapture(i.pointerId),J.value=k(v.value)?i.clientY:i.clientX)}function na(i){var O,R,B,C,A,j;if(b.value&&f.value){const Q=v.value==="bottom"||v.value==="right"?1:-1,se=(J.value-(k(v.value)?i.clientY:i.clientX))*Q,ue=se>0,De=I.value&&!d.value&&!ue;if(De&&be.value===0)return;const he=Math.abs(se),Te=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");let Z=he/we.value;const Be=ea(he,ue);if(Be!==null&&(Z=Be),De&&Z>=1||!Y.value&&!Se(i.target,ue))return;if((O=b?.value)==null||O.$el.classList.add(Ie),Y.value=!0,E((R=b.value)==null?void 0:R.$el,{transition:"none"}),E((B=D.value)==null?void 0:B.$el,{transition:"none"}),I.value&&Qe({draggedDistance:se}),ue&&!I.value){const _=Ca(se),de=Math.min(_*-1,0)*Q;E((C=b.value)==null?void 0:C.$el,{transform:k(v.value)?`translate3d(0, ${de}px, 0)`:`translate3d(${de}px, 0, 0)`});return}const sa=1-Z;if(($e.value||m.value&&be.value===m.value-1)&&(t(Z),E((A=D.value)==null?void 0:A.$el,{opacity:`${sa}`,transition:"none"},!0)),Te&&D.value&&T.value){const _=Math.min(ie()+Z*(1-ie()),1),de=8-Z*8,Pe=Math.max(0,14-Z*14);E(Te,{borderRadius:`${de}px`,transform:k(v.value)?`scale(${_}) translate3d(0, ${Pe}px, 0)`:`scale(${_}) translate3d(${Pe}px, 0, 0)`,transition:"none"},!0)}if(!I.value){const _=he*Q;E((j=b.value)==null?void 0:j.$el,{transform:k(v.value)?`translate3d(0, ${_}px, 0)`:`translate3d(${_}px, 0, 0)`})}}}function xe(){var i;if(!b.value)return;const O=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]"),R=fe(b.value.$el,v.value);E(b.value.$el,{transform:"translate3d(0, 0, 0)",transition:`transform ${P.DURATION}s cubic-bezier(${P.EASE.join(",")})`}),E((i=D.value)==null?void 0:i.$el,{transition:`opacity ${P.DURATION}s cubic-bezier(${P.EASE.join(",")})`,opacity:"1"}),T.value&&R&&R>0&&r.value&&E(O,{borderRadius:`${Xe}px`,overflow:"hidden",...k(v.value)?{transform:`scale(${ie()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:"top"}:{transform:`scale(${ie()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:"left"},transitionProperty:"transform, border-radius",transitionDuration:`${P.DURATION}s`,transitionTimingFunction:`cubic-bezier(${P.EASE.join(",")})`},!0)}function te(i){b.value&&(s(),i||(r.value=!1),window.setTimeout(()=>{I.value&&(g.value=I.value[0])},P.DURATION*1e3))}ge(()=>{if(!r.value&&T.value&&Pa){const i=setTimeout(()=>{Ea(document.body)},200);return()=>clearTimeout(i)}}),ee(h,()=>{r.value=h.value,h.value||te()});function la(i){if(!f.value||!b.value)return;b.value.$el.classList.remove(Ie),Y.value=!1,f.value=!1,re.value=new Date;const O=fe(b.value.$el,v.value);if(!Se(i.target,!1)||!O||Number.isNaN(O)||G.value===null)return;const R=re.value.getTime()-G.value.getTime(),B=J.value-(k(v.value)?i.clientY:i.clientX),C=Math.abs(B)/R;if(C>.05&&(x.value=!0,window.setTimeout(()=>{x.value=!1},200)),I.value){const j=v.value==="bottom"||v.value==="right"?1:-1;Ke({draggedDistance:B*j,closeDrawer:te,velocity:C,dismissible:d.value}),n(!0);return}if(v.value==="bottom"||v.value==="right"?B>0:B<0){xe(),n(!0);return}if(C>Ve){te(),n(!1);return}const A=Math.min(b.value.$el.getBoundingClientRect().height??0,window.innerHeight);if(O>=A*l.value){te(),n(!1);return}n(!0),xe()}ee(r,i=>{i&&(L.value=new Date),a(i)},{immediate:!0});function oa(i){var O,R;const B=i?(window.innerWidth-pe)/window.innerWidth:1,C=i?-16:0;ae.value&&window.clearTimeout(ae.value),E((O=b.value)==null?void 0:O.$el,{transition:`transform ${P.DURATION}s cubic-bezier(${P.EASE.join(",")})`,transform:`scale(${B}) translate3d(0, ${C}px, 0)`}),!i&&(R=b.value)!=null&&R.$el&&(ae.value=window.setTimeout(()=>{var A,j;const Q=fe((A=b.value)==null?void 0:A.$el,v.value);E((j=b.value)==null?void 0:j.$el,{transition:"none",transform:k(v.value)?`translate3d(0, ${Q}px, 0)`:`translate3d(${Q}px, 0, 0)`})},500))}function ra(i){var O;if(i<0)return;const R=k(v.value)?window.innerHeight:window.innerWidth,B=(R-pe)/R,C=B+i*(1-B),A=-16+i*pe;E((O=b.value)==null?void 0:O.$el,{transform:k(v.value)?`scale(${C}) translate3d(0, ${A}px, 0)`:`scale(${C}) translate3d(${A}px, 0, 0)`,transition:"none"})}function ia(i){var O;const R=k(v.value)?window.innerHeight:window.innerWidth,B=i?(R-pe)/R:1,C=i?-16:0;i&&E((O=b.value)==null?void 0:O.$el,{transition:`transform ${P.DURATION}s cubic-bezier(${P.EASE.join(",")})`,transform:k(v.value)?`scale(${B}) translate3d(0, ${C}px, 0)`:`scale(${B}) translate3d(${C}px, 0, 0)`})}return{open:h,isOpen:r,modal:$,keyboardIsOpen:V,hasBeenOpened:u,drawerRef:b,drawerHeightRef:we,overlayRef:D,handleRef:_e,isDragging:f,dragStartTime:G,isAllowedToDrag:Y,snapPoints:I,activeSnapPoint:g,hasSnapPoints:Ze,pointerStart:J,dismissible:d,snapPointsOffset:Je,direction:v,shouldFade:$e,fadeFromIndex:m,shouldScaleBackground:T,setBackgroundColorOnScale:y,onPress:ta,onDrag:na,onRelease:la,closeDrawer:te,onNestedDrag:ra,onNestedRelease:ia,onNestedOpenChange:oa,emitClose:s,emitDrag:t,emitRelease:n,emitOpenChange:a,nested:c,handleOnly:q,noBodyStyles:z}}const Ge=le({__name:"DrawerRoot",props:{activeSnapPoint:{default:void 0},closeThreshold:{default:Aa},shouldScaleBackground:{type:Boolean,default:void 0},setBackgroundColorOnScale:{type:Boolean,default:!0},scrollLockTimeout:{default:qa},fixed:{type:Boolean,default:void 0},dismissible:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:void 0},nested:{type:Boolean,default:!1},direction:{default:"bottom"},noBodyStyles:{type:Boolean},handleOnly:{type:Boolean,default:!1},preventScrollRestoration:{type:Boolean},snapPoints:{default:void 0},fadeFromIndex:{default:void 0}},emits:["drag","release","close","update:open","update:activeSnapPoint","animationEnd"],setup(e,{expose:t,emit:n}){const s=e,a=n;We();const h=U(()=>s.fadeFromIndex??(s.snapPoints&&s.snapPoints.length-1)),d=qe(s,"open",a,{defaultValue:s.defaultOpen,passive:s.open===void 0}),c=qe(s,"activeSnapPoint",a,{passive:s.activeSnapPoint===void 0}),$={emitDrag:m=>a("drag",m),emitRelease:m=>a("release",m),emitClose:()=>a("close"),emitOpenChange:m=>{a("update:open",m),setTimeout(()=>{a("animationEnd",m)},P.DURATION*1e3)}},{closeDrawer:T,hasBeenOpened:y,modal:o,isOpen:l}=Ra(za({...$,...va(s),activeSnapPoint:c,fadeFromIndex:h,open:d}));function g(m){if(d.value!==void 0){$.emitOpenChange(m);return}l.value=m,m?y.value=!0:T()}return t({open:l}),(m,v)=>(N(),F(w(Da),{open:w(l),modal:w(o),"onUpdate:open":g},{default:W(()=>[H(m.$slots,"default",{open:w(l)})]),_:3},8,["open","modal"]))}}),La=le({__name:"DrawerRootNested",props:{activeSnapPoint:{},closeThreshold:{},shouldScaleBackground:{type:Boolean},setBackgroundColorOnScale:{type:Boolean},scrollLockTimeout:{},fixed:{type:Boolean},dismissible:{type:Boolean},modal:{type:Boolean},open:{type:Boolean},defaultOpen:{type:Boolean},nested:{type:Boolean},direction:{},noBodyStyles:{type:Boolean},handleOnly:{type:Boolean},preventScrollRestoration:{type:Boolean},snapPoints:{},fadeFromIndex:{}},emits:["drag","release","close","update:open","update:activeSnapPoint","animationEnd"],setup(e,{emit:t}){const n=e,s=t,{onNestedDrag:a,onNestedOpenChange:h,onNestedRelease:d}=oe();function c(){h(!1)}function $(o){a(o)}function T(o){o&&h(o),s("update:open",o)}const y=ze(n,s);return(o,l)=>(N(),F(Ge,Le(w(y),{nested:"",onClose:c,onDrag:$,onRelease:w(d),"onUpdate:open":T}),{default:W(()=>[H(o.$slots,"default")]),_:3},16,["onRelease"]))}}),Wa=le({__name:"DrawerOverlay",setup(e){const{overlayRef:t,hasSnapPoints:n,isOpen:s,shouldFade:a}=oe();return(h,d)=>(N(),F(w(Sa),{ref_key:"overlayRef",ref:t,"data-vaul-overlay":"","data-vaul-snap-points":w(s)&&w(n)?"true":"false","data-vaul-snap-points-overlay":w(s)&&w(a)?"true":"false"},null,8,["data-vaul-snap-points","data-vaul-snap-points-overlay"]))}}),Ua=()=>()=>{};function ja(){const{direction:e,isOpen:t,shouldScaleBackground:n,setBackgroundColorOnScale:s,noBodyStyles:a}=oe(),h=S(null),d=S(document.body.style.backgroundColor);function c(){return(window.innerWidth-Ye)/window.innerWidth}ge($=>{if(t.value&&n.value){h.value&&clearTimeout(h.value);const T=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");if(!T)return;Na(s.value&&!a.value?ye(document.body,{background:"black"}):Ua,ye(T,{transformOrigin:k(e.value)?"top":"left",transitionProperty:"transform, border-radius",transitionDuration:`${P.DURATION}s`,transitionTimingFunction:`cubic-bezier(${P.EASE.join(",")})`}));const y=ye(T,{borderRadius:`${Xe}px`,overflow:"hidden",...k(e.value)?{transform:`scale(${c()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${c()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});$(()=>{y(),h.value=window.setTimeout(()=>{d.value?document.body.style.background=d.value:document.body.style.removeProperty("background")},P.DURATION*1e3)})}},{flush:"pre"})}const Ma=le({__name:"DrawerContent",setup(e){const{open:t,isOpen:n,snapPointsOffset:s,hasSnapPoints:a,drawerRef:h,onPress:d,onDrag:c,onRelease:$,modal:T,emitOpenChange:y,dismissible:o,keyboardIsOpen:l,closeDrawer:g,direction:m,handleOnly:v}=oe();ja();const z=S(!1),q=U(()=>s.value&&s.value.length>0?`${s.value[0]}px`:"0");function p(f){if(!T.value||f.defaultPrevented){f.preventDefault();return}l.value&&(l.value=!1),o.value?y(!1):f.preventDefault()}function r(f){v.value||d(f)}function u(f){v.value||c(f)}return ge(()=>{a.value&&window.requestAnimationFrame(()=>{z.value=!0})}),(f,x)=>(N(),F(w(xa),{ref_key:"drawerRef",ref:h,"data-vaul-drawer":"","data-vaul-drawer-direction":w(m),"data-vaul-delayed-snap-points":z.value?"true":"false","data-vaul-snap-points":w(n)&&w(a)?"true":"false",style:ca({"--snap-point-height":q.value}),onPointerdown:r,onPointermove:u,onPointerup:w($),onPointerDownOutside:p,onOpenAutoFocus:x[0]||(x[0]=da(()=>{},["prevent"])),onEscapeKeyDown:x[1]||(x[1]=D=>{w(o)||D.preventDefault()})},{default:W(()=>[H(f.$slots,"default")]),_:3},8,["data-vaul-drawer-direction","data-vaul-delayed-snap-points","data-vaul-snap-points","style","onPointerup"]))}}),Va=["data-vaul-drawer-visible"],Xa={"data-vaul-handle-hitarea":"","aria-hidden":"true"},Ya=250,Ga=120,Za=le({__name:"DrawerHandle",props:{preventCycle:{type:Boolean,default:!1}},setup(e){const t=e,{onPress:n,onDrag:s,handleRef:a,handleOnly:h,isOpen:d,snapPoints:c,activeSnapPoint:$,isDragging:T,dismissible:y,closeDrawer:o}=oe(),l=S(null),g=S(!1);function m(){if(g.value){q();return}window.setTimeout(()=>{v()},Ga)}function v(){if(T.value||t.preventCycle||g.value){q();return}if(q(),!c.value||c.value.length===0){y.value||o();return}const u=$.value===c.value[c.value.length-1];if(u&&y.value){o();return}const f=c.value.findIndex(D=>D===$.value);if(f===-1)return;const x=u?0:f+1;$.value=c.value[x]}function z(){l.value=window.setTimeout(()=>{g.value=!0},Ya)}function q(){l.value&&window.clearTimeout(l.value),g.value=!1}function p(u){h.value&&n(u),z()}function r(u){h.value&&s(u)}return(u,f)=>(N(),me("div",{ref_key:"handleRef",ref:a,"data-vaul-drawer-visible":w(d)?"true":"false","data-vaul-handle":"","aria-hidden":"true",onClick:m,onPointercancel:q,onPointerdown:p,onPointermove:r},[He("span",Xa,[H(u.$slots,"default")])],40,Va))}}),_a={slots:{overlay:"fixed inset-0 bg-elevated/75",content:"fixed bg-default ring ring-default flex focus:outline-none",handle:["shrink-0 !bg-accented","transition-opacity"],container:"w-full flex flex-col gap-4 p-4 overflow-y-auto",header:"",title:"text-highlighted font-semibold",description:"mt-1 text-muted text-sm",body:"flex-1",footer:"flex flex-col gap-1.5"},variants:{direction:{top:{content:"mb-24 flex-col-reverse",handle:"mb-4"},right:{content:"flex-row",handle:"!ml-4"},bottom:{content:"mt-24 flex-col",handle:"mt-4"},left:{content:"flex-row-reverse",handle:"!mr-4"}},inset:{true:{content:"rounded-lg after:hidden overflow-hidden [--initial-transform:calc(100%+1.5rem)]"}},snapPoints:{true:""}},compoundVariants:[{direction:["top","bottom"],class:{content:"h-auto max-h-[96%]",handle:"!w-12 !h-1.5 mx-auto"}},{direction:["top","bottom"],snapPoints:!0,class:{content:"h-full"}},{direction:["right","left"],class:{content:"w-auto max-w-[calc(100%-2rem)]",handle:"!h-12 !w-1.5 mt-auto mb-auto"}},{direction:["right","left"],snapPoints:!0,class:{content:"w-full"}},{direction:"top",inset:!0,class:{content:"inset-x-4 top-4"}},{direction:"top",inset:!1,class:{content:"inset-x-0 top-0 rounded-b-lg"}},{direction:"bottom",inset:!0,class:{content:"inset-x-4 bottom-4"}},{direction:"bottom",inset:!1,class:{content:"inset-x-0 bottom-0 rounded-t-lg"}},{direction:"left",inset:!0,class:{content:"inset-y-4 left-4"}},{direction:"left",inset:!1,class:{content:"inset-y-0 left-0 rounded-r-lg"}},{direction:"right",inset:!0,class:{content:"inset-y-4 right-4"}},{direction:"right",inset:!1,class:{content:"inset-y-0 right-0 rounded-l-lg"}}]},et={__name:"UDrawer",props:{as:{type:null,required:!1},title:{type:String,required:!1},description:{type:String,required:!1},inset:{type:Boolean,required:!1},content:{type:Object,required:!1},overlay:{type:Boolean,required:!1,default:!0},handle:{type:Boolean,required:!1,default:!0},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},nested:{type:Boolean,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1},activeSnapPoint:{type:[Number,String,null],required:!1},closeThreshold:{type:Number,required:!1},shouldScaleBackground:{type:Boolean,required:!1},setBackgroundColorOnScale:{type:Boolean,required:!1},scrollLockTimeout:{type:Number,required:!1},fixed:{type:Boolean,required:!1},dismissible:{type:Boolean,required:!1,default:!0},modal:{type:Boolean,required:!1,default:!0},open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1},direction:{type:String,required:!1,default:"bottom"},noBodyStyles:{type:Boolean,required:!1},handleOnly:{type:Boolean,required:!1},preventScrollRestoration:{type:Boolean,required:!1},snapPoints:{type:Array,required:!1}},emits:["close:prevent","drag","release","close","update:open","update:activeSnapPoint","animationEnd"],setup(e,{emit:t}){const n=e,s=t,a=We(),h=ha(),d=ze(ya(n,"activeSnapPoint","closeThreshold","shouldScaleBackground","setBackgroundColorOnScale","scrollLockTimeout","fixed","dismissible","modal","open","defaultOpen","nested","direction","noBodyStyles","handleOnly","preventScrollRestoration","snapPoints"),s),c=ga(Oe(()=>n.portal)),$=Oe(()=>n.content),T=U(()=>n.dismissible?{}:["pointerDownOutside","interactOutside","escapeKeyDown"].reduce((l,g)=>(l[g]=m=>{m.preventDefault(),s("close:prevent")},l),{})),y=U(()=>ke({extend:ke(_a),...h.ui?.drawer||{}})({direction:n.direction,inset:n.inset,snapPoints:n.snapPoints&&n.snapPoints.length>0}));return(o,l)=>(N(),F($a(e.nested?w(La):w(Ge)),Ee(Ce(w(d))),{default:W(()=>[a.default?(N(),F(w(Ta),{key:0,"as-child":"",class:X(n.class)},{default:W(()=>[H(o.$slots,"default")]),_:3},8,["class"])):M("",!0),Re(w(Ba),Ee(Ce(w(c))),{default:W(()=>[e.overlay?(N(),F(w(Wa),{key:0,"data-slot":"overlay",class:X(y.value.overlay({class:n.ui?.overlay}))},null,8,["class"])):M("",!0),Re(w(Ma),Le({"data-slot":"content",class:y.value.content({class:[!a.default&&n.class,n.ui?.content]})},$.value,wa(T.value)),{default:W(()=>[e.handle?(N(),F(w(Za),{key:0,"data-slot":"handle",class:X(y.value.handle({class:n.ui?.handle}))},null,8,["class"])):M("",!0),a.content&&(e.title||a.title||e.description||a.description)?(N(),F(w(ba),{key:1},{default:W(()=>[e.title||a.title?(N(),F(w(Ne),{key:0},{default:W(()=>[H(o.$slots,"title",{},()=>[ce(ve(e.title),1)])]),_:3})):M("",!0),e.description||a.description?(N(),F(w(Ae),{key:1},{default:W(()=>[H(o.$slots,"description",{},()=>[ce(ve(e.description),1)])]),_:3})):M("",!0)]),_:3})):M("",!0),H(o.$slots,"content",{},()=>[He("div",{"data-slot":"container",class:X(y.value.container({class:n.ui?.container}))},[a.header||e.title||a.title||e.description||a.description?(N(),me("div",{key:0,"data-slot":"header",class:X(y.value.header({class:n.ui?.header}))},[H(o.$slots,"header",{},()=>[e.title||a.title?(N(),F(w(Ne),{key:0,"data-slot":"title",class:X(y.value.title({class:n.ui?.title}))},{default:W(()=>[H(o.$slots,"title",{},()=>[ce(ve(e.title),1)])]),_:3},8,["class"])):M("",!0),e.description||a.description?(N(),F(w(Ae),{key:1,"data-slot":"description",class:X(y.value.description({class:n.ui?.description}))},{default:W(()=>[H(o.$slots,"description",{},()=>[ce(ve(e.description),1)])]),_:3},8,["class"])):M("",!0)])],2)):M("",!0),a.body?(N(),me("div",{key:1,"data-slot":"body",class:X(y.value.body({class:n.ui?.body}))},[H(o.$slots,"body")],2)):M("",!0),a.footer?(N(),me("div",{key:2,"data-slot":"footer",class:X(y.value.footer({class:n.ui?.footer}))},[H(o.$slots,"footer")],2)):M("",!0)],2)])]),_:3},16,["class"])]),_:3},16)]),_:3},16))}};export{et as _};
@@ -1 +0,0 @@
1
- import{_ as V,a as R}from"./CfCXpVn5.js";import{_ as C}from"./OlF0QnKF.js";import{a as k,G as l,T as n,a9 as w,aj as b,ak as $,ab as t,V as s,_ as U,ae as c,S as h,U as d,af as S,aa as y,aV as B,Y as D,e as N,q,C as f}from"./D6tVZcRs.js";import{_ as I}from"./BnMTFF5R.js";import{_ as z}from"./DXJ9PxCv.js";import{f as O}from"./CWePHsZr.js";import{u as F}from"./BghuwIGa.js";import"./ZvG7a1W3.js";import"./D12qPplu.js";import"./C7m9zGMG.js";import"./C8ut0f5H.js";const M={class:"grid gap-4 grid-cols-2 sm:grid-cols-3 lg:grid-cols-5"},A={class:"p-4 rounded-lg bg-elevated border border-default"},L={class:"flex items-center gap-2 text-muted text-sm mb-1"},P={class:"text-2xl font-semibold"},H={class:"p-4 rounded-lg bg-elevated border border-default"},K={class:"flex items-center gap-2 text-muted text-sm mb-1"},W={class:"text-2xl font-semibold"},E={class:"p-4 rounded-lg bg-elevated border border-default"},G={class:"flex items-center gap-2 text-muted text-sm mb-1"},Y={class:"text-2xl font-semibold"},J={class:"p-4 rounded-lg bg-elevated border border-default"},Q={class:"flex items-center gap-2 text-muted text-sm mb-1"},X={class:"text-2xl font-semibold"},Z={class:"p-4 rounded-lg bg-elevated border border-default"},tt={class:"flex items-center gap-2 text-muted text-sm mb-1"},et={class:"text-2xl font-semibold"},st=k({__name:"StatCards",props:{overview:{},loading:{type:Boolean}},setup(a){function x(e){return e<.01&&e>0?"<$0.01":`$${e.toFixed(2)}`}function u(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}K`:String(e)}return(e,o)=>{const p=C,i=U;return n(),l("div",M,[a.loading?(n(),l(b,{key:0},$(5,g=>t("div",{key:g,class:"p-4 rounded-lg bg-elevated border border-default"},[s(p,{class:"h-4 w-16 mb-2"}),s(p,{class:"h-8 w-12"})])),64)):a.overview?(n(),l(b,{key:1},[t("div",A,[t("div",L,[s(i,{name:"i-lucide-circle-dot",class:"size-4"}),o[0]||(o[0]=t("span",null,"Todo",-1))]),t("p",P,c(a.overview.tasks.todoCount),1)]),t("div",H,[t("div",K,[s(i,{name:"i-lucide-loader",class:"size-4"}),o[1]||(o[1]=t("span",null,"In Progress",-1))]),t("p",W,c(a.overview.tasks.inProgressCount),1)]),t("div",E,[t("div",G,[s(i,{name:"i-lucide-dollar-sign",class:"size-4"}),o[2]||(o[2]=t("span",null,"7d Cost",-1))]),t("p",Y,c(x(a.overview.usage.totalCost7d)),1)]),t("div",J,[t("div",Q,[s(i,{name:"i-lucide-zap",class:"size-4"}),o[3]||(o[3]=t("span",null,"7d API Calls",-1))]),t("p",X,c(a.overview.usage.totalCalls7d),1)]),t("div",Z,[t("div",tt,[s(i,{name:"i-lucide-text-cursor-input",class:"size-4"}),o[4]||(o[4]=t("span",null,"7d Tokens",-1))]),t("p",et,c(u(a.overview.usage.totalInputTokens7d+a.overview.usage.totalOutputTokens7d)),1)])],64)):w("",!0)])}}}),ot=Object.assign(st,{__name:"DashboardStatCards"}),nt={class:"flex items-center justify-between"},at={class:"flex items-center gap-2"},it={key:0,class:"space-y-3"},lt={key:1,class:"text-center py-4 text-muted text-sm"},rt={key:2,class:"space-y-2"},dt={class:"text-sm truncate flex-1"},ct={key:1,class:"text-xs text-muted whitespace-nowrap"},ut=k({__name:"UpcomingTasks",props:{tasks:{},loading:{type:Boolean}},setup(a){const x={1:"Low",2:"Med",3:"High"},u={1:"neutral",2:"warning",3:"error"},e={todo:"neutral",in_progress:"primary",blocked:"error"};function o(p){if(!p)return"";const i=new Date(p),g=new Date,v=i.getTime()-g.getTime(),r=Math.ceil(v/(1e3*60*60*24));return r<0?`${Math.abs(r)}d overdue`:r===0?"Today":r===1?"Tomorrow":`${r}d`}return(p,i)=>{const g=U,v=D,r=C,_=I,T=S,j=z;return n(),h(j,null,{header:d(()=>[t("div",nt,[t("div",at,[s(g,{name:"i-lucide-check-square",class:"size-4 text-primary"}),i[0]||(i[0]=t("span",{class:"text-sm font-medium"},"Upcoming Tasks",-1))]),s(v,{to:"/tasks",variant:"ghost",size:"xs","trailing-icon":"i-lucide-arrow-right"},{default:d(()=>[...i[1]||(i[1]=[y(" View all ",-1)])]),_:1})])]),default:d(()=>[a.loading?(n(),l("div",it,[(n(),l(b,null,$(3,m=>t("div",{key:m,class:"flex items-center gap-3"},[s(r,{class:"h-5 w-5 rounded"}),s(r,{class:"h-4 flex-1"})])),64))])):a.tasks.length===0?(n(),l("div",lt," No upcoming tasks ")):(n(),l("div",rt,[(n(!0),l(b,null,$(a.tasks,m=>(n(),h(T,{key:m.id,to:{path:"/tasks",query:{selected:m.id}},class:"flex items-center gap-3 p-2 -mx-2 rounded-md hover:bg-elevated transition-colors"},{default:d(()=>[s(_,{color:e[m.status]||"neutral",variant:"subtle",size:"xs"},{default:d(()=>[y(c(m.status==="in_progress"?"WIP":m.status),1)]),_:2},1032,["color"]),t("span",dt,c(m.title),1),m.projectName?(n(),h(_,{key:0,variant:"subtle",color:"neutral",size:"xs"},{default:d(()=>[t("span",{class:"inline-block size-2 rounded-full mr-1",style:B({background:m.projectColor||"var(--ui-primary)"})},null,4),y(" "+c(m.projectName),1)]),_:2},1024)):w("",!0),s(_,{color:u[m.priority]||"neutral",variant:"soft",size:"xs"},{default:d(()=>[y(c(x[m.priority]||"Med"),1)]),_:2},1032,["color"]),m.dueDate?(n(),l("span",ct,c(o(m.dueDate)),1)):w("",!0)]),_:2},1032,["to"]))),128))]))]),_:1})}}}),mt=Object.assign(ut,{__name:"DashboardUpcomingTasks"}),_t={class:"flex items-center justify-between"},pt={class:"flex items-center gap-2"},gt={key:0,class:"space-y-3"},xt={class:"flex-1"},ft={key:1,class:"text-center py-4 text-muted text-sm"},vt={key:2,class:"space-y-2"},ht={class:"flex items-center justify-center size-8 rounded-full bg-primary/10"},bt={class:"flex-1 min-w-0"},yt={class:"text-sm font-medium truncate"},$t={class:"text-xs text-muted"},kt={class:"text-xs text-muted whitespace-nowrap"},wt=k({__name:"RecentChats",props:{conversations:{},loading:{type:Boolean}},setup(a){function x(u){return O(new Date(u),{addSuffix:!0})}return(u,e)=>{const o=U,p=D,i=C,g=S,v=z;return n(),h(v,null,{header:d(()=>[t("div",_t,[t("div",pt,[s(o,{name:"i-lucide-message-square",class:"size-4 text-primary"}),e[0]||(e[0]=t("span",{class:"text-sm font-medium"},"Recent Chats",-1))]),s(p,{to:"/chat",variant:"ghost",size:"xs","trailing-icon":"i-lucide-arrow-right"},{default:d(()=>[...e[1]||(e[1]=[y(" View all ",-1)])]),_:1})])]),default:d(()=>[a.loading?(n(),l("div",gt,[(n(),l(b,null,$(3,r=>t("div",{key:r,class:"flex items-center gap-3"},[s(i,{class:"size-8 rounded-full"}),t("div",xt,[s(i,{class:"h-4 w-32 mb-1"}),s(i,{class:"h-3 w-20"})])])),64))])):a.conversations.length===0?(n(),l("div",ft," No conversations yet ")):(n(),l("div",vt,[(n(!0),l(b,null,$(a.conversations,r=>(n(),h(g,{key:r.id,to:{path:"/chat",query:{conversation:r.id}},class:"flex items-center gap-3 p-2 -mx-2 rounded-md hover:bg-elevated transition-colors"},{default:d(()=>[t("div",ht,[s(o,{name:"i-lucide-message-square",class:"size-4 text-primary"})]),t("div",bt,[t("p",yt,c(r.title||"Untitled Chat"),1),t("p",$t,c(r.messageCount)+" messages ",1)]),t("span",kt,c(x(r.startedAt)),1)]),_:2},1032,["to"]))),128))]))]),_:1})}}}),Ct=Object.assign(wt,{__name:"DashboardRecentChats"}),Ut={class:"flex items-center justify-between"},Dt={class:"flex items-center gap-2"},zt={key:0,class:"space-y-3"},Tt={class:"flex-1"},jt={key:1,class:"text-center py-4 text-muted text-sm"},St={key:2,class:"space-y-2"},Nt={class:"flex items-center justify-center size-8 rounded bg-primary/10"},Bt={class:"flex-1 min-w-0"},It={class:"text-sm font-medium truncate"},Ot={class:"flex items-center gap-2"},Vt={key:0,class:"text-xs text-muted whitespace-nowrap"},Rt=k({__name:"RecentDocs",props:{documents:{},loading:{type:Boolean}},setup(a){function x(u){return u?O(new Date(u),{addSuffix:!0}):""}return(u,e)=>{const o=U,p=D,i=C,g=I,v=S,r=z;return n(),h(r,null,{header:d(()=>[t("div",Ut,[t("div",Dt,[s(o,{name:"i-lucide-file-text",class:"size-4 text-primary"}),e[0]||(e[0]=t("span",{class:"text-sm font-medium"},"Recent Docs",-1))]),s(p,{to:"/docs",variant:"ghost",size:"xs","trailing-icon":"i-lucide-arrow-right"},{default:d(()=>[...e[1]||(e[1]=[y(" View all ",-1)])]),_:1})])]),default:d(()=>[a.loading?(n(),l("div",zt,[(n(),l(b,null,$(3,_=>t("div",{key:_,class:"flex items-center gap-3"},[s(i,{class:"size-8 rounded"}),t("div",Tt,[s(i,{class:"h-4 w-32 mb-1"}),s(i,{class:"h-3 w-20"})])])),64))])):a.documents.length===0?(n(),l("div",jt," No documents yet ")):(n(),l("div",St,[(n(!0),l(b,null,$(a.documents,_=>(n(),h(v,{key:_.id,to:{path:"/docs",query:{path:_.path}},class:"flex items-center gap-3 p-2 -mx-2 rounded-md hover:bg-elevated transition-colors"},{default:d(()=>[t("div",Nt,[s(o,{name:"i-lucide-file-text",class:"size-4 text-primary"})]),t("div",Bt,[t("p",It,c(_.title),1),t("div",Ot,[_.projectName?(n(),h(g,{key:0,variant:"subtle",color:"neutral",size:"xs"},{default:d(()=>[t("span",{class:"inline-block size-2 rounded-full mr-1",style:B({background:_.projectColor||"var(--ui-primary)"})},null,4),y(" "+c(_.projectName),1)]),_:2},1024)):w("",!0)])]),_.modifiedAt?(n(),l("span",Vt,c(x(_.modifiedAt)),1)):w("",!0)]),_:2},1032,["to"]))),128))]))]),_:1})}}}),qt=Object.assign(Rt,{__name:"DashboardRecentDocs"}),Ft={class:"flex items-center justify-between"},Mt={class:"flex items-center gap-2"},At={key:0,class:"grid grid-cols-2 gap-4"},Lt={key:1,class:"grid grid-cols-2 gap-4"},Pt={class:"text-lg font-semibold"},Ht={class:"text-lg font-semibold"},Kt={class:"text-lg font-semibold"},Wt={class:"text-lg font-semibold"},Et=k({__name:"UsageSummary",props:{usage:{},loading:{type:Boolean}},setup(a){function x(e){return e<.01&&e>0?"<$0.01":`$${e.toFixed(2)}`}function u(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}K`:String(e)}return(e,o)=>{const p=U,i=D,g=C,v=z;return n(),h(v,null,{header:d(()=>[t("div",Ft,[t("div",Mt,[s(p,{name:"i-lucide-bar-chart-3",class:"size-4 text-primary"}),o[0]||(o[0]=t("span",{class:"text-sm font-medium"},"Token Usage (7d)",-1))]),s(i,{to:"/usage",variant:"ghost",size:"xs","trailing-icon":"i-lucide-arrow-right"},{default:d(()=>[...o[1]||(o[1]=[y(" Details ",-1)])]),_:1})])]),default:d(()=>[a.loading?(n(),l("div",At,[(n(),l(b,null,$(4,r=>t("div",{key:r},[s(g,{class:"h-3 w-12 mb-1"}),s(g,{class:"h-6 w-16"})])),64))])):(n(),l("div",Lt,[t("div",null,[o[2]||(o[2]=t("p",{class:"text-xs text-muted mb-0.5"}," Total Cost ",-1)),t("p",Pt,c(x(a.usage.totalCost7d)),1)]),t("div",null,[o[3]||(o[3]=t("p",{class:"text-xs text-muted mb-0.5"}," API Calls ",-1)),t("p",Ht,c(a.usage.totalCalls7d),1)]),t("div",null,[o[4]||(o[4]=t("p",{class:"text-xs text-muted mb-0.5"}," Input Tokens ",-1)),t("p",Kt,c(u(a.usage.totalInputTokens7d)),1)]),t("div",null,[o[5]||(o[5]=t("p",{class:"text-xs text-muted mb-0.5"}," Output Tokens ",-1)),t("p",Wt,c(u(a.usage.totalOutputTokens7d)),1)])]))]),_:1})}}}),Gt=Object.assign(Et,{__name:"DashboardUsageSummary"}),Yt={class:"contents"},Jt={class:"p-4 space-y-6"},Qt={class:"text-2xl font-bold"},Xt={class:"grid gap-6 lg:grid-cols-2"},Zt={class:"grid gap-6 lg:grid-cols-2"},ue=k({__name:"dashboard",setup(a){const{user:x}=F(),u=N(null),e=N(!0);async function o(){e.value=!0;try{const p=await $fetch("/api/dashboard/overview");u.value=p.data}catch{}finally{e.value=!1}}return q(()=>{o()}),(p,i)=>{const g=R,v=ot,r=mt,_=Ct,T=qt,j=Gt,m=V;return n(),l("div",Yt,[s(m,{id:"dashboard",grow:""},{header:d(()=>[s(g,{title:"Dashboard"})]),body:d(()=>[t("div",Jt,[t("div",null,[t("h1",Qt," Welcome back"+c(f(x)?.name?`, ${f(x).name}`:""),1),i[0]||(i[0]=t("p",{class:"text-muted mt-1 text-sm"}," Here's what's happening in your workspace. ",-1))]),s(v,{overview:f(u),loading:f(e)},null,8,["overview","loading"]),t("div",Xt,[s(r,{tasks:f(u)?.tasks.upcoming??[],loading:f(e)},null,8,["tasks","loading"]),s(_,{conversations:f(u)?.conversations??[],loading:f(e)},null,8,["conversations","loading"])]),t("div",Zt,[s(T,{documents:f(u)?.documents??[],loading:f(e)},null,8,["documents","loading"]),s(j,{usage:f(u)?.usage??{totalCost7d:0,totalCalls7d:0,totalInputTokens7d:0,totalOutputTokens7d:0},loading:f(e)},null,8,["usage","loading"])])])]),_:1})])}}});export{ue as default};
@@ -1 +0,0 @@
1
- import{ac as i,c as d,G as t,T as n,a4 as a,C as p}from"./D6tVZcRs.js";const u=["id"],f=["href"],k={__name:"ProseH5",props:{id:{type:String,required:!1}},setup(r){const e=r,{headings:o}=i().public.mdc,c=d(()=>e.id&&(typeof o?.anchorLinks=="boolean"&&o?.anchorLinks===!0||typeof o?.anchorLinks=="object"&&o?.anchorLinks?.h5));return(s,h)=>(n(),t("h5",{id:e.id},[e.id&&p(c)?(n(),t("a",{key:0,href:`#${e.id}`},[a(s.$slots,"default")],8,f)):a(s.$slots,"default",{key:1})],8,u))}};export{k as default};
@@ -1 +0,0 @@
1
- import{P as r,c,G as n,T as p,a4 as m,W as u,am as s}from"./D6tVZcRs.js";const i={base:"list-decimal ps-6 my-5 marker:text-muted"},_={__name:"ProseOl",props:{class:{type:null,required:!1}},setup(e){const a=e,t=r(),o=c(()=>s({extend:s(i),...t.ui?.prose?.ol||{}}));return(l,d)=>(p(),n("ol",{class:u(o.value({class:a.class}))},[m(l.$slots,"default")],2))}};export{_ as default};
@@ -1 +0,0 @@
1
- import{L as e}from"./D6tVZcRs.js";function a(r,u="reka"){return r||`${u}-${e?.()}`}export{a as u};
@@ -1 +0,0 @@
1
- import{a as rt,ag as lt,an as ct,e as b,f as ut,q as dt,G as m,V as o,U as u,ai as mt,C as s,T as a,ab as l,S as A,a9 as C,_ as pt,Y as _t,aj as E,ak as V,ae as f,aa as y,al as $}from"./D6tVZcRs.js";import{_ as ft}from"./9O1MXkck.js";import{_ as gt,a as vt}from"./CfCXpVn5.js";import{u as ht,_ as yt,a as kt,b as xt}from"./Dkap2-Pj.js";import{c as At}from"./DQhm-UPG.js";import{_ as wt}from"./BnMTFF5R.js";import{_ as bt}from"./7rT1DCe2.js";import{_ as Ct}from"./DXJ9PxCv.js";import{_ as $t}from"./BVO3XpHT.js";import{u as St}from"./Da2vwoYG.js";import{u as Ut}from"./B-DMcEU9.js";import"./C8ut0f5H.js";import"./CqkleIqs.js";import"./ZvG7a1W3.js";import"./D12qPplu.js";import"./C7m9zGMG.js";import"./OlF0QnKF.js";import"./pdYvpiud.js";import"./DlAUqK2U.js";import"./ByLsRRoQ.js";import"./OeVS0Rsb.js";import"./BAZ8sewA.js";import"./IYCBGuRS.js";import"./B6om4MW2.js";import"./BvFYnRMR.js";import"./CAWbHTgy.js";import"./B2wI_pYg.js";import"./sBzyvWMJ.js";import"./DvHS7_h2.js";import"./DWZ9ieYa.js";import"./CLkkdThv.js";import"./B5FuOh7E.js";import"./BWuL2CzO.js";import"./qcVwZv8e.js";import"./C6Y-ieo6.js";import"./DwSY6_2U.js";import"./BNeeERBt.js";import"./CkwPRs1D.js";import"./Vcq4gwWv.js";import"./DuzpliIL.js";import"./DB2zZev7.js";import"./BNJJSRKh.js";import"./DlPOQpH_.js";const Rt=At(xt),Nt={class:"contents"},Ft={class:"p-4 space-y-6"},Bt={key:1,class:"flex items-center justify-center h-64"},Tt={key:2,class:"flex flex-col items-center justify-center h-64 text-neutral-500"},Et={key:3,class:"space-y-4"},Vt={class:"flex items-start justify-between gap-4"},zt={class:"flex-1 min-w-0"},Dt={class:"flex items-center gap-2"},Mt={class:"font-medium truncate"},Pt={key:0,class:"text-sm text-muted truncate mt-1"},jt={class:"flex items-center gap-4 mt-2 text-sm text-muted"},Ot={class:"flex items-center gap-1"},Gt={key:0,class:"flex items-center gap-1"},qt={key:1,class:"flex items-center gap-1"},Lt={class:"flex items-center gap-2"},Ve=rt({__name:"index",setup(Wt){const g=lt(),z=ct(),{agents:R,loading:D,fetchAgents:M,createAgent:P,updateAgent:j,toggleEnabled:O,runAgent:G,cancelAgent:q,fetchGlobalStats:L}=ht(),{isAgentRunning:W}=St(),{agentStatsPeriod:N}=Ut(),w=b(N.value),k=b(null),S=b(!1);function F(n){return W(n)?!0:k.value?.runningAgentIds?.includes(n)??!1}const v=b(!1),h=b(null),I=[{label:"24h",value:"24h"},{label:"7d",value:"7d"},{label:"30d",value:"30d"}];function J(n){const t=n.split(" ");if(t.length!==5)return n;const i=t[0],r=t[1],c=t[2],d=t[3],p=t[4];return i==="0"&&r==="*"&&c==="*"&&d==="*"&&p==="*"?"Every hour":i==="*/5"&&r==="*"&&c==="*"&&d==="*"&&p==="*"?"Every 5 minutes":c==="*"&&d==="*"&&p==="*"&&r!=="*"?`Daily at ${r}:${i.padStart(2,"0")}`:p==="0"&&c==="*"&&d==="*"?`Weekly on Sunday at ${r}:${i.padStart(2,"0")}`:n}function Y(n){if(!n)return"Never";const t=new Date(n),r=new Date().getTime()-t.getTime(),c=Math.floor(r/6e4),d=Math.floor(r/36e5),p=Math.floor(r/864e5);return c<1?"Just now":c<60?`${c}m ago`:d<24?`${d}h ago`:`${p}d ago`}function B(){h.value=null,v.value=!0}function H(n,t){t.stopPropagation(),h.value=n,v.value=!0}function K(n){z.push(`/agents/${n.id}`)}async function Q(n){try{h.value?(await j(h.value.id,n),g.add({title:"Agent updated",color:"success",icon:"i-lucide-check"})):(await P(n),g.add({title:"Agent created",color:"success",icon:"i-lucide-check"}),U()),v.value=!1,h.value=null}catch(t){g.add({title:"Failed to save agent",description:t instanceof Error?t.message:"An unexpected error occurred",color:"error",icon:"i-lucide-alert-circle"})}}async function X(n){try{await O(n)}catch{g.add({title:"Failed to toggle agent",color:"error",icon:"i-lucide-alert-circle"})}}async function Z(n,t){t.stopPropagation();try{await G(n)}catch{g.add({title:"Failed to run agent",color:"error",icon:"i-lucide-alert-circle"})}}async function tt(n,t){t.stopPropagation();try{await q(n),g.add({title:"Agent cancelled",color:"warning",icon:"i-lucide-x-circle"})}catch{g.add({title:"Failed to cancel agent",color:"error",icon:"i-lucide-alert-circle"})}}function et(n){switch(n){case"success":return"success";case"error":return"error";case"budget_exceeded":return"warning";case"running":return"info";case"cancelled":return"neutral";default:return"neutral"}}async function U(){S.value=!0;try{k.value=await L(w.value)}catch{}finally{S.value=!1}}return ut(w,n=>{N.value=n,U()}),dt(async()=>{await M(),U()}),(n,t)=>{const i=_t,r=ft,c=vt,d=yt,p=Rt,x=pt,T=wt,nt=bt,ot=Ct,at=gt,st=kt,it=$t;return a(),m("div",Nt,[o(at,{id:"agents",grow:""},{header:u(()=>[o(c,{title:"Scheduled Agents"},{right:u(()=>[o(r,null,{default:u(()=>[(a(),m(E,null,V(I,e=>o(i,{key:e.value,color:s(w)===e.value?"primary":"neutral",variant:s(w)===e.value?"solid":"ghost",size:"sm",onClick:_=>w.value=e.value},{default:u(()=>[y(f(e.label),1)]),_:2},1032,["color","variant","onClick"])),64))]),_:1}),o(i,{icon:"i-lucide-plus",label:"New Agent",onClick:B})]),_:1})]),body:u(()=>[l("div",Ft,[o(d,{stats:s(k),loading:s(S),variant:"global"},null,8,["stats","loading"]),s(k)&&s(k).dailyRuns.length>0?(a(),A(p,{key:0,data:s(k).dailyRuns,title:"Run Activity"},null,8,["data"])):C("",!0),s(D)?(a(),m("div",Bt,[o(x,{name:"i-lucide-loader-2",class:"w-8 h-8 animate-spin text-neutral-400"})])):s(R).length===0?(a(),m("div",Tt,[o(x,{name:"i-lucide-bot",class:"w-12 h-12 mb-4"}),t[3]||(t[3]=l("p",{class:"text-lg font-medium"}," No agents yet ",-1)),t[4]||(t[4]=l("p",{class:"text-sm"}," Create your first scheduled agent to automate tasks ",-1)),o(i,{class:"mt-4",icon:"i-lucide-plus",label:"Create Agent",onClick:B})])):(a(),m("div",Et,[t[6]||(t[6]=l("h2",{class:"text-lg font-semibold"}," Agents ",-1)),(a(!0),m(E,null,V(s(R),e=>(a(),A(ot,{key:e.id,class:"cursor-pointer transition-all hover:ring-2 hover:ring-primary/50",onClick:_=>K(e)},{default:u(()=>[l("div",Vt,[l("div",zt,[l("div",Dt,[l("h3",Mt,f(e.name),1),F(e.id)?(a(),A(T,{key:0,color:"info",variant:"subtle",size:"sm"},{default:u(()=>[o(x,{name:"i-lucide-loader-2",class:"w-3 h-3 animate-spin mr-1"}),t[5]||(t[5]=y(" Running ",-1))]),_:1})):e.lastStatus?(a(),A(T,{key:1,color:et(e.lastStatus),size:"sm"},{default:u(()=>[y(f(e.lastStatus),1)]),_:2},1032,["color"])):C("",!0)]),e.description?(a(),m("p",Pt,f(e.description),1)):C("",!0),l("div",jt,[l("span",Ot,[o(x,{name:"i-lucide-clock"}),y(" "+f(J(e.schedule)),1)]),e.lastRunAt?(a(),m("span",Gt,[o(x,{name:"i-lucide-activity"}),y(" "+f(Y(e.lastRunAt)),1)])):C("",!0),e.maxBudgetUsd?(a(),m("span",qt,[o(x,{name:"i-lucide-dollar-sign"}),y(" $"+f(e.maxBudgetUsd)+" limit ",1)])):C("",!0)])]),l("div",Lt,[o(nt,{"model-value":e.enabled,onClick:t[0]||(t[0]=$(()=>{},["stop"])),"onUpdate:modelValue":_=>X(e.id)},null,8,["model-value","onUpdate:modelValue"]),F(e.id)?(a(),A(i,{key:0,icon:"i-lucide-square",variant:"ghost",size:"sm",color:"error",onClick:$(_=>tt(e.id,_),["stop"])},null,8,["onClick"])):(a(),A(i,{key:1,icon:"i-lucide-play",variant:"ghost",size:"sm",disabled:!e.enabled,onClick:$(_=>Z(e.id,_),["stop"])},null,8,["disabled","onClick"])),o(i,{icon:"i-lucide-pencil",variant:"ghost",size:"sm",onClick:$(_=>H(e,_),["stop"])},null,8,["onClick"])])])]),_:2},1032,["onClick"]))),128))]))])]),_:1}),o(it,{open:s(v),"onUpdate:open":t[2]||(t[2]=e=>mt(v)?v.value=e:null)},{title:u(()=>[y(f(s(h)?"Edit Agent":"New Agent"),1)]),body:u(()=>[o(st,{agent:s(h),onSubmit:Q,onCancel:t[1]||(t[1]=e=>v.value=!1)},null,8,["agent"])]),_:1},8,["open"])])}}});export{Ve as default};
@@ -1 +0,0 @@
1
- import{ao as f,P as v,c as p,am as n,S as m,T as t,U as y,G as l,a9 as d,W as s,a4 as i,C as g,a3 as h}from"./D6tVZcRs.js";const b={slots:{root:"rounded-lg overflow-hidden",header:"p-4 sm:px-6",body:"p-4 sm:p-6",footer:"p-4 sm:px-6"},variants:{variant:{solid:{root:"bg-inverted text-inverted"},outline:{root:"bg-default ring ring-default divide-y divide-default"},soft:{root:"bg-elevated/50 divide-y divide-default"},subtle:{root:"bg-elevated/50 ring ring-default divide-y divide-default"}}},defaultVariants:{variant:"outline"}},q={__name:"UCard",props:{as:{type:null,required:!1},variant:{type:null,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1}},setup(u){const e=u,o=f(),c=v(),a=p(()=>n({extend:n(b),...c.ui?.card||{}})({variant:e.variant}));return(r,C)=>(t(),m(g(h),{as:u.as,"data-slot":"root",class:s(a.value.root({class:[e.ui?.root,e.class]}))},{default:y(()=>[o.header?(t(),l("div",{key:0,"data-slot":"header",class:s(a.value.header({class:e.ui?.header}))},[i(r.$slots,"header")],2)):d("",!0),o.default?(t(),l("div",{key:1,"data-slot":"body",class:s(a.value.body({class:e.ui?.body}))},[i(r.$slots,"default")],2)):d("",!0),o.footer?(t(),l("div",{key:2,"data-slot":"footer",class:s(a.value.footer({class:e.ui?.footer}))},[i(r.$slots,"footer")],2)):d("",!0)]),_:3},8,["as","class"]))}};export{q as _};
@@ -1 +0,0 @@
1
- import{aq as g,ao as S,ar as V,P as q,c as u,e as C,q as b,as as M,f as i,at as U,S as m,T as c,U as _,au as B,C as I,aU as $,W as k,am as p}from"./D6tVZcRs.js";import{_ as w}from"./DNcOC5zj.js";import"./CxRnB4NC.js";import"./DwSY6_2U.js";import"./IYCBGuRS.js";import"./C8AtdrMH.js";import"./DWZ9ieYa.js";import"./BnMTFF5R.js";const x={slots:{root:"my-5 gap-4"}},E={__name:"ProseTabs",props:g({defaultValue:{type:String,required:!1,default:"0"},sync:{type:String,required:!1},hash:{type:String,required:!1},class:{type:null,required:!1},ui:{type:void 0,required:!1}},{modelValue:{type:String},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,d=S(),s=V(r,"modelValue"),f=q(),y=u(()=>p({extend:p(x),...f.ui?.prose?.tabs||{}})),n=C(1),h=u(()=>(n.value,d.default?.()?.flatMap(l).filter(Boolean)||[]));function l(e,a){return typeof e.type=="symbol"?e.children?.map(l):{index:a,label:e.props?.label||`${a}`,description:e.props?.description,icon:e.props?.icon,component:e}}b(()=>{if(t.sync){const e=`tabs-${t.sync}`,a=M(e,()=>localStorage.getItem(e));i(a,()=>{a.value&&(s.value=a.value)},{immediate:!0}),i(s,()=>{s.value&&(a.value=s.value,localStorage.setItem(e,s.value))})}});async function v(){if(t.hash){const e=t.hash.startsWith("#")?t.hash:`#${t.hash}`;setTimeout(()=>{document.querySelector(e)?.scrollIntoView()},200)}}return U(()=>n.value++),(e,a)=>(c(),m(w,{modelValue:s.value,"onUpdate:modelValue":[a[0]||(a[0]=o=>s.value=o),v],color:"primary",variant:"link",items:h.value,class:k(t.class),"unmount-on-hide":!1,ui:I($)(y.value(),t.ui)},{content:_(({item:o})=>[(c(),m(B(o.component)))]),_:1},8,["modelValue","items","class","ui"]))}};export{E as default};
@@ -1 +0,0 @@
1
- import{ag as O,r as f,e as r}from"./D6tVZcRs.js";import{s as W}from"./DlPOQpH_.js";const m={task:{enabled:!0},reminder:{enabled:!0},agent:{enabled:!0},memory:{enabled:!0},project:{enabled:!0},secret:{enabled:!0},document:{enabled:!1},hook:{enabled:!1},conversation:{enabled:!1},bridge:{enabled:!0}},n=r("disconnected"),a=r(new Set),l=r({...m}),t=r(null),i=r(0),$=5,x=2e3;let c=null,d=!1,p=!1;const R={create:"i-lucide-plus-circle",edit:"i-lucide-pencil",delete:"i-lucide-trash-2",restore:"i-lucide-undo-2",run:"i-lucide-play",cancel:"i-lucide-x-circle",complete:"i-lucide-check-circle",fail:"i-lucide-alert-circle"};function E(){const I=O();function h(){return`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}/notifications`}async function v(){if(!p)try{const e=await $fetch("/api/settings");l.value={...m,...e.data.notifications},p=!0}catch{console.warn("[notification-bus] Failed to load preferences, using defaults")}}function w(e){e.resource==="agent"&&e.resourceId&&(e.action==="run"?a.value.add(e.resourceId):(e.action==="complete"||e.action==="fail"||e.action==="cancel")&&a.value.delete(e.resourceId));const o=l.value[e.resource];o?.enabled&&(o.subtypes&&o.subtypes[e.action]===!1||I.add({title:e.title||"Notification",description:e.message,icon:R[e.action]||"i-lucide-bell",color:e.color||"info"}))}function g(){if(t.value?.readyState===WebSocket.OPEN||d&&n.value==="connecting")return;d=!0,n.value="connecting";const e=new WebSocket(h());t.value=e,e.onopen=()=>{n.value="connected",i.value=0,console.log("[notification-bus] Connected"),v(),k()},e.onmessage=o=>{try{const s=JSON.parse(o.data),u=s.type;if(u==="pong"||u==="connected")return;u==="resource_change"&&w(s)}catch(s){console.error("[notification-bus] Failed to parse message:",s)}},e.onclose=()=>{n.value="disconnected",b(),i.value<$&&(i.value++,console.log(`[notification-bus] Reconnecting (attempt ${i.value})...`),setTimeout(g,x*i.value))},e.onerror=()=>{n.value="error"}}function P(){b(),t.value&&(t.value.close(),t.value=null),n.value="disconnected",d=!1}function S(){t.value?.readyState===WebSocket.OPEN&&t.value.send(JSON.stringify({type:"ping"}))}function k(){c&&clearInterval(c),c=W(S,3e4)}function b(){c&&(clearInterval(c),c=null)}function N(e){return a.value.has(e)}function A(e){l.value=e}return{status:f(n),runningAgentIds:f(a),notificationPreferences:f(l),isAgentRunning:N,connect:g,disconnect:P,loadPreferences:v,updatePreferences:A}}export{m as d,E as u};
@@ -1 +0,0 @@
1
- import{P as c,c as u,G as n,T as p,ab as i,a4 as d,W as a,am as o}from"./D6tVZcRs.js";const m={slots:{root:"relative my-5 overflow-x-auto",base:"w-full border-separate border-spacing-0 rounded-md"}},v={__name:"ProseTable",props:{class:{type:null,required:!1},ui:{type:null,required:!1}},setup(t){const e=t,l=c(),s=u(()=>o({extend:o(m),...l.ui?.prose?.table||{}})());return(r,f)=>(p(),n("div",{class:a(s.value.root({class:[e.ui?.root,e.class]}))},[i("table",{class:a(s.value.base({class:e.ui?.base}))},[d(r.$slots,"default")],2)],2))}};export{v as default};