@mastra/playground-ui 66.1.0-alpha.2 → 67.0.0

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 (1052) hide show
  1. package/dist/AgentIndicator-Bs2S8AWJ.js +847 -0
  2. package/dist/AgentIndicator-Bs2S8AWJ.js.map +1 -0
  3. package/dist/AgentIndicator-to30W73z.cjs +864 -0
  4. package/dist/AgentIndicator-to30W73z.cjs.map +1 -0
  5. package/dist/AgentIndicator.css +28 -0
  6. package/dist/{Arrival-NpBOyV52.js → Arrival-CJFEOXr5.js} +33 -3
  7. package/dist/Arrival-CJFEOXr5.js.map +1 -0
  8. package/dist/{Arrival-Dm6Vgn78.cjs → Arrival-Cs1oWjo4.cjs} +43 -1
  9. package/dist/Arrival-Cs1oWjo4.cjs.map +1 -0
  10. package/dist/{Comment-CUQvfikb.cjs → Comment-KYUQzeSu.cjs} +2 -2
  11. package/dist/{Comment-CUQvfikb.cjs.map → Comment-KYUQzeSu.cjs.map} +1 -1
  12. package/dist/{Comment-CPA3IyPS.js → Comment-VFJq2wRp.js} +2 -2
  13. package/dist/{Comment-CPA3IyPS.js.map → Comment-VFJq2wRp.js.map} +1 -1
  14. package/dist/{DataList-Ve3omCXT.js → DataList-2tIlQsLc.js} +95 -3
  15. package/dist/DataList-2tIlQsLc.js.map +1 -0
  16. package/dist/{DataList-Cmk08jUV.cjs → DataList-Czwmwyvp.cjs} +93 -1
  17. package/dist/DataList-Czwmwyvp.cjs.map +1 -0
  18. package/dist/{DateTimeRangePicker-ByMbLdom.js → DateTimeRangePicker-C_Lie_2P.js} +23 -2
  19. package/dist/DateTimeRangePicker-C_Lie_2P.js.map +1 -0
  20. package/dist/{DateTimeRangePicker-DGbH5WOn.cjs → DateTimeRangePicker-HmPOHwAQ.cjs} +23 -2
  21. package/dist/DateTimeRangePicker-HmPOHwAQ.cjs.map +1 -0
  22. package/dist/{FilterBar-Dk3QEuT6.js → FilterBar--4oguuVe.js} +4 -4
  23. package/dist/FilterBar--4oguuVe.js.map +1 -0
  24. package/dist/{FilterBar-gEvoWDXA.cjs → FilterBar-BUd4f7oi.cjs} +7 -7
  25. package/dist/FilterBar-BUd4f7oi.cjs.map +1 -0
  26. package/dist/GrainFill.css +2 -0
  27. package/dist/{MarkdownRenderer-BgqKfmRm.cjs → MarkdownRenderer-CS6u5drO.cjs} +2 -2
  28. package/dist/{MarkdownRenderer-BgqKfmRm.cjs.map → MarkdownRenderer-CS6u5drO.cjs.map} +1 -1
  29. package/dist/{MarkdownRenderer-DKCDXaLy.js → MarkdownRenderer-DME2xKTk.js} +2 -2
  30. package/dist/{MarkdownRenderer-DKCDXaLy.js.map → MarkdownRenderer-DME2xKTk.js.map} +1 -1
  31. package/dist/{Message-BF9cpYaw.cjs → Message-DsCNQpou.cjs} +2 -2
  32. package/dist/{Message-BF9cpYaw.cjs.map → Message-DsCNQpou.cjs.map} +1 -1
  33. package/dist/{Message-Bkf6Ro9H.js → Message-nVI6tMS3.js} +2 -2
  34. package/dist/{Message-Bkf6Ro9H.js.map → Message-nVI6tMS3.js.map} +1 -1
  35. package/dist/{MetricsCard-Dly_H3oX.cjs → MetricsCard-CEB-f2sv.cjs} +91 -109
  36. package/dist/MetricsCard-CEB-f2sv.cjs.map +1 -0
  37. package/dist/{MetricsCard-C9GWgT58.js → MetricsCard-M8awJ2B_.js} +91 -109
  38. package/dist/MetricsCard-M8awJ2B_.js.map +1 -0
  39. package/dist/{MetricsKpiCard-Uw0nyMgW.cjs → MetricsKpiCard-By_-sagx.cjs} +3 -2
  40. package/dist/{MetricsKpiCard-Uw0nyMgW.cjs.map → MetricsKpiCard-By_-sagx.cjs.map} +1 -1
  41. package/dist/{MetricsKpiCard-Idxjl-dn.js → MetricsKpiCard-OHbAElTl.js} +3 -2
  42. package/dist/{MetricsKpiCard-Idxjl-dn.js.map → MetricsKpiCard-OHbAElTl.js.map} +1 -1
  43. package/dist/{MetricsLineChart-DKzuRU2q.js → MetricsLineChart-BhHoduO0.js} +21 -39
  44. package/dist/MetricsLineChart-BhHoduO0.js.map +1 -0
  45. package/dist/{MetricsLineChart-2m4LVL1N.cjs → MetricsLineChart-CjBm4IXu.cjs} +21 -39
  46. package/dist/MetricsLineChart-CjBm4IXu.cjs.map +1 -0
  47. package/dist/{MetricsStackedBarChart-DJB4aByt.js → MetricsStackedBarChart-BRuA6MTE.js} +2 -3
  48. package/dist/MetricsStackedBarChart-BRuA6MTE.js.map +1 -0
  49. package/dist/{MetricsStackedBarChart-NATtwA_W.cjs → MetricsStackedBarChart-BdMlKv6G.cjs} +2 -3
  50. package/dist/MetricsStackedBarChart-BdMlKv6G.cjs.map +1 -0
  51. package/dist/Notice.css +2 -0
  52. package/dist/Shimmer.css +7 -0
  53. package/dist/{activity-ihrl0JtH.js → activity-CM34JyW-.js} +98 -33
  54. package/dist/activity-CM34JyW-.js.map +1 -0
  55. package/dist/{activity-QyLJcBKc.cjs → activity-DAK8tj7r.cjs} +108 -31
  56. package/dist/activity-DAK8tj7r.cjs.map +1 -0
  57. package/dist/chart-plot.css +15 -0
  58. package/dist/combobox-8kNAJFlj.cjs +309 -0
  59. package/dist/combobox-8kNAJFlj.cjs.map +1 -0
  60. package/dist/{combobox-C-E7_q4j.cjs → combobox-parts-BZVXwbG7.cjs} +7 -300
  61. package/dist/combobox-parts-BZVXwbG7.cjs.map +1 -0
  62. package/dist/{combobox-CDS2pBqz.js → combobox-parts-W7KRQUsV.js} +10 -297
  63. package/dist/combobox-parts-W7KRQUsV.js.map +1 -0
  64. package/dist/combobox-wFudhN8F.js +302 -0
  65. package/dist/combobox-wFudhN8F.js.map +1 -0
  66. package/dist/components/AgentIndicator.cjs.js +5 -0
  67. package/dist/components/AgentIndicator.d.ts +1 -0
  68. package/dist/components/AgentIndicator.es.js +1 -0
  69. package/dist/components/Arrival.cjs.js +3 -1
  70. package/dist/components/Arrival.es.js +1 -1
  71. package/dist/components/Combobox.cjs.js +24 -23
  72. package/dist/components/Combobox.es.js +2 -1
  73. package/dist/components/Comment.cjs.js +1 -1
  74. package/dist/components/Comment.es.js +1 -1
  75. package/dist/components/DataList.cjs.js +2 -2
  76. package/dist/components/DataList.es.js +2 -2
  77. package/dist/components/DateTimeRangePicker.cjs.js +1 -1
  78. package/dist/components/DateTimeRangePicker.es.js +1 -1
  79. package/dist/components/DiffStat.cjs.js +1 -1
  80. package/dist/components/DiffStat.es.js +1 -1
  81. package/dist/components/FilterBar.cjs.js +2 -2
  82. package/dist/components/FilterBar.es.js +2 -2
  83. package/dist/components/LogsDataList.cjs.js +1 -1
  84. package/dist/components/LogsDataList.es.js +1 -1
  85. package/dist/components/MarkdownRenderer.cjs.js +1 -1
  86. package/dist/components/MarkdownRenderer.es.js +1 -1
  87. package/dist/components/Message.cjs.js +1 -1
  88. package/dist/components/Message.es.js +1 -1
  89. package/dist/components/MetricsCard.cjs.js +1 -1
  90. package/dist/components/MetricsCard.es.js +1 -1
  91. package/dist/components/MetricsKpiCard.cjs.js +1 -1
  92. package/dist/components/MetricsKpiCard.es.js +1 -1
  93. package/dist/components/MetricsLineChart.cjs.js +1 -1
  94. package/dist/components/MetricsLineChart.es.js +1 -1
  95. package/dist/components/MetricsStackedBarChart.cjs.js +1 -1
  96. package/dist/components/MetricsStackedBarChart.es.js +1 -1
  97. package/dist/components/PropertyFilter.cjs.js +1 -1
  98. package/dist/components/PropertyFilter.es.js +1 -1
  99. package/dist/components/SavedViews.cjs.js +27 -69
  100. package/dist/components/SavedViews.cjs.js.map +1 -1
  101. package/dist/components/SavedViews.es.js +26 -68
  102. package/dist/components/SavedViews.es.js.map +1 -1
  103. package/dist/components/ai/activity.cjs.js +3 -1
  104. package/dist/components/ai/activity.es.js +1 -1
  105. package/dist/components/ai/message-reveal.cjs.js +2 -1
  106. package/dist/components/ai/message-reveal.cjs.js.map +1 -1
  107. package/dist/components/ai/message-reveal.es.js +2 -1
  108. package/dist/components/ai/message-reveal.es.js.map +1 -1
  109. package/dist/components/ai/plan.cjs.js +1 -1
  110. package/dist/components/ai/plan.es.js +1 -1
  111. package/dist/components/ai/tool-approval.cjs.js +1 -1
  112. package/dist/components/ai/tool-approval.es.js +1 -1
  113. package/dist/components/ai/tool-call.cjs.js +2 -2
  114. package/dist/components/ai/tool-call.es.js +2 -2
  115. package/dist/domains/chat/activity/activity-stretch-line.cjs.js +6 -4
  116. package/dist/domains/chat/activity/activity-stretch-line.cjs.js.map +1 -1
  117. package/dist/domains/chat/activity/activity-stretch-line.es.js +6 -4
  118. package/dist/domains/chat/activity/activity-stretch-line.es.js.map +1 -1
  119. package/dist/domains/chat/activity/components/activity-fold.cjs.js +81 -28
  120. package/dist/domains/chat/activity/components/activity-fold.cjs.js.map +1 -1
  121. package/dist/domains/chat/activity/components/activity-fold.es.js +82 -29
  122. package/dist/domains/chat/activity/components/activity-fold.es.js.map +1 -1
  123. package/dist/domains/chat/activity/components/activity-timed-trigger.cjs.js +1 -1
  124. package/dist/domains/chat/activity/components/activity-timed-trigger.es.js +1 -1
  125. package/dist/domains/chat/activity/components/calls-panel.cjs.js +1 -1
  126. package/dist/domains/chat/activity/components/calls-panel.es.js +1 -1
  127. package/dist/domains/chat/activity/components/stretch-content.cjs.js +1 -1
  128. package/dist/domains/chat/activity/components/stretch-content.es.js +1 -1
  129. package/dist/domains/chat/activity/components/stretch-thought.cjs.js +1 -1
  130. package/dist/domains/chat/activity/components/stretch-thought.es.js +1 -1
  131. package/dist/domains/chat/activity/components/use-fading-edge.cjs.js +26 -0
  132. package/dist/domains/chat/activity/components/use-fading-edge.cjs.js.map +1 -0
  133. package/dist/domains/chat/activity/components/use-fading-edge.d.ts +1 -0
  134. package/dist/domains/chat/activity/components/use-fading-edge.es.js +25 -0
  135. package/dist/domains/chat/activity/components/use-fading-edge.es.js.map +1 -0
  136. package/dist/domains/chat/activity/components/use-rolling-words.cjs.js +123 -0
  137. package/dist/domains/chat/activity/components/use-rolling-words.cjs.js.map +1 -0
  138. package/dist/domains/chat/activity/components/use-rolling-words.d.ts +1 -0
  139. package/dist/domains/chat/activity/components/use-rolling-words.es.js +122 -0
  140. package/dist/domains/chat/activity/components/use-rolling-words.es.js.map +1 -0
  141. package/dist/domains/chat/activity/model/activity-segments.cjs.js +1 -1
  142. package/dist/domains/chat/activity/model/activity-segments.es.js +1 -1
  143. package/dist/domains/chat/activity/model/activity-words.cjs.js +16 -6
  144. package/dist/domains/chat/activity/model/activity-words.cjs.js.map +1 -1
  145. package/dist/domains/chat/activity/model/activity-words.es.js +15 -7
  146. package/dist/domains/chat/activity/model/activity-words.es.js.map +1 -1
  147. package/dist/domains/chat/activity.cjs.js +3 -0
  148. package/dist/domains/chat/activity.es.js +2 -1
  149. package/dist/domains/chat/components/badge-wrapper.cjs.js +1 -1
  150. package/dist/domains/chat/components/badge-wrapper.es.js +1 -1
  151. package/dist/domains/chat/messages/assistant-message-actions.cjs.js +1 -1
  152. package/dist/domains/chat/messages/assistant-message-actions.es.js +1 -1
  153. package/dist/domains/chat/messages/message-row.cjs.js +4 -4
  154. package/dist/domains/chat/messages/message-row.es.js +4 -4
  155. package/dist/domains/chat/messages/notification-signal-notice.cjs.js +1 -1
  156. package/dist/domains/chat/messages/notification-signal-notice.es.js +1 -1
  157. package/dist/domains/chat/messages/reasoning-content.cjs.js +1 -1
  158. package/dist/domains/chat/messages/reasoning-content.es.js +1 -1
  159. package/dist/domains/chat/messages/renderers/message-text.cjs.js +1 -1
  160. package/dist/domains/chat/messages/renderers/message-text.es.js +1 -1
  161. package/dist/domains/chat/messages/renderers/reasoning-part-renderer.cjs.js +1 -1
  162. package/dist/domains/chat/messages/renderers/reasoning-part-renderer.es.js +1 -1
  163. package/dist/domains/chat/messages/renderers/tool-part.cjs.js +18 -0
  164. package/dist/domains/chat/messages/renderers/tool-part.cjs.js.map +1 -1
  165. package/dist/domains/chat/messages/renderers/tool-part.es.js +18 -0
  166. package/dist/domains/chat/messages/renderers/tool-part.es.js.map +1 -1
  167. package/dist/domains/chat/messages/signal-badge.cjs.js +1 -1
  168. package/dist/domains/chat/messages/signal-badge.es.js +1 -1
  169. package/dist/domains/chat/messages/skill-message.cjs.js +10 -7
  170. package/dist/domains/chat/messages/skill-message.cjs.js.map +1 -1
  171. package/dist/domains/chat/messages/skill-message.es.js +10 -7
  172. package/dist/domains/chat/messages/skill-message.es.js.map +1 -1
  173. package/dist/domains/chat/messages/system-reminder-badge.cjs.js +1 -1
  174. package/dist/domains/chat/messages/system-reminder-badge.es.js +1 -1
  175. package/dist/domains/chat/tools/badges/agent-badge-wrapper.cjs.js +1 -1
  176. package/dist/domains/chat/tools/badges/agent-badge-wrapper.es.js +1 -1
  177. package/dist/domains/chat/tools/badges/agent-badge.cjs.js +1 -1
  178. package/dist/domains/chat/tools/badges/agent-badge.es.js +1 -1
  179. package/dist/domains/chat/tools/badges/file-tree-badge.cjs.js +2 -2
  180. package/dist/domains/chat/tools/badges/file-tree-badge.es.js +2 -2
  181. package/dist/domains/chat/tools/badges/mcp-task-chip.cjs.js +111 -0
  182. package/dist/domains/chat/tools/badges/mcp-task-chip.cjs.js.map +1 -0
  183. package/dist/domains/chat/tools/badges/mcp-task-chip.d.ts +1 -0
  184. package/dist/domains/chat/tools/badges/mcp-task-chip.es.js +109 -0
  185. package/dist/domains/chat/tools/badges/mcp-task-chip.es.js.map +1 -0
  186. package/dist/domains/chat/tools/badges/observation-marker-badge.cjs.js +8 -6
  187. package/dist/domains/chat/tools/badges/observation-marker-badge.cjs.js.map +1 -1
  188. package/dist/domains/chat/tools/badges/observation-marker-badge.es.js +9 -7
  189. package/dist/domains/chat/tools/badges/observation-marker-badge.es.js.map +1 -1
  190. package/dist/domains/chat/tools/badges/observation-marker-details.cjs.js +2 -3
  191. package/dist/domains/chat/tools/badges/observation-marker-details.cjs.js.map +1 -1
  192. package/dist/domains/chat/tools/badges/observation-marker-details.es.js +2 -3
  193. package/dist/domains/chat/tools/badges/observation-marker-details.es.js.map +1 -1
  194. package/dist/domains/chat/tools/badges/observation-renderer.cjs.js +1 -1
  195. package/dist/domains/chat/tools/badges/observation-renderer.es.js +1 -1
  196. package/dist/domains/chat/tools/badges/sandbox-execution-badge.cjs.js +2 -2
  197. package/dist/domains/chat/tools/badges/sandbox-execution-badge.es.js +2 -2
  198. package/dist/domains/chat/tools/badges/tool-approval-badge.cjs.js +1 -1
  199. package/dist/domains/chat/tools/badges/tool-approval-badge.es.js +1 -1
  200. package/dist/domains/chat/tools/badges/tool-badge.cjs.js +10 -4
  201. package/dist/domains/chat/tools/badges/tool-badge.cjs.js.map +1 -1
  202. package/dist/domains/chat/tools/badges/tool-badge.es.js +10 -4
  203. package/dist/domains/chat/tools/badges/tool-badge.es.js.map +1 -1
  204. package/dist/domains/chat/tools/badges/use-mcp-task-progress.cjs.js +51 -0
  205. package/dist/domains/chat/tools/badges/use-mcp-task-progress.cjs.js.map +1 -0
  206. package/dist/domains/chat/tools/badges/use-mcp-task-progress.d.ts +1 -0
  207. package/dist/domains/chat/tools/badges/use-mcp-task-progress.es.js +49 -0
  208. package/dist/domains/chat/tools/badges/use-mcp-task-progress.es.js.map +1 -0
  209. package/dist/domains/chat/tools/badges/workflow-badge.cjs.js +1 -1
  210. package/dist/domains/chat/tools/badges/workflow-badge.es.js +1 -1
  211. package/dist/domains/chat/tools/tool-card-kind.cjs.js +1 -1
  212. package/dist/domains/chat/tools/tool-card-kind.es.js +1 -1
  213. package/dist/domains/chat/tools/tool-card.cjs.js +1 -1
  214. package/dist/domains/chat/tools/tool-card.es.js +1 -1
  215. package/dist/domains/chat/tools/tool-groups.cjs.js +1 -1
  216. package/dist/domains/chat/tools/tool-groups.es.js +1 -1
  217. package/dist/domains/dashboards/components/dashboard-grid.cjs.js +44 -0
  218. package/dist/domains/dashboards/components/dashboard-grid.cjs.js.map +1 -0
  219. package/dist/domains/dashboards/components/dashboard-grid.d.ts +1 -0
  220. package/dist/domains/dashboards/components/dashboard-grid.es.js +41 -0
  221. package/dist/domains/dashboards/components/dashboard-grid.es.js.map +1 -0
  222. package/dist/domains/dashboards/components/dashboard-renderer.cjs.js +72 -0
  223. package/dist/domains/dashboards/components/dashboard-renderer.cjs.js.map +1 -0
  224. package/dist/domains/dashboards/components/dashboard-renderer.d.ts +1 -0
  225. package/dist/domains/dashboards/components/dashboard-renderer.es.js +71 -0
  226. package/dist/domains/dashboards/components/dashboard-renderer.es.js.map +1 -0
  227. package/dist/domains/dashboards/components/view-gate.cjs.js +55 -0
  228. package/dist/domains/dashboards/components/view-gate.cjs.js.map +1 -0
  229. package/dist/domains/dashboards/components/view-gate.d.ts +1 -0
  230. package/dist/domains/dashboards/components/view-gate.es.js +54 -0
  231. package/dist/domains/dashboards/components/view-gate.es.js.map +1 -0
  232. package/dist/domains/dashboards/components/widget-chrome.cjs.js +16 -0
  233. package/dist/domains/dashboards/components/widget-chrome.cjs.js.map +1 -0
  234. package/dist/domains/dashboards/components/widget-chrome.d.ts +1 -0
  235. package/dist/domains/dashboards/components/widget-chrome.es.js +15 -0
  236. package/dist/domains/dashboards/components/widget-chrome.es.js.map +1 -0
  237. package/dist/domains/dashboards/components/widget-controls.cjs.js +21 -0
  238. package/dist/domains/dashboards/components/widget-controls.cjs.js.map +1 -0
  239. package/dist/domains/dashboards/components/widget-controls.d.ts +1 -0
  240. package/dist/domains/dashboards/components/widget-controls.es.js +20 -0
  241. package/dist/domains/dashboards/components/widget-controls.es.js.map +1 -0
  242. package/dist/domains/dashboards/components/widget-error.cjs.js +18 -0
  243. package/dist/domains/dashboards/components/widget-error.cjs.js.map +1 -0
  244. package/dist/domains/dashboards/components/widget-error.d.ts +1 -0
  245. package/dist/domains/dashboards/components/widget-error.es.js +17 -0
  246. package/dist/domains/dashboards/components/widget-error.es.js.map +1 -0
  247. package/dist/domains/dashboards/hooks/use-dashboard-requests.cjs.js +47 -0
  248. package/dist/domains/dashboards/hooks/use-dashboard-requests.cjs.js.map +1 -0
  249. package/dist/domains/dashboards/hooks/use-dashboard-requests.d.ts +1 -0
  250. package/dist/domains/dashboards/hooks/use-dashboard-requests.es.js +46 -0
  251. package/dist/domains/dashboards/hooks/use-dashboard-requests.es.js.map +1 -0
  252. package/dist/domains/dashboards/hooks/use-scorers.cjs.js +41 -0
  253. package/dist/domains/dashboards/hooks/use-scorers.cjs.js.map +1 -0
  254. package/dist/domains/dashboards/hooks/use-scorers.d.ts +1 -0
  255. package/dist/domains/dashboards/hooks/use-scorers.es.js +40 -0
  256. package/dist/domains/dashboards/hooks/use-scorers.es.js.map +1 -0
  257. package/dist/domains/dashboards/hooks/use-widget-views.cjs.js +35 -0
  258. package/dist/domains/dashboards/hooks/use-widget-views.cjs.js.map +1 -0
  259. package/dist/domains/dashboards/hooks/use-widget-views.d.ts +1 -0
  260. package/dist/domains/dashboards/hooks/use-widget-views.es.js +32 -0
  261. package/dist/domains/dashboards/hooks/use-widget-views.es.js.map +1 -0
  262. package/dist/domains/dashboards/kinds/kpis/kpis-widget.cjs.js +63 -0
  263. package/dist/domains/dashboards/kinds/kpis/kpis-widget.cjs.js.map +1 -0
  264. package/dist/domains/dashboards/kinds/kpis/kpis-widget.d.ts +1 -0
  265. package/dist/domains/dashboards/kinds/kpis/kpis-widget.es.js +62 -0
  266. package/dist/domains/dashboards/kinds/kpis/kpis-widget.es.js.map +1 -0
  267. package/dist/domains/dashboards/kinds/kpis/options.cjs.js +72 -0
  268. package/dist/domains/dashboards/kinds/kpis/options.cjs.js.map +1 -0
  269. package/dist/domains/dashboards/kinds/kpis/options.d.ts +1 -0
  270. package/dist/domains/dashboards/kinds/kpis/options.es.js +69 -0
  271. package/dist/domains/dashboards/kinds/kpis/options.es.js.map +1 -0
  272. package/dist/domains/dashboards/kinds/kpis.cjs.js +17 -0
  273. package/dist/domains/dashboards/kinds/kpis.cjs.js.map +1 -0
  274. package/dist/domains/dashboards/kinds/kpis.d.ts +1 -0
  275. package/dist/domains/dashboards/kinds/kpis.es.js +14 -0
  276. package/dist/domains/dashboards/kinds/kpis.es.js.map +1 -0
  277. package/dist/domains/dashboards/kinds/scores/options.cjs.js +30 -0
  278. package/dist/domains/dashboards/kinds/scores/options.cjs.js.map +1 -0
  279. package/dist/domains/dashboards/kinds/scores/options.d.ts +1 -0
  280. package/dist/domains/dashboards/kinds/scores/options.es.js +28 -0
  281. package/dist/domains/dashboards/kinds/scores/options.es.js.map +1 -0
  282. package/dist/domains/dashboards/kinds/scores/scores-widget.cjs.js +91 -0
  283. package/dist/domains/dashboards/kinds/scores/scores-widget.cjs.js.map +1 -0
  284. package/dist/domains/dashboards/kinds/scores/scores-widget.d.ts +1 -0
  285. package/dist/domains/dashboards/kinds/scores/scores-widget.es.js +90 -0
  286. package/dist/domains/dashboards/kinds/scores/scores-widget.es.js.map +1 -0
  287. package/dist/domains/dashboards/kinds/scores.cjs.js +16 -0
  288. package/dist/domains/dashboards/kinds/scores.cjs.js.map +1 -0
  289. package/dist/domains/dashboards/kinds/scores.d.ts +1 -0
  290. package/dist/domains/dashboards/kinds/scores.es.js +14 -0
  291. package/dist/domains/dashboards/kinds/scores.es.js.map +1 -0
  292. package/dist/domains/dashboards/kinds/table/table-cells.cjs.js +67 -0
  293. package/dist/domains/dashboards/kinds/table/table-cells.cjs.js.map +1 -0
  294. package/dist/domains/dashboards/kinds/table/table-cells.d.ts +1 -0
  295. package/dist/domains/dashboards/kinds/table/table-cells.es.js +63 -0
  296. package/dist/domains/dashboards/kinds/table/table-cells.es.js.map +1 -0
  297. package/dist/domains/dashboards/kinds/table/table-columns.cjs.js +72 -0
  298. package/dist/domains/dashboards/kinds/table/table-columns.cjs.js.map +1 -0
  299. package/dist/domains/dashboards/kinds/table/table-columns.d.ts +1 -0
  300. package/dist/domains/dashboards/kinds/table/table-columns.es.js +71 -0
  301. package/dist/domains/dashboards/kinds/table/table-columns.es.js.map +1 -0
  302. package/dist/domains/dashboards/kinds/table/table-frame.cjs.js +16 -0
  303. package/dist/domains/dashboards/kinds/table/table-frame.cjs.js.map +1 -0
  304. package/dist/domains/dashboards/kinds/table/table-frame.d.ts +1 -0
  305. package/dist/domains/dashboards/kinds/table/table-frame.es.js +15 -0
  306. package/dist/domains/dashboards/kinds/table/table-frame.es.js.map +1 -0
  307. package/dist/domains/dashboards/kinds/table/table-tabs.cjs.js +55 -0
  308. package/dist/domains/dashboards/kinds/table/table-tabs.cjs.js.map +1 -0
  309. package/dist/domains/dashboards/kinds/table/table-tabs.d.ts +1 -0
  310. package/dist/domains/dashboards/kinds/table/table-tabs.es.js +54 -0
  311. package/dist/domains/dashboards/kinds/table/table-tabs.es.js.map +1 -0
  312. package/dist/domains/dashboards/kinds/table/table-view.cjs.js +80 -0
  313. package/dist/domains/dashboards/kinds/table/table-view.cjs.js.map +1 -0
  314. package/dist/domains/dashboards/kinds/table/table-view.d.ts +1 -0
  315. package/dist/domains/dashboards/kinds/table/table-view.es.js +79 -0
  316. package/dist/domains/dashboards/kinds/table/table-view.es.js.map +1 -0
  317. package/dist/domains/dashboards/kinds/table/table-widget.cjs.js +30 -0
  318. package/dist/domains/dashboards/kinds/table/table-widget.cjs.js.map +1 -0
  319. package/dist/domains/dashboards/kinds/table/table-widget.d.ts +1 -0
  320. package/dist/domains/dashboards/kinds/table/table-widget.es.js +29 -0
  321. package/dist/domains/dashboards/kinds/table/table-widget.es.js.map +1 -0
  322. package/dist/domains/dashboards/kinds/table.cjs.js +17 -0
  323. package/dist/domains/dashboards/kinds/table.cjs.js.map +1 -0
  324. package/dist/domains/dashboards/kinds/table.d.ts +1 -0
  325. package/dist/domains/dashboards/kinds/table.es.js +14 -0
  326. package/dist/domains/dashboards/kinds/table.es.js.map +1 -0
  327. package/dist/domains/dashboards/kinds/timeseries/timeseries-widget.cjs.js +115 -0
  328. package/dist/domains/dashboards/kinds/timeseries/timeseries-widget.cjs.js.map +1 -0
  329. package/dist/domains/dashboards/kinds/timeseries/timeseries-widget.d.ts +1 -0
  330. package/dist/domains/dashboards/kinds/timeseries/timeseries-widget.es.js +114 -0
  331. package/dist/domains/dashboards/kinds/timeseries/timeseries-widget.es.js.map +1 -0
  332. package/dist/domains/dashboards/kinds/timeseries.cjs.js +15 -0
  333. package/dist/domains/dashboards/kinds/timeseries.cjs.js.map +1 -0
  334. package/dist/domains/dashboards/kinds/timeseries.d.ts +1 -0
  335. package/dist/domains/dashboards/kinds/timeseries.es.js +14 -0
  336. package/dist/domains/dashboards/kinds/timeseries.es.js.map +1 -0
  337. package/dist/domains/dashboards/kinds.cjs.js +20 -0
  338. package/dist/domains/dashboards/kinds.cjs.js.map +1 -0
  339. package/dist/domains/dashboards/kinds.d.ts +1 -0
  340. package/dist/domains/dashboards/kinds.es.js +15 -0
  341. package/dist/domains/dashboards/kinds.es.js.map +1 -0
  342. package/dist/domains/dashboards/lib/answers.cjs.js +42 -0
  343. package/dist/domains/dashboards/lib/answers.cjs.js.map +1 -0
  344. package/dist/domains/dashboards/lib/answers.d.ts +1 -0
  345. package/dist/domains/dashboards/lib/answers.es.js +37 -0
  346. package/dist/domains/dashboards/lib/answers.es.js.map +1 -0
  347. package/dist/domains/dashboards/lib/chrome.cjs.js +41 -0
  348. package/dist/domains/dashboards/lib/chrome.cjs.js.map +1 -0
  349. package/dist/domains/dashboards/lib/chrome.d.ts +1 -0
  350. package/dist/domains/dashboards/lib/chrome.es.js +37 -0
  351. package/dist/domains/dashboards/lib/chrome.es.js.map +1 -0
  352. package/dist/domains/dashboards/lib/definition.cjs.js +59 -0
  353. package/dist/domains/dashboards/lib/definition.cjs.js.map +1 -0
  354. package/dist/domains/dashboards/lib/definition.d.ts +1 -0
  355. package/dist/domains/dashboards/lib/definition.es.js +55 -0
  356. package/dist/domains/dashboards/lib/definition.es.js.map +1 -0
  357. package/dist/domains/dashboards/lib/filters.cjs.js +44 -0
  358. package/dist/domains/dashboards/lib/filters.cjs.js.map +1 -0
  359. package/dist/domains/dashboards/lib/filters.d.ts +1 -0
  360. package/dist/domains/dashboards/lib/filters.es.js +43 -0
  361. package/dist/domains/dashboards/lib/filters.es.js.map +1 -0
  362. package/dist/domains/dashboards/lib/format.cjs.js +32 -0
  363. package/dist/domains/dashboards/lib/format.cjs.js.map +1 -0
  364. package/dist/domains/dashboards/lib/format.d.ts +1 -0
  365. package/dist/domains/dashboards/lib/format.es.js +30 -0
  366. package/dist/domains/dashboards/lib/format.es.js.map +1 -0
  367. package/dist/domains/dashboards/lib/prepare-widget.cjs.js +77 -0
  368. package/dist/domains/dashboards/lib/prepare-widget.cjs.js.map +1 -0
  369. package/dist/domains/dashboards/lib/prepare-widget.d.ts +1 -0
  370. package/dist/domains/dashboards/lib/prepare-widget.es.js +75 -0
  371. package/dist/domains/dashboards/lib/prepare-widget.es.js.map +1 -0
  372. package/dist/domains/dashboards/lib/requests.cjs.js +279 -0
  373. package/dist/domains/dashboards/lib/requests.cjs.js.map +1 -0
  374. package/dist/domains/dashboards/lib/requests.d.ts +1 -0
  375. package/dist/domains/dashboards/lib/requests.es.js +273 -0
  376. package/dist/domains/dashboards/lib/requests.es.js.map +1 -0
  377. package/dist/domains/dashboards/lib/scores.cjs.js +58 -0
  378. package/dist/domains/dashboards/lib/scores.cjs.js.map +1 -0
  379. package/dist/domains/dashboards/lib/scores.d.ts +1 -0
  380. package/dist/domains/dashboards/lib/scores.es.js +53 -0
  381. package/dist/domains/dashboards/lib/scores.es.js.map +1 -0
  382. package/dist/domains/dashboards/lib/table.cjs.js +408 -0
  383. package/dist/domains/dashboards/lib/table.cjs.js.map +1 -0
  384. package/dist/domains/dashboards/lib/table.d.ts +1 -0
  385. package/dist/domains/dashboards/lib/table.es.js +388 -0
  386. package/dist/domains/dashboards/lib/table.es.js.map +1 -0
  387. package/dist/domains/dashboards/lib/timeseries.cjs.js +192 -0
  388. package/dist/domains/dashboards/lib/timeseries.cjs.js.map +1 -0
  389. package/dist/domains/dashboards/lib/timeseries.d.ts +1 -0
  390. package/dist/domains/dashboards/lib/timeseries.es.js +188 -0
  391. package/dist/domains/dashboards/lib/timeseries.es.js.map +1 -0
  392. package/dist/domains/dashboards/lib/values.cjs.js +155 -0
  393. package/dist/domains/dashboards/lib/values.cjs.js.map +1 -0
  394. package/dist/domains/dashboards/lib/values.d.ts +1 -0
  395. package/dist/domains/dashboards/lib/values.es.js +142 -0
  396. package/dist/domains/dashboards/lib/values.es.js.map +1 -0
  397. package/dist/domains/dashboards/metrics-dashboard.cjs.js +737 -0
  398. package/dist/domains/dashboards/metrics-dashboard.cjs.js.map +1 -0
  399. package/dist/domains/dashboards/metrics-dashboard.d.ts +1 -0
  400. package/dist/domains/dashboards/metrics-dashboard.es.js +736 -0
  401. package/dist/domains/dashboards/metrics-dashboard.es.js.map +1 -0
  402. package/dist/domains/dashboards/widget-kind.cjs.js +7 -0
  403. package/dist/domains/dashboards/widget-kind.cjs.js.map +1 -0
  404. package/dist/domains/dashboards/widget-kind.d.ts +1 -0
  405. package/dist/domains/dashboards/widget-kind.es.js +6 -0
  406. package/dist/domains/dashboards/widget-kind.es.js.map +1 -0
  407. package/dist/domains/dashboards.cjs.js +39 -0
  408. package/dist/domains/dashboards.d.ts +1 -0
  409. package/dist/domains/dashboards.es.js +18 -0
  410. package/dist/domains/logs/components/logs-list-view.cjs.js +1 -1
  411. package/dist/domains/logs/components/logs-list-view.es.js +1 -1
  412. package/dist/domains/logs/components/logs-saved-views.cjs.js +14 -0
  413. package/dist/domains/logs/components/logs-saved-views.cjs.js.map +1 -0
  414. package/dist/domains/logs/components/logs-saved-views.d.ts +1 -0
  415. package/dist/domains/logs/components/logs-saved-views.es.js +13 -0
  416. package/dist/domains/logs/components/logs-saved-views.es.js.map +1 -0
  417. package/dist/domains/logs/components.cjs.js +2 -0
  418. package/dist/domains/logs/components.es.js +2 -1
  419. package/dist/domains/logs/hooks/use-logs-url-state.cjs.js +1 -1
  420. package/dist/domains/logs/hooks/use-logs-url-state.cjs.js.map +1 -1
  421. package/dist/domains/logs/hooks/use-logs-url-state.es.js +2 -2
  422. package/dist/domains/logs/hooks/use-logs-url-state.es.js.map +1 -1
  423. package/dist/domains/logs/log-filters.cjs.js +11 -0
  424. package/dist/domains/logs/log-filters.cjs.js.map +1 -1
  425. package/dist/domains/logs/log-filters.es.js +9 -1
  426. package/dist/domains/logs/log-filters.es.js.map +1 -1
  427. package/dist/domains/logs.cjs.js +6 -1
  428. package/dist/domains/logs.es.js +3 -2
  429. package/dist/domains/metrics/components/agent-runs-card.cjs.js +38 -15
  430. package/dist/domains/metrics/components/agent-runs-card.cjs.js.map +1 -1
  431. package/dist/domains/metrics/components/agent-runs-card.es.js +38 -15
  432. package/dist/domains/metrics/components/agent-runs-card.es.js.map +1 -1
  433. package/dist/domains/metrics/components/breakdown/breakdown-change-cell.cjs.js +4 -11
  434. package/dist/domains/metrics/components/breakdown/breakdown-change-cell.cjs.js.map +1 -1
  435. package/dist/domains/metrics/components/breakdown/breakdown-change-cell.es.js +4 -11
  436. package/dist/domains/metrics/components/breakdown/breakdown-change-cell.es.js.map +1 -1
  437. package/dist/domains/metrics/components/breakdown/breakdown-cost-cell.cjs.js +2 -4
  438. package/dist/domains/metrics/components/breakdown/breakdown-cost-cell.cjs.js.map +1 -1
  439. package/dist/domains/metrics/components/breakdown/breakdown-cost-cell.es.js +2 -4
  440. package/dist/domains/metrics/components/breakdown/breakdown-cost-cell.es.js.map +1 -1
  441. package/dist/domains/metrics/components/breakdown/breakdown-entity-tab.cjs.js +1 -1
  442. package/dist/domains/metrics/components/breakdown/breakdown-entity-tab.es.js +1 -1
  443. package/dist/domains/metrics/components/breakdown/breakdown-frame.cjs.js +16 -27
  444. package/dist/domains/metrics/components/breakdown/breakdown-frame.cjs.js.map +1 -1
  445. package/dist/domains/metrics/components/breakdown/breakdown-frame.es.js +16 -27
  446. package/dist/domains/metrics/components/breakdown/breakdown-frame.es.js.map +1 -1
  447. package/dist/domains/metrics/components/breakdown/breakdown-models-tab.cjs.js +1 -1
  448. package/dist/domains/metrics/components/breakdown/breakdown-models-tab.es.js +1 -1
  449. package/dist/domains/metrics/components/breakdown/breakdown-name.cjs.js +22 -0
  450. package/dist/domains/metrics/components/breakdown/breakdown-name.cjs.js.map +1 -0
  451. package/dist/domains/metrics/components/breakdown/breakdown-name.d.ts +1 -0
  452. package/dist/domains/metrics/components/breakdown/breakdown-name.es.js +21 -0
  453. package/dist/domains/metrics/components/breakdown/breakdown-name.es.js.map +1 -0
  454. package/dist/domains/metrics/components/breakdown/breakdown-not-priced.cjs.js +13 -0
  455. package/dist/domains/metrics/components/breakdown/breakdown-not-priced.cjs.js.map +1 -0
  456. package/dist/domains/metrics/components/breakdown/breakdown-not-priced.d.ts +1 -0
  457. package/dist/domains/metrics/components/breakdown/breakdown-not-priced.es.js +12 -0
  458. package/dist/domains/metrics/components/breakdown/breakdown-not-priced.es.js.map +1 -0
  459. package/dist/domains/metrics/components/breakdown/breakdown-projects-first.cjs.js +1 -1
  460. package/dist/domains/metrics/components/breakdown/breakdown-projects-first.es.js +1 -1
  461. package/dist/domains/metrics/components/breakdown/breakdown-row-mark.cjs.js +26 -13
  462. package/dist/domains/metrics/components/breakdown/breakdown-row-mark.cjs.js.map +1 -1
  463. package/dist/domains/metrics/components/breakdown/breakdown-row-mark.es.js +25 -14
  464. package/dist/domains/metrics/components/breakdown/breakdown-row-mark.es.js.map +1 -1
  465. package/dist/domains/metrics/components/breakdown/breakdown-row-name.cjs.js +10 -13
  466. package/dist/domains/metrics/components/breakdown/breakdown-row-name.cjs.js.map +1 -1
  467. package/dist/domains/metrics/components/breakdown/breakdown-row-name.es.js +11 -14
  468. package/dist/domains/metrics/components/breakdown/breakdown-row-name.es.js.map +1 -1
  469. package/dist/domains/metrics/components/breakdown/breakdown-tab-body.cjs.js +1 -1
  470. package/dist/domains/metrics/components/breakdown/breakdown-tab-body.es.js +1 -1
  471. package/dist/domains/metrics/components/breakdown/breakdown-table.cjs.js +5 -5
  472. package/dist/domains/metrics/components/breakdown/breakdown-table.es.js +5 -5
  473. package/dist/domains/metrics/components/breakdown/breakdown-trace-tab.cjs.js +1 -1
  474. package/dist/domains/metrics/components/breakdown/breakdown-trace-tab.es.js +1 -1
  475. package/dist/domains/metrics/components/breakdown/breakdown-trend-text.cjs.js +25 -0
  476. package/dist/domains/metrics/components/breakdown/breakdown-trend-text.cjs.js.map +1 -0
  477. package/dist/domains/metrics/components/breakdown/breakdown-trend-text.d.ts +1 -0
  478. package/dist/domains/metrics/components/breakdown/breakdown-trend-text.es.js +24 -0
  479. package/dist/domains/metrics/components/breakdown/breakdown-trend-text.es.js.map +1 -0
  480. package/dist/domains/metrics/components/breakdown-card.cjs.js +3 -3
  481. package/dist/domains/metrics/components/breakdown-card.es.js +3 -3
  482. package/dist/domains/metrics/components/card-action-buttons.cjs.js +43 -3
  483. package/dist/domains/metrics/components/card-action-buttons.cjs.js.map +1 -1
  484. package/dist/domains/metrics/components/card-action-buttons.es.js +42 -5
  485. package/dist/domains/metrics/components/card-action-buttons.es.js.map +1 -1
  486. package/dist/domains/metrics/components/chart-area.cjs.js +1 -1
  487. package/dist/domains/metrics/components/chart-area.es.js +1 -1
  488. package/dist/domains/metrics/components/chart-card-error.cjs.js +1 -1
  489. package/dist/domains/metrics/components/chart-card-error.es.js +1 -1
  490. package/dist/domains/metrics/components/chart-card.cjs.js +39 -38
  491. package/dist/domains/metrics/components/chart-card.cjs.js.map +1 -1
  492. package/dist/domains/metrics/components/chart-card.es.js +39 -38
  493. package/dist/domains/metrics/components/chart-card.es.js.map +1 -1
  494. package/dist/domains/metrics/components/date-range-selector.cjs.js +1 -1
  495. package/dist/domains/metrics/components/date-range-selector.es.js +1 -1
  496. package/dist/domains/metrics/components/distinct-ids/distinct-ids-chart.cjs.js +15 -16
  497. package/dist/domains/metrics/components/distinct-ids/distinct-ids-chart.cjs.js.map +1 -1
  498. package/dist/domains/metrics/components/distinct-ids/distinct-ids-chart.es.js +16 -16
  499. package/dist/domains/metrics/components/distinct-ids/distinct-ids-chart.es.js.map +1 -1
  500. package/dist/domains/metrics/components/distinct-ids-card.cjs.js +0 -1
  501. package/dist/domains/metrics/components/distinct-ids-card.cjs.js.map +1 -1
  502. package/dist/domains/metrics/components/distinct-ids-card.es.js +1 -2
  503. package/dist/domains/metrics/components/distinct-ids-card.es.js.map +1 -1
  504. package/dist/domains/metrics/components/failure-rate-card.cjs.js +11 -14
  505. package/dist/domains/metrics/components/failure-rate-card.cjs.js.map +1 -1
  506. package/dist/domains/metrics/components/failure-rate-card.es.js +11 -14
  507. package/dist/domains/metrics/components/failure-rate-card.es.js.map +1 -1
  508. package/dist/domains/metrics/components/kpi-card.cjs.js +8 -5
  509. package/dist/domains/metrics/components/kpi-card.cjs.js.map +1 -1
  510. package/dist/domains/metrics/components/kpi-card.es.js +8 -5
  511. package/dist/domains/metrics/components/kpi-card.es.js.map +1 -1
  512. package/dist/domains/metrics/components/latency-card.cjs.js +33 -30
  513. package/dist/domains/metrics/components/latency-card.cjs.js.map +1 -1
  514. package/dist/domains/metrics/components/latency-card.es.js +34 -31
  515. package/dist/domains/metrics/components/latency-card.es.js.map +1 -1
  516. package/dist/domains/metrics/components/metrics-grid/metrics-grid.cjs.js +5 -2
  517. package/dist/domains/metrics/components/metrics-grid/metrics-grid.cjs.js.map +1 -1
  518. package/dist/domains/metrics/components/metrics-grid/metrics-grid.es.js +5 -2
  519. package/dist/domains/metrics/components/metrics-grid/metrics-grid.es.js.map +1 -1
  520. package/dist/domains/metrics/components/scores-card.cjs.js +7 -17
  521. package/dist/domains/metrics/components/scores-card.cjs.js.map +1 -1
  522. package/dist/domains/metrics/components/scores-card.es.js +7 -17
  523. package/dist/domains/metrics/components/scores-card.es.js.map +1 -1
  524. package/dist/domains/metrics/components/token-usage-card.cjs.js +29 -26
  525. package/dist/domains/metrics/components/token-usage-card.cjs.js.map +1 -1
  526. package/dist/domains/metrics/components/token-usage-card.es.js +30 -27
  527. package/dist/domains/metrics/components/token-usage-card.es.js.map +1 -1
  528. package/dist/domains/metrics/components/trace-aggregate-card.cjs.js +3 -2
  529. package/dist/domains/metrics/components/trace-aggregate-card.cjs.js.map +1 -1
  530. package/dist/domains/metrics/components/trace-aggregate-card.es.js +3 -2
  531. package/dist/domains/metrics/components/trace-aggregate-card.es.js.map +1 -1
  532. package/dist/domains/metrics/components/trace-volume-card.cjs.js +31 -35
  533. package/dist/domains/metrics/components/trace-volume-card.cjs.js.map +1 -1
  534. package/dist/domains/metrics/components/trace-volume-card.es.js +31 -35
  535. package/dist/domains/metrics/components/trace-volume-card.es.js.map +1 -1
  536. package/dist/domains/metrics/components/usage-card.cjs.js +29 -28
  537. package/dist/domains/metrics/components/usage-card.cjs.js.map +1 -1
  538. package/dist/domains/metrics/components/usage-card.es.js +30 -29
  539. package/dist/domains/metrics/components/usage-card.es.js.map +1 -1
  540. package/dist/domains/metrics/components.cjs.js +6 -5
  541. package/dist/domains/metrics/components.es.js +4 -5
  542. package/dist/domains/metrics/drilldown.cjs.js +1 -1
  543. package/dist/domains/metrics/drilldown.es.js +1 -1
  544. package/dist/domains/metrics/hooks/use-metrics-activity.cjs.js +1 -1
  545. package/dist/domains/metrics/hooks/use-metrics-activity.es.js +1 -1
  546. package/dist/domains/metrics/hooks/use-metrics-latency.cjs.js +1 -1
  547. package/dist/domains/metrics/hooks/use-metrics-latency.es.js +1 -1
  548. package/dist/domains/metrics/hooks/use-metrics-scores.cjs.js +1 -1
  549. package/dist/domains/metrics/hooks/use-metrics-scores.es.js +1 -1
  550. package/dist/domains/metrics/hooks/use-metrics-span-aggregate.cjs.js +1 -1
  551. package/dist/domains/metrics/hooks/use-metrics-span-aggregate.es.js +1 -1
  552. package/dist/domains/metrics/hooks.cjs.js +1 -1
  553. package/dist/domains/metrics/hooks.es.js +1 -1
  554. package/dist/domains/metrics/lib/breakdown-table.cjs.js +2 -2
  555. package/dist/domains/metrics/lib/breakdown-table.es.js +2 -2
  556. package/dist/domains/metrics/lib.cjs.js +2 -2
  557. package/dist/domains/metrics/lib.es.js +2 -2
  558. package/dist/domains/metrics/metrics-filters.cjs.js +1 -1
  559. package/dist/domains/metrics/metrics-filters.es.js +1 -1
  560. package/dist/domains/metrics.cjs.js +14 -13
  561. package/dist/domains/metrics.es.js +12 -13
  562. package/dist/domains/observability/components/observability-header-slot.cjs.js +13 -0
  563. package/dist/domains/observability/components/observability-header-slot.cjs.js.map +1 -0
  564. package/dist/domains/observability/components/observability-header-slot.d.ts +1 -0
  565. package/dist/domains/observability/components/observability-header-slot.es.js +11 -0
  566. package/dist/domains/observability/components/observability-header-slot.es.js.map +1 -0
  567. package/dist/domains/observability/components/observability-histogram.cjs.js +6 -2
  568. package/dist/domains/observability/components/observability-histogram.cjs.js.map +1 -1
  569. package/dist/domains/observability/components/observability-histogram.es.js +6 -2
  570. package/dist/domains/observability/components/observability-histogram.es.js.map +1 -1
  571. package/dist/domains/observability/components/observability-page-layout.cjs.js +19 -5
  572. package/dist/domains/observability/components/observability-page-layout.cjs.js.map +1 -1
  573. package/dist/domains/observability/components/observability-page-layout.es.js +20 -6
  574. package/dist/domains/observability/components/observability-page-layout.es.js.map +1 -1
  575. package/dist/domains/observability/hooks/use-observability-list-filters.cjs.js +75 -18
  576. package/dist/domains/observability/hooks/use-observability-list-filters.cjs.js.map +1 -1
  577. package/dist/domains/observability/hooks/use-observability-list-filters.es.js +76 -19
  578. package/dist/domains/observability/hooks/use-observability-list-filters.es.js.map +1 -1
  579. package/dist/domains/observability/lib/zoom-memory.cjs.js +24 -0
  580. package/dist/domains/observability/lib/zoom-memory.cjs.js.map +1 -0
  581. package/dist/domains/observability/lib/zoom-memory.d.ts +1 -0
  582. package/dist/domains/observability/lib/zoom-memory.es.js +22 -0
  583. package/dist/domains/observability/lib/zoom-memory.es.js.map +1 -0
  584. package/dist/domains/observability/observability-list-url-state.cjs.js +122 -0
  585. package/dist/domains/observability/observability-list-url-state.cjs.js.map +1 -0
  586. package/dist/domains/observability/observability-list-url-state.d.ts +1 -0
  587. package/dist/domains/observability/observability-list-url-state.es.js +111 -0
  588. package/dist/domains/observability/observability-list-url-state.es.js.map +1 -0
  589. package/dist/domains/observability/saved-view-state.cjs.js +292 -0
  590. package/dist/domains/observability/saved-view-state.cjs.js.map +1 -0
  591. package/dist/domains/observability/saved-view-state.d.ts +1 -0
  592. package/dist/domains/observability/saved-view-state.es.js +286 -0
  593. package/dist/domains/observability/saved-view-state.es.js.map +1 -0
  594. package/dist/domains/observability/saved-views/observability-saved-views.cjs.js +3 -0
  595. package/dist/domains/observability/saved-views/observability-saved-views.d.ts +1 -0
  596. package/dist/domains/observability/saved-views/observability-saved-views.es.js +1 -0
  597. package/dist/domains/observability/saved-views/saved-views-provider.cjs.js +18 -0
  598. package/dist/domains/observability/saved-views/saved-views-provider.cjs.js.map +1 -0
  599. package/dist/domains/observability/saved-views/saved-views-provider.d.ts +1 -0
  600. package/dist/domains/observability/saved-views/saved-views-provider.es.js +17 -0
  601. package/dist/domains/observability/saved-views/saved-views-provider.es.js.map +1 -0
  602. package/dist/domains/observability/saved-views/saved-views-source.cjs.js +23 -0
  603. package/dist/domains/observability/saved-views/saved-views-source.cjs.js.map +1 -0
  604. package/dist/domains/observability/saved-views/saved-views-source.d.ts +1 -0
  605. package/dist/domains/observability/saved-views/saved-views-source.es.js +19 -0
  606. package/dist/domains/observability/saved-views/saved-views-source.es.js.map +1 -0
  607. package/dist/domains/observability/saved-views/use-hosted-saved-views.cjs.js +235 -0
  608. package/dist/domains/observability/saved-views/use-hosted-saved-views.cjs.js.map +1 -0
  609. package/dist/domains/observability/saved-views/use-hosted-saved-views.d.ts +1 -0
  610. package/dist/domains/observability/saved-views/use-hosted-saved-views.es.js +232 -0
  611. package/dist/domains/observability/saved-views/use-hosted-saved-views.es.js.map +1 -0
  612. package/dist/domains/observability/saved-views.cjs.js +7 -0
  613. package/dist/domains/observability/saved-views.d.ts +1 -0
  614. package/dist/domains/observability/saved-views.es.js +4 -0
  615. package/dist/domains/observability.cjs.js +6 -0
  616. package/dist/domains/observability.es.js +4 -1
  617. package/dist/domains/scores/components/span-scoring.cjs.js +1 -1
  618. package/dist/domains/scores/components/span-scoring.es.js +1 -1
  619. package/dist/domains/scores/components/trace-scores-list.cjs.js +1 -1
  620. package/dist/domains/scores/components/trace-scores-list.es.js +1 -1
  621. package/dist/domains/scores/components/trace-scores-tab.cjs.js +1 -1
  622. package/dist/domains/scores/components/trace-scores-tab.es.js +1 -1
  623. package/dist/domains/skills/skill-simple-form.cjs.js +1 -1
  624. package/dist/domains/skills/skill-simple-form.es.js +1 -1
  625. package/dist/domains/spans/components/spans-explorer-body.cjs.js +64 -18
  626. package/dist/domains/spans/components/spans-explorer-body.cjs.js.map +1 -1
  627. package/dist/domains/spans/components/spans-explorer-body.es.js +64 -18
  628. package/dist/domains/spans/components/spans-explorer-body.es.js.map +1 -1
  629. package/dist/domains/spans/components/spans-filter-bar.cjs.js +6 -5
  630. package/dist/domains/spans/components/spans-filter-bar.cjs.js.map +1 -1
  631. package/dist/domains/spans/components/spans-filter-bar.es.js +6 -5
  632. package/dist/domains/spans/components/spans-filter-bar.es.js.map +1 -1
  633. package/dist/domains/spans/hooks/use-spans-filter-bar.cjs.js +15 -3
  634. package/dist/domains/spans/hooks/use-spans-filter-bar.cjs.js.map +1 -1
  635. package/dist/domains/spans/hooks/use-spans-filter-bar.es.js +15 -3
  636. package/dist/domains/spans/hooks/use-spans-filter-bar.es.js.map +1 -1
  637. package/dist/domains/spans/span-filters.cjs.js +53 -14
  638. package/dist/domains/spans/span-filters.cjs.js.map +1 -1
  639. package/dist/domains/spans/span-filters.es.js +52 -15
  640. package/dist/domains/spans/span-filters.es.js.map +1 -1
  641. package/dist/domains/spans/span-list-row.cjs.js +6 -1
  642. package/dist/domains/spans/span-list-row.cjs.js.map +1 -1
  643. package/dist/domains/spans/span-list-row.es.js +6 -1
  644. package/dist/domains/spans/span-list-row.es.js.map +1 -1
  645. package/dist/domains/threads/components/threads-explorer-body.cjs.js +45 -12
  646. package/dist/domains/threads/components/threads-explorer-body.cjs.js.map +1 -1
  647. package/dist/domains/threads/components/threads-explorer-body.es.js +46 -12
  648. package/dist/domains/threads/components/threads-explorer-body.es.js.map +1 -1
  649. package/dist/domains/threads/components/threads-filter-bar.cjs.js +3 -3
  650. package/dist/domains/threads/components/threads-filter-bar.es.js +3 -3
  651. package/dist/domains/threads/hooks/use-threads-filter-bar.cjs.js +14 -3
  652. package/dist/domains/threads/hooks/use-threads-filter-bar.cjs.js.map +1 -1
  653. package/dist/domains/threads/hooks/use-threads-filter-bar.es.js +14 -3
  654. package/dist/domains/threads/hooks/use-threads-filter-bar.es.js.map +1 -1
  655. package/dist/domains/threads/thread-filters.cjs.js +26 -13
  656. package/dist/domains/threads/thread-filters.cjs.js.map +1 -1
  657. package/dist/domains/threads/thread-filters.es.js +26 -13
  658. package/dist/domains/threads/thread-filters.es.js.map +1 -1
  659. package/dist/domains/threads/thread-list-row.cjs.js +2 -0
  660. package/dist/domains/threads/thread-list-row.cjs.js.map +1 -1
  661. package/dist/domains/threads/thread-list-row.es.js +2 -0
  662. package/dist/domains/threads/thread-list-row.es.js.map +1 -1
  663. package/dist/domains/traces/components/columns-menu/columns-menu.cjs.js +24 -19
  664. package/dist/domains/traces/components/columns-menu/columns-menu.cjs.js.map +1 -1
  665. package/dist/domains/traces/components/columns-menu/columns-menu.es.js +25 -20
  666. package/dist/domains/traces/components/columns-menu/columns-menu.es.js.map +1 -1
  667. package/dist/domains/traces/components/feedback-thread.cjs.js +1 -1
  668. package/dist/domains/traces/components/feedback-thread.es.js +1 -1
  669. package/dist/domains/traces/components/span-data-panel-view.cjs.js +12 -2
  670. package/dist/domains/traces/components/span-data-panel-view.cjs.js.map +1 -1
  671. package/dist/domains/traces/components/span-data-panel-view.es.js +12 -2
  672. package/dist/domains/traces/components/span-data-panel-view.es.js.map +1 -1
  673. package/dist/domains/traces/components/span-outcome.utils.cjs.js +1 -1
  674. package/dist/domains/traces/components/span-outcome.utils.es.js +1 -1
  675. package/dist/domains/traces/components/span-payload/span-error-renderer.cjs.js +1 -1
  676. package/dist/domains/traces/components/span-payload/span-error-renderer.es.js +1 -1
  677. package/dist/domains/traces/components/span-payload/span-input-renderers.cjs.js +1 -1
  678. package/dist/domains/traces/components/span-payload/span-input-renderers.es.js +1 -1
  679. package/dist/domains/traces/components/span-payload/span-output-renderers.cjs.js +2 -2
  680. package/dist/domains/traces/components/span-payload/span-output-renderers.es.js +2 -2
  681. package/dist/domains/traces/components/span-payload/span-payload-messages.cjs.js +3 -3
  682. package/dist/domains/traces/components/span-payload/span-payload-messages.es.js +3 -3
  683. package/dist/domains/traces/components/span-payload/span-payload-primitives.cjs.js +1 -1
  684. package/dist/domains/traces/components/span-payload/span-payload-primitives.es.js +1 -1
  685. package/dist/domains/traces/components/span-payload/span-payload-processor.cjs.js +1 -1
  686. package/dist/domains/traces/components/span-payload/span-payload-processor.es.js +1 -1
  687. package/dist/domains/traces/components/span-payload/span-payload-tool.cjs.js +1 -1
  688. package/dist/domains/traces/components/span-payload/span-payload-tool.es.js +1 -1
  689. package/dist/domains/traces/components/span-payload/span-processor-mutations.cjs.js +2 -2
  690. package/dist/domains/traces/components/span-payload/span-processor-mutations.es.js +2 -2
  691. package/dist/domains/traces/components/span-payload/span-tools-section.cjs.js +1 -1
  692. package/dist/domains/traces/components/span-payload/span-tools-section.es.js +1 -1
  693. package/dist/domains/traces/components/span-prompt-changes.cjs.js +1 -1
  694. package/dist/domains/traces/components/span-prompt-changes.es.js +1 -1
  695. package/dist/domains/traces/components/trace-columns-menu.cjs.js +2 -1
  696. package/dist/domains/traces/components/trace-columns-menu.cjs.js.map +1 -1
  697. package/dist/domains/traces/components/trace-columns-menu.es.js +2 -1
  698. package/dist/domains/traces/components/trace-columns-menu.es.js.map +1 -1
  699. package/dist/domains/traces/components/trace-data-panel-view.cjs.js +9 -2
  700. package/dist/domains/traces/components/trace-data-panel-view.cjs.js.map +1 -1
  701. package/dist/domains/traces/components/trace-data-panel-view.es.js +9 -2
  702. package/dist/domains/traces/components/trace-data-panel-view.es.js.map +1 -1
  703. package/dist/domains/traces/components/trace-span-panel.cjs.js +2 -1
  704. package/dist/domains/traces/components/trace-span-panel.cjs.js.map +1 -1
  705. package/dist/domains/traces/components/trace-span-panel.es.js +2 -1
  706. package/dist/domains/traces/components/trace-span-panel.es.js.map +1 -1
  707. package/dist/domains/traces/components/trace-span-timeline-markers.cjs.js +120 -0
  708. package/dist/domains/traces/components/trace-span-timeline-markers.cjs.js.map +1 -0
  709. package/dist/domains/traces/components/trace-span-timeline-markers.d.ts +1 -0
  710. package/dist/domains/traces/components/trace-span-timeline-markers.es.js +119 -0
  711. package/dist/domains/traces/components/trace-span-timeline-markers.es.js.map +1 -0
  712. package/dist/domains/traces/components/trace-span-timeline.cjs.js +8 -5
  713. package/dist/domains/traces/components/trace-span-timeline.cjs.js.map +1 -1
  714. package/dist/domains/traces/components/trace-span-timeline.es.js +8 -5
  715. package/dist/domains/traces/components/trace-span-timeline.es.js.map +1 -1
  716. package/dist/domains/traces/components/trace-time-range-chip.cjs.js +5 -5
  717. package/dist/domains/traces/components/trace-time-range-chip.cjs.js.map +1 -1
  718. package/dist/domains/traces/components/trace-time-range-chip.es.js +5 -5
  719. package/dist/domains/traces/components/trace-time-range-chip.es.js.map +1 -1
  720. package/dist/domains/traces/components/traces-explorer/traces-explorer-actions.cjs.js +15 -11
  721. package/dist/domains/traces/components/traces-explorer/traces-explorer-actions.cjs.js.map +1 -1
  722. package/dist/domains/traces/components/traces-explorer/traces-explorer-actions.es.js +15 -12
  723. package/dist/domains/traces/components/traces-explorer/traces-explorer-actions.es.js.map +1 -1
  724. package/dist/domains/traces/components/traces-explorer/traces-explorer-context.cjs.js +4 -3
  725. package/dist/domains/traces/components/traces-explorer/traces-explorer-context.cjs.js.map +1 -1
  726. package/dist/domains/traces/components/traces-explorer/traces-explorer-context.es.js +4 -3
  727. package/dist/domains/traces/components/traces-explorer/traces-explorer-context.es.js.map +1 -1
  728. package/dist/domains/traces/components/traces-explorer/traces-explorer-filter-bar.cjs.js +5 -4
  729. package/dist/domains/traces/components/traces-explorer/traces-explorer-filter-bar.cjs.js.map +1 -1
  730. package/dist/domains/traces/components/traces-explorer/traces-explorer-filter-bar.es.js +5 -4
  731. package/dist/domains/traces/components/traces-explorer/traces-explorer-filter-bar.es.js.map +1 -1
  732. package/dist/domains/traces/components/traces-explorer/traces-explorer-histogram.cjs.js +13 -5
  733. package/dist/domains/traces/components/traces-explorer/traces-explorer-histogram.cjs.js.map +1 -1
  734. package/dist/domains/traces/components/traces-explorer/traces-explorer-histogram.es.js +13 -5
  735. package/dist/domains/traces/components/traces-explorer/traces-explorer-histogram.es.js.map +1 -1
  736. package/dist/domains/traces/components/traces-explorer/traces-explorer-list-provider.cjs.js +5 -2
  737. package/dist/domains/traces/components/traces-explorer/traces-explorer-list-provider.cjs.js.map +1 -1
  738. package/dist/domains/traces/components/traces-explorer/traces-explorer-list-provider.es.js +5 -2
  739. package/dist/domains/traces/components/traces-explorer/traces-explorer-list-provider.es.js.map +1 -1
  740. package/dist/domains/traces/components/traces-explorer/traces-explorer-list.cjs.js +7 -11
  741. package/dist/domains/traces/components/traces-explorer/traces-explorer-list.cjs.js.map +1 -1
  742. package/dist/domains/traces/components/traces-explorer/traces-explorer-list.es.js +7 -11
  743. package/dist/domains/traces/components/traces-explorer/traces-explorer-list.es.js.map +1 -1
  744. package/dist/domains/traces/components/traces-explorer/traces-explorer-panel.cjs.js +3 -1
  745. package/dist/domains/traces/components/traces-explorer/traces-explorer-panel.cjs.js.map +1 -1
  746. package/dist/domains/traces/components/traces-explorer/traces-explorer-panel.es.js +3 -1
  747. package/dist/domains/traces/components/traces-explorer/traces-explorer-panel.es.js.map +1 -1
  748. package/dist/domains/traces/components/traces-explorer/traces-explorer-root.cjs.js +51 -5
  749. package/dist/domains/traces/components/traces-explorer/traces-explorer-root.cjs.js.map +1 -1
  750. package/dist/domains/traces/components/traces-explorer/traces-explorer-root.es.js +51 -5
  751. package/dist/domains/traces/components/traces-explorer/traces-explorer-root.es.js.map +1 -1
  752. package/dist/domains/traces/components/traces-explorer/traces-explorer-saved-views.cjs.js +20 -0
  753. package/dist/domains/traces/components/traces-explorer/traces-explorer-saved-views.cjs.js.map +1 -0
  754. package/dist/domains/traces/components/traces-explorer/traces-explorer-saved-views.d.ts +1 -0
  755. package/dist/domains/traces/components/traces-explorer/traces-explorer-saved-views.es.js +19 -0
  756. package/dist/domains/traces/components/traces-explorer/traces-explorer-saved-views.es.js.map +1 -0
  757. package/dist/domains/traces/components/traces-explorer/use-traces-filter-bar.cjs.js +10 -4
  758. package/dist/domains/traces/components/traces-explorer/use-traces-filter-bar.cjs.js.map +1 -1
  759. package/dist/domains/traces/components/traces-explorer/use-traces-filter-bar.es.js +10 -4
  760. package/dist/domains/traces/components/traces-explorer/use-traces-filter-bar.es.js.map +1 -1
  761. package/dist/domains/traces/components/traces-explorer.cjs.js +4 -1
  762. package/dist/domains/traces/components/traces-explorer.cjs.js.map +1 -1
  763. package/dist/domains/traces/components/traces-explorer.es.js +5 -3
  764. package/dist/domains/traces/components/traces-explorer.es.js.map +1 -1
  765. package/dist/domains/traces/components/traces-list-view-adapter.cjs.js +5 -1
  766. package/dist/domains/traces/components/traces-list-view-adapter.cjs.js.map +1 -1
  767. package/dist/domains/traces/components/traces-list-view-adapter.es.js +5 -1
  768. package/dist/domains/traces/components/traces-list-view-adapter.es.js.map +1 -1
  769. package/dist/domains/traces/components/traces-list-view.cjs.js +53 -18
  770. package/dist/domains/traces/components/traces-list-view.cjs.js.map +1 -1
  771. package/dist/domains/traces/components/traces-list-view.es.js +53 -18
  772. package/dist/domains/traces/components/traces-list-view.es.js.map +1 -1
  773. package/dist/domains/traces/components/traces-page-skeleton.cjs.js +1 -1
  774. package/dist/domains/traces/components/traces-page-skeleton.es.js +1 -1
  775. package/dist/domains/traces/trace-filters.cjs.js +5 -1
  776. package/dist/domains/traces/trace-filters.es.js +1 -1
  777. package/dist/domains/traces/trace-list-columns.cjs.js +48 -9
  778. package/dist/domains/traces/trace-list-columns.cjs.js.map +1 -1
  779. package/dist/domains/traces/trace-list-columns.es.js +48 -9
  780. package/dist/domains/traces/trace-list-columns.es.js.map +1 -1
  781. package/dist/domains/traces/trace-query-filters.cjs.js +1 -1
  782. package/dist/domains/traces/trace-query-filters.es.js +1 -1
  783. package/dist/domains/traces/utils/timeline-markers.cjs.js +34 -0
  784. package/dist/domains/traces/utils/timeline-markers.cjs.js.map +1 -0
  785. package/dist/domains/traces/utils/timeline-markers.d.ts +1 -0
  786. package/dist/domains/traces/utils/timeline-markers.es.js +33 -0
  787. package/dist/domains/traces/utils/timeline-markers.es.js.map +1 -0
  788. package/dist/domains/traces.cjs.js +5 -1
  789. package/dist/domains/traces.es.js +2 -2
  790. package/dist/domains/workflows/components/workflow-combobox.cjs.js +1 -1
  791. package/dist/domains/workflows/components/workflow-combobox.es.js +1 -1
  792. package/dist/domains/workflows/components/workflows-list/workflows-list.cjs.js +1 -1
  793. package/dist/domains/workflows/components/workflows-list/workflows-list.es.js +1 -1
  794. package/dist/domains/workflows/workflow/workflow-graph.cjs.js +1 -1
  795. package/dist/domains/workflows/workflow/workflow-graph.es.js +1 -1
  796. package/dist/domains/workspace/components/workspace-add-skill-dialog.cjs.js +1 -1
  797. package/dist/domains/workspace/components/workspace-add-skill-dialog.es.js +1 -1
  798. package/dist/domains/workspace/components/workspace-markdown-preview.cjs.js +1 -1
  799. package/dist/domains/workspace/components/workspace-markdown-preview.es.js +1 -1
  800. package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js +1 -1
  801. package/dist/ee/signals/components/trace-intelligence-entity-index.es.js +1 -1
  802. package/dist/{filter-bar-chip-B3pgpngW.js → filter-bar-chip-7O02P9Vk.js} +27 -9
  803. package/dist/filter-bar-chip-7O02P9Vk.js.map +1 -0
  804. package/dist/{filter-bar-chip-CyTAmjt6.cjs → filter-bar-chip-BUyMf8XQ.cjs} +40 -22
  805. package/dist/filter-bar-chip-BUyMf8XQ.cjs.map +1 -0
  806. package/dist/layout/tabbed-container.cjs.js +1 -1
  807. package/dist/layout/tabbed-container.es.js +1 -1
  808. package/dist/lib/form/json-schema-to-zod-runtime.cjs.js +4 -4
  809. package/dist/lib/form/json-schema-to-zod-runtime.cjs.js.map +1 -1
  810. package/dist/lib/form/json-schema-to-zod-runtime.es.js +4 -4
  811. package/dist/lib/form/json-schema-to-zod-runtime.es.js.map +1 -1
  812. package/dist/lib/form/zod-provider.cjs.js +5 -1
  813. package/dist/lib/form/zod-provider.cjs.js.map +1 -1
  814. package/dist/lib/form/zod-provider.es.js +5 -1
  815. package/dist/lib/form/zod-provider.es.js.map +1 -1
  816. package/dist/observability-saved-views-Bo5kLN20.js +297 -0
  817. package/dist/observability-saved-views-Bo5kLN20.js.map +1 -0
  818. package/dist/observability-saved-views-CwCii7hh.cjs +302 -0
  819. package/dist/observability-saved-views-CwCii7hh.cjs.map +1 -0
  820. package/dist/primitives/chart-axes.cjs.js +44 -0
  821. package/dist/primitives/chart-axes.cjs.js.map +1 -1
  822. package/dist/primitives/chart-axes.es.js +43 -1
  823. package/dist/primitives/chart-axes.es.js.map +1 -1
  824. package/dist/primitives/chart-frame.cjs.js +5 -3
  825. package/dist/primitives/chart-frame.cjs.js.map +1 -1
  826. package/dist/primitives/chart-frame.es.js +6 -4
  827. package/dist/primitives/chart-frame.es.js.map +1 -1
  828. package/dist/primitives/chart-time-tick.cjs.js +15 -11
  829. package/dist/primitives/chart-time-tick.cjs.js.map +1 -1
  830. package/dist/primitives/chart-time-tick.es.js +16 -12
  831. package/dist/primitives/chart-time-tick.es.js.map +1 -1
  832. package/dist/saved-view-schema-DRJYELfK.cjs +71 -0
  833. package/dist/saved-view-schema-DRJYELfK.cjs.map +1 -0
  834. package/dist/saved-view-schema-eJXlRRel.js +54 -0
  835. package/dist/saved-view-schema-eJXlRRel.js.map +1 -0
  836. package/dist/{span-payload-primitives-D3OO0u6u.cjs → span-payload-primitives-B10Xxmx7.cjs} +4 -4
  837. package/dist/{span-payload-primitives-D3OO0u6u.cjs.map → span-payload-primitives-B10Xxmx7.cjs.map} +1 -1
  838. package/dist/{span-payload-primitives-DTV7eUY-.js → span-payload-primitives-Dyhbqaa7.js} +4 -4
  839. package/dist/{span-payload-primitives-DTV7eUY-.js.map → span-payload-primitives-Dyhbqaa7.js.map} +1 -1
  840. package/dist/src/domains/chat/activity/activity-stretch-line.d.ts +4 -2
  841. package/dist/src/domains/chat/activity/components/activity-fold.d.ts +5 -4
  842. package/dist/src/domains/chat/activity/components/use-fading-edge.d.ts +6 -0
  843. package/dist/src/domains/chat/activity/components/use-rolling-words.d.ts +7 -0
  844. package/dist/src/domains/chat/activity/index.d.ts +2 -1
  845. package/dist/src/domains/chat/activity/model/activity-members.d.ts +1 -0
  846. package/dist/src/domains/chat/activity/model/activity-words.d.ts +3 -0
  847. package/dist/src/domains/chat/messages/renderers/tool-part.d.ts +4 -0
  848. package/dist/src/domains/chat/messages/skill-message.d.ts +3 -1
  849. package/dist/src/domains/chat/tools/badges/mcp-task-chip.d.ts +14 -0
  850. package/dist/src/domains/chat/tools/badges/tool-badge.d.ts +5 -1
  851. package/dist/src/domains/chat/tools/badges/use-mcp-task-progress.d.ts +27 -0
  852. package/dist/src/domains/chat/tools/tool-card.d.ts +5 -1
  853. package/dist/src/domains/dashboards/components/dashboard-grid.d.ts +18 -0
  854. package/dist/src/domains/dashboards/components/dashboard-renderer.d.ts +19 -0
  855. package/dist/src/domains/dashboards/components/view-gate.d.ts +30 -0
  856. package/dist/src/domains/dashboards/components/widget-chrome.d.ts +7 -0
  857. package/dist/src/domains/dashboards/components/widget-controls.d.ts +8 -0
  858. package/dist/src/domains/dashboards/components/widget-error.d.ts +6 -0
  859. package/dist/src/domains/dashboards/hooks/use-dashboard-requests.d.ts +10 -0
  860. package/dist/src/domains/dashboards/hooks/use-scorers.d.ts +66 -0
  861. package/dist/src/domains/dashboards/hooks/use-widget-views.d.ts +18 -0
  862. package/dist/src/domains/dashboards/index.d.ts +19 -0
  863. package/dist/src/domains/dashboards/kinds/index.d.ts +7 -0
  864. package/dist/src/domains/dashboards/kinds/kpis/index.d.ts +13 -0
  865. package/dist/src/domains/dashboards/kinds/kpis/kpis-widget.d.ts +3 -0
  866. package/dist/src/domains/dashboards/kinds/kpis/options.d.ts +35 -0
  867. package/dist/src/domains/dashboards/kinds/scores/index.d.ts +8 -0
  868. package/dist/src/domains/dashboards/kinds/scores/options.d.ts +13 -0
  869. package/dist/src/domains/dashboards/kinds/scores/scores-widget.d.ts +3 -0
  870. package/dist/src/domains/dashboards/kinds/table/index.d.ts +23 -0
  871. package/dist/src/domains/dashboards/kinds/table/table-cells.d.ts +26 -0
  872. package/dist/src/domains/dashboards/kinds/table/table-columns.d.ts +7 -0
  873. package/dist/src/domains/dashboards/kinds/table/table-frame.d.ts +13 -0
  874. package/dist/src/domains/dashboards/kinds/table/table-tabs.d.ts +10 -0
  875. package/dist/src/domains/dashboards/kinds/table/table-view.d.ts +5 -0
  876. package/dist/src/domains/dashboards/kinds/table/table-widget.d.ts +7 -0
  877. package/dist/src/domains/dashboards/kinds/timeseries/index.d.ts +30 -0
  878. package/dist/src/domains/dashboards/kinds/timeseries/timeseries-widget.d.ts +5 -0
  879. package/dist/src/domains/dashboards/lib/answers.d.ts +43 -0
  880. package/dist/src/domains/dashboards/lib/chrome.d.ts +14 -0
  881. package/dist/src/domains/dashboards/lib/definition.d.ts +27 -0
  882. package/dist/src/domains/dashboards/lib/filters.d.ts +6 -0
  883. package/dist/src/domains/dashboards/lib/format.d.ts +7 -0
  884. package/dist/src/domains/dashboards/lib/prepare-widget.d.ts +26 -0
  885. package/dist/src/domains/dashboards/lib/requests.d.ts +95 -0
  886. package/dist/src/domains/dashboards/lib/scores.d.ts +35 -0
  887. package/dist/src/domains/dashboards/lib/table.d.ts +188 -0
  888. package/dist/src/domains/dashboards/lib/timeseries.d.ts +119 -0
  889. package/dist/src/domains/dashboards/lib/values.d.ts +86 -0
  890. package/dist/src/domains/dashboards/metrics-dashboard.d.ts +7 -0
  891. package/dist/src/domains/dashboards/widget-kind.d.ts +31 -0
  892. package/dist/src/domains/logs/components/index.d.ts +1 -0
  893. package/dist/src/domains/logs/components/logs-saved-views.d.ts +4 -0
  894. package/dist/src/domains/logs/log-filters.d.ts +8 -0
  895. package/dist/src/domains/metrics/components/agent-runs-card.d.ts +10 -3
  896. package/dist/src/domains/metrics/components/breakdown/breakdown-name.d.ts +13 -0
  897. package/dist/src/domains/metrics/components/breakdown/breakdown-not-priced.d.ts +2 -0
  898. package/dist/src/domains/metrics/components/breakdown/breakdown-row-mark.d.ts +17 -4
  899. package/dist/src/domains/metrics/components/breakdown/breakdown-trend-text.d.ts +9 -0
  900. package/dist/src/domains/metrics/components/card-action-buttons.d.ts +9 -0
  901. package/dist/src/domains/metrics/components/chart-card.d.ts +33 -21
  902. package/dist/src/domains/metrics/components/distinct-ids/distinct-ids-chart.d.ts +0 -1
  903. package/dist/src/domains/metrics/components/failure-rate-card.d.ts +5 -2
  904. package/dist/src/domains/metrics/components/index.d.ts +1 -2
  905. package/dist/src/domains/metrics/components/metrics-grid/metrics-grid.d.ts +4 -1
  906. package/dist/src/domains/metrics/components/trace-aggregate-card.d.ts +1 -1
  907. package/dist/src/domains/observability/components/observability-header-slot.d.ts +6 -0
  908. package/dist/src/domains/observability/components/observability-histogram.d.ts +1 -1
  909. package/dist/src/domains/observability/hooks/use-observability-list-filters.d.ts +21 -5
  910. package/dist/src/domains/observability/index.d.ts +2 -0
  911. package/dist/src/domains/observability/lib/zoom-memory.d.ts +19 -0
  912. package/dist/src/domains/observability/observability-list-url-state.d.ts +39 -0
  913. package/dist/src/domains/observability/saved-view-state.d.ts +46 -0
  914. package/dist/src/domains/observability/saved-views/index.d.ts +7 -0
  915. package/dist/src/domains/observability/saved-views/observability-saved-views.d.ts +22 -0
  916. package/dist/src/domains/observability/saved-views/saved-views-provider.d.ts +15 -0
  917. package/dist/src/domains/observability/saved-views/saved-views-source.d.ts +41 -0
  918. package/dist/src/domains/observability/saved-views/use-hosted-saved-views.d.ts +34 -0
  919. package/dist/src/domains/spans/components/spans-explorer-body.d.ts +4 -1
  920. package/dist/src/domains/spans/components/spans-filter-bar.d.ts +3 -1
  921. package/dist/src/domains/spans/hooks/use-spans-filter-bar.d.ts +1 -1
  922. package/dist/src/domains/spans/hooks/use-spans-list-source.d.ts +3 -0
  923. package/dist/src/domains/spans/span-filters.d.ts +16 -5
  924. package/dist/src/domains/threads/components/threads-explorer-body.d.ts +4 -1
  925. package/dist/src/domains/threads/thread-filters.d.ts +6 -5
  926. package/dist/src/domains/traces/components/columns-menu/columns-menu.d.ts +3 -3
  927. package/dist/src/domains/traces/components/trace-data-panel-view.d.ts +7 -1
  928. package/dist/src/domains/traces/components/trace-span-panel.d.ts +2 -1
  929. package/dist/src/domains/traces/components/trace-span-timeline-markers.d.ts +5 -0
  930. package/dist/src/domains/traces/components/trace-span-timeline.d.ts +6 -1
  931. package/dist/src/domains/traces/components/trace-time-range-chip.d.ts +3 -1
  932. package/dist/src/domains/traces/components/traces-explorer/index.d.ts +4 -1
  933. package/dist/src/domains/traces/components/traces-explorer/traces-explorer-actions.d.ts +5 -5
  934. package/dist/src/domains/traces/components/traces-explorer/traces-explorer-context.d.ts +11 -1
  935. package/dist/src/domains/traces/components/traces-explorer/traces-explorer-saved-views.d.ts +7 -0
  936. package/dist/src/domains/traces/components/traces-list-view.d.ts +20 -7
  937. package/dist/src/domains/traces/hooks/use-traces-list-source.d.ts +5 -0
  938. package/dist/src/domains/traces/trace-filters.d.ts +27 -3
  939. package/dist/src/domains/traces/trace-list-columns.d.ts +16 -6
  940. package/dist/src/domains/traces/utils/timeline-markers.d.ts +25 -0
  941. package/dist/src/domains/workflows/context/use-persisted-workflow-run.d.ts +2 -0
  942. package/dist/src/domains/workflows/workflow/input/processor-input.d.ts +5 -535
  943. package/dist/src/domains/workflows/workflow/use-workflow-trigger.d.ts +1 -1
  944. package/dist/src/ds/components/AgentIndicator/agent-glyph.d.ts +4 -0
  945. package/dist/src/ds/components/AgentIndicator/agent-indicator.d.ts +8 -0
  946. package/dist/src/ds/components/AgentIndicator/animate.d.ts +5 -0
  947. package/dist/src/ds/components/AgentIndicator/index.d.ts +4 -0
  948. package/dist/src/ds/components/AgentIndicator/paint.d.ts +21 -0
  949. package/dist/src/ds/components/AgentIndicator/poses.d.ts +7 -0
  950. package/dist/src/ds/components/AgentIndicator/shapes.d.ts +41 -0
  951. package/dist/src/ds/components/Arrival/arrival.d.ts +11 -0
  952. package/dist/src/ds/components/Arrival/index.d.ts +1 -1
  953. package/dist/src/ds/components/DataList/TracesDataList/traces-data-list-cells.d.ts +12 -0
  954. package/dist/src/ds/components/DataList/TracesDataList/traces-data-list.d.ts +3 -1
  955. package/dist/src/ds/components/FilterBar/types.d.ts +2 -0
  956. package/dist/src/ds/components/MetricsCard/index.d.ts +1 -1
  957. package/dist/src/ds/components/MetricsCard/metrics-card-actions.d.ts +2 -1
  958. package/dist/src/ds/components/MetricsCard/metrics-card-headline.d.ts +13 -0
  959. package/dist/src/ds/components/MetricsCard/metrics-card-title-menu.d.ts +2 -0
  960. package/dist/src/ds/components/MetricsCard/metrics-card-title.d.ts +1 -3
  961. package/dist/src/ds/components/MetricsCard/metrics-card-toolbar.d.ts +3 -3
  962. package/dist/src/ds/components/MetricsCard/metrics-card-total.d.ts +11 -3
  963. package/dist/src/ds/components/MetricsCard/metrics-card.d.ts +2 -9
  964. package/dist/src/ds/components/MetricsCard/metrics-story-data.d.ts +0 -26
  965. package/dist/src/ds/components/MetricsKpiCard/metrics-kpi-card-root.d.ts +5 -2
  966. package/dist/src/ds/components/MetricsLineChart/metrics-line-chart-legend.d.ts +3 -4
  967. package/dist/src/ds/components/MetricsLineChart/metrics-line-chart.d.ts +2 -6
  968. package/dist/src/ds/components/SavedViews/saved-view-editor.d.ts +3 -1
  969. package/dist/src/ds/components/SavedViews/saved-view-picker.d.ts +21 -0
  970. package/dist/src/ds/components/SavedViews/use-saved-views.d.ts +6 -2
  971. package/dist/src/ds/components/ai/activity/activity.d.ts +12 -7
  972. package/dist/src/ds/components/ai/activity/index.d.ts +1 -0
  973. package/dist/src/ds/components/ai/activity/presets/signal-activity.d.ts +4 -1
  974. package/dist/src/ds/components/ai/activity/use-relative-paths.d.ts +3 -0
  975. package/dist/src/ds/components/ai/message-reveal/message-reveal.d.ts +2 -1
  976. package/dist/src/ds/components/ai/tool-call/tool-presentation.d.ts +4 -0
  977. package/dist/src/ds/primitives/chart-axes.d.ts +24 -0
  978. package/dist/src/ds/primitives/chart-frame.d.ts +2 -1
  979. package/dist/src/ds/primitives/chart-time-tick.d.ts +7 -4
  980. package/dist/src/lib/string.d.ts +1 -0
  981. package/dist/{string-OAgeMRQ5.js → string-CNKDIc_4.js} +6 -2
  982. package/dist/string-CNKDIc_4.js.map +1 -0
  983. package/dist/{string-CymY0aJ9.cjs → string-DdJJdCv2.cjs} +11 -1
  984. package/dist/string-DdJJdCv2.cjs.map +1 -0
  985. package/dist/style.css +67 -4
  986. package/dist/{tabbed-container-x2mfK07d.js → tabbed-container-BKUqfEKy.js} +2 -2
  987. package/dist/{tabbed-container-x2mfK07d.js.map → tabbed-container-BKUqfEKy.js.map} +1 -1
  988. package/dist/{tabbed-container-CBTb0LgE.cjs → tabbed-container-CFEImJOK.cjs} +2 -2
  989. package/dist/{tabbed-container-CBTb0LgE.cjs.map → tabbed-container-CFEImJOK.cjs.map} +1 -1
  990. package/dist/{tool-approval-6E73C0r6.cjs → tool-approval-BfjoSNOC.cjs} +4 -4
  991. package/dist/{tool-approval-6E73C0r6.cjs.map → tool-approval-BfjoSNOC.cjs.map} +1 -1
  992. package/dist/{tool-approval-BXlro6fV.js → tool-approval-FeuyUUcL.js} +4 -4
  993. package/dist/{tool-approval-BXlro6fV.js.map → tool-approval-FeuyUUcL.js.map} +1 -1
  994. package/dist/{tool-call-CItJ8KLA.js → tool-call-BxYXs9w0.js} +9 -7
  995. package/dist/{tool-call-CItJ8KLA.js.map → tool-call-BxYXs9w0.js.map} +1 -1
  996. package/dist/{tool-call-Dq9xF3WD.cjs → tool-call-CvilN9ti.cjs} +9 -7
  997. package/dist/{tool-call-Dq9xF3WD.cjs.map → tool-call-CvilN9ti.cjs.map} +1 -1
  998. package/dist/{tool-card-o5u4YCR0.cjs → tool-card-B7O8AsRl.cjs} +9 -5
  999. package/dist/tool-card-B7O8AsRl.cjs.map +1 -0
  1000. package/dist/{tool-card-Bd8weXze.js → tool-card-ELW898uw.js} +9 -5
  1001. package/dist/tool-card-ELW898uw.js.map +1 -0
  1002. package/dist/{tool-presentation-D2uUj1AB.cjs → tool-presentation-BLErsb7c.cjs} +38 -40
  1003. package/dist/tool-presentation-BLErsb7c.cjs.map +1 -0
  1004. package/dist/{tool-presentation-DKfIKLQy.js → tool-presentation-BSZYIWx2.js} +38 -40
  1005. package/dist/tool-presentation-BSZYIWx2.js.map +1 -0
  1006. package/dist/{trace-filters-C27yWcan.js → trace-filters-BJaebsxJ.js} +78 -11
  1007. package/dist/trace-filters-BJaebsxJ.js.map +1 -0
  1008. package/dist/{trace-filters-BpeBUjCb.cjs → trace-filters-BNEZ31HX.cjs} +100 -9
  1009. package/dist/trace-filters-BNEZ31HX.cjs.map +1 -0
  1010. package/dist/types-CP7wbYua.cjs.map +1 -1
  1011. package/dist/types-DiiL5mTO.js.map +1 -1
  1012. package/dist/utils/string.cjs.js +2 -1
  1013. package/dist/utils/string.es.js +1 -1
  1014. package/package.json +14 -14
  1015. package/dist/Arrival-Dm6Vgn78.cjs.map +0 -1
  1016. package/dist/Arrival-NpBOyV52.js.map +0 -1
  1017. package/dist/DataList-Cmk08jUV.cjs.map +0 -1
  1018. package/dist/DataList-Ve3omCXT.js.map +0 -1
  1019. package/dist/DateTimeRangePicker-ByMbLdom.js.map +0 -1
  1020. package/dist/DateTimeRangePicker-DGbH5WOn.cjs.map +0 -1
  1021. package/dist/FilterBar-Dk3QEuT6.js.map +0 -1
  1022. package/dist/FilterBar-gEvoWDXA.cjs.map +0 -1
  1023. package/dist/MetricsCard-C9GWgT58.js.map +0 -1
  1024. package/dist/MetricsCard-Dly_H3oX.cjs.map +0 -1
  1025. package/dist/MetricsLineChart-2m4LVL1N.cjs.map +0 -1
  1026. package/dist/MetricsLineChart-DKzuRU2q.js.map +0 -1
  1027. package/dist/MetricsStackedBarChart-DJB4aByt.js.map +0 -1
  1028. package/dist/MetricsStackedBarChart-NATtwA_W.cjs.map +0 -1
  1029. package/dist/activity-QyLJcBKc.cjs.map +0 -1
  1030. package/dist/activity-ihrl0JtH.js.map +0 -1
  1031. package/dist/combobox-C-E7_q4j.cjs.map +0 -1
  1032. package/dist/combobox-CDS2pBqz.js.map +0 -1
  1033. package/dist/domains/metrics/components/metrics-kpis.cjs.js +0 -106
  1034. package/dist/domains/metrics/components/metrics-kpis.cjs.js.map +0 -1
  1035. package/dist/domains/metrics/components/metrics-kpis.d.ts +0 -1
  1036. package/dist/domains/metrics/components/metrics-kpis.es.js +0 -105
  1037. package/dist/domains/metrics/components/metrics-kpis.es.js.map +0 -1
  1038. package/dist/filter-bar-chip-B3pgpngW.js.map +0 -1
  1039. package/dist/filter-bar-chip-CyTAmjt6.cjs.map +0 -1
  1040. package/dist/src/domains/metrics/components/metrics-kpis.d.ts +0 -2
  1041. package/dist/src/ds/components/MetricsCard/metrics-card-description.d.ts +0 -4
  1042. package/dist/src/ds/components/MetricsCard/metrics-card-summary.d.ts +0 -8
  1043. package/dist/src/ds/components/MetricsCard/metrics-card-tabs.d.ts +0 -16
  1044. package/dist/src/ds/components/MetricsCard/metrics-card-title-and-description.d.ts +0 -16
  1045. package/dist/string-CymY0aJ9.cjs.map +0 -1
  1046. package/dist/string-OAgeMRQ5.js.map +0 -1
  1047. package/dist/tool-card-Bd8weXze.js.map +0 -1
  1048. package/dist/tool-card-o5u4YCR0.cjs.map +0 -1
  1049. package/dist/tool-presentation-D2uUj1AB.cjs.map +0 -1
  1050. package/dist/tool-presentation-DKfIKLQy.js.map +0 -1
  1051. package/dist/trace-filters-BpeBUjCb.cjs.map +0 -1
  1052. package/dist/trace-filters-C27yWcan.js.map +0 -1
@@ -7,6 +7,7 @@ var TRACE_OPTIONAL_COLUMNS = [
7
7
  "duration",
8
8
  "traceCount",
9
9
  "timeToFirstChunk",
10
+ "timeToFirstToken",
10
11
  "endTime",
11
12
  "environment",
12
13
  "model",
@@ -46,11 +47,6 @@ var DEFAULT_TRACE_COLUMN_PREFERENCES = {
46
47
  customColumns: [],
47
48
  metadataKeys: []
48
49
  };
49
- /** The Threads list: the trace defaults plus each thread's trace count. Not offered in any column picker. */
50
- var THREAD_LIST_COLUMN_PREFERENCES = {
51
- ...DEFAULT_TRACE_COLUMN_PREFERENCES,
52
- visibleColumns: [...DEFAULT_TRACE_COLUMN_PREFERENCES.visibleColumns, "traceCount"]
53
- };
54
50
  var TRACE_COLUMN_CATALOGS = {
55
51
  traces: {
56
52
  standardColumns: [
@@ -59,6 +55,7 @@ var TRACE_COLUMN_CATALOGS = {
59
55
  "output",
60
56
  "duration",
61
57
  "timeToFirstChunk",
58
+ "timeToFirstToken",
62
59
  "endTime",
63
60
  "environment"
64
61
  ],
@@ -72,6 +69,8 @@ var TRACE_COLUMN_CATALOGS = {
72
69
  "input",
73
70
  "output",
74
71
  "duration",
72
+ "timeToFirstChunk",
73
+ "timeToFirstToken",
75
74
  "endTime",
76
75
  "environment",
77
76
  "model",
@@ -89,6 +88,32 @@ var TRACE_COLUMN_CATALOGS = {
89
88
  customColumns: [],
90
89
  metadataKeys: []
91
90
  }
91
+ },
92
+ threads: {
93
+ standardColumns: [
94
+ "type",
95
+ "input",
96
+ "output",
97
+ "duration",
98
+ "traceCount",
99
+ "timeToFirstChunk",
100
+ "timeToFirstToken",
101
+ "endTime",
102
+ "environment"
103
+ ],
104
+ usage: false,
105
+ metadata: false,
106
+ defaults: {
107
+ visibleColumns: [
108
+ "type",
109
+ "input",
110
+ "output",
111
+ "duration",
112
+ "traceCount"
113
+ ],
114
+ customColumns: [],
115
+ metadataKeys: []
116
+ }
92
117
  }
93
118
  };
94
119
  var TRACE_COLUMN_PREFERENCES_VERSION = 4;
@@ -142,7 +167,7 @@ function serializeTraceColumnPreferences(preferences) {
142
167
  });
143
168
  }
144
169
  /** Stable key per column of `buildTraceListColumns`, in the same order. Used to persist the column order. */
145
- function buildTraceListColumnKeys(preferences) {
170
+ function buildTraceListColumnKeys(preferences, { outcomeColumn = true } = {}) {
146
171
  const visible = new Set(preferences.visibleColumns);
147
172
  const keys = ["startTime"];
148
173
  if (visible.has("type")) keys.push("type");
@@ -150,10 +175,12 @@ function buildTraceListColumnKeys(preferences) {
150
175
  if (visible.has("input")) keys.push("input");
151
176
  if (visible.has("output")) keys.push("output");
152
177
  keys.push("status");
178
+ if (outcomeColumn) keys.push("stopReason");
153
179
  for (const column of [
154
180
  "duration",
155
181
  "traceCount",
156
182
  "timeToFirstChunk",
183
+ "timeToFirstToken",
157
184
  "endTime",
158
185
  "environment",
159
186
  "model",
@@ -164,7 +191,7 @@ function buildTraceListColumnKeys(preferences) {
164
191
  keys.push(...preferences.metadataKeys.map((key) => `metadata:${key}`));
165
192
  return keys;
166
193
  }
167
- function buildTraceListColumns(preferences) {
194
+ function buildTraceListColumns(preferences, { outcomeColumn = true } = {}) {
168
195
  const visible = new Set(preferences.visibleColumns);
169
196
  const columns = ["11rem"];
170
197
  const hasPreview = visible.has("input") || visible.has("output");
@@ -172,10 +199,11 @@ function buildTraceListColumns(preferences) {
172
199
  columns.push(hasPreview ? "14rem" : "minmax(8rem,1fr)");
173
200
  if (visible.has("input")) columns.push("minmax(8rem,1fr)");
174
201
  if (visible.has("output")) columns.push("minmax(8rem,1fr)");
175
- columns.push("6rem");
202
+ columns.push(...outcomeColumn ? ["7rem", "9rem"] : ["6rem"]);
176
203
  if (visible.has("duration")) columns.push("7rem");
177
204
  if (visible.has("traceCount")) columns.push("6rem");
178
205
  if (visible.has("timeToFirstChunk")) columns.push("7rem");
206
+ if (visible.has("timeToFirstToken")) columns.push("7rem");
179
207
  if (visible.has("endTime")) columns.push("11rem");
180
208
  if (visible.has("environment")) columns.push("8rem");
181
209
  if (visible.has("model")) columns.push("10rem");
@@ -210,6 +238,17 @@ function formatTraceMetadataValue(metadata, key) {
210
238
  function hasTraceColumn(preferences, column) {
211
239
  return preferences.visibleColumns.includes(column);
212
240
  }
241
+ /**
242
+ * The preferences to draw when the store does not record every streaming timing: the
243
+ * unrecorded timing columns are hidden but stay saved, so they come back on a store that records them.
244
+ */
245
+ function withoutUnrecordedStreamingColumns(preferences, { withTimeToFirstChunk, withTimeToFirstToken }) {
246
+ if (withTimeToFirstChunk && withTimeToFirstToken) return preferences;
247
+ return {
248
+ ...preferences,
249
+ visibleColumns: preferences.visibleColumns.filter((column) => (withTimeToFirstChunk || column !== "timeToFirstChunk") && (withTimeToFirstToken || column !== "timeToFirstToken"))
250
+ };
251
+ }
213
252
  function toggleTraceColumn(preferences, column) {
214
253
  return {
215
254
  ...preferences,
@@ -250,7 +289,6 @@ function isTraceUsageColumn(column) {
250
289
  return TRACE_USAGE_COLUMN_SET.has(column);
251
290
  }
252
291
  exports.DEFAULT_TRACE_COLUMN_PREFERENCES = DEFAULT_TRACE_COLUMN_PREFERENCES;
253
- exports.THREAD_LIST_COLUMN_PREFERENCES = THREAD_LIST_COLUMN_PREFERENCES;
254
292
  exports.TRACE_COLUMN_CATALOGS = TRACE_COLUMN_CATALOGS;
255
293
  exports.TRACE_CUSTOM_COLUMN_FIELDS = TRACE_CUSTOM_COLUMN_FIELDS;
256
294
  exports.TRACE_CUSTOM_COLUMN_LABELS = TRACE_CUSTOM_COLUMN_LABELS;
@@ -271,5 +309,6 @@ exports.removeTraceCustomColumn = removeTraceCustomColumn;
271
309
  exports.removeTraceMetadataColumn = removeTraceMetadataColumn;
272
310
  exports.serializeTraceColumnPreferences = serializeTraceColumnPreferences;
273
311
  exports.toggleTraceColumn = toggleTraceColumn;
312
+ exports.withoutUnrecordedStreamingColumns = withoutUnrecordedStreamingColumns;
274
313
 
275
314
  //# sourceMappingURL=trace-list-columns.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trace-list-columns.cjs.js","names":[],"sources":["../../../src/domains/traces/trace-list-columns.ts"],"sourcesContent":["export const TRACE_OPTIONAL_COLUMNS = [\n 'type',\n 'input',\n 'output',\n 'duration',\n 'traceCount',\n 'timeToFirstChunk',\n 'endTime',\n 'environment',\n 'model',\n 'provider',\n 'inputTokens',\n 'outputTokens',\n 'totalTokens',\n 'estimatedCost',\n] as const;\n\nexport type TraceOptionalColumn = (typeof TRACE_OPTIONAL_COLUMNS)[number];\n\nexport const TRACE_USAGE_COLUMNS = [\n 'inputTokens',\n 'outputTokens',\n 'totalTokens',\n 'estimatedCost',\n] as const satisfies readonly TraceOptionalColumn[];\n\n/** Trace properties that are not regular columns but can be pinned as a custom column. */\nexport const TRACE_CUSTOM_COLUMN_FIELDS = ['traceId', 'threadId', 'resourceId', 'entityId'] as const;\n\nexport type TraceCustomColumn = (typeof TRACE_CUSTOM_COLUMN_FIELDS)[number];\n\nexport const TRACE_CUSTOM_COLUMN_LABELS: Record<TraceCustomColumn, string> = {\n traceId: 'Trace ID',\n threadId: 'Thread ID',\n resourceId: 'Resource ID',\n entityId: 'Primitive ID',\n};\n\nexport type TraceColumnPreferences = {\n readonly visibleColumns: readonly TraceOptionalColumn[];\n readonly customColumns: readonly TraceCustomColumn[];\n readonly metadataKeys: readonly string[];\n};\n\nimport type { TraceUsageSummary } from '@mastra/react/hooks/traces';\nexport type { TraceUsageSummary };\n\nexport const DEFAULT_TRACE_COLUMN_PREFERENCES: TraceColumnPreferences = {\n visibleColumns: ['type', 'input', 'output', 'duration', 'estimatedCost'],\n customColumns: [],\n metadataKeys: [],\n};\n\n/** The Threads list: the trace defaults plus each thread's trace count. Not offered in any column picker. */\nexport const THREAD_LIST_COLUMN_PREFERENCES: TraceColumnPreferences = {\n ...DEFAULT_TRACE_COLUMN_PREFERENCES,\n visibleColumns: [...DEFAULT_TRACE_COLUMN_PREFERENCES.visibleColumns, 'traceCount'],\n};\n\n/** A list a column selection belongs to. Each list only offers the columns its rows carry. */\nexport type TraceColumnScope = 'traces' | 'spans';\n\nexport type TraceColumnCatalog = {\n /** Plain columns offered in the picker, in menu order. */\n readonly standardColumns: readonly TraceOptionalColumn[];\n /** Whether rows carry token and cost usage. */\n readonly usage: boolean;\n /** Whether rows carry metadata that can be shown as columns. */\n readonly metadata: boolean;\n readonly defaults: TraceColumnPreferences;\n};\n\nexport const TRACE_COLUMN_CATALOGS: Record<TraceColumnScope, TraceColumnCatalog> = {\n traces: {\n standardColumns: ['type', 'input', 'output', 'duration', 'timeToFirstChunk', 'endTime', 'environment'],\n usage: true,\n metadata: true,\n defaults: DEFAULT_TRACE_COLUMN_PREFERENCES,\n },\n spans: {\n standardColumns: ['type', 'input', 'output', 'duration', 'endTime', 'environment', 'model', 'provider'],\n usage: false,\n metadata: false,\n defaults: { visibleColumns: ['type', 'input', 'output', 'duration'], customColumns: [], metadataKeys: [] },\n },\n};\n\n// v2: 'entity' became 'type' and moved before Name; duration + cost joined the defaults.\n// v3: added `customColumns`; a v2 payload is migrated rather than reset.\n// v4: added 'output', shown after 'input' for anyone who had Input visible.\nconst TRACE_COLUMN_PREFERENCES_VERSION = 4;\nconst TRACE_COLUMN_PREFERENCES_MIGRATABLE_VERSIONS = new Set<unknown>([2, 3, TRACE_COLUMN_PREFERENCES_VERSION]);\nconst TRACE_COLUMN_SET = new Set<string>(TRACE_OPTIONAL_COLUMNS);\nconst TRACE_USAGE_COLUMN_SET = new Set<TraceOptionalColumn>(TRACE_USAGE_COLUMNS);\nconst TRACE_CUSTOM_COLUMN_SET = new Set<string>(TRACE_CUSTOM_COLUMN_FIELDS);\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nfunction isTraceOptionalColumn(value: unknown): value is TraceOptionalColumn {\n return typeof value === 'string' && TRACE_COLUMN_SET.has(value);\n}\n\nexport function isTraceCustomColumn(value: unknown): value is TraceCustomColumn {\n return typeof value === 'string' && TRACE_CUSTOM_COLUMN_SET.has(value);\n}\n\nfunction uniqueMetadataKeys(value: unknown): string[] {\n if (!Array.isArray(value)) return [];\n\n const keys = value\n .filter(key => typeof key === 'string')\n .map(key => key.trim())\n .filter(Boolean);\n\n return [...new Set(keys)];\n}\n\nexport function parseTraceColumnPreferences(\n serialized: string | undefined,\n defaults: TraceColumnPreferences = DEFAULT_TRACE_COLUMN_PREFERENCES,\n): TraceColumnPreferences {\n if (!serialized) return defaults;\n\n try {\n const parsed: unknown = JSON.parse(serialized);\n if (!isRecord(parsed) || !TRACE_COLUMN_PREFERENCES_MIGRATABLE_VERSIONS.has(parsed.version)) {\n return defaults;\n }\n\n const visibleColumns = Array.isArray(parsed.visibleColumns)\n ? [...new Set(parsed.visibleColumns.filter(isTraceOptionalColumn))]\n : [...defaults.visibleColumns];\n if (parsed.version !== TRACE_COLUMN_PREFERENCES_VERSION && !visibleColumns.includes('output')) {\n const input = visibleColumns.indexOf('input');\n if (input !== -1) visibleColumns.splice(input + 1, 0, 'output');\n }\n const customColumns = Array.isArray(parsed.customColumns)\n ? [...new Set(parsed.customColumns.filter(isTraceCustomColumn))]\n : [];\n\n return {\n visibleColumns,\n customColumns,\n metadataKeys: uniqueMetadataKeys(parsed.metadataKeys),\n };\n } catch {\n return defaults;\n }\n}\n\nexport function serializeTraceColumnPreferences(preferences: TraceColumnPreferences): string {\n return JSON.stringify({\n version: TRACE_COLUMN_PREFERENCES_VERSION,\n visibleColumns: preferences.visibleColumns,\n customColumns: preferences.customColumns,\n metadataKeys: preferences.metadataKeys,\n });\n}\n\n/** Stable key per column of `buildTraceListColumns`, in the same order. Used to persist the column order. */\nexport function buildTraceListColumnKeys(preferences: TraceColumnPreferences): string[] {\n const visible = new Set(preferences.visibleColumns);\n const keys = ['startTime'];\n if (visible.has('type')) keys.push('type');\n keys.push('name');\n if (visible.has('input')) keys.push('input');\n if (visible.has('output')) keys.push('output');\n keys.push('status');\n for (const column of [\n 'duration',\n 'traceCount',\n 'timeToFirstChunk',\n 'endTime',\n 'environment',\n 'model',\n 'provider',\n ...TRACE_USAGE_COLUMNS,\n ] as const) {\n if (visible.has(column)) keys.push(column);\n }\n keys.push(...preferences.customColumns.map(field => `custom:${field}`));\n keys.push(...preferences.metadataKeys.map(key => `metadata:${key}`));\n return keys;\n}\n\nexport function buildTraceListColumns(preferences: TraceColumnPreferences): string {\n const visible = new Set(preferences.visibleColumns);\n // Name is bounded when Input or Output is visible so they (1fr each) absorb the free space;\n // without either, Name is the flexible track that fills the grid.\n const columns = ['11rem'];\n const hasPreview = visible.has('input') || visible.has('output');\n\n if (visible.has('type')) columns.push('7rem');\n columns.push(hasPreview ? '14rem' : 'minmax(8rem,1fr)');\n if (visible.has('input')) columns.push('minmax(8rem,1fr)');\n if (visible.has('output')) columns.push('minmax(8rem,1fr)');\n\n columns.push('6rem');\n\n if (visible.has('duration')) columns.push('7rem');\n if (visible.has('traceCount')) columns.push('6rem');\n if (visible.has('timeToFirstChunk')) columns.push('7rem');\n if (visible.has('endTime')) columns.push('11rem');\n if (visible.has('environment')) columns.push('8rem');\n if (visible.has('model')) columns.push('10rem');\n if (visible.has('provider')) columns.push('8rem');\n if (visible.has('inputTokens')) columns.push('8rem');\n if (visible.has('outputTokens')) columns.push('8rem');\n if (visible.has('totalTokens')) columns.push('8rem');\n if (visible.has('estimatedCost')) columns.push('8rem');\n\n for (const _field of preferences.customColumns) {\n columns.push('minmax(8rem,14rem)');\n }\n\n for (const _key of preferences.metadataKeys) {\n columns.push('minmax(8rem,14rem)');\n }\n\n return columns.join(' ');\n}\n\nconst RUN_PREFIX_PATTERN = /^(?:agent|workflow|scorer) run: '(.+?)'(.*)$/;\n\n/** Core names root spans `agent run: 'id'` (+ optional ` (resumed)`); the Primitive type column already carries\n * the kind, so the list shows just the id and any suffix. Core names are untouched for exporters. */\nexport function displayTraceName<T extends string | null | undefined>(name: T): T {\n if (!name) return name;\n return name.replace(RUN_PREFIX_PATTERN, '$1$2') as T;\n}\n\nexport function formatTraceMetadataValue(\n metadata: Record<string, unknown> | null | undefined,\n key: string,\n): string | undefined {\n if (!metadata || !Object.prototype.hasOwnProperty.call(metadata, key)) return undefined;\n const value = metadata[key];\n if (value == null) return undefined;\n\n if (typeof value === 'string') return value;\n if (typeof value === 'number' || typeof value === 'boolean' || typeof value === 'bigint') return String(value);\n\n try {\n return JSON.stringify(value) ?? undefined;\n } catch {\n return undefined;\n }\n}\n\nexport function hasTraceColumn(preferences: TraceColumnPreferences, column: TraceOptionalColumn): boolean {\n return preferences.visibleColumns.includes(column);\n}\n\nexport function toggleTraceColumn(\n preferences: TraceColumnPreferences,\n column: TraceOptionalColumn,\n): TraceColumnPreferences {\n return {\n ...preferences,\n visibleColumns: preferences.visibleColumns.includes(column)\n ? preferences.visibleColumns.filter(visibleColumn => visibleColumn !== column)\n : [...preferences.visibleColumns, column],\n };\n}\n\nexport function addTraceCustomColumn(\n preferences: TraceColumnPreferences,\n field: TraceCustomColumn,\n): TraceColumnPreferences {\n if (preferences.customColumns.includes(field)) return preferences;\n return { ...preferences, customColumns: [...preferences.customColumns, field] };\n}\n\nexport function removeTraceCustomColumn(\n preferences: TraceColumnPreferences,\n field: TraceCustomColumn,\n): TraceColumnPreferences {\n return { ...preferences, customColumns: preferences.customColumns.filter(customColumn => customColumn !== field) };\n}\n\nexport function addTraceMetadataColumn(preferences: TraceColumnPreferences, key: string): TraceColumnPreferences {\n const normalizedKey = key.trim();\n if (!normalizedKey || preferences.metadataKeys.includes(normalizedKey)) return preferences;\n return { ...preferences, metadataKeys: [...preferences.metadataKeys, normalizedKey] };\n}\n\nexport function removeTraceMetadataColumn(preferences: TraceColumnPreferences, key: string): TraceColumnPreferences {\n return { ...preferences, metadataKeys: preferences.metadataKeys.filter(metadataKey => metadataKey !== key) };\n}\n\nexport function hasTraceUsageColumn(preferences: TraceColumnPreferences): boolean {\n return preferences.visibleColumns.some(isTraceUsageColumn);\n}\n\nexport function isTraceUsageColumn(column: TraceOptionalColumn): boolean {\n return TRACE_USAGE_COLUMN_SET.has(column);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"trace-list-columns.cjs.js","names":[],"sources":["../../../src/domains/traces/trace-list-columns.ts"],"sourcesContent":["export const TRACE_OPTIONAL_COLUMNS = [\n 'type',\n 'input',\n 'output',\n 'duration',\n 'traceCount',\n 'timeToFirstChunk',\n 'timeToFirstToken',\n 'endTime',\n 'environment',\n 'model',\n 'provider',\n 'inputTokens',\n 'outputTokens',\n 'totalTokens',\n 'estimatedCost',\n] as const;\n\nexport type TraceOptionalColumn = (typeof TRACE_OPTIONAL_COLUMNS)[number];\n\nexport const TRACE_USAGE_COLUMNS = [\n 'inputTokens',\n 'outputTokens',\n 'totalTokens',\n 'estimatedCost',\n] as const satisfies readonly TraceOptionalColumn[];\n\n/** Trace properties that are not regular columns but can be pinned as a custom column. */\nexport const TRACE_CUSTOM_COLUMN_FIELDS = ['traceId', 'threadId', 'resourceId', 'entityId'] as const;\n\nexport type TraceCustomColumn = (typeof TRACE_CUSTOM_COLUMN_FIELDS)[number];\n\nexport const TRACE_CUSTOM_COLUMN_LABELS: Record<TraceCustomColumn, string> = {\n traceId: 'Trace ID',\n threadId: 'Thread ID',\n resourceId: 'Resource ID',\n entityId: 'Primitive ID',\n};\n\nexport type TraceColumnPreferences = {\n readonly visibleColumns: readonly TraceOptionalColumn[];\n readonly customColumns: readonly TraceCustomColumn[];\n readonly metadataKeys: readonly string[];\n};\n\nimport type { TraceUsageSummary } from '@mastra/react/hooks/traces';\nexport type { TraceUsageSummary };\n\nexport const DEFAULT_TRACE_COLUMN_PREFERENCES: TraceColumnPreferences = {\n visibleColumns: ['type', 'input', 'output', 'duration', 'estimatedCost'],\n customColumns: [],\n metadataKeys: [],\n};\n\n/** A list a column selection belongs to. Each list only offers the columns its rows carry. */\nexport type TraceColumnScope = 'traces' | 'spans' | 'threads';\n\nexport type TraceColumnCatalog = {\n /** Plain columns offered in the picker, in menu order. */\n readonly standardColumns: readonly TraceOptionalColumn[];\n /** Whether rows carry token and cost usage. */\n readonly usage: boolean;\n /** Whether rows carry metadata that can be shown as columns. */\n readonly metadata: boolean;\n readonly defaults: TraceColumnPreferences;\n};\n\nexport const TRACE_COLUMN_CATALOGS: Record<TraceColumnScope, TraceColumnCatalog> = {\n traces: {\n standardColumns: [\n 'type',\n 'input',\n 'output',\n 'duration',\n 'timeToFirstChunk',\n 'timeToFirstToken',\n 'endTime',\n 'environment',\n ],\n usage: true,\n metadata: true,\n defaults: DEFAULT_TRACE_COLUMN_PREFERENCES,\n },\n spans: {\n standardColumns: [\n 'type',\n 'input',\n 'output',\n 'duration',\n 'timeToFirstChunk',\n 'timeToFirstToken',\n 'endTime',\n 'environment',\n 'model',\n 'provider',\n ],\n usage: false,\n metadata: false,\n defaults: { visibleColumns: ['type', 'input', 'output', 'duration'], customColumns: [], metadataKeys: [] },\n },\n threads: {\n standardColumns: [\n 'type',\n 'input',\n 'output',\n 'duration',\n 'traceCount',\n 'timeToFirstChunk',\n 'timeToFirstToken',\n 'endTime',\n 'environment',\n ],\n usage: false,\n metadata: false,\n defaults: {\n visibleColumns: ['type', 'input', 'output', 'duration', 'traceCount'],\n customColumns: [],\n metadataKeys: [],\n },\n },\n};\n\n// v2: 'entity' became 'type' and moved before Name; duration + cost joined the defaults.\n// v3: added `customColumns`; a v2 payload is migrated rather than reset.\n// v4: added 'output', shown after 'input' for anyone who had Input visible.\nconst TRACE_COLUMN_PREFERENCES_VERSION = 4;\nconst TRACE_COLUMN_PREFERENCES_MIGRATABLE_VERSIONS = new Set<unknown>([2, 3, TRACE_COLUMN_PREFERENCES_VERSION]);\nconst TRACE_COLUMN_SET = new Set<string>(TRACE_OPTIONAL_COLUMNS);\nconst TRACE_USAGE_COLUMN_SET = new Set<TraceOptionalColumn>(TRACE_USAGE_COLUMNS);\nconst TRACE_CUSTOM_COLUMN_SET = new Set<string>(TRACE_CUSTOM_COLUMN_FIELDS);\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nfunction isTraceOptionalColumn(value: unknown): value is TraceOptionalColumn {\n return typeof value === 'string' && TRACE_COLUMN_SET.has(value);\n}\n\nexport function isTraceCustomColumn(value: unknown): value is TraceCustomColumn {\n return typeof value === 'string' && TRACE_CUSTOM_COLUMN_SET.has(value);\n}\n\nfunction uniqueMetadataKeys(value: unknown): string[] {\n if (!Array.isArray(value)) return [];\n\n const keys = value\n .filter(key => typeof key === 'string')\n .map(key => key.trim())\n .filter(Boolean);\n\n return [...new Set(keys)];\n}\n\nexport function parseTraceColumnPreferences(\n serialized: string | undefined,\n defaults: TraceColumnPreferences = DEFAULT_TRACE_COLUMN_PREFERENCES,\n): TraceColumnPreferences {\n if (!serialized) return defaults;\n\n try {\n const parsed: unknown = JSON.parse(serialized);\n if (!isRecord(parsed) || !TRACE_COLUMN_PREFERENCES_MIGRATABLE_VERSIONS.has(parsed.version)) {\n return defaults;\n }\n\n const visibleColumns = Array.isArray(parsed.visibleColumns)\n ? [...new Set(parsed.visibleColumns.filter(isTraceOptionalColumn))]\n : [...defaults.visibleColumns];\n if (parsed.version !== TRACE_COLUMN_PREFERENCES_VERSION && !visibleColumns.includes('output')) {\n const input = visibleColumns.indexOf('input');\n if (input !== -1) visibleColumns.splice(input + 1, 0, 'output');\n }\n const customColumns = Array.isArray(parsed.customColumns)\n ? [...new Set(parsed.customColumns.filter(isTraceCustomColumn))]\n : [];\n\n return {\n visibleColumns,\n customColumns,\n metadataKeys: uniqueMetadataKeys(parsed.metadataKeys),\n };\n } catch {\n return defaults;\n }\n}\n\nexport function serializeTraceColumnPreferences(preferences: TraceColumnPreferences): string {\n return JSON.stringify({\n version: TRACE_COLUMN_PREFERENCES_VERSION,\n visibleColumns: preferences.visibleColumns,\n customColumns: preferences.customColumns,\n metadataKeys: preferences.metadataKeys,\n });\n}\n\n/** Stable key per column of `buildTraceListColumns`, in the same order. Used to persist the column order. */\nexport function buildTraceListColumnKeys(\n preferences: TraceColumnPreferences,\n { outcomeColumn = true }: { outcomeColumn?: boolean } = {},\n): string[] {\n const visible = new Set(preferences.visibleColumns);\n const keys = ['startTime'];\n if (visible.has('type')) keys.push('type');\n keys.push('name');\n if (visible.has('input')) keys.push('input');\n if (visible.has('output')) keys.push('output');\n keys.push('status');\n if (outcomeColumn) keys.push('stopReason');\n for (const column of [\n 'duration',\n 'traceCount',\n 'timeToFirstChunk',\n 'timeToFirstToken',\n 'endTime',\n 'environment',\n 'model',\n 'provider',\n ...TRACE_USAGE_COLUMNS,\n ] as const) {\n if (visible.has(column)) keys.push(column);\n }\n keys.push(...preferences.customColumns.map(field => `custom:${field}`));\n keys.push(...preferences.metadataKeys.map(key => `metadata:${key}`));\n return keys;\n}\n\nexport function buildTraceListColumns(\n preferences: TraceColumnPreferences,\n { outcomeColumn = true }: { outcomeColumn?: boolean } = {},\n): string {\n const visible = new Set(preferences.visibleColumns);\n // Name is bounded when Input or Output is visible so they (1fr each) absorb the free space;\n // without either, Name is the flexible track that fills the grid.\n const columns = ['11rem'];\n const hasPreview = visible.has('input') || visible.has('output');\n\n if (visible.has('type')) columns.push('7rem');\n columns.push(hasPreview ? '14rem' : 'minmax(8rem,1fr)');\n if (visible.has('input')) columns.push('minmax(8rem,1fr)');\n if (visible.has('output')) columns.push('minmax(8rem,1fr)');\n\n // With outcomes, Status becomes Outcome (room for `Interrupted`) followed by Stop reason.\n columns.push(...(outcomeColumn ? ['7rem', '9rem'] : ['6rem']));\n\n if (visible.has('duration')) columns.push('7rem');\n if (visible.has('traceCount')) columns.push('6rem');\n if (visible.has('timeToFirstChunk')) columns.push('7rem');\n if (visible.has('timeToFirstToken')) columns.push('7rem');\n if (visible.has('endTime')) columns.push('11rem');\n if (visible.has('environment')) columns.push('8rem');\n if (visible.has('model')) columns.push('10rem');\n if (visible.has('provider')) columns.push('8rem');\n if (visible.has('inputTokens')) columns.push('8rem');\n if (visible.has('outputTokens')) columns.push('8rem');\n if (visible.has('totalTokens')) columns.push('8rem');\n if (visible.has('estimatedCost')) columns.push('8rem');\n\n for (const _field of preferences.customColumns) {\n columns.push('minmax(8rem,14rem)');\n }\n\n for (const _key of preferences.metadataKeys) {\n columns.push('minmax(8rem,14rem)');\n }\n\n return columns.join(' ');\n}\n\nconst RUN_PREFIX_PATTERN = /^(?:agent|workflow|scorer) run: '(.+?)'(.*)$/;\n\n/** Core names root spans `agent run: 'id'` (+ optional ` (resumed)`); the Primitive type column already carries\n * the kind, so the list shows just the id and any suffix. Core names are untouched for exporters. */\nexport function displayTraceName<T extends string | null | undefined>(name: T): T {\n if (!name) return name;\n return name.replace(RUN_PREFIX_PATTERN, '$1$2') as T;\n}\n\nexport function formatTraceMetadataValue(\n metadata: Record<string, unknown> | null | undefined,\n key: string,\n): string | undefined {\n if (!metadata || !Object.prototype.hasOwnProperty.call(metadata, key)) return undefined;\n const value = metadata[key];\n if (value == null) return undefined;\n\n if (typeof value === 'string') return value;\n if (typeof value === 'number' || typeof value === 'boolean' || typeof value === 'bigint') return String(value);\n\n try {\n return JSON.stringify(value) ?? undefined;\n } catch {\n return undefined;\n }\n}\n\nexport function hasTraceColumn(preferences: TraceColumnPreferences, column: TraceOptionalColumn): boolean {\n return preferences.visibleColumns.includes(column);\n}\n\n/**\n * The preferences to draw when the store does not record every streaming timing: the\n * unrecorded timing columns are hidden but stay saved, so they come back on a store that records them.\n */\nexport function withoutUnrecordedStreamingColumns(\n preferences: TraceColumnPreferences,\n { withTimeToFirstChunk, withTimeToFirstToken }: { withTimeToFirstChunk: boolean; withTimeToFirstToken: boolean },\n): TraceColumnPreferences {\n if (withTimeToFirstChunk && withTimeToFirstToken) return preferences;\n return {\n ...preferences,\n visibleColumns: preferences.visibleColumns.filter(\n column =>\n (withTimeToFirstChunk || column !== 'timeToFirstChunk') &&\n (withTimeToFirstToken || column !== 'timeToFirstToken'),\n ),\n };\n}\n\nexport function toggleTraceColumn(\n preferences: TraceColumnPreferences,\n column: TraceOptionalColumn,\n): TraceColumnPreferences {\n return {\n ...preferences,\n visibleColumns: preferences.visibleColumns.includes(column)\n ? preferences.visibleColumns.filter(visibleColumn => visibleColumn !== column)\n : [...preferences.visibleColumns, column],\n };\n}\n\nexport function addTraceCustomColumn(\n preferences: TraceColumnPreferences,\n field: TraceCustomColumn,\n): TraceColumnPreferences {\n if (preferences.customColumns.includes(field)) return preferences;\n return { ...preferences, customColumns: [...preferences.customColumns, field] };\n}\n\nexport function removeTraceCustomColumn(\n preferences: TraceColumnPreferences,\n field: TraceCustomColumn,\n): TraceColumnPreferences {\n return { ...preferences, customColumns: preferences.customColumns.filter(customColumn => customColumn !== field) };\n}\n\nexport function addTraceMetadataColumn(preferences: TraceColumnPreferences, key: string): TraceColumnPreferences {\n const normalizedKey = key.trim();\n if (!normalizedKey || preferences.metadataKeys.includes(normalizedKey)) return preferences;\n return { ...preferences, metadataKeys: [...preferences.metadataKeys, normalizedKey] };\n}\n\nexport function removeTraceMetadataColumn(preferences: TraceColumnPreferences, key: string): TraceColumnPreferences {\n return { ...preferences, metadataKeys: preferences.metadataKeys.filter(metadataKey => metadataKey !== key) };\n}\n\nexport function hasTraceUsageColumn(preferences: TraceColumnPreferences): boolean {\n return preferences.visibleColumns.some(isTraceUsageColumn);\n}\n\nexport function isTraceUsageColumn(column: TraceOptionalColumn): boolean {\n return TRACE_USAGE_COLUMN_SET.has(column);\n}\n"],"mappings":"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"}
@@ -6,6 +6,7 @@ var TRACE_OPTIONAL_COLUMNS = [
6
6
  "duration",
7
7
  "traceCount",
8
8
  "timeToFirstChunk",
9
+ "timeToFirstToken",
9
10
  "endTime",
10
11
  "environment",
11
12
  "model",
@@ -45,11 +46,6 @@ var DEFAULT_TRACE_COLUMN_PREFERENCES = {
45
46
  customColumns: [],
46
47
  metadataKeys: []
47
48
  };
48
- /** The Threads list: the trace defaults plus each thread's trace count. Not offered in any column picker. */
49
- var THREAD_LIST_COLUMN_PREFERENCES = {
50
- ...DEFAULT_TRACE_COLUMN_PREFERENCES,
51
- visibleColumns: [...DEFAULT_TRACE_COLUMN_PREFERENCES.visibleColumns, "traceCount"]
52
- };
53
49
  var TRACE_COLUMN_CATALOGS = {
54
50
  traces: {
55
51
  standardColumns: [
@@ -58,6 +54,7 @@ var TRACE_COLUMN_CATALOGS = {
58
54
  "output",
59
55
  "duration",
60
56
  "timeToFirstChunk",
57
+ "timeToFirstToken",
61
58
  "endTime",
62
59
  "environment"
63
60
  ],
@@ -71,6 +68,8 @@ var TRACE_COLUMN_CATALOGS = {
71
68
  "input",
72
69
  "output",
73
70
  "duration",
71
+ "timeToFirstChunk",
72
+ "timeToFirstToken",
74
73
  "endTime",
75
74
  "environment",
76
75
  "model",
@@ -88,6 +87,32 @@ var TRACE_COLUMN_CATALOGS = {
88
87
  customColumns: [],
89
88
  metadataKeys: []
90
89
  }
90
+ },
91
+ threads: {
92
+ standardColumns: [
93
+ "type",
94
+ "input",
95
+ "output",
96
+ "duration",
97
+ "traceCount",
98
+ "timeToFirstChunk",
99
+ "timeToFirstToken",
100
+ "endTime",
101
+ "environment"
102
+ ],
103
+ usage: false,
104
+ metadata: false,
105
+ defaults: {
106
+ visibleColumns: [
107
+ "type",
108
+ "input",
109
+ "output",
110
+ "duration",
111
+ "traceCount"
112
+ ],
113
+ customColumns: [],
114
+ metadataKeys: []
115
+ }
91
116
  }
92
117
  };
93
118
  var TRACE_COLUMN_PREFERENCES_VERSION = 4;
@@ -141,7 +166,7 @@ function serializeTraceColumnPreferences(preferences) {
141
166
  });
142
167
  }
143
168
  /** Stable key per column of `buildTraceListColumns`, in the same order. Used to persist the column order. */
144
- function buildTraceListColumnKeys(preferences) {
169
+ function buildTraceListColumnKeys(preferences, { outcomeColumn = true } = {}) {
145
170
  const visible = new Set(preferences.visibleColumns);
146
171
  const keys = ["startTime"];
147
172
  if (visible.has("type")) keys.push("type");
@@ -149,10 +174,12 @@ function buildTraceListColumnKeys(preferences) {
149
174
  if (visible.has("input")) keys.push("input");
150
175
  if (visible.has("output")) keys.push("output");
151
176
  keys.push("status");
177
+ if (outcomeColumn) keys.push("stopReason");
152
178
  for (const column of [
153
179
  "duration",
154
180
  "traceCount",
155
181
  "timeToFirstChunk",
182
+ "timeToFirstToken",
156
183
  "endTime",
157
184
  "environment",
158
185
  "model",
@@ -163,7 +190,7 @@ function buildTraceListColumnKeys(preferences) {
163
190
  keys.push(...preferences.metadataKeys.map((key) => `metadata:${key}`));
164
191
  return keys;
165
192
  }
166
- function buildTraceListColumns(preferences) {
193
+ function buildTraceListColumns(preferences, { outcomeColumn = true } = {}) {
167
194
  const visible = new Set(preferences.visibleColumns);
168
195
  const columns = ["11rem"];
169
196
  const hasPreview = visible.has("input") || visible.has("output");
@@ -171,10 +198,11 @@ function buildTraceListColumns(preferences) {
171
198
  columns.push(hasPreview ? "14rem" : "minmax(8rem,1fr)");
172
199
  if (visible.has("input")) columns.push("minmax(8rem,1fr)");
173
200
  if (visible.has("output")) columns.push("minmax(8rem,1fr)");
174
- columns.push("6rem");
201
+ columns.push(...outcomeColumn ? ["7rem", "9rem"] : ["6rem"]);
175
202
  if (visible.has("duration")) columns.push("7rem");
176
203
  if (visible.has("traceCount")) columns.push("6rem");
177
204
  if (visible.has("timeToFirstChunk")) columns.push("7rem");
205
+ if (visible.has("timeToFirstToken")) columns.push("7rem");
178
206
  if (visible.has("endTime")) columns.push("11rem");
179
207
  if (visible.has("environment")) columns.push("8rem");
180
208
  if (visible.has("model")) columns.push("10rem");
@@ -209,6 +237,17 @@ function formatTraceMetadataValue(metadata, key) {
209
237
  function hasTraceColumn(preferences, column) {
210
238
  return preferences.visibleColumns.includes(column);
211
239
  }
240
+ /**
241
+ * The preferences to draw when the store does not record every streaming timing: the
242
+ * unrecorded timing columns are hidden but stay saved, so they come back on a store that records them.
243
+ */
244
+ function withoutUnrecordedStreamingColumns(preferences, { withTimeToFirstChunk, withTimeToFirstToken }) {
245
+ if (withTimeToFirstChunk && withTimeToFirstToken) return preferences;
246
+ return {
247
+ ...preferences,
248
+ visibleColumns: preferences.visibleColumns.filter((column) => (withTimeToFirstChunk || column !== "timeToFirstChunk") && (withTimeToFirstToken || column !== "timeToFirstToken"))
249
+ };
250
+ }
212
251
  function toggleTraceColumn(preferences, column) {
213
252
  return {
214
253
  ...preferences,
@@ -248,6 +287,6 @@ function hasTraceUsageColumn(preferences) {
248
287
  function isTraceUsageColumn(column) {
249
288
  return TRACE_USAGE_COLUMN_SET.has(column);
250
289
  }
251
- export { DEFAULT_TRACE_COLUMN_PREFERENCES, THREAD_LIST_COLUMN_PREFERENCES, TRACE_COLUMN_CATALOGS, TRACE_CUSTOM_COLUMN_FIELDS, TRACE_CUSTOM_COLUMN_LABELS, TRACE_OPTIONAL_COLUMNS, TRACE_USAGE_COLUMNS, addTraceCustomColumn, addTraceMetadataColumn, buildTraceListColumnKeys, buildTraceListColumns, displayTraceName, formatTraceMetadataValue, hasTraceColumn, hasTraceUsageColumn, isTraceCustomColumn, isTraceUsageColumn, parseTraceColumnPreferences, removeTraceCustomColumn, removeTraceMetadataColumn, serializeTraceColumnPreferences, toggleTraceColumn };
290
+ export { DEFAULT_TRACE_COLUMN_PREFERENCES, TRACE_COLUMN_CATALOGS, TRACE_CUSTOM_COLUMN_FIELDS, TRACE_CUSTOM_COLUMN_LABELS, TRACE_OPTIONAL_COLUMNS, TRACE_USAGE_COLUMNS, addTraceCustomColumn, addTraceMetadataColumn, buildTraceListColumnKeys, buildTraceListColumns, displayTraceName, formatTraceMetadataValue, hasTraceColumn, hasTraceUsageColumn, isTraceCustomColumn, isTraceUsageColumn, parseTraceColumnPreferences, removeTraceCustomColumn, removeTraceMetadataColumn, serializeTraceColumnPreferences, toggleTraceColumn, withoutUnrecordedStreamingColumns };
252
291
 
253
292
  //# sourceMappingURL=trace-list-columns.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trace-list-columns.es.js","names":[],"sources":["../../../src/domains/traces/trace-list-columns.ts"],"sourcesContent":["export const TRACE_OPTIONAL_COLUMNS = [\n 'type',\n 'input',\n 'output',\n 'duration',\n 'traceCount',\n 'timeToFirstChunk',\n 'endTime',\n 'environment',\n 'model',\n 'provider',\n 'inputTokens',\n 'outputTokens',\n 'totalTokens',\n 'estimatedCost',\n] as const;\n\nexport type TraceOptionalColumn = (typeof TRACE_OPTIONAL_COLUMNS)[number];\n\nexport const TRACE_USAGE_COLUMNS = [\n 'inputTokens',\n 'outputTokens',\n 'totalTokens',\n 'estimatedCost',\n] as const satisfies readonly TraceOptionalColumn[];\n\n/** Trace properties that are not regular columns but can be pinned as a custom column. */\nexport const TRACE_CUSTOM_COLUMN_FIELDS = ['traceId', 'threadId', 'resourceId', 'entityId'] as const;\n\nexport type TraceCustomColumn = (typeof TRACE_CUSTOM_COLUMN_FIELDS)[number];\n\nexport const TRACE_CUSTOM_COLUMN_LABELS: Record<TraceCustomColumn, string> = {\n traceId: 'Trace ID',\n threadId: 'Thread ID',\n resourceId: 'Resource ID',\n entityId: 'Primitive ID',\n};\n\nexport type TraceColumnPreferences = {\n readonly visibleColumns: readonly TraceOptionalColumn[];\n readonly customColumns: readonly TraceCustomColumn[];\n readonly metadataKeys: readonly string[];\n};\n\nimport type { TraceUsageSummary } from '@mastra/react/hooks/traces';\nexport type { TraceUsageSummary };\n\nexport const DEFAULT_TRACE_COLUMN_PREFERENCES: TraceColumnPreferences = {\n visibleColumns: ['type', 'input', 'output', 'duration', 'estimatedCost'],\n customColumns: [],\n metadataKeys: [],\n};\n\n/** The Threads list: the trace defaults plus each thread's trace count. Not offered in any column picker. */\nexport const THREAD_LIST_COLUMN_PREFERENCES: TraceColumnPreferences = {\n ...DEFAULT_TRACE_COLUMN_PREFERENCES,\n visibleColumns: [...DEFAULT_TRACE_COLUMN_PREFERENCES.visibleColumns, 'traceCount'],\n};\n\n/** A list a column selection belongs to. Each list only offers the columns its rows carry. */\nexport type TraceColumnScope = 'traces' | 'spans';\n\nexport type TraceColumnCatalog = {\n /** Plain columns offered in the picker, in menu order. */\n readonly standardColumns: readonly TraceOptionalColumn[];\n /** Whether rows carry token and cost usage. */\n readonly usage: boolean;\n /** Whether rows carry metadata that can be shown as columns. */\n readonly metadata: boolean;\n readonly defaults: TraceColumnPreferences;\n};\n\nexport const TRACE_COLUMN_CATALOGS: Record<TraceColumnScope, TraceColumnCatalog> = {\n traces: {\n standardColumns: ['type', 'input', 'output', 'duration', 'timeToFirstChunk', 'endTime', 'environment'],\n usage: true,\n metadata: true,\n defaults: DEFAULT_TRACE_COLUMN_PREFERENCES,\n },\n spans: {\n standardColumns: ['type', 'input', 'output', 'duration', 'endTime', 'environment', 'model', 'provider'],\n usage: false,\n metadata: false,\n defaults: { visibleColumns: ['type', 'input', 'output', 'duration'], customColumns: [], metadataKeys: [] },\n },\n};\n\n// v2: 'entity' became 'type' and moved before Name; duration + cost joined the defaults.\n// v3: added `customColumns`; a v2 payload is migrated rather than reset.\n// v4: added 'output', shown after 'input' for anyone who had Input visible.\nconst TRACE_COLUMN_PREFERENCES_VERSION = 4;\nconst TRACE_COLUMN_PREFERENCES_MIGRATABLE_VERSIONS = new Set<unknown>([2, 3, TRACE_COLUMN_PREFERENCES_VERSION]);\nconst TRACE_COLUMN_SET = new Set<string>(TRACE_OPTIONAL_COLUMNS);\nconst TRACE_USAGE_COLUMN_SET = new Set<TraceOptionalColumn>(TRACE_USAGE_COLUMNS);\nconst TRACE_CUSTOM_COLUMN_SET = new Set<string>(TRACE_CUSTOM_COLUMN_FIELDS);\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nfunction isTraceOptionalColumn(value: unknown): value is TraceOptionalColumn {\n return typeof value === 'string' && TRACE_COLUMN_SET.has(value);\n}\n\nexport function isTraceCustomColumn(value: unknown): value is TraceCustomColumn {\n return typeof value === 'string' && TRACE_CUSTOM_COLUMN_SET.has(value);\n}\n\nfunction uniqueMetadataKeys(value: unknown): string[] {\n if (!Array.isArray(value)) return [];\n\n const keys = value\n .filter(key => typeof key === 'string')\n .map(key => key.trim())\n .filter(Boolean);\n\n return [...new Set(keys)];\n}\n\nexport function parseTraceColumnPreferences(\n serialized: string | undefined,\n defaults: TraceColumnPreferences = DEFAULT_TRACE_COLUMN_PREFERENCES,\n): TraceColumnPreferences {\n if (!serialized) return defaults;\n\n try {\n const parsed: unknown = JSON.parse(serialized);\n if (!isRecord(parsed) || !TRACE_COLUMN_PREFERENCES_MIGRATABLE_VERSIONS.has(parsed.version)) {\n return defaults;\n }\n\n const visibleColumns = Array.isArray(parsed.visibleColumns)\n ? [...new Set(parsed.visibleColumns.filter(isTraceOptionalColumn))]\n : [...defaults.visibleColumns];\n if (parsed.version !== TRACE_COLUMN_PREFERENCES_VERSION && !visibleColumns.includes('output')) {\n const input = visibleColumns.indexOf('input');\n if (input !== -1) visibleColumns.splice(input + 1, 0, 'output');\n }\n const customColumns = Array.isArray(parsed.customColumns)\n ? [...new Set(parsed.customColumns.filter(isTraceCustomColumn))]\n : [];\n\n return {\n visibleColumns,\n customColumns,\n metadataKeys: uniqueMetadataKeys(parsed.metadataKeys),\n };\n } catch {\n return defaults;\n }\n}\n\nexport function serializeTraceColumnPreferences(preferences: TraceColumnPreferences): string {\n return JSON.stringify({\n version: TRACE_COLUMN_PREFERENCES_VERSION,\n visibleColumns: preferences.visibleColumns,\n customColumns: preferences.customColumns,\n metadataKeys: preferences.metadataKeys,\n });\n}\n\n/** Stable key per column of `buildTraceListColumns`, in the same order. Used to persist the column order. */\nexport function buildTraceListColumnKeys(preferences: TraceColumnPreferences): string[] {\n const visible = new Set(preferences.visibleColumns);\n const keys = ['startTime'];\n if (visible.has('type')) keys.push('type');\n keys.push('name');\n if (visible.has('input')) keys.push('input');\n if (visible.has('output')) keys.push('output');\n keys.push('status');\n for (const column of [\n 'duration',\n 'traceCount',\n 'timeToFirstChunk',\n 'endTime',\n 'environment',\n 'model',\n 'provider',\n ...TRACE_USAGE_COLUMNS,\n ] as const) {\n if (visible.has(column)) keys.push(column);\n }\n keys.push(...preferences.customColumns.map(field => `custom:${field}`));\n keys.push(...preferences.metadataKeys.map(key => `metadata:${key}`));\n return keys;\n}\n\nexport function buildTraceListColumns(preferences: TraceColumnPreferences): string {\n const visible = new Set(preferences.visibleColumns);\n // Name is bounded when Input or Output is visible so they (1fr each) absorb the free space;\n // without either, Name is the flexible track that fills the grid.\n const columns = ['11rem'];\n const hasPreview = visible.has('input') || visible.has('output');\n\n if (visible.has('type')) columns.push('7rem');\n columns.push(hasPreview ? '14rem' : 'minmax(8rem,1fr)');\n if (visible.has('input')) columns.push('minmax(8rem,1fr)');\n if (visible.has('output')) columns.push('minmax(8rem,1fr)');\n\n columns.push('6rem');\n\n if (visible.has('duration')) columns.push('7rem');\n if (visible.has('traceCount')) columns.push('6rem');\n if (visible.has('timeToFirstChunk')) columns.push('7rem');\n if (visible.has('endTime')) columns.push('11rem');\n if (visible.has('environment')) columns.push('8rem');\n if (visible.has('model')) columns.push('10rem');\n if (visible.has('provider')) columns.push('8rem');\n if (visible.has('inputTokens')) columns.push('8rem');\n if (visible.has('outputTokens')) columns.push('8rem');\n if (visible.has('totalTokens')) columns.push('8rem');\n if (visible.has('estimatedCost')) columns.push('8rem');\n\n for (const _field of preferences.customColumns) {\n columns.push('minmax(8rem,14rem)');\n }\n\n for (const _key of preferences.metadataKeys) {\n columns.push('minmax(8rem,14rem)');\n }\n\n return columns.join(' ');\n}\n\nconst RUN_PREFIX_PATTERN = /^(?:agent|workflow|scorer) run: '(.+?)'(.*)$/;\n\n/** Core names root spans `agent run: 'id'` (+ optional ` (resumed)`); the Primitive type column already carries\n * the kind, so the list shows just the id and any suffix. Core names are untouched for exporters. */\nexport function displayTraceName<T extends string | null | undefined>(name: T): T {\n if (!name) return name;\n return name.replace(RUN_PREFIX_PATTERN, '$1$2') as T;\n}\n\nexport function formatTraceMetadataValue(\n metadata: Record<string, unknown> | null | undefined,\n key: string,\n): string | undefined {\n if (!metadata || !Object.prototype.hasOwnProperty.call(metadata, key)) return undefined;\n const value = metadata[key];\n if (value == null) return undefined;\n\n if (typeof value === 'string') return value;\n if (typeof value === 'number' || typeof value === 'boolean' || typeof value === 'bigint') return String(value);\n\n try {\n return JSON.stringify(value) ?? undefined;\n } catch {\n return undefined;\n }\n}\n\nexport function hasTraceColumn(preferences: TraceColumnPreferences, column: TraceOptionalColumn): boolean {\n return preferences.visibleColumns.includes(column);\n}\n\nexport function toggleTraceColumn(\n preferences: TraceColumnPreferences,\n column: TraceOptionalColumn,\n): TraceColumnPreferences {\n return {\n ...preferences,\n visibleColumns: preferences.visibleColumns.includes(column)\n ? preferences.visibleColumns.filter(visibleColumn => visibleColumn !== column)\n : [...preferences.visibleColumns, column],\n };\n}\n\nexport function addTraceCustomColumn(\n preferences: TraceColumnPreferences,\n field: TraceCustomColumn,\n): TraceColumnPreferences {\n if (preferences.customColumns.includes(field)) return preferences;\n return { ...preferences, customColumns: [...preferences.customColumns, field] };\n}\n\nexport function removeTraceCustomColumn(\n preferences: TraceColumnPreferences,\n field: TraceCustomColumn,\n): TraceColumnPreferences {\n return { ...preferences, customColumns: preferences.customColumns.filter(customColumn => customColumn !== field) };\n}\n\nexport function addTraceMetadataColumn(preferences: TraceColumnPreferences, key: string): TraceColumnPreferences {\n const normalizedKey = key.trim();\n if (!normalizedKey || preferences.metadataKeys.includes(normalizedKey)) return preferences;\n return { ...preferences, metadataKeys: [...preferences.metadataKeys, normalizedKey] };\n}\n\nexport function removeTraceMetadataColumn(preferences: TraceColumnPreferences, key: string): TraceColumnPreferences {\n return { ...preferences, metadataKeys: preferences.metadataKeys.filter(metadataKey => metadataKey !== key) };\n}\n\nexport function hasTraceUsageColumn(preferences: TraceColumnPreferences): boolean {\n return preferences.visibleColumns.some(isTraceUsageColumn);\n}\n\nexport function isTraceUsageColumn(column: TraceOptionalColumn): boolean {\n return TRACE_USAGE_COLUMN_SET.has(column);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"trace-list-columns.es.js","names":[],"sources":["../../../src/domains/traces/trace-list-columns.ts"],"sourcesContent":["export const TRACE_OPTIONAL_COLUMNS = [\n 'type',\n 'input',\n 'output',\n 'duration',\n 'traceCount',\n 'timeToFirstChunk',\n 'timeToFirstToken',\n 'endTime',\n 'environment',\n 'model',\n 'provider',\n 'inputTokens',\n 'outputTokens',\n 'totalTokens',\n 'estimatedCost',\n] as const;\n\nexport type TraceOptionalColumn = (typeof TRACE_OPTIONAL_COLUMNS)[number];\n\nexport const TRACE_USAGE_COLUMNS = [\n 'inputTokens',\n 'outputTokens',\n 'totalTokens',\n 'estimatedCost',\n] as const satisfies readonly TraceOptionalColumn[];\n\n/** Trace properties that are not regular columns but can be pinned as a custom column. */\nexport const TRACE_CUSTOM_COLUMN_FIELDS = ['traceId', 'threadId', 'resourceId', 'entityId'] as const;\n\nexport type TraceCustomColumn = (typeof TRACE_CUSTOM_COLUMN_FIELDS)[number];\n\nexport const TRACE_CUSTOM_COLUMN_LABELS: Record<TraceCustomColumn, string> = {\n traceId: 'Trace ID',\n threadId: 'Thread ID',\n resourceId: 'Resource ID',\n entityId: 'Primitive ID',\n};\n\nexport type TraceColumnPreferences = {\n readonly visibleColumns: readonly TraceOptionalColumn[];\n readonly customColumns: readonly TraceCustomColumn[];\n readonly metadataKeys: readonly string[];\n};\n\nimport type { TraceUsageSummary } from '@mastra/react/hooks/traces';\nexport type { TraceUsageSummary };\n\nexport const DEFAULT_TRACE_COLUMN_PREFERENCES: TraceColumnPreferences = {\n visibleColumns: ['type', 'input', 'output', 'duration', 'estimatedCost'],\n customColumns: [],\n metadataKeys: [],\n};\n\n/** A list a column selection belongs to. Each list only offers the columns its rows carry. */\nexport type TraceColumnScope = 'traces' | 'spans' | 'threads';\n\nexport type TraceColumnCatalog = {\n /** Plain columns offered in the picker, in menu order. */\n readonly standardColumns: readonly TraceOptionalColumn[];\n /** Whether rows carry token and cost usage. */\n readonly usage: boolean;\n /** Whether rows carry metadata that can be shown as columns. */\n readonly metadata: boolean;\n readonly defaults: TraceColumnPreferences;\n};\n\nexport const TRACE_COLUMN_CATALOGS: Record<TraceColumnScope, TraceColumnCatalog> = {\n traces: {\n standardColumns: [\n 'type',\n 'input',\n 'output',\n 'duration',\n 'timeToFirstChunk',\n 'timeToFirstToken',\n 'endTime',\n 'environment',\n ],\n usage: true,\n metadata: true,\n defaults: DEFAULT_TRACE_COLUMN_PREFERENCES,\n },\n spans: {\n standardColumns: [\n 'type',\n 'input',\n 'output',\n 'duration',\n 'timeToFirstChunk',\n 'timeToFirstToken',\n 'endTime',\n 'environment',\n 'model',\n 'provider',\n ],\n usage: false,\n metadata: false,\n defaults: { visibleColumns: ['type', 'input', 'output', 'duration'], customColumns: [], metadataKeys: [] },\n },\n threads: {\n standardColumns: [\n 'type',\n 'input',\n 'output',\n 'duration',\n 'traceCount',\n 'timeToFirstChunk',\n 'timeToFirstToken',\n 'endTime',\n 'environment',\n ],\n usage: false,\n metadata: false,\n defaults: {\n visibleColumns: ['type', 'input', 'output', 'duration', 'traceCount'],\n customColumns: [],\n metadataKeys: [],\n },\n },\n};\n\n// v2: 'entity' became 'type' and moved before Name; duration + cost joined the defaults.\n// v3: added `customColumns`; a v2 payload is migrated rather than reset.\n// v4: added 'output', shown after 'input' for anyone who had Input visible.\nconst TRACE_COLUMN_PREFERENCES_VERSION = 4;\nconst TRACE_COLUMN_PREFERENCES_MIGRATABLE_VERSIONS = new Set<unknown>([2, 3, TRACE_COLUMN_PREFERENCES_VERSION]);\nconst TRACE_COLUMN_SET = new Set<string>(TRACE_OPTIONAL_COLUMNS);\nconst TRACE_USAGE_COLUMN_SET = new Set<TraceOptionalColumn>(TRACE_USAGE_COLUMNS);\nconst TRACE_CUSTOM_COLUMN_SET = new Set<string>(TRACE_CUSTOM_COLUMN_FIELDS);\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nfunction isTraceOptionalColumn(value: unknown): value is TraceOptionalColumn {\n return typeof value === 'string' && TRACE_COLUMN_SET.has(value);\n}\n\nexport function isTraceCustomColumn(value: unknown): value is TraceCustomColumn {\n return typeof value === 'string' && TRACE_CUSTOM_COLUMN_SET.has(value);\n}\n\nfunction uniqueMetadataKeys(value: unknown): string[] {\n if (!Array.isArray(value)) return [];\n\n const keys = value\n .filter(key => typeof key === 'string')\n .map(key => key.trim())\n .filter(Boolean);\n\n return [...new Set(keys)];\n}\n\nexport function parseTraceColumnPreferences(\n serialized: string | undefined,\n defaults: TraceColumnPreferences = DEFAULT_TRACE_COLUMN_PREFERENCES,\n): TraceColumnPreferences {\n if (!serialized) return defaults;\n\n try {\n const parsed: unknown = JSON.parse(serialized);\n if (!isRecord(parsed) || !TRACE_COLUMN_PREFERENCES_MIGRATABLE_VERSIONS.has(parsed.version)) {\n return defaults;\n }\n\n const visibleColumns = Array.isArray(parsed.visibleColumns)\n ? [...new Set(parsed.visibleColumns.filter(isTraceOptionalColumn))]\n : [...defaults.visibleColumns];\n if (parsed.version !== TRACE_COLUMN_PREFERENCES_VERSION && !visibleColumns.includes('output')) {\n const input = visibleColumns.indexOf('input');\n if (input !== -1) visibleColumns.splice(input + 1, 0, 'output');\n }\n const customColumns = Array.isArray(parsed.customColumns)\n ? [...new Set(parsed.customColumns.filter(isTraceCustomColumn))]\n : [];\n\n return {\n visibleColumns,\n customColumns,\n metadataKeys: uniqueMetadataKeys(parsed.metadataKeys),\n };\n } catch {\n return defaults;\n }\n}\n\nexport function serializeTraceColumnPreferences(preferences: TraceColumnPreferences): string {\n return JSON.stringify({\n version: TRACE_COLUMN_PREFERENCES_VERSION,\n visibleColumns: preferences.visibleColumns,\n customColumns: preferences.customColumns,\n metadataKeys: preferences.metadataKeys,\n });\n}\n\n/** Stable key per column of `buildTraceListColumns`, in the same order. Used to persist the column order. */\nexport function buildTraceListColumnKeys(\n preferences: TraceColumnPreferences,\n { outcomeColumn = true }: { outcomeColumn?: boolean } = {},\n): string[] {\n const visible = new Set(preferences.visibleColumns);\n const keys = ['startTime'];\n if (visible.has('type')) keys.push('type');\n keys.push('name');\n if (visible.has('input')) keys.push('input');\n if (visible.has('output')) keys.push('output');\n keys.push('status');\n if (outcomeColumn) keys.push('stopReason');\n for (const column of [\n 'duration',\n 'traceCount',\n 'timeToFirstChunk',\n 'timeToFirstToken',\n 'endTime',\n 'environment',\n 'model',\n 'provider',\n ...TRACE_USAGE_COLUMNS,\n ] as const) {\n if (visible.has(column)) keys.push(column);\n }\n keys.push(...preferences.customColumns.map(field => `custom:${field}`));\n keys.push(...preferences.metadataKeys.map(key => `metadata:${key}`));\n return keys;\n}\n\nexport function buildTraceListColumns(\n preferences: TraceColumnPreferences,\n { outcomeColumn = true }: { outcomeColumn?: boolean } = {},\n): string {\n const visible = new Set(preferences.visibleColumns);\n // Name is bounded when Input or Output is visible so they (1fr each) absorb the free space;\n // without either, Name is the flexible track that fills the grid.\n const columns = ['11rem'];\n const hasPreview = visible.has('input') || visible.has('output');\n\n if (visible.has('type')) columns.push('7rem');\n columns.push(hasPreview ? '14rem' : 'minmax(8rem,1fr)');\n if (visible.has('input')) columns.push('minmax(8rem,1fr)');\n if (visible.has('output')) columns.push('minmax(8rem,1fr)');\n\n // With outcomes, Status becomes Outcome (room for `Interrupted`) followed by Stop reason.\n columns.push(...(outcomeColumn ? ['7rem', '9rem'] : ['6rem']));\n\n if (visible.has('duration')) columns.push('7rem');\n if (visible.has('traceCount')) columns.push('6rem');\n if (visible.has('timeToFirstChunk')) columns.push('7rem');\n if (visible.has('timeToFirstToken')) columns.push('7rem');\n if (visible.has('endTime')) columns.push('11rem');\n if (visible.has('environment')) columns.push('8rem');\n if (visible.has('model')) columns.push('10rem');\n if (visible.has('provider')) columns.push('8rem');\n if (visible.has('inputTokens')) columns.push('8rem');\n if (visible.has('outputTokens')) columns.push('8rem');\n if (visible.has('totalTokens')) columns.push('8rem');\n if (visible.has('estimatedCost')) columns.push('8rem');\n\n for (const _field of preferences.customColumns) {\n columns.push('minmax(8rem,14rem)');\n }\n\n for (const _key of preferences.metadataKeys) {\n columns.push('minmax(8rem,14rem)');\n }\n\n return columns.join(' ');\n}\n\nconst RUN_PREFIX_PATTERN = /^(?:agent|workflow|scorer) run: '(.+?)'(.*)$/;\n\n/** Core names root spans `agent run: 'id'` (+ optional ` (resumed)`); the Primitive type column already carries\n * the kind, so the list shows just the id and any suffix. Core names are untouched for exporters. */\nexport function displayTraceName<T extends string | null | undefined>(name: T): T {\n if (!name) return name;\n return name.replace(RUN_PREFIX_PATTERN, '$1$2') as T;\n}\n\nexport function formatTraceMetadataValue(\n metadata: Record<string, unknown> | null | undefined,\n key: string,\n): string | undefined {\n if (!metadata || !Object.prototype.hasOwnProperty.call(metadata, key)) return undefined;\n const value = metadata[key];\n if (value == null) return undefined;\n\n if (typeof value === 'string') return value;\n if (typeof value === 'number' || typeof value === 'boolean' || typeof value === 'bigint') return String(value);\n\n try {\n return JSON.stringify(value) ?? undefined;\n } catch {\n return undefined;\n }\n}\n\nexport function hasTraceColumn(preferences: TraceColumnPreferences, column: TraceOptionalColumn): boolean {\n return preferences.visibleColumns.includes(column);\n}\n\n/**\n * The preferences to draw when the store does not record every streaming timing: the\n * unrecorded timing columns are hidden but stay saved, so they come back on a store that records them.\n */\nexport function withoutUnrecordedStreamingColumns(\n preferences: TraceColumnPreferences,\n { withTimeToFirstChunk, withTimeToFirstToken }: { withTimeToFirstChunk: boolean; withTimeToFirstToken: boolean },\n): TraceColumnPreferences {\n if (withTimeToFirstChunk && withTimeToFirstToken) return preferences;\n return {\n ...preferences,\n visibleColumns: preferences.visibleColumns.filter(\n column =>\n (withTimeToFirstChunk || column !== 'timeToFirstChunk') &&\n (withTimeToFirstToken || column !== 'timeToFirstToken'),\n ),\n };\n}\n\nexport function toggleTraceColumn(\n preferences: TraceColumnPreferences,\n column: TraceOptionalColumn,\n): TraceColumnPreferences {\n return {\n ...preferences,\n visibleColumns: preferences.visibleColumns.includes(column)\n ? preferences.visibleColumns.filter(visibleColumn => visibleColumn !== column)\n : [...preferences.visibleColumns, column],\n };\n}\n\nexport function addTraceCustomColumn(\n preferences: TraceColumnPreferences,\n field: TraceCustomColumn,\n): TraceColumnPreferences {\n if (preferences.customColumns.includes(field)) return preferences;\n return { ...preferences, customColumns: [...preferences.customColumns, field] };\n}\n\nexport function removeTraceCustomColumn(\n preferences: TraceColumnPreferences,\n field: TraceCustomColumn,\n): TraceColumnPreferences {\n return { ...preferences, customColumns: preferences.customColumns.filter(customColumn => customColumn !== field) };\n}\n\nexport function addTraceMetadataColumn(preferences: TraceColumnPreferences, key: string): TraceColumnPreferences {\n const normalizedKey = key.trim();\n if (!normalizedKey || preferences.metadataKeys.includes(normalizedKey)) return preferences;\n return { ...preferences, metadataKeys: [...preferences.metadataKeys, normalizedKey] };\n}\n\nexport function removeTraceMetadataColumn(preferences: TraceColumnPreferences, key: string): TraceColumnPreferences {\n return { ...preferences, metadataKeys: preferences.metadataKeys.filter(metadataKey => metadataKey !== key) };\n}\n\nexport function hasTraceUsageColumn(preferences: TraceColumnPreferences): boolean {\n return preferences.visibleColumns.some(isTraceUsageColumn);\n}\n\nexport function isTraceUsageColumn(column: TraceOptionalColumn): boolean {\n return TRACE_USAGE_COLUMN_SET.has(column);\n}\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_trace_filters = require("../../trace-filters-BpeBUjCb.cjs");
2
+ const require_trace_filters = require("../../trace-filters-BNEZ31HX.cjs");
3
3
  exports.TRACE_FILTER_OPERATOR_IDS = require_trace_filters.TRACE_FILTER_OPERATOR_IDS;
4
4
  exports.TRACE_QUERY_NUMERIC_FIELD_IDS = require_trace_filters.TRACE_QUERY_NUMERIC_FIELD_IDS;
5
5
  exports.TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS = require_trace_filters.TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS;
@@ -1 +1 @@
1
- export { tt as TRACE_FILTER_OPERATOR_IDS, nt as TRACE_QUERY_NUMERIC_FIELD_IDS, rt as TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS, it as TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS, at as buildTraceQueryRequest, ot as isTraceFilterGroup, st as isTraceFilterOperatorId, ct as resolveTraceQueryTimeRange, lt as scalarPredicate } from "../../trace-filters-C27yWcan.js";
1
+ export { at as TRACE_FILTER_OPERATOR_IDS, ot as TRACE_QUERY_NUMERIC_FIELD_IDS, st as TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS, ct as TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS, lt as buildTraceQueryRequest, ut as isTraceFilterGroup, dt as isTraceFilterOperatorId, ft as resolveTraceQueryTimeRange, pt as scalarPredicate } from "../../trace-filters-BJaebsxJ.js";
@@ -0,0 +1,34 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ // src/domains/traces/utils/timeline-markers.ts
3
+ var clampPercent = (percent) => Math.min(100, Math.max(0, percent));
4
+ /**
5
+ * TTFC counts from the root start and TTFT from the inference start, but both end on the first
6
+ * chunk. So both are bars ending on the same point of the axis, starting at different places.
7
+ */
8
+ function getTimelineMarkersLayout(spans, overallLatency, timings) {
9
+ const timeToFirstChunkMs = timings?.timeToFirstChunkMs;
10
+ const overallStartTime = spans[0]?.startTime;
11
+ if (!timings || timeToFirstChunkMs == null || !overallLatency || !overallStartTime) return void 0;
12
+ const rootShiftMs = new Date(timings.startedAt).getTime() - new Date(overallStartTime).getTime();
13
+ if (Number.isNaN(rootShiftMs)) return void 0;
14
+ const toPercent = (ms) => clampPercent((rootShiftMs + ms) * 100 / overallLatency);
15
+ const firstChunkPercent = toPercent(timeToFirstChunkMs);
16
+ const barFrom = (startMs, durationMs) => {
17
+ const leftPercent = toPercent(startMs);
18
+ return {
19
+ durationMs,
20
+ leftPercent,
21
+ widthPercent: firstChunkPercent - leftPercent
22
+ };
23
+ };
24
+ const firstChunk = barFrom(0, timeToFirstChunkMs);
25
+ const timeToFirstTokenMs = timings.timeToFirstTokenMs;
26
+ if (timeToFirstTokenMs == null) return { firstChunk };
27
+ return {
28
+ firstChunk,
29
+ firstToken: barFrom(Math.max(0, timeToFirstChunkMs - timeToFirstTokenMs), timeToFirstTokenMs)
30
+ };
31
+ }
32
+ exports.getTimelineMarkersLayout = getTimelineMarkersLayout;
33
+
34
+ //# sourceMappingURL=timeline-markers.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeline-markers.cjs.js","names":[],"sources":["../../../../src/domains/traces/utils/timeline-markers.ts"],"sourcesContent":["import type { UISpan } from '../types';\n\n/** Streaming timings of the trace root, read from its listed row. */\nexport type TraceStreamingTimings = {\n /** When the root span started; both timings count from a point on its run. */\n startedAt: string | Date;\n timeToFirstChunkMs?: number | null;\n timeToFirstTokenMs?: number | null;\n};\n\n/** A timing drawn as a bar on the track, as percentages of the trace duration. */\nexport type TimelineTimingBar = { durationMs: number; leftPercent: number; widthPercent: number };\n\nexport type TimelineMarkersLayout = {\n /** From the root start up to the first chunk. */\n firstChunk: TimelineTimingBar;\n /** The model's own wait: from the inference start up to the first chunk. */\n firstToken?: TimelineTimingBar;\n};\n\nconst clampPercent = (percent: number) => Math.min(100, Math.max(0, percent));\n\n/**\n * TTFC counts from the root start and TTFT from the inference start, but both end on the first\n * chunk. So both are bars ending on the same point of the axis, starting at different places.\n */\nexport function getTimelineMarkersLayout(\n spans: Pick<UISpan, 'startTime'>[],\n overallLatency: number,\n timings?: TraceStreamingTimings,\n): TimelineMarkersLayout | undefined {\n const timeToFirstChunkMs = timings?.timeToFirstChunkMs;\n const overallStartTime = spans[0]?.startTime;\n if (!timings || timeToFirstChunkMs == null || !overallLatency || !overallStartTime) return undefined;\n\n const rootShiftMs = new Date(timings.startedAt).getTime() - new Date(overallStartTime).getTime();\n if (Number.isNaN(rootShiftMs)) return undefined;\n\n const toPercent = (ms: number) => clampPercent(((rootShiftMs + ms) * 100) / overallLatency);\n const firstChunkPercent = toPercent(timeToFirstChunkMs);\n const barFrom = (startMs: number, durationMs: number): TimelineTimingBar => {\n const leftPercent = toPercent(startMs);\n return { durationMs, leftPercent, widthPercent: firstChunkPercent - leftPercent };\n };\n\n const firstChunk = barFrom(0, timeToFirstChunkMs);\n const timeToFirstTokenMs = timings.timeToFirstTokenMs;\n if (timeToFirstTokenMs == null) return { firstChunk };\n\n // The inference cannot start before the root, even if the recorded timings disagree.\n const firstToken = barFrom(Math.max(0, timeToFirstChunkMs - timeToFirstTokenMs), timeToFirstTokenMs);\n return { firstChunk, firstToken };\n}\n"],"mappings":";;AAoBA,IAAM,gBAAgB,YAAoB,KAAK,IAAI,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC;;;;;AAM5E,SAAgB,yBACd,OACA,gBACA,SACmC;CACnC,MAAM,qBAAqB,SAAS;CACpC,MAAM,mBAAmB,MAAM,EAAE,EAAE;CACnC,IAAI,CAAC,WAAW,sBAAsB,QAAQ,CAAC,kBAAkB,CAAC,kBAAkB,OAAO,KAAA;CAE3F,MAAM,cAAc,IAAI,KAAK,QAAQ,SAAS,CAAC,CAAC,QAAQ,IAAI,IAAI,KAAK,gBAAgB,CAAC,CAAC,QAAQ;CAC/F,IAAI,OAAO,MAAM,WAAW,GAAG,OAAO,KAAA;CAEtC,MAAM,aAAa,OAAe,cAAe,cAAc,MAAM,MAAO,cAAc;CAC1F,MAAM,oBAAoB,UAAU,kBAAkB;CACtD,MAAM,WAAW,SAAiB,eAA0C;EAC1E,MAAM,cAAc,UAAU,OAAO;EACrC,OAAO;GAAE;GAAY;GAAa,cAAc,oBAAoB;EAAY;CAClF;CAEA,MAAM,aAAa,QAAQ,GAAG,kBAAkB;CAChD,MAAM,qBAAqB,QAAQ;CACnC,IAAI,sBAAsB,MAAM,OAAO,EAAE,WAAW;CAIpD,OAAO;EAAE;EAAY,YADF,QAAQ,KAAK,IAAI,GAAG,qBAAqB,kBAAkB,GAAG,kBAC5D;CAAW;AAClC"}
@@ -0,0 +1 @@
1
+ export * from '../../../src/domains/traces/utils/timeline-markers';
@@ -0,0 +1,33 @@
1
+ // src/domains/traces/utils/timeline-markers.ts
2
+ var clampPercent = (percent) => Math.min(100, Math.max(0, percent));
3
+ /**
4
+ * TTFC counts from the root start and TTFT from the inference start, but both end on the first
5
+ * chunk. So both are bars ending on the same point of the axis, starting at different places.
6
+ */
7
+ function getTimelineMarkersLayout(spans, overallLatency, timings) {
8
+ const timeToFirstChunkMs = timings?.timeToFirstChunkMs;
9
+ const overallStartTime = spans[0]?.startTime;
10
+ if (!timings || timeToFirstChunkMs == null || !overallLatency || !overallStartTime) return void 0;
11
+ const rootShiftMs = new Date(timings.startedAt).getTime() - new Date(overallStartTime).getTime();
12
+ if (Number.isNaN(rootShiftMs)) return void 0;
13
+ const toPercent = (ms) => clampPercent((rootShiftMs + ms) * 100 / overallLatency);
14
+ const firstChunkPercent = toPercent(timeToFirstChunkMs);
15
+ const barFrom = (startMs, durationMs) => {
16
+ const leftPercent = toPercent(startMs);
17
+ return {
18
+ durationMs,
19
+ leftPercent,
20
+ widthPercent: firstChunkPercent - leftPercent
21
+ };
22
+ };
23
+ const firstChunk = barFrom(0, timeToFirstChunkMs);
24
+ const timeToFirstTokenMs = timings.timeToFirstTokenMs;
25
+ if (timeToFirstTokenMs == null) return { firstChunk };
26
+ return {
27
+ firstChunk,
28
+ firstToken: barFrom(Math.max(0, timeToFirstChunkMs - timeToFirstTokenMs), timeToFirstTokenMs)
29
+ };
30
+ }
31
+ export { getTimelineMarkersLayout };
32
+
33
+ //# sourceMappingURL=timeline-markers.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeline-markers.es.js","names":[],"sources":["../../../../src/domains/traces/utils/timeline-markers.ts"],"sourcesContent":["import type { UISpan } from '../types';\n\n/** Streaming timings of the trace root, read from its listed row. */\nexport type TraceStreamingTimings = {\n /** When the root span started; both timings count from a point on its run. */\n startedAt: string | Date;\n timeToFirstChunkMs?: number | null;\n timeToFirstTokenMs?: number | null;\n};\n\n/** A timing drawn as a bar on the track, as percentages of the trace duration. */\nexport type TimelineTimingBar = { durationMs: number; leftPercent: number; widthPercent: number };\n\nexport type TimelineMarkersLayout = {\n /** From the root start up to the first chunk. */\n firstChunk: TimelineTimingBar;\n /** The model's own wait: from the inference start up to the first chunk. */\n firstToken?: TimelineTimingBar;\n};\n\nconst clampPercent = (percent: number) => Math.min(100, Math.max(0, percent));\n\n/**\n * TTFC counts from the root start and TTFT from the inference start, but both end on the first\n * chunk. So both are bars ending on the same point of the axis, starting at different places.\n */\nexport function getTimelineMarkersLayout(\n spans: Pick<UISpan, 'startTime'>[],\n overallLatency: number,\n timings?: TraceStreamingTimings,\n): TimelineMarkersLayout | undefined {\n const timeToFirstChunkMs = timings?.timeToFirstChunkMs;\n const overallStartTime = spans[0]?.startTime;\n if (!timings || timeToFirstChunkMs == null || !overallLatency || !overallStartTime) return undefined;\n\n const rootShiftMs = new Date(timings.startedAt).getTime() - new Date(overallStartTime).getTime();\n if (Number.isNaN(rootShiftMs)) return undefined;\n\n const toPercent = (ms: number) => clampPercent(((rootShiftMs + ms) * 100) / overallLatency);\n const firstChunkPercent = toPercent(timeToFirstChunkMs);\n const barFrom = (startMs: number, durationMs: number): TimelineTimingBar => {\n const leftPercent = toPercent(startMs);\n return { durationMs, leftPercent, widthPercent: firstChunkPercent - leftPercent };\n };\n\n const firstChunk = barFrom(0, timeToFirstChunkMs);\n const timeToFirstTokenMs = timings.timeToFirstTokenMs;\n if (timeToFirstTokenMs == null) return { firstChunk };\n\n // The inference cannot start before the root, even if the recorded timings disagree.\n const firstToken = barFrom(Math.max(0, timeToFirstChunkMs - timeToFirstTokenMs), timeToFirstTokenMs);\n return { firstChunk, firstToken };\n}\n"],"mappings":";AAoBA,IAAM,gBAAgB,YAAoB,KAAK,IAAI,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC;;;;;AAM5E,SAAgB,yBACd,OACA,gBACA,SACmC;CACnC,MAAM,qBAAqB,SAAS;CACpC,MAAM,mBAAmB,MAAM,EAAE,EAAE;CACnC,IAAI,CAAC,WAAW,sBAAsB,QAAQ,CAAC,kBAAkB,CAAC,kBAAkB,OAAO,KAAA;CAE3F,MAAM,cAAc,IAAI,KAAK,QAAQ,SAAS,CAAC,CAAC,QAAQ,IAAI,IAAI,KAAK,gBAAgB,CAAC,CAAC,QAAQ;CAC/F,IAAI,OAAO,MAAM,WAAW,GAAG,OAAO,KAAA;CAEtC,MAAM,aAAa,OAAe,cAAe,cAAc,MAAM,MAAO,cAAc;CAC1F,MAAM,oBAAoB,UAAU,kBAAkB;CACtD,MAAM,WAAW,SAAiB,eAA0C;EAC1E,MAAM,cAAc,UAAU,OAAO;EACrC,OAAO;GAAE;GAAY;GAAa,cAAc,oBAAoB;EAAY;CAClF;CAEA,MAAM,aAAa,QAAQ,GAAG,kBAAkB;CAChD,MAAM,qBAAqB,QAAQ;CACnC,IAAI,sBAAsB,MAAM,OAAO,EAAE,WAAW;CAIpD,OAAO;EAAE;EAAY,YADF,QAAQ,KAAK,IAAI,GAAG,qBAAqB,kBAAkB,GAAG,kBAC5D;CAAW;AAClC"}
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_trace_filters = require("../trace-filters-BpeBUjCb.cjs");
2
+ const require_trace_filters = require("../trace-filters-BNEZ31HX.cjs");
3
3
  const require_domains_traces_components_traces_spans_switch = require("./traces/components/traces-spans-switch.cjs.js");
4
4
  const require_domains_traces_utils_span_utils = require("./traces/utils/span-utils.cjs.js");
5
5
  const require_domains_traces_components_shared = require("./traces/components/shared.cjs.js");
@@ -115,6 +115,7 @@ exports.TRACE_STATUS_VALUES = require_trace_filters.TRACE_STATUS_VALUES;
115
115
  exports.TRACE_STRING_OPERATORS = require_trace_filters.TRACE_STRING_OPERATORS;
116
116
  exports.TRACE_SYNTHETIC_FILTER_FIELD_IDS = require_trace_filters.TRACE_SYNTHETIC_FILTER_FIELD_IDS;
117
117
  exports.TRACE_SYNTHETIC_OPERATORS = require_trace_filters.TRACE_SYNTHETIC_OPERATORS;
118
+ exports.TRACE_TAGS_OPERATORS = require_trace_filters.TRACE_TAGS_OPERATORS;
118
119
  exports.TRACE_TEXT_OPERATORS = require_trace_filters.TRACE_TEXT_OPERATORS;
119
120
  exports.ThreadTrace = require_domains_traces_components_thread_trace.ThreadTrace;
120
121
  exports.TimelineNameCol = require_domains_traces_components_timeline_name_col.TimelineNameCol;
@@ -136,6 +137,7 @@ exports.applyTracePropertyFilterTokens = require_trace_filters.applyTracePropert
136
137
  exports.buildTraceListFilters = require_trace_filters.buildTraceListFilters;
137
138
  exports.buildTraceQueryRequest = require_trace_filters.buildTraceQueryRequest;
138
139
  exports.clearSavedTraceFilters = require_trace_filters.clearSavedTraceFilters;
140
+ exports.createOutcomeFilterBarFields = require_trace_filters.createOutcomeFilterBarFields;
139
141
  exports.createTraceFilterBarFields = require_trace_filters.createTraceFilterBarFields;
140
142
  exports.filterBarExpressionToTraceFilters = require_trace_filters.filterBarExpressionToTraceFilters;
141
143
  exports.filterBarItemsToTraceTokens = require_trace_filters.filterBarItemsToTraceTokens;
@@ -177,6 +179,7 @@ exports.traceFilterFieldIcon = require_trace_filters.traceFilterFieldIcon;
177
179
  exports.traceFilterOperatorParam = require_trace_filters.traceFilterOperatorParam;
178
180
  exports.traceFilterTokenOperator = require_trace_filters.traceFilterTokenOperator;
179
181
  exports.traceFiltersToFilterBarExpression = require_trace_filters.traceFiltersToFilterBarExpression;
182
+ exports.traceQueryUnqueryableFieldIds = require_trace_filters.traceQueryUnqueryableFieldIds;
180
183
  exports.traceTokensToFilterBarItems = require_trace_filters.traceTokensToFilterBarItems;
181
184
  Object.defineProperty(exports, "useBranch", {
182
185
  enumerable: true,
@@ -259,3 +262,4 @@ Object.defineProperty(exports, "useTraces", {
259
262
  });
260
263
  exports.useTracesListSource = require_domains_traces_hooks_use_traces_list_source.useTracesListSource;
261
264
  exports.useVisibleTraceRows = require_domains_traces_hooks_use_visible_trace_rows.useVisibleTraceRows;
265
+ exports.withoutUnrecordedStreamingTimings = require_trace_filters.withoutUnrecordedStreamingTimings;