@mastra/react 1.7.3-alpha.3 → 1.8.0-alpha.4

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 (510) hide show
  1. package/dist/accumulator-B1MuNX3j.js +1668 -0
  2. package/dist/accumulator-B1MuNX3j.js.map +1 -0
  3. package/dist/accumulator-CsUGDUHk.cjs +1709 -0
  4. package/dist/accumulator-CsUGDUHk.cjs.map +1 -0
  5. package/dist/agent/hooks.d.ts.map +1 -1
  6. package/dist/agent/user-message.d.ts +4 -0
  7. package/dist/agent/user-message.d.ts.map +1 -0
  8. package/dist/chat/index.cjs +3 -0
  9. package/dist/chat/index.d.ts +3 -0
  10. package/dist/chat/index.d.ts.map +1 -0
  11. package/dist/chat/index.js +2 -0
  12. package/dist/feedback-refetch-interval-DLHzQoVV.js +12 -0
  13. package/dist/feedback-refetch-interval-DLHzQoVV.js.map +1 -0
  14. package/dist/feedback-refetch-interval-XD5FVc2k.cjs +17 -0
  15. package/dist/feedback-refetch-interval-XD5FVc2k.cjs.map +1 -0
  16. package/dist/hooks/agents/index.cjs +988 -0
  17. package/dist/hooks/agents/index.cjs.map +1 -0
  18. package/dist/hooks/agents/index.d.ts +19 -0
  19. package/dist/hooks/agents/index.d.ts.map +1 -0
  20. package/dist/hooks/agents/index.js +952 -0
  21. package/dist/hooks/agents/index.js.map +1 -0
  22. package/dist/hooks/agents/is-model-not-allowed.d.ts +15 -0
  23. package/dist/hooks/agents/is-model-not-allowed.d.ts.map +1 -0
  24. package/dist/hooks/agents/use-agent-messages.d.ts +18 -0
  25. package/dist/hooks/agents/use-agent-messages.d.ts.map +1 -0
  26. package/dist/hooks/agents/use-agent-plan.d.ts +14 -0
  27. package/dist/hooks/agents/use-agent-plan.d.ts.map +1 -0
  28. package/dist/hooks/agents/use-agent-skills.d.ts +2021 -0
  29. package/dist/hooks/agents/use-agent-skills.d.ts.map +1 -0
  30. package/dist/hooks/agents/use-agent-versions.d.ts +72 -0
  31. package/dist/hooks/agents/use-agent-versions.d.ts.map +1 -0
  32. package/dist/hooks/agents/use-agent-working-memory.d.ts +11 -0
  33. package/dist/hooks/agents/use-agent-working-memory.d.ts.map +1 -0
  34. package/dist/hooks/agents/use-agent-workspace.d.ts +2022 -0
  35. package/dist/hooks/agents/use-agent-workspace.d.ts.map +1 -0
  36. package/dist/hooks/agents/use-agent.d.ts +12 -0
  37. package/dist/hooks/agents/use-agent.d.ts.map +1 -0
  38. package/dist/hooks/agents/use-agents-model-providers.d.ts +9 -0
  39. package/dist/hooks/agents/use-agents-model-providers.d.ts.map +1 -0
  40. package/dist/hooks/agents/use-agents.d.ts +28 -0
  41. package/dist/hooks/agents/use-agents.d.ts.map +1 -0
  42. package/dist/hooks/agents/use-background-tasks.d.ts +51 -0
  43. package/dist/hooks/agents/use-background-tasks.d.ts.map +1 -0
  44. package/dist/hooks/agents/use-browser-session-probe.d.ts +34 -0
  45. package/dist/hooks/agents/use-browser-session-probe.d.ts.map +1 -0
  46. package/dist/hooks/agents/use-channels.d.ts +34 -0
  47. package/dist/hooks/agents/use-channels.d.ts.map +1 -0
  48. package/dist/hooks/agents/use-close-browser.d.ts +17 -0
  49. package/dist/hooks/agents/use-close-browser.d.ts.map +1 -0
  50. package/dist/hooks/agents/use-execute-agent-tool.d.ts +14 -0
  51. package/dist/hooks/agents/use-execute-agent-tool.d.ts.map +1 -0
  52. package/dist/hooks/agents/use-preview-instructions.d.ts +20 -0
  53. package/dist/hooks/agents/use-preview-instructions.d.ts.map +1 -0
  54. package/dist/hooks/agents/use-stored-agents.d.ts +8023 -0
  55. package/dist/hooks/agents/use-stored-agents.d.ts.map +1 -0
  56. package/dist/hooks/agents/use-stored-skills.d.ts +8 -0
  57. package/dist/hooks/agents/use-stored-skills.d.ts.map +1 -0
  58. package/dist/hooks/auth/fetch-with-refresh.d.ts +28 -0
  59. package/dist/hooks/auth/fetch-with-refresh.d.ts.map +1 -0
  60. package/dist/hooks/auth/get-client-query-key.d.ts +7 -0
  61. package/dist/hooks/auth/get-client-query-key.d.ts.map +1 -0
  62. package/dist/hooks/auth/index.cjs +492 -0
  63. package/dist/hooks/auth/index.cjs.map +1 -0
  64. package/dist/hooks/auth/index.d.ts +11 -0
  65. package/dist/hooks/auth/index.d.ts.map +1 -0
  66. package/dist/hooks/auth/index.js +474 -0
  67. package/dist/hooks/auth/index.js.map +1 -0
  68. package/dist/hooks/auth/sso-login.d.ts +8 -0
  69. package/dist/hooks/auth/sso-login.d.ts.map +1 -0
  70. package/dist/hooks/auth/types.d.ts +107 -0
  71. package/dist/hooks/auth/types.d.ts.map +1 -0
  72. package/dist/hooks/auth/use-auth-actions.d.ts +99 -0
  73. package/dist/hooks/auth/use-auth-actions.d.ts.map +1 -0
  74. package/dist/hooks/auth/use-auth-capabilities.d.ts +43 -0
  75. package/dist/hooks/auth/use-auth-capabilities.d.ts.map +1 -0
  76. package/dist/hooks/auth/use-credentials-login.d.ts +63 -0
  77. package/dist/hooks/auth/use-credentials-login.d.ts.map +1 -0
  78. package/dist/hooks/auth/use-credentials-signup.d.ts +66 -0
  79. package/dist/hooks/auth/use-credentials-signup.d.ts.map +1 -0
  80. package/dist/hooks/auth/use-current-user.d.ts +40 -0
  81. package/dist/hooks/auth/use-current-user.d.ts.map +1 -0
  82. package/dist/hooks/auth/use-permission-patterns.d.ts +24 -0
  83. package/dist/hooks/auth/use-permission-patterns.d.ts.map +1 -0
  84. package/dist/hooks/capabilities/index.cjs +47 -0
  85. package/dist/hooks/capabilities/index.cjs.map +1 -0
  86. package/dist/hooks/capabilities/index.d.ts +4 -0
  87. package/dist/hooks/capabilities/index.d.ts.map +1 -0
  88. package/dist/hooks/capabilities/index.js +44 -0
  89. package/dist/hooks/capabilities/index.js.map +1 -0
  90. package/dist/hooks/capabilities/use-feedback-available.d.ts +9 -0
  91. package/dist/hooks/capabilities/use-feedback-available.d.ts.map +1 -0
  92. package/dist/hooks/capabilities/use-observability-capabilities.d.ts +9 -0
  93. package/dist/hooks/capabilities/use-observability-capabilities.d.ts.map +1 -0
  94. package/dist/hooks/capabilities/use-trace-query-available.d.ts +9 -0
  95. package/dist/hooks/capabilities/use-trace-query-available.d.ts.map +1 -0
  96. package/dist/hooks/configuration/index.cjs +18 -0
  97. package/dist/hooks/configuration/index.cjs.map +1 -0
  98. package/dist/hooks/configuration/index.d.ts +2 -0
  99. package/dist/hooks/configuration/index.d.ts.map +1 -0
  100. package/dist/hooks/configuration/index.js +17 -0
  101. package/dist/hooks/configuration/index.js.map +1 -0
  102. package/dist/hooks/configuration/use-mastra-packages.d.ts +9 -0
  103. package/dist/hooks/configuration/use-mastra-packages.d.ts.map +1 -0
  104. package/dist/hooks/datasets/index.cjs +615 -0
  105. package/dist/hooks/datasets/index.cjs.map +1 -0
  106. package/dist/hooks/datasets/index.d.ts +10 -0
  107. package/dist/hooks/datasets/index.d.ts.map +1 -0
  108. package/dist/hooks/datasets/index.js +600 -0
  109. package/dist/hooks/datasets/index.js.map +1 -0
  110. package/dist/hooks/datasets/use-compare-experiments.d.ts +23 -0
  111. package/dist/hooks/datasets/use-compare-experiments.d.ts.map +1 -0
  112. package/dist/hooks/datasets/use-dataset-experiments.d.ts +49 -0
  113. package/dist/hooks/datasets/use-dataset-experiments.d.ts.map +1 -0
  114. package/dist/hooks/datasets/use-dataset-item-versions.d.ts +31 -0
  115. package/dist/hooks/datasets/use-dataset-item-versions.d.ts.map +1 -0
  116. package/dist/hooks/datasets/use-dataset-items.d.ts +38 -0
  117. package/dist/hooks/datasets/use-dataset-items.d.ts.map +1 -0
  118. package/dist/hooks/datasets/use-dataset-mutations.d.ts +362 -0
  119. package/dist/hooks/datasets/use-dataset-mutations.d.ts.map +1 -0
  120. package/dist/hooks/datasets/use-dataset-versions.d.ts +23 -0
  121. package/dist/hooks/datasets/use-dataset-versions.d.ts.map +1 -0
  122. package/dist/hooks/datasets/use-datasets.d.ts +44 -0
  123. package/dist/hooks/datasets/use-datasets.d.ts.map +1 -0
  124. package/dist/hooks/datasets/use-experiments.d.ts +16 -0
  125. package/dist/hooks/datasets/use-experiments.d.ts.map +1 -0
  126. package/dist/hooks/datasets/use-workflow-schema.d.ts +16 -0
  127. package/dist/hooks/datasets/use-workflow-schema.d.ts.map +1 -0
  128. package/dist/hooks/embedders/index.cjs +19 -0
  129. package/dist/hooks/embedders/index.cjs.map +1 -0
  130. package/dist/hooks/embedders/index.d.ts +2 -0
  131. package/dist/hooks/embedders/index.d.ts.map +1 -0
  132. package/dist/hooks/embedders/index.js +18 -0
  133. package/dist/hooks/embedders/index.js.map +1 -0
  134. package/dist/hooks/embedders/use-embedders.d.ts +17 -0
  135. package/dist/hooks/embedders/use-embedders.d.ts.map +1 -0
  136. package/dist/hooks/experiments/index.cjs +152 -0
  137. package/dist/hooks/experiments/index.cjs.map +1 -0
  138. package/dist/hooks/experiments/index.d.ts +5 -0
  139. package/dist/hooks/experiments/index.d.ts.map +1 -0
  140. package/dist/hooks/experiments/index.js +146 -0
  141. package/dist/hooks/experiments/index.js.map +1 -0
  142. package/dist/hooks/experiments/use-experiment-metrics.d.ts +30 -0
  143. package/dist/hooks/experiments/use-experiment-metrics.d.ts.map +1 -0
  144. package/dist/hooks/experiments/use-experiment-trace.d.ts +13 -0
  145. package/dist/hooks/experiments/use-experiment-trace.d.ts.map +1 -0
  146. package/dist/hooks/experiments/use-experiments-for-dataset-filter.d.ts +22 -0
  147. package/dist/hooks/experiments/use-experiments-for-dataset-filter.d.ts.map +1 -0
  148. package/dist/hooks/experiments/use-infinite-experiments.d.ts +22 -0
  149. package/dist/hooks/experiments/use-infinite-experiments.d.ts.map +1 -0
  150. package/dist/hooks/feedback/feedback-refetch-interval.d.ts +7 -0
  151. package/dist/hooks/feedback/feedback-refetch-interval.d.ts.map +1 -0
  152. package/dist/hooks/feedback/index.cjs +22 -0
  153. package/dist/hooks/feedback/index.cjs.map +1 -0
  154. package/dist/hooks/feedback/index.d.ts +3 -0
  155. package/dist/hooks/feedback/index.d.ts.map +1 -0
  156. package/dist/hooks/feedback/index.js +20 -0
  157. package/dist/hooks/feedback/index.js.map +1 -0
  158. package/dist/hooks/feedback/use-feedback.d.ts +56 -0
  159. package/dist/hooks/feedback/use-feedback.d.ts.map +1 -0
  160. package/dist/hooks/llm/index.cjs +17 -0
  161. package/dist/hooks/llm/index.cjs.map +1 -0
  162. package/dist/hooks/llm/index.d.ts +2 -0
  163. package/dist/hooks/llm/index.d.ts.map +1 -0
  164. package/dist/hooks/llm/index.js +16 -0
  165. package/dist/hooks/llm/index.js.map +1 -0
  166. package/dist/hooks/llm/use-llm-providers.d.ts +7 -0
  167. package/dist/hooks/llm/use-llm-providers.d.ts.map +1 -0
  168. package/dist/hooks/logs/index.cjs +84 -0
  169. package/dist/hooks/logs/index.cjs.map +1 -0
  170. package/dist/hooks/logs/index.d.ts +4 -0
  171. package/dist/hooks/logs/index.d.ts.map +1 -0
  172. package/dist/hooks/logs/index.js +82 -0
  173. package/dist/hooks/logs/index.js.map +1 -0
  174. package/dist/hooks/logs/types.d.ts +36 -0
  175. package/dist/hooks/logs/types.d.ts.map +1 -0
  176. package/dist/hooks/logs/use-logs.d.ts +79 -0
  177. package/dist/hooks/logs/use-logs.d.ts.map +1 -0
  178. package/dist/hooks/mcps/index.cjs +215 -0
  179. package/dist/hooks/mcps/index.cjs.map +1 -0
  180. package/dist/hooks/mcps/index.d.ts +7 -0
  181. package/dist/hooks/mcps/index.d.ts.map +1 -0
  182. package/dist/hooks/mcps/index.js +208 -0
  183. package/dist/hooks/mcps/index.js.map +1 -0
  184. package/dist/hooks/mcps/use-mcp-app-tools.d.ts +21 -0
  185. package/dist/hooks/mcps/use-mcp-app-tools.d.ts.map +1 -0
  186. package/dist/hooks/mcps/use-mcp-server-tool.d.ts +25 -0
  187. package/dist/hooks/mcps/use-mcp-server-tool.d.ts.map +1 -0
  188. package/dist/hooks/mcps/use-mcp-server-tools-by-id.d.ts +13 -0
  189. package/dist/hooks/mcps/use-mcp-server-tools-by-id.d.ts.map +1 -0
  190. package/dist/hooks/mcps/use-mcp-server-tools.d.ts +9 -0
  191. package/dist/hooks/mcps/use-mcp-server-tools.d.ts.map +1 -0
  192. package/dist/hooks/mcps/use-mcp-servers.d.ts +8 -0
  193. package/dist/hooks/mcps/use-mcp-servers.d.ts.map +1 -0
  194. package/dist/hooks/mcps/use-try-connect-mcp.d.ts +15 -0
  195. package/dist/hooks/mcps/use-try-connect-mcp.d.ts.map +1 -0
  196. package/dist/hooks/memory/index.cjs +328 -0
  197. package/dist/hooks/memory/index.cjs.map +1 -0
  198. package/dist/hooks/memory/index.d.ts +5 -0
  199. package/dist/hooks/memory/index.d.ts.map +1 -0
  200. package/dist/hooks/memory/index.js +312 -0
  201. package/dist/hooks/memory/index.js.map +1 -0
  202. package/dist/hooks/memory/use-memory-status.d.ts +12 -0
  203. package/dist/hooks/memory/use-memory-status.d.ts.map +1 -0
  204. package/dist/hooks/memory/use-memory-thread-messages.d.ts +13 -0
  205. package/dist/hooks/memory/use-memory-thread-messages.d.ts.map +1 -0
  206. package/dist/hooks/memory/use-memory.d.ts +159 -0
  207. package/dist/hooks/memory/use-memory.d.ts.map +1 -0
  208. package/dist/hooks/memory/use-observational-memory.d.ts +13 -0
  209. package/dist/hooks/memory/use-observational-memory.d.ts.map +1 -0
  210. package/dist/hooks/metrics/index.cjs +997 -0
  211. package/dist/hooks/metrics/index.cjs.map +1 -0
  212. package/dist/hooks/metrics/index.d.ts +16 -0
  213. package/dist/hooks/metrics/index.d.ts.map +1 -0
  214. package/dist/hooks/metrics/index.js +981 -0
  215. package/dist/hooks/metrics/index.js.map +1 -0
  216. package/dist/hooks/metrics/metrics-interval.d.ts +8 -0
  217. package/dist/hooks/metrics/metrics-interval.d.ts.map +1 -0
  218. package/dist/hooks/metrics/metrics-query-filters.d.ts +62 -0
  219. package/dist/hooks/metrics/metrics-query-filters.d.ts.map +1 -0
  220. package/dist/hooks/metrics/use-active-resources-kpi-metrics.d.ts +12 -0
  221. package/dist/hooks/metrics/use-active-resources-kpi-metrics.d.ts.map +1 -0
  222. package/dist/hooks/metrics/use-active-threads-kpi-metrics.d.ts +12 -0
  223. package/dist/hooks/metrics/use-active-threads-kpi-metrics.d.ts.map +1 -0
  224. package/dist/hooks/metrics/use-agent-runs-kpi-metrics.d.ts +9 -0
  225. package/dist/hooks/metrics/use-agent-runs-kpi-metrics.d.ts.map +1 -0
  226. package/dist/hooks/metrics/use-latency-metrics.d.ts +23 -0
  227. package/dist/hooks/metrics/use-latency-metrics.d.ts.map +1 -0
  228. package/dist/hooks/metrics/use-model-cost-kpi-metrics.d.ts +14 -0
  229. package/dist/hooks/metrics/use-model-cost-kpi-metrics.d.ts.map +1 -0
  230. package/dist/hooks/metrics/use-model-usage-cost-metrics.d.ts +16 -0
  231. package/dist/hooks/metrics/use-model-usage-cost-metrics.d.ts.map +1 -0
  232. package/dist/hooks/metrics/use-scores-metrics.d.ts +24 -0
  233. package/dist/hooks/metrics/use-scores-metrics.d.ts.map +1 -0
  234. package/dist/hooks/metrics/use-token-usage-by-agent-metrics.d.ts +15 -0
  235. package/dist/hooks/metrics/use-token-usage-by-agent-metrics.d.ts.map +1 -0
  236. package/dist/hooks/metrics/use-token-usage-timeseries.d.ts +22 -0
  237. package/dist/hooks/metrics/use-token-usage-timeseries.d.ts.map +1 -0
  238. package/dist/hooks/metrics/use-top-active-threads-metrics.d.ts +21 -0
  239. package/dist/hooks/metrics/use-top-active-threads-metrics.d.ts.map +1 -0
  240. package/dist/hooks/metrics/use-top-resources-by-threads-metrics.d.ts +20 -0
  241. package/dist/hooks/metrics/use-top-resources-by-threads-metrics.d.ts.map +1 -0
  242. package/dist/hooks/metrics/use-total-tokens-kpi-metrics.d.ts +13 -0
  243. package/dist/hooks/metrics/use-total-tokens-kpi-metrics.d.ts.map +1 -0
  244. package/dist/hooks/metrics/use-trace-volume-metrics.d.ts +17 -0
  245. package/dist/hooks/metrics/use-trace-volume-metrics.d.ts.map +1 -0
  246. package/dist/hooks/processors/index.cjs +43 -0
  247. package/dist/hooks/processors/index.cjs.map +1 -0
  248. package/dist/hooks/processors/index.d.ts +2 -0
  249. package/dist/hooks/processors/index.d.ts.map +1 -0
  250. package/dist/hooks/processors/index.js +40 -0
  251. package/dist/hooks/processors/index.js.map +1 -0
  252. package/dist/hooks/processors/use-processors.d.ts +64 -0
  253. package/dist/hooks/processors/use-processors.d.ts.map +1 -0
  254. package/dist/hooks/prompt-blocks/index.cjs +181 -0
  255. package/dist/hooks/prompt-blocks/index.cjs.map +1 -0
  256. package/dist/hooks/prompt-blocks/index.d.ts +3 -0
  257. package/dist/hooks/prompt-blocks/index.d.ts.map +1 -0
  258. package/dist/hooks/prompt-blocks/index.js +172 -0
  259. package/dist/hooks/prompt-blocks/index.js.map +1 -0
  260. package/dist/hooks/prompt-blocks/use-prompt-block-versions.d.ts +59 -0
  261. package/dist/hooks/prompt-blocks/use-prompt-block-versions.d.ts.map +1 -0
  262. package/dist/hooks/prompt-blocks/use-stored-prompt-blocks.d.ts +180 -0
  263. package/dist/hooks/prompt-blocks/use-stored-prompt-blocks.d.ts.map +1 -0
  264. package/dist/hooks/query/index.cjs +34 -0
  265. package/dist/hooks/query/index.cjs.map +1 -0
  266. package/dist/hooks/query/index.d.ts +4 -0
  267. package/dist/hooks/query/index.d.ts.map +1 -0
  268. package/dist/hooks/query/index.js +25 -0
  269. package/dist/hooks/query/index.js.map +1 -0
  270. package/dist/hooks/query/query-client-provider.d.ts +8 -0
  271. package/dist/hooks/query/query-client-provider.d.ts.map +1 -0
  272. package/dist/hooks/query/query-utils.d.ts +48 -0
  273. package/dist/hooks/query/query-utils.d.ts.map +1 -0
  274. package/dist/hooks/review/index.cjs +89 -0
  275. package/dist/hooks/review/index.cjs.map +1 -0
  276. package/dist/hooks/review/index.d.ts +4 -0
  277. package/dist/hooks/review/index.d.ts.map +1 -0
  278. package/dist/hooks/review/index.js +86 -0
  279. package/dist/hooks/review/index.js.map +1 -0
  280. package/dist/hooks/review/types.d.ts +21 -0
  281. package/dist/hooks/review/types.d.ts.map +1 -0
  282. package/dist/hooks/review/use-dataset-review-items.d.ts +19 -0
  283. package/dist/hooks/review/use-dataset-review-items.d.ts.map +1 -0
  284. package/dist/hooks/review/use-review-summary.d.ts +9 -0
  285. package/dist/hooks/review/use-review-summary.d.ts.map +1 -0
  286. package/dist/hooks/schedules/index.cjs +110 -0
  287. package/dist/hooks/schedules/index.cjs.map +1 -0
  288. package/dist/hooks/schedules/index.d.ts +5 -0
  289. package/dist/hooks/schedules/index.d.ts.map +1 -0
  290. package/dist/hooks/schedules/index.js +106 -0
  291. package/dist/hooks/schedules/index.js.map +1 -0
  292. package/dist/hooks/schedules/use-schedule-triggers.d.ts +18 -0
  293. package/dist/hooks/schedules/use-schedule-triggers.d.ts.map +1 -0
  294. package/dist/hooks/schedules/use-schedule.d.ts +11 -0
  295. package/dist/hooks/schedules/use-schedule.d.ts.map +1 -0
  296. package/dist/hooks/schedules/use-schedules.d.ts +7 -0
  297. package/dist/hooks/schedules/use-schedules.d.ts.map +1 -0
  298. package/dist/hooks/schedules/use-toggle-schedule.d.ts +13 -0
  299. package/dist/hooks/schedules/use-toggle-schedule.d.ts.map +1 -0
  300. package/dist/hooks/scores/index.cjs +339 -0
  301. package/dist/hooks/scores/index.cjs.map +1 -0
  302. package/dist/hooks/scores/index.d.ts +6 -0
  303. package/dist/hooks/scores/index.d.ts.map +1 -0
  304. package/dist/hooks/scores/index.js +323 -0
  305. package/dist/hooks/scores/index.js.map +1 -0
  306. package/dist/hooks/scores/use-scorer-versions.d.ts +71 -0
  307. package/dist/hooks/scores/use-scorer-versions.d.ts.map +1 -0
  308. package/dist/hooks/scores/use-scorers.d.ts +34 -0
  309. package/dist/hooks/scores/use-scorers.d.ts.map +1 -0
  310. package/dist/hooks/scores/use-stored-scorers.d.ts +151 -0
  311. package/dist/hooks/scores/use-stored-scorers.d.ts.map +1 -0
  312. package/dist/hooks/scores/use-trace-span-scores.d.ts +20 -0
  313. package/dist/hooks/scores/use-trace-span-scores.d.ts.map +1 -0
  314. package/dist/hooks/scores/use-trigger-scorer.d.ts +17 -0
  315. package/dist/hooks/scores/use-trigger-scorer.d.ts.map +1 -0
  316. package/dist/hooks/shared/cost.d.ts +7 -0
  317. package/dist/hooks/shared/cost.d.ts.map +1 -0
  318. package/dist/hooks/shared/date-format.d.ts +30 -0
  319. package/dist/hooks/shared/date-format.d.ts.map +1 -0
  320. package/dist/hooks/shared/map.d.ts +2 -0
  321. package/dist/hooks/shared/map.d.ts.map +1 -0
  322. package/dist/hooks/shared/query-options.d.ts +19 -0
  323. package/dist/hooks/shared/query-options.d.ts.map +1 -0
  324. package/dist/hooks/shared/use-in-view.d.ts +23 -0
  325. package/dist/hooks/shared/use-in-view.d.ts.map +1 -0
  326. package/dist/hooks/templates/index.cjs +464 -0
  327. package/dist/hooks/templates/index.cjs.map +1 -0
  328. package/dist/hooks/templates/index.d.ts +2 -0
  329. package/dist/hooks/templates/index.d.ts.map +1 -0
  330. package/dist/hooks/templates/index.js +456 -0
  331. package/dist/hooks/templates/index.js.map +1 -0
  332. package/dist/hooks/templates/use-templates.d.ts +139 -0
  333. package/dist/hooks/templates/use-templates.d.ts.map +1 -0
  334. package/dist/hooks/tool-providers/index.cjs +342 -0
  335. package/dist/hooks/tool-providers/index.cjs.map +1 -0
  336. package/dist/hooks/tool-providers/index.d.ts +10 -0
  337. package/dist/hooks/tool-providers/index.d.ts.map +1 -0
  338. package/dist/hooks/tool-providers/index.js +332 -0
  339. package/dist/hooks/tool-providers/index.js.map +1 -0
  340. package/dist/hooks/tool-providers/use-all-connections.d.ts +41 -0
  341. package/dist/hooks/tool-providers/use-all-connections.d.ts.map +1 -0
  342. package/dist/hooks/tool-providers/use-all-provider-tools.d.ts +25 -0
  343. package/dist/hooks/tool-providers/use-all-provider-tools.d.ts.map +1 -0
  344. package/dist/hooks/tool-providers/use-authorize.d.ts +45 -0
  345. package/dist/hooks/tool-providers/use-authorize.d.ts.map +1 -0
  346. package/dist/hooks/tool-providers/use-disconnect-connection.d.ts +24 -0
  347. package/dist/hooks/tool-providers/use-disconnect-connection.d.ts.map +1 -0
  348. package/dist/hooks/tool-providers/use-existing-connections.d.ts +33 -0
  349. package/dist/hooks/tool-providers/use-existing-connections.d.ts.map +1 -0
  350. package/dist/hooks/tool-providers/use-provider-tools.d.ts +17 -0
  351. package/dist/hooks/tool-providers/use-provider-tools.d.ts.map +1 -0
  352. package/dist/hooks/tool-providers/use-tool-providers.d.ts +23 -0
  353. package/dist/hooks/tool-providers/use-tool-providers.d.ts.map +1 -0
  354. package/dist/hooks/tool-providers/use-toolkits.d.ts +13 -0
  355. package/dist/hooks/tool-providers/use-toolkits.d.ts.map +1 -0
  356. package/dist/hooks/tool-providers/use-update-connection.d.ts +24 -0
  357. package/dist/hooks/tool-providers/use-update-connection.d.ts.map +1 -0
  358. package/dist/hooks/tools/index.cjs +49 -0
  359. package/dist/hooks/tools/index.cjs.map +1 -0
  360. package/dist/hooks/tools/index.d.ts +3 -0
  361. package/dist/hooks/tools/index.d.ts.map +1 -0
  362. package/dist/hooks/tools/index.js +46 -0
  363. package/dist/hooks/tools/index.js.map +1 -0
  364. package/dist/hooks/tools/use-all-tools.d.ts +16 -0
  365. package/dist/hooks/tools/use-all-tools.d.ts.map +1 -0
  366. package/dist/hooks/tools/use-execute-tool.d.ts +13 -0
  367. package/dist/hooks/tools/use-execute-tool.d.ts.map +1 -0
  368. package/dist/hooks/traces/discovery-cache.d.ts +12 -0
  369. package/dist/hooks/traces/discovery-cache.d.ts.map +1 -0
  370. package/dist/hooks/traces/index.cjs +1168 -0
  371. package/dist/hooks/traces/index.cjs.map +1 -0
  372. package/dist/hooks/traces/index.d.ts +22 -0
  373. package/dist/hooks/traces/index.d.ts.map +1 -0
  374. package/dist/hooks/traces/index.js +1129 -0
  375. package/dist/hooks/traces/index.js.map +1 -0
  376. package/dist/hooks/traces/types.d.ts +20 -0
  377. package/dist/hooks/traces/types.d.ts.map +1 -0
  378. package/dist/hooks/traces/use-branch.d.ts +18 -0
  379. package/dist/hooks/traces/use-branch.d.ts.map +1 -0
  380. package/dist/hooks/traces/use-create-feedback.d.ts +21 -0
  381. package/dist/hooks/traces/use-create-feedback.d.ts.map +1 -0
  382. package/dist/hooks/traces/use-delete-feedback.d.ts +21 -0
  383. package/dist/hooks/traces/use-delete-feedback.d.ts.map +1 -0
  384. package/dist/hooks/traces/use-entity-names.d.ts +14 -0
  385. package/dist/hooks/traces/use-entity-names.d.ts.map +1 -0
  386. package/dist/hooks/traces/use-environments.d.ts +10 -0
  387. package/dist/hooks/traces/use-environments.d.ts.map +1 -0
  388. package/dist/hooks/traces/use-service-names.d.ts +10 -0
  389. package/dist/hooks/traces/use-service-names.d.ts.map +1 -0
  390. package/dist/hooks/traces/use-span-detail.d.ts +14 -0
  391. package/dist/hooks/traces/use-span-detail.d.ts.map +1 -0
  392. package/dist/hooks/traces/use-span-feedback.d.ts +19 -0
  393. package/dist/hooks/traces/use-span-feedback.d.ts.map +1 -0
  394. package/dist/hooks/traces/use-tags.d.ts +10 -0
  395. package/dist/hooks/traces/use-tags.d.ts.map +1 -0
  396. package/dist/hooks/traces/use-thread-has-other-traces.d.ts +17 -0
  397. package/dist/hooks/traces/use-thread-has-other-traces.d.ts.map +1 -0
  398. package/dist/hooks/traces/use-trace-column-preferences-storage-key.d.ts +6 -0
  399. package/dist/hooks/traces/use-trace-column-preferences-storage-key.d.ts.map +1 -0
  400. package/dist/hooks/traces/use-trace-feedback.d.ts +16 -0
  401. package/dist/hooks/traces/use-trace-feedback.d.ts.map +1 -0
  402. package/dist/hooks/traces/use-trace-light-spans.d.ts +16 -0
  403. package/dist/hooks/traces/use-trace-light-spans.d.ts.map +1 -0
  404. package/dist/hooks/traces/use-trace-metadata-filter-fields.d.ts +36 -0
  405. package/dist/hooks/traces/use-trace-metadata-filter-fields.d.ts.map +1 -0
  406. package/dist/hooks/traces/use-trace-or-branch-spans.d.ts +39 -0
  407. package/dist/hooks/traces/use-trace-or-branch-spans.d.ts.map +1 -0
  408. package/dist/hooks/traces/use-trace-query.d.ts +57 -0
  409. package/dist/hooks/traces/use-trace-query.d.ts.map +1 -0
  410. package/dist/hooks/traces/use-trace-spans.d.ts +46 -0
  411. package/dist/hooks/traces/use-trace-spans.d.ts.map +1 -0
  412. package/dist/hooks/traces/use-trace-usage.d.ts +10 -0
  413. package/dist/hooks/traces/use-trace-usage.d.ts.map +1 -0
  414. package/dist/hooks/traces/use-traces.d.ts +292 -0
  415. package/dist/hooks/traces/use-traces.d.ts.map +1 -0
  416. package/dist/hooks/vectors/index.cjs +19 -0
  417. package/dist/hooks/vectors/index.cjs.map +1 -0
  418. package/dist/hooks/vectors/index.d.ts +2 -0
  419. package/dist/hooks/vectors/index.d.ts.map +1 -0
  420. package/dist/hooks/vectors/index.js +18 -0
  421. package/dist/hooks/vectors/index.js.map +1 -0
  422. package/dist/hooks/vectors/use-vectors.d.ts +14 -0
  423. package/dist/hooks/vectors/use-vectors.d.ts.map +1 -0
  424. package/dist/hooks/voice/index.cjs +87 -0
  425. package/dist/hooks/voice/index.cjs.map +1 -0
  426. package/dist/hooks/voice/index.d.ts +2 -0
  427. package/dist/hooks/voice/index.d.ts.map +1 -0
  428. package/dist/hooks/voice/index.js +86 -0
  429. package/dist/hooks/voice/index.js.map +1 -0
  430. package/dist/hooks/voice/use-read-aloud.d.ts +20 -0
  431. package/dist/hooks/voice/use-read-aloud.d.ts.map +1 -0
  432. package/dist/hooks/workflows/index.cjs +173 -0
  433. package/dist/hooks/workflows/index.cjs.map +1 -0
  434. package/dist/hooks/workflows/index.d.ts +7 -0
  435. package/dist/hooks/workflows/index.d.ts.map +1 -0
  436. package/dist/hooks/workflows/index.js +157 -0
  437. package/dist/hooks/workflows/index.js.map +1 -0
  438. package/dist/hooks/workflows/use-workflow-runs.d.ts +51 -0
  439. package/dist/hooks/workflows/use-workflow-runs.d.ts.map +1 -0
  440. package/dist/hooks/workflows/use-workflow.d.ts +14 -0
  441. package/dist/hooks/workflows/use-workflow.d.ts.map +1 -0
  442. package/dist/hooks/workflows/use-workflows-run-counts.d.ts +25 -0
  443. package/dist/hooks/workflows/use-workflows-run-counts.d.ts.map +1 -0
  444. package/dist/hooks/workflows/use-workflows.d.ts +10 -0
  445. package/dist/hooks/workflows/use-workflows.d.ts.map +1 -0
  446. package/dist/hooks/workspace/client-utils.d.ts +5 -0
  447. package/dist/hooks/workspace/client-utils.d.ts.map +1 -0
  448. package/dist/hooks/workspace/compatibility.d.ts +22 -0
  449. package/dist/hooks/workspace/compatibility.d.ts.map +1 -0
  450. package/dist/hooks/workspace/file-type.d.ts +7 -0
  451. package/dist/hooks/workspace/file-type.d.ts.map +1 -0
  452. package/dist/hooks/workspace/index.cjs +624 -0
  453. package/dist/hooks/workspace/index.cjs.map +1 -0
  454. package/dist/hooks/workspace/index.d.ts +11 -0
  455. package/dist/hooks/workspace/index.d.ts.map +1 -0
  456. package/dist/hooks/workspace/index.js +594 -0
  457. package/dist/hooks/workspace/index.js.map +1 -0
  458. package/dist/hooks/workspace/types.d.ts +199 -0
  459. package/dist/hooks/workspace/types.d.ts.map +1 -0
  460. package/dist/hooks/workspace/use-skills-sh.d.ts +104 -0
  461. package/dist/hooks/workspace/use-skills-sh.d.ts.map +1 -0
  462. package/dist/hooks/workspace/use-stored-workspaces.d.ts +12 -0
  463. package/dist/hooks/workspace/use-stored-workspaces.d.ts.map +1 -0
  464. package/dist/hooks/workspace/use-workspace-directory.d.ts +13 -0
  465. package/dist/hooks/workspace/use-workspace-directory.d.ts.map +1 -0
  466. package/dist/hooks/workspace/use-workspace-file-content.d.ts +15 -0
  467. package/dist/hooks/workspace/use-workspace-file-content.d.ts.map +1 -0
  468. package/dist/hooks/workspace/use-workspace-search.d.ts +20 -0
  469. package/dist/hooks/workspace/use-workspace-search.d.ts.map +1 -0
  470. package/dist/hooks/workspace/use-workspace-skills.d.ts +23 -0
  471. package/dist/hooks/workspace/use-workspace-skills.d.ts.map +1 -0
  472. package/dist/hooks/workspace/use-workspace.d.ts +56 -0
  473. package/dist/hooks/workspace/use-workspace.d.ts.map +1 -0
  474. package/dist/hooks-BFQK_s4g.js +1231 -0
  475. package/dist/hooks-BFQK_s4g.js.map +1 -0
  476. package/dist/hooks-CMjizg6y.cjs +1248 -0
  477. package/dist/hooks-CMjizg6y.cjs.map +1 -0
  478. package/dist/hooks-CjULNHpJ.js +252 -0
  479. package/dist/hooks-CjULNHpJ.js.map +1 -0
  480. package/dist/hooks-DsDYaJ3T.cjs +269 -0
  481. package/dist/hooks-DsDYaJ3T.cjs.map +1 -0
  482. package/dist/index.cjs +21 -3434
  483. package/dist/index.cjs.map +1 -1
  484. package/dist/index.d.ts +1 -0
  485. package/dist/index.d.ts.map +1 -1
  486. package/dist/index.js +6 -3419
  487. package/dist/index.js.map +1 -1
  488. package/dist/lib/mastra-db/fromCoreUserMessage.d.ts +3 -4
  489. package/dist/lib/mastra-db/fromCoreUserMessage.d.ts.map +1 -1
  490. package/dist/map-CDv4fbu4.js +12 -0
  491. package/dist/map-CDv4fbu4.js.map +1 -0
  492. package/dist/map-wjmL1y5O.cjs +17 -0
  493. package/dist/map-wjmL1y5O.cjs.map +1 -0
  494. package/dist/mastra-client-context-Bx_g84YB.js +50 -0
  495. package/dist/mastra-client-context-Bx_g84YB.js.map +1 -0
  496. package/dist/mastra-client-context-DzX3f0RF.cjs +61 -0
  497. package/dist/mastra-client-context-DzX3f0RF.cjs.map +1 -0
  498. package/dist/query-utils-CcrChYgz.cjs +174 -0
  499. package/dist/query-utils-CcrChYgz.cjs.map +1 -0
  500. package/dist/query-utils-D1NgFnWU.js +127 -0
  501. package/dist/query-utils-D1NgFnWU.js.map +1 -0
  502. package/dist/use-in-view-B6eJO9Zi.cjs +37 -0
  503. package/dist/use-in-view-B6eJO9Zi.cjs.map +1 -0
  504. package/dist/use-in-view-C9sYPGRm.js +32 -0
  505. package/dist/use-in-view-C9sYPGRm.js.map +1 -0
  506. package/dist/voice-BOtUdMi8.cjs +281 -0
  507. package/dist/voice-BOtUdMi8.cjs.map +1 -0
  508. package/dist/voice-DgirjEyH.js +264 -0
  509. package/dist/voice-DgirjEyH.js.map +1 -0
  510. package/package.json +32 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-trace-or-branch-spans.d.ts","sourceRoot":"","sources":["../../../src/hooks/traces/use-trace-or-branch-spans.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACnC;;2FAEuF;IACvF,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,aAAa,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,YAAY,CAAC,EAAE;QACb,KAAK,CAAC,EAAE,kBAAkB,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;QAC1F,MAAM,CAAC,EAAE,kBAAkB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;KAC7D,CAAC;CACH;AAED,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,eAAe,EAAE,GAAG,SAAS,CAAC;IACrC,wFAAwF;IACxF,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,KAAK,EACL,YAAY,GACb,EAAE,yBAAyB,GAAG,2BAA2B,CA+BzD"}
@@ -0,0 +1,57 @@
1
+ import { MastraClient } from '@mastra/client-js';
2
+ import type { QueryTracesKeysetInput, TraceQueryKeysetTraceResponse } from '@mastra/client-js';
3
+ import type { ListTracesArgs as StorageListTracesArgs } from '@mastra/core/storage';
4
+ import type { MastraInfiniteQueryOptions } from '../shared/query-options.js';
5
+ export declare const TRACE_QUERY_PER_PAGE = 25;
6
+ type TraceQueryTrace = TraceQueryKeysetTraceResponse['traces'][number];
7
+ type LegacyTraceListFilters = StorageListTracesArgs['filters'];
8
+ type ListTracesLightResponse = Awaited<ReturnType<MastraClient['listTracesLight']>>;
9
+ type LightSpanRecord = ListTracesLightResponse['spans'][number];
10
+ export type TraceQueryArgs = Omit<QueryTracesKeysetInput, 'page' | 'pagination'>;
11
+ export interface UseTraceQueryArgs {
12
+ query: TraceQueryArgs | undefined;
13
+ limit?: number;
14
+ enabled?: boolean;
15
+ /** When false, lists traces through the legacy `listTracesLight` endpoint instead of the trace-query API. */
16
+ withQueryTrace?: boolean;
17
+ /** Filters for the legacy endpoint, as built by `buildTraceListFilters`. Only read when `withQueryTrace` is false. */
18
+ legacyFilters?: LegacyTraceListFilters;
19
+ /** TanStack options spread last into the trace-query (`traceQuery`) and legacy (`legacy`) infinite queries. */
20
+ queryOptions?: {
21
+ traceQuery?: MastraInfiniteQueryOptions<TraceQueryKeysetTraceResponse, TraceQueryTrace[], readonly unknown[], string | undefined>;
22
+ legacy?: MastraInfiniteQueryOptions<ListTracesLightResponse, TraceQueryTrace[], readonly unknown[], number>;
23
+ };
24
+ }
25
+ export interface UseTraceQueryReturn {
26
+ data: TraceQueryTrace[] | undefined;
27
+ hasNextPage: boolean;
28
+ isFetchingNextPage: boolean;
29
+ fetchNextPage: () => void;
30
+ isLoading: boolean;
31
+ /** The rows belong to the previous query key (e.g. another thread) while the new one loads. */
32
+ isPlaceholderData: boolean;
33
+ isFetching: boolean;
34
+ isRefetching: boolean;
35
+ fetchStatus: 'idle' | 'fetching' | 'paused';
36
+ isError: boolean;
37
+ error: Error | null;
38
+ refetch: () => void;
39
+ setEndOfListElement: (node: HTMLDivElement | null) => void;
40
+ }
41
+ export declare function getTraceQueryNextPageParam(lastPage: TraceQueryKeysetTraceResponse | undefined): string | undefined;
42
+ export declare function selectTraceQueryTraces(data: {
43
+ pages: TraceQueryKeysetTraceResponse[];
44
+ }): TraceQueryTrace[];
45
+ /** Maps a legacy light root span to a trace-query row. The light record carries no
46
+ * environment, so it stays null. Running spans have no `endedAt` and may carry a
47
+ * status outside the query API's enum; both are kept as-is (the list view handles them), hence the
48
+ * assertion at this compatibility boundary. */
49
+ export declare function lightSpanToTraceQueryTrace(span: LightSpanRecord): TraceQueryTrace;
50
+ export declare function selectLegacyTraceQueryTraces(data: {
51
+ pages: ListTracesLightResponse[];
52
+ }): TraceQueryTrace[];
53
+ export declare function getLegacyTraceQueryNextPageParam(lastPage: ListTracesLightResponse): number | undefined;
54
+ /** Queries traces with cursor pagination and viewport-driven loading. */
55
+ export declare function useTraceQuery({ query, limit, enabled, withQueryTrace, legacyFilters, queryOptions, }: UseTraceQueryArgs): UseTraceQueryReturn;
56
+ export {};
57
+ //# sourceMappingURL=use-trace-query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-trace-query.d.ts","sourceRoot":"","sources":["../../../src/hooks/traces/use-trace-query.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import type { MastraClient } from '@mastra/client-js';
2
+ import type { UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
3
+ import type { MastraQueryOptions } from '../shared/query-options.js';
4
+ /**
5
+ * Key, fetcher and stale policy of the `trace-spans` query. Every observer of this key must
6
+ * share these (rather than only the key) so one observer with a stricter `staleTime` does not
7
+ * refetch data another one considers fresh.
8
+ */
9
+ type TraceResponse = Awaited<ReturnType<MastraClient['getTrace']>>;
10
+ export declare const traceSpansQueryOptions: (client: MastraClient, traceId: string | null | undefined) => UseQueryOptions<TraceResponse, Error, TraceResponse, (string | null | undefined)[]>;
11
+ /**
12
+ * Every span of a single trace, with its full payload.
13
+ *
14
+ * The lightweight projection exists to keep blob columns off the read path of a
15
+ * *list*, where the cost is paid once per trace on screen. A trace that is open
16
+ * has already narrowed that to one, and the panel both renders and searches
17
+ * these spans -- `input`, `output` and `attributes` included -- so the
18
+ * projection would only hide content the reader is looking at.
19
+ */
20
+ export type TraceSpansData = Awaited<ReturnType<MastraClient['getTrace']>>;
21
+ /**
22
+ * Does not guard on empty ids; pass `queryOptions: { enabled }` to skip the fetch.
23
+ */
24
+ export declare function useTraceSpans<TData = TraceSpansData>({ traceId, passive, queryOptions, }: {
25
+ traceId: string | null | undefined;
26
+ passive?: boolean;
27
+ queryOptions?: MastraQueryOptions<TraceSpansData, TData, (string | null | undefined)[]>;
28
+ }): UseQueryResult<TData>;
29
+ /**
30
+ * Returns a function that loads a full trace through the shared `trace-spans` cache, so an
31
+ * imperative read (e.g. an export) and the trace panel always see the same payload.
32
+ */
33
+ export declare function useFetchTraceSpans(): (traceId: string) => Promise<TraceSpansData>;
34
+ /**
35
+ * Observes the `trace-spans` query of several traces at once and projects each one with `select`.
36
+ * Traces still loading (or failed) yield `fallback(traceId)` so the result always lines up with `traceIds`.
37
+ */
38
+ export declare function useTraceSpansQueries<T>({ traceIds, select, fallback, queryOptions, }: {
39
+ traceIds: string[];
40
+ select: (traceId: string, data: TraceSpansData) => T;
41
+ fallback: (traceId: string) => T;
42
+ /** Applied to every per-trace query. */
43
+ queryOptions?: MastraQueryOptions<TraceSpansData, T, (string | null | undefined)[]>;
44
+ }): T[];
45
+ export {};
46
+ //# sourceMappingURL=use-trace-spans.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-trace-spans.d.ts","sourceRoot":"","sources":["../../../src/hooks/traces/use-trace-spans.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE;;;;GAIG;AACH,KAAK,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAEnE,eAAO,MAAM,sBAAsB,WACzB,YAAY,WACX,MAAM,GAAG,IAAI,GAAG,SAAS,KACjC,eAAe,CAAC,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,CAYjF,CAAC;AAEL;;;;;;;;GAQG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAE3E;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,GAAG,cAAc,EAAE,EACpD,OAAO,EACP,OAAe,EACf,YAAY,GACb,EAAE;IACD,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,kBAAkB,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;CACzF,GAAG,cAAc,CAAC,KAAK,CAAC,CAgBxB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAKjF;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,EACtC,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,YAAY,GACb,EAAE;IACD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,KAAK,CAAC,CAAC;IACrD,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,CAAC;IACjC,wCAAwC;IACxC,YAAY,CAAC,EAAE,kBAAkB,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;CACrF,GAAG,CAAC,EAAE,CAiBN"}
@@ -0,0 +1,10 @@
1
+ import type { UseQueryResult } from '@tanstack/react-query';
2
+ import type { MastraQueryOptions } from '../shared/query-options.js';
3
+ import type { TraceUsageSummary } from './types.js';
4
+ export declare function useTraceUsage<TData = Map<string, TraceUsageSummary>>({ traceIds, enabled, autoRefetch, queryOptions, }: {
5
+ traceIds: readonly string[];
6
+ enabled: boolean;
7
+ autoRefetch: boolean;
8
+ queryOptions?: MastraQueryOptions<Map<string, TraceUsageSummary>, TData>;
9
+ }): UseQueryResult<TData, Error>;
10
+ //# sourceMappingURL=use-trace-usage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-trace-usage.d.ts","sourceRoot":"","sources":["../../../src/hooks/traces/use-trace-usage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAI5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAwEjD,wBAAgB,aAAa,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,EAAE,EACpE,QAAQ,EACR,OAAO,EACP,WAAW,EACX,YAAY,GACb,EAAE;IACD,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,EAAE,KAAK,CAAC,CAAC;CAC1E,GAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAqC/B"}
@@ -0,0 +1,292 @@
1
+ import type { MastraClient } from '@mastra/client-js';
2
+ import type { InfiniteData } from '@tanstack/react-query';
3
+ import { useMastraClient } from '../../mastra-client-context.js';
4
+ import type { MastraInfiniteQueryOptions, MastraQueryOptions } from '../shared/query-options.js';
5
+ import type { TraceListMode } from './types.js';
6
+ type ListBranchesArgs = NonNullable<Parameters<MastraClient['listBranches']>[0]>;
7
+ type ListBranchesResponse = Awaited<ReturnType<MastraClient['listBranches']>>;
8
+ type ListTracesArgs = NonNullable<Parameters<MastraClient['listTraces']>[0]>;
9
+ type ListTracesLightResponse = Awaited<ReturnType<MastraClient['listTracesLight']>>;
10
+ type LightSpanRecord = ListTracesLightResponse['spans'][number] | ListBranchesResponse['branches'][number];
11
+ /** Tunables for live-tail polling. All fields optional — defaults below.
12
+ * Platform consumers override individual fields to throttle traffic or
13
+ * reshape the freshness/visibility trade-offs. */
14
+ export interface TracesPollingConfig {
15
+ /** Interval between delta polls. Default 5_000ms. */
16
+ deltaPollIntervalMs?: number;
17
+ /** Refetch delay when the server signals `delta.hasMore` (chase remaining updates immediately). Default 100ms. */
18
+ deltaChaseIntervalMs?: number;
19
+ /** Max rows per delta poll. Server caps at 100. Default 100. */
20
+ deltaLimit?: number;
21
+ /** Page-mode refetch interval used when the configured store does not support delta polling. Default 10_000ms. */
22
+ pageModeRefetchIntervalMs?: number;
23
+ /** Periodic page-0 refetch interval while delta is active. Delta only delivers new rows, so this
24
+ * is how we surface status flips (running → success/error) on rows already visible. Default 60_000ms. */
25
+ page0StatusRefreshIntervalMs?: number;
26
+ /** When the tab returns from being hidden and the last successful poll was older than this, the
27
+ * cursor is treated as stale (ClickHouse delta tables TTL after 2 days; other stores may be more
28
+ * aggressive). The infinite query is reset so page 0 refetches and delta resumes from a fresh
29
+ * cursor. Default 900_000ms (15 min). */
30
+ idleGuardThresholdMs?: number;
31
+ /** Minimum visible duration for `isRefetching` after any query completes. On localhost a delta
32
+ * poll can resolve in tens of ms — too brief for the spinner's 1s rotation to register visually,
33
+ * and quick enough that React may batch the start/finish transitions. Pulsing for this duration
34
+ * on completion (~144° of rotation at 400ms) makes each poll perceptible as a heartbeat.
35
+ * Default 400ms. */
36
+ minRefetchSpinMs?: number;
37
+ /** Window during which a delta-arrived row's key stays in `recentlyAddedKeys` so the list view
38
+ * can apply its `animate-row-highlight` class. Should match the CSS animation duration
39
+ * (currently 1_000ms — see `index.css`). Default 1_000ms. */
40
+ deltaHighlightMs?: number;
41
+ }
42
+ /** Returns true when the cursor should be considered stale and re-seeded.
43
+ * Exported for testing — pure function of timestamps. */
44
+ export declare function shouldResetAfterIdle(lastSuccessAt: number, now: number, thresholdMs: number): boolean;
45
+ /** Whether a failed light-list request should pin the session to the full endpoint.
46
+ * `firstServerErrorAt` is undefined when this 500 opens a new run of them, so a single
47
+ * fault never pins. Exported for testing — pure function of the status and timestamps. */
48
+ export declare function shouldPinLightList(status: number | undefined, firstServerErrorAt: number | undefined, now: number): boolean;
49
+ type FetchTracesFnArgs = TracesFilters & {
50
+ client: ReturnType<typeof useMastraClient>;
51
+ } & ({
52
+ mode: 'delta';
53
+ after?: string;
54
+ limit?: number;
55
+ } | {
56
+ mode?: 'page';
57
+ page: number;
58
+ perPage: number;
59
+ });
60
+ declare const fetchTracesFn: (args: FetchTracesFnArgs) => Promise<{
61
+ pagination?: {
62
+ total: number;
63
+ page: number;
64
+ perPage: number | false;
65
+ hasMore: boolean;
66
+ } | undefined;
67
+ delta?: {
68
+ limit: number;
69
+ hasMore: boolean;
70
+ } | undefined;
71
+ deltaCursor?: string | undefined;
72
+ branches: {
73
+ traceId: string;
74
+ spanId: string;
75
+ name: string;
76
+ spanType: "agent_run" | "agent_signal" | "classifier_evaluation" | "client_tool_call" | "generic" | "graph_action" | "mapping" | "mcp_server_request" | "mcp_tool_call" | "memory_operation" | "model_chunk" | "model_generation" | "model_inference" | "model_step" | "processor_run" | "provider_tool_call" | "rag_action" | "rag_embedding" | "rag_ingestion" | "rag_vector_operation" | "scorer_run" | "scorer_step" | "skill_action" | "skill_resolution" | "tool_call" | "workflow_conditional" | "workflow_conditional_eval" | "workflow_loop" | "workflow_parallel" | "workflow_run" | "workflow_sleep" | "workflow_step" | "workflow_wait_event" | "workspace_action";
77
+ isEvent: boolean;
78
+ startedAt: string;
79
+ parentSpanId?: (string | null) | undefined;
80
+ entityType?: (("agent" | "input_processor" | "input_step_processor" | "mcp_server" | "memory" | "output_processor" | "output_step_processor" | "rag_ingestion" | "scorer" | "tool" | "tool_result_processor" | "trajectory" | "workflow_run" | "workflow_step") | null) | undefined;
81
+ entityId?: (string | null) | undefined;
82
+ entityName?: (string | null) | undefined;
83
+ parentEntityType?: (("agent" | "input_processor" | "input_step_processor" | "mcp_server" | "memory" | "output_processor" | "output_step_processor" | "rag_ingestion" | "scorer" | "tool" | "tool_result_processor" | "trajectory" | "workflow_run" | "workflow_step") | null) | undefined;
84
+ parentEntityId?: (string | null) | undefined;
85
+ parentEntityName?: (string | null) | undefined;
86
+ rootEntityType?: (("agent" | "input_processor" | "input_step_processor" | "mcp_server" | "memory" | "output_processor" | "output_step_processor" | "rag_ingestion" | "scorer" | "tool" | "tool_result_processor" | "trajectory" | "workflow_run" | "workflow_step") | null) | undefined;
87
+ rootEntityId?: (string | null) | undefined;
88
+ rootEntityName?: (string | null) | undefined;
89
+ userId?: (string | null) | undefined;
90
+ organizationId?: (string | null) | undefined;
91
+ resourceId?: (string | null) | undefined;
92
+ runId?: (string | null) | undefined;
93
+ sessionId?: (string | null) | undefined;
94
+ threadId?: (string | null) | undefined;
95
+ requestId?: (string | null) | undefined;
96
+ environment?: (string | null) | undefined;
97
+ serviceName?: (string | null) | undefined;
98
+ scope?: ({
99
+ [key: string]: unknown;
100
+ } | null) | undefined;
101
+ entityVersionId?: (string | null) | undefined;
102
+ parentEntityVersionId?: (string | null) | undefined;
103
+ rootEntityVersionId?: (string | null) | undefined;
104
+ experimentId?: (string | null) | undefined;
105
+ source?: (string | null) | undefined;
106
+ metadata?: ({
107
+ [key: string]: unknown;
108
+ } | null) | undefined;
109
+ tags?: (string[] | null) | undefined;
110
+ attributes?: ({
111
+ [key: string]: unknown;
112
+ } | null) | undefined;
113
+ links?: (unknown[] | null) | undefined;
114
+ input?: (unknown | null) | undefined;
115
+ output?: (unknown | null) | undefined;
116
+ error?: (unknown | null) | undefined;
117
+ endedAt?: string | null | undefined;
118
+ requestContext?: ({
119
+ [key: string]: unknown;
120
+ } | null) | undefined;
121
+ createdAt: string;
122
+ updatedAt: string | null;
123
+ status: 'success' | 'error' | 'running';
124
+ }[];
125
+ } | {
126
+ pagination?: {
127
+ total: number;
128
+ page: number;
129
+ perPage: number | false;
130
+ hasMore: boolean;
131
+ } | undefined;
132
+ delta?: {
133
+ limit: number;
134
+ hasMore: boolean;
135
+ } | undefined;
136
+ deltaCursor?: string | undefined;
137
+ spans: {
138
+ traceId: string;
139
+ spanId: string;
140
+ name: string;
141
+ spanType: "agent_run" | "agent_signal" | "classifier_evaluation" | "client_tool_call" | "generic" | "graph_action" | "mapping" | "mcp_server_request" | "mcp_tool_call" | "memory_operation" | "model_chunk" | "model_generation" | "model_inference" | "model_step" | "processor_run" | "provider_tool_call" | "rag_action" | "rag_embedding" | "rag_ingestion" | "rag_vector_operation" | "scorer_run" | "scorer_step" | "skill_action" | "skill_resolution" | "tool_call" | "workflow_conditional" | "workflow_conditional_eval" | "workflow_loop" | "workflow_parallel" | "workflow_run" | "workflow_sleep" | "workflow_step" | "workflow_wait_event" | "workspace_action";
142
+ isEvent: boolean;
143
+ startedAt: string;
144
+ parentSpanId?: (string | null) | undefined;
145
+ endedAt?: string | null | undefined;
146
+ error?: (unknown | null) | undefined;
147
+ status?: (('success' | 'error' | 'running') | null) | undefined;
148
+ entityType?: (("agent" | "input_processor" | "input_step_processor" | "mcp_server" | "memory" | "output_processor" | "output_step_processor" | "rag_ingestion" | "scorer" | "tool" | "tool_result_processor" | "trajectory" | "workflow_run" | "workflow_step") | null) | undefined;
149
+ entityId?: (string | null) | undefined;
150
+ entityName?: (string | null) | undefined;
151
+ threadId?: ((string | null) | undefined) | null;
152
+ resourceId?: ((string | null) | undefined) | null;
153
+ metadata?: ({
154
+ [key: string]: unknown;
155
+ } | null) | undefined;
156
+ inputPreview?: (string | null) | undefined;
157
+ createdAt: string;
158
+ updatedAt: string | null;
159
+ }[];
160
+ } | {
161
+ pagination?: {
162
+ total: number;
163
+ page: number;
164
+ perPage: number | false;
165
+ hasMore: boolean;
166
+ } | undefined;
167
+ delta?: {
168
+ limit: number;
169
+ hasMore: boolean;
170
+ } | undefined;
171
+ deltaCursor?: string | undefined;
172
+ spans: {
173
+ traceId: string;
174
+ spanId: string;
175
+ name: string;
176
+ spanType: "agent_run" | "agent_signal" | "classifier_evaluation" | "client_tool_call" | "generic" | "graph_action" | "mapping" | "mcp_server_request" | "mcp_tool_call" | "memory_operation" | "model_chunk" | "model_generation" | "model_inference" | "model_step" | "processor_run" | "provider_tool_call" | "rag_action" | "rag_embedding" | "rag_ingestion" | "rag_vector_operation" | "scorer_run" | "scorer_step" | "skill_action" | "skill_resolution" | "tool_call" | "workflow_conditional" | "workflow_conditional_eval" | "workflow_loop" | "workflow_parallel" | "workflow_run" | "workflow_sleep" | "workflow_step" | "workflow_wait_event" | "workspace_action";
177
+ isEvent: boolean;
178
+ startedAt: string;
179
+ parentSpanId?: (string | null) | undefined;
180
+ entityType?: (("agent" | "input_processor" | "input_step_processor" | "mcp_server" | "memory" | "output_processor" | "output_step_processor" | "rag_ingestion" | "scorer" | "tool" | "tool_result_processor" | "trajectory" | "workflow_run" | "workflow_step") | null) | undefined;
181
+ entityId?: (string | null) | undefined;
182
+ entityName?: (string | null) | undefined;
183
+ parentEntityType?: (("agent" | "input_processor" | "input_step_processor" | "mcp_server" | "memory" | "output_processor" | "output_step_processor" | "rag_ingestion" | "scorer" | "tool" | "tool_result_processor" | "trajectory" | "workflow_run" | "workflow_step") | null) | undefined;
184
+ parentEntityId?: (string | null) | undefined;
185
+ parentEntityName?: (string | null) | undefined;
186
+ rootEntityType?: (("agent" | "input_processor" | "input_step_processor" | "mcp_server" | "memory" | "output_processor" | "output_step_processor" | "rag_ingestion" | "scorer" | "tool" | "tool_result_processor" | "trajectory" | "workflow_run" | "workflow_step") | null) | undefined;
187
+ rootEntityId?: (string | null) | undefined;
188
+ rootEntityName?: (string | null) | undefined;
189
+ userId?: (string | null) | undefined;
190
+ organizationId?: (string | null) | undefined;
191
+ resourceId?: (string | null) | undefined;
192
+ runId?: (string | null) | undefined;
193
+ sessionId?: (string | null) | undefined;
194
+ threadId?: (string | null) | undefined;
195
+ requestId?: (string | null) | undefined;
196
+ environment?: (string | null) | undefined;
197
+ serviceName?: (string | null) | undefined;
198
+ scope?: ({
199
+ [key: string]: unknown;
200
+ } | null) | undefined;
201
+ entityVersionId?: (string | null) | undefined;
202
+ parentEntityVersionId?: (string | null) | undefined;
203
+ rootEntityVersionId?: (string | null) | undefined;
204
+ experimentId?: (string | null) | undefined;
205
+ source?: (string | null) | undefined;
206
+ metadata?: ({
207
+ [key: string]: unknown;
208
+ } | null) | undefined;
209
+ tags?: (string[] | null) | undefined;
210
+ attributes?: ({
211
+ [key: string]: unknown;
212
+ } | null) | undefined;
213
+ links?: (unknown[] | null) | undefined;
214
+ input?: (unknown | null) | undefined;
215
+ output?: (unknown | null) | undefined;
216
+ error?: (unknown | null) | undefined;
217
+ endedAt?: string | null | undefined;
218
+ requestContext?: ({
219
+ [key: string]: unknown;
220
+ } | null) | undefined;
221
+ createdAt: string;
222
+ updatedAt: string | null;
223
+ status: 'success' | 'error' | 'running';
224
+ }[];
225
+ }>;
226
+ export declare const TRACES_PER_PAGE = 25;
227
+ export interface TracesFilters {
228
+ filters?: ListTracesArgs['filters'] | ListBranchesArgs['filters'];
229
+ listMode?: TraceListMode;
230
+ }
231
+ /** Returns the next page number if the server indicates more pages are available. */
232
+ export declare function getTracesNextPageParam(lastPage: ListTracesLightResponse | ListBranchesResponse | undefined, _allPages: unknown, lastPageParam: number): number | undefined;
233
+ type TracesPageResponse = ListTracesLightResponse | ListBranchesResponse;
234
+ /** Deduplicates trace/branch rows by traceId + spanId across all loaded pages.
235
+ * Also surfaces page 0's deltaCursor so the live-tail query can read it reactively. */
236
+ export declare function selectUniqueTraces(data: {
237
+ pages: TracesPageResponse[];
238
+ }): {
239
+ spans: LightSpanRecord[];
240
+ deltaCursor: string | undefined;
241
+ };
242
+ /** Replaces existing page-0 rows in place (keyed by traceId:spanId) with
243
+ * refreshed copies from the server. Rows the server doesn't return are kept
244
+ * as-is so delta-accumulated rows that have aged off the server's page 0
245
+ * aren't dropped from the UI. New rows aren't added here — delta polling
246
+ * delivers those. */
247
+ export declare function refreshPage0Rows(old: InfiniteData<TracesPageResponse> | undefined, refreshed: ListTracesLightResponse | ListBranchesResponse, listMode: TraceListMode): InfiniteData<TracesPageResponse> | undefined;
248
+ /** Prepends delta-mode rows into page 0 and advances its deltaCursor.
249
+ * Delta responses come back in server cursor order (insertion order into
250
+ * the per-store delta index), not the `startedAt DESC` order page-mode
251
+ * uses — so we re-sort the merged page 0 to match what the user sees on
252
+ * a fresh page-mode load. Cross-page duplication is handled later by
253
+ * selectUniqueTraces. */
254
+ export declare function mergeDeltaIntoPage0(old: InfiniteData<TracesPageResponse> | undefined, delta: ListTracesLightResponse | ListBranchesResponse, listMode: TraceListMode): InfiniteData<TracesPageResponse> | undefined;
255
+ export interface UseTracesArgs extends TracesFilters {
256
+ enabled?: boolean;
257
+ /** Optional overrides for the live-tail polling tunables. Any omitted fields fall back to the
258
+ * built-in defaults; pass only what you want to change. */
259
+ polling?: TracesPollingConfig;
260
+ /** TanStack overrides for each underlying query, spread last. The hook consumes each query's data internally, so `select` must keep the default shape. */
261
+ queryOptions?: {
262
+ traces?: MastraInfiniteQueryOptions<TracesPageResponse, ReturnType<typeof selectUniqueTraces>, readonly ['traces', TraceListMode, TracesFilters['filters']], number>;
263
+ delta?: MastraQueryOptions<Awaited<ReturnType<typeof fetchTracesFn>> | null>;
264
+ statusRefresh?: MastraQueryOptions<Awaited<ReturnType<typeof fetchTracesFn>>>;
265
+ };
266
+ }
267
+ interface UseTracesReturn {
268
+ data: {
269
+ spans: LightSpanRecord[];
270
+ deltaCursor: string | undefined;
271
+ } | undefined;
272
+ hasNextPage: boolean;
273
+ isFetchingNextPage: boolean;
274
+ fetchNextPage: () => void;
275
+ isLoading: boolean;
276
+ isError: boolean;
277
+ error: Error | null;
278
+ setEndOfListElement: (node: HTMLDivElement | null) => void;
279
+ isRefetching: boolean;
280
+ autoRefetch: boolean;
281
+ setAutoRefetch: (v: boolean) => void;
282
+ recentlyAddedKeys: Set<string>;
283
+ dataUpdatedAt: number;
284
+ errorUpdatedAt: number;
285
+ isFetching: boolean;
286
+ isSuccess: boolean;
287
+ fetchStatus: 'idle' | 'fetching' | 'paused';
288
+ refetch: () => void;
289
+ }
290
+ export declare const useTraces: (args: UseTracesArgs) => UseTracesReturn;
291
+ export {};
292
+ //# sourceMappingURL=use-traces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-traces.d.ts","sourceRoot":"","sources":["../../../src/hooks/traces/use-traces.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_mastra_client_context = require("../../mastra-client-context-DzX3f0RF.cjs");
3
+ let _tanstack_react_query = require("@tanstack/react-query");
4
+ //#region src/hooks/vectors/use-vectors.ts
5
+ function useVectors({ queryOptions } = {}) {
6
+ const client = require_mastra_client_context.useMastraClient();
7
+ return (0, _tanstack_react_query.useQuery)({
8
+ queryKey: ["vectors"],
9
+ queryFn: async () => {
10
+ return await client.listVectors();
11
+ },
12
+ staleTime: 3e4,
13
+ ...queryOptions
14
+ });
15
+ }
16
+ //#endregion
17
+ exports.useVectors = useVectors;
18
+
19
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":["useMastraClient"],"sources":["../../../src/hooks/vectors/use-vectors.ts"],"sourcesContent":["import type { MastraClient } from '@mastra/client-js';\nimport type { UseQueryResult } from '@tanstack/react-query';\nimport { useQuery } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraQueryOptions } from '../shared/query-options';\n\nexport interface Vector {\n name: string;\n id: string;\n description?: string;\n}\n\ntype VectorsResponse = Awaited<ReturnType<MastraClient['listVectors']>>;\n\nexport function useVectors<TData = VectorsResponse>({\n queryOptions,\n}: {\n queryOptions?: MastraQueryOptions<VectorsResponse, TData>;\n} = {}): UseQueryResult<TData, Error> {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['vectors'],\n queryFn: async () => {\n const data = await client.listVectors();\n return data;\n },\n staleTime: 30000, // Cache for 30 seconds\n ...queryOptions,\n });\n}\n"],"mappings":";;;;AAcA,SAAgB,WAAoC,EAClD,iBAGE,CAAC,GAAiC;CACpC,MAAM,SAASA,8BAAAA,gBAAgB;CAE/B,QAAA,GAAA,sBAAA,SAAA,CAAgB;EACd,UAAU,CAAC,SAAS;EACpB,SAAS,YAAY;GAEnB,OAAO,MADY,OAAO,YAAY;EAExC;EACA,WAAW;EACX,GAAG;CACL,CAAC;AACH"}
@@ -0,0 +1,2 @@
1
+ export * from './use-vectors.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/vectors/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { n as useMastraClient } from "../../mastra-client-context-Bx_g84YB.js";
2
+ import { useQuery } from "@tanstack/react-query";
3
+ //#region src/hooks/vectors/use-vectors.ts
4
+ function useVectors({ queryOptions } = {}) {
5
+ const client = useMastraClient();
6
+ return useQuery({
7
+ queryKey: ["vectors"],
8
+ queryFn: async () => {
9
+ return await client.listVectors();
10
+ },
11
+ staleTime: 3e4,
12
+ ...queryOptions
13
+ });
14
+ }
15
+ //#endregion
16
+ export { useVectors };
17
+
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/hooks/vectors/use-vectors.ts"],"sourcesContent":["import type { MastraClient } from '@mastra/client-js';\nimport type { UseQueryResult } from '@tanstack/react-query';\nimport { useQuery } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraQueryOptions } from '../shared/query-options';\n\nexport interface Vector {\n name: string;\n id: string;\n description?: string;\n}\n\ntype VectorsResponse = Awaited<ReturnType<MastraClient['listVectors']>>;\n\nexport function useVectors<TData = VectorsResponse>({\n queryOptions,\n}: {\n queryOptions?: MastraQueryOptions<VectorsResponse, TData>;\n} = {}): UseQueryResult<TData, Error> {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['vectors'],\n queryFn: async () => {\n const data = await client.listVectors();\n return data;\n },\n staleTime: 30000, // Cache for 30 seconds\n ...queryOptions,\n });\n}\n"],"mappings":";;;AAcA,SAAgB,WAAoC,EAClD,iBAGE,CAAC,GAAiC;CACpC,MAAM,SAAS,gBAAgB;CAE/B,OAAO,SAAS;EACd,UAAU,CAAC,SAAS;EACpB,SAAS,YAAY;GAEnB,OAAO,MADY,OAAO,YAAY;EAExC;EACA,WAAW;EACX,GAAG;CACL,CAAC;AACH"}
@@ -0,0 +1,14 @@
1
+ import type { MastraClient } from '@mastra/client-js';
2
+ import type { UseQueryResult } from '@tanstack/react-query';
3
+ import type { MastraQueryOptions } from '../shared/query-options.js';
4
+ export interface Vector {
5
+ name: string;
6
+ id: string;
7
+ description?: string;
8
+ }
9
+ type VectorsResponse = Awaited<ReturnType<MastraClient['listVectors']>>;
10
+ export declare function useVectors<TData = VectorsResponse>({ queryOptions, }?: {
11
+ queryOptions?: MastraQueryOptions<VectorsResponse, TData>;
12
+ }): UseQueryResult<TData, Error>;
13
+ export {};
14
+ //# sourceMappingURL=use-vectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-vectors.d.ts","sourceRoot":"","sources":["../../../src/hooks/vectors/use-vectors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,KAAK,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AAExE,wBAAgB,UAAU,CAAC,KAAK,GAAG,eAAe,EAAE,EAClD,YAAY,GACb,GAAE;IACD,YAAY,CAAC,EAAE,kBAAkB,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;CACtD,GAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAYpC"}
@@ -0,0 +1,87 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_mastra_client_context = require("../../mastra-client-context-DzX3f0RF.cjs");
3
+ const require_voice = require("../../voice-BOtUdMi8.cjs");
4
+ let react = require("react");
5
+ //#region src/hooks/voice/use-read-aloud.ts
6
+ /**
7
+ * Read-aloud (text-to-speech) for assistant messages, replacing the assistant-ui
8
+ * speech adapters (`VoiceAttachmentAdapter` / `WebSpeechSynthesisAdapter`).
9
+ *
10
+ * Prefers the agent's configured voice provider when it exposes speakers,
11
+ * streaming the audio through Web Audio. Falls back to the browser
12
+ * `speechSynthesis` API otherwise.
13
+ */
14
+ const useReadAloud = (agentId, requestContext, options) => {
15
+ const onErrorRef = (0, react.useRef)(options?.onError);
16
+ onErrorRef.current = options?.onError;
17
+ const client = require_mastra_client_context.useMastraClient();
18
+ const [hasAgentVoice, setHasAgentVoice] = (0, react.useState)(false);
19
+ const [isSpeaking, setIsSpeaking] = (0, react.useState)(false);
20
+ const cleanupRef = (0, react.useRef)(null);
21
+ (0, react.useEffect)(() => {
22
+ let cancelled = false;
23
+ if (!agentId) {
24
+ setHasAgentVoice(false);
25
+ return () => {
26
+ cancelled = true;
27
+ };
28
+ }
29
+ client.getAgent(agentId).voice.getSpeakers(requestContext).then((speakers) => {
30
+ if (!cancelled) setHasAgentVoice(speakers.length > 0);
31
+ }).catch(() => {
32
+ if (!cancelled) setHasAgentVoice(false);
33
+ });
34
+ return () => {
35
+ cancelled = true;
36
+ };
37
+ }, [
38
+ agentId,
39
+ client,
40
+ requestContext
41
+ ]);
42
+ const stop = (0, react.useCallback)(() => {
43
+ cleanupRef.current?.();
44
+ cleanupRef.current = null;
45
+ if (typeof window !== "undefined" && window.speechSynthesis) window.speechSynthesis.cancel();
46
+ setIsSpeaking(false);
47
+ }, []);
48
+ const readAloud = (0, react.useCallback)(async (text) => {
49
+ if (!text) return;
50
+ stop();
51
+ setIsSpeaking(true);
52
+ if (agentId && hasAgentVoice) try {
53
+ const response = await client.getAgent(agentId).voice.speak(text);
54
+ if (!response.body) throw new Error("No audio stream returned from voice.speak()");
55
+ const cleanup = await require_voice.playStreamWithWebAudio(response.body, () => setIsSpeaking(false));
56
+ cleanupRef.current = cleanup ?? null;
57
+ return;
58
+ } catch (error) {
59
+ setIsSpeaking(false);
60
+ onErrorRef.current?.(error);
61
+ return;
62
+ }
63
+ if (typeof window !== "undefined" && window.speechSynthesis) {
64
+ const utterance = new SpeechSynthesisUtterance(text);
65
+ utterance.onend = () => setIsSpeaking(false);
66
+ utterance.onerror = () => setIsSpeaking(false);
67
+ window.speechSynthesis.speak(utterance);
68
+ return;
69
+ }
70
+ setIsSpeaking(false);
71
+ }, [
72
+ agentId,
73
+ client,
74
+ hasAgentVoice,
75
+ stop
76
+ ]);
77
+ (0, react.useEffect)(() => () => stop(), [stop]);
78
+ return {
79
+ isSpeaking,
80
+ readAloud,
81
+ stop
82
+ };
83
+ };
84
+ //#endregion
85
+ exports.useReadAloud = useReadAloud;
86
+
87
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":["useMastraClient","playStreamWithWebAudio"],"sources":["../../../src/hooks/voice/use-read-aloud.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\nimport { useMastraClient } from '../../mastra-client-context';\nimport { playStreamWithWebAudio } from '../../voice';\n\ntype ClientAgent = ReturnType<ReturnType<typeof useMastraClient>['getAgent']>;\ntype VoiceRequestContext = Parameters<ClientAgent['voice']['getSpeakers']>[0];\n\n/**\n * Read-aloud (text-to-speech) for assistant messages, replacing the assistant-ui\n * speech adapters (`VoiceAttachmentAdapter` / `WebSpeechSynthesisAdapter`).\n *\n * Prefers the agent's configured voice provider when it exposes speakers,\n * streaming the audio through Web Audio. Falls back to the browser\n * `speechSynthesis` API otherwise.\n */\nexport const useReadAloud = (\n agentId?: string,\n requestContext?: VoiceRequestContext,\n options?: { onError?: (error: unknown) => void },\n) => {\n const onErrorRef = useRef(options?.onError);\n onErrorRef.current = options?.onError;\n const client = useMastraClient();\n const [hasAgentVoice, setHasAgentVoice] = useState(false);\n const [isSpeaking, setIsSpeaking] = useState(false);\n const cleanupRef = useRef<(() => void) | null>(null);\n\n useEffect(() => {\n let cancelled = false;\n if (!agentId) {\n setHasAgentVoice(false);\n return () => {\n cancelled = true;\n };\n }\n const agent = client.getAgent(agentId);\n void agent.voice\n .getSpeakers(requestContext)\n .then(speakers => {\n if (!cancelled) setHasAgentVoice(speakers.length > 0);\n })\n .catch(() => {\n if (!cancelled) setHasAgentVoice(false);\n });\n return () => {\n cancelled = true;\n };\n }, [agentId, client, requestContext]);\n\n const stop = useCallback(() => {\n cleanupRef.current?.();\n cleanupRef.current = null;\n if (typeof window !== 'undefined' && window.speechSynthesis) {\n window.speechSynthesis.cancel();\n }\n setIsSpeaking(false);\n }, []);\n\n const readAloud = useCallback(\n async (text: string) => {\n if (!text) return;\n stop();\n setIsSpeaking(true);\n\n if (agentId && hasAgentVoice) {\n try {\n const agent = client.getAgent(agentId);\n const response = await agent.voice.speak(text);\n if (!response.body) {\n throw new Error('No audio stream returned from voice.speak()');\n }\n const cleanup = await playStreamWithWebAudio(response.body, () => setIsSpeaking(false));\n cleanupRef.current = cleanup ?? null;\n return;\n } catch (error) {\n setIsSpeaking(false);\n onErrorRef.current?.(error);\n return;\n }\n }\n\n if (typeof window !== 'undefined' && window.speechSynthesis) {\n const utterance = new SpeechSynthesisUtterance(text);\n utterance.onend = () => setIsSpeaking(false);\n utterance.onerror = () => setIsSpeaking(false);\n window.speechSynthesis.speak(utterance);\n return;\n }\n\n setIsSpeaking(false);\n },\n [agentId, client, hasAgentVoice, stop],\n );\n\n useEffect(() => () => stop(), [stop]);\n\n return { isSpeaking, readAloud, stop };\n};\n"],"mappings":";;;;;;;;;;;;;AAeA,MAAa,gBACX,SACA,gBACA,YACG;CACH,MAAM,cAAA,GAAA,MAAA,OAAA,CAAoB,SAAS,OAAO;CAC1C,WAAW,UAAU,SAAS;CAC9B,MAAM,SAASA,8BAAAA,gBAAgB;CAC/B,MAAM,CAAC,eAAe,qBAAA,GAAA,MAAA,SAAA,CAA6B,KAAK;CACxD,MAAM,CAAC,YAAY,kBAAA,GAAA,MAAA,SAAA,CAA0B,KAAK;CAClD,MAAM,cAAA,GAAA,MAAA,OAAA,CAAyC,IAAI;CAEnD,CAAA,GAAA,MAAA,UAAA,OAAgB;EACd,IAAI,YAAY;EAChB,IAAI,CAAC,SAAS;GACZ,iBAAiB,KAAK;GACtB,aAAa;IACX,YAAY;GACd;EACF;EAEA,OADqB,SAAS,OACrB,CAAC,CAAC,MACR,YAAY,cAAc,CAAC,CAC3B,MAAK,aAAY;GAChB,IAAI,CAAC,WAAW,iBAAiB,SAAS,SAAS,CAAC;EACtD,CAAC,CAAC,CACD,YAAY;GACX,IAAI,CAAC,WAAW,iBAAiB,KAAK;EACxC,CAAC;EACH,aAAa;GACX,YAAY;EACd;CACF,GAAG;EAAC;EAAS;EAAQ;CAAc,CAAC;CAEpC,MAAM,QAAA,GAAA,MAAA,YAAA,OAAyB;EAC7B,WAAW,UAAU;EACrB,WAAW,UAAU;EACrB,IAAI,OAAO,WAAW,eAAe,OAAO,iBAC1C,OAAO,gBAAgB,OAAO;EAEhC,cAAc,KAAK;CACrB,GAAG,CAAC,CAAC;CAEL,MAAM,aAAA,GAAA,MAAA,YAAA,CACJ,OAAO,SAAiB;EACtB,IAAI,CAAC,MAAM;EACX,KAAK;EACL,cAAc,IAAI;EAElB,IAAI,WAAW,eACb,IAAI;GAEF,MAAM,WAAW,MADH,OAAO,SAAS,OACH,CAAC,CAAC,MAAM,MAAM,IAAI;GAC7C,IAAI,CAAC,SAAS,MACZ,MAAM,IAAI,MAAM,6CAA6C;GAE/D,MAAM,UAAU,MAAMC,cAAAA,uBAAuB,SAAS,YAAY,cAAc,KAAK,CAAC;GACtF,WAAW,UAAU,WAAW;GAChC;EACF,SAAS,OAAO;GACd,cAAc,KAAK;GACnB,WAAW,UAAU,KAAK;GAC1B;EACF;EAGF,IAAI,OAAO,WAAW,eAAe,OAAO,iBAAiB;GAC3D,MAAM,YAAY,IAAI,yBAAyB,IAAI;GACnD,UAAU,cAAc,cAAc,KAAK;GAC3C,UAAU,gBAAgB,cAAc,KAAK;GAC7C,OAAO,gBAAgB,MAAM,SAAS;GACtC;EACF;EAEA,cAAc,KAAK;CACrB,GACA;EAAC;EAAS;EAAQ;EAAe;CAAI,CACvC;CAEA,CAAA,GAAA,MAAA,UAAA,aAAsB,KAAK,GAAG,CAAC,IAAI,CAAC;CAEpC,OAAO;EAAE;EAAY;EAAW;CAAK;AACvC"}
@@ -0,0 +1,2 @@
1
+ export * from './use-read-aloud.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/voice/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}