@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
@@ -138,6 +138,10 @@ function normalizeFormValues(value, schema) {
138
138
  if ((value === "" || value === null && !schema.safeParse(null).success) && require_lib_form_zod_provider_default_values.getDefaultValueInZodStack(schema) === void 0) return void 0;
139
139
  return value;
140
140
  }
141
+ function toFormMessage(err) {
142
+ if (err?.code === "invalid_type" && typeof err.message === "string" && err.message.endsWith("received undefined")) return "Required";
143
+ return err.message;
144
+ }
141
145
  var CustomZodProvider = class {
142
146
  _schema;
143
147
  constructor(schema) {
@@ -159,7 +163,7 @@ var CustomZodProvider = class {
159
163
  success: false,
160
164
  errors: (error.issues ?? error.errors ?? []).map((err) => ({
161
165
  path: err.path,
162
- message: err.message
166
+ message: toFormMessage(err)
163
167
  }))
164
168
  };
165
169
  }
@@ -1 +1 @@
1
- {"version":3,"file":"zod-provider.cjs.js","names":["getDef","getBaseSchema","inferFieldType","getDefaultValueInZodStack","getEnumValues","getShape","getIntersection","getUnionOptions","getArrayElement","getLiteralValues","isOptional","isPlainObject","getRecordValueSchema","getDefaultValues"],"sources":["../../../src/lib/form/zod-provider/index.ts"],"sourcesContent":["import type { FieldConfig, ParsedField, ParsedSchema, SchemaProvider, SchemaValidation } from '@autoform/core';\nimport { isPlainObject } from '../utils';\nimport {\n getDef,\n getBaseSchema,\n getEnumValues,\n getShape,\n getArrayElement,\n getLiteralValues,\n getUnionOptions,\n getIntersection,\n getRecordValueSchema,\n isOptional,\n} from './compat';\nimport { getDefaultValues, getDefaultValueInZodStack } from './default-values';\nimport { inferFieldType } from './field-type-inference';\n\ntype AnySchema = any;\n\n/**\n * Version-agnostic field config extraction.\n * For generated schemas (from jsonSchemaToZod), there's no @autoform/zod fieldConfig() wrapper,\n * so this returns undefined. If a schema happens to carry field config, it will be found here.\n */\nfunction getFieldConfigInZodStack(schema: AnySchema): FieldConfig | undefined {\n const def = getDef(schema);\n if (!def) return undefined;\n\n // v3: field config stored via Symbol on refinement function\n if (def.typeName === 'ZodEffects' && def.effect?.type === 'refinement') {\n const fn = def.effect?.refinement;\n if (fn) {\n const symbols = Object.getOwnPropertySymbols(fn);\n for (const sym of symbols) {\n const val = fn[sym];\n if (val && typeof val === 'object') return val as FieldConfig;\n }\n }\n }\n\n // Recurse into wrappers\n if ('innerType' in def) return getFieldConfigInZodStack(def.innerType);\n if ('schema' in def) return getFieldConfigInZodStack(def.schema);\n\n return undefined;\n}\n\nfunction parseField(key: string, schema: AnySchema): ParsedField {\n const baseSchema = getBaseSchema(schema);\n const fieldConfig = getFieldConfigInZodStack(schema);\n let type = inferFieldType(baseSchema, fieldConfig);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n // Enums\n const options = getEnumValues(baseSchema);\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map(value => [value, value]);\n }\n }\n\n // Arrays and objects\n let subSchema: ParsedField[] = [];\n\n const shape = getShape(baseSchema);\n if (shape && !getIntersection(baseSchema)) {\n // ZodObject\n subSchema = Object.entries(shape).map(([k, field]) => parseField(k, field));\n }\n\n const unionOptions = getUnionOptions(baseSchema);\n const constructorName = baseSchema?.constructor?.name?.slice(1);\n const baseDef = getDef(baseSchema);\n const v4Type =\n typeof baseDef?.type === 'string'\n ? `Zod${baseDef.type.charAt(0).toUpperCase()}${baseDef.type.slice(1)}`\n : undefined;\n const baseTypeName = baseDef?.typeName ?? v4Type ?? constructorName;\n\n if ((baseTypeName === 'ZodUnion' || baseTypeName === 'ZodDiscriminatedUnion') && unionOptions) {\n subSchema = Object.entries(unionOptions).map(([k, field]: [string, AnySchema]) => {\n return parseField(k, field);\n });\n }\n\n const intersection = getIntersection(baseSchema);\n if (intersection) {\n const { left: leftSchema, right: rightSchema } = intersection;\n let subSchemaLeft: ParsedField[] = [];\n let subSchemaRight: ParsedField[] = [];\n\n const leftShape = getShape(leftSchema);\n if (leftShape) {\n subSchemaLeft = Object.entries(leftShape).map(([k, field]) => parseField(k, field));\n } else {\n const leftChild = parseField(key, leftSchema);\n subSchemaLeft = leftChild.schema ?? [leftChild];\n type = leftChild.type;\n }\n\n const rightShape = getShape(rightSchema);\n if (rightShape) {\n subSchemaRight = Object.entries(rightShape).map(([k, field]) => parseField(k, field));\n } else {\n const rightChild = parseField(key, rightSchema);\n subSchemaRight = rightChild.schema ?? [rightChild];\n type = rightChild.type;\n }\n\n subSchema = [...subSchemaLeft, ...subSchemaRight];\n }\n\n if (baseTypeName === 'ZodArray') {\n const element = getArrayElement(baseSchema);\n if (element) {\n subSchema = [parseField('0', element)];\n }\n }\n\n const isLiteral = baseTypeName === 'ZodLiteral';\n const literalValues = isLiteral ? getLiteralValues(baseSchema) : undefined;\n\n return {\n key,\n type,\n required: !isOptional(schema),\n default: defaultValue,\n description: baseSchema.description,\n fieldConfig:\n isLiteral || Object.keys(fieldConfig ?? {})?.length > 0\n ? {\n ...fieldConfig,\n customData: {\n ...(fieldConfig?.customData ?? {}),\n ...(isLiteral ? { isLiteral, literalValues } : {}),\n },\n }\n : undefined,\n options: optionValues,\n schema: subSchema,\n };\n}\n\nexport function parseSchema(schema: AnySchema): ParsedSchema {\n const shape = getShape(schema);\n if (!shape) return { fields: [] };\n\n const fields: ParsedField[] = Object.entries(shape).map(([key, field]) => parseField(key, field));\n\n return { fields };\n}\n\nfunction getMemberSchemas(baseSchema: AnySchema): AnySchema[] | undefined {\n const intersection = getIntersection(baseSchema);\n return intersection ? [intersection.left, intersection.right] : getUnionOptions(baseSchema);\n}\n\nfunction normalizeEntries(value: Record<string, unknown>, schemaOf: (key: string) => AnySchema | undefined) {\n const normalized: Record<string, unknown> = {};\n for (const [key, child] of Object.entries(value)) {\n const schema = schemaOf(key);\n const childValue = schema ? normalizeFormValues(child, schema) : child;\n if (childValue !== undefined) normalized[key] = childValue;\n }\n return normalized;\n}\n\nfunction omitsBlankGroup(schema: AnySchema, group: Record<string, unknown>) {\n const isBlankGroup = Object.values(group).every(child => child === '' || child === undefined);\n if (!isBlankGroup || schema.safeParse(group).success) return false;\n const omitted = schema.safeParse(undefined);\n return omitted.success && omitted.data === undefined;\n}\n\nfunction normalizeFormValues(value: unknown, schema: AnySchema): unknown {\n const baseSchema = getBaseSchema(schema);\n const members = getMemberSchemas(baseSchema);\n if (members) {\n // Union options and intersection sides all render at one path, so each member normalizes its own keys.\n const group = members.reduce<unknown>((current, member) => normalizeFormValues(current, member), value);\n return isPlainObject(group) && omitsBlankGroup(schema, group) ? undefined : group;\n }\n\n const shape = getShape(baseSchema);\n if (shape && isPlainObject(value)) {\n const group = normalizeEntries(value, key => shape[key]);\n return omitsBlankGroup(schema, group) ? undefined : group;\n }\n\n const recordValueSchema = getRecordValueSchema(baseSchema);\n if (recordValueSchema && isPlainObject(value)) return normalizeEntries(value, () => recordValueSchema);\n\n if (Array.isArray(value)) {\n const element = getArrayElement(baseSchema);\n return element && typeof element === 'object' ? value.map(item => normalizeFormValues(item, element)) : value;\n }\n\n const blankControl = value === '' || (value === null && !schema.safeParse(null).success);\n if (blankControl && getDefaultValueInZodStack(schema) === undefined) return undefined;\n\n return value;\n}\n\nexport class CustomZodProvider<T extends AnySchema> implements SchemaProvider {\n private _schema: T;\n constructor(schema: T) {\n if (!schema) {\n throw new Error('CustomZodProvider: schema is required');\n }\n this._schema = schema;\n }\n\n getDefaultValues(): Record<string, any> {\n return getDefaultValues(this._schema);\n }\n\n validateSchema(values: any): SchemaValidation {\n const cleanedValues = normalizeFormValues(values, this._schema);\n const schema: AnySchema = this._schema;\n const validationResult = schema.safeParse(cleanedValues);\n if (validationResult.success) {\n return { success: true, data: validationResult.data } as const;\n }\n\n const error = validationResult.error;\n // v3: error.errors, v4: error.issues\n const issues = error.issues ?? error.errors ?? [];\n return {\n success: false,\n errors: issues.map((err: any) => ({\n path: err.path as string[],\n message: err.message,\n })),\n } as const;\n }\n\n parseSchema(): ParsedSchema {\n return parseSchema(this._schema);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"zod-provider.cjs.js","names":["getDef","getBaseSchema","inferFieldType","getDefaultValueInZodStack","getEnumValues","getShape","getIntersection","getUnionOptions","getArrayElement","getLiteralValues","isOptional","isPlainObject","getRecordValueSchema","getDefaultValues"],"sources":["../../../src/lib/form/zod-provider/index.ts"],"sourcesContent":["import type { FieldConfig, ParsedField, ParsedSchema, SchemaProvider, SchemaValidation } from '@autoform/core';\nimport { isPlainObject } from '../utils';\nimport {\n getDef,\n getBaseSchema,\n getEnumValues,\n getShape,\n getArrayElement,\n getLiteralValues,\n getUnionOptions,\n getIntersection,\n getRecordValueSchema,\n isOptional,\n} from './compat';\nimport { getDefaultValues, getDefaultValueInZodStack } from './default-values';\nimport { inferFieldType } from './field-type-inference';\n\ntype AnySchema = any;\n\n/**\n * Version-agnostic field config extraction.\n * For generated schemas (from jsonSchemaToZod), there's no @autoform/zod fieldConfig() wrapper,\n * so this returns undefined. If a schema happens to carry field config, it will be found here.\n */\nfunction getFieldConfigInZodStack(schema: AnySchema): FieldConfig | undefined {\n const def = getDef(schema);\n if (!def) return undefined;\n\n // v3: field config stored via Symbol on refinement function\n if (def.typeName === 'ZodEffects' && def.effect?.type === 'refinement') {\n const fn = def.effect?.refinement;\n if (fn) {\n const symbols = Object.getOwnPropertySymbols(fn);\n for (const sym of symbols) {\n const val = fn[sym];\n if (val && typeof val === 'object') return val as FieldConfig;\n }\n }\n }\n\n // Recurse into wrappers\n if ('innerType' in def) return getFieldConfigInZodStack(def.innerType);\n if ('schema' in def) return getFieldConfigInZodStack(def.schema);\n\n return undefined;\n}\n\nfunction parseField(key: string, schema: AnySchema): ParsedField {\n const baseSchema = getBaseSchema(schema);\n const fieldConfig = getFieldConfigInZodStack(schema);\n let type = inferFieldType(baseSchema, fieldConfig);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n // Enums\n const options = getEnumValues(baseSchema);\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map(value => [value, value]);\n }\n }\n\n // Arrays and objects\n let subSchema: ParsedField[] = [];\n\n const shape = getShape(baseSchema);\n if (shape && !getIntersection(baseSchema)) {\n // ZodObject\n subSchema = Object.entries(shape).map(([k, field]) => parseField(k, field));\n }\n\n const unionOptions = getUnionOptions(baseSchema);\n const constructorName = baseSchema?.constructor?.name?.slice(1);\n const baseDef = getDef(baseSchema);\n const v4Type =\n typeof baseDef?.type === 'string'\n ? `Zod${baseDef.type.charAt(0).toUpperCase()}${baseDef.type.slice(1)}`\n : undefined;\n const baseTypeName = baseDef?.typeName ?? v4Type ?? constructorName;\n\n if ((baseTypeName === 'ZodUnion' || baseTypeName === 'ZodDiscriminatedUnion') && unionOptions) {\n subSchema = Object.entries(unionOptions).map(([k, field]: [string, AnySchema]) => {\n return parseField(k, field);\n });\n }\n\n const intersection = getIntersection(baseSchema);\n if (intersection) {\n const { left: leftSchema, right: rightSchema } = intersection;\n let subSchemaLeft: ParsedField[] = [];\n let subSchemaRight: ParsedField[] = [];\n\n const leftShape = getShape(leftSchema);\n if (leftShape) {\n subSchemaLeft = Object.entries(leftShape).map(([k, field]) => parseField(k, field));\n } else {\n const leftChild = parseField(key, leftSchema);\n subSchemaLeft = leftChild.schema ?? [leftChild];\n type = leftChild.type;\n }\n\n const rightShape = getShape(rightSchema);\n if (rightShape) {\n subSchemaRight = Object.entries(rightShape).map(([k, field]) => parseField(k, field));\n } else {\n const rightChild = parseField(key, rightSchema);\n subSchemaRight = rightChild.schema ?? [rightChild];\n type = rightChild.type;\n }\n\n subSchema = [...subSchemaLeft, ...subSchemaRight];\n }\n\n if (baseTypeName === 'ZodArray') {\n const element = getArrayElement(baseSchema);\n if (element) {\n subSchema = [parseField('0', element)];\n }\n }\n\n const isLiteral = baseTypeName === 'ZodLiteral';\n const literalValues = isLiteral ? getLiteralValues(baseSchema) : undefined;\n\n return {\n key,\n type,\n required: !isOptional(schema),\n default: defaultValue,\n description: baseSchema.description,\n fieldConfig:\n isLiteral || Object.keys(fieldConfig ?? {})?.length > 0\n ? {\n ...fieldConfig,\n customData: {\n ...(fieldConfig?.customData ?? {}),\n ...(isLiteral ? { isLiteral, literalValues } : {}),\n },\n }\n : undefined,\n options: optionValues,\n schema: subSchema,\n };\n}\n\nexport function parseSchema(schema: AnySchema): ParsedSchema {\n const shape = getShape(schema);\n if (!shape) return { fields: [] };\n\n const fields: ParsedField[] = Object.entries(shape).map(([key, field]) => parseField(key, field));\n\n return { fields };\n}\n\nfunction getMemberSchemas(baseSchema: AnySchema): AnySchema[] | undefined {\n const intersection = getIntersection(baseSchema);\n return intersection ? [intersection.left, intersection.right] : getUnionOptions(baseSchema);\n}\n\nfunction normalizeEntries(value: Record<string, unknown>, schemaOf: (key: string) => AnySchema | undefined) {\n const normalized: Record<string, unknown> = {};\n for (const [key, child] of Object.entries(value)) {\n const schema = schemaOf(key);\n const childValue = schema ? normalizeFormValues(child, schema) : child;\n if (childValue !== undefined) normalized[key] = childValue;\n }\n return normalized;\n}\n\nfunction omitsBlankGroup(schema: AnySchema, group: Record<string, unknown>) {\n const isBlankGroup = Object.values(group).every(child => child === '' || child === undefined);\n if (!isBlankGroup || schema.safeParse(group).success) return false;\n const omitted = schema.safeParse(undefined);\n return omitted.success && omitted.data === undefined;\n}\n\nfunction normalizeFormValues(value: unknown, schema: AnySchema): unknown {\n const baseSchema = getBaseSchema(schema);\n const members = getMemberSchemas(baseSchema);\n if (members) {\n // Union options and intersection sides all render at one path, so each member normalizes its own keys.\n const group = members.reduce<unknown>((current, member) => normalizeFormValues(current, member), value);\n return isPlainObject(group) && omitsBlankGroup(schema, group) ? undefined : group;\n }\n\n const shape = getShape(baseSchema);\n if (shape && isPlainObject(value)) {\n const group = normalizeEntries(value, key => shape[key]);\n return omitsBlankGroup(schema, group) ? undefined : group;\n }\n\n const recordValueSchema = getRecordValueSchema(baseSchema);\n if (recordValueSchema && isPlainObject(value)) return normalizeEntries(value, () => recordValueSchema);\n\n if (Array.isArray(value)) {\n const element = getArrayElement(baseSchema);\n return element && typeof element === 'object' ? value.map(item => normalizeFormValues(item, element)) : value;\n }\n\n const blankControl = value === '' || (value === null && !schema.safeParse(null).success);\n if (blankControl && getDefaultValueInZodStack(schema) === undefined) return undefined;\n\n return value;\n}\n\n// zod v4 reports a missing value as \"Invalid input: expected X, received undefined\";\n// keep the v3 \"Required\" wording that the form shows for blank required fields.\nfunction toFormMessage(err: any): string {\n if (err?.code === 'invalid_type' && typeof err.message === 'string' && err.message.endsWith('received undefined')) {\n return 'Required';\n }\n return err.message;\n}\n\nexport class CustomZodProvider<T extends AnySchema> implements SchemaProvider {\n private _schema: T;\n constructor(schema: T) {\n if (!schema) {\n throw new Error('CustomZodProvider: schema is required');\n }\n this._schema = schema;\n }\n\n getDefaultValues(): Record<string, any> {\n return getDefaultValues(this._schema);\n }\n\n validateSchema(values: any): SchemaValidation {\n const cleanedValues = normalizeFormValues(values, this._schema);\n const schema: AnySchema = this._schema;\n const validationResult = schema.safeParse(cleanedValues);\n if (validationResult.success) {\n return { success: true, data: validationResult.data } as const;\n }\n\n const error = validationResult.error;\n // v3: error.errors, v4: error.issues\n const issues = error.issues ?? error.errors ?? [];\n return {\n success: false,\n errors: issues.map((err: any) => ({\n path: err.path as string[],\n message: toFormMessage(err),\n })),\n } as const;\n }\n\n parseSchema(): ParsedSchema {\n return parseSchema(this._schema);\n }\n}\n"],"mappings":";;;;;;;;;;;AAwBA,SAAS,yBAAyB,QAA4C;CAC5E,MAAM,MAAMA,qCAAAA,OAAO,MAAM;CACzB,IAAI,CAAC,KAAK,OAAO,KAAA;CAGjB,IAAI,IAAI,aAAa,gBAAgB,IAAI,QAAQ,SAAS,cAAc;EACtE,MAAM,KAAK,IAAI,QAAQ;EACvB,IAAI,IAAI;GACN,MAAM,UAAU,OAAO,sBAAsB,EAAE;GAC/C,KAAK,MAAM,OAAO,SAAS;IACzB,MAAM,MAAM,GAAG;IACf,IAAI,OAAO,OAAO,QAAQ,UAAU,OAAO;GAC7C;EACF;CACF;CAGA,IAAI,eAAe,KAAK,OAAO,yBAAyB,IAAI,SAAS;CACrE,IAAI,YAAY,KAAK,OAAO,yBAAyB,IAAI,MAAM;AAGjE;AAEA,SAAS,WAAW,KAAa,QAAgC;CAC/D,MAAM,aAAaC,qCAAAA,cAAc,MAAM;CACvC,MAAM,cAAc,yBAAyB,MAAM;CACnD,IAAI,OAAOC,mDAAAA,eAAe,YAAY,WAAW;CACjD,MAAM,eAAeC,6CAAAA,0BAA0B,MAAM;CAGrD,MAAM,UAAUC,qCAAAA,cAAc,UAAU;CACxC,IAAI,eAAmC,CAAC;CACxC,IAAI,SAAS;EACX,IAAI,CAAC,MAAM,QAAQ,OAAO,GACxB,eAAe,OAAO,QAAQ,OAAO;OAErC,eAAe,QAAQ,KAAI,UAAS,CAAC,OAAO,KAAK,CAAC;CAEtD;CAGA,IAAI,YAA2B,CAAC;CAEhC,MAAM,QAAQC,qCAAAA,SAAS,UAAU;CACjC,IAAI,SAAS,CAACC,qCAAAA,gBAAgB,UAAU,GAEtC,YAAY,OAAO,QAAQ,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,WAAW,WAAW,GAAG,KAAK,CAAC;CAG5E,MAAM,eAAeC,qCAAAA,gBAAgB,UAAU;CAC/C,MAAM,kBAAkB,YAAY,aAAa,MAAM,MAAM,CAAC;CAC9D,MAAM,UAAUP,qCAAAA,OAAO,UAAU;CACjC,MAAM,SACJ,OAAO,SAAS,SAAS,WACrB,MAAM,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,IAAI,QAAQ,KAAK,MAAM,CAAC,MACjE,KAAA;CACN,MAAM,eAAe,SAAS,YAAY,UAAU;CAEpD,KAAK,iBAAiB,cAAc,iBAAiB,4BAA4B,cAC/E,YAAY,OAAO,QAAQ,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,WAAgC;EAChF,OAAO,WAAW,GAAG,KAAK;CAC5B,CAAC;CAGH,MAAM,eAAeM,qCAAAA,gBAAgB,UAAU;CAC/C,IAAI,cAAc;EAChB,MAAM,EAAE,MAAM,YAAY,OAAO,gBAAgB;EACjD,IAAI,gBAA+B,CAAC;EACpC,IAAI,iBAAgC,CAAC;EAErC,MAAM,YAAYD,qCAAAA,SAAS,UAAU;EACrC,IAAI,WACF,gBAAgB,OAAO,QAAQ,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,WAAW,WAAW,GAAG,KAAK,CAAC;OAC7E;GACL,MAAM,YAAY,WAAW,KAAK,UAAU;GAC5C,gBAAgB,UAAU,UAAU,CAAC,SAAS;GAC9C,OAAO,UAAU;EACnB;EAEA,MAAM,aAAaA,qCAAAA,SAAS,WAAW;EACvC,IAAI,YACF,iBAAiB,OAAO,QAAQ,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,WAAW,WAAW,GAAG,KAAK,CAAC;OAC/E;GACL,MAAM,aAAa,WAAW,KAAK,WAAW;GAC9C,iBAAiB,WAAW,UAAU,CAAC,UAAU;GACjD,OAAO,WAAW;EACpB;EAEA,YAAY,CAAC,GAAG,eAAe,GAAG,cAAc;CAClD;CAEA,IAAI,iBAAiB,YAAY;EAC/B,MAAM,UAAUG,qCAAAA,gBAAgB,UAAU;EAC1C,IAAI,SACF,YAAY,CAAC,WAAW,KAAK,OAAO,CAAC;CAEzC;CAEA,MAAM,YAAY,iBAAiB;CACnC,MAAM,gBAAgB,YAAYC,qCAAAA,iBAAiB,UAAU,IAAI,KAAA;CAEjE,OAAO;EACL;EACA;EACA,UAAU,CAACC,qCAAAA,WAAW,MAAM;EAC5B,SAAS;EACT,aAAa,WAAW;EACxB,aACE,aAAa,OAAO,KAAK,eAAe,CAAC,CAAC,CAAC,EAAE,SAAS,IAClD;GACE,GAAG;GACH,YAAY;IACV,GAAI,aAAa,cAAc,CAAC;IAChC,GAAI,YAAY;KAAE;KAAW;IAAc,IAAI,CAAC;GAClD;EACF,IACA,KAAA;EACN,SAAS;EACT,QAAQ;CACV;AACF;AAEA,SAAgB,YAAY,QAAiC;CAC3D,MAAM,QAAQL,qCAAAA,SAAS,MAAM;CAC7B,IAAI,CAAC,OAAO,OAAO,EAAE,QAAQ,CAAC,EAAE;CAIhC,OAAO,EAAE,QAFqB,OAAO,QAAQ,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,WAAW,WAAW,KAAK,KAAK,CAEtF,EAAO;AAClB;AAEA,SAAS,iBAAiB,YAAgD;CACxE,MAAM,eAAeC,qCAAAA,gBAAgB,UAAU;CAC/C,OAAO,eAAe,CAAC,aAAa,MAAM,aAAa,KAAK,IAAIC,qCAAAA,gBAAgB,UAAU;AAC5F;AAEA,SAAS,iBAAiB,OAAgC,UAAkD;CAC1G,MAAM,aAAsC,CAAC;CAC7C,KAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,KAAK,GAAG;EAChD,MAAM,SAAS,SAAS,GAAG;EAC3B,MAAM,aAAa,SAAS,oBAAoB,OAAO,MAAM,IAAI;EACjE,IAAI,eAAe,KAAA,GAAW,WAAW,OAAO;CAClD;CACA,OAAO;AACT;AAEA,SAAS,gBAAgB,QAAmB,OAAgC;CAE1E,IAAI,CADiB,OAAO,OAAO,KAAK,CAAC,CAAC,OAAM,UAAS,UAAU,MAAM,UAAU,KAAA,CAC9E,KAAgB,OAAO,UAAU,KAAK,CAAC,CAAC,SAAS,OAAO;CAC7D,MAAM,UAAU,OAAO,UAAU,KAAA,CAAS;CAC1C,OAAO,QAAQ,WAAW,QAAQ,SAAS,KAAA;AAC7C;AAEA,SAAS,oBAAoB,OAAgB,QAA4B;CACvE,MAAM,aAAaN,qCAAAA,cAAc,MAAM;CACvC,MAAM,UAAU,iBAAiB,UAAU;CAC3C,IAAI,SAAS;EAEX,MAAM,QAAQ,QAAQ,QAAiB,SAAS,WAAW,oBAAoB,SAAS,MAAM,GAAG,KAAK;EACtG,OAAOU,uBAAAA,cAAc,KAAK,KAAK,gBAAgB,QAAQ,KAAK,IAAI,KAAA,IAAY;CAC9E;CAEA,MAAM,QAAQN,qCAAAA,SAAS,UAAU;CACjC,IAAI,SAASM,uBAAAA,cAAc,KAAK,GAAG;EACjC,MAAM,QAAQ,iBAAiB,QAAO,QAAO,MAAM,IAAI;EACvD,OAAO,gBAAgB,QAAQ,KAAK,IAAI,KAAA,IAAY;CACtD;CAEA,MAAM,oBAAoBC,qCAAAA,qBAAqB,UAAU;CACzD,IAAI,qBAAqBD,uBAAAA,cAAc,KAAK,GAAG,OAAO,iBAAiB,aAAa,iBAAiB;CAErG,IAAI,MAAM,QAAQ,KAAK,GAAG;EACxB,MAAM,UAAUH,qCAAAA,gBAAgB,UAAU;EAC1C,OAAO,WAAW,OAAO,YAAY,WAAW,MAAM,KAAI,SAAQ,oBAAoB,MAAM,OAAO,CAAC,IAAI;CAC1G;CAGA,KADqB,UAAU,MAAO,UAAU,QAAQ,CAAC,OAAO,UAAU,IAAI,CAAC,CAAC,YAC5DL,6CAAAA,0BAA0B,MAAM,MAAM,KAAA,GAAW,OAAO,KAAA;CAE5E,OAAO;AACT;AAIA,SAAS,cAAc,KAAkB;CACvC,IAAI,KAAK,SAAS,kBAAkB,OAAO,IAAI,YAAY,YAAY,IAAI,QAAQ,SAAS,oBAAoB,GAC9G,OAAO;CAET,OAAO,IAAI;AACb;AAEA,IAAa,oBAAb,MAA8E;CAC5E;CACA,YAAY,QAAW;EACrB,IAAI,CAAC,QACH,MAAM,IAAI,MAAM,uCAAuC;EAEzD,KAAK,UAAU;CACjB;CAEA,mBAAwC;EACtC,OAAOU,6CAAAA,iBAAiB,KAAK,OAAO;CACtC;CAEA,eAAe,QAA+B;EAC5C,MAAM,gBAAgB,oBAAoB,QAAQ,KAAK,OAAO;EAE9D,MAAM,mBADoB,KAAK,QACC,UAAU,aAAa;EACvD,IAAI,iBAAiB,SACnB,OAAO;GAAE,SAAS;GAAM,MAAM,iBAAiB;EAAK;EAGtD,MAAM,QAAQ,iBAAiB;EAG/B,OAAO;GACL,SAAS;GACT,SAHa,MAAM,UAAU,MAAM,UAAU,CAAC,EAAA,CAG/B,KAAK,SAAc;IAChC,MAAM,IAAI;IACV,SAAS,cAAc,GAAG;GAC5B,EAAE;EACJ;CACF;CAEA,cAA4B;EAC1B,OAAO,YAAY,KAAK,OAAO;CACjC;AACF"}
@@ -137,6 +137,10 @@ function normalizeFormValues(value, schema) {
137
137
  if ((value === "" || value === null && !schema.safeParse(null).success) && getDefaultValueInZodStack(schema) === void 0) return void 0;
138
138
  return value;
139
139
  }
140
+ function toFormMessage(err) {
141
+ if (err?.code === "invalid_type" && typeof err.message === "string" && err.message.endsWith("received undefined")) return "Required";
142
+ return err.message;
143
+ }
140
144
  var CustomZodProvider = class {
141
145
  _schema;
142
146
  constructor(schema) {
@@ -158,7 +162,7 @@ var CustomZodProvider = class {
158
162
  success: false,
159
163
  errors: (error.issues ?? error.errors ?? []).map((err) => ({
160
164
  path: err.path,
161
- message: err.message
165
+ message: toFormMessage(err)
162
166
  }))
163
167
  };
164
168
  }
@@ -1 +1 @@
1
- {"version":3,"file":"zod-provider.es.js","names":[],"sources":["../../../src/lib/form/zod-provider/index.ts"],"sourcesContent":["import type { FieldConfig, ParsedField, ParsedSchema, SchemaProvider, SchemaValidation } from '@autoform/core';\nimport { isPlainObject } from '../utils';\nimport {\n getDef,\n getBaseSchema,\n getEnumValues,\n getShape,\n getArrayElement,\n getLiteralValues,\n getUnionOptions,\n getIntersection,\n getRecordValueSchema,\n isOptional,\n} from './compat';\nimport { getDefaultValues, getDefaultValueInZodStack } from './default-values';\nimport { inferFieldType } from './field-type-inference';\n\ntype AnySchema = any;\n\n/**\n * Version-agnostic field config extraction.\n * For generated schemas (from jsonSchemaToZod), there's no @autoform/zod fieldConfig() wrapper,\n * so this returns undefined. If a schema happens to carry field config, it will be found here.\n */\nfunction getFieldConfigInZodStack(schema: AnySchema): FieldConfig | undefined {\n const def = getDef(schema);\n if (!def) return undefined;\n\n // v3: field config stored via Symbol on refinement function\n if (def.typeName === 'ZodEffects' && def.effect?.type === 'refinement') {\n const fn = def.effect?.refinement;\n if (fn) {\n const symbols = Object.getOwnPropertySymbols(fn);\n for (const sym of symbols) {\n const val = fn[sym];\n if (val && typeof val === 'object') return val as FieldConfig;\n }\n }\n }\n\n // Recurse into wrappers\n if ('innerType' in def) return getFieldConfigInZodStack(def.innerType);\n if ('schema' in def) return getFieldConfigInZodStack(def.schema);\n\n return undefined;\n}\n\nfunction parseField(key: string, schema: AnySchema): ParsedField {\n const baseSchema = getBaseSchema(schema);\n const fieldConfig = getFieldConfigInZodStack(schema);\n let type = inferFieldType(baseSchema, fieldConfig);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n // Enums\n const options = getEnumValues(baseSchema);\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map(value => [value, value]);\n }\n }\n\n // Arrays and objects\n let subSchema: ParsedField[] = [];\n\n const shape = getShape(baseSchema);\n if (shape && !getIntersection(baseSchema)) {\n // ZodObject\n subSchema = Object.entries(shape).map(([k, field]) => parseField(k, field));\n }\n\n const unionOptions = getUnionOptions(baseSchema);\n const constructorName = baseSchema?.constructor?.name?.slice(1);\n const baseDef = getDef(baseSchema);\n const v4Type =\n typeof baseDef?.type === 'string'\n ? `Zod${baseDef.type.charAt(0).toUpperCase()}${baseDef.type.slice(1)}`\n : undefined;\n const baseTypeName = baseDef?.typeName ?? v4Type ?? constructorName;\n\n if ((baseTypeName === 'ZodUnion' || baseTypeName === 'ZodDiscriminatedUnion') && unionOptions) {\n subSchema = Object.entries(unionOptions).map(([k, field]: [string, AnySchema]) => {\n return parseField(k, field);\n });\n }\n\n const intersection = getIntersection(baseSchema);\n if (intersection) {\n const { left: leftSchema, right: rightSchema } = intersection;\n let subSchemaLeft: ParsedField[] = [];\n let subSchemaRight: ParsedField[] = [];\n\n const leftShape = getShape(leftSchema);\n if (leftShape) {\n subSchemaLeft = Object.entries(leftShape).map(([k, field]) => parseField(k, field));\n } else {\n const leftChild = parseField(key, leftSchema);\n subSchemaLeft = leftChild.schema ?? [leftChild];\n type = leftChild.type;\n }\n\n const rightShape = getShape(rightSchema);\n if (rightShape) {\n subSchemaRight = Object.entries(rightShape).map(([k, field]) => parseField(k, field));\n } else {\n const rightChild = parseField(key, rightSchema);\n subSchemaRight = rightChild.schema ?? [rightChild];\n type = rightChild.type;\n }\n\n subSchema = [...subSchemaLeft, ...subSchemaRight];\n }\n\n if (baseTypeName === 'ZodArray') {\n const element = getArrayElement(baseSchema);\n if (element) {\n subSchema = [parseField('0', element)];\n }\n }\n\n const isLiteral = baseTypeName === 'ZodLiteral';\n const literalValues = isLiteral ? getLiteralValues(baseSchema) : undefined;\n\n return {\n key,\n type,\n required: !isOptional(schema),\n default: defaultValue,\n description: baseSchema.description,\n fieldConfig:\n isLiteral || Object.keys(fieldConfig ?? {})?.length > 0\n ? {\n ...fieldConfig,\n customData: {\n ...(fieldConfig?.customData ?? {}),\n ...(isLiteral ? { isLiteral, literalValues } : {}),\n },\n }\n : undefined,\n options: optionValues,\n schema: subSchema,\n };\n}\n\nexport function parseSchema(schema: AnySchema): ParsedSchema {\n const shape = getShape(schema);\n if (!shape) return { fields: [] };\n\n const fields: ParsedField[] = Object.entries(shape).map(([key, field]) => parseField(key, field));\n\n return { fields };\n}\n\nfunction getMemberSchemas(baseSchema: AnySchema): AnySchema[] | undefined {\n const intersection = getIntersection(baseSchema);\n return intersection ? [intersection.left, intersection.right] : getUnionOptions(baseSchema);\n}\n\nfunction normalizeEntries(value: Record<string, unknown>, schemaOf: (key: string) => AnySchema | undefined) {\n const normalized: Record<string, unknown> = {};\n for (const [key, child] of Object.entries(value)) {\n const schema = schemaOf(key);\n const childValue = schema ? normalizeFormValues(child, schema) : child;\n if (childValue !== undefined) normalized[key] = childValue;\n }\n return normalized;\n}\n\nfunction omitsBlankGroup(schema: AnySchema, group: Record<string, unknown>) {\n const isBlankGroup = Object.values(group).every(child => child === '' || child === undefined);\n if (!isBlankGroup || schema.safeParse(group).success) return false;\n const omitted = schema.safeParse(undefined);\n return omitted.success && omitted.data === undefined;\n}\n\nfunction normalizeFormValues(value: unknown, schema: AnySchema): unknown {\n const baseSchema = getBaseSchema(schema);\n const members = getMemberSchemas(baseSchema);\n if (members) {\n // Union options and intersection sides all render at one path, so each member normalizes its own keys.\n const group = members.reduce<unknown>((current, member) => normalizeFormValues(current, member), value);\n return isPlainObject(group) && omitsBlankGroup(schema, group) ? undefined : group;\n }\n\n const shape = getShape(baseSchema);\n if (shape && isPlainObject(value)) {\n const group = normalizeEntries(value, key => shape[key]);\n return omitsBlankGroup(schema, group) ? undefined : group;\n }\n\n const recordValueSchema = getRecordValueSchema(baseSchema);\n if (recordValueSchema && isPlainObject(value)) return normalizeEntries(value, () => recordValueSchema);\n\n if (Array.isArray(value)) {\n const element = getArrayElement(baseSchema);\n return element && typeof element === 'object' ? value.map(item => normalizeFormValues(item, element)) : value;\n }\n\n const blankControl = value === '' || (value === null && !schema.safeParse(null).success);\n if (blankControl && getDefaultValueInZodStack(schema) === undefined) return undefined;\n\n return value;\n}\n\nexport class CustomZodProvider<T extends AnySchema> implements SchemaProvider {\n private _schema: T;\n constructor(schema: T) {\n if (!schema) {\n throw new Error('CustomZodProvider: schema is required');\n }\n this._schema = schema;\n }\n\n getDefaultValues(): Record<string, any> {\n return getDefaultValues(this._schema);\n }\n\n validateSchema(values: any): SchemaValidation {\n const cleanedValues = normalizeFormValues(values, this._schema);\n const schema: AnySchema = this._schema;\n const validationResult = schema.safeParse(cleanedValues);\n if (validationResult.success) {\n return { success: true, data: validationResult.data } as const;\n }\n\n const error = validationResult.error;\n // v3: error.errors, v4: error.issues\n const issues = error.issues ?? error.errors ?? [];\n return {\n success: false,\n errors: issues.map((err: any) => ({\n path: err.path as string[],\n message: err.message,\n })),\n } as const;\n }\n\n parseSchema(): ParsedSchema {\n return parseSchema(this._schema);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"zod-provider.es.js","names":[],"sources":["../../../src/lib/form/zod-provider/index.ts"],"sourcesContent":["import type { FieldConfig, ParsedField, ParsedSchema, SchemaProvider, SchemaValidation } from '@autoform/core';\nimport { isPlainObject } from '../utils';\nimport {\n getDef,\n getBaseSchema,\n getEnumValues,\n getShape,\n getArrayElement,\n getLiteralValues,\n getUnionOptions,\n getIntersection,\n getRecordValueSchema,\n isOptional,\n} from './compat';\nimport { getDefaultValues, getDefaultValueInZodStack } from './default-values';\nimport { inferFieldType } from './field-type-inference';\n\ntype AnySchema = any;\n\n/**\n * Version-agnostic field config extraction.\n * For generated schemas (from jsonSchemaToZod), there's no @autoform/zod fieldConfig() wrapper,\n * so this returns undefined. If a schema happens to carry field config, it will be found here.\n */\nfunction getFieldConfigInZodStack(schema: AnySchema): FieldConfig | undefined {\n const def = getDef(schema);\n if (!def) return undefined;\n\n // v3: field config stored via Symbol on refinement function\n if (def.typeName === 'ZodEffects' && def.effect?.type === 'refinement') {\n const fn = def.effect?.refinement;\n if (fn) {\n const symbols = Object.getOwnPropertySymbols(fn);\n for (const sym of symbols) {\n const val = fn[sym];\n if (val && typeof val === 'object') return val as FieldConfig;\n }\n }\n }\n\n // Recurse into wrappers\n if ('innerType' in def) return getFieldConfigInZodStack(def.innerType);\n if ('schema' in def) return getFieldConfigInZodStack(def.schema);\n\n return undefined;\n}\n\nfunction parseField(key: string, schema: AnySchema): ParsedField {\n const baseSchema = getBaseSchema(schema);\n const fieldConfig = getFieldConfigInZodStack(schema);\n let type = inferFieldType(baseSchema, fieldConfig);\n const defaultValue = getDefaultValueInZodStack(schema);\n\n // Enums\n const options = getEnumValues(baseSchema);\n let optionValues: [string, string][] = [];\n if (options) {\n if (!Array.isArray(options)) {\n optionValues = Object.entries(options);\n } else {\n optionValues = options.map(value => [value, value]);\n }\n }\n\n // Arrays and objects\n let subSchema: ParsedField[] = [];\n\n const shape = getShape(baseSchema);\n if (shape && !getIntersection(baseSchema)) {\n // ZodObject\n subSchema = Object.entries(shape).map(([k, field]) => parseField(k, field));\n }\n\n const unionOptions = getUnionOptions(baseSchema);\n const constructorName = baseSchema?.constructor?.name?.slice(1);\n const baseDef = getDef(baseSchema);\n const v4Type =\n typeof baseDef?.type === 'string'\n ? `Zod${baseDef.type.charAt(0).toUpperCase()}${baseDef.type.slice(1)}`\n : undefined;\n const baseTypeName = baseDef?.typeName ?? v4Type ?? constructorName;\n\n if ((baseTypeName === 'ZodUnion' || baseTypeName === 'ZodDiscriminatedUnion') && unionOptions) {\n subSchema = Object.entries(unionOptions).map(([k, field]: [string, AnySchema]) => {\n return parseField(k, field);\n });\n }\n\n const intersection = getIntersection(baseSchema);\n if (intersection) {\n const { left: leftSchema, right: rightSchema } = intersection;\n let subSchemaLeft: ParsedField[] = [];\n let subSchemaRight: ParsedField[] = [];\n\n const leftShape = getShape(leftSchema);\n if (leftShape) {\n subSchemaLeft = Object.entries(leftShape).map(([k, field]) => parseField(k, field));\n } else {\n const leftChild = parseField(key, leftSchema);\n subSchemaLeft = leftChild.schema ?? [leftChild];\n type = leftChild.type;\n }\n\n const rightShape = getShape(rightSchema);\n if (rightShape) {\n subSchemaRight = Object.entries(rightShape).map(([k, field]) => parseField(k, field));\n } else {\n const rightChild = parseField(key, rightSchema);\n subSchemaRight = rightChild.schema ?? [rightChild];\n type = rightChild.type;\n }\n\n subSchema = [...subSchemaLeft, ...subSchemaRight];\n }\n\n if (baseTypeName === 'ZodArray') {\n const element = getArrayElement(baseSchema);\n if (element) {\n subSchema = [parseField('0', element)];\n }\n }\n\n const isLiteral = baseTypeName === 'ZodLiteral';\n const literalValues = isLiteral ? getLiteralValues(baseSchema) : undefined;\n\n return {\n key,\n type,\n required: !isOptional(schema),\n default: defaultValue,\n description: baseSchema.description,\n fieldConfig:\n isLiteral || Object.keys(fieldConfig ?? {})?.length > 0\n ? {\n ...fieldConfig,\n customData: {\n ...(fieldConfig?.customData ?? {}),\n ...(isLiteral ? { isLiteral, literalValues } : {}),\n },\n }\n : undefined,\n options: optionValues,\n schema: subSchema,\n };\n}\n\nexport function parseSchema(schema: AnySchema): ParsedSchema {\n const shape = getShape(schema);\n if (!shape) return { fields: [] };\n\n const fields: ParsedField[] = Object.entries(shape).map(([key, field]) => parseField(key, field));\n\n return { fields };\n}\n\nfunction getMemberSchemas(baseSchema: AnySchema): AnySchema[] | undefined {\n const intersection = getIntersection(baseSchema);\n return intersection ? [intersection.left, intersection.right] : getUnionOptions(baseSchema);\n}\n\nfunction normalizeEntries(value: Record<string, unknown>, schemaOf: (key: string) => AnySchema | undefined) {\n const normalized: Record<string, unknown> = {};\n for (const [key, child] of Object.entries(value)) {\n const schema = schemaOf(key);\n const childValue = schema ? normalizeFormValues(child, schema) : child;\n if (childValue !== undefined) normalized[key] = childValue;\n }\n return normalized;\n}\n\nfunction omitsBlankGroup(schema: AnySchema, group: Record<string, unknown>) {\n const isBlankGroup = Object.values(group).every(child => child === '' || child === undefined);\n if (!isBlankGroup || schema.safeParse(group).success) return false;\n const omitted = schema.safeParse(undefined);\n return omitted.success && omitted.data === undefined;\n}\n\nfunction normalizeFormValues(value: unknown, schema: AnySchema): unknown {\n const baseSchema = getBaseSchema(schema);\n const members = getMemberSchemas(baseSchema);\n if (members) {\n // Union options and intersection sides all render at one path, so each member normalizes its own keys.\n const group = members.reduce<unknown>((current, member) => normalizeFormValues(current, member), value);\n return isPlainObject(group) && omitsBlankGroup(schema, group) ? undefined : group;\n }\n\n const shape = getShape(baseSchema);\n if (shape && isPlainObject(value)) {\n const group = normalizeEntries(value, key => shape[key]);\n return omitsBlankGroup(schema, group) ? undefined : group;\n }\n\n const recordValueSchema = getRecordValueSchema(baseSchema);\n if (recordValueSchema && isPlainObject(value)) return normalizeEntries(value, () => recordValueSchema);\n\n if (Array.isArray(value)) {\n const element = getArrayElement(baseSchema);\n return element && typeof element === 'object' ? value.map(item => normalizeFormValues(item, element)) : value;\n }\n\n const blankControl = value === '' || (value === null && !schema.safeParse(null).success);\n if (blankControl && getDefaultValueInZodStack(schema) === undefined) return undefined;\n\n return value;\n}\n\n// zod v4 reports a missing value as \"Invalid input: expected X, received undefined\";\n// keep the v3 \"Required\" wording that the form shows for blank required fields.\nfunction toFormMessage(err: any): string {\n if (err?.code === 'invalid_type' && typeof err.message === 'string' && err.message.endsWith('received undefined')) {\n return 'Required';\n }\n return err.message;\n}\n\nexport class CustomZodProvider<T extends AnySchema> implements SchemaProvider {\n private _schema: T;\n constructor(schema: T) {\n if (!schema) {\n throw new Error('CustomZodProvider: schema is required');\n }\n this._schema = schema;\n }\n\n getDefaultValues(): Record<string, any> {\n return getDefaultValues(this._schema);\n }\n\n validateSchema(values: any): SchemaValidation {\n const cleanedValues = normalizeFormValues(values, this._schema);\n const schema: AnySchema = this._schema;\n const validationResult = schema.safeParse(cleanedValues);\n if (validationResult.success) {\n return { success: true, data: validationResult.data } as const;\n }\n\n const error = validationResult.error;\n // v3: error.errors, v4: error.issues\n const issues = error.issues ?? error.errors ?? [];\n return {\n success: false,\n errors: issues.map((err: any) => ({\n path: err.path as string[],\n message: toFormMessage(err),\n })),\n } as const;\n }\n\n parseSchema(): ParsedSchema {\n return parseSchema(this._schema);\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,297 @@
1
+ import { t as cn } from "./utils-DQx8TpNT.js";
2
+ import { t as Button } from "./Button-Bw1e3ONi.js";
3
+ import { t as Txt } from "./Txt-BM6TVV_c.js";
4
+ import { t as Input } from "./input-0l1uzOBZ.js";
5
+ import { t as DropdownMenu } from "./dropdown-menu-B4jY3J9e.js";
6
+ import { Field, FieldError } from "./components/Field.es.js";
7
+ import { i as PopoverTrigger, n as Popover, r as PopoverContent } from "./popover-CzHvTPk2.js";
8
+ import { _ as ComboboxRoot, b as ComboboxTrigger, g as ComboboxList, o as ComboboxContent, p as ComboboxItemEnd, s as ComboboxEmpty, u as ComboboxItem, v as ComboboxSearch } from "./combobox-parts-W7KRQUsV.js";
9
+ import { useSavedViewsSource } from "./domains/observability/saved-views/saved-views-source.es.js";
10
+ import { useHostedSavedViews } from "./domains/observability/saved-views/use-hosted-saved-views.es.js";
11
+ import { useObservabilityHeaderSlot } from "./domains/observability/components/observability-header-slot.es.js";
12
+ import { useRef, useState } from "react";
13
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
14
+ import { CopyIcon, EllipsisIcon, LayersIcon, LayersPlusIcon, TextCursorInputIcon, Trash2Icon } from "lucide-react";
15
+ import { createPortal } from "react-dom";
16
+ // src/ds/components/SavedViews/saved-view-picker.tsx
17
+ var DEFAULT_ITEM_VALUE = "";
18
+ /**
19
+ * A compact saved-views control for a page header: a searchable view picker, the active view's
20
+ * actions, and save / reset once the page differs from the view. Driven by the same controller
21
+ * as `SavedViewTabs`.
22
+ */
23
+ function SavedViewPicker({ views, defaultLabel, newViewSettings, describeView, canEdit = () => true, "aria-label": ariaLabel = "Views", className }) {
24
+ const anchorRef = useRef(null);
25
+ const [renaming, setRenaming] = useState(false);
26
+ const { draft, activeView } = views;
27
+ const creating = draft !== void 0 && draft.viewId === void 0;
28
+ const activeUnsaved = !creating && draft?.viewId !== void 0 && views.unsaved;
29
+ const editable = activeView !== void 0 && canEdit(activeView);
30
+ const items = [{
31
+ value: DEFAULT_ITEM_VALUE,
32
+ label: defaultLabel,
33
+ viewId: void 0
34
+ }, ...views.views.map((view) => ({
35
+ value: view.id,
36
+ label: view.name,
37
+ viewId: view.id
38
+ }))];
39
+ const selected = items.find((item) => item.viewId === activeView?.id) ?? items[0];
40
+ const viewsById = new Map(views.views.map((view) => [view.id, view]));
41
+ return /* @__PURE__ */ jsxs("div", {
42
+ role: "group",
43
+ "aria-label": ariaLabel,
44
+ className: cn("flex min-w-0 flex-wrap items-center justify-end gap-1.5", className),
45
+ children: [
46
+ views.error && !creating && !renaming && /* @__PURE__ */ jsx(Txt, {
47
+ role: "alert",
48
+ variant: "caption",
49
+ className: "min-w-0 truncate text-destructive-foreground",
50
+ children: views.error
51
+ }),
52
+ activeUnsaved && /* @__PURE__ */ jsxs("div", {
53
+ className: "flex shrink-0 items-center gap-1.5",
54
+ children: [/* @__PURE__ */ jsx(Button, {
55
+ type: "button",
56
+ variant: "ghost",
57
+ size: "sm",
58
+ disabled: views.pending,
59
+ onClick: views.discard,
60
+ children: "Reset"
61
+ }), editable && /* @__PURE__ */ jsx(Button, {
62
+ type: "button",
63
+ variant: "default",
64
+ size: "sm",
65
+ disabled: views.pending,
66
+ onClick: views.save,
67
+ children: "Save changes"
68
+ })]
69
+ }),
70
+ /* @__PURE__ */ jsxs("div", {
71
+ ref: anchorRef,
72
+ className: "flex min-w-0 items-center gap-0.5",
73
+ children: [/* @__PURE__ */ jsxs(ComboboxRoot, {
74
+ items,
75
+ value: selected,
76
+ onValueChange: (item) => {
77
+ if (item) views.select(item.viewId);
78
+ },
79
+ isItemEqualToValue: (item, value) => item.value === value.value,
80
+ autoHighlight: true,
81
+ children: [/* @__PURE__ */ jsxs(ComboboxTrigger, {
82
+ size: "sm",
83
+ icon: /* @__PURE__ */ jsx(LayersIcon, {}),
84
+ "aria-label": `View: ${selected?.label}${activeUnsaved ? ", unsaved changes" : ""}`,
85
+ className: "max-w-60",
86
+ children: [selected?.label, activeUnsaved && /* @__PURE__ */ jsx("span", { className: "ml-1.5 inline-block size-1.5 rounded-full bg-warning-indicator align-middle" })]
87
+ }), /* @__PURE__ */ jsxs(ComboboxContent, {
88
+ align: "end",
89
+ children: [
90
+ /* @__PURE__ */ jsx(ComboboxSearch, { placeholder: "Search views…" }),
91
+ /* @__PURE__ */ jsx(ComboboxEmpty, { children: "No views found." }),
92
+ /* @__PURE__ */ jsx(ComboboxList, { children: (item) => {
93
+ const view = item.viewId ? viewsById.get(item.viewId) : void 0;
94
+ return /* @__PURE__ */ jsxs(ComboboxItem, {
95
+ value: item,
96
+ children: [/* @__PURE__ */ jsx("span", {
97
+ className: "truncate",
98
+ children: item.label
99
+ }), view && describeView && /* @__PURE__ */ jsx(ComboboxItemEnd, { children: describeView(view) })]
100
+ }, item.value);
101
+ } })
102
+ ]
103
+ })]
104
+ }), activeView && !creating && /* @__PURE__ */ jsxs(DropdownMenu, { children: [/* @__PURE__ */ jsx(DropdownMenu.Trigger, {
105
+ variant: "ghost",
106
+ size: "icon-sm",
107
+ tooltip: "View actions",
108
+ className: "shrink-0",
109
+ children: /* @__PURE__ */ jsx(EllipsisIcon, {})
110
+ }), /* @__PURE__ */ jsxs(DropdownMenu.Content, {
111
+ align: "end",
112
+ children: [
113
+ editable && /* @__PURE__ */ jsxs(DropdownMenu.Item, {
114
+ onClick: () => setRenaming(true),
115
+ children: [/* @__PURE__ */ jsx(TextCursorInputIcon, { "aria-hidden": true }), "Rename"]
116
+ }),
117
+ /* @__PURE__ */ jsxs(DropdownMenu.Item, {
118
+ onClick: () => views.duplicate(activeView.id),
119
+ children: [/* @__PURE__ */ jsx(CopyIcon, { "aria-hidden": true }), "Duplicate"]
120
+ }),
121
+ editable && /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(DropdownMenu.Separator, {}), /* @__PURE__ */ jsxs(DropdownMenu.Item, {
122
+ variant: "destructive",
123
+ onClick: () => views.remove(activeView.id),
124
+ children: [/* @__PURE__ */ jsx(Trash2Icon, { "aria-hidden": true }), "Delete view"]
125
+ })] })
126
+ ]
127
+ })] })]
128
+ }),
129
+ /* @__PURE__ */ jsxs(Popover, {
130
+ open: creating,
131
+ onOpenChange: (open) => {
132
+ if (open) views.create(newViewSettings);
133
+ else views.discard();
134
+ },
135
+ children: [/* @__PURE__ */ jsx(PopoverTrigger, {
136
+ variant: "ghost",
137
+ size: "icon-sm",
138
+ tooltip: "Save as new view",
139
+ className: "shrink-0",
140
+ children: /* @__PURE__ */ jsx(LayersPlusIcon, {})
141
+ }), /* @__PURE__ */ jsx(PopoverContent, {
142
+ align: "end",
143
+ className: "w-72",
144
+ children: creating && /* @__PURE__ */ jsx(ViewNameForm, {
145
+ title: "Save as new view",
146
+ initialName: draft.name,
147
+ submitLabel: "Save view",
148
+ error: views.error,
149
+ pending: views.pending,
150
+ onNameChange: (name) => views.change({ name }),
151
+ onSubmit: () => views.save(),
152
+ onCancel: views.discard
153
+ })
154
+ })]
155
+ }),
156
+ activeView && /* @__PURE__ */ jsx(RenamePopover, {
157
+ open: renaming,
158
+ anchorRef,
159
+ name: activeView.name,
160
+ error: views.error,
161
+ pending: views.pending,
162
+ onClose: () => setRenaming(false),
163
+ onRename: (name) => views.rename(activeView.id, name)
164
+ })
165
+ ]
166
+ });
167
+ }
168
+ function RenamePopover({ open, anchorRef, name, error, pending, onClose, onRename }) {
169
+ const [failedName, setFailedName] = useState();
170
+ const [typedName, setTypedName] = useState(name);
171
+ const close = () => {
172
+ setFailedName(void 0);
173
+ setTypedName(name);
174
+ onClose();
175
+ };
176
+ return /* @__PURE__ */ jsx(Popover, {
177
+ open,
178
+ onOpenChange: (next) => !next && close(),
179
+ children: /* @__PURE__ */ jsx(PopoverContent, {
180
+ anchor: anchorRef,
181
+ align: "end",
182
+ className: "w-72",
183
+ children: open && /* @__PURE__ */ jsx(ViewNameForm, {
184
+ title: "Rename view",
185
+ initialName: name,
186
+ submitLabel: "Rename",
187
+ error: failedName !== void 0 && failedName === typedName ? error : void 0,
188
+ pending,
189
+ onNameChange: setTypedName,
190
+ onSubmit: async (next) => {
191
+ if (await onRename(next)) close();
192
+ else setFailedName(next);
193
+ },
194
+ onCancel: close
195
+ })
196
+ })
197
+ });
198
+ }
199
+ function ViewNameForm({ title, initialName, submitLabel, error, pending, onNameChange, onSubmit, onCancel }) {
200
+ const [name, setName] = useState(initialName);
201
+ const submit = (event) => {
202
+ event.preventDefault();
203
+ if (name.trim()) onSubmit(name);
204
+ };
205
+ return /* @__PURE__ */ jsxs("form", {
206
+ className: "flex flex-col gap-3",
207
+ onSubmit: submit,
208
+ children: [
209
+ /* @__PURE__ */ jsx(Txt, {
210
+ as: "h2",
211
+ variant: "label",
212
+ children: title
213
+ }),
214
+ /* @__PURE__ */ jsxs(Field, {
215
+ invalid: error !== void 0,
216
+ children: [/* @__PURE__ */ jsx(Input, {
217
+ "aria-label": "View name",
218
+ size: "sm",
219
+ autoFocus: true,
220
+ onFocus: (event) => event.currentTarget.select(),
221
+ maxLength: 80,
222
+ value: name,
223
+ onChange: (event) => {
224
+ setName(event.target.value);
225
+ onNameChange?.(event.target.value);
226
+ }
227
+ }), /* @__PURE__ */ jsx(FieldError, { children: error })]
228
+ }),
229
+ /* @__PURE__ */ jsxs("div", {
230
+ className: "flex justify-end gap-1.5",
231
+ children: [/* @__PURE__ */ jsx(Button, {
232
+ type: "button",
233
+ variant: "ghost",
234
+ size: "sm",
235
+ onClick: onCancel,
236
+ children: "Cancel"
237
+ }), /* @__PURE__ */ jsx(Button, {
238
+ type: "submit",
239
+ variant: "default",
240
+ size: "sm",
241
+ disabled: pending || !name.trim(),
242
+ children: submitLabel
243
+ })]
244
+ })
245
+ ]
246
+ });
247
+ }
248
+ // src/domains/observability/saved-views/observability-saved-views.tsx
249
+ var DEFAULT_LABELS = {
250
+ traces: "All traces",
251
+ spans: "All spans",
252
+ threads: "All threads",
253
+ logs: "All logs"
254
+ };
255
+ /**
256
+ * The saved views of an observability page: a searchable view picker with save and reset actions.
257
+ * Inside the shared traces / spans / threads header it moves into that header's row. Renders nothing
258
+ * unless a `SavedViewsProvider` above it supplies where views are stored.
259
+ */
260
+ function ObservabilitySavedViews(props) {
261
+ const context = useSavedViewsSource();
262
+ if (!context) return null;
263
+ return /* @__PURE__ */ jsx(HostedSavedViewsBar, {
264
+ ...props,
265
+ ...context
266
+ });
267
+ }
268
+ function HostedSavedViewsBar({ page, searchParams, setSearchParams, columns, defaultDatePreset, className, source, queryKeyScope, canEdit }) {
269
+ const headerSlot = useObservabilityHeaderSlot();
270
+ const views = useHostedSavedViews({
271
+ page,
272
+ source,
273
+ queryKeyScope,
274
+ canEdit,
275
+ searchParams,
276
+ setSearchParams,
277
+ columns,
278
+ defaultDatePreset
279
+ });
280
+ const picker = /* @__PURE__ */ jsx(SavedViewPicker, {
281
+ views,
282
+ defaultLabel: DEFAULT_LABELS[page],
283
+ "aria-label": "Saved views",
284
+ newViewSettings: { state: {
285
+ schemaVersion: 1,
286
+ page,
287
+ filters: []
288
+ } },
289
+ describeView: (view) => view.settings.record?.scope === "org" ? "Shared" : void 0,
290
+ canEdit: (view) => !canEdit || !view.settings.record || canEdit(view.settings.record),
291
+ className
292
+ });
293
+ return headerSlot ? createPortal(picker, headerSlot) : picker;
294
+ }
295
+ export { ObservabilitySavedViews as t };
296
+
297
+ //# sourceMappingURL=observability-saved-views-Bo5kLN20.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observability-saved-views-Bo5kLN20.js","names":["_Fragment"],"sources":["../src/ds/components/SavedViews/saved-view-picker.tsx","../src/domains/observability/saved-views/observability-saved-views.tsx"],"sourcesContent":["import { CopyIcon, EllipsisIcon, LayersIcon, LayersPlusIcon, TextCursorInputIcon, Trash2Icon } from 'lucide-react';\nimport { useRef, useState } from 'react';\nimport type { FormEvent, ReactNode, RefObject } from 'react';\nimport { MAX_SAVED_VIEW_NAME_CHARS } from './saved-view-schema';\nimport type { SavedView } from './saved-view-schema';\nimport type { SavedViewsController } from './use-saved-views';\nimport { Button } from '@/ds/components/Button/Button';\nimport {\n ComboboxContent,\n ComboboxEmpty,\n ComboboxItem,\n ComboboxItemEnd,\n ComboboxList,\n ComboboxRoot,\n ComboboxSearch,\n ComboboxTrigger,\n} from '@/ds/components/Combobox/combobox-parts';\nimport { DropdownMenu } from '@/ds/components/DropdownMenu';\nimport { Field, FieldError } from '@/ds/components/Field';\nimport { Input } from '@/ds/components/Input/input';\nimport { Popover, PopoverContent, PopoverTrigger } from '@/ds/components/Popover';\nimport { Txt } from '@/ds/components/Txt';\nimport { cn } from '@/lib/utils';\n\nexport type SavedViewPickerProps<TSettings> = {\n views: SavedViewsController<TSettings>;\n /** Names the page's unfiltered state, e.g. \"All traces\". */\n defaultLabel: string;\n newViewSettings: NoInfer<TSettings>;\n /** Muted text after a view in the list, e.g. \"Shared\". */\n describeView?: (view: SavedView<TSettings>) => ReactNode;\n /** Whether a view can be renamed, deleted or overwritten. Others can still be applied and duplicated. */\n canEdit?: (view: SavedView<TSettings>) => boolean;\n 'aria-label'?: string;\n className?: string;\n};\n\ntype PickerItem = { value: string; label: string; viewId: string | undefined };\n\nconst DEFAULT_ITEM_VALUE = '';\n\n/**\n * A compact saved-views control for a page header: a searchable view picker, the active view's\n * actions, and save / reset once the page differs from the view. Driven by the same controller\n * as `SavedViewTabs`.\n */\nexport function SavedViewPicker<TSettings>({\n views,\n defaultLabel,\n newViewSettings,\n describeView,\n canEdit = () => true,\n 'aria-label': ariaLabel = 'Views',\n className,\n}: SavedViewPickerProps<TSettings>) {\n const anchorRef = useRef<HTMLDivElement>(null);\n const [renaming, setRenaming] = useState(false);\n const { draft, activeView } = views;\n const creating = draft !== undefined && draft.viewId === undefined;\n const activeUnsaved = !creating && draft?.viewId !== undefined && views.unsaved;\n const editable = activeView !== undefined && canEdit(activeView);\n\n const items: PickerItem[] = [\n { value: DEFAULT_ITEM_VALUE, label: defaultLabel, viewId: undefined },\n ...views.views.map(view => ({ value: view.id, label: view.name, viewId: view.id })),\n ];\n const selected = items.find(item => item.viewId === activeView?.id) ?? items[0];\n const viewsById = new Map(views.views.map(view => [view.id, view]));\n\n return (\n <div\n role=\"group\"\n aria-label={ariaLabel}\n className={cn('flex min-w-0 flex-wrap items-center justify-end gap-1.5', className)}\n >\n {views.error && !creating && !renaming && (\n <Txt role=\"alert\" variant=\"caption\" className=\"min-w-0 truncate text-destructive-foreground\">\n {views.error}\n </Txt>\n )}\n {activeUnsaved && (\n <div className=\"flex shrink-0 items-center gap-1.5\">\n <Button type=\"button\" variant=\"ghost\" size=\"sm\" disabled={views.pending} onClick={views.discard}>\n Reset\n </Button>\n {editable && (\n <Button type=\"button\" variant=\"default\" size=\"sm\" disabled={views.pending} onClick={views.save}>\n Save changes\n </Button>\n )}\n </div>\n )}\n <div ref={anchorRef} className=\"flex min-w-0 items-center gap-0.5\">\n <ComboboxRoot\n items={items}\n value={selected}\n onValueChange={(item: PickerItem | null) => {\n if (item) views.select(item.viewId);\n }}\n isItemEqualToValue={(item: PickerItem, value: PickerItem) => item.value === value.value}\n autoHighlight\n >\n <ComboboxTrigger\n size=\"sm\"\n icon={<LayersIcon />}\n aria-label={`View: ${selected?.label}${activeUnsaved ? ', unsaved changes' : ''}`}\n className=\"max-w-60\"\n >\n {selected?.label}\n {activeUnsaved && (\n <span className=\"ml-1.5 inline-block size-1.5 rounded-full bg-warning-indicator align-middle\" />\n )}\n </ComboboxTrigger>\n <ComboboxContent align=\"end\">\n <ComboboxSearch placeholder=\"Search views…\" />\n <ComboboxEmpty>No views found.</ComboboxEmpty>\n <ComboboxList>\n {(item: PickerItem) => {\n const view = item.viewId ? viewsById.get(item.viewId) : undefined;\n return (\n <ComboboxItem key={item.value} value={item}>\n <span className=\"truncate\">{item.label}</span>\n {view && describeView && <ComboboxItemEnd>{describeView(view)}</ComboboxItemEnd>}\n </ComboboxItem>\n );\n }}\n </ComboboxList>\n </ComboboxContent>\n </ComboboxRoot>\n {activeView && !creating && (\n <DropdownMenu>\n <DropdownMenu.Trigger variant=\"ghost\" size=\"icon-sm\" tooltip=\"View actions\" className=\"shrink-0\">\n <EllipsisIcon />\n </DropdownMenu.Trigger>\n <DropdownMenu.Content align=\"end\">\n {editable && (\n <DropdownMenu.Item onClick={() => setRenaming(true)}>\n <TextCursorInputIcon aria-hidden />\n Rename\n </DropdownMenu.Item>\n )}\n <DropdownMenu.Item onClick={() => views.duplicate(activeView.id)}>\n <CopyIcon aria-hidden />\n Duplicate\n </DropdownMenu.Item>\n {editable && (\n <>\n <DropdownMenu.Separator />\n <DropdownMenu.Item variant=\"destructive\" onClick={() => views.remove(activeView.id)}>\n <Trash2Icon aria-hidden />\n Delete view\n </DropdownMenu.Item>\n </>\n )}\n </DropdownMenu.Content>\n </DropdownMenu>\n )}\n </div>\n <Popover\n open={creating}\n onOpenChange={open => {\n if (open) views.create(newViewSettings);\n else views.discard();\n }}\n >\n <PopoverTrigger variant=\"ghost\" size=\"icon-sm\" tooltip=\"Save as new view\" className=\"shrink-0\">\n <LayersPlusIcon />\n </PopoverTrigger>\n <PopoverContent align=\"end\" className=\"w-72\">\n {creating && (\n <ViewNameForm\n title=\"Save as new view\"\n initialName={draft.name}\n submitLabel=\"Save view\"\n error={views.error}\n pending={views.pending}\n onNameChange={name => views.change({ name })}\n onSubmit={() => views.save()}\n onCancel={views.discard}\n />\n )}\n </PopoverContent>\n </Popover>\n {activeView && (\n <RenamePopover\n open={renaming}\n anchorRef={anchorRef}\n name={activeView.name}\n error={views.error}\n pending={views.pending}\n onClose={() => setRenaming(false)}\n onRename={name => views.rename(activeView.id, name)}\n />\n )}\n </div>\n );\n}\n\nfunction RenamePopover({\n open,\n anchorRef,\n name,\n error,\n pending,\n onClose,\n onRename,\n}: {\n open: boolean;\n anchorRef: RefObject<HTMLDivElement | null>;\n name: string;\n error: string | undefined;\n pending: boolean | undefined;\n onClose: () => void;\n onRename: (name: string) => boolean | Promise<boolean>;\n}) {\n // The name that last failed to save: its error shows until the user types something else.\n const [failedName, setFailedName] = useState<string>();\n const [typedName, setTypedName] = useState(name);\n const close = () => {\n setFailedName(undefined);\n setTypedName(name);\n onClose();\n };\n return (\n <Popover open={open} onOpenChange={next => !next && close()}>\n <PopoverContent anchor={anchorRef} align=\"end\" className=\"w-72\">\n {open && (\n <ViewNameForm\n title=\"Rename view\"\n initialName={name}\n submitLabel=\"Rename\"\n error={failedName !== undefined && failedName === typedName ? error : undefined}\n pending={pending}\n onNameChange={setTypedName}\n onSubmit={async next => {\n if (await onRename(next)) close();\n else setFailedName(next);\n }}\n onCancel={close}\n />\n )}\n </PopoverContent>\n </Popover>\n );\n}\n\nfunction ViewNameForm({\n title,\n initialName,\n submitLabel,\n error,\n pending,\n onNameChange,\n onSubmit,\n onCancel,\n}: {\n title: string;\n initialName: string;\n submitLabel: string;\n error?: string;\n pending?: boolean;\n onNameChange?: (name: string) => void;\n onSubmit: (name: string) => void | Promise<void>;\n onCancel: () => void;\n}) {\n const [name, setName] = useState(initialName);\n const submit = (event: FormEvent) => {\n event.preventDefault();\n if (name.trim()) void onSubmit(name);\n };\n return (\n <form className=\"flex flex-col gap-3\" onSubmit={submit}>\n <Txt as=\"h2\" variant=\"label\">\n {title}\n </Txt>\n <Field invalid={error !== undefined}>\n <Input\n aria-label=\"View name\"\n size=\"sm\"\n autoFocus\n onFocus={event => event.currentTarget.select()}\n maxLength={MAX_SAVED_VIEW_NAME_CHARS}\n value={name}\n onChange={event => {\n setName(event.target.value);\n onNameChange?.(event.target.value);\n }}\n />\n <FieldError>{error}</FieldError>\n </Field>\n <div className=\"flex justify-end gap-1.5\">\n <Button type=\"button\" variant=\"ghost\" size=\"sm\" onClick={onCancel}>\n Cancel\n </Button>\n <Button type=\"submit\" variant=\"default\" size=\"sm\" disabled={pending || !name.trim()}>\n {submitLabel}\n </Button>\n </div>\n </form>\n );\n}\n","import type { SavedViewPage } from '@mastra/core/storage';\nimport { createPortal } from 'react-dom';\nimport { useSavedViewsSource } from './saved-views-source';\nimport type { SavedViewsContextValue } from './saved-views-source';\nimport { useHostedSavedViews } from './use-hosted-saved-views';\nimport type { SavedViewColumnsControl } from './use-hosted-saved-views';\nimport { useObservabilityHeaderSlot } from '@/domains/observability/components/observability-header-slot';\nimport { SavedViewPicker } from '@/ds/components/SavedViews/saved-view-picker';\nimport type { SetURLSearchParamsLike } from '@/lib/sort/use-url-sort';\nimport { cn } from '@/lib/utils';\n\nconst DEFAULT_LABELS: Record<SavedViewPage, string> = {\n traces: 'All traces',\n spans: 'All spans',\n threads: 'All threads',\n logs: 'All logs',\n};\n\nexport type ObservabilitySavedViewsProps = {\n page: SavedViewPage;\n searchParams: URLSearchParams;\n setSearchParams: SetURLSearchParamsLike;\n /** The page's column picker (traces, spans, threads), so views save and restore columns. */\n columns?: SavedViewColumnsControl;\n /**\n * The range the page shows when the URL names none, when the host's differs from the page's own\n * (the same value passed to `useObservabilityListFilters`).\n */\n defaultDatePreset?: string;\n className?: string;\n};\n\n/**\n * The saved views of an observability page: a searchable view picker with save and reset actions.\n * Inside the shared traces / spans / threads header it moves into that header's row. Renders nothing\n * unless a `SavedViewsProvider` above it supplies where views are stored.\n */\nexport function ObservabilitySavedViews(props: ObservabilitySavedViewsProps) {\n const context = useSavedViewsSource();\n if (!context) return null;\n return <HostedSavedViewsBar {...props} {...context} />;\n}\n\nfunction HostedSavedViewsBar({\n page,\n searchParams,\n setSearchParams,\n columns,\n defaultDatePreset,\n className,\n source,\n queryKeyScope,\n canEdit,\n}: ObservabilitySavedViewsProps & SavedViewsContextValue) {\n const headerSlot = useObservabilityHeaderSlot();\n const views = useHostedSavedViews({\n page,\n source,\n queryKeyScope,\n canEdit,\n searchParams,\n setSearchParams,\n columns,\n defaultDatePreset,\n });\n\n const picker = (\n <SavedViewPicker\n views={views}\n defaultLabel={DEFAULT_LABELS[page]}\n aria-label=\"Saved views\"\n newViewSettings={{ state: { schemaVersion: 1, page, filters: [] } }}\n describeView={view => (view.settings.record?.scope === 'org' ? 'Shared' : undefined)}\n canEdit={view => !canEdit || !view.settings.record || canEdit(view.settings.record)}\n className={className}\n />\n );\n return headerSlot ? createPortal(picker, headerSlot) : picker;\n}\n"],"mappings":"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"}