@lightdash/common 0.2083.0 → 0.2084.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 (109) hide show
  1. package/dist/cjs/ee/AiAgent/followUpTools.d.ts.map +1 -1
  2. package/dist/cjs/ee/AiAgent/followUpTools.js +1 -0
  3. package/dist/cjs/ee/AiAgent/followUpTools.js.map +1 -1
  4. package/dist/cjs/ee/AiAgent/index.d.ts +11 -6
  5. package/dist/cjs/ee/AiAgent/index.d.ts.map +1 -1
  6. package/dist/cjs/ee/AiAgent/index.js +3 -0
  7. package/dist/cjs/ee/AiAgent/index.js.map +1 -1
  8. package/dist/cjs/ee/AiAgent/schemas/index.d.ts +13631 -3
  9. package/dist/cjs/ee/AiAgent/schemas/index.d.ts.map +1 -1
  10. package/dist/cjs/ee/AiAgent/schemas/index.js +12 -1
  11. package/dist/cjs/ee/AiAgent/schemas/index.js.map +1 -1
  12. package/dist/cjs/ee/AiAgent/schemas/tools/index.d.ts +1 -0
  13. package/dist/cjs/ee/AiAgent/schemas/tools/index.d.ts.map +1 -1
  14. package/dist/cjs/ee/AiAgent/schemas/tools/index.js +1 -0
  15. package/dist/cjs/ee/AiAgent/schemas/tools/index.js.map +1 -1
  16. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +4369 -0
  17. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -0
  18. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.js +137 -0
  19. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.js.map +1 -0
  20. package/dist/cjs/ee/AiAgent/schemas/visualizations/index.d.ts +4 -4
  21. package/dist/cjs/ee/AiAgent/schemas/visualizations/index.d.ts.map +1 -1
  22. package/dist/cjs/ee/AiAgent/schemas/visualizations/index.js +3 -0
  23. package/dist/cjs/ee/AiAgent/schemas/visualizations/index.js.map +1 -1
  24. package/dist/cjs/ee/AiAgent/types.d.ts +5 -1
  25. package/dist/cjs/ee/AiAgent/types.d.ts.map +1 -1
  26. package/dist/cjs/ee/AiAgent/types.js +1 -0
  27. package/dist/cjs/ee/AiAgent/types.js.map +1 -1
  28. package/dist/cjs/ee/AiAgent/utils/chartConfigUtils.d.ts +26 -0
  29. package/dist/cjs/ee/AiAgent/utils/chartConfigUtils.d.ts.map +1 -0
  30. package/dist/cjs/ee/AiAgent/utils/chartConfigUtils.js +425 -0
  31. package/dist/cjs/ee/AiAgent/utils/chartConfigUtils.js.map +1 -0
  32. package/dist/cjs/ee/AiAgent/utils.d.ts +115 -0
  33. package/dist/cjs/ee/AiAgent/utils.d.ts.map +1 -1
  34. package/dist/cjs/ee/AiAgent/utils.js +24 -0
  35. package/dist/cjs/ee/AiAgent/utils.js.map +1 -1
  36. package/dist/cjs/index.d.ts +1 -0
  37. package/dist/cjs/index.d.ts.map +1 -1
  38. package/dist/cjs/index.js +1 -0
  39. package/dist/cjs/index.js.map +1 -1
  40. package/dist/cjs/utils/pivotData.d.ts +13 -0
  41. package/dist/cjs/utils/pivotData.d.ts.map +1 -0
  42. package/dist/cjs/utils/pivotData.js +50 -0
  43. package/dist/cjs/utils/pivotData.js.map +1 -0
  44. package/dist/esm/ee/AiAgent/followUpTools.d.ts.map +1 -1
  45. package/dist/esm/ee/AiAgent/followUpTools.js +1 -0
  46. package/dist/esm/ee/AiAgent/followUpTools.js.map +1 -1
  47. package/dist/esm/ee/AiAgent/index.d.ts +11 -6
  48. package/dist/esm/ee/AiAgent/index.d.ts.map +1 -1
  49. package/dist/esm/ee/AiAgent/index.js +3 -0
  50. package/dist/esm/ee/AiAgent/index.js.map +1 -1
  51. package/dist/esm/ee/AiAgent/schemas/index.d.ts +13631 -3
  52. package/dist/esm/ee/AiAgent/schemas/index.d.ts.map +1 -1
  53. package/dist/esm/ee/AiAgent/schemas/index.js +12 -1
  54. package/dist/esm/ee/AiAgent/schemas/index.js.map +1 -1
  55. package/dist/esm/ee/AiAgent/schemas/tools/index.d.ts +1 -0
  56. package/dist/esm/ee/AiAgent/schemas/tools/index.d.ts.map +1 -1
  57. package/dist/esm/ee/AiAgent/schemas/tools/index.js +1 -0
  58. package/dist/esm/ee/AiAgent/schemas/tools/index.js.map +1 -1
  59. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +4369 -0
  60. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -0
  61. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.js +133 -0
  62. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.js.map +1 -0
  63. package/dist/esm/ee/AiAgent/schemas/visualizations/index.d.ts +4 -4
  64. package/dist/esm/ee/AiAgent/schemas/visualizations/index.d.ts.map +1 -1
  65. package/dist/esm/ee/AiAgent/schemas/visualizations/index.js +3 -0
  66. package/dist/esm/ee/AiAgent/schemas/visualizations/index.js.map +1 -1
  67. package/dist/esm/ee/AiAgent/types.d.ts +5 -1
  68. package/dist/esm/ee/AiAgent/types.d.ts.map +1 -1
  69. package/dist/esm/ee/AiAgent/types.js +1 -0
  70. package/dist/esm/ee/AiAgent/types.js.map +1 -1
  71. package/dist/esm/ee/AiAgent/utils/chartConfigUtils.d.ts +26 -0
  72. package/dist/esm/ee/AiAgent/utils/chartConfigUtils.d.ts.map +1 -0
  73. package/dist/esm/ee/AiAgent/utils/chartConfigUtils.js +417 -0
  74. package/dist/esm/ee/AiAgent/utils/chartConfigUtils.js.map +1 -0
  75. package/dist/esm/ee/AiAgent/utils.d.ts +115 -0
  76. package/dist/esm/ee/AiAgent/utils.d.ts.map +1 -1
  77. package/dist/esm/ee/AiAgent/utils.js +25 -1
  78. package/dist/esm/ee/AiAgent/utils.js.map +1 -1
  79. package/dist/esm/index.d.ts +1 -0
  80. package/dist/esm/index.d.ts.map +1 -1
  81. package/dist/esm/index.js +1 -0
  82. package/dist/esm/index.js.map +1 -1
  83. package/dist/esm/utils/pivotData.d.ts +13 -0
  84. package/dist/esm/utils/pivotData.d.ts.map +1 -0
  85. package/dist/esm/utils/pivotData.js +46 -0
  86. package/dist/esm/utils/pivotData.js.map +1 -0
  87. package/dist/tsconfig.types.tsbuildinfo +1 -1
  88. package/dist/types/ee/AiAgent/followUpTools.d.ts.map +1 -1
  89. package/dist/types/ee/AiAgent/index.d.ts +11 -6
  90. package/dist/types/ee/AiAgent/index.d.ts.map +1 -1
  91. package/dist/types/ee/AiAgent/schemas/index.d.ts +13631 -3
  92. package/dist/types/ee/AiAgent/schemas/index.d.ts.map +1 -1
  93. package/dist/types/ee/AiAgent/schemas/tools/index.d.ts +1 -0
  94. package/dist/types/ee/AiAgent/schemas/tools/index.d.ts.map +1 -1
  95. package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +4369 -0
  96. package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -0
  97. package/dist/types/ee/AiAgent/schemas/visualizations/index.d.ts +4 -4
  98. package/dist/types/ee/AiAgent/schemas/visualizations/index.d.ts.map +1 -1
  99. package/dist/types/ee/AiAgent/types.d.ts +5 -1
  100. package/dist/types/ee/AiAgent/types.d.ts.map +1 -1
  101. package/dist/types/ee/AiAgent/utils/chartConfigUtils.d.ts +26 -0
  102. package/dist/types/ee/AiAgent/utils/chartConfigUtils.d.ts.map +1 -0
  103. package/dist/types/ee/AiAgent/utils.d.ts +115 -0
  104. package/dist/types/ee/AiAgent/utils.d.ts.map +1 -1
  105. package/dist/types/index.d.ts +1 -0
  106. package/dist/types/index.d.ts.map +1 -1
  107. package/dist/types/utils/pivotData.d.ts +13 -0
  108. package/dist/types/utils/pivotData.d.ts.map +1 -0
  109. package/package.json +1 -1
@@ -0,0 +1,425 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getChartConfigFromRunQuery = exports.formatPivotValueLabel = exports.formatFieldLabel = exports.getAvailableChartTypes = exports.canRenderAsChart = void 0;
4
+ const field_1 = require("../../../types/field");
5
+ const savedCharts_1 = require("../../../types/savedCharts");
6
+ const formatting_1 = require("../../../utils/formatting");
7
+ const item_1 = require("../../../utils/item");
8
+ /**
9
+ * Determines if a query can be rendered as a specific chart type
10
+ */
11
+ const canRenderAsChart = (chartType, metricQuery) => {
12
+ switch (chartType) {
13
+ case 'table':
14
+ return true; // Table can always render
15
+ case 'bar':
16
+ case 'horizontal':
17
+ case 'line':
18
+ case 'scatter':
19
+ // Charts require at least one dimension and one metric
20
+ return (metricQuery.dimensions.length > 0 &&
21
+ metricQuery.metrics.length > 0);
22
+ case 'pie':
23
+ case 'funnel':
24
+ // Pie and funnel charts require at least one dimension and one metric
25
+ return (metricQuery.dimensions.length > 0 &&
26
+ metricQuery.metrics.length > 0);
27
+ default:
28
+ return false;
29
+ }
30
+ };
31
+ exports.canRenderAsChart = canRenderAsChart;
32
+ /**
33
+ * Gets all available chart types for a query
34
+ */
35
+ const getAvailableChartTypes = (metricQuery) => {
36
+ const types = ['table'];
37
+ if (metricQuery.metrics.length > 0 && metricQuery.dimensions.length > 0) {
38
+ types.push('bar', 'horizontal', 'line', 'scatter', 'pie', 'funnel');
39
+ }
40
+ return types;
41
+ };
42
+ exports.getAvailableChartTypes = getAvailableChartTypes;
43
+ const formatFieldLabel = (fieldId, fieldsMap) => {
44
+ const field = fieldsMap[fieldId];
45
+ if (field && (0, field_1.isField)(field)) {
46
+ return (0, item_1.getItemLabelWithoutTableName)(field);
47
+ }
48
+ return (0, field_1.friendlyName)(fieldId);
49
+ };
50
+ exports.formatFieldLabel = formatFieldLabel;
51
+ const formatPivotValueLabel = (pivotReference, fieldsMap) => {
52
+ if (!pivotReference.pivotValues?.[0]) {
53
+ return '';
54
+ }
55
+ const pivotFieldId = pivotReference.pivotValues[0].field;
56
+ const pivotField = fieldsMap[pivotFieldId];
57
+ const pivotValue = pivotReference.pivotValues[0].value;
58
+ if (pivotField && (0, field_1.isField)(pivotField)) {
59
+ return (0, formatting_1.formatItemValue)(pivotField, pivotValue);
60
+ }
61
+ return (0, field_1.friendlyName)(String(pivotValue));
62
+ };
63
+ exports.formatPivotValueLabel = formatPivotValueLabel;
64
+ /**
65
+ * Generates bar chart echarts config
66
+ */
67
+ const getBarChartConfig = ({ queryTool, metricQuery, fieldsMap, chartConfig, metadata, }) => {
68
+ const { dimensions, metrics } = queryTool.queryConfig;
69
+ const xDimension = dimensions[0];
70
+ return {
71
+ type: savedCharts_1.ChartType.CARTESIAN,
72
+ config: {
73
+ layout: {
74
+ xField: xDimension,
75
+ yField: metricQuery.metrics,
76
+ },
77
+ eChartsConfig: {
78
+ ...(metadata.title ? { title: { text: metadata.title } } : {}),
79
+ legend: {
80
+ show: true,
81
+ type: 'scroll',
82
+ },
83
+ grid: { containLabel: true },
84
+ xAxis: [
85
+ {
86
+ type: chartConfig?.xAxisType ?? 'category',
87
+ ...(chartConfig?.xAxisLabel
88
+ ? { name: chartConfig.xAxisLabel }
89
+ : {}),
90
+ },
91
+ ],
92
+ yAxis: [
93
+ {
94
+ type: 'value',
95
+ ...(chartConfig?.yAxisLabel
96
+ ? { name: chartConfig.yAxisLabel }
97
+ : {}),
98
+ },
99
+ ],
100
+ series: metrics.map((metric) => {
101
+ const defaultProperties = {
102
+ type: savedCharts_1.CartesianSeriesType.BAR,
103
+ yAxisIndex: 0,
104
+ // ...(chartConfig?.stackBars && { stack: 'total' }),
105
+ };
106
+ if (typeof metric === 'string') {
107
+ return {
108
+ ...defaultProperties,
109
+ name: (0, exports.formatFieldLabel)(metric, fieldsMap),
110
+ encode: {
111
+ xRef: { field: xDimension },
112
+ yRef: { field: metric },
113
+ },
114
+ };
115
+ }
116
+ return {
117
+ ...defaultProperties,
118
+ name: (0, exports.formatPivotValueLabel)(metric, fieldsMap),
119
+ encode: {
120
+ xRef: { field: xDimension },
121
+ yRef: metric,
122
+ },
123
+ };
124
+ }),
125
+ },
126
+ },
127
+ };
128
+ };
129
+ /**
130
+ * Generates line chart echarts config
131
+ */
132
+ const getLineChartConfig = ({ queryTool, metricQuery, fieldsMap, chartConfig, metadata, }) => {
133
+ const { dimensions, metrics } = queryTool.queryConfig;
134
+ const xDimension = dimensions[0];
135
+ return {
136
+ type: savedCharts_1.ChartType.CARTESIAN,
137
+ config: {
138
+ layout: {
139
+ xField: xDimension,
140
+ yField: metricQuery.metrics,
141
+ },
142
+ eChartsConfig: {
143
+ ...(metadata.title ? { title: { text: metadata.title } } : {}),
144
+ legend: {
145
+ show: true,
146
+ type: 'scroll',
147
+ },
148
+ grid: { containLabel: true },
149
+ xAxis: [
150
+ {
151
+ type: 'time',
152
+ ...(chartConfig?.xAxisLabel
153
+ ? { name: chartConfig.xAxisLabel }
154
+ : {}),
155
+ },
156
+ ],
157
+ yAxis: [
158
+ {
159
+ type: 'value',
160
+ ...(chartConfig?.yAxisLabel
161
+ ? { name: chartConfig.yAxisLabel }
162
+ : {}),
163
+ },
164
+ ],
165
+ series: metrics.map((metric) => {
166
+ const defaultProperties = {
167
+ type: savedCharts_1.CartesianSeriesType.LINE,
168
+ yAxisIndex: 0,
169
+ ...(chartConfig?.lineType === 'area' && {
170
+ areaStyle: {},
171
+ }),
172
+ };
173
+ if (typeof metric === 'string') {
174
+ return {
175
+ ...defaultProperties,
176
+ name: (0, exports.formatFieldLabel)(metric, fieldsMap),
177
+ encode: {
178
+ xRef: { field: xDimension },
179
+ yRef: { field: metric },
180
+ },
181
+ };
182
+ }
183
+ return {
184
+ ...defaultProperties,
185
+ name: (0, exports.formatPivotValueLabel)(metric, fieldsMap),
186
+ encode: {
187
+ xRef: { field: xDimension },
188
+ yRef: metric,
189
+ },
190
+ };
191
+ }),
192
+ },
193
+ },
194
+ };
195
+ };
196
+ /**
197
+ * Generates horizontal bar chart echarts config
198
+ */
199
+ const getHorizontalBarChartConfig = ({ queryTool, metricQuery, fieldsMap, chartConfig, metadata, }) => {
200
+ const { dimensions, metrics } = queryTool.queryConfig;
201
+ const xDimension = dimensions[0];
202
+ return {
203
+ type: savedCharts_1.ChartType.CARTESIAN,
204
+ config: {
205
+ layout: {
206
+ xField: xDimension,
207
+ yField: metricQuery.metrics,
208
+ flipAxes: true, // This makes it horizontal
209
+ },
210
+ eChartsConfig: {
211
+ ...(metadata.title ? { title: { text: metadata.title } } : {}),
212
+ legend: {
213
+ show: true,
214
+ type: 'scroll',
215
+ },
216
+ grid: { containLabel: true },
217
+ xAxis: [
218
+ {
219
+ type: 'value',
220
+ ...(chartConfig?.xAxisLabel
221
+ ? { name: chartConfig.xAxisLabel }
222
+ : {}),
223
+ },
224
+ ],
225
+ yAxis: [
226
+ {
227
+ type: chartConfig?.xAxisType ?? 'category',
228
+ ...(chartConfig?.yAxisLabel
229
+ ? { name: chartConfig.yAxisLabel }
230
+ : {}),
231
+ },
232
+ ],
233
+ series: metrics.map((metric) => {
234
+ const defaultProperties = {
235
+ type: savedCharts_1.CartesianSeriesType.BAR,
236
+ yAxisIndex: 0,
237
+ };
238
+ if (typeof metric === 'string') {
239
+ return {
240
+ ...defaultProperties,
241
+ name: (0, exports.formatFieldLabel)(metric, fieldsMap),
242
+ encode: {
243
+ xRef: { field: xDimension },
244
+ yRef: { field: metric },
245
+ },
246
+ };
247
+ }
248
+ return {
249
+ ...defaultProperties,
250
+ name: (0, exports.formatPivotValueLabel)(metric, fieldsMap),
251
+ encode: {
252
+ xRef: { field: xDimension },
253
+ yRef: metric,
254
+ },
255
+ };
256
+ }),
257
+ },
258
+ },
259
+ };
260
+ };
261
+ /**
262
+ * Generates scatter chart echarts config
263
+ */
264
+ const getScatterChartConfig = ({ queryTool, metricQuery, fieldsMap, chartConfig, metadata, }) => {
265
+ const { dimensions, metrics } = queryTool.queryConfig;
266
+ const xDimension = dimensions[0];
267
+ return {
268
+ type: savedCharts_1.ChartType.CARTESIAN,
269
+ config: {
270
+ layout: {
271
+ xField: xDimension,
272
+ yField: metricQuery.metrics,
273
+ },
274
+ eChartsConfig: {
275
+ ...(metadata.title ? { title: { text: metadata.title } } : {}),
276
+ legend: {
277
+ show: true,
278
+ type: 'scroll',
279
+ },
280
+ grid: { containLabel: true },
281
+ xAxis: [
282
+ {
283
+ type: chartConfig?.xAxisType ?? 'category',
284
+ ...(chartConfig?.xAxisLabel
285
+ ? { name: chartConfig.xAxisLabel }
286
+ : {}),
287
+ },
288
+ ],
289
+ yAxis: [
290
+ {
291
+ type: 'value',
292
+ ...(chartConfig?.yAxisLabel
293
+ ? { name: chartConfig.yAxisLabel }
294
+ : {}),
295
+ },
296
+ ],
297
+ series: metrics.map((metric) => {
298
+ const defaultProperties = {
299
+ type: savedCharts_1.CartesianSeriesType.SCATTER,
300
+ yAxisIndex: 0,
301
+ // Scatter charts should show symbols by default
302
+ showSymbol: true,
303
+ };
304
+ if (typeof metric === 'string') {
305
+ return {
306
+ ...defaultProperties,
307
+ name: (0, exports.formatFieldLabel)(metric, fieldsMap),
308
+ encode: {
309
+ xRef: { field: xDimension },
310
+ yRef: { field: metric },
311
+ },
312
+ };
313
+ }
314
+ return {
315
+ ...defaultProperties,
316
+ name: (0, exports.formatPivotValueLabel)(metric, fieldsMap),
317
+ encode: {
318
+ xRef: { field: xDimension },
319
+ yRef: metric,
320
+ },
321
+ };
322
+ }),
323
+ },
324
+ },
325
+ };
326
+ };
327
+ /**
328
+ * Generates pie chart config
329
+ */
330
+ const getPieChartConfig = ({ queryTool, metricQuery, }) => {
331
+ const { dimensions } = queryTool.queryConfig;
332
+ const { metrics } = metricQuery;
333
+ const config = {
334
+ groupFieldIds: dimensions,
335
+ metricId: metrics[0],
336
+ };
337
+ return {
338
+ type: savedCharts_1.ChartType.PIE,
339
+ config,
340
+ };
341
+ };
342
+ /**
343
+ * Generates funnel chart config
344
+ */
345
+ const getFunnelChartConfig = ({ queryTool, metricQuery, }) => {
346
+ const { metrics } = metricQuery;
347
+ const { chartConfig } = queryTool;
348
+ let dataInput = savedCharts_1.FunnelChartDataInput.COLUMN;
349
+ if (chartConfig?.funnelDataInput === 'row') {
350
+ dataInput = savedCharts_1.FunnelChartDataInput.ROW;
351
+ }
352
+ return {
353
+ type: savedCharts_1.ChartType.FUNNEL,
354
+ config: {
355
+ fieldId: metrics[0],
356
+ dataInput,
357
+ },
358
+ };
359
+ };
360
+ /**
361
+ * Converts runQuery tool result to echarts config
362
+ * This is the main function used for chart type switching
363
+ */
364
+ const getChartConfigFromRunQuery = ({ queryTool, metricQuery, fieldsMap, overrideChartType, }) => {
365
+ const chartType = overrideChartType ?? queryTool.chartConfig?.defaultVizType ?? 'table';
366
+ if (!(0, exports.canRenderAsChart)(chartType, metricQuery)) {
367
+ // Fallback to table if chart type is not valid
368
+ return { type: savedCharts_1.ChartType.TABLE };
369
+ }
370
+ const { chartConfig } = queryTool;
371
+ const metadata = {
372
+ title: queryTool.title,
373
+ description: queryTool.description,
374
+ };
375
+ switch (chartType) {
376
+ case 'table':
377
+ return { type: savedCharts_1.ChartType.TABLE };
378
+ case 'bar':
379
+ return getBarChartConfig({
380
+ queryTool,
381
+ metricQuery,
382
+ fieldsMap,
383
+ chartConfig,
384
+ metadata,
385
+ });
386
+ case 'horizontal':
387
+ return getHorizontalBarChartConfig({
388
+ queryTool,
389
+ metricQuery,
390
+ fieldsMap,
391
+ chartConfig,
392
+ metadata,
393
+ });
394
+ case 'line':
395
+ return getLineChartConfig({
396
+ queryTool,
397
+ metricQuery,
398
+ fieldsMap,
399
+ chartConfig,
400
+ metadata,
401
+ });
402
+ case 'scatter':
403
+ return getScatterChartConfig({
404
+ queryTool,
405
+ metricQuery,
406
+ fieldsMap,
407
+ chartConfig,
408
+ metadata,
409
+ });
410
+ case 'pie':
411
+ return getPieChartConfig({
412
+ queryTool,
413
+ metricQuery,
414
+ });
415
+ case 'funnel':
416
+ return getFunnelChartConfig({
417
+ queryTool,
418
+ metricQuery,
419
+ });
420
+ default:
421
+ throw new Error(`Unknown chart type: ${chartType}`);
422
+ }
423
+ };
424
+ exports.getChartConfigFromRunQuery = getChartConfigFromRunQuery;
425
+ //# sourceMappingURL=chartConfigUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chartConfigUtils.js","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/utils/chartConfigUtils.ts"],"names":[],"mappings":";;;AACA,gDAA6D;AAS7D,4DAIoC;AACpC,0DAA4D;AAC5D,8CAAmE;AAmBnE;;GAEG;AACI,MAAM,gBAAgB,GAAG,CAC5B,SAA0B,EAC1B,WAAwB,EACjB,EAAE;IACT,QAAQ,SAAS,EAAE,CAAC;QAChB,KAAK,OAAO;YACR,OAAO,IAAI,CAAC,CAAC,0BAA0B;QAC3C,KAAK,KAAK,CAAC;QACX,KAAK,YAAY,CAAC;QAClB,KAAK,MAAM,CAAC;QACZ,KAAK,SAAS;YACV,uDAAuD;YACvD,OAAO,CACH,WAAW,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;gBACjC,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CACjC,CAAC;QACN,KAAK,KAAK,CAAC;QACX,KAAK,QAAQ;YACT,sEAAsE;YACtE,OAAO,CACH,WAAW,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;gBACjC,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CACjC,CAAC;QACN;YACI,OAAO,KAAK,CAAC;IACrB,CAAC;AACL,CAAC,CAAC;AA1BW,QAAA,gBAAgB,oBA0B3B;AAEF;;GAEG;AACI,MAAM,sBAAsB,GAAG,CAClC,WAAwB,EACP,EAAE;IACnB,MAAM,KAAK,GAAsB,CAAC,OAAO,CAAC,CAAC;IAE3C,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtE,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAVW,QAAA,sBAAsB,0BAUjC;AAEK,MAAM,gBAAgB,GAAG,CAC5B,OAAe,EACf,SAAmB,EACb,EAAE;IACR,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,KAAK,IAAI,IAAA,eAAO,EAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,IAAA,mCAA4B,EAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,IAAA,oBAAY,EAAC,OAAO,CAAC,CAAC;AACjC,CAAC,CAAC;AATW,QAAA,gBAAgB,oBAS3B;AAEK,MAAM,qBAAqB,GAAG,CACjC,cAA8B,EAC9B,SAAmB,EACb,EAAE;IACR,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,CAAC;IACd,CAAC;IAED,MAAM,YAAY,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACzD,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAEvD,IAAI,UAAU,IAAI,IAAA,eAAO,EAAC,UAAU,CAAC,EAAE,CAAC;QACpC,OAAO,IAAA,4BAAe,EAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,IAAA,oBAAY,EAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC;AAjBW,QAAA,qBAAqB,yBAiBhC;AAEF;;GAEG;AACH,MAAM,iBAAiB,GAAG,CAAC,EACvB,SAAS,EACT,WAAW,EACX,SAAS,EACT,WAAW,EACX,QAAQ,GAOX,EAAwB,EAAE;IACvB,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC;IACtD,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAEjC,OAAO;QACH,IAAI,EAAE,uBAAS,CAAC,SAAS;QACzB,MAAM,EAAE;YACJ,MAAM,EAAE;gBACJ,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,WAAW,CAAC,OAAO;aAC9B;YACD,aAAa,EAAE;gBACX,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9D,MAAM,EAAE;oBACJ,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,QAAQ;iBACjB;gBACD,IAAI,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;gBAC5B,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,WAAW,EAAE,SAAS,IAAI,UAAU;wBAC1C,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACM;gBACX,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,OAAO;wBACb,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACM;gBACX,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC3B,MAAM,iBAAiB,GAAG;wBACtB,IAAI,EAAE,iCAAmB,CAAC,GAAG;wBAC7B,UAAU,EAAE,CAAC;wBACb,qDAAqD;qBACxD,CAAC;oBAEF,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC7B,OAAO;4BACH,GAAG,iBAAiB;4BACpB,IAAI,EAAE,IAAA,wBAAgB,EAAC,MAAM,EAAE,SAAS,CAAC;4BACzC,MAAM,EAAE;gCACJ,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;gCAC3B,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;6BAC1B;yBACJ,CAAC;oBACN,CAAC;oBAED,OAAO;wBACH,GAAG,iBAAiB;wBACpB,IAAI,EAAE,IAAA,6BAAqB,EAAC,MAAM,EAAE,SAAS,CAAC;wBAC9C,MAAM,EAAE;4BACJ,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;4BAC3B,IAAI,EAAE,MAAM;yBACf;qBACJ,CAAC;gBACN,CAAC,CAAC;aACL;SACJ;KACJ,CAAC;AACN,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,kBAAkB,GAAG,CAAC,EACxB,SAAS,EACT,WAAW,EACX,SAAS,EACT,WAAW,EACX,QAAQ,GAOX,EAAwB,EAAE;IACvB,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC;IACtD,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAEjC,OAAO;QACH,IAAI,EAAE,uBAAS,CAAC,SAAS;QACzB,MAAM,EAAE;YACJ,MAAM,EAAE;gBACJ,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,WAAW,CAAC,OAAO;aAC9B;YACD,aAAa,EAAE;gBACX,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9D,MAAM,EAAE;oBACJ,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,QAAQ;iBACjB;gBACD,IAAI,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;gBAC5B,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,MAAM;wBACZ,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACM;gBACX,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,OAAO;wBACb,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACM;gBACX,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC3B,MAAM,iBAAiB,GAAG;wBACtB,IAAI,EAAE,iCAAmB,CAAC,IAAI;wBAC9B,UAAU,EAAE,CAAC;wBACb,GAAG,CAAC,WAAW,EAAE,QAAQ,KAAK,MAAM,IAAI;4BACpC,SAAS,EAAE,EAAE;yBAChB,CAAC;qBACL,CAAC;oBAEF,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC7B,OAAO;4BACH,GAAG,iBAAiB;4BACpB,IAAI,EAAE,IAAA,wBAAgB,EAAC,MAAM,EAAE,SAAS,CAAC;4BACzC,MAAM,EAAE;gCACJ,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;gCAC3B,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;6BAC1B;yBACJ,CAAC;oBACN,CAAC;oBAED,OAAO;wBACH,GAAG,iBAAiB;wBACpB,IAAI,EAAE,IAAA,6BAAqB,EAAC,MAAM,EAAE,SAAS,CAAC;wBAC9C,MAAM,EAAE;4BACJ,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;4BAC3B,IAAI,EAAE,MAAM;yBACf;qBACJ,CAAC;gBACN,CAAC,CAAC;aACL;SACJ;KACJ,CAAC;AACN,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,2BAA2B,GAAG,CAAC,EACjC,SAAS,EACT,WAAW,EACX,SAAS,EACT,WAAW,EACX,QAAQ,GAOX,EAAwB,EAAE;IACvB,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC;IACtD,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAEjC,OAAO;QACH,IAAI,EAAE,uBAAS,CAAC,SAAS;QACzB,MAAM,EAAE;YACJ,MAAM,EAAE;gBACJ,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,WAAW,CAAC,OAAO;gBAC3B,QAAQ,EAAE,IAAI,EAAE,2BAA2B;aAC9C;YACD,aAAa,EAAE;gBACX,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9D,MAAM,EAAE;oBACJ,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,QAAQ;iBACjB;gBACD,IAAI,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;gBAC5B,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,OAAO;wBACb,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACM;gBACX,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,WAAW,EAAE,SAAS,IAAI,UAAU;wBAC1C,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACM;gBACX,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC3B,MAAM,iBAAiB,GAAG;wBACtB,IAAI,EAAE,iCAAmB,CAAC,GAAG;wBAC7B,UAAU,EAAE,CAAC;qBAChB,CAAC;oBAEF,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC7B,OAAO;4BACH,GAAG,iBAAiB;4BACpB,IAAI,EAAE,IAAA,wBAAgB,EAAC,MAAM,EAAE,SAAS,CAAC;4BACzC,MAAM,EAAE;gCACJ,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;gCAC3B,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;6BAC1B;yBACJ,CAAC;oBACN,CAAC;oBAED,OAAO;wBACH,GAAG,iBAAiB;wBACpB,IAAI,EAAE,IAAA,6BAAqB,EAAC,MAAM,EAAE,SAAS,CAAC;wBAC9C,MAAM,EAAE;4BACJ,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;4BAC3B,IAAI,EAAE,MAAM;yBACf;qBACJ,CAAC;gBACN,CAAC,CAAC;aACL;SACJ;KACJ,CAAC;AACN,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,qBAAqB,GAAG,CAAC,EAC3B,SAAS,EACT,WAAW,EACX,SAAS,EACT,WAAW,EACX,QAAQ,GAOX,EAAwB,EAAE;IACvB,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC;IACtD,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAEjC,OAAO;QACH,IAAI,EAAE,uBAAS,CAAC,SAAS;QACzB,MAAM,EAAE;YACJ,MAAM,EAAE;gBACJ,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,WAAW,CAAC,OAAO;aAC9B;YACD,aAAa,EAAE;gBACX,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9D,MAAM,EAAE;oBACJ,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,QAAQ;iBACjB;gBACD,IAAI,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;gBAC5B,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,WAAW,EAAE,SAAS,IAAI,UAAU;wBAC1C,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACM;gBACX,KAAK,EAAE;oBACH;wBACI,IAAI,EAAE,OAAO;wBACb,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACM;gBACX,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC3B,MAAM,iBAAiB,GAAG;wBACtB,IAAI,EAAE,iCAAmB,CAAC,OAAO;wBACjC,UAAU,EAAE,CAAC;wBACb,gDAAgD;wBAChD,UAAU,EAAE,IAAI;qBACnB,CAAC;oBAEF,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC7B,OAAO;4BACH,GAAG,iBAAiB;4BACpB,IAAI,EAAE,IAAA,wBAAgB,EAAC,MAAM,EAAE,SAAS,CAAC;4BACzC,MAAM,EAAE;gCACJ,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;gCAC3B,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;6BAC1B;yBACJ,CAAC;oBACN,CAAC;oBAED,OAAO;wBACH,GAAG,iBAAiB;wBACpB,IAAI,EAAE,IAAA,6BAAqB,EAAC,MAAM,EAAE,SAAS,CAAC;wBAC9C,MAAM,EAAE;4BACJ,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;4BAC3B,IAAI,EAAE,MAAM;yBACf;qBACJ,CAAC;gBACN,CAAC,CAAC;aACL;SACJ;KACJ,CAAC;AACN,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,iBAAiB,GAAG,CAAC,EACvB,SAAS,EACT,WAAW,GAId,EAAkB,EAAE;IACjB,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC;IAC7C,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;IAEhC,MAAM,MAAM,GAA6B;QACrC,aAAa,EAAE,UAAU;QACzB,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAW;KACjC,CAAC;IAEF,OAAO;QACH,IAAI,EAAE,uBAAS,CAAC,GAAG;QACnB,MAAM;KACT,CAAC;AACN,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,oBAAoB,GAAG,CAAC,EAC1B,SAAS,EACT,WAAW,GAId,EAAqB,EAAE;IACpB,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;IAChC,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;IAElC,IAAI,SAAS,GAAG,kCAAoB,CAAC,MAAM,CAAC;IAC5C,IAAI,WAAW,EAAE,eAAe,KAAK,KAAK,EAAE,CAAC;QACzC,SAAS,GAAG,kCAAoB,CAAC,GAAG,CAAC;IACzC,CAAC;IAED,OAAO;QACH,IAAI,EAAE,uBAAS,CAAC,MAAM;QACtB,MAAM,EAAE;YACJ,OAAO,EAAE,OAAO,CAAC,CAAC,CAAW;YAC7B,SAAS;SACZ;KACJ,CAAC;AACN,CAAC,CAAC;AAEF;;;GAGG;AACI,MAAM,0BAA0B,GAAG,CAAC,EACvC,SAAS,EACT,WAAW,EACX,SAAS,EACT,iBAAiB,GAMpB,EAAe,EAAE;IACd,MAAM,SAAS,GACX,iBAAiB,IAAI,SAAS,CAAC,WAAW,EAAE,cAAc,IAAI,OAAO,CAAC;IAE1E,IAAI,CAAC,IAAA,wBAAgB,EAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC;QAC5C,+CAA+C;QAC/C,OAAO,EAAE,IAAI,EAAE,uBAAS,CAAC,KAAK,EAAE,CAAC;IACrC,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;IAClC,MAAM,QAAQ,GAAG;QACb,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,WAAW,EAAE,SAAS,CAAC,WAAW;KACrC,CAAC;IAEF,QAAQ,SAAS,EAAE,CAAC;QAChB,KAAK,OAAO;YACR,OAAO,EAAE,IAAI,EAAE,uBAAS,CAAC,KAAK,EAAE,CAAC;QAErC,KAAK,KAAK;YACN,OAAO,iBAAiB,CAAC;gBACrB,SAAS;gBACT,WAAW;gBACX,SAAS;gBACT,WAAW;gBACX,QAAQ;aACX,CAAC,CAAC;QAEP,KAAK,YAAY;YACb,OAAO,2BAA2B,CAAC;gBAC/B,SAAS;gBACT,WAAW;gBACX,SAAS;gBACT,WAAW;gBACX,QAAQ;aACX,CAAC,CAAC;QAEP,KAAK,MAAM;YACP,OAAO,kBAAkB,CAAC;gBACtB,SAAS;gBACT,WAAW;gBACX,SAAS;gBACT,WAAW;gBACX,QAAQ;aACX,CAAC,CAAC;QAEP,KAAK,SAAS;YACV,OAAO,qBAAqB,CAAC;gBACzB,SAAS;gBACT,WAAW;gBACX,SAAS;gBACT,WAAW;gBACX,QAAQ;aACX,CAAC,CAAC;QAEP,KAAK,KAAK;YACN,OAAO,iBAAiB,CAAC;gBACrB,SAAS;gBACT,WAAW;aACd,CAAC,CAAC;QAEP,KAAK,QAAQ;YACT,OAAO,oBAAoB,CAAC;gBACxB,SAAS;gBACT,WAAW;aACd,CAAC,CAAC;QAEP;YACI,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;IAC5D,CAAC;AACL,CAAC,CAAC;AAhFW,QAAA,0BAA0B,8BAgFrC"}
@@ -266,5 +266,120 @@ export declare const parseVizConfig: (vizConfigUnknown: object | null, maxLimit?
266
266
  };
267
267
  };
268
268
  readonly metricQuery: import("./types").AiMetricQueryWithFilters;
269
+ } | {
270
+ readonly type: AiResultType.QUERY_RESULT;
271
+ readonly vizTool: {
272
+ filters: import("../..").Filters;
273
+ tableCalculations: ({
274
+ name: string;
275
+ fieldId: string;
276
+ type: "percent_change_from_previous";
277
+ displayName: string;
278
+ orderBy: {
279
+ fieldId: string;
280
+ order: "asc" | "desc" | null;
281
+ }[];
282
+ } | {
283
+ name: string;
284
+ fieldId: string;
285
+ type: "percent_of_previous_value";
286
+ displayName: string;
287
+ orderBy: {
288
+ fieldId: string;
289
+ order: "asc" | "desc" | null;
290
+ }[];
291
+ } | {
292
+ name: string;
293
+ fieldId: string;
294
+ type: "percent_of_column_total";
295
+ displayName: string;
296
+ partitionBy: string[] | null;
297
+ } | {
298
+ name: string;
299
+ fieldId: string;
300
+ type: "rank_in_column";
301
+ displayName: string;
302
+ } | {
303
+ name: string;
304
+ fieldId: string;
305
+ type: "running_total";
306
+ displayName: string;
307
+ } | {
308
+ name: string;
309
+ fieldId: string | null;
310
+ type: "window_function";
311
+ displayName: string;
312
+ orderBy: {
313
+ fieldId: string;
314
+ order: "asc" | "desc" | null;
315
+ }[] | null;
316
+ partitionBy: string[] | null;
317
+ windowFunction: "row_number" | "percent_rank" | "sum" | "avg" | "count" | "min" | "max";
318
+ frame: {
319
+ start: {
320
+ type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
321
+ offset: number | null;
322
+ } | null;
323
+ end: {
324
+ type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
325
+ offset: number | null;
326
+ };
327
+ frameType: "rows" | "range";
328
+ } | null;
329
+ })[] | null;
330
+ type: AiResultType.QUERY_RESULT;
331
+ description: string;
332
+ customMetrics: {
333
+ name: string;
334
+ label: string;
335
+ table: string;
336
+ type: import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.MEDIAN;
337
+ description: string;
338
+ baseDimensionName: string;
339
+ }[] | null;
340
+ chartConfig: {
341
+ groupBy: string[] | null;
342
+ stackBars: boolean | null;
343
+ xAxisType: "time" | "category" | null;
344
+ xAxisLabel: string | null;
345
+ yAxisLabel: string | null;
346
+ lineType: "line" | "area" | null;
347
+ defaultVizType: "table" | "bar" | "line" | "scatter" | "pie" | "funnel" | "horizontal";
348
+ funnelDataInput: "row" | "column" | null;
349
+ } | null;
350
+ title: string;
351
+ queryConfig: {
352
+ dimensions: string[];
353
+ metrics: string[];
354
+ limit: number | null;
355
+ exploreName: string;
356
+ sorts: {
357
+ fieldId: string;
358
+ descending: boolean;
359
+ nullsFirst: boolean | null;
360
+ }[];
361
+ };
362
+ };
363
+ readonly metricQuery: {
364
+ exploreName: string;
365
+ dimensions: string[];
366
+ metrics: string[];
367
+ sorts: {
368
+ nullsFirst: boolean | undefined;
369
+ fieldId: string;
370
+ descending: boolean;
371
+ }[];
372
+ limit: number;
373
+ filters: import("../..").Filters;
374
+ additionalMetrics: {
375
+ name: string;
376
+ label: string;
377
+ table: string;
378
+ type: import("../..").MetricType.PERCENTILE | import("../..").MetricType.AVERAGE | import("../..").MetricType.COUNT | import("../..").MetricType.COUNT_DISTINCT | import("../..").MetricType.SUM | import("../..").MetricType.MIN | import("../..").MetricType.MAX | import("../..").MetricType.MEDIAN;
379
+ description: string;
380
+ baseDimensionName: string;
381
+ }[];
382
+ tableCalculations: import("../..").TableCalculation[];
383
+ };
269
384
  } | null;
270
385
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/ee/AiAgent/utils.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,eAAO,MAAM,cAAc,qBACL,MAAM,GAAG,IAAI,aACpB,MAAM,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAoEhC,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/ee/AiAgent/utils.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGvC,eAAO,MAAM,cAAc,qBACL,MAAM,GAAG,IAAI,aACpB,MAAM,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAoGhC,CAAC"}
@@ -4,6 +4,7 @@ exports.parseVizConfig = void 0;
4
4
  const constants_1 = require("./constants");
5
5
  const schemas_1 = require("./schemas");
6
6
  const types_1 = require("./types");
7
+ const validators_1 = require("./validators");
7
8
  const parseVizConfig = (vizConfigUnknown, maxLimit) => {
8
9
  if (!vizConfigUnknown) {
9
10
  return null;
@@ -56,6 +57,29 @@ const parseVizConfig = (vizConfigUnknown, maxLimit) => {
56
57
  metricQuery,
57
58
  };
58
59
  }
60
+ // Parse runQuery tool
61
+ const toolRunQueryArgsParsed = schemas_1.toolRunQueryArgsSchemaTransformed.safeParse(vizConfigUnknown);
62
+ if (toolRunQueryArgsParsed.success) {
63
+ const vizTool = toolRunQueryArgsParsed.data;
64
+ const metricQuery = {
65
+ exploreName: vizTool.queryConfig.exploreName,
66
+ dimensions: vizTool.queryConfig.dimensions,
67
+ metrics: vizTool.queryConfig.metrics,
68
+ sorts: vizTool.queryConfig.sorts.map((sort) => ({
69
+ ...sort,
70
+ nullsFirst: sort.nullsFirst ?? undefined,
71
+ })),
72
+ limit: (0, validators_1.getValidAiQueryLimit)(vizTool.queryConfig.limit, maxLimit ?? constants_1.AI_DEFAULT_MAX_QUERY_LIMIT),
73
+ filters: vizTool.filters,
74
+ additionalMetrics: vizTool.customMetrics ?? [],
75
+ tableCalculations: (0, schemas_1.convertAiTableCalcsSchemaToTableCalcs)(vizTool.tableCalculations),
76
+ };
77
+ return {
78
+ type: types_1.AiResultType.QUERY_RESULT,
79
+ vizTool,
80
+ metricQuery,
81
+ };
82
+ }
59
83
  return null;
60
84
  };
61
85
  exports.parseVizConfig = parseVizConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/ee/AiAgent/utils.ts"],"names":[],"mappings":";;;AAAA,2CAAyD;AACzD,uCAQmB;AACnB,mCAAuC;AAEhC,MAAM,cAAc,GAAG,CAC1B,gBAA+B,EAC/B,QAA6B,EAC/B,EAAE;IACA,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,yBAAyB,GAC3B,8CAAoC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAErE,IAAI,yBAAyB,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,yBAAyB,CAAC,IAAI,CAAC;QAC/C,MAAM,WAAW,GAAG,IAAA,mCAAyB,EAAC;YAC1C,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,QAAQ,IAAI,sCAA0B;YAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;YAC5C,iBAAiB,EAAE,IAAA,+CAAqC,EACpD,OAAO,CAAC,iBAAiB,CAC5B;SACJ,CAAC,CAAC;QACH,OAAO;YACH,IAAI,EAAE,oBAAY,CAAC,mBAAmB;YACtC,OAAO;YACP,WAAW;SACL,CAAC;IACf,CAAC;IAED,MAAM,wBAAwB,GAC1B,6CAAmC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACpE,IAAI,wBAAwB,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,wBAAwB,CAAC,IAAI,CAAC;QAC9C,MAAM,WAAW,GAAG,IAAA,kCAAwB,EAAC;YACzC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,QAAQ,IAAI,sCAA0B;YAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;YAC5C,iBAAiB,EAAE,IAAA,+CAAqC,EACpD,OAAO,CAAC,iBAAiB,CAC5B;SACJ,CAAC,CAAC;QACH,OAAO;YACH,IAAI,EAAE,oBAAY,CAAC,kBAAkB;YACrC,OAAO;YACP,WAAW;SACL,CAAC;IACf,CAAC;IAED,MAAM,sBAAsB,GACxB,2CAAiC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAClE,IAAI,sBAAsB,CAAC,OAAO,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAA,6BAAmB,EAAC;YACpC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,QAAQ,IAAI,sCAA0B;YAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;YAC5C,iBAAiB,EAAE,IAAA,+CAAqC,EACpD,OAAO,CAAC,iBAAiB,CAC5B;SACJ,CAAC,CAAC;QACH,OAAO;YACH,IAAI,EAAE,oBAAY,CAAC,YAAY;YAC/B,OAAO;YACP,WAAW;SACL,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAtEW,QAAA,cAAc,kBAsEzB"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/ee/AiAgent/utils.ts"],"names":[],"mappings":";;;AAAA,2CAAyD;AACzD,uCASmB;AACnB,mCAAuC;AACvC,6CAAoD;AAE7C,MAAM,cAAc,GAAG,CAC1B,gBAA+B,EAC/B,QAA6B,EAC/B,EAAE;IACA,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,yBAAyB,GAC3B,8CAAoC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAErE,IAAI,yBAAyB,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,yBAAyB,CAAC,IAAI,CAAC;QAC/C,MAAM,WAAW,GAAG,IAAA,mCAAyB,EAAC;YAC1C,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,QAAQ,IAAI,sCAA0B;YAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;YAC5C,iBAAiB,EAAE,IAAA,+CAAqC,EACpD,OAAO,CAAC,iBAAiB,CAC5B;SACJ,CAAC,CAAC;QACH,OAAO;YACH,IAAI,EAAE,oBAAY,CAAC,mBAAmB;YACtC,OAAO;YACP,WAAW;SACL,CAAC;IACf,CAAC;IAED,MAAM,wBAAwB,GAC1B,6CAAmC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACpE,IAAI,wBAAwB,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,wBAAwB,CAAC,IAAI,CAAC;QAC9C,MAAM,WAAW,GAAG,IAAA,kCAAwB,EAAC;YACzC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,QAAQ,IAAI,sCAA0B;YAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;YAC5C,iBAAiB,EAAE,IAAA,+CAAqC,EACpD,OAAO,CAAC,iBAAiB,CAC5B;SACJ,CAAC,CAAC;QACH,OAAO;YACH,IAAI,EAAE,oBAAY,CAAC,kBAAkB;YACrC,OAAO;YACP,WAAW;SACL,CAAC;IACf,CAAC;IAED,MAAM,sBAAsB,GACxB,2CAAiC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAClE,IAAI,sBAAsB,CAAC,OAAO,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAA,6BAAmB,EAAC;YACpC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,QAAQ,IAAI,sCAA0B;YAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;YAC5C,iBAAiB,EAAE,IAAA,+CAAqC,EACpD,OAAO,CAAC,iBAAiB,CAC5B;SACJ,CAAC,CAAC;QACH,OAAO;YACH,IAAI,EAAE,oBAAY,CAAC,YAAY;YAC/B,OAAO;YACP,WAAW;SACL,CAAC;IACf,CAAC;IAED,sBAAsB;IACtB,MAAM,sBAAsB,GACxB,2CAAiC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAClE,IAAI,sBAAsB,CAAC,OAAO,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC;QAE5C,MAAM,WAAW,GAAG;YAChB,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,WAAW;YAC5C,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,UAAU;YAC1C,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO;YACpC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC5C,GAAG,IAAI;gBACP,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,SAAS;aAC3C,CAAC,CAAC;YACH,KAAK,EAAE,IAAA,iCAAoB,EACvB,OAAO,CAAC,WAAW,CAAC,KAAK,EACzB,QAAQ,IAAI,sCAA0B,CACzC;YACD,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,iBAAiB,EAAE,OAAO,CAAC,aAAa,IAAI,EAAE;YAC9C,iBAAiB,EAAE,IAAA,+CAAqC,EACpD,OAAO,CAAC,iBAAiB,CAC5B;SACJ,CAAC;QAEF,OAAO;YACH,IAAI,EAAE,oBAAY,CAAC,YAAY;YAC/B,OAAO;YACP,WAAW;SACL,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAtGW,QAAA,cAAc,kBAsGzB"}
@@ -185,6 +185,7 @@ export * from './utils/loadLightdashProjectConfig';
185
185
  export * from './utils/metricsExplorer';
186
186
  export * from './utils/oauth';
187
187
  export * from './utils/organization';
188
+ export * from './utils/pivotData';
188
189
  export * from './utils/projectMemberRole';
189
190
  export * from './utils/promises';
190
191
  export * from './utils/sanitizeHtml';