@mastra/playground-ui 48.0.0-alpha.15 → 48.0.0-alpha.16

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 (357) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/components/CodeBlock.cjs.js +4 -3
  3. package/dist/components/CodeBlock.cjs.js.map +1 -1
  4. package/dist/components/CodeBlock.es.js +2 -1
  5. package/dist/components/CodeBlock.es.js.map +1 -1
  6. package/dist/components/SankeyChart.cjs.js +10 -918
  7. package/dist/components/SankeyChart.cjs.js.map +1 -1
  8. package/dist/components/SankeyChart.es.js +2 -915
  9. package/dist/components/SankeyChart.es.js.map +1 -1
  10. package/dist/components/Tabs.cjs.js +4 -3
  11. package/dist/components/Tabs.cjs.js.map +1 -1
  12. package/dist/components/Tabs.es.js +2 -1
  13. package/dist/components/Tabs.es.js.map +1 -1
  14. package/dist/domains/metrics/components/latency-card-view.cjs.js +4 -3
  15. package/dist/domains/metrics/components/latency-card-view.cjs.js.map +1 -1
  16. package/dist/domains/metrics/components/latency-card-view.es.js +2 -1
  17. package/dist/domains/metrics/components/latency-card-view.es.js.map +1 -1
  18. package/dist/domains/metrics/components/memory-card-view.cjs.js +4 -3
  19. package/dist/domains/metrics/components/memory-card-view.cjs.js.map +1 -1
  20. package/dist/domains/metrics/components/memory-card-view.es.js +2 -1
  21. package/dist/domains/metrics/components/memory-card-view.es.js.map +1 -1
  22. package/dist/domains/metrics/components/scores-card-view.cjs.js +4 -3
  23. package/dist/domains/metrics/components/scores-card-view.cjs.js.map +1 -1
  24. package/dist/domains/metrics/components/scores-card-view.es.js +2 -1
  25. package/dist/domains/metrics/components/scores-card-view.es.js.map +1 -1
  26. package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js +4 -3
  27. package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js.map +1 -1
  28. package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js +2 -1
  29. package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js.map +1 -1
  30. package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js +4 -3
  31. package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js.map +1 -1
  32. package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js +2 -1
  33. package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js.map +1 -1
  34. package/dist/domains/metrics/components/traces-volume-card-view.cjs.js +4 -3
  35. package/dist/domains/metrics/components/traces-volume-card-view.cjs.js.map +1 -1
  36. package/dist/domains/metrics/components/traces-volume-card-view.es.js +2 -1
  37. package/dist/domains/metrics/components/traces-volume-card-view.es.js.map +1 -1
  38. package/dist/domains/traces/components/span-data-panel-view.cjs.js +4 -3
  39. package/dist/domains/traces/components/span-data-panel-view.cjs.js.map +1 -1
  40. package/dist/domains/traces/components/span-data-panel-view.es.js +2 -1
  41. package/dist/domains/traces/components/span-data-panel-view.es.js.map +1 -1
  42. package/dist/domains/traces/hooks/use-entity-names.cjs.js +12 -4
  43. package/dist/domains/traces/hooks/use-entity-names.cjs.js.map +1 -1
  44. package/dist/domains/traces/hooks/use-entity-names.es.js +12 -4
  45. package/dist/domains/traces/hooks/use-entity-names.es.js.map +1 -1
  46. package/dist/ee/signals/entity-learning-api.cjs.js +113 -0
  47. package/dist/ee/signals/entity-learning-api.cjs.js.map +1 -0
  48. package/dist/ee/signals/entity-learning-api.d.ts +2 -0
  49. package/dist/ee/signals/entity-learning-api.es.js +99 -0
  50. package/dist/ee/signals/entity-learning-api.es.js.map +1 -0
  51. package/dist/ee/signals/examples-pager.cjs.js +49 -0
  52. package/dist/ee/signals/examples-pager.cjs.js.map +1 -0
  53. package/dist/ee/signals/examples-pager.d.ts +2 -0
  54. package/dist/ee/signals/examples-pager.es.js +44 -0
  55. package/dist/ee/signals/examples-pager.es.js.map +1 -0
  56. package/dist/ee/signals/flow-card.cjs.js +105 -0
  57. package/dist/ee/signals/flow-card.cjs.js.map +1 -0
  58. package/dist/ee/signals/flow-card.d.ts +2 -0
  59. package/dist/ee/signals/flow-card.es.js +101 -0
  60. package/dist/ee/signals/flow-card.es.js.map +1 -0
  61. package/dist/ee/signals/hooks/theme-query-guards.cjs.js +20 -0
  62. package/dist/ee/signals/hooks/theme-query-guards.cjs.js.map +1 -0
  63. package/dist/ee/signals/hooks/theme-query-guards.d.ts +2 -0
  64. package/dist/ee/signals/hooks/theme-query-guards.es.js +14 -0
  65. package/dist/ee/signals/hooks/theme-query-guards.es.js.map +1 -0
  66. package/dist/ee/signals/hooks/use-entity-learning-progress.cjs.js +19 -0
  67. package/dist/ee/signals/hooks/use-entity-learning-progress.cjs.js.map +1 -0
  68. package/dist/ee/signals/hooks/use-entity-learning-progress.d.ts +2 -0
  69. package/dist/ee/signals/hooks/use-entity-learning-progress.es.js +15 -0
  70. package/dist/ee/signals/hooks/use-entity-learning-progress.es.js.map +1 -0
  71. package/dist/ee/signals/hooks/use-noise-examples.cjs.js +32 -0
  72. package/dist/ee/signals/hooks/use-noise-examples.cjs.js.map +1 -0
  73. package/dist/ee/signals/hooks/use-noise-examples.d.ts +2 -0
  74. package/dist/ee/signals/hooks/use-noise-examples.es.js +28 -0
  75. package/dist/ee/signals/hooks/use-noise-examples.es.js.map +1 -0
  76. package/dist/ee/signals/hooks/use-noise.cjs.js +22 -0
  77. package/dist/ee/signals/hooks/use-noise.cjs.js.map +1 -0
  78. package/dist/ee/signals/hooks/use-noise.d.ts +2 -0
  79. package/dist/ee/signals/hooks/use-noise.es.js +18 -0
  80. package/dist/ee/signals/hooks/use-noise.es.js.map +1 -0
  81. package/dist/ee/signals/hooks/use-snapshot-playback.cjs.js +22 -0
  82. package/dist/ee/signals/hooks/use-snapshot-playback.cjs.js.map +1 -0
  83. package/dist/ee/signals/hooks/use-snapshot-playback.d.ts +2 -0
  84. package/dist/ee/signals/hooks/use-snapshot-playback.es.js +18 -0
  85. package/dist/ee/signals/hooks/use-snapshot-playback.es.js.map +1 -0
  86. package/dist/ee/signals/hooks/use-theme-detail.cjs.js +27 -0
  87. package/dist/ee/signals/hooks/use-theme-detail.cjs.js.map +1 -0
  88. package/dist/ee/signals/hooks/use-theme-detail.d.ts +2 -0
  89. package/dist/ee/signals/hooks/use-theme-detail.es.js +23 -0
  90. package/dist/ee/signals/hooks/use-theme-detail.es.js.map +1 -0
  91. package/dist/ee/signals/hooks/use-theme-entities.cjs.js +18 -0
  92. package/dist/ee/signals/hooks/use-theme-entities.cjs.js.map +1 -0
  93. package/dist/ee/signals/hooks/use-theme-entities.d.ts +2 -0
  94. package/dist/ee/signals/hooks/use-theme-entities.es.js +14 -0
  95. package/dist/ee/signals/hooks/use-theme-entities.es.js.map +1 -0
  96. package/dist/ee/signals/hooks/use-theme-examples.cjs.js +40 -0
  97. package/dist/ee/signals/hooks/use-theme-examples.cjs.js.map +1 -0
  98. package/dist/ee/signals/hooks/use-theme-examples.d.ts +2 -0
  99. package/dist/ee/signals/hooks/use-theme-examples.es.js +36 -0
  100. package/dist/ee/signals/hooks/use-theme-examples.es.js.map +1 -0
  101. package/dist/ee/signals/hooks/use-theme-flow.cjs.js +23 -0
  102. package/dist/ee/signals/hooks/use-theme-flow.cjs.js.map +1 -0
  103. package/dist/ee/signals/hooks/use-theme-flow.d.ts +2 -0
  104. package/dist/ee/signals/hooks/use-theme-flow.es.js +19 -0
  105. package/dist/ee/signals/hooks/use-theme-flow.es.js.map +1 -0
  106. package/dist/ee/signals/hooks/use-theme-flows.cjs.js +22 -0
  107. package/dist/ee/signals/hooks/use-theme-flows.cjs.js.map +1 -0
  108. package/dist/ee/signals/hooks/use-theme-flows.d.ts +2 -0
  109. package/dist/ee/signals/hooks/use-theme-flows.es.js +18 -0
  110. package/dist/ee/signals/hooks/use-theme-flows.es.js.map +1 -0
  111. package/dist/ee/signals/hooks/use-theme-history.cjs.js +20 -0
  112. package/dist/ee/signals/hooks/use-theme-history.cjs.js.map +1 -0
  113. package/dist/ee/signals/hooks/use-theme-history.d.ts +2 -0
  114. package/dist/ee/signals/hooks/use-theme-history.es.js +16 -0
  115. package/dist/ee/signals/hooks/use-theme-history.es.js.map +1 -0
  116. package/dist/ee/signals/hooks/use-theme-paths.cjs.js +21 -0
  117. package/dist/ee/signals/hooks/use-theme-paths.cjs.js.map +1 -0
  118. package/dist/ee/signals/hooks/use-theme-paths.d.ts +2 -0
  119. package/dist/ee/signals/hooks/use-theme-paths.es.js +17 -0
  120. package/dist/ee/signals/hooks/use-theme-paths.es.js.map +1 -0
  121. package/dist/ee/signals/hooks/use-theme-snapshots.cjs.js +22 -0
  122. package/dist/ee/signals/hooks/use-theme-snapshots.cjs.js.map +1 -0
  123. package/dist/ee/signals/hooks/use-theme-snapshots.d.ts +2 -0
  124. package/dist/ee/signals/hooks/use-theme-snapshots.es.js +18 -0
  125. package/dist/ee/signals/hooks/use-theme-snapshots.es.js.map +1 -0
  126. package/dist/ee/signals/hooks/use-trace-insight.cjs.js +21 -0
  127. package/dist/ee/signals/hooks/use-trace-insight.cjs.js.map +1 -0
  128. package/dist/ee/signals/hooks/use-trace-insight.d.ts +2 -0
  129. package/dist/ee/signals/hooks/use-trace-insight.es.js +17 -0
  130. package/dist/ee/signals/hooks/use-trace-insight.es.js.map +1 -0
  131. package/dist/ee/signals/hooks.cjs.js +30 -0
  132. package/dist/ee/signals/hooks.cjs.js.map +1 -0
  133. package/dist/ee/signals/hooks.d.ts +2 -0
  134. package/dist/ee/signals/hooks.es.js +12 -0
  135. package/dist/ee/signals/hooks.es.js.map +1 -0
  136. package/dist/ee/signals/lifeline-point.cjs.js +73 -0
  137. package/dist/ee/signals/lifeline-point.cjs.js.map +1 -0
  138. package/dist/ee/signals/lifeline-point.d.ts +2 -0
  139. package/dist/ee/signals/lifeline-point.es.js +69 -0
  140. package/dist/ee/signals/lifeline-point.es.js.map +1 -0
  141. package/dist/ee/signals/lifeline-row.cjs.js +118 -0
  142. package/dist/ee/signals/lifeline-row.cjs.js.map +1 -0
  143. package/dist/ee/signals/lifeline-row.d.ts +2 -0
  144. package/dist/ee/signals/lifeline-row.es.js +114 -0
  145. package/dist/ee/signals/lifeline-row.es.js.map +1 -0
  146. package/dist/ee/signals/noise-detail-panel.cjs.js +96 -0
  147. package/dist/ee/signals/noise-detail-panel.cjs.js.map +1 -0
  148. package/dist/ee/signals/noise-detail-panel.d.ts +2 -0
  149. package/dist/ee/signals/noise-detail-panel.es.js +92 -0
  150. package/dist/ee/signals/noise-detail-panel.es.js.map +1 -0
  151. package/dist/ee/signals/sankey-signals-data.cjs.js +138 -0
  152. package/dist/ee/signals/sankey-signals-data.cjs.js.map +1 -0
  153. package/dist/ee/signals/sankey-signals-data.d.ts +2 -0
  154. package/dist/ee/signals/sankey-signals-data.es.js +127 -0
  155. package/dist/ee/signals/sankey-signals-data.es.js.map +1 -0
  156. package/dist/ee/signals/sankey-signals.cjs.js +367 -0
  157. package/dist/ee/signals/sankey-signals.cjs.js.map +1 -0
  158. package/dist/ee/signals/sankey-signals.d.ts +2 -0
  159. package/dist/ee/signals/sankey-signals.es.js +363 -0
  160. package/dist/ee/signals/sankey-signals.es.js.map +1 -0
  161. package/dist/ee/signals/signal-delta-column.cjs.js +90 -0
  162. package/dist/ee/signals/signal-delta-column.cjs.js.map +1 -0
  163. package/dist/ee/signals/signal-delta-column.d.ts +2 -0
  164. package/dist/ee/signals/signal-delta-column.es.js +86 -0
  165. package/dist/ee/signals/signal-delta-column.es.js.map +1 -0
  166. package/dist/ee/signals/signal-formatting.cjs.js +83 -0
  167. package/dist/ee/signals/signal-formatting.cjs.js.map +1 -0
  168. package/dist/ee/signals/signal-formatting.d.ts +2 -0
  169. package/dist/ee/signals/signal-formatting.es.js +70 -0
  170. package/dist/ee/signals/signal-formatting.es.js.map +1 -0
  171. package/dist/ee/signals/signal-lifelines.cjs.js +69 -0
  172. package/dist/ee/signals/signal-lifelines.cjs.js.map +1 -0
  173. package/dist/ee/signals/signal-lifelines.d.ts +2 -0
  174. package/dist/ee/signals/signal-lifelines.es.js +65 -0
  175. package/dist/ee/signals/signal-lifelines.es.js.map +1 -0
  176. package/dist/ee/signals/signals-error-state.cjs.js +28 -0
  177. package/dist/ee/signals/signals-error-state.cjs.js.map +1 -0
  178. package/dist/ee/signals/signals-error-state.d.ts +2 -0
  179. package/dist/ee/signals/signals-error-state.es.js +24 -0
  180. package/dist/ee/signals/signals-error-state.es.js.map +1 -0
  181. package/dist/ee/signals/signals-loading-skeleton.cjs.js +57 -0
  182. package/dist/ee/signals/signals-loading-skeleton.cjs.js.map +1 -0
  183. package/dist/ee/signals/signals-loading-skeleton.d.ts +2 -0
  184. package/dist/ee/signals/signals-loading-skeleton.es.js +52 -0
  185. package/dist/ee/signals/signals-loading-skeleton.es.js.map +1 -0
  186. package/dist/ee/signals/snapshot-timeline-data.cjs.js +40 -0
  187. package/dist/ee/signals/snapshot-timeline-data.cjs.js.map +1 -0
  188. package/dist/ee/signals/snapshot-timeline-data.d.ts +2 -0
  189. package/dist/ee/signals/snapshot-timeline-data.es.js +34 -0
  190. package/dist/ee/signals/snapshot-timeline-data.es.js.map +1 -0
  191. package/dist/ee/signals/snapshot-timeline.cjs.js +109 -0
  192. package/dist/ee/signals/snapshot-timeline.cjs.js.map +1 -0
  193. package/dist/ee/signals/snapshot-timeline.d.ts +2 -0
  194. package/dist/ee/signals/snapshot-timeline.es.js +104 -0
  195. package/dist/ee/signals/snapshot-timeline.es.js.map +1 -0
  196. package/dist/ee/signals/sortable-signal-headers.cjs.js +145 -0
  197. package/dist/ee/signals/sortable-signal-headers.cjs.js.map +1 -0
  198. package/dist/ee/signals/sortable-signal-headers.d.ts +2 -0
  199. package/dist/ee/signals/sortable-signal-headers.es.js +141 -0
  200. package/dist/ee/signals/sortable-signal-headers.es.js.map +1 -0
  201. package/dist/ee/signals/theme-compare-data.cjs.js +46 -0
  202. package/dist/ee/signals/theme-compare-data.cjs.js.map +1 -0
  203. package/dist/ee/signals/theme-compare-data.d.ts +2 -0
  204. package/dist/ee/signals/theme-compare-data.es.js +41 -0
  205. package/dist/ee/signals/theme-compare-data.es.js.map +1 -0
  206. package/dist/ee/signals/theme-compare-sparkline.cjs.js +67 -0
  207. package/dist/ee/signals/theme-compare-sparkline.cjs.js.map +1 -0
  208. package/dist/ee/signals/theme-compare-sparkline.d.ts +2 -0
  209. package/dist/ee/signals/theme-compare-sparkline.es.js +63 -0
  210. package/dist/ee/signals/theme-compare-sparkline.es.js.map +1 -0
  211. package/dist/ee/signals/theme-compare.cjs.js +103 -0
  212. package/dist/ee/signals/theme-compare.cjs.js.map +1 -0
  213. package/dist/ee/signals/theme-compare.d.ts +2 -0
  214. package/dist/ee/signals/theme-compare.es.js +99 -0
  215. package/dist/ee/signals/theme-compare.es.js.map +1 -0
  216. package/dist/ee/signals/theme-detail-panel.cjs.js +171 -0
  217. package/dist/ee/signals/theme-detail-panel.cjs.js.map +1 -0
  218. package/dist/ee/signals/theme-detail-panel.d.ts +2 -0
  219. package/dist/ee/signals/theme-detail-panel.es.js +167 -0
  220. package/dist/ee/signals/theme-detail-panel.es.js.map +1 -0
  221. package/dist/ee/signals/theme-drilldown-data.cjs.js +115 -0
  222. package/dist/ee/signals/theme-drilldown-data.cjs.js.map +1 -0
  223. package/dist/ee/signals/theme-drilldown-data.d.ts +2 -0
  224. package/dist/ee/signals/theme-drilldown-data.es.js +109 -0
  225. package/dist/ee/signals/theme-drilldown-data.es.js.map +1 -0
  226. package/dist/ee/signals/theme-filter-banner.cjs.js +64 -0
  227. package/dist/ee/signals/theme-filter-banner.cjs.js.map +1 -0
  228. package/dist/ee/signals/theme-filter-banner.d.ts +2 -0
  229. package/dist/ee/signals/theme-filter-banner.es.js +60 -0
  230. package/dist/ee/signals/theme-filter-banner.es.js.map +1 -0
  231. package/dist/ee/signals/theme-lifelines-data.cjs.js +62 -0
  232. package/dist/ee/signals/theme-lifelines-data.cjs.js.map +1 -0
  233. package/dist/ee/signals/theme-lifelines-data.d.ts +2 -0
  234. package/dist/ee/signals/theme-lifelines-data.es.js +56 -0
  235. package/dist/ee/signals/theme-lifelines-data.es.js.map +1 -0
  236. package/dist/ee/signals/theme-lifelines.cjs.js +75 -0
  237. package/dist/ee/signals/theme-lifelines.cjs.js.map +1 -0
  238. package/dist/ee/signals/theme-lifelines.d.ts +2 -0
  239. package/dist/ee/signals/theme-lifelines.es.js +71 -0
  240. package/dist/ee/signals/theme-lifelines.es.js.map +1 -0
  241. package/dist/ee/signals/theme-trend-chart.cjs.js +83 -0
  242. package/dist/ee/signals/theme-trend-chart.cjs.js.map +1 -0
  243. package/dist/ee/signals/theme-trend-chart.d.ts +2 -0
  244. package/dist/ee/signals/theme-trend-chart.es.js +79 -0
  245. package/dist/ee/signals/theme-trend-chart.es.js.map +1 -0
  246. package/dist/ee/signals/theme-trend.cjs.js +27 -0
  247. package/dist/ee/signals/theme-trend.cjs.js.map +1 -0
  248. package/dist/ee/signals/theme-trend.d.ts +2 -0
  249. package/dist/ee/signals/theme-trend.es.js +22 -0
  250. package/dist/ee/signals/theme-trend.es.js.map +1 -0
  251. package/dist/ee/signals/trace-insight-view.cjs.js +89 -0
  252. package/dist/ee/signals/trace-insight-view.cjs.js.map +1 -0
  253. package/dist/ee/signals/trace-insight-view.d.ts +2 -0
  254. package/dist/ee/signals/trace-insight-view.es.js +85 -0
  255. package/dist/ee/signals/trace-insight-view.es.js.map +1 -0
  256. package/dist/ee/signals/trace-intelligence-context.cjs.js +24 -0
  257. package/dist/ee/signals/trace-intelligence-context.cjs.js.map +1 -0
  258. package/dist/ee/signals/trace-intelligence-context.d.ts +2 -0
  259. package/dist/ee/signals/trace-intelligence-context.es.js +19 -0
  260. package/dist/ee/signals/trace-intelligence-context.es.js.map +1 -0
  261. package/dist/ee/signals/trace-intelligence-explainer.cjs.js +45 -0
  262. package/dist/ee/signals/trace-intelligence-explainer.cjs.js.map +1 -0
  263. package/dist/ee/signals/trace-intelligence-explainer.d.ts +2 -0
  264. package/dist/ee/signals/trace-intelligence-explainer.es.js +41 -0
  265. package/dist/ee/signals/trace-intelligence-explainer.es.js.map +1 -0
  266. package/dist/ee/signals/trace-intelligence-provider.cjs.js +19 -0
  267. package/dist/ee/signals/trace-intelligence-provider.cjs.js.map +1 -0
  268. package/dist/ee/signals/trace-intelligence-provider.d.ts +2 -0
  269. package/dist/ee/signals/trace-intelligence-provider.es.js +15 -0
  270. package/dist/ee/signals/trace-intelligence-provider.es.js.map +1 -0
  271. package/dist/ee/signals/types.cjs.js +3 -0
  272. package/dist/ee/signals/types.cjs.js.map +1 -0
  273. package/dist/ee/signals/types.d.ts +2 -0
  274. package/dist/ee/signals/types.es.js +2 -0
  275. package/dist/ee/signals/types.es.js.map +1 -0
  276. package/dist/ee/signals/use-trace-intelligence.cjs.js +13 -0
  277. package/dist/ee/signals/use-trace-intelligence.cjs.js.map +1 -0
  278. package/dist/ee/signals/use-trace-intelligence.d.ts +2 -0
  279. package/dist/ee/signals/use-trace-intelligence.es.js +9 -0
  280. package/dist/ee/signals/use-trace-intelligence.es.js.map +1 -0
  281. package/dist/ee/signals/view-mode-tab.cjs.js +18 -0
  282. package/dist/ee/signals/view-mode-tab.cjs.js.map +1 -0
  283. package/dist/ee/signals/view-mode-tab.d.ts +2 -0
  284. package/dist/ee/signals/view-mode-tab.es.js +14 -0
  285. package/dist/ee/signals/view-mode-tab.es.js.map +1 -0
  286. package/dist/ee/signals.cjs.js +38 -0
  287. package/dist/ee/signals.cjs.js.map +1 -1
  288. package/dist/ee/signals.es.js +18 -0
  289. package/dist/ee/signals.es.js.map +1 -1
  290. package/dist/sankey-chart-Bp-DrL1q.cjs +925 -0
  291. package/dist/sankey-chart-Bp-DrL1q.cjs.map +1 -0
  292. package/dist/sankey-chart-zhW_F0Rm.js +915 -0
  293. package/dist/sankey-chart-zhW_F0Rm.js.map +1 -0
  294. package/dist/src/domains/traces/hooks/use-entity-names.d.ts +2 -1
  295. package/dist/src/ee/signals/entity-learning-api.d.ts +13 -0
  296. package/dist/src/ee/signals/examples-pager.d.ts +7 -0
  297. package/dist/src/ee/signals/flow-card.d.ts +14 -0
  298. package/dist/src/ee/signals/hooks/index.d.ts +11 -0
  299. package/dist/src/ee/signals/hooks/theme-query-guards.d.ts +3 -0
  300. package/dist/src/ee/signals/hooks/use-entity-learning-progress.d.ts +1 -0
  301. package/dist/src/ee/signals/hooks/use-noise-examples.d.ts +2 -0
  302. package/dist/src/ee/signals/hooks/use-noise.d.ts +2 -0
  303. package/dist/src/ee/signals/hooks/use-snapshot-playback.d.ts +9 -0
  304. package/dist/src/ee/signals/hooks/use-theme-detail.d.ts +2 -0
  305. package/dist/src/ee/signals/hooks/use-theme-entities.d.ts +1 -0
  306. package/dist/src/ee/signals/hooks/use-theme-examples.d.ts +2 -0
  307. package/dist/src/ee/signals/hooks/use-theme-flow.d.ts +2 -0
  308. package/dist/src/ee/signals/hooks/use-theme-flows.d.ts +2 -0
  309. package/dist/src/ee/signals/hooks/use-theme-history.d.ts +2 -0
  310. package/dist/src/ee/signals/hooks/use-theme-paths.d.ts +2 -0
  311. package/dist/src/ee/signals/hooks/use-theme-snapshots.d.ts +2 -0
  312. package/dist/src/ee/signals/hooks/use-trace-insight.d.ts +1 -0
  313. package/dist/src/ee/signals/index.d.ts +9 -0
  314. package/dist/src/ee/signals/lifeline-point.d.ts +8 -0
  315. package/dist/src/ee/signals/lifeline-row.d.ts +11 -0
  316. package/dist/src/ee/signals/noise-detail-panel.d.ts +10 -0
  317. package/dist/src/ee/signals/sankey-signals-data.d.ts +41 -0
  318. package/dist/src/ee/signals/sankey-signals.d.ts +12 -0
  319. package/dist/src/ee/signals/signal-delta-column.d.ts +12 -0
  320. package/dist/src/ee/signals/signal-formatting.d.ts +15 -0
  321. package/dist/src/ee/signals/signal-lifelines.d.ts +9 -0
  322. package/dist/src/ee/signals/signals-error-state.d.ts +5 -0
  323. package/dist/src/ee/signals/signals-loading-skeleton.d.ts +2 -0
  324. package/dist/src/ee/signals/snapshot-timeline-data.d.ts +12 -0
  325. package/dist/src/ee/signals/snapshot-timeline.d.ts +25 -0
  326. package/dist/src/ee/signals/sortable-signal-headers.d.ts +6 -0
  327. package/dist/src/ee/signals/theme-compare-data.d.ts +24 -0
  328. package/dist/src/ee/signals/theme-compare-sparkline.d.ts +5 -0
  329. package/dist/src/ee/signals/theme-compare.d.ts +17 -0
  330. package/dist/src/ee/signals/theme-detail-panel.d.ts +11 -0
  331. package/dist/src/ee/signals/theme-drilldown-data.d.ts +10 -0
  332. package/dist/src/ee/signals/theme-filter-banner.d.ts +8 -0
  333. package/dist/src/ee/signals/theme-lifelines-data.d.ts +35 -0
  334. package/dist/src/ee/signals/theme-lifelines.d.ts +17 -0
  335. package/dist/src/ee/signals/theme-trend-chart.d.ts +6 -0
  336. package/dist/src/ee/signals/theme-trend.d.ts +17 -0
  337. package/dist/src/ee/signals/trace-insight-view.d.ts +6 -0
  338. package/dist/src/ee/signals/trace-intelligence-context.d.ts +10 -0
  339. package/dist/src/ee/signals/trace-intelligence-explainer.d.ts +2 -0
  340. package/dist/src/ee/signals/trace-intelligence-provider.d.ts +11 -0
  341. package/dist/src/ee/signals/types.d.ts +1 -0
  342. package/dist/src/ee/signals/use-trace-intelligence.d.ts +1 -0
  343. package/dist/src/ee/signals/view-mode-tab.d.ts +6 -0
  344. package/dist/src/test/msw-server.d.ts +1 -0
  345. package/dist/src/test/vitest-setup.d.ts +1 -0
  346. package/dist/style.css +227 -2
  347. package/dist/tabs-root-BBPou4QC.js +69 -0
  348. package/dist/tabs-root-BBPou4QC.js.map +1 -0
  349. package/dist/tabs-root-VtBc6K2q.cjs +72 -0
  350. package/dist/tabs-root-VtBc6K2q.cjs.map +1 -0
  351. package/dist/{tabs-tab-BkUCE-4E.cjs → tabs-tab-Cq4YR31P.cjs} +2 -67
  352. package/dist/tabs-tab-Cq4YR31P.cjs.map +1 -0
  353. package/dist/{tabs-tab-DDGltcUc.js → tabs-tab-D5JTAehi.js} +6 -69
  354. package/dist/tabs-tab-D5JTAehi.js.map +1 -0
  355. package/package.json +7 -7
  356. package/dist/tabs-tab-BkUCE-4E.cjs.map +0 -1
  357. package/dist/tabs-tab-DDGltcUc.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,31 @@
1
1
  # @mastra/playground-ui
2
2
 
3
+ ## 48.0.0-alpha.16
4
+
5
+ ### Minor Changes
6
+
7
+ - Export the Trace Intelligence experience with injectable request and navigation adapters so product hosts can render it outside OSS Studio. ([#21272](https://github.com/mastra-ai/mastra/pull/21272))
8
+
9
+ ```tsx
10
+ import { SankeySignals, TraceIntelligenceProvider } from '@mastra/playground-ui/ee/signals';
11
+
12
+ <TraceIntelligenceProvider
13
+ cacheScope={`${organizationId}:${projectId}`}
14
+ request={request}
15
+ getTraceHref={traceId => `/traces/${traceId}`}
16
+ >
17
+ <SankeySignals entityId={agentId} signalNames={signalNames} />
18
+ </TraceIntelligenceProvider>;
19
+ ```
20
+
21
+ ### Patch Changes
22
+
23
+ - Updated dependencies [[`dc4a25d`](https://github.com/mastra-ai/mastra/commit/dc4a25d41af4e2fe97a816070eaec6aa963ab53b), [`dc4a25d`](https://github.com/mastra-ai/mastra/commit/dc4a25d41af4e2fe97a816070eaec6aa963ab53b)]:
24
+ - @mastra/memory@1.26.1-alpha.7
25
+ - @mastra/core@1.58.0-alpha.15
26
+ - @mastra/client-js@1.39.0-alpha.15
27
+ - @mastra/react@1.4.2-alpha.15
28
+
3
29
  ## 48.0.0-alpha.15
4
30
 
5
31
  ### Patch Changes
@@ -6,7 +6,8 @@ const jsxRuntime = require('react/jsx-runtime');
6
6
  const code = require('../code-B3WONxnA.cjs');
7
7
  const copyButton = require('../copy-button-DwZ3c7D4.cjs');
8
8
  const select = require('../select-OAXqZLkC.cjs');
9
- const tabsTab = require('../tabs-tab-BkUCE-4E.cjs');
9
+ const tabsRoot = require('../tabs-root-VtBc6K2q.cjs');
10
+ const tabsTab = require('../tabs-tab-Cq4YR31P.cjs');
10
11
  const primitives_transitions = require('../primitives/transitions.cjs.js');
11
12
  const utils_cn = require('../cn-vA5sWo9W.cjs');
12
13
 
@@ -37,9 +38,9 @@ function CodeBlock({
37
38
  className
38
39
  ),
39
40
  children: [
40
- useTabs && firstOption && /* @__PURE__ */ jsxRuntime.jsx(tabsTab.Tabs, { defaultTab: firstOption.value, value: activeValue, onValueChange: onValueChange ?? (() => {
41
+ useTabs && firstOption && /* @__PURE__ */ jsxRuntime.jsx(tabsRoot.Tabs, { defaultTab: firstOption.value, value: activeValue, onValueChange: onValueChange ?? (() => {
41
42
  }), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-stretch", children: [
42
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ jsxRuntime.jsx(tabsTab.TabList, { children: options.map((opt) => /* @__PURE__ */ jsxRuntime.jsx(tabsTab.Tab, { value: opt.value, children: opt.label }, opt.value)) }) }),
43
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ jsxRuntime.jsx(tabsRoot.TabList, { children: options.map((opt) => /* @__PURE__ */ jsxRuntime.jsx(tabsTab.Tab, { value: opt.value, children: opt.label }, opt.value)) }) }),
43
44
  actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-border1 flex shrink-0 items-center border-b pr-2 pl-3", children: actions })
44
45
  ] }) }),
45
46
  useSelect && options && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-border2/40 flex items-center border-b px-2 py-1.5", children: [
@@ -1 +1 @@
1
- {"version":3,"file":"CodeBlock.cjs.js","sources":["../../src/ds/components/CodeBlock/code-block.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport { Code } from '../Code/code';\nimport { CopyButton } from '../CopyButton/copy-button';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '../Select/select';\nimport { TabList } from '../Tabs/tabs-list';\nimport { Tabs } from '../Tabs/tabs-root';\nimport { Tab } from '../Tabs/tabs-tab';\nimport { transitions } from '@/ds/primitives/transitions';\nimport { cn } from '@/lib/utils';\n\nexport type CodeBlockSelector = 'select' | 'tabs';\n\nexport type CodeBlockOverflow = 'wrap' | 'scroll';\n\nexport interface CodeBlockOption {\n label: string;\n value: string;\n}\n\nexport interface CodeBlockProps {\n code: string;\n options?: CodeBlockOption[];\n value?: string;\n onValueChange?: (value: string) => void;\n selector?: CodeBlockSelector;\n fileName?: string;\n lang?: string;\n /** `wrap` (default) breaks long lines — best for commands and snippets.\n * `scroll` preserves columns behind a horizontal scroll — best for source code. */\n overflow?: CodeBlockOverflow;\n copyMessage?: string;\n copyTooltip?: string;\n actions?: ReactNode;\n className?: string;\n}\n\nexport function CodeBlock({\n code,\n options,\n value,\n onValueChange,\n selector = 'select',\n fileName,\n lang,\n overflow = 'wrap',\n copyMessage,\n copyTooltip,\n actions,\n className,\n}: CodeBlockProps) {\n const hasOptions = options && options.length > 0;\n const useTabs = hasOptions && selector === 'tabs';\n const useSelect = hasOptions && selector === 'select';\n const firstOption = options?.[0];\n const activeValue = value ?? firstOption?.value;\n\n return (\n <figure\n className={cn(\n 'group relative flex w-full flex-col overflow-hidden rounded-2xl border border-border2/40 bg-surface2',\n className,\n )}\n >\n {useTabs && firstOption && (\n <Tabs defaultTab={firstOption.value} value={activeValue} onValueChange={onValueChange ?? (() => {})}>\n <div className=\"flex items-stretch\">\n <div className=\"min-w-0 flex-1\">\n <TabList>\n {options.map(opt => (\n <Tab key={opt.value} value={opt.value}>\n {opt.label}\n </Tab>\n ))}\n </TabList>\n </div>\n {actions && <div className=\"border-border1 flex shrink-0 items-center border-b pr-2 pl-3\">{actions}</div>}\n </div>\n </Tabs>\n )}\n\n {useSelect && options && (\n <div className=\"border-border2/40 flex items-center border-b px-2 py-1.5\">\n <Select value={activeValue} onValueChange={onValueChange}>\n <SelectTrigger size=\"sm\" variant=\"ghost\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {options.map(opt => (\n <SelectItem key={opt.value} value={opt.value}>\n {opt.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n {actions && <div className=\"ml-auto flex items-center\">{actions}</div>}\n </div>\n )}\n\n {!hasOptions && fileName && (\n <div className=\"border-border2/40 flex items-center border-b px-4 py-2\">\n <figcaption className=\"text-ui-sm text-neutral4 font-mono\">{fileName}</figcaption>\n {actions && <div className=\"ml-auto flex items-center\">{actions}</div>}\n </div>\n )}\n\n {!hasOptions && !fileName && actions && (\n <div className=\"border-border2/40 flex items-center justify-end border-b px-2 py-1.5\">{actions}</div>\n )}\n\n <div className=\"relative\">\n <Code\n code={code}\n lang={lang}\n className={cn(\n 'px-4 py-3 font-mono text-ui-sm text-neutral5',\n overflow === 'scroll' ? 'overflow-x-auto whitespace-pre' : 'break-all whitespace-pre-wrap',\n )}\n />\n <CopyButton\n content={code}\n copyMessage={copyMessage}\n tooltip={copyTooltip}\n size=\"sm\"\n className={cn(\n 'absolute top-2 right-2 opacity-100 group-focus-within:opacity-100 group-hover:opacity-100 pointer-fine:opacity-0',\n transitions.opacity,\n )}\n />\n </div>\n </figure>\n );\n}\n"],"names":["code","jsxs","cn","jsx","Tabs","TabList","Tab","Select","SelectTrigger","SelectValue","SelectContent","SelectItem","Code","CopyButton","transitions"],"mappings":"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"}
1
+ {"version":3,"file":"CodeBlock.cjs.js","sources":["../../src/ds/components/CodeBlock/code-block.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport { Code } from '../Code/code';\nimport { CopyButton } from '../CopyButton/copy-button';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '../Select/select';\nimport { TabList } from '../Tabs/tabs-list';\nimport { Tabs } from '../Tabs/tabs-root';\nimport { Tab } from '../Tabs/tabs-tab';\nimport { transitions } from '@/ds/primitives/transitions';\nimport { cn } from '@/lib/utils';\n\nexport type CodeBlockSelector = 'select' | 'tabs';\n\nexport type CodeBlockOverflow = 'wrap' | 'scroll';\n\nexport interface CodeBlockOption {\n label: string;\n value: string;\n}\n\nexport interface CodeBlockProps {\n code: string;\n options?: CodeBlockOption[];\n value?: string;\n onValueChange?: (value: string) => void;\n selector?: CodeBlockSelector;\n fileName?: string;\n lang?: string;\n /** `wrap` (default) breaks long lines — best for commands and snippets.\n * `scroll` preserves columns behind a horizontal scroll — best for source code. */\n overflow?: CodeBlockOverflow;\n copyMessage?: string;\n copyTooltip?: string;\n actions?: ReactNode;\n className?: string;\n}\n\nexport function CodeBlock({\n code,\n options,\n value,\n onValueChange,\n selector = 'select',\n fileName,\n lang,\n overflow = 'wrap',\n copyMessage,\n copyTooltip,\n actions,\n className,\n}: CodeBlockProps) {\n const hasOptions = options && options.length > 0;\n const useTabs = hasOptions && selector === 'tabs';\n const useSelect = hasOptions && selector === 'select';\n const firstOption = options?.[0];\n const activeValue = value ?? firstOption?.value;\n\n return (\n <figure\n className={cn(\n 'group relative flex w-full flex-col overflow-hidden rounded-2xl border border-border2/40 bg-surface2',\n className,\n )}\n >\n {useTabs && firstOption && (\n <Tabs defaultTab={firstOption.value} value={activeValue} onValueChange={onValueChange ?? (() => {})}>\n <div className=\"flex items-stretch\">\n <div className=\"min-w-0 flex-1\">\n <TabList>\n {options.map(opt => (\n <Tab key={opt.value} value={opt.value}>\n {opt.label}\n </Tab>\n ))}\n </TabList>\n </div>\n {actions && <div className=\"border-border1 flex shrink-0 items-center border-b pr-2 pl-3\">{actions}</div>}\n </div>\n </Tabs>\n )}\n\n {useSelect && options && (\n <div className=\"border-border2/40 flex items-center border-b px-2 py-1.5\">\n <Select value={activeValue} onValueChange={onValueChange}>\n <SelectTrigger size=\"sm\" variant=\"ghost\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {options.map(opt => (\n <SelectItem key={opt.value} value={opt.value}>\n {opt.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n {actions && <div className=\"ml-auto flex items-center\">{actions}</div>}\n </div>\n )}\n\n {!hasOptions && fileName && (\n <div className=\"border-border2/40 flex items-center border-b px-4 py-2\">\n <figcaption className=\"text-ui-sm text-neutral4 font-mono\">{fileName}</figcaption>\n {actions && <div className=\"ml-auto flex items-center\">{actions}</div>}\n </div>\n )}\n\n {!hasOptions && !fileName && actions && (\n <div className=\"border-border2/40 flex items-center justify-end border-b px-2 py-1.5\">{actions}</div>\n )}\n\n <div className=\"relative\">\n <Code\n code={code}\n lang={lang}\n className={cn(\n 'px-4 py-3 font-mono text-ui-sm text-neutral5',\n overflow === 'scroll' ? 'overflow-x-auto whitespace-pre' : 'break-all whitespace-pre-wrap',\n )}\n />\n <CopyButton\n content={code}\n copyMessage={copyMessage}\n tooltip={copyTooltip}\n size=\"sm\"\n className={cn(\n 'absolute top-2 right-2 opacity-100 group-focus-within:opacity-100 group-hover:opacity-100 pointer-fine:opacity-0',\n transitions.opacity,\n )}\n />\n </div>\n </figure>\n );\n}\n"],"names":["code","jsxs","cn","jsx","Tabs","TabList","Tab","Select","SelectTrigger","SelectValue","SelectContent","SelectItem","Code","CopyButton","transitions"],"mappings":"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"}
@@ -2,7 +2,8 @@ import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { C as Code } from '../code-C5KVVzOZ.js';
3
3
  import { C as CopyButton } from '../copy-button-B1GWIQ-x.js';
4
4
  import { S as Select, d as SelectTrigger, e as SelectValue, a as SelectContent, c as SelectItem } from '../select-B_E0ADD5.js';
5
- import { b as Tabs, a as TabList, T as Tab } from '../tabs-tab-DDGltcUc.js';
5
+ import { a as Tabs, T as TabList } from '../tabs-root-BBPou4QC.js';
6
+ import { T as Tab } from '../tabs-tab-D5JTAehi.js';
6
7
  import { transitions } from '../primitives/transitions.es.js';
7
8
  import { c as cn } from '../cn-BakJzhuv.js';
8
9
 
@@ -1 +1 @@
1
- {"version":3,"file":"CodeBlock.es.js","sources":["../../src/ds/components/CodeBlock/code-block.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport { Code } from '../Code/code';\nimport { CopyButton } from '../CopyButton/copy-button';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '../Select/select';\nimport { TabList } from '../Tabs/tabs-list';\nimport { Tabs } from '../Tabs/tabs-root';\nimport { Tab } from '../Tabs/tabs-tab';\nimport { transitions } from '@/ds/primitives/transitions';\nimport { cn } from '@/lib/utils';\n\nexport type CodeBlockSelector = 'select' | 'tabs';\n\nexport type CodeBlockOverflow = 'wrap' | 'scroll';\n\nexport interface CodeBlockOption {\n label: string;\n value: string;\n}\n\nexport interface CodeBlockProps {\n code: string;\n options?: CodeBlockOption[];\n value?: string;\n onValueChange?: (value: string) => void;\n selector?: CodeBlockSelector;\n fileName?: string;\n lang?: string;\n /** `wrap` (default) breaks long lines — best for commands and snippets.\n * `scroll` preserves columns behind a horizontal scroll — best for source code. */\n overflow?: CodeBlockOverflow;\n copyMessage?: string;\n copyTooltip?: string;\n actions?: ReactNode;\n className?: string;\n}\n\nexport function CodeBlock({\n code,\n options,\n value,\n onValueChange,\n selector = 'select',\n fileName,\n lang,\n overflow = 'wrap',\n copyMessage,\n copyTooltip,\n actions,\n className,\n}: CodeBlockProps) {\n const hasOptions = options && options.length > 0;\n const useTabs = hasOptions && selector === 'tabs';\n const useSelect = hasOptions && selector === 'select';\n const firstOption = options?.[0];\n const activeValue = value ?? firstOption?.value;\n\n return (\n <figure\n className={cn(\n 'group relative flex w-full flex-col overflow-hidden rounded-2xl border border-border2/40 bg-surface2',\n className,\n )}\n >\n {useTabs && firstOption && (\n <Tabs defaultTab={firstOption.value} value={activeValue} onValueChange={onValueChange ?? (() => {})}>\n <div className=\"flex items-stretch\">\n <div className=\"min-w-0 flex-1\">\n <TabList>\n {options.map(opt => (\n <Tab key={opt.value} value={opt.value}>\n {opt.label}\n </Tab>\n ))}\n </TabList>\n </div>\n {actions && <div className=\"border-border1 flex shrink-0 items-center border-b pr-2 pl-3\">{actions}</div>}\n </div>\n </Tabs>\n )}\n\n {useSelect && options && (\n <div className=\"border-border2/40 flex items-center border-b px-2 py-1.5\">\n <Select value={activeValue} onValueChange={onValueChange}>\n <SelectTrigger size=\"sm\" variant=\"ghost\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {options.map(opt => (\n <SelectItem key={opt.value} value={opt.value}>\n {opt.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n {actions && <div className=\"ml-auto flex items-center\">{actions}</div>}\n </div>\n )}\n\n {!hasOptions && fileName && (\n <div className=\"border-border2/40 flex items-center border-b px-4 py-2\">\n <figcaption className=\"text-ui-sm text-neutral4 font-mono\">{fileName}</figcaption>\n {actions && <div className=\"ml-auto flex items-center\">{actions}</div>}\n </div>\n )}\n\n {!hasOptions && !fileName && actions && (\n <div className=\"border-border2/40 flex items-center justify-end border-b px-2 py-1.5\">{actions}</div>\n )}\n\n <div className=\"relative\">\n <Code\n code={code}\n lang={lang}\n className={cn(\n 'px-4 py-3 font-mono text-ui-sm text-neutral5',\n overflow === 'scroll' ? 'overflow-x-auto whitespace-pre' : 'break-all whitespace-pre-wrap',\n )}\n />\n <CopyButton\n content={code}\n copyMessage={copyMessage}\n tooltip={copyTooltip}\n size=\"sm\"\n className={cn(\n 'absolute top-2 right-2 opacity-100 group-focus-within:opacity-100 group-hover:opacity-100 pointer-fine:opacity-0',\n transitions.opacity,\n )}\n />\n </div>\n </figure>\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CodeBlock.es.js","sources":["../../src/ds/components/CodeBlock/code-block.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport { Code } from '../Code/code';\nimport { CopyButton } from '../CopyButton/copy-button';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '../Select/select';\nimport { TabList } from '../Tabs/tabs-list';\nimport { Tabs } from '../Tabs/tabs-root';\nimport { Tab } from '../Tabs/tabs-tab';\nimport { transitions } from '@/ds/primitives/transitions';\nimport { cn } from '@/lib/utils';\n\nexport type CodeBlockSelector = 'select' | 'tabs';\n\nexport type CodeBlockOverflow = 'wrap' | 'scroll';\n\nexport interface CodeBlockOption {\n label: string;\n value: string;\n}\n\nexport interface CodeBlockProps {\n code: string;\n options?: CodeBlockOption[];\n value?: string;\n onValueChange?: (value: string) => void;\n selector?: CodeBlockSelector;\n fileName?: string;\n lang?: string;\n /** `wrap` (default) breaks long lines — best for commands and snippets.\n * `scroll` preserves columns behind a horizontal scroll — best for source code. */\n overflow?: CodeBlockOverflow;\n copyMessage?: string;\n copyTooltip?: string;\n actions?: ReactNode;\n className?: string;\n}\n\nexport function CodeBlock({\n code,\n options,\n value,\n onValueChange,\n selector = 'select',\n fileName,\n lang,\n overflow = 'wrap',\n copyMessage,\n copyTooltip,\n actions,\n className,\n}: CodeBlockProps) {\n const hasOptions = options && options.length > 0;\n const useTabs = hasOptions && selector === 'tabs';\n const useSelect = hasOptions && selector === 'select';\n const firstOption = options?.[0];\n const activeValue = value ?? firstOption?.value;\n\n return (\n <figure\n className={cn(\n 'group relative flex w-full flex-col overflow-hidden rounded-2xl border border-border2/40 bg-surface2',\n className,\n )}\n >\n {useTabs && firstOption && (\n <Tabs defaultTab={firstOption.value} value={activeValue} onValueChange={onValueChange ?? (() => {})}>\n <div className=\"flex items-stretch\">\n <div className=\"min-w-0 flex-1\">\n <TabList>\n {options.map(opt => (\n <Tab key={opt.value} value={opt.value}>\n {opt.label}\n </Tab>\n ))}\n </TabList>\n </div>\n {actions && <div className=\"border-border1 flex shrink-0 items-center border-b pr-2 pl-3\">{actions}</div>}\n </div>\n </Tabs>\n )}\n\n {useSelect && options && (\n <div className=\"border-border2/40 flex items-center border-b px-2 py-1.5\">\n <Select value={activeValue} onValueChange={onValueChange}>\n <SelectTrigger size=\"sm\" variant=\"ghost\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {options.map(opt => (\n <SelectItem key={opt.value} value={opt.value}>\n {opt.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n {actions && <div className=\"ml-auto flex items-center\">{actions}</div>}\n </div>\n )}\n\n {!hasOptions && fileName && (\n <div className=\"border-border2/40 flex items-center border-b px-4 py-2\">\n <figcaption className=\"text-ui-sm text-neutral4 font-mono\">{fileName}</figcaption>\n {actions && <div className=\"ml-auto flex items-center\">{actions}</div>}\n </div>\n )}\n\n {!hasOptions && !fileName && actions && (\n <div className=\"border-border2/40 flex items-center justify-end border-b px-2 py-1.5\">{actions}</div>\n )}\n\n <div className=\"relative\">\n <Code\n code={code}\n lang={lang}\n className={cn(\n 'px-4 py-3 font-mono text-ui-sm text-neutral5',\n overflow === 'scroll' ? 'overflow-x-auto whitespace-pre' : 'break-all whitespace-pre-wrap',\n )}\n />\n <CopyButton\n content={code}\n copyMessage={copyMessage}\n tooltip={copyTooltip}\n size=\"sm\"\n className={cn(\n 'absolute top-2 right-2 opacity-100 group-focus-within:opacity-100 group-hover:opacity-100 pointer-fine:opacity-0',\n transitions.opacity,\n )}\n />\n </div>\n </figure>\n );\n}\n"],"names":[],"mappings":"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"}