@lightdash/common 0.2097.3 → 0.2099.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 (58) hide show
  1. package/dist/cjs/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.d.ts.map +1 -1
  2. package/dist/cjs/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.js +69 -20
  3. package/dist/cjs/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.js.map +1 -1
  4. package/dist/cjs/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.d.ts.map +1 -1
  5. package/dist/cjs/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.js +74 -22
  6. package/dist/cjs/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.js.map +1 -1
  7. package/dist/cjs/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +2 -0
  8. package/dist/cjs/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts.map +1 -1
  9. package/dist/cjs/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.d.ts.map +1 -1
  10. package/dist/cjs/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.js +58 -19
  11. package/dist/cjs/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.js.map +1 -1
  12. package/dist/cjs/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.d.ts.map +1 -1
  13. package/dist/cjs/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.js +65 -20
  14. package/dist/cjs/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.js.map +1 -1
  15. package/dist/cjs/ee/AiAgent/schemas/parser.d.ts +4 -0
  16. package/dist/cjs/ee/AiAgent/schemas/parser.d.ts.map +1 -1
  17. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +24 -0
  18. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -1
  19. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.js +8 -0
  20. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.js.map +1 -1
  21. package/dist/cjs/ee/AiAgent/utils.d.ts +2 -0
  22. package/dist/cjs/ee/AiAgent/utils.d.ts.map +1 -1
  23. package/dist/esm/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.d.ts.map +1 -1
  24. package/dist/esm/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.js +69 -20
  25. package/dist/esm/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.js.map +1 -1
  26. package/dist/esm/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.d.ts.map +1 -1
  27. package/dist/esm/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.js +74 -22
  28. package/dist/esm/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.js.map +1 -1
  29. package/dist/esm/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +2 -0
  30. package/dist/esm/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts.map +1 -1
  31. package/dist/esm/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.d.ts.map +1 -1
  32. package/dist/esm/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.js +58 -19
  33. package/dist/esm/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.js.map +1 -1
  34. package/dist/esm/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.d.ts.map +1 -1
  35. package/dist/esm/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.js +65 -20
  36. package/dist/esm/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.js.map +1 -1
  37. package/dist/esm/ee/AiAgent/schemas/parser.d.ts +4 -0
  38. package/dist/esm/ee/AiAgent/schemas/parser.d.ts.map +1 -1
  39. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +24 -0
  40. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -1
  41. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.js +8 -0
  42. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.js.map +1 -1
  43. package/dist/esm/ee/AiAgent/utils.d.ts +2 -0
  44. package/dist/esm/ee/AiAgent/utils.d.ts.map +1 -1
  45. package/dist/tsconfig.types.tsbuildinfo +1 -1
  46. package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.d.ts.map +1 -1
  47. package/dist/types/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.d.ts.map +1 -1
  48. package/dist/types/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +2 -0
  49. package/dist/types/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts.map +1 -1
  50. package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.d.ts.map +1 -1
  51. package/dist/types/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.d.ts.map +1 -1
  52. package/dist/types/ee/AiAgent/schemas/parser.d.ts +4 -0
  53. package/dist/types/ee/AiAgent/schemas/parser.d.ts.map +1 -1
  54. package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +24 -0
  55. package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -1
  56. package/dist/types/ee/AiAgent/utils.d.ts +2 -0
  57. package/dist/types/ee/AiAgent/utils.d.ts.map +1 -1
  58. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"bar.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAG9D,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAGvE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,wBAAwB,cACtB,2BAA2B,QAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,aACpB,QAAQ,qBACA,mBAAmB,KACvC,OAAO,CAAC,aAAa,CAmEvB,CAAC"}
1
+ {"version":3,"file":"bar.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAG9D,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAGvE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,wBAAwB,cACtB,2BAA2B,QAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,aACpB,QAAQ,qBACA,mBAAmB,KACvC,OAAO,CAAC,aAAa,CAwHvB,CAAC"}
@@ -12,6 +12,7 @@ const getBarChartEchartsConfig = async (queryTool, rows, fieldsMap, getPivotedRe
12
12
  const { chartConfig } = queryTool;
13
13
  const xDimension = chartConfig?.xAxisDimension || dimensions[0];
14
14
  const yMetrics = chartConfig?.yAxisMetrics || queryMetrics;
15
+ const secondaryYAxisMetric = chartConfig?.secondaryYAxisMetric;
15
16
  let metrics = yMetrics;
16
17
  let chartData = rows;
17
18
  if (chartConfig?.groupBy?.length) {
@@ -21,41 +22,89 @@ const getBarChartEchartsConfig = async (queryTool, rows, fieldsMap, getPivotedRe
21
22
  }
22
23
  const xAxisField = fieldsMap[xDimension];
23
24
  const yAxisField = yMetrics[0] ? fieldsMap[yMetrics[0]] : undefined;
25
+ const secondaryYAxisField = secondaryYAxisMetric
26
+ ? fieldsMap[secondaryYAxisMetric]
27
+ : undefined;
24
28
  const primarySort = sorts?.[0];
25
29
  const shouldInverseXAxis = primarySort?.fieldId === xDimension && primarySort?.descending === true;
26
- return {
27
- ...(0, getCommonEChartsConfig_1.getCommonEChartsConfig)(queryTool.title, metrics.length, chartData, chartConfig?.xAxisLabel, chartConfig?.yAxisLabel),
28
- xAxis: [
30
+ // Build yAxis array based on whether secondary axis is specified
31
+ const yAxisConfig = secondaryYAxisMetric
32
+ ? [
29
33
  {
30
- type: chartConfig?.xAxisType ?? 'category',
34
+ type: 'value',
31
35
  ...(0, getCartesianAxisFormatterConfig_1.getCartesianAxisFormatterConfig)({
32
- axisItem: xAxisField,
36
+ axisItem: yAxisField,
33
37
  show: true,
34
38
  }),
35
- ...(shouldInverseXAxis ? { inverse: true } : {}),
39
+ ...(chartConfig?.yAxisLabel
40
+ ? { name: chartConfig.yAxisLabel }
41
+ : {}),
36
42
  },
37
- ],
38
- yAxis: [
43
+ {
44
+ type: 'value',
45
+ ...(0, getCartesianAxisFormatterConfig_1.getCartesianAxisFormatterConfig)({
46
+ axisItem: secondaryYAxisField,
47
+ show: true,
48
+ }),
49
+ ...(chartConfig?.secondaryYAxisLabel
50
+ ? { name: chartConfig.secondaryYAxisLabel }
51
+ : {}),
52
+ },
53
+ ]
54
+ : [
39
55
  {
40
56
  type: 'value',
41
57
  ...(0, getCartesianAxisFormatterConfig_1.getCartesianAxisFormatterConfig)({
42
58
  axisItem: yAxisField,
43
59
  show: true,
44
60
  }),
61
+ ...(chartConfig?.yAxisLabel
62
+ ? { name: chartConfig.yAxisLabel }
63
+ : {}),
45
64
  },
46
- ],
47
- series: metrics.map((metric) => ({
48
- type: 'bar',
49
- // Use formatted label for non-pivoted metrics, otherwise use the metric name as-is (already formatted by pivot)
50
- name: yMetrics.includes(metric)
51
- ? (0, formatFieldLabel_1.formatFieldLabel)(metric, fieldsMap)
52
- : metric,
53
- encode: {
54
- x: xDimension,
55
- y: metric,
65
+ ];
66
+ return {
67
+ ...(0, getCommonEChartsConfig_1.getCommonEChartsConfig)(queryTool.title, metrics.length, chartData, chartConfig?.xAxisLabel, chartConfig?.yAxisLabel),
68
+ xAxis: [
69
+ {
70
+ type: chartConfig?.xAxisType ?? 'category',
71
+ ...(0, getCartesianAxisFormatterConfig_1.getCartesianAxisFormatterConfig)({
72
+ axisItem: xAxisField,
73
+ show: true,
74
+ }),
75
+ ...(shouldInverseXAxis ? { inverse: true } : {}),
56
76
  },
57
- ...(chartConfig?.stackBars ? { stack: 'stack' } : {}),
58
- })),
77
+ ],
78
+ yAxis: yAxisConfig,
79
+ series: [
80
+ ...metrics.map((metric) => ({
81
+ type: 'bar',
82
+ yAxisIndex: 0,
83
+ // Use formatted label for non-pivoted metrics, otherwise use the metric name as-is (already formatted by pivot)
84
+ name: yMetrics.includes(metric)
85
+ ? (0, formatFieldLabel_1.formatFieldLabel)(metric, fieldsMap)
86
+ : metric,
87
+ encode: {
88
+ x: xDimension,
89
+ y: metric,
90
+ },
91
+ ...(chartConfig?.stackBars ? { stack: 'stack' } : {}),
92
+ })),
93
+ ...(secondaryYAxisMetric
94
+ ? [
95
+ {
96
+ type: 'bar',
97
+ yAxisIndex: 1,
98
+ name: (0, formatFieldLabel_1.formatFieldLabel)(secondaryYAxisMetric, fieldsMap),
99
+ encode: {
100
+ x: xDimension,
101
+ y: secondaryYAxisMetric,
102
+ },
103
+ ...(chartConfig?.stackBars ? { stack: 'stack' } : {}),
104
+ },
105
+ ]
106
+ : []),
107
+ ],
59
108
  };
60
109
  };
61
110
  exports.getBarChartEchartsConfig = getBarChartEchartsConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"bar.js","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.ts"],"names":[],"mappings":";;;AAGA,8HAA2H;AAE3H,uEAAoE;AACpE,gFAA6E;AAG7E;;GAEG;AACI,MAAM,wBAAwB,GAAG,KAAK,EACzC,SAAsC,EACtC,IAA+B,EAC/B,SAAmB,EACnB,iBAAsC,EAChB,EAAE;IACxB,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC;IAC3E,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;IAClC,MAAM,UAAU,GAAG,WAAW,EAAE,cAAc,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,WAAW,EAAE,YAAY,IAAI,YAAY,CAAC;IAC3D,IAAI,OAAO,GAAa,QAAQ,CAAC;IACjC,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,IAAI,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,iBAAiB,CACnC,IAAI,EACJ,SAAS,EACT,WAAW,CAAC,OAAO,EACnB,QAAQ,EACR,KAAoB,CACvB,CAAC;QACF,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;QAC5B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;IACzC,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEpE,MAAM,WAAW,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,kBAAkB,GACpB,WAAW,EAAE,OAAO,KAAK,UAAU,IAAI,WAAW,EAAE,UAAU,KAAK,IAAI,CAAC;IAE5E,OAAO;QACH,GAAG,IAAA,+CAAsB,EACrB,SAAS,CAAC,KAAK,EACf,OAAO,CAAC,MAAM,EACd,SAAS,EACT,WAAW,EAAE,UAAU,EACvB,WAAW,EAAE,UAAU,CAC1B;QACD,KAAK,EAAE;YACH;gBACI,IAAI,EAAE,WAAW,EAAE,SAAS,IAAK,UAAoB;gBACrD,GAAG,IAAA,iEAA+B,EAAC;oBAC/B,QAAQ,EAAE,UAAU;oBACpB,IAAI,EAAE,IAAI;iBACb,CAAC;gBACF,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACnD;SACJ;QACD,KAAK,EAAE;YACH;gBACI,IAAI,EAAE,OAAO;gBACb,GAAG,IAAA,iEAA+B,EAAC;oBAC/B,QAAQ,EAAE,UAAU;oBACpB,IAAI,EAAE,IAAI;iBACb,CAAC;aACL;SACJ;QACD,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC7B,IAAI,EAAE,KAAK;YACX,gHAAgH;YAChH,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAC3B,CAAC,CAAC,IAAA,mCAAgB,EAAC,MAAM,EAAE,SAAS,CAAC;gBACrC,CAAC,CAAC,MAAM;YACZ,MAAM,EAAE;gBACJ,CAAC,EAAE,UAAU;gBACb,CAAC,EAAE,MAAM;aACZ;YACD,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxD,CAAC,CAAC;KACN,CAAC;AACN,CAAC,CAAC;AAxEW,QAAA,wBAAwB,4BAwEnC"}
1
+ {"version":3,"file":"bar.js","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/slack/runQueryTool/viz/bar.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"line.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAG9D,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAGvE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,yBAAyB,cACvB,2BAA2B,QAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,aACpB,QAAQ,qBACA,mBAAmB,KACvC,OAAO,CAAC,aAAa,CAsEvB,CAAC"}
1
+ {"version":3,"file":"line.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAG9D,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAGvE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,yBAAyB,cACvB,2BAA2B,QAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,aACpB,QAAQ,qBACA,mBAAmB,KACvC,OAAO,CAAC,aAAa,CA8HvB,CAAC"}
@@ -12,6 +12,7 @@ const getLineChartEchartsConfig = async (queryTool, rows, fieldsMap, getPivotedR
12
12
  const { chartConfig } = queryTool;
13
13
  const xDimension = chartConfig?.xAxisDimension || dimensions[0];
14
14
  const yMetrics = chartConfig?.yAxisMetrics || queryMetrics;
15
+ const secondaryYAxisMetric = chartConfig?.secondaryYAxisMetric;
15
16
  let metrics = yMetrics;
16
17
  let chartData = rows;
17
18
  if (chartConfig?.groupBy?.length) {
@@ -21,8 +22,47 @@ const getLineChartEchartsConfig = async (queryTool, rows, fieldsMap, getPivotedR
21
22
  }
22
23
  const xAxisField = fieldsMap[xDimension];
23
24
  const yAxisField = yMetrics[0] ? fieldsMap[yMetrics[0]] : undefined;
25
+ const secondaryYAxisField = secondaryYAxisMetric
26
+ ? fieldsMap[secondaryYAxisMetric]
27
+ : undefined;
24
28
  const primarySort = sorts?.[0];
25
29
  const shouldInverseXAxis = primarySort?.fieldId === xDimension && primarySort?.descending === true;
30
+ // Build yAxis array based on whether secondary axis is specified
31
+ const yAxisConfig = secondaryYAxisMetric
32
+ ? [
33
+ {
34
+ type: 'value',
35
+ ...(0, getCartesianAxisFormatterConfig_1.getCartesianAxisFormatterConfig)({
36
+ axisItem: yAxisField,
37
+ show: true,
38
+ }),
39
+ ...(chartConfig?.yAxisLabel
40
+ ? { name: chartConfig.yAxisLabel }
41
+ : {}),
42
+ },
43
+ {
44
+ type: 'value',
45
+ ...(0, getCartesianAxisFormatterConfig_1.getCartesianAxisFormatterConfig)({
46
+ axisItem: secondaryYAxisField,
47
+ show: true,
48
+ }),
49
+ ...(chartConfig?.secondaryYAxisLabel
50
+ ? { name: chartConfig.secondaryYAxisLabel }
51
+ : {}),
52
+ },
53
+ ]
54
+ : [
55
+ {
56
+ type: 'value',
57
+ ...(0, getCartesianAxisFormatterConfig_1.getCartesianAxisFormatterConfig)({
58
+ axisItem: yAxisField,
59
+ show: true,
60
+ }),
61
+ ...(chartConfig?.yAxisLabel
62
+ ? { name: chartConfig.yAxisLabel }
63
+ : {}),
64
+ },
65
+ ];
26
66
  return {
27
67
  ...(0, getCommonEChartsConfig_1.getCommonEChartsConfig)(queryTool.title, metrics.length, chartData, chartConfig?.xAxisLabel, chartConfig?.yAxisLabel),
28
68
  xAxis: [
@@ -35,30 +75,42 @@ const getLineChartEchartsConfig = async (queryTool, rows, fieldsMap, getPivotedR
35
75
  ...(shouldInverseXAxis ? { inverse: true } : {}),
36
76
  },
37
77
  ],
38
- yAxis: [
39
- {
40
- type: 'value',
41
- ...(0, getCartesianAxisFormatterConfig_1.getCartesianAxisFormatterConfig)({
42
- axisItem: yAxisField,
43
- show: true,
78
+ yAxis: yAxisConfig,
79
+ series: [
80
+ ...metrics.map((metric) => ({
81
+ type: 'line',
82
+ yAxisIndex: 0,
83
+ // Use formatted label for non-pivoted metrics, otherwise use the metric name as-is (already formatted by pivot)
84
+ name: yMetrics.includes(metric)
85
+ ? (0, formatFieldLabel_1.formatFieldLabel)(metric, fieldsMap)
86
+ : metric,
87
+ encode: {
88
+ x: xDimension,
89
+ y: metric,
90
+ },
91
+ ...(chartConfig?.lineType === 'area' && {
92
+ areaStyle: {},
44
93
  }),
45
- },
94
+ showSymbol: true,
95
+ })),
96
+ ...(secondaryYAxisMetric
97
+ ? [
98
+ {
99
+ type: 'line',
100
+ yAxisIndex: 1,
101
+ name: (0, formatFieldLabel_1.formatFieldLabel)(secondaryYAxisMetric, fieldsMap),
102
+ encode: {
103
+ x: xDimension,
104
+ y: secondaryYAxisMetric,
105
+ },
106
+ ...(chartConfig?.lineType === 'area' && {
107
+ areaStyle: {},
108
+ }),
109
+ showSymbol: true,
110
+ },
111
+ ]
112
+ : []),
46
113
  ],
47
- series: metrics.map((metric) => ({
48
- type: 'line',
49
- // Use formatted label for non-pivoted metrics, otherwise use the metric name as-is (already formatted by pivot)
50
- name: yMetrics.includes(metric)
51
- ? (0, formatFieldLabel_1.formatFieldLabel)(metric, fieldsMap)
52
- : metric,
53
- encode: {
54
- x: xDimension,
55
- y: metric,
56
- },
57
- ...(chartConfig?.lineType === 'area' && {
58
- areaStyle: {},
59
- }),
60
- showSymbol: true,
61
- })),
62
114
  };
63
115
  };
64
116
  exports.getLineChartEchartsConfig = getLineChartEchartsConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"line.js","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.ts"],"names":[],"mappings":";;;AAGA,8HAA2H;AAE3H,uEAAoE;AACpE,gFAA6E;AAG7E;;GAEG;AACI,MAAM,yBAAyB,GAAG,KAAK,EAC1C,SAAsC,EACtC,IAA+B,EAC/B,SAAmB,EACnB,iBAAsC,EAChB,EAAE;IACxB,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC;IAC3E,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;IAClC,MAAM,UAAU,GAAG,WAAW,EAAE,cAAc,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,WAAW,EAAE,YAAY,IAAI,YAAY,CAAC;IAC3D,IAAI,OAAO,GAAa,QAAQ,CAAC;IACjC,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,IAAI,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,iBAAiB,CACnC,IAAI,EACJ,SAAS,EACT,WAAW,CAAC,OAAO,EACnB,QAAQ,EACR,KAAoB,CACvB,CAAC;QACF,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;QAC5B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;IACzC,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEpE,MAAM,WAAW,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,kBAAkB,GACpB,WAAW,EAAE,OAAO,KAAK,UAAU,IAAI,WAAW,EAAE,UAAU,KAAK,IAAI,CAAC;IAE5E,OAAO;QACH,GAAG,IAAA,+CAAsB,EACrB,SAAS,CAAC,KAAK,EACf,OAAO,CAAC,MAAM,EACd,SAAS,EACT,WAAW,EAAE,UAAU,EACvB,WAAW,EAAE,UAAU,CAC1B;QACD,KAAK,EAAE;YACH;gBACI,IAAI,EAAE,WAAW,EAAE,SAAS,IAAI,MAAM;gBACtC,GAAG,IAAA,iEAA+B,EAAC;oBAC/B,QAAQ,EAAE,UAAU;oBACpB,IAAI,EAAE,IAAI;iBACb,CAAC;gBACF,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACnD;SACJ;QACD,KAAK,EAAE;YACH;gBACI,IAAI,EAAE,OAAO;gBACb,GAAG,IAAA,iEAA+B,EAAC;oBAC/B,QAAQ,EAAE,UAAU;oBACpB,IAAI,EAAE,IAAI;iBACb,CAAC;aACL;SACJ;QACD,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC7B,IAAI,EAAE,MAAM;YACZ,gHAAgH;YAChH,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAC3B,CAAC,CAAC,IAAA,mCAAgB,EAAC,MAAM,EAAE,SAAS,CAAC;gBACrC,CAAC,CAAC,MAAM;YACZ,MAAM,EAAE;gBACJ,CAAC,EAAE,UAAU;gBACb,CAAC,EAAE,MAAM;aACZ;YACD,GAAG,CAAC,WAAW,EAAE,QAAQ,KAAK,MAAM,IAAI;gBACpC,SAAS,EAAE,EAAE;aAChB,CAAC;YACF,UAAU,EAAE,IAAI;SACnB,CAAC,CAAC;KACN,CAAC;AACN,CAAC,CAAC;AA3EW,QAAA,yBAAyB,6BA2EpC"}
1
+ {"version":3,"file":"line.js","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/slack/runQueryTool/viz/line.ts"],"names":[],"mappings":"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"}
@@ -360,6 +360,8 @@ export declare const getWebAiChartConfig: ({ vizConfig, metricQuery, maxQueryLim
360
360
  xAxisDimension: string | null;
361
361
  yAxisMetrics: string[] | null;
362
362
  funnelDataInput: "row" | "column" | null;
363
+ secondaryYAxisMetric: string | null;
364
+ secondaryYAxisLabel: string | null;
363
365
  } | null;
364
366
  title: string;
365
367
  queryConfig: {
@@ -1 +1 @@
1
- {"version":3,"file":"getWebAiChartConfig.d.ts","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/chartConfig/web/getWebAiChartConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAEjE,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EAC3B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAO3C,eAAO,MAAM,mBAAmB,6EAM7B;IACC,SAAS,EACH,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,gBAAgB,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,QAAQ,CAAC;IACpB,iBAAiB,CAAC,EACZ,OAAO,GACP,KAAK,GACL,YAAY,GACZ,MAAM,GACN,SAAS,GACT,KAAK,GACL,QAAQ,CAAC;CAClB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDA,CAAC"}
1
+ {"version":3,"file":"getWebAiChartConfig.d.ts","sourceRoot":"","sources":["../../../../../../src/ee/AiAgent/chartConfig/web/getWebAiChartConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAEjE,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EAC3B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAO3C,eAAO,MAAM,mBAAmB,6EAM7B;IACC,SAAS,EACH,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,gBAAgB,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,QAAQ,CAAC;IACpB,iBAAiB,CAAC,EACZ,OAAO,GACP,KAAK,GACL,YAAY,GACZ,MAAM,GACN,SAAS,GACT,KAAK,GACL,QAAQ,CAAC;CAClB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDA,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bar.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EACH,KAAK,oBAAoB,EAG5B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAGvE,eAAO,MAAM,iBAAiB,kEAM3B;IACC,SAAS,EAAE,2BAA2B,CAAC;IACvC,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,QAAQ,CAAC;IACpB,WAAW,EAAE,2BAA2B,CAAC,aAAa,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3E,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CACpD,KAAG,oBAiDH,CAAC"}
1
+ {"version":3,"file":"bar.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EACH,KAAK,oBAAoB,EAG5B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAGvE,eAAO,MAAM,iBAAiB,kEAM3B;IACC,SAAS,EAAE,2BAA2B,CAAC;IACvC,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,QAAQ,CAAC;IACpB,WAAW,EAAE,2BAA2B,CAAC,aAAa,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3E,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CACpD,KAAG,oBA4FH,CAAC"}
@@ -7,12 +7,39 @@ const getBarChartConfig = ({ queryTool, metricQuery, fieldsMap, chartConfig, met
7
7
  const { dimensions, metrics } = queryTool.queryConfig;
8
8
  const xDimension = chartConfig?.xAxisDimension || dimensions[0];
9
9
  const yMetrics = chartConfig?.yAxisMetrics || metrics;
10
+ const secondaryYAxisMetric = chartConfig?.secondaryYAxisMetric;
11
+ // Build yAxis array based on whether secondary axis is specified
12
+ const yAxisConfig = secondaryYAxisMetric
13
+ ? [
14
+ {
15
+ ...(chartConfig?.yAxisLabel
16
+ ? { name: chartConfig.yAxisLabel }
17
+ : {}),
18
+ },
19
+ {
20
+ ...(chartConfig?.secondaryYAxisLabel
21
+ ? { name: chartConfig.secondaryYAxisLabel }
22
+ : {}),
23
+ },
24
+ ]
25
+ : [
26
+ {
27
+ ...(chartConfig?.yAxisLabel
28
+ ? { name: chartConfig.yAxisLabel }
29
+ : {}),
30
+ },
31
+ ];
10
32
  return {
11
33
  type: savedCharts_1.ChartType.CARTESIAN,
12
34
  config: {
13
35
  layout: {
14
36
  xField: xDimension,
15
- yField: chartConfig?.yAxisMetrics || metricQuery.metrics,
37
+ yField: secondaryYAxisMetric
38
+ ? [
39
+ ...(chartConfig?.yAxisMetrics || metricQuery.metrics),
40
+ secondaryYAxisMetric,
41
+ ]
42
+ : chartConfig?.yAxisMetrics || metricQuery.metrics,
16
43
  stack: !!chartConfig?.stackBars,
17
44
  },
18
45
  eChartsConfig: {
@@ -29,25 +56,37 @@ const getBarChartConfig = ({ queryTool, metricQuery, fieldsMap, chartConfig, met
29
56
  : {}),
30
57
  },
31
58
  ],
32
- yAxis: [
33
- {
34
- ...(chartConfig?.yAxisLabel
35
- ? { name: chartConfig.yAxisLabel }
36
- : {}),
37
- },
59
+ yAxis: yAxisConfig,
60
+ series: [
61
+ ...yMetrics.map((metric) => ({
62
+ type: savedCharts_1.CartesianSeriesType.BAR,
63
+ yAxisIndex: 0,
64
+ ...(chartConfig?.stackBars && {
65
+ stack: metric,
66
+ }),
67
+ encode: {
68
+ xRef: { field: xDimension },
69
+ yRef: { field: metric },
70
+ },
71
+ name: (0, formatFieldLabel_1.formatFieldLabel)(metric, fieldsMap),
72
+ })),
73
+ ...(secondaryYAxisMetric
74
+ ? [
75
+ {
76
+ type: savedCharts_1.CartesianSeriesType.BAR,
77
+ yAxisIndex: 1,
78
+ ...(chartConfig?.stackBars && {
79
+ stack: secondaryYAxisMetric,
80
+ }),
81
+ encode: {
82
+ xRef: { field: xDimension },
83
+ yRef: { field: secondaryYAxisMetric },
84
+ },
85
+ name: (0, formatFieldLabel_1.formatFieldLabel)(secondaryYAxisMetric, fieldsMap),
86
+ },
87
+ ]
88
+ : []),
38
89
  ],
39
- series: yMetrics.map((metric) => ({
40
- type: savedCharts_1.CartesianSeriesType.BAR,
41
- yAxisIndex: 0,
42
- ...(chartConfig?.stackBars && {
43
- stack: metric,
44
- }),
45
- encode: {
46
- xRef: { field: xDimension },
47
- yRef: { field: metric },
48
- },
49
- name: (0, formatFieldLabel_1.formatFieldLabel)(metric, fieldsMap),
50
- })),
51
90
  },
52
91
  },
53
92
  };
@@ -1 +1 @@
1
- {"version":3,"file":"bar.js","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.ts"],"names":[],"mappings":";;;AAEA,qEAI6C;AAE7C,uEAAoE;AAE7D,MAAM,iBAAiB,GAAG,CAAC,EAC9B,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,WAAW,EAAE,cAAc,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,WAAW,EAAE,YAAY,IAAI,OAAO,CAAC;IAEtD,OAAO;QACH,IAAI,EAAE,uBAAS,CAAC,SAAS;QACzB,MAAM,EAAE;YACJ,MAAM,EAAE;gBACJ,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,WAAW,EAAE,YAAY,IAAI,WAAW,CAAC,OAAO;gBACxD,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE,SAAS;aAClC;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,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACJ;gBACD,KAAK,EAAE;oBACH;wBACI,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACJ;gBACD,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;oBAC9B,IAAI,EAAE,iCAAmB,CAAC,GAAG;oBAC7B,UAAU,EAAE,CAAC;oBACb,GAAG,CAAC,WAAW,EAAE,SAAS,IAAI;wBAC1B,KAAK,EAAE,MAAM;qBAChB,CAAC;oBACF,MAAM,EAAE;wBACJ,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;wBAC3B,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;qBAC1B;oBACD,IAAI,EAAE,IAAA,mCAAgB,EAAC,MAAM,EAAE,SAAS,CAAC;iBAC5C,CAAC,CAAC;aACN;SACJ;KACJ,CAAC;AACN,CAAC,CAAC;AA7DW,QAAA,iBAAiB,qBA6D5B"}
1
+ {"version":3,"file":"bar.js","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/web/runQueryTool/viz/bar.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"line.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EACH,KAAK,oBAAoB,EAG5B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAGvE,eAAO,MAAM,kBAAkB,kEAM5B;IACC,SAAS,EAAE,2BAA2B,CAAC;IACvC,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,QAAQ,CAAC;IACpB,WAAW,EAAE,2BAA2B,CAAC,aAAa,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3E,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CACpD,KAAG,oBAkDH,CAAC"}
1
+ {"version":3,"file":"line.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EACH,KAAK,oBAAoB,EAG5B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAGvE,eAAO,MAAM,kBAAkB,kEAM5B;IACC,SAAS,EAAE,2BAA2B,CAAC;IACvC,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,QAAQ,CAAC;IACpB,WAAW,EAAE,2BAA2B,CAAC,aAAa,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3E,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CACpD,KAAG,oBAoGH,CAAC"}
@@ -7,12 +7,40 @@ const getLineChartConfig = ({ queryTool, metricQuery, fieldsMap, chartConfig, me
7
7
  const { dimensions, metrics } = queryTool.queryConfig;
8
8
  const xDimension = chartConfig?.xAxisDimension || dimensions[0];
9
9
  const yMetrics = chartConfig?.yAxisMetrics || metrics;
10
+ const secondaryYAxisMetric = chartConfig?.secondaryYAxisMetric;
11
+ console.log('chartConfig', chartConfig);
12
+ // Build yAxis array based on whether secondary axis is specified
13
+ const yAxisConfig = secondaryYAxisMetric
14
+ ? [
15
+ {
16
+ ...(chartConfig?.yAxisLabel
17
+ ? { name: chartConfig.yAxisLabel }
18
+ : {}),
19
+ },
20
+ {
21
+ ...(chartConfig?.secondaryYAxisLabel
22
+ ? { name: chartConfig.secondaryYAxisLabel }
23
+ : {}),
24
+ },
25
+ ]
26
+ : [
27
+ {
28
+ ...(chartConfig?.yAxisLabel
29
+ ? { name: chartConfig.yAxisLabel }
30
+ : {}),
31
+ },
32
+ ];
10
33
  return {
11
34
  type: savedCharts_1.ChartType.CARTESIAN,
12
35
  config: {
13
36
  layout: {
14
37
  xField: xDimension,
15
- yField: chartConfig?.yAxisMetrics || metricQuery.metrics,
38
+ yField: secondaryYAxisMetric
39
+ ? [
40
+ ...(chartConfig?.yAxisMetrics || metricQuery.metrics),
41
+ secondaryYAxisMetric,
42
+ ]
43
+ : chartConfig?.yAxisMetrics || metricQuery.metrics,
16
44
  },
17
45
  eChartsConfig: {
18
46
  ...(metadata.title ? { title: { text: metadata.title } } : {}),
@@ -28,26 +56,43 @@ const getLineChartConfig = ({ queryTool, metricQuery, fieldsMap, chartConfig, me
28
56
  : {}),
29
57
  },
30
58
  ],
31
- yAxis: [
32
- {
33
- ...(chartConfig?.yAxisLabel
34
- ? { name: chartConfig.yAxisLabel }
35
- : {}),
36
- },
59
+ yAxis: yAxisConfig,
60
+ series: [
61
+ ...yMetrics.map((metric) => ({
62
+ type: savedCharts_1.CartesianSeriesType.LINE,
63
+ yAxisIndex: 0,
64
+ ...(chartConfig?.lineType === 'area' && {
65
+ areaStyle: {},
66
+ }),
67
+ name: (0, formatFieldLabel_1.formatFieldLabel)(metric, fieldsMap),
68
+ encode: {
69
+ xRef: { field: xDimension },
70
+ yRef: { field: metric },
71
+ },
72
+ stack: chartConfig?.lineType === 'area'
73
+ ? 'total'
74
+ : undefined,
75
+ })),
76
+ ...(secondaryYAxisMetric
77
+ ? [
78
+ {
79
+ type: savedCharts_1.CartesianSeriesType.LINE,
80
+ yAxisIndex: 1,
81
+ ...(chartConfig?.lineType === 'area' && {
82
+ areaStyle: {},
83
+ }),
84
+ name: (0, formatFieldLabel_1.formatFieldLabel)(secondaryYAxisMetric, fieldsMap),
85
+ encode: {
86
+ xRef: { field: xDimension },
87
+ yRef: { field: secondaryYAxisMetric },
88
+ },
89
+ stack: chartConfig?.lineType === 'area'
90
+ ? 'total'
91
+ : undefined,
92
+ },
93
+ ]
94
+ : []),
37
95
  ],
38
- series: yMetrics.map((metric) => ({
39
- type: savedCharts_1.CartesianSeriesType.LINE,
40
- yAxisIndex: 0,
41
- ...(chartConfig?.lineType === 'area' && {
42
- areaStyle: {},
43
- }),
44
- name: (0, formatFieldLabel_1.formatFieldLabel)(metric, fieldsMap),
45
- encode: {
46
- xRef: { field: xDimension },
47
- yRef: { field: metric },
48
- },
49
- stack: chartConfig?.lineType === 'area' ? 'total' : undefined,
50
- })),
51
96
  },
52
97
  },
53
98
  };
@@ -1 +1 @@
1
- {"version":3,"file":"line.js","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.ts"],"names":[],"mappings":";;;AAEA,qEAI6C;AAE7C,uEAAoE;AAE7D,MAAM,kBAAkB,GAAG,CAAC,EAC/B,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,WAAW,EAAE,cAAc,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,WAAW,EAAE,YAAY,IAAI,OAAO,CAAC;IAEtD,OAAO;QACH,IAAI,EAAE,uBAAS,CAAC,SAAS;QACzB,MAAM,EAAE;YACJ,MAAM,EAAE;gBACJ,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,WAAW,EAAE,YAAY,IAAI,WAAW,CAAC,OAAO;aAC3D;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,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACJ;gBACD,KAAK,EAAE;oBACH;wBACI,GAAG,CAAC,WAAW,EAAE,UAAU;4BACvB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE;4BAClC,CAAC,CAAC,EAAE,CAAC;qBACZ;iBACJ;gBACD,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;oBAC9B,IAAI,EAAE,iCAAmB,CAAC,IAAI;oBAC9B,UAAU,EAAE,CAAC;oBACb,GAAG,CAAC,WAAW,EAAE,QAAQ,KAAK,MAAM,IAAI;wBACpC,SAAS,EAAE,EAAE;qBAChB,CAAC;oBACF,IAAI,EAAE,IAAA,mCAAgB,EAAC,MAAM,EAAE,SAAS,CAAC;oBACzC,MAAM,EAAE;wBACJ,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;wBAC3B,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;qBAC1B;oBACD,KAAK,EACD,WAAW,EAAE,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;iBAC7D,CAAC,CAAC;aACN;SACJ;KACJ,CAAC;AACN,CAAC,CAAC;AA9DW,QAAA,kBAAkB,sBA8D7B"}
1
+ {"version":3,"file":"line.js","sourceRoot":"","sources":["../../../../../../../../src/ee/AiAgent/chartConfig/web/runQueryTool/viz/line.ts"],"names":[],"mappings":"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"}
@@ -3531,6 +3531,8 @@ export declare const parseToolArgs: (toolName: ToolName, toolArgs: unknown) => i
3531
3531
  xAxisDimension: string | null;
3532
3532
  yAxisMetrics: string[] | null;
3533
3533
  funnelDataInput: "row" | "column" | null;
3534
+ secondaryYAxisMetric: string | null;
3535
+ secondaryYAxisLabel: string | null;
3534
3536
  } | null | undefined;
3535
3537
  }, {
3536
3538
  filters: import("../../..").Filters;
@@ -3612,6 +3614,8 @@ export declare const parseToolArgs: (toolName: ToolName, toolArgs: unknown) => i
3612
3614
  xAxisDimension: string | null;
3613
3615
  yAxisMetrics: string[] | null;
3614
3616
  funnelDataInput: "row" | "column" | null;
3617
+ secondaryYAxisMetric: string | null;
3618
+ secondaryYAxisLabel: string | null;
3615
3619
  } | null;
3616
3620
  title: string;
3617
3621
  queryConfig: {
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/parser.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,aAAc,QAAQ,YAAY,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoClE,CAAC"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/parser.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,aAAc,QAAQ,YAAY,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoClE,CAAC"}