@lightdash/common 0.2403.1 → 0.2404.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 (106) hide show
  1. package/dist/cjs/.tsbuildinfo +1 -1
  2. package/dist/cjs/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +5 -40
  3. package/dist/cjs/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts.map +1 -1
  4. package/dist/cjs/ee/AiAgent/schemas/customMetrics.d.ts +3590 -5
  5. package/dist/cjs/ee/AiAgent/schemas/customMetrics.d.ts.map +1 -1
  6. package/dist/cjs/ee/AiAgent/schemas/customMetrics.js +61 -6
  7. package/dist/cjs/ee/AiAgent/schemas/customMetrics.js.map +1 -1
  8. package/dist/cjs/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts +13037 -1997
  9. package/dist/cjs/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts.map +1 -1
  10. package/dist/cjs/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts +3128 -42
  11. package/dist/cjs/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts.map +1 -1
  12. package/dist/cjs/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts +1464 -4
  13. package/dist/cjs/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts.map +1 -1
  14. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts +1850 -26
  15. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts.map +1 -1
  16. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js +1 -1
  17. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js.map +1 -1
  18. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +1850 -26
  19. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -1
  20. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.js +1 -0
  21. package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.js.map +1 -1
  22. package/dist/cjs/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts +1850 -26
  23. package/dist/cjs/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts.map +1 -1
  24. package/dist/cjs/ee/AiAgent/schemas/tools/toolTableVizArgs.js +1 -0
  25. package/dist/cjs/ee/AiAgent/schemas/tools/toolTableVizArgs.js.map +1 -1
  26. package/dist/cjs/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts +1850 -26
  27. package/dist/cjs/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts.map +1 -1
  28. package/dist/cjs/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js +1 -0
  29. package/dist/cjs/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js.map +1 -1
  30. package/dist/cjs/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts +1850 -26
  31. package/dist/cjs/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts.map +1 -1
  32. package/dist/cjs/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js +1 -0
  33. package/dist/cjs/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js.map +1 -1
  34. package/dist/cjs/ee/AiAgent/utils.d.ts +5 -40
  35. package/dist/cjs/ee/AiAgent/utils.d.ts.map +1 -1
  36. package/dist/esm/.tsbuildinfo +1 -1
  37. package/dist/esm/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +5 -40
  38. package/dist/esm/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts.map +1 -1
  39. package/dist/esm/ee/AiAgent/schemas/customMetrics.d.ts +3590 -5
  40. package/dist/esm/ee/AiAgent/schemas/customMetrics.d.ts.map +1 -1
  41. package/dist/esm/ee/AiAgent/schemas/customMetrics.js +60 -5
  42. package/dist/esm/ee/AiAgent/schemas/customMetrics.js.map +1 -1
  43. package/dist/esm/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts +13037 -1997
  44. package/dist/esm/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts.map +1 -1
  45. package/dist/esm/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts +3128 -42
  46. package/dist/esm/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts.map +1 -1
  47. package/dist/esm/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts +1464 -4
  48. package/dist/esm/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts.map +1 -1
  49. package/dist/esm/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts +1850 -26
  50. package/dist/esm/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts.map +1 -1
  51. package/dist/esm/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js +2 -2
  52. package/dist/esm/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js.map +1 -1
  53. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +1850 -26
  54. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -1
  55. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.js +2 -1
  56. package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.js.map +1 -1
  57. package/dist/esm/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts +1850 -26
  58. package/dist/esm/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts.map +1 -1
  59. package/dist/esm/ee/AiAgent/schemas/tools/toolTableVizArgs.js +2 -1
  60. package/dist/esm/ee/AiAgent/schemas/tools/toolTableVizArgs.js.map +1 -1
  61. package/dist/esm/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts +1850 -26
  62. package/dist/esm/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts.map +1 -1
  63. package/dist/esm/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js +2 -1
  64. package/dist/esm/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js.map +1 -1
  65. package/dist/esm/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts +1850 -26
  66. package/dist/esm/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts.map +1 -1
  67. package/dist/esm/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js +2 -1
  68. package/dist/esm/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js.map +1 -1
  69. package/dist/esm/ee/AiAgent/utils.d.ts +5 -40
  70. package/dist/esm/ee/AiAgent/utils.d.ts.map +1 -1
  71. package/dist/types/.tsbuildinfo +1 -1
  72. package/dist/types/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +5 -40
  73. package/dist/types/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts.map +1 -1
  74. package/dist/types/ee/AiAgent/schemas/customMetrics.d.ts +3590 -5
  75. package/dist/types/ee/AiAgent/schemas/customMetrics.d.ts.map +1 -1
  76. package/dist/types/ee/AiAgent/schemas/customMetrics.js +60 -5
  77. package/dist/types/ee/AiAgent/schemas/customMetrics.js.map +1 -1
  78. package/dist/types/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts +13037 -1997
  79. package/dist/types/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts.map +1 -1
  80. package/dist/types/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts +3128 -42
  81. package/dist/types/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts.map +1 -1
  82. package/dist/types/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts +1464 -4
  83. package/dist/types/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts.map +1 -1
  84. package/dist/types/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts +1850 -26
  85. package/dist/types/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts.map +1 -1
  86. package/dist/types/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js +2 -2
  87. package/dist/types/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js.map +1 -1
  88. package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +1850 -26
  89. package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -1
  90. package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.js +2 -1
  91. package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.js.map +1 -1
  92. package/dist/types/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts +1850 -26
  93. package/dist/types/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts.map +1 -1
  94. package/dist/types/ee/AiAgent/schemas/tools/toolTableVizArgs.js +2 -1
  95. package/dist/types/ee/AiAgent/schemas/tools/toolTableVizArgs.js.map +1 -1
  96. package/dist/types/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts +1850 -26
  97. package/dist/types/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts.map +1 -1
  98. package/dist/types/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js +2 -1
  99. package/dist/types/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js.map +1 -1
  100. package/dist/types/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts +1850 -26
  101. package/dist/types/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts.map +1 -1
  102. package/dist/types/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js +2 -1
  103. package/dist/types/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js.map +1 -1
  104. package/dist/types/ee/AiAgent/utils.d.ts +5 -40
  105. package/dist/types/ee/AiAgent/utils.d.ts.map +1 -1
  106. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"customMetrics.d.ts","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/customMetrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAalD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgD5B,CAAC;AAER,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAmB3B,CAAC"}
1
+ {"version":3,"file":"customMetrics.d.ts","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/customMetrics.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAoFnE,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAInC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGjC,CAAC;AAGH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BzC,CAAC;AAEN,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,iCAAiC,CAC3C,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA2B3B,CAAC;AAEN,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAE5B,CAAC"}
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.customMetricsSchema = exports.customMetricBaseSchema = void 0;
3
+ exports.customMetricsSchemaTransformed = exports.customMetricsSchema = exports.customMetricBaseSchemaTransformed = exports.customMetricBaseSchema = exports.customMetricBaseSchemaV2 = void 0;
4
+ const uuid_1 = require("uuid");
4
5
  const zod_1 = require("zod");
5
6
  const field_1 = require("../../../types/field");
7
+ const filters_1 = require("./filters");
6
8
  const extractFieldNameFromFieldId = (table, baseDimensionName) => {
7
9
  const prefix = `${table}_`;
8
10
  if (!baseDimensionName.startsWith(prefix)) {
@@ -10,8 +12,26 @@ const extractFieldNameFromFieldId = (table, baseDimensionName) => {
10
12
  }
11
13
  return baseDimensionName.slice(prefix.length);
12
14
  };
13
- exports.customMetricBaseSchema = zod_1.z
14
- .object({
15
+ // Convert fieldId (customers_age) to fieldRef (customers.age)
16
+ const fieldIdToFieldRef = (fieldId, table) => {
17
+ const prefix = `${table}_`;
18
+ if (fieldId.startsWith(prefix)) {
19
+ return `${table}.${fieldId.slice(prefix.length)}`;
20
+ }
21
+ return `${table}.${fieldId}`;
22
+ };
23
+ const filterSchema = zod_1.z.union([
24
+ filters_1.booleanFilterSchema,
25
+ filters_1.stringFilterSchema,
26
+ filters_1.numberFilterSchema,
27
+ filters_1.dateFilterSchema,
28
+ ]);
29
+ const metricFilterRuleSchema = zod_1.z.object({
30
+ filter: filterSchema,
31
+ table: zod_1.z.string().describe('Table name this filter field belongs to'),
32
+ });
33
+ const metricFiltersSchema = zod_1.z.array(metricFilterRuleSchema).nullable();
34
+ const customMetricBaseSchemaV1 = zod_1.z.object({
15
35
  name: zod_1.z
16
36
  .string()
17
37
  .describe('Unique metric name using snake_case (e.g., "avg_customer_age", "total_revenue")'),
@@ -39,10 +59,34 @@ exports.customMetricBaseSchema = zod_1.z
39
59
  field_1.MetricType.MEDIAN,
40
60
  ])
41
61
  .describe(`Choose based on the user's request. If the base dimension type is STRING, TIMESTAMP, DATE, BOOLEAN, use COUNT_DISTINCT, COUNT, MIN, MAX. If the base dimension type is NUMBER, use MIN, MAX, SUM, PERCENTILE, MEDIAN, AVERAGE, COUNT_DISTINCT, COUNT. If the base dimension type is BOOLEAN, use COUNT_DISTINCT, COUNT.`),
62
+ });
63
+ exports.customMetricBaseSchemaV2 = customMetricBaseSchemaV1.extend({
64
+ filters: metricFiltersSchema.describe('Optional filters for conditional metrics. Each filter needs fieldId (from findFields) and table name.'),
65
+ });
66
+ exports.customMetricBaseSchema = zod_1.z.union([
67
+ exports.customMetricBaseSchemaV2,
68
+ customMetricBaseSchemaV1,
69
+ ]);
70
+ exports.customMetricBaseSchemaTransformed = exports.customMetricBaseSchemaV2
71
+ .extend({
72
+ filters: metricFiltersSchema.default(null),
42
73
  })
43
- .transform((data) => ({
44
- ...data,
45
- baseDimensionName: extractFieldNameFromFieldId(data.table, data.baseDimensionName),
74
+ .transform((cm) => ({
75
+ ...cm,
76
+ baseDimensionName: extractFieldNameFromFieldId(cm.table, cm.baseDimensionName),
77
+ filters: cm.filters?.length
78
+ ? cm.filters.map((f) => ({
79
+ id: (0, uuid_1.v4)(),
80
+ target: {
81
+ fieldRef: fieldIdToFieldRef(f.filter.fieldId, f.table),
82
+ },
83
+ operator: f.filter.operator,
84
+ values: 'values' in f.filter ? f.filter.values : [],
85
+ ...('settings' in f.filter
86
+ ? { settings: f.filter.settings }
87
+ : {}),
88
+ }))
89
+ : undefined,
46
90
  }));
47
91
  exports.customMetricsSchema = zod_1.z
48
92
  .array(exports.customMetricBaseSchema)
@@ -57,9 +101,20 @@ When using custom metrics:
57
101
  3. Reference it anywhere else you use fieldIds (sorts, filters, chartConfig.yAxisMetrics) using the same "table_metricname" format
58
102
  4. DO NOT use the raw metric name in metrics, sorts, filters, or chart configuration
59
103
 
104
+ To create conditional metrics (e.g., "count of orders where status = 'completed'"):
105
+ 1. Set the appropriate aggregation type (COUNT, SUM, etc.)
106
+ 2. Add filters array with {filter, table} objects
107
+ 3. filter contains: fieldId, fieldType, fieldFilterType, operator, values
108
+ 4. Example: {name: "completed_orders", type: "COUNT", baseDimensionName: "order_id", table: "orders",
109
+ filters: [{table: "orders", filter: {fieldId: "orders_status", fieldType: "STRING", fieldFilterType: "string",
110
+ operator: "equals", values: ["completed"]}}]}
111
+
60
112
  For example:
61
113
  - "Show me average customer age sorted descending" →
62
114
  customMetrics: [{name: "avg_customer_age", label: "Average Customer Age", type: "AVERAGE", baseDimensionName: "age", table: "customers"}]
63
115
  metrics: ["customers_avg_customer_age"]
64
116
  sorts: [{fieldId: "customers_avg_customer_age", descending: true}]`);
117
+ exports.customMetricsSchemaTransformed = zod_1.z
118
+ .array(exports.customMetricBaseSchemaTransformed)
119
+ .nullable();
65
120
  //# sourceMappingURL=customMetrics.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"customMetrics.js","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/customMetrics.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,gDAAkD;AAElD,MAAM,2BAA2B,GAAG,CAChC,KAAa,EACb,iBAAyB,EACnB,EAAE;IACR,MAAM,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC;IAC3B,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACxC,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IACD,OAAO,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAClD,CAAC,CAAC;AAEW,QAAA,sBAAsB,GAAG,OAAC;KAClC,MAAM,CAAC;IACJ,IAAI,EAAE,OAAC;SACF,MAAM,EAAE;SACR,QAAQ,CACL,iFAAiF,CACpF;IACL,KAAK,EAAE,OAAC;SACH,MAAM,EAAE;SACR,QAAQ,CACL,qFAAqF,CACxF;IACL,WAAW,EAAE,OAAC;SACT,MAAM,EAAE;SACR,QAAQ,CACL,2LAA2L,CAC9L;IACL,iBAAiB,EAAE,OAAC;SACf,MAAM,EAAE;SACR,QAAQ,CACL,+DAA+D,CAClE;IACL,KAAK,EAAE,OAAC;SACH,MAAM,EAAE;SACR,QAAQ,CACL,0FAA0F,CAC7F;IACL,IAAI,EAAE,OAAC;SACF,IAAI,CAAC;QACF,kBAAU,CAAC,OAAO;QAClB,kBAAU,CAAC,KAAK;QAChB,kBAAU,CAAC,cAAc;QACzB,kBAAU,CAAC,GAAG;QACd,kBAAU,CAAC,GAAG;QACd,kBAAU,CAAC,GAAG;QACd,kBAAU,CAAC,UAAU;QACrB,kBAAU,CAAC,MAAM;KACpB,CAAC;SACD,QAAQ,CACL,yTAAyT,CAC5T;CACR,CAAC;KACD,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAClB,GAAG,IAAI;IACP,iBAAiB,EAAE,2BAA2B,CAC1C,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,iBAAiB,CACzB;CACJ,CAAC,CAAC,CAAC;AAIK,QAAA,mBAAmB,GAAG,OAAC;KAC/B,KAAK,CAAC,8BAAsB,CAAC;KAC7B,QAAQ,EAAE;KACV,QAAQ,CACL;;;;;;;;;;;;;;mEAc2D,CAC9D,CAAC"}
1
+ {"version":3,"file":"customMetrics.js","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/customMetrics.ts"],"names":[],"mappings":"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"}