@sqlrooms/mosaic 0.29.0-rc.7 → 0.29.0-rc.9

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 (572) hide show
  1. package/LICENSE.md +2 -1
  2. package/README.md +179 -35
  3. package/dist/MosaicSlice.d.ts +1 -0
  4. package/dist/MosaicSlice.d.ts.map +1 -1
  5. package/dist/MosaicSlice.js.map +1 -1
  6. package/dist/VgPlotChart.d.ts.map +1 -1
  7. package/dist/VgPlotChart.js +9 -3
  8. package/dist/VgPlotChart.js.map +1 -1
  9. package/dist/ai/agentIntent.d.ts +5 -0
  10. package/dist/ai/agentIntent.d.ts.map +1 -0
  11. package/dist/ai/agentIntent.js +8 -0
  12. package/dist/ai/agentIntent.js.map +1 -0
  13. package/dist/ai/block-document/constants.d.ts +9 -0
  14. package/dist/ai/block-document/constants.d.ts.map +1 -0
  15. package/dist/ai/block-document/constants.js +9 -0
  16. package/dist/ai/block-document/constants.js.map +1 -0
  17. package/dist/ai/block-document/createAddMosaicDashboardBlockTool.d.ts +48 -0
  18. package/dist/ai/block-document/createAddMosaicDashboardBlockTool.d.ts.map +1 -0
  19. package/dist/ai/block-document/createAddMosaicDashboardBlockTool.js +59 -0
  20. package/dist/ai/block-document/createAddMosaicDashboardBlockTool.js.map +1 -0
  21. package/dist/ai/block-document/createBlockDocumentChartTools.d.ts +19 -0
  22. package/dist/ai/block-document/createBlockDocumentChartTools.d.ts.map +1 -0
  23. package/dist/ai/block-document/createBlockDocumentChartTools.js +37 -0
  24. package/dist/ai/block-document/createBlockDocumentChartTools.js.map +1 -0
  25. package/dist/ai/block-document/createBlockDocumentDataTableExplorerTool.d.ts +32 -0
  26. package/dist/ai/block-document/createBlockDocumentDataTableExplorerTool.d.ts.map +1 -0
  27. package/dist/ai/block-document/createBlockDocumentDataTableExplorerTool.js +37 -0
  28. package/dist/ai/block-document/createBlockDocumentDataTableExplorerTool.js.map +1 -0
  29. package/dist/ai/constants.d.ts +3 -0
  30. package/dist/ai/constants.d.ts.map +1 -0
  31. package/dist/ai/constants.js +3 -0
  32. package/dist/ai/constants.js.map +1 -0
  33. package/dist/ai/createDataTableExplorerTool.d.ts +69 -0
  34. package/dist/ai/createDataTableExplorerTool.d.ts.map +1 -0
  35. package/dist/ai/createDataTableExplorerTool.js +68 -0
  36. package/dist/ai/createDataTableExplorerTool.js.map +1 -0
  37. package/dist/ai/dashboard/constants.d.ts +6 -0
  38. package/dist/ai/dashboard/constants.d.ts.map +1 -0
  39. package/dist/ai/dashboard/constants.js +6 -0
  40. package/dist/ai/dashboard/constants.js.map +1 -0
  41. package/dist/ai/dashboard/createDashboardAgentTool.d.ts +17 -0
  42. package/dist/ai/dashboard/createDashboardAgentTool.d.ts.map +1 -0
  43. package/dist/ai/dashboard/createDashboardAgentTool.js +205 -0
  44. package/dist/ai/dashboard/createDashboardAgentTool.js.map +1 -0
  45. package/dist/ai/dashboard/createDashboardAiAdapter.d.ts +14 -0
  46. package/dist/ai/dashboard/createDashboardAiAdapter.d.ts.map +1 -0
  47. package/dist/ai/dashboard/createDashboardAiAdapter.js +75 -0
  48. package/dist/ai/dashboard/createDashboardAiAdapter.js.map +1 -0
  49. package/dist/ai/dashboard/createDashboardAiTools.d.ts +26 -0
  50. package/dist/ai/dashboard/createDashboardAiTools.d.ts.map +1 -0
  51. package/dist/ai/dashboard/createDashboardAiTools.js +40 -0
  52. package/dist/ai/dashboard/createDashboardAiTools.js.map +1 -0
  53. package/dist/ai/dashboard/createDashboardChartTools.d.ts +27 -0
  54. package/dist/ai/dashboard/createDashboardChartTools.d.ts.map +1 -0
  55. package/dist/ai/dashboard/createDashboardChartTools.js +55 -0
  56. package/dist/ai/dashboard/createDashboardChartTools.js.map +1 -0
  57. package/dist/ai/dashboard/createDashboardDataTableExplorerTool.d.ts +23 -0
  58. package/dist/ai/dashboard/createDashboardDataTableExplorerTool.d.ts.map +1 -0
  59. package/dist/ai/dashboard/createDashboardDataTableExplorerTool.js +29 -0
  60. package/dist/ai/dashboard/createDashboardDataTableExplorerTool.js.map +1 -0
  61. package/dist/ai/dashboard/createListDashboardPanelsTool.d.ts +28 -0
  62. package/dist/ai/dashboard/createListDashboardPanelsTool.d.ts.map +1 -0
  63. package/dist/ai/dashboard/createListDashboardPanelsTool.js +54 -0
  64. package/dist/ai/dashboard/createListDashboardPanelsTool.js.map +1 -0
  65. package/dist/ai/dashboard/dashboard-types.d.ts +59 -0
  66. package/dist/ai/dashboard/dashboard-types.d.ts.map +1 -0
  67. package/dist/ai/dashboard/dashboard-types.js +2 -0
  68. package/dist/ai/dashboard/dashboard-types.js.map +1 -0
  69. package/dist/ai/database-types.d.ts +12 -0
  70. package/dist/ai/database-types.d.ts.map +1 -0
  71. package/dist/ai/database-types.js +2 -0
  72. package/dist/ai/database-types.js.map +1 -0
  73. package/dist/ai/errors.d.ts +8 -0
  74. package/dist/ai/errors.d.ts.map +1 -0
  75. package/dist/ai/errors.js +11 -0
  76. package/dist/ai/errors.js.map +1 -0
  77. package/dist/ai/tool-helpers.d.ts +28 -29
  78. package/dist/ai/tool-helpers.d.ts.map +1 -1
  79. package/dist/ai/tool-helpers.js +38 -76
  80. package/dist/ai/tool-helpers.js.map +1 -1
  81. package/dist/ai/tool-schemas.d.ts +9 -4
  82. package/dist/ai/tool-schemas.d.ts.map +1 -1
  83. package/dist/ai/tool-schemas.js +12 -12
  84. package/dist/ai/tool-schemas.js.map +1 -1
  85. package/dist/ai/tool-types.d.ts +19 -1
  86. package/dist/ai/tool-types.d.ts.map +1 -1
  87. package/dist/ai/tool-types.js.map +1 -1
  88. package/dist/ai/types.d.ts +64 -0
  89. package/dist/ai/types.d.ts.map +1 -0
  90. package/dist/ai/types.js +2 -0
  91. package/dist/ai/types.js.map +1 -0
  92. package/dist/ai.d.ts +16 -2
  93. package/dist/ai.d.ts.map +1 -1
  94. package/dist/ai.js +14 -5
  95. package/dist/ai.js.map +1 -1
  96. package/dist/charts/MosaicChart.d.ts +3 -1
  97. package/dist/charts/MosaicChart.d.ts.map +1 -1
  98. package/dist/charts/MosaicChart.js +2 -2
  99. package/dist/charts/MosaicChart.js.map +1 -1
  100. package/dist/charts/MosaicChartError.d.ts +8 -2
  101. package/dist/charts/MosaicChartError.d.ts.map +1 -1
  102. package/dist/charts/MosaicChartError.js +29 -3
  103. package/dist/charts/MosaicChartError.js.map +1 -1
  104. package/dist/charts/MosaicChartSettingsButton.d.ts +15 -0
  105. package/dist/charts/MosaicChartSettingsButton.d.ts.map +1 -0
  106. package/dist/charts/MosaicChartSettingsButton.js +7 -0
  107. package/dist/charts/MosaicChartSettingsButton.js.map +1 -0
  108. package/dist/charts/MosaicChartView.d.ts +2 -0
  109. package/dist/charts/MosaicChartView.d.ts.map +1 -1
  110. package/dist/charts/MosaicChartView.js +19 -7
  111. package/dist/charts/MosaicChartView.js.map +1 -1
  112. package/dist/charts/chart-settings/MosaicChartSettings.d.ts.map +1 -1
  113. package/dist/charts/chart-settings/MosaicChartSettings.js +3 -3
  114. package/dist/charts/chart-settings/MosaicChartSettings.js.map +1 -1
  115. package/dist/charts/chart-settings/MosaicChartSettingsPanel.js +1 -1
  116. package/dist/charts/chart-settings/MosaicChartSettingsPanel.js.map +1 -1
  117. package/dist/charts/chart-settings/MosaicChartSpecViewerPanel.d.ts.map +1 -1
  118. package/dist/charts/chart-settings/MosaicChartSpecViewerPanel.js +2 -1
  119. package/dist/charts/chart-settings/MosaicChartSpecViewerPanel.js.map +1 -1
  120. package/dist/charts/chart-settings/MosaicChartTypeSelector.d.ts.map +1 -1
  121. package/dist/charts/chart-settings/MosaicChartTypeSelector.js +3 -3
  122. package/dist/charts/chart-settings/MosaicChartTypeSelector.js.map +1 -1
  123. package/dist/charts/chart-types/base-types.d.ts +40 -25
  124. package/dist/charts/chart-types/base-types.d.ts.map +1 -1
  125. package/dist/charts/chart-types/base-types.js +5 -0
  126. package/dist/charts/chart-types/base-types.js.map +1 -1
  127. package/dist/charts/chart-types/box-plot/definition.d.ts.map +1 -1
  128. package/dist/charts/chart-types/box-plot/definition.js +1 -0
  129. package/dist/charts/chart-types/box-plot/definition.js.map +1 -1
  130. package/dist/charts/chart-types/box-plot/renderer/BoxPlotClient.d.ts +37 -3
  131. package/dist/charts/chart-types/box-plot/renderer/BoxPlotClient.d.ts.map +1 -1
  132. package/dist/charts/chart-types/box-plot/renderer/BoxPlotClient.js +28 -13
  133. package/dist/charts/chart-types/box-plot/renderer/BoxPlotClient.js.map +1 -1
  134. package/dist/charts/chart-types/box-plot/renderer/BoxPlotPanelRenderer.js +2 -2
  135. package/dist/charts/chart-types/box-plot/renderer/BoxPlotPanelRenderer.js.map +1 -1
  136. package/dist/charts/chart-types/box-plot/renderer/useBoxPlotClient.d.ts +12 -1
  137. package/dist/charts/chart-types/box-plot/renderer/useBoxPlotClient.d.ts.map +1 -1
  138. package/dist/charts/chart-types/box-plot/renderer/useBoxPlotClient.js +13 -3
  139. package/dist/charts/chart-types/box-plot/renderer/useBoxPlotClient.js.map +1 -1
  140. package/dist/charts/chart-types/box-plot/tool.d.ts +20 -24
  141. package/dist/charts/chart-types/box-plot/tool.d.ts.map +1 -1
  142. package/dist/charts/chart-types/box-plot/tool.js +25 -33
  143. package/dist/charts/chart-types/box-plot/tool.js.map +1 -1
  144. package/dist/charts/chart-types/box-plot/validation.d.ts +9 -0
  145. package/dist/charts/chart-types/box-plot/validation.d.ts.map +1 -0
  146. package/dist/charts/chart-types/box-plot/validation.js +32 -0
  147. package/dist/charts/chart-types/box-plot/validation.js.map +1 -0
  148. package/dist/charts/chart-types/chart-config.d.ts +3 -1
  149. package/dist/charts/chart-types/chart-config.d.ts.map +1 -1
  150. package/dist/charts/chart-types/chart-config.js +2 -2
  151. package/dist/charts/chart-types/chart-config.js.map +1 -1
  152. package/dist/charts/chart-types/column-types.d.ts +8 -0
  153. package/dist/charts/chart-types/column-types.d.ts.map +1 -0
  154. package/dist/charts/chart-types/column-types.js +2 -0
  155. package/dist/charts/chart-types/column-types.js.map +1 -0
  156. package/dist/charts/chart-types/count-plot/definition.d.ts.map +1 -1
  157. package/dist/charts/chart-types/count-plot/definition.js +1 -0
  158. package/dist/charts/chart-types/count-plot/definition.js.map +1 -1
  159. package/dist/charts/chart-types/count-plot/spec.d.ts +2 -1
  160. package/dist/charts/chart-types/count-plot/spec.d.ts.map +1 -1
  161. package/dist/charts/chart-types/count-plot/spec.js +47 -34
  162. package/dist/charts/chart-types/count-plot/spec.js.map +1 -1
  163. package/dist/charts/chart-types/count-plot/tool.d.ts +19 -24
  164. package/dist/charts/chart-types/count-plot/tool.d.ts.map +1 -1
  165. package/dist/charts/chart-types/count-plot/tool.js +26 -33
  166. package/dist/charts/chart-types/count-plot/tool.js.map +1 -1
  167. package/dist/charts/chart-types/count-plot/validation.d.ts +8 -0
  168. package/dist/charts/chart-types/count-plot/validation.d.ts.map +1 -0
  169. package/dist/charts/chart-types/count-plot/validation.js +20 -0
  170. package/dist/charts/chart-types/count-plot/validation.js.map +1 -0
  171. package/dist/charts/chart-types/createChartInstructions.d.ts +3 -0
  172. package/dist/charts/chart-types/createChartInstructions.d.ts.map +1 -0
  173. package/dist/charts/chart-types/createChartInstructions.js +12 -0
  174. package/dist/charts/chart-types/createChartInstructions.js.map +1 -0
  175. package/dist/charts/chart-types/createChartTools.d.ts +15 -9
  176. package/dist/charts/chart-types/createChartTools.d.ts.map +1 -1
  177. package/dist/charts/chart-types/createChartTools.js +16 -10
  178. package/dist/charts/chart-types/createChartTools.js.map +1 -1
  179. package/dist/charts/chart-types/createDefaultChartTypes.js +2 -2
  180. package/dist/charts/chart-types/createDefaultChartTypes.js.map +1 -1
  181. package/dist/charts/chart-types/custom-spec/definition.d.ts.map +1 -1
  182. package/dist/charts/chart-types/custom-spec/definition.js +1 -0
  183. package/dist/charts/chart-types/custom-spec/definition.js.map +1 -1
  184. package/dist/charts/chart-types/custom-spec/spec.d.ts +2 -1
  185. package/dist/charts/chart-types/custom-spec/spec.d.ts.map +1 -1
  186. package/dist/charts/chart-types/custom-spec/spec.js +16 -12
  187. package/dist/charts/chart-types/custom-spec/spec.js.map +1 -1
  188. package/dist/charts/chart-types/errors.d.ts +35 -0
  189. package/dist/charts/chart-types/errors.d.ts.map +1 -1
  190. package/dist/charts/chart-types/errors.js +56 -0
  191. package/dist/charts/chart-types/errors.js.map +1 -1
  192. package/dist/charts/chart-types/heatmap/definition.d.ts.map +1 -1
  193. package/dist/charts/chart-types/heatmap/definition.js +1 -0
  194. package/dist/charts/chart-types/heatmap/definition.js.map +1 -1
  195. package/dist/charts/chart-types/heatmap/spec.d.ts +2 -1
  196. package/dist/charts/chart-types/heatmap/spec.d.ts.map +1 -1
  197. package/dist/charts/chart-types/heatmap/spec.js +21 -21
  198. package/dist/charts/chart-types/heatmap/spec.js.map +1 -1
  199. package/dist/charts/chart-types/heatmap/tool.d.ts +20 -24
  200. package/dist/charts/chart-types/heatmap/tool.d.ts.map +1 -1
  201. package/dist/charts/chart-types/heatmap/tool.js +27 -37
  202. package/dist/charts/chart-types/heatmap/tool.js.map +1 -1
  203. package/dist/charts/chart-types/heatmap/validation.d.ts +9 -0
  204. package/dist/charts/chart-types/heatmap/validation.d.ts.map +1 -0
  205. package/dist/charts/chart-types/heatmap/validation.js +34 -0
  206. package/dist/charts/chart-types/heatmap/validation.js.map +1 -0
  207. package/dist/charts/chart-types/histogram/HistogramSettings.d.ts.map +1 -1
  208. package/dist/charts/chart-types/histogram/HistogramSettings.js +3 -1
  209. package/dist/charts/chart-types/histogram/HistogramSettings.js.map +1 -1
  210. package/dist/charts/chart-types/histogram/definition.d.ts.map +1 -1
  211. package/dist/charts/chart-types/histogram/definition.js +1 -0
  212. package/dist/charts/chart-types/histogram/definition.js.map +1 -1
  213. package/dist/charts/chart-types/histogram/schema.d.ts +2 -0
  214. package/dist/charts/chart-types/histogram/schema.d.ts.map +1 -1
  215. package/dist/charts/chart-types/histogram/schema.js +1 -0
  216. package/dist/charts/chart-types/histogram/schema.js.map +1 -1
  217. package/dist/charts/chart-types/histogram/spec.d.ts +2 -1
  218. package/dist/charts/chart-types/histogram/spec.d.ts.map +1 -1
  219. package/dist/charts/chart-types/histogram/spec.js +31 -28
  220. package/dist/charts/chart-types/histogram/spec.js.map +1 -1
  221. package/dist/charts/chart-types/histogram/tool.d.ts +39 -24
  222. package/dist/charts/chart-types/histogram/tool.d.ts.map +1 -1
  223. package/dist/charts/chart-types/histogram/tool.js +39 -33
  224. package/dist/charts/chart-types/histogram/tool.js.map +1 -1
  225. package/dist/charts/chart-types/histogram/validation.d.ts +9 -0
  226. package/dist/charts/chart-types/histogram/validation.d.ts.map +1 -0
  227. package/dist/charts/chart-types/histogram/validation.js +22 -0
  228. package/dist/charts/chart-types/histogram/validation.js.map +1 -0
  229. package/dist/charts/chart-types/index.d.ts +5 -11
  230. package/dist/charts/chart-types/index.d.ts.map +1 -1
  231. package/dist/charts/chart-types/index.js +6 -12
  232. package/dist/charts/chart-types/index.js.map +1 -1
  233. package/dist/charts/chart-types/line-chart/LineChartSettings.d.ts.map +1 -1
  234. package/dist/charts/chart-types/line-chart/LineChartSettings.js +4 -13
  235. package/dist/charts/chart-types/line-chart/LineChartSettings.js.map +1 -1
  236. package/dist/charts/chart-types/line-chart/LineChartXFieldSelector.d.ts +7 -0
  237. package/dist/charts/chart-types/line-chart/LineChartXFieldSelector.d.ts.map +1 -0
  238. package/dist/charts/chart-types/line-chart/LineChartXFieldSelector.js +22 -0
  239. package/dist/charts/chart-types/line-chart/LineChartXFieldSelector.js.map +1 -0
  240. package/dist/charts/chart-types/line-chart/LineChartYFieldsSelector.d.ts +7 -0
  241. package/dist/charts/chart-types/line-chart/LineChartYFieldsSelector.d.ts.map +1 -0
  242. package/dist/charts/chart-types/line-chart/LineChartYFieldsSelector.js +42 -0
  243. package/dist/charts/chart-types/line-chart/LineChartYFieldsSelector.js.map +1 -0
  244. package/dist/charts/chart-types/line-chart/definition.d.ts.map +1 -1
  245. package/dist/charts/chart-types/line-chart/definition.js +1 -0
  246. package/dist/charts/chart-types/line-chart/definition.js.map +1 -1
  247. package/dist/charts/chart-types/line-chart/schema.d.ts +2 -0
  248. package/dist/charts/chart-types/line-chart/schema.d.ts.map +1 -1
  249. package/dist/charts/chart-types/line-chart/schema.js +5 -0
  250. package/dist/charts/chart-types/line-chart/schema.js.map +1 -1
  251. package/dist/charts/chart-types/line-chart/spec.d.ts +2 -1
  252. package/dist/charts/chart-types/line-chart/spec.d.ts.map +1 -1
  253. package/dist/charts/chart-types/line-chart/spec.js +56 -65
  254. package/dist/charts/chart-types/line-chart/spec.js.map +1 -1
  255. package/dist/charts/chart-types/line-chart/tool.d.ts +28 -24
  256. package/dist/charts/chart-types/line-chart/tool.d.ts.map +1 -1
  257. package/dist/charts/chart-types/line-chart/tool.js +27 -39
  258. package/dist/charts/chart-types/line-chart/tool.js.map +1 -1
  259. package/dist/charts/chart-types/line-chart/utils.d.ts +7 -0
  260. package/dist/charts/chart-types/line-chart/utils.d.ts.map +1 -0
  261. package/dist/charts/chart-types/line-chart/utils.js +17 -0
  262. package/dist/charts/chart-types/line-chart/utils.js.map +1 -0
  263. package/dist/charts/chart-types/line-chart/validation.d.ts +16 -0
  264. package/dist/charts/chart-types/line-chart/validation.d.ts.map +1 -0
  265. package/dist/charts/chart-types/line-chart/validation.js +43 -0
  266. package/dist/charts/chart-types/line-chart/validation.js.map +1 -0
  267. package/dist/charts/chart-types/mosaicChartTypes.d.ts +4 -2
  268. package/dist/charts/chart-types/mosaicChartTypes.d.ts.map +1 -1
  269. package/dist/charts/chart-types/mosaicChartTypes.js +2 -2
  270. package/dist/charts/chart-types/mosaicChartTypes.js.map +1 -1
  271. package/dist/charts/chart-types/resolveChartTypes.d.ts +3 -0
  272. package/dist/charts/chart-types/resolveChartTypes.d.ts.map +1 -0
  273. package/dist/charts/chart-types/resolveChartTypes.js +8 -0
  274. package/dist/charts/chart-types/resolveChartTypes.js.map +1 -0
  275. package/dist/charts/chart-types/scatter-plot/ScatterPlotSettings.d.ts +3 -0
  276. package/dist/charts/chart-types/scatter-plot/ScatterPlotSettings.d.ts.map +1 -0
  277. package/dist/charts/chart-types/{bubble-chart/BubbleChartSettings.js → scatter-plot/ScatterPlotSettings.js} +4 -4
  278. package/dist/charts/chart-types/scatter-plot/ScatterPlotSettings.js.map +1 -0
  279. package/dist/charts/chart-types/scatter-plot/definition.d.ts +4 -0
  280. package/dist/charts/chart-types/scatter-plot/definition.d.ts.map +1 -0
  281. package/dist/charts/chart-types/scatter-plot/definition.js +25 -0
  282. package/dist/charts/chart-types/scatter-plot/definition.js.map +1 -0
  283. package/dist/charts/chart-types/{bubble-chart → scatter-plot}/schema.d.ts +5 -5
  284. package/dist/charts/chart-types/scatter-plot/schema.d.ts.map +1 -0
  285. package/dist/charts/chart-types/{bubble-chart → scatter-plot}/schema.js +5 -5
  286. package/dist/charts/chart-types/scatter-plot/schema.js.map +1 -0
  287. package/dist/charts/chart-types/scatter-plot/spec.d.ts +5 -0
  288. package/dist/charts/chart-types/scatter-plot/spec.d.ts.map +1 -0
  289. package/dist/charts/chart-types/scatter-plot/spec.js +37 -0
  290. package/dist/charts/chart-types/scatter-plot/spec.js.map +1 -0
  291. package/dist/charts/chart-types/scatter-plot/tool.d.ts +39 -0
  292. package/dist/charts/chart-types/scatter-plot/tool.d.ts.map +1 -0
  293. package/dist/charts/chart-types/scatter-plot/tool.js +57 -0
  294. package/dist/charts/chart-types/scatter-plot/tool.js.map +1 -0
  295. package/dist/charts/chart-types/scatter-plot/validation.d.ts +13 -0
  296. package/dist/charts/chart-types/scatter-plot/validation.d.ts.map +1 -0
  297. package/dist/charts/chart-types/scatter-plot/validation.js +52 -0
  298. package/dist/charts/chart-types/scatter-plot/validation.js.map +1 -0
  299. package/dist/charts/chart-types/tool-types.d.ts +43 -0
  300. package/dist/charts/chart-types/tool-types.d.ts.map +1 -0
  301. package/dist/charts/chart-types/tool-types.js +2 -0
  302. package/dist/charts/chart-types/tool-types.js.map +1 -0
  303. package/dist/charts/chart-types/utils.d.ts +3 -0
  304. package/dist/charts/chart-types/utils.d.ts.map +1 -0
  305. package/dist/charts/chart-types/utils.js +4 -0
  306. package/dist/charts/chart-types/utils.js.map +1 -0
  307. package/dist/charts/dashboard/MosaicDashboardChartHeaderActions.d.ts.map +1 -1
  308. package/dist/charts/dashboard/MosaicDashboardChartHeaderActions.js +12 -5
  309. package/dist/charts/dashboard/MosaicDashboardChartHeaderActions.js.map +1 -1
  310. package/dist/charts/dashboard/MosaicDashboardChartRenderer.d.ts.map +1 -1
  311. package/dist/charts/dashboard/MosaicDashboardChartRenderer.js +6 -4
  312. package/dist/charts/dashboard/MosaicDashboardChartRenderer.js.map +1 -1
  313. package/dist/charts/useChartDataPolicy.d.ts.map +1 -1
  314. package/dist/charts/useChartDataPolicy.js +2 -1
  315. package/dist/charts/useChartDataPolicy.js.map +1 -1
  316. package/dist/charts/useChartPanelClients.d.ts +8 -0
  317. package/dist/charts/useChartPanelClients.d.ts.map +1 -0
  318. package/dist/charts/useChartPanelClients.js +22 -0
  319. package/dist/charts/useChartPanelClients.js.map +1 -0
  320. package/dist/charts/useMosaicChartRenderContext.d.ts +2 -3
  321. package/dist/charts/useMosaicChartRenderContext.d.ts.map +1 -1
  322. package/dist/charts/useMosaicChartRenderContext.js +15 -15
  323. package/dist/charts/useMosaicChartRenderContext.js.map +1 -1
  324. package/dist/charts/worksheet/ChartBlockHeader.d.ts.map +1 -1
  325. package/dist/charts/worksheet/ChartBlockHeader.js +4 -3
  326. package/dist/charts/worksheet/ChartBlockHeader.js.map +1 -1
  327. package/dist/charts/worksheet/ChartBlockRenderer.d.ts.map +1 -1
  328. package/dist/charts/worksheet/ChartBlockRenderer.js +3 -13
  329. package/dist/charts/worksheet/ChartBlockRenderer.js.map +1 -1
  330. package/dist/column-types-utils.d.ts.map +1 -1
  331. package/dist/column-types-utils.js +12 -4
  332. package/dist/column-types-utils.js.map +1 -1
  333. package/dist/components/AggregationSelector.d.ts.map +1 -1
  334. package/dist/components/AggregationSelector.js +9 -2
  335. package/dist/components/AggregationSelector.js.map +1 -1
  336. package/dist/components/BlockCaptionEditor.d.ts +20 -0
  337. package/dist/components/BlockCaptionEditor.d.ts.map +1 -0
  338. package/dist/components/BlockCaptionEditor.js +15 -0
  339. package/dist/components/BlockCaptionEditor.js.map +1 -0
  340. package/dist/components/ColorSelector.d.ts +12 -0
  341. package/dist/components/ColorSelector.d.ts.map +1 -0
  342. package/dist/components/ColorSelector.js +13 -0
  343. package/dist/components/ColorSelector.js.map +1 -0
  344. package/dist/components/ColumnSelector.d.ts +1 -0
  345. package/dist/components/ColumnSelector.d.ts.map +1 -1
  346. package/dist/components/ColumnSelector.js +2 -2
  347. package/dist/components/ColumnSelector.js.map +1 -1
  348. package/dist/components/FieldSelectorInput.d.ts +1 -0
  349. package/dist/components/FieldSelectorInput.d.ts.map +1 -1
  350. package/dist/components/FieldSelectorInput.js +4 -9
  351. package/dist/components/FieldSelectorInput.js.map +1 -1
  352. package/dist/components/MultiFieldSelector.d.ts +4 -1
  353. package/dist/components/MultiFieldSelector.d.ts.map +1 -1
  354. package/dist/components/MultiFieldSelector.js +4 -13
  355. package/dist/components/MultiFieldSelector.js.map +1 -1
  356. package/dist/components/TemporalGranularitySelector.d.ts.map +1 -1
  357. package/dist/components/TemporalGranularitySelector.js +13 -9
  358. package/dist/components/TemporalGranularitySelector.js.map +1 -1
  359. package/dist/constants/chart-colors.d.ts +3 -0
  360. package/dist/constants/chart-colors.d.ts.map +1 -0
  361. package/dist/constants/chart-colors.js +5 -0
  362. package/dist/constants/chart-colors.js.map +1 -0
  363. package/dist/dashboard/DefaultMosaicDashboardBlock.d.ts +2 -1
  364. package/dist/dashboard/DefaultMosaicDashboardBlock.d.ts.map +1 -1
  365. package/dist/dashboard/DefaultMosaicDashboardBlock.js +1 -1
  366. package/dist/dashboard/DefaultMosaicDashboardBlock.js.map +1 -1
  367. package/dist/dashboard/MosaicDashboardCommands.d.ts +19 -0
  368. package/dist/dashboard/MosaicDashboardCommands.d.ts.map +1 -0
  369. package/dist/dashboard/MosaicDashboardCommands.js +226 -0
  370. package/dist/dashboard/MosaicDashboardCommands.js.map +1 -0
  371. package/dist/dashboard/MosaicDashboardSlice.d.ts +22 -4
  372. package/dist/dashboard/MosaicDashboardSlice.d.ts.map +1 -1
  373. package/dist/dashboard/MosaicDashboardSlice.js +55 -0
  374. package/dist/dashboard/MosaicDashboardSlice.js.map +1 -1
  375. package/dist/dashboard/components/ResetFiltersButton.d.ts +14 -0
  376. package/dist/dashboard/components/ResetFiltersButton.d.ts.map +1 -0
  377. package/dist/dashboard/components/ResetFiltersButton.js +15 -0
  378. package/dist/dashboard/components/ResetFiltersButton.js.map +1 -0
  379. package/dist/dashboard/dashboard-types.d.ts +9 -3
  380. package/dist/dashboard/dashboard-types.d.ts.map +1 -1
  381. package/dist/dashboard/dashboard-types.js.map +1 -1
  382. package/dist/dashboard/hooks/useDashboardResetFilters.d.ts +14 -0
  383. package/dist/dashboard/hooks/useDashboardResetFilters.d.ts.map +1 -0
  384. package/dist/dashboard/hooks/useDashboardResetFilters.js +39 -0
  385. package/dist/dashboard/hooks/useDashboardResetFilters.js.map +1 -0
  386. package/dist/dashboard/hooks/usePanelResetFilters.d.ts +16 -0
  387. package/dist/dashboard/hooks/usePanelResetFilters.d.ts.map +1 -0
  388. package/dist/dashboard/hooks/usePanelResetFilters.js +47 -0
  389. package/dist/dashboard/hooks/usePanelResetFilters.js.map +1 -0
  390. package/dist/dashboard/panel/MosaicDashboardPanel.d.ts.map +1 -1
  391. package/dist/dashboard/panel/MosaicDashboardPanel.js +1 -1
  392. package/dist/dashboard/panel/MosaicDashboardPanel.js.map +1 -1
  393. package/dist/dashboard/panel/MosaicDashboardPanelLayout.d.ts.map +1 -1
  394. package/dist/dashboard/panel/MosaicDashboardPanelLayout.js +3 -3
  395. package/dist/dashboard/panel/MosaicDashboardPanelLayout.js.map +1 -1
  396. package/dist/dashboard/panel/MosaicDashboardPanels.d.ts.map +1 -1
  397. package/dist/dashboard/panel/MosaicDashboardPanels.js +4 -2
  398. package/dist/dashboard/panel/MosaicDashboardPanels.js.map +1 -1
  399. package/dist/dashboard/toolbar/MosaicDashboardAddPanelDropdown.d.ts.map +1 -1
  400. package/dist/dashboard/toolbar/MosaicDashboardAddPanelDropdown.js +3 -3
  401. package/dist/dashboard/toolbar/MosaicDashboardAddPanelDropdown.js.map +1 -1
  402. package/dist/dashboard/toolbar/MosaicDashboardDataTableSelector.d.ts +7 -0
  403. package/dist/dashboard/toolbar/MosaicDashboardDataTableSelector.d.ts.map +1 -0
  404. package/dist/dashboard/toolbar/MosaicDashboardDataTableSelector.js +18 -0
  405. package/dist/dashboard/toolbar/MosaicDashboardDataTableSelector.js.map +1 -0
  406. package/dist/dashboard/toolbar/MosaicDashboardResetFiltersButton.d.ts.map +1 -1
  407. package/dist/dashboard/toolbar/MosaicDashboardResetFiltersButton.js +4 -32
  408. package/dist/dashboard/toolbar/MosaicDashboardResetFiltersButton.js.map +1 -1
  409. package/dist/dashboard/toolbar/MosaicDashboardToolbar.d.ts +2 -2
  410. package/dist/dashboard/toolbar/MosaicDashboardToolbar.d.ts.map +1 -1
  411. package/dist/dashboard/toolbar/MosaicDashboardToolbar.js +14 -10
  412. package/dist/dashboard/toolbar/MosaicDashboardToolbar.js.map +1 -1
  413. package/dist/dashboard/usePanelClientRegistration.d.ts +7 -0
  414. package/dist/dashboard/usePanelClientRegistration.d.ts.map +1 -0
  415. package/dist/dashboard/usePanelClientRegistration.js +30 -0
  416. package/dist/dashboard/usePanelClientRegistration.js.map +1 -0
  417. package/dist/dashboard/usePanelClients.d.ts +7 -0
  418. package/dist/dashboard/usePanelClients.d.ts.map +1 -0
  419. package/dist/dashboard/usePanelClients.js +13 -0
  420. package/dist/dashboard/usePanelClients.js.map +1 -0
  421. package/dist/dashboard/useSelectedOrFirstTable.d.ts +1 -1
  422. package/dist/dashboard/useSelectedOrFirstTable.d.ts.map +1 -1
  423. package/dist/dashboard/useSelectedOrFirstTable.js +10 -8
  424. package/dist/dashboard/useSelectedOrFirstTable.js.map +1 -1
  425. package/dist/data-table-explorer/DataTableExplorer.d.ts +4 -2
  426. package/dist/data-table-explorer/DataTableExplorer.d.ts.map +1 -1
  427. package/dist/data-table-explorer/DataTableExplorer.js +4 -4
  428. package/dist/data-table-explorer/DataTableExplorer.js.map +1 -1
  429. package/dist/data-table-explorer/DataTableExplorerCategoryClient.d.ts +3 -2
  430. package/dist/data-table-explorer/DataTableExplorerCategoryClient.d.ts.map +1 -1
  431. package/dist/data-table-explorer/DataTableExplorerCategoryClient.js +4 -3
  432. package/dist/data-table-explorer/DataTableExplorerCategoryClient.js.map +1 -1
  433. package/dist/data-table-explorer/DataTableExplorerCountClient.d.ts +3 -1
  434. package/dist/data-table-explorer/DataTableExplorerCountClient.d.ts.map +1 -1
  435. package/dist/data-table-explorer/DataTableExplorerCountClient.js +3 -3
  436. package/dist/data-table-explorer/DataTableExplorerCountClient.js.map +1 -1
  437. package/dist/data-table-explorer/DataTableExplorerHistogramClient.d.ts +3 -2
  438. package/dist/data-table-explorer/DataTableExplorerHistogramClient.d.ts.map +1 -1
  439. package/dist/data-table-explorer/DataTableExplorerHistogramClient.js +4 -4
  440. package/dist/data-table-explorer/DataTableExplorerHistogramClient.js.map +1 -1
  441. package/dist/data-table-explorer/DataTableExplorerPageClient.d.ts +3 -1
  442. package/dist/data-table-explorer/DataTableExplorerPageClient.d.ts.map +1 -1
  443. package/dist/data-table-explorer/DataTableExplorerPageClient.js +3 -1
  444. package/dist/data-table-explorer/DataTableExplorerPageClient.js.map +1 -1
  445. package/dist/data-table-explorer/DataTableExplorerUnsupportedSummaryClient.d.ts +3 -2
  446. package/dist/data-table-explorer/DataTableExplorerUnsupportedSummaryClient.d.ts.map +1 -1
  447. package/dist/data-table-explorer/DataTableExplorerUnsupportedSummaryClient.js +3 -3
  448. package/dist/data-table-explorer/DataTableExplorerUnsupportedSummaryClient.js.map +1 -1
  449. package/dist/data-table-explorer/createDataTableExplorerStore.d.ts +3 -0
  450. package/dist/data-table-explorer/createDataTableExplorerStore.d.ts.map +1 -1
  451. package/dist/data-table-explorer/createDataTableExplorerStore.js +6 -0
  452. package/dist/data-table-explorer/createDataTableExplorerStore.js.map +1 -1
  453. package/dist/data-table-explorer/dashboard/MosaicDashboardDataTableExplorerHeaderActions.d.ts +4 -0
  454. package/dist/data-table-explorer/dashboard/MosaicDashboardDataTableExplorerHeaderActions.d.ts.map +1 -0
  455. package/dist/data-table-explorer/dashboard/MosaicDashboardDataTableExplorerHeaderActions.js +13 -0
  456. package/dist/data-table-explorer/dashboard/MosaicDashboardDataTableExplorerHeaderActions.js.map +1 -0
  457. package/dist/data-table-explorer/dashboard/MosaicDashboardDataTableExplorerPanelRenderer.d.ts.map +1 -1
  458. package/dist/data-table-explorer/dashboard/MosaicDashboardDataTableExplorerPanelRenderer.js +26 -8
  459. package/dist/data-table-explorer/dashboard/MosaicDashboardDataTableExplorerPanelRenderer.js.map +1 -1
  460. package/dist/data-table-explorer/dashboard/useDataTableExplorerPanelClients.d.ts +13 -0
  461. package/dist/data-table-explorer/dashboard/useDataTableExplorerPanelClients.d.ts.map +1 -0
  462. package/dist/data-table-explorer/dashboard/useDataTableExplorerPanelClients.js +32 -0
  463. package/dist/data-table-explorer/dashboard/useDataTableExplorerPanelClients.js.map +1 -0
  464. package/dist/data-table-explorer/dataTableExplorerController.d.ts +63 -3
  465. package/dist/data-table-explorer/dataTableExplorerController.d.ts.map +1 -1
  466. package/dist/data-table-explorer/dataTableExplorerController.js +73 -10
  467. package/dist/data-table-explorer/dataTableExplorerController.js.map +1 -1
  468. package/dist/data-table-explorer/hooks/useDataTableExplorerColumns.d.ts +12 -0
  469. package/dist/data-table-explorer/hooks/useDataTableExplorerColumns.d.ts.map +1 -0
  470. package/dist/data-table-explorer/hooks/useDataTableExplorerColumns.js +19 -0
  471. package/dist/data-table-explorer/hooks/useDataTableExplorerColumns.js.map +1 -0
  472. package/dist/data-table-explorer/hooks/useDataTableExplorerLifecycles.d.ts +52 -0
  473. package/dist/data-table-explorer/hooks/useDataTableExplorerLifecycles.d.ts.map +1 -0
  474. package/dist/data-table-explorer/hooks/useDataTableExplorerLifecycles.js +153 -0
  475. package/dist/data-table-explorer/hooks/useDataTableExplorerLifecycles.js.map +1 -0
  476. package/dist/data-table-explorer/hooks/useDataTableExplorerQueryState.d.ts +42 -0
  477. package/dist/data-table-explorer/hooks/useDataTableExplorerQueryState.d.ts.map +1 -0
  478. package/dist/data-table-explorer/hooks/useDataTableExplorerQueryState.js +43 -0
  479. package/dist/data-table-explorer/hooks/useDataTableExplorerQueryState.js.map +1 -0
  480. package/dist/data-table-explorer/hooks/useDataTableExplorerSelection.d.ts +13 -0
  481. package/dist/data-table-explorer/hooks/useDataTableExplorerSelection.d.ts.map +1 -0
  482. package/dist/data-table-explorer/hooks/useDataTableExplorerSelection.js +40 -0
  483. package/dist/data-table-explorer/hooks/useDataTableExplorerSelection.js.map +1 -0
  484. package/dist/data-table-explorer/hooks/useDataTableExplorerStatus.d.ts +18 -0
  485. package/dist/data-table-explorer/hooks/useDataTableExplorerStatus.d.ts.map +1 -0
  486. package/dist/data-table-explorer/hooks/useDataTableExplorerStatus.js +23 -0
  487. package/dist/data-table-explorer/hooks/useDataTableExplorerStatus.js.map +1 -0
  488. package/dist/data-table-explorer/hooks/useDataTableExplorerStoreState.d.ts +27 -0
  489. package/dist/data-table-explorer/hooks/useDataTableExplorerStoreState.d.ts.map +1 -0
  490. package/dist/data-table-explorer/hooks/useDataTableExplorerStoreState.js +28 -0
  491. package/dist/data-table-explorer/hooks/useDataTableExplorerStoreState.js.map +1 -0
  492. package/dist/data-table-explorer/hooks/useDataTableExplorerVisiblePage.d.ts +15 -0
  493. package/dist/data-table-explorer/hooks/useDataTableExplorerVisiblePage.d.ts.map +1 -0
  494. package/dist/data-table-explorer/hooks/useDataTableExplorerVisiblePage.js +21 -0
  495. package/dist/data-table-explorer/hooks/useDataTableExplorerVisiblePage.js.map +1 -0
  496. package/dist/data-table-explorer/types.d.ts +16 -3
  497. package/dist/data-table-explorer/types.d.ts.map +1 -1
  498. package/dist/data-table-explorer/types.js.map +1 -1
  499. package/dist/data-table-explorer/useDataTableExplorer.d.ts.map +1 -1
  500. package/dist/data-table-explorer/useDataTableExplorer.js +20 -279
  501. package/dist/data-table-explorer/useDataTableExplorer.js.map +1 -1
  502. package/dist/data-table-explorer/utils.d.ts +64 -6
  503. package/dist/data-table-explorer/utils.d.ts.map +1 -1
  504. package/dist/data-table-explorer/utils.js +58 -0
  505. package/dist/data-table-explorer/utils.js.map +1 -1
  506. package/dist/data-table-explorer/worksheet/DataTableBlockHeader.d.ts +1 -0
  507. package/dist/data-table-explorer/worksheet/DataTableBlockHeader.d.ts.map +1 -1
  508. package/dist/data-table-explorer/worksheet/DataTableBlockHeader.js +4 -2
  509. package/dist/data-table-explorer/worksheet/DataTableBlockHeader.js.map +1 -1
  510. package/dist/data-table-explorer/worksheet/DataTableBlockRenderer.d.ts.map +1 -1
  511. package/dist/data-table-explorer/worksheet/DataTableBlockRenderer.js +4 -4
  512. package/dist/data-table-explorer/worksheet/DataTableBlockRenderer.js.map +1 -1
  513. package/dist/index.d.ts +55 -31
  514. package/dist/index.d.ts.map +1 -1
  515. package/dist/index.js +86 -26
  516. package/dist/index.js.map +1 -1
  517. package/dist/mosaicTableReference.d.ts +59 -0
  518. package/dist/mosaicTableReference.d.ts.map +1 -0
  519. package/dist/mosaicTableReference.js +68 -0
  520. package/dist/mosaicTableReference.js.map +1 -0
  521. package/dist/useVgPlotChartRender.d.ts.map +1 -1
  522. package/dist/useVgPlotChartRender.js +151 -25
  523. package/dist/useVgPlotChartRender.js.map +1 -1
  524. package/dist/useVgPlotChartRetention.d.ts +11 -0
  525. package/dist/useVgPlotChartRetention.d.ts.map +1 -1
  526. package/dist/useVgPlotChartRetention.js.map +1 -1
  527. package/dist/utils/table-lookup.d.ts +7 -0
  528. package/dist/utils/table-lookup.d.ts.map +1 -0
  529. package/dist/utils/table-lookup.js +10 -0
  530. package/dist/utils/table-lookup.js.map +1 -0
  531. package/package.json +14 -14
  532. package/dist/ai/ai.d.ts +0 -103
  533. package/dist/ai/ai.d.ts.map +0 -1
  534. package/dist/ai/ai.js +0 -419
  535. package/dist/ai/ai.js.map +0 -1
  536. package/dist/ai/data-table-explorer-tool.d.ts +0 -40
  537. package/dist/ai/data-table-explorer-tool.d.ts.map +0 -1
  538. package/dist/ai/data-table-explorer-tool.js +0 -75
  539. package/dist/ai/data-table-explorer-tool.js.map +0 -1
  540. package/dist/ai/list-panels-tool.d.ts +0 -35
  541. package/dist/ai/list-panels-tool.d.ts.map +0 -1
  542. package/dist/ai/list-panels-tool.js +0 -66
  543. package/dist/ai/list-panels-tool.js.map +0 -1
  544. package/dist/ai/remove-panel-tool.d.ts +0 -31
  545. package/dist/ai/remove-panel-tool.d.ts.map +0 -1
  546. package/dist/ai/remove-panel-tool.js +0 -55
  547. package/dist/ai/remove-panel-tool.js.map +0 -1
  548. package/dist/ai/tool-validation.d.ts +0 -3
  549. package/dist/ai/tool-validation.d.ts.map +0 -1
  550. package/dist/ai/tool-validation.js +0 -11
  551. package/dist/ai/tool-validation.js.map +0 -1
  552. package/dist/charts/chart-types/bubble-chart/BubbleChartSettings.d.ts +0 -3
  553. package/dist/charts/chart-types/bubble-chart/BubbleChartSettings.d.ts.map +0 -1
  554. package/dist/charts/chart-types/bubble-chart/BubbleChartSettings.js.map +0 -1
  555. package/dist/charts/chart-types/bubble-chart/definition.d.ts +0 -4
  556. package/dist/charts/chart-types/bubble-chart/definition.d.ts.map +0 -1
  557. package/dist/charts/chart-types/bubble-chart/definition.js +0 -24
  558. package/dist/charts/chart-types/bubble-chart/definition.js.map +0 -1
  559. package/dist/charts/chart-types/bubble-chart/schema.d.ts.map +0 -1
  560. package/dist/charts/chart-types/bubble-chart/schema.js.map +0 -1
  561. package/dist/charts/chart-types/bubble-chart/spec.d.ts +0 -4
  562. package/dist/charts/chart-types/bubble-chart/spec.d.ts.map +0 -1
  563. package/dist/charts/chart-types/bubble-chart/spec.js +0 -31
  564. package/dist/charts/chart-types/bubble-chart/spec.js.map +0 -1
  565. package/dist/charts/chart-types/bubble-chart/tool.d.ts +0 -42
  566. package/dist/charts/chart-types/bubble-chart/tool.d.ts.map +0 -1
  567. package/dist/charts/chart-types/bubble-chart/tool.js +0 -66
  568. package/dist/charts/chart-types/bubble-chart/tool.js.map +0 -1
  569. package/dist/hooks/useDataTable.d.ts +0 -3
  570. package/dist/hooks/useDataTable.d.ts.map +0 -1
  571. package/dist/hooks/useDataTable.js +0 -28
  572. package/dist/hooks/useDataTable.js.map +0 -1
@@ -0,0 +1,59 @@
1
+ import { tool } from 'ai';
2
+ import { z } from 'zod';
3
+ const AddMosaicDashboardBlockToolInput = z.object({
4
+ reasoning: z.string().describe('Brief rationale for dashboard block choice.'),
5
+ dashboardTitle: z.string().describe('The title of the dashboard.'),
6
+ tableName: z.string().describe('The name of the table/dataset to analyze.'),
7
+ intent: z
8
+ .string()
9
+ .optional()
10
+ .describe('Optional natural-language objective for this dashboard block.'),
11
+ });
12
+ /**
13
+ * Creates a tool for adding an empty Mosaic dashboard block to a block document.
14
+ */
15
+ export function createAddMosaicDashboardBlockTool({ blockDocumentAdapter, blockDocumentId, addDashboardBlock, createDashboardBlock, }) {
16
+ return tool({
17
+ description: `Create an EMPTY Mosaic dashboard block container in the block document.
18
+
19
+ This tool ONLY creates the container structure. To populate it with charts and panels, use other tools afterward.`,
20
+ inputSchema: AddMosaicDashboardBlockToolInput,
21
+ execute: async ({ dashboardTitle, tableName, intent }) => {
22
+ try {
23
+ if (addDashboardBlock) {
24
+ const result = await addDashboardBlock({
25
+ title: dashboardTitle,
26
+ tableName,
27
+ intent,
28
+ });
29
+ return {
30
+ success: true,
31
+ dashboardId: result.dashboardId,
32
+ blockId: result.blockId,
33
+ message: 'Added Mosaic dashboard block to block document',
34
+ };
35
+ }
36
+ blockDocumentAdapter.ensureBlockDocument(blockDocumentId);
37
+ const { dashboardId, block } = await createDashboardBlock({
38
+ title: dashboardTitle,
39
+ tableName,
40
+ intent,
41
+ });
42
+ const blockId = await blockDocumentAdapter.addBlock(blockDocumentId, block);
43
+ return {
44
+ success: true,
45
+ dashboardId,
46
+ blockId,
47
+ message: 'Added Mosaic dashboard block to block document',
48
+ };
49
+ }
50
+ catch (error) {
51
+ return {
52
+ success: false,
53
+ errorMessage: error instanceof Error ? error.message : String(error),
54
+ };
55
+ }
56
+ },
57
+ });
58
+ }
59
+ //# sourceMappingURL=createAddMosaicDashboardBlockTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createAddMosaicDashboardBlockTool.js","sourceRoot":"","sources":["../../../src/ai/block-document/createAddMosaicDashboardBlockTool.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,IAAI,EAAC,MAAM,IAAI,CAAC;AACxB,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAGtB,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;IAC7E,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IAClE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IAC3E,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+DAA+D,CAAC;CAC7E,CAAC,CAAC;AAoCH;;GAEG;AACH,MAAM,UAAU,iCAAiC,CAAC,EAChD,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,GACqB;IACzC,OAAO,IAAI,CAGT;QACA,WAAW,EAAE;;kHAEiG;QAC9G,WAAW,EAAE,gCAAgC;QAC7C,OAAO,EAAE,KAAK,EAAE,EAAC,cAAc,EAAE,SAAS,EAAE,MAAM,EAAC,EAAE,EAAE;YACrD,IAAI,CAAC;gBACH,IAAI,iBAAiB,EAAE,CAAC;oBACtB,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;wBACrC,KAAK,EAAE,cAAc;wBACrB,SAAS;wBACT,MAAM;qBACP,CAAC,CAAC;oBACH,OAAO;wBACL,OAAO,EAAE,IAAI;wBACb,WAAW,EAAE,MAAM,CAAC,WAAW;wBAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,OAAO,EAAE,gDAAgD;qBAC1D,CAAC;gBACJ,CAAC;gBAED,oBAAoB,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC;gBAC1D,MAAM,EAAC,WAAW,EAAE,KAAK,EAAC,GAAG,MAAM,oBAAoB,CAAC;oBACtD,KAAK,EAAE,cAAc;oBACrB,SAAS;oBACT,MAAM;iBACP,CAAC,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CACjD,eAAe,EACf,KAAK,CACN,CAAC;gBAEF,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,WAAW;oBACX,OAAO;oBACP,OAAO,EAAE,gDAAgD;iBAC1D,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBACrE,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;AACL,CAAC","sourcesContent":["import type {\n BlockDocumentAiAdapter,\n BlockDocumentStatefulBlockBlock,\n} from '@sqlrooms/documents';\nimport {tool} from 'ai';\nimport {z} from 'zod';\nimport type {ToolOutput} from '../tool-types';\n\nconst AddMosaicDashboardBlockToolInput = z.object({\n reasoning: z.string().describe('Brief rationale for dashboard block choice.'),\n dashboardTitle: z.string().describe('The title of the dashboard.'),\n tableName: z.string().describe('The name of the table/dataset to analyze.'),\n intent: z\n .string()\n .optional()\n .describe('Optional natural-language objective for this dashboard block.'),\n});\n\ntype AddMosaicDashboardBlockToolInput = z.infer<\n typeof AddMosaicDashboardBlockToolInput\n>;\n\ntype AddMosaicDashboardBlockToolOutput = ToolOutput<{\n dashboardId?: string;\n blockId?: string;\n message?: string;\n}>;\n\n/**\n * Options for creating a Mosaic dashboard block-document tool.\n */\nexport type CreateAddMosaicDashboardBlockToolOptions = {\n /** Adapter for block document operations. */\n blockDocumentAdapter: BlockDocumentAiAdapter;\n /** ID of the block document where dashboard blocks will be added. */\n blockDocumentId: string;\n /** Host callback that performs the full durable block creation. */\n addDashboardBlock?: (params: {\n title: string;\n tableName: string;\n intent?: string;\n }) => Promise<{dashboardId: string; blockId: string}>;\n /** Host callback that creates Mosaic dashboard state and its document block. */\n createDashboardBlock: (params: {\n title: string;\n tableName: string;\n intent?: string;\n }) =>\n | {dashboardId: string; block: BlockDocumentStatefulBlockBlock}\n | Promise<{dashboardId: string; block: BlockDocumentStatefulBlockBlock}>;\n};\n\n/**\n * Creates a tool for adding an empty Mosaic dashboard block to a block document.\n */\nexport function createAddMosaicDashboardBlockTool({\n blockDocumentAdapter,\n blockDocumentId,\n addDashboardBlock,\n createDashboardBlock,\n}: CreateAddMosaicDashboardBlockToolOptions) {\n return tool<\n AddMosaicDashboardBlockToolInput,\n AddMosaicDashboardBlockToolOutput\n >({\n description: `Create an EMPTY Mosaic dashboard block container in the block document.\n\nThis tool ONLY creates the container structure. To populate it with charts and panels, use other tools afterward.`,\n inputSchema: AddMosaicDashboardBlockToolInput,\n execute: async ({dashboardTitle, tableName, intent}) => {\n try {\n if (addDashboardBlock) {\n const result = await addDashboardBlock({\n title: dashboardTitle,\n tableName,\n intent,\n });\n return {\n success: true,\n dashboardId: result.dashboardId,\n blockId: result.blockId,\n message: 'Added Mosaic dashboard block to block document',\n };\n }\n\n blockDocumentAdapter.ensureBlockDocument(blockDocumentId);\n const {dashboardId, block} = await createDashboardBlock({\n title: dashboardTitle,\n tableName,\n intent,\n });\n const blockId = await blockDocumentAdapter.addBlock(\n blockDocumentId,\n block,\n );\n\n return {\n success: true,\n dashboardId,\n blockId,\n message: 'Added Mosaic dashboard block to block document',\n };\n } catch (error) {\n return {\n success: false,\n errorMessage: error instanceof Error ? error.message : String(error),\n };\n }\n },\n });\n}\n"]}
@@ -0,0 +1,19 @@
1
+ import type { Tool } from 'ai';
2
+ import { type BlockDocumentAiAdapter } from '@sqlrooms/documents';
3
+ import type { DatabaseAiAdapter } from '../database-types';
4
+ import type { ChartToolsOptions } from '../types';
5
+ /**
6
+ * Parameters for creating Mosaic chart tools that append chart blocks to a
7
+ * block document.
8
+ */
9
+ export type CreateBlockDocumentChartToolsParams = {
10
+ databaseAdapter: DatabaseAiAdapter;
11
+ blockDocumentAdapter: BlockDocumentAiAdapter;
12
+ blockDocumentId: string;
13
+ chartToolsOptions?: ChartToolsOptions;
14
+ };
15
+ /**
16
+ * Creates AI tools for generating Mosaic chart blocks in a block document.
17
+ */
18
+ export declare function createBlockDocumentChartTools({ databaseAdapter, blockDocumentAdapter, blockDocumentId, chartToolsOptions, }: CreateBlockDocumentChartToolsParams): Record<string, Tool>;
19
+ //# sourceMappingURL=createBlockDocumentChartTools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createBlockDocumentChartTools.d.ts","sourceRoot":"","sources":["../../../src/ai/block-document/createBlockDocumentChartTools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,IAAI,CAAC;AAC7B,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,qBAAqB,CAAC;AAG7B,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,UAAU,CAAC;AAMhD;;;GAGG;AACH,MAAM,MAAM,mCAAmC,GAAG;IAChD,eAAe,EAAE,iBAAiB,CAAC;IACnC,oBAAoB,EAAE,sBAAsB,CAAC;IAC7C,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,EAC5C,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,iBAAiB,GAClB,EAAE,mCAAmC,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAwC5D"}
@@ -0,0 +1,37 @@
1
+ import { createDefaultBlockDocumentBlockId, } from '@sqlrooms/documents';
2
+ import { createChartTools } from '../../charts/chart-types/createChartTools';
3
+ import { DEFAULT_CHART_MAX_DATA_POINTS } from '../constants';
4
+ import { resolveChartTypes } from '../../charts/chart-types/resolveChartTypes';
5
+ import { BLOCK_DOCUMENT_CHART_TOOL_PREFIX } from './constants';
6
+ import { getMosaicTableIdentity } from '../../mosaicTableReference';
7
+ /**
8
+ * Creates AI tools for generating Mosaic chart blocks in a block document.
9
+ */
10
+ export function createBlockDocumentChartTools({ databaseAdapter, blockDocumentAdapter, blockDocumentId, chartToolsOptions, }) {
11
+ const resolvedChartTypes = resolveChartTypes(chartToolsOptions?.chartTypes);
12
+ const chartToolParams = {
13
+ maxDataPoints: chartToolsOptions?.chartMaxDataPoints ?? DEFAULT_CHART_MAX_DATA_POINTS,
14
+ databaseAdapter,
15
+ addChart: ({ config, tableName, title }) => {
16
+ if (!tableName) {
17
+ throw new Error('tableName is required for block document chart blocks but was empty or undefined');
18
+ }
19
+ const resolvedTable = databaseAdapter.findTable(tableName);
20
+ const tableIdentity = resolvedTable?.table
21
+ ? getMosaicTableIdentity(resolvedTable.table)
22
+ : getMosaicTableIdentity(tableName);
23
+ if (!tableIdentity) {
24
+ throw new Error('tableName is required for block document chart blocks but was empty or undefined');
25
+ }
26
+ return blockDocumentAdapter.addBlock(blockDocumentId, {
27
+ type: 'chart',
28
+ id: createDefaultBlockDocumentBlockId(),
29
+ config,
30
+ tableName: tableIdentity,
31
+ caption: title ?? 'Chart',
32
+ });
33
+ },
34
+ };
35
+ return createChartTools(resolvedChartTypes, chartToolParams, BLOCK_DOCUMENT_CHART_TOOL_PREFIX);
36
+ }
37
+ //# sourceMappingURL=createBlockDocumentChartTools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createBlockDocumentChartTools.js","sourceRoot":"","sources":["../../../src/ai/block-document/createBlockDocumentChartTools.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iCAAiC,GAElC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,gBAAgB,EAAC,MAAM,2CAA2C,CAAC;AAI3E,OAAO,EAAC,6BAA6B,EAAC,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAC,iBAAiB,EAAC,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAC,gCAAgC,EAAC,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAC,sBAAsB,EAAC,MAAM,4BAA4B,CAAC;AAalE;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAAC,EAC5C,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,iBAAiB,GACmB;IACpC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAE5E,MAAM,eAAe,GAAoB;QACvC,aAAa,EACX,iBAAiB,EAAE,kBAAkB,IAAI,6BAA6B;QACxE,eAAe;QACf,QAAQ,EAAE,CAAC,EAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAC,EAAE,EAAE;YACvC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;YACJ,CAAC;YAED,MAAM,aAAa,GAAG,eAAe,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YAC3D,MAAM,aAAa,GAAG,aAAa,EAAE,KAAK;gBACxC,CAAC,CAAC,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC;gBAC7C,CAAC,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;YAEtC,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;YACJ,CAAC;YAED,OAAO,oBAAoB,CAAC,QAAQ,CAAC,eAAe,EAAE;gBACpD,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,iCAAiC,EAAE;gBACvC,MAAM;gBACN,SAAS,EAAE,aAAa;gBACxB,OAAO,EAAE,KAAK,IAAI,OAAO;aAC1B,CAAC,CAAC;QACL,CAAC;KACF,CAAC;IAEF,OAAO,gBAAgB,CACrB,kBAAkB,EAClB,eAAe,EACf,gCAAgC,CACjC,CAAC;AACJ,CAAC","sourcesContent":["import type {Tool} from 'ai';\nimport {\n createDefaultBlockDocumentBlockId,\n type BlockDocumentAiAdapter,\n} from '@sqlrooms/documents';\nimport {createChartTools} from '../../charts/chart-types/createChartTools';\nimport type {ChartToolParams} from '../../charts/chart-types/tool-types';\nimport type {DatabaseAiAdapter} from '../database-types';\nimport type {ChartToolsOptions} from '../types';\nimport {DEFAULT_CHART_MAX_DATA_POINTS} from '../constants';\nimport {resolveChartTypes} from '../../charts/chart-types/resolveChartTypes';\nimport {BLOCK_DOCUMENT_CHART_TOOL_PREFIX} from './constants';\nimport {getMosaicTableIdentity} from '../../mosaicTableReference';\n\n/**\n * Parameters for creating Mosaic chart tools that append chart blocks to a\n * block document.\n */\nexport type CreateBlockDocumentChartToolsParams = {\n databaseAdapter: DatabaseAiAdapter;\n blockDocumentAdapter: BlockDocumentAiAdapter;\n blockDocumentId: string;\n chartToolsOptions?: ChartToolsOptions;\n};\n\n/**\n * Creates AI tools for generating Mosaic chart blocks in a block document.\n */\nexport function createBlockDocumentChartTools({\n databaseAdapter,\n blockDocumentAdapter,\n blockDocumentId,\n chartToolsOptions,\n}: CreateBlockDocumentChartToolsParams): Record<string, Tool> {\n const resolvedChartTypes = resolveChartTypes(chartToolsOptions?.chartTypes);\n\n const chartToolParams: ChartToolParams = {\n maxDataPoints:\n chartToolsOptions?.chartMaxDataPoints ?? DEFAULT_CHART_MAX_DATA_POINTS,\n databaseAdapter,\n addChart: ({config, tableName, title}) => {\n if (!tableName) {\n throw new Error(\n 'tableName is required for block document chart blocks but was empty or undefined',\n );\n }\n\n const resolvedTable = databaseAdapter.findTable(tableName);\n const tableIdentity = resolvedTable?.table\n ? getMosaicTableIdentity(resolvedTable.table)\n : getMosaicTableIdentity(tableName);\n\n if (!tableIdentity) {\n throw new Error(\n 'tableName is required for block document chart blocks but was empty or undefined',\n );\n }\n\n return blockDocumentAdapter.addBlock(blockDocumentId, {\n type: 'chart',\n id: createDefaultBlockDocumentBlockId(),\n config,\n tableName: tableIdentity,\n caption: title ?? 'Chart',\n });\n },\n };\n\n return createChartTools(\n resolvedChartTypes,\n chartToolParams,\n BLOCK_DOCUMENT_CHART_TOOL_PREFIX,\n );\n}\n"]}
@@ -0,0 +1,32 @@
1
+ import type { Tool } from 'ai';
2
+ import type { BlockDocumentAiAdapter, BlockDocumentStatefulBlockBlock } from '@sqlrooms/documents';
3
+ import type { DatabaseAiAdapter } from '../database-types';
4
+ /**
5
+ * Parameters for creating a Mosaic data-table explorer block-document tool.
6
+ */
7
+ export type CreateBlockDocumentDataTableExplorerToolParams = {
8
+ /** Database adapter for table validation and column information. */
9
+ databaseAdapter: DatabaseAiAdapter;
10
+ /** Adapter for block document operations. */
11
+ blockDocumentAdapter: BlockDocumentAiAdapter;
12
+ /** ID of the block document where data-table explorer blocks will be added. */
13
+ blockDocumentId: string;
14
+ /** Host callback that performs the full durable block creation. */
15
+ addDataTableExplorerBlock?: (params: {
16
+ title: string;
17
+ tableName: string;
18
+ intent?: string;
19
+ }) => Promise<unknown>;
20
+ /** Host callback that creates the data-table explorer stateful block. */
21
+ createDataTableExplorerBlock: (params: {
22
+ title: string;
23
+ tableName: string;
24
+ intent?: string;
25
+ }) => BlockDocumentStatefulBlockBlock | Promise<BlockDocumentStatefulBlockBlock>;
26
+ };
27
+ /**
28
+ * Creates an AI tool for adding Mosaic data-table explorer blocks to a block
29
+ * document.
30
+ */
31
+ export declare function createBlockDocumentDataTableExplorerTool({ blockDocumentAdapter, databaseAdapter, blockDocumentId, addDataTableExplorerBlock, createDataTableExplorerBlock, }: CreateBlockDocumentDataTableExplorerToolParams): Tool;
32
+ //# sourceMappingURL=createBlockDocumentDataTableExplorerTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createBlockDocumentDataTableExplorerTool.d.ts","sourceRoot":"","sources":["../../../src/ai/block-document/createBlockDocumentDataTableExplorerTool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,IAAI,CAAC;AAC7B,OAAO,KAAK,EACV,sBAAsB,EACtB,+BAA+B,EAChC,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAGzD;;GAEG;AACH,MAAM,MAAM,8CAA8C,GAAG;IAC3D,oEAAoE;IACpE,eAAe,EAAE,iBAAiB,CAAC;IACnC,6CAA6C;IAC7C,oBAAoB,EAAE,sBAAsB,CAAC;IAC7C,+EAA+E;IAC/E,eAAe,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,yBAAyB,CAAC,EAAE,CAAC,MAAM,EAAE;QACnC,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACvB,yEAAyE;IACzE,4BAA4B,EAAE,CAAC,MAAM,EAAE;QACrC,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,KACG,+BAA+B,GAC/B,OAAO,CAAC,+BAA+B,CAAC,CAAC;CAC9C,CAAC;AAEF;;;GAGG;AACH,wBAAgB,wCAAwC,CAAC,EACvD,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,yBAAyB,EACzB,4BAA4B,GAC7B,EAAE,8CAA8C,GAAG,IAAI,CAwCvD"}
@@ -0,0 +1,37 @@
1
+ import { createDataTableExplorerTool } from '../createDataTableExplorerTool';
2
+ import { getMosaicTableIdentity } from '../../mosaicTableReference';
3
+ /**
4
+ * Creates an AI tool for adding Mosaic data-table explorer blocks to a block
5
+ * document.
6
+ */
7
+ export function createBlockDocumentDataTableExplorerTool({ blockDocumentAdapter, databaseAdapter, blockDocumentId, addDataTableExplorerBlock, createDataTableExplorerBlock, }) {
8
+ return createDataTableExplorerTool({
9
+ databaseAdapter,
10
+ addDataTable: async ({ title, tableName, intent }) => {
11
+ if (!tableName) {
12
+ throw new Error('Table name is required to add a data table explorer block');
13
+ }
14
+ blockDocumentAdapter.ensureBlockDocument(blockDocumentId);
15
+ const resolvedTable = databaseAdapter.findTable(tableName);
16
+ const tableIdentity = resolvedTable?.table
17
+ ? getMosaicTableIdentity(resolvedTable.table)
18
+ : getMosaicTableIdentity(tableName);
19
+ if (!tableIdentity) {
20
+ throw new Error('Table name is required to add a data table explorer block');
21
+ }
22
+ if (addDataTableExplorerBlock) {
23
+ return await addDataTableExplorerBlock({
24
+ title: title ?? 'Data Table Explorer',
25
+ tableName: tableIdentity,
26
+ intent,
27
+ });
28
+ }
29
+ await blockDocumentAdapter.addBlock(blockDocumentId, await createDataTableExplorerBlock({
30
+ title: title ?? 'Data Table Explorer',
31
+ tableName: tableIdentity,
32
+ intent,
33
+ }));
34
+ },
35
+ });
36
+ }
37
+ //# sourceMappingURL=createBlockDocumentDataTableExplorerTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createBlockDocumentDataTableExplorerTool.js","sourceRoot":"","sources":["../../../src/ai/block-document/createBlockDocumentDataTableExplorerTool.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,2BAA2B,EAAC,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAC,sBAAsB,EAAC,MAAM,4BAA4B,CAAC;AA4BlE;;;GAGG;AACH,MAAM,UAAU,wCAAwC,CAAC,EACvD,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,yBAAyB,EACzB,4BAA4B,GACmB;IAC/C,OAAO,2BAA2B,CAAC;QACjC,eAAe;QACf,YAAY,EAAE,KAAK,EAAE,EAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAC,EAAE,EAAE;YACjD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;YACJ,CAAC;YAED,oBAAoB,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC;YAC1D,MAAM,aAAa,GAAG,eAAe,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YAC3D,MAAM,aAAa,GAAG,aAAa,EAAE,KAAK;gBACxC,CAAC,CAAC,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC;gBAC7C,CAAC,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;YAEtC,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;YACJ,CAAC;YAED,IAAI,yBAAyB,EAAE,CAAC;gBAC9B,OAAO,MAAM,yBAAyB,CAAC;oBACrC,KAAK,EAAE,KAAK,IAAI,qBAAqB;oBACrC,SAAS,EAAE,aAAa;oBACxB,MAAM;iBACP,CAAC,CAAC;YACL,CAAC;YAED,MAAM,oBAAoB,CAAC,QAAQ,CACjC,eAAe,EACf,MAAM,4BAA4B,CAAC;gBACjC,KAAK,EAAE,KAAK,IAAI,qBAAqB;gBACrC,SAAS,EAAE,aAAa;gBACxB,MAAM;aACP,CAAC,CACH,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC","sourcesContent":["import type {Tool} from 'ai';\nimport type {\n BlockDocumentAiAdapter,\n BlockDocumentStatefulBlockBlock,\n} from '@sqlrooms/documents';\nimport {createDataTableExplorerTool} from '../createDataTableExplorerTool';\nimport type {DatabaseAiAdapter} from '../database-types';\nimport {getMosaicTableIdentity} from '../../mosaicTableReference';\n\n/**\n * Parameters for creating a Mosaic data-table explorer block-document tool.\n */\nexport type CreateBlockDocumentDataTableExplorerToolParams = {\n /** Database adapter for table validation and column information. */\n databaseAdapter: DatabaseAiAdapter;\n /** Adapter for block document operations. */\n blockDocumentAdapter: BlockDocumentAiAdapter;\n /** ID of the block document where data-table explorer blocks will be added. */\n blockDocumentId: string;\n /** Host callback that performs the full durable block creation. */\n addDataTableExplorerBlock?: (params: {\n title: string;\n tableName: string;\n intent?: string;\n }) => Promise<unknown>;\n /** Host callback that creates the data-table explorer stateful block. */\n createDataTableExplorerBlock: (params: {\n title: string;\n tableName: string;\n intent?: string;\n }) =>\n | BlockDocumentStatefulBlockBlock\n | Promise<BlockDocumentStatefulBlockBlock>;\n};\n\n/**\n * Creates an AI tool for adding Mosaic data-table explorer blocks to a block\n * document.\n */\nexport function createBlockDocumentDataTableExplorerTool({\n blockDocumentAdapter,\n databaseAdapter,\n blockDocumentId,\n addDataTableExplorerBlock,\n createDataTableExplorerBlock,\n}: CreateBlockDocumentDataTableExplorerToolParams): Tool {\n return createDataTableExplorerTool({\n databaseAdapter,\n addDataTable: async ({title, tableName, intent}) => {\n if (!tableName) {\n throw new Error(\n 'Table name is required to add a data table explorer block',\n );\n }\n\n blockDocumentAdapter.ensureBlockDocument(blockDocumentId);\n const resolvedTable = databaseAdapter.findTable(tableName);\n const tableIdentity = resolvedTable?.table\n ? getMosaicTableIdentity(resolvedTable.table)\n : getMosaicTableIdentity(tableName);\n\n if (!tableIdentity) {\n throw new Error(\n 'Table name is required to add a data table explorer block',\n );\n }\n\n if (addDataTableExplorerBlock) {\n return await addDataTableExplorerBlock({\n title: title ?? 'Data Table Explorer',\n tableName: tableIdentity,\n intent,\n });\n }\n\n await blockDocumentAdapter.addBlock(\n blockDocumentId,\n await createDataTableExplorerBlock({\n title: title ?? 'Data Table Explorer',\n tableName: tableIdentity,\n intent,\n }),\n );\n },\n });\n}\n"]}
@@ -0,0 +1,3 @@
1
+ export declare const MAP_TOOL_KEY = "create_dashboard_map";
2
+ export declare const DEFAULT_CHART_MAX_DATA_POINTS = 10000;
3
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/ai/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,yBAAyB,CAAC;AAEnD,eAAO,MAAM,6BAA6B,QAAQ,CAAC"}
@@ -0,0 +1,3 @@
1
+ export const MAP_TOOL_KEY = 'create_dashboard_map';
2
+ export const DEFAULT_CHART_MAX_DATA_POINTS = 10000;
3
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/ai/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,sBAAsB,CAAC;AAEnD,MAAM,CAAC,MAAM,6BAA6B,GAAG,KAAK,CAAC","sourcesContent":["export const MAP_TOOL_KEY = 'create_dashboard_map';\n\nexport const DEFAULT_CHART_MAX_DATA_POINTS = 10000;\n"]}
@@ -0,0 +1,69 @@
1
+ import { z } from 'zod';
2
+ import { DatabaseAiAdapter } from './database-types';
3
+ /**
4
+ * Parameters for creating a Data Table Explorer panel.
5
+ */
6
+ export declare const DataTableExplorerParameters: z.ZodObject<{
7
+ tableName: z.ZodOptional<z.ZodString>;
8
+ title: z.ZodDefault<z.ZodOptional<z.ZodString>>;
9
+ intent: z.ZodOptional<z.ZodString>;
10
+ }, z.core.$strip>;
11
+ /**
12
+ * Inferred type for Data Table Explorer parameters.
13
+ */
14
+ export type DataTableExplorerParameters = z.infer<typeof DataTableExplorerParameters>;
15
+ /**
16
+ * Tool input schema including reasoning and explorer parameters.
17
+ */
18
+ export declare const DataTableExplorerToolInput: z.ZodObject<{
19
+ tableName: z.ZodOptional<z.ZodString>;
20
+ title: z.ZodDefault<z.ZodOptional<z.ZodString>>;
21
+ intent: z.ZodOptional<z.ZodString>;
22
+ reasoning: z.ZodString;
23
+ }, z.core.$strip>;
24
+ /**
25
+ * Inferred type for Data Table Explorer tool input.
26
+ */
27
+ export type DataTableExplorerToolInput = z.infer<typeof DataTableExplorerToolInput>;
28
+ /**
29
+ * Options for creating the Data Table Explorer tool.
30
+ */
31
+ export type CreateDataTableExplorerToolOptions = {
32
+ databaseAdapter: DatabaseAiAdapter;
33
+ addDataTable(params: DataTableExplorerParameters): unknown | Promise<unknown>;
34
+ };
35
+ /**
36
+ * Creates an AI tool for generating Data Table Explorer panels with schema and column statistics.
37
+ */
38
+ export declare function createDataTableExplorerTool({ databaseAdapter, addDataTable, }: CreateDataTableExplorerToolOptions): import("ai").Tool<{
39
+ title: string;
40
+ reasoning: string;
41
+ tableName?: string | undefined;
42
+ intent?: string | undefined;
43
+ }, {
44
+ llmResult: {
45
+ success: boolean;
46
+ details: string;
47
+ data: {
48
+ title: string;
49
+ reasoning: string;
50
+ tableName?: string | undefined;
51
+ intent?: string | undefined;
52
+ } | {
53
+ dataTable: {};
54
+ title: string;
55
+ reasoning: string;
56
+ tableName?: string | undefined;
57
+ intent?: string | undefined;
58
+ };
59
+ errorMessage?: undefined;
60
+ };
61
+ } | {
62
+ llmResult: {
63
+ success: boolean;
64
+ errorMessage: string;
65
+ details?: undefined;
66
+ data?: undefined;
67
+ };
68
+ }>;
69
+ //# sourceMappingURL=createDataTableExplorerTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDataTableExplorerTool.d.ts","sourceRoot":"","sources":["../../src/ai/createDataTableExplorerTool.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAEtB,OAAO,EAAC,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;iBAiBtC,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAC/C,OAAO,2BAA2B,CACnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;iBAKrC,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAC9C,OAAO,0BAA0B,CAClC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kCAAkC,GAAG;IAC/C,eAAe,EAAE,iBAAiB,CAAC;IACnC,YAAY,CAAC,MAAM,EAAE,2BAA2B,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/E,CAAC;AAEF;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,EAC1C,eAAe,EACf,YAAY,GACb,EAAE,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCpC"}
@@ -0,0 +1,68 @@
1
+ import { tool } from 'ai';
2
+ import { z } from 'zod';
3
+ import { ensureTable } from './tool-helpers';
4
+ /**
5
+ * Parameters for creating a Data Table Explorer panel.
6
+ */
7
+ export const DataTableExplorerParameters = z.object({
8
+ tableName: z
9
+ .string()
10
+ .min(1, 'tableName cannot be empty')
11
+ .optional()
12
+ .describe('Optional table name. Use when no table is selected yet.'),
13
+ title: z
14
+ .string()
15
+ .optional()
16
+ .default('Data Table Explorer')
17
+ .describe('Title for the Data Table Explorer panel.'),
18
+ intent: z
19
+ .string()
20
+ .optional()
21
+ .describe('Optional natural-language objective this Data Table Explorer should satisfy.'),
22
+ });
23
+ /**
24
+ * Tool input schema including reasoning and explorer parameters.
25
+ */
26
+ export const DataTableExplorerToolInput = z.object({
27
+ reasoning: z
28
+ .string()
29
+ .describe('Brief rationale for creating the Data Table Explorer.'),
30
+ ...DataTableExplorerParameters.shape,
31
+ });
32
+ /**
33
+ * Creates an AI tool for generating Data Table Explorer panels with schema and column statistics.
34
+ */
35
+ export function createDataTableExplorerTool({ databaseAdapter, addDataTable, }) {
36
+ return tool({
37
+ description: `Data Table Explorer: displays table schema and statistics for all columns (count, distinct values, min/max, etc.).
38
+
39
+ Use when: user asks to "profile the data", "show table statistics", "what's in this table", "summarize columns", "give me an overview of the data".
40
+
41
+ Useful for: quick data exploration, understanding data quality, finding missing values, identifying column types.`,
42
+ inputSchema: DataTableExplorerToolInput,
43
+ execute: async (params) => {
44
+ try {
45
+ if (params.tableName) {
46
+ ensureTable(databaseAdapter, params.tableName);
47
+ }
48
+ const dataTable = await addDataTable(params);
49
+ return {
50
+ llmResult: {
51
+ success: true,
52
+ details: `Created Data Table Explorer "${params.title}".`,
53
+ data: dataTable ? { ...params, dataTable } : params,
54
+ },
55
+ };
56
+ }
57
+ catch (error) {
58
+ return {
59
+ llmResult: {
60
+ success: false,
61
+ errorMessage: error instanceof Error ? error.message : String(error),
62
+ },
63
+ };
64
+ }
65
+ },
66
+ });
67
+ }
68
+ //# sourceMappingURL=createDataTableExplorerTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDataTableExplorerTool.js","sourceRoot":"","sources":["../../src/ai/createDataTableExplorerTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,IAAI,CAAC;AACxB,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAG3C;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,2BAA2B,CAAC;SACnC,QAAQ,EAAE;SACV,QAAQ,CAAC,yDAAyD,CAAC;IACtE,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,qBAAqB,CAAC;SAC9B,QAAQ,CAAC,0CAA0C,CAAC;IACvD,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,8EAA8E,CAC/E;CACJ,CAAC,CAAC;AASH;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,CAAC,uDAAuD,CAAC;IACpE,GAAG,2BAA2B,CAAC,KAAK;CACrC,CAAC,CAAC;AAiBH;;GAEG;AACH,MAAM,UAAU,2BAA2B,CAAC,EAC1C,eAAe,EACf,YAAY,GACuB;IACnC,OAAO,IAAI,CAAC;QACV,WAAW,EAAE;;;;kHAIiG;QAC9G,WAAW,EAAE,0BAA0B;QACvC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACxB,IAAI,CAAC;gBACH,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;oBACrB,WAAW,CAAC,eAAe,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;gBACjD,CAAC;gBAED,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;gBAE7C,OAAO;oBACL,SAAS,EAAE;wBACT,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,gCAAgC,MAAM,CAAC,KAAK,IAAI;wBACzD,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAC,GAAG,MAAM,EAAE,SAAS,EAAC,CAAC,CAAC,CAAC,MAAM;qBAClD;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,SAAS,EAAE;wBACT,OAAO,EAAE,KAAK;wBACd,YAAY,EACV,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;qBACzD;iBACF,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;AACL,CAAC","sourcesContent":["import {tool} from 'ai';\nimport {z} from 'zod';\nimport {ensureTable} from './tool-helpers';\nimport {DatabaseAiAdapter} from './database-types';\n\n/**\n * Parameters for creating a Data Table Explorer panel.\n */\nexport const DataTableExplorerParameters = z.object({\n tableName: z\n .string()\n .min(1, 'tableName cannot be empty')\n .optional()\n .describe('Optional table name. Use when no table is selected yet.'),\n title: z\n .string()\n .optional()\n .default('Data Table Explorer')\n .describe('Title for the Data Table Explorer panel.'),\n intent: z\n .string()\n .optional()\n .describe(\n 'Optional natural-language objective this Data Table Explorer should satisfy.',\n ),\n});\n\n/**\n * Inferred type for Data Table Explorer parameters.\n */\nexport type DataTableExplorerParameters = z.infer<\n typeof DataTableExplorerParameters\n>;\n\n/**\n * Tool input schema including reasoning and explorer parameters.\n */\nexport const DataTableExplorerToolInput = z.object({\n reasoning: z\n .string()\n .describe('Brief rationale for creating the Data Table Explorer.'),\n ...DataTableExplorerParameters.shape,\n});\n\n/**\n * Inferred type for Data Table Explorer tool input.\n */\nexport type DataTableExplorerToolInput = z.infer<\n typeof DataTableExplorerToolInput\n>;\n\n/**\n * Options for creating the Data Table Explorer tool.\n */\nexport type CreateDataTableExplorerToolOptions = {\n databaseAdapter: DatabaseAiAdapter;\n addDataTable(params: DataTableExplorerParameters): unknown | Promise<unknown>;\n};\n\n/**\n * Creates an AI tool for generating Data Table Explorer panels with schema and column statistics.\n */\nexport function createDataTableExplorerTool({\n databaseAdapter,\n addDataTable,\n}: CreateDataTableExplorerToolOptions) {\n return tool({\n description: `Data Table Explorer: displays table schema and statistics for all columns (count, distinct values, min/max, etc.).\n\nUse when: user asks to \"profile the data\", \"show table statistics\", \"what's in this table\", \"summarize columns\", \"give me an overview of the data\".\n\nUseful for: quick data exploration, understanding data quality, finding missing values, identifying column types.`,\n inputSchema: DataTableExplorerToolInput,\n execute: async (params) => {\n try {\n if (params.tableName) {\n ensureTable(databaseAdapter, params.tableName);\n }\n\n const dataTable = await addDataTable(params);\n\n return {\n llmResult: {\n success: true,\n details: `Created Data Table Explorer \"${params.title}\".`,\n data: dataTable ? {...params, dataTable} : params,\n },\n };\n } catch (error) {\n return {\n llmResult: {\n success: false,\n errorMessage:\n error instanceof Error ? error.message : String(error),\n },\n };\n }\n },\n });\n}\n"]}
@@ -0,0 +1,6 @@
1
+ export declare const DASHBOARD_CHART_TOOL_PREFIX = "create_dashboard_panel_";
2
+ export declare const KnownDashboardTools: {
3
+ readonly list_dashboard_panels: "list_dashboard_panels";
4
+ readonly create_dashboard_panel_data_table_explorer: "create_dashboard_panel_data_table_explorer";
5
+ };
6
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/ai/dashboard/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B,4BAA4B,CAAC;AAErE,eAAO,MAAM,mBAAmB;;;CAItB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export const DASHBOARD_CHART_TOOL_PREFIX = 'create_dashboard_panel_';
2
+ export const KnownDashboardTools = {
3
+ list_dashboard_panels: 'list_dashboard_panels',
4
+ create_dashboard_panel_data_table_explorer: 'create_dashboard_panel_data_table_explorer',
5
+ };
6
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/ai/dashboard/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,2BAA2B,GAAG,yBAAyB,CAAC;AAErE,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,qBAAqB,EAAE,uBAAuB;IAC9C,0CAA0C,EACxC,4CAA4C;CACtC,CAAC","sourcesContent":["export const DASHBOARD_CHART_TOOL_PREFIX = 'create_dashboard_panel_';\n\nexport const KnownDashboardTools = {\n list_dashboard_panels: 'list_dashboard_panels',\n create_dashboard_panel_data_table_explorer:\n 'create_dashboard_panel_data_table_explorer',\n} as const;\n"]}
@@ -0,0 +1,17 @@
1
+ import { type Tool } from 'ai';
2
+ import type { CreateDashboardAgentToolOptions } from './dashboard-types';
3
+ import { MosaicDashboardStoreState } from '../../dashboard/MosaicDashboardSlice';
4
+ /**
5
+ * Creates an AI agent tool for populating dashboards with charts and interactive panels.
6
+ * The agent explores data through queries and creates multiple panels showing different aspects.
7
+ *
8
+ * @template TState - Store state type extending MosaicDashboardStoreState
9
+ * @param options - Configuration options for the dashboard agent
10
+ * @param options.store - Zustand store instance for state management
11
+ * @param options.databaseAdapter - Adapter for database operations and queries
12
+ * @param options.chartToolsOptions - Optional chart configuration and type restrictions
13
+ * @param options.extraTools - Optional factory for additional custom tools (e.g., map panels)
14
+ * @returns Tool instance that orchestrates multi-turn dashboard creation via a ToolLoopAgent
15
+ */
16
+ export declare function createDashboardAgentTool<TState extends MosaicDashboardStoreState>(options: CreateDashboardAgentToolOptions<TState>): Tool;
17
+ //# sourceMappingURL=createDashboardAgentTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDashboardAgentTool.d.ts","sourceRoot":"","sources":["../../../src/ai/dashboard/createDashboardAgentTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,IAAI,EAAmC,MAAM,IAAI,CAAC;AAG/D,OAAO,KAAK,EACV,+BAA+B,EAEhC,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAC,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAqH/E;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,SAAS,yBAAyB,EACxC,OAAO,EAAE,+BAA+B,CAAC,MAAM,CAAC,GAAG,IAAI,CAyGxD"}