@lightdash/common 0.2403.0 → 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.
- package/dist/cjs/.tsbuildinfo +1 -1
- package/dist/cjs/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +5 -40
- package/dist/cjs/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/customMetrics.d.ts +3590 -5
- package/dist/cjs/ee/AiAgent/schemas/customMetrics.d.ts.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/customMetrics.js +61 -6
- package/dist/cjs/ee/AiAgent/schemas/customMetrics.js.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts +13037 -1997
- package/dist/cjs/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts +3128 -42
- package/dist/cjs/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts +1464 -4
- package/dist/cjs/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts +1850 -26
- package/dist/cjs/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +1850 -26
- package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.js +1 -0
- package/dist/cjs/ee/AiAgent/schemas/tools/toolRunQueryArgs.js.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts +1850 -26
- package/dist/cjs/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolTableVizArgs.js +1 -0
- package/dist/cjs/ee/AiAgent/schemas/tools/toolTableVizArgs.js.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts +1850 -26
- package/dist/cjs/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js +1 -0
- package/dist/cjs/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts +1850 -26
- package/dist/cjs/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts.map +1 -1
- package/dist/cjs/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js +1 -0
- package/dist/cjs/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js.map +1 -1
- package/dist/cjs/ee/AiAgent/utils.d.ts +5 -40
- package/dist/cjs/ee/AiAgent/utils.d.ts.map +1 -1
- package/dist/esm/.tsbuildinfo +1 -1
- package/dist/esm/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +5 -40
- package/dist/esm/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/customMetrics.d.ts +3590 -5
- package/dist/esm/ee/AiAgent/schemas/customMetrics.d.ts.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/customMetrics.js +60 -5
- package/dist/esm/ee/AiAgent/schemas/customMetrics.js.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts +13037 -1997
- package/dist/esm/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts +3128 -42
- package/dist/esm/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts +1464 -4
- package/dist/esm/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts +1850 -26
- package/dist/esm/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js +2 -2
- package/dist/esm/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +1850 -26
- package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.js +2 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolRunQueryArgs.js.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts +1850 -26
- package/dist/esm/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolTableVizArgs.js +2 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolTableVizArgs.js.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts +1850 -26
- package/dist/esm/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js +2 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts +1850 -26
- package/dist/esm/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts.map +1 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js +2 -1
- package/dist/esm/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js.map +1 -1
- package/dist/esm/ee/AiAgent/utils.d.ts +5 -40
- package/dist/esm/ee/AiAgent/utils.d.ts.map +1 -1
- package/dist/types/.tsbuildinfo +1 -1
- package/dist/types/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts +5 -40
- package/dist/types/ee/AiAgent/chartConfig/web/getWebAiChartConfig.d.ts.map +1 -1
- package/dist/types/ee/AiAgent/schemas/customMetrics.d.ts +3590 -5
- package/dist/types/ee/AiAgent/schemas/customMetrics.d.ts.map +1 -1
- package/dist/types/ee/AiAgent/schemas/customMetrics.js +60 -5
- package/dist/types/ee/AiAgent/schemas/customMetrics.js.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts +13037 -1997
- package/dist/types/ee/AiAgent/schemas/tools/toolDashboardArgs.d.ts.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts +3128 -42
- package/dist/types/ee/AiAgent/schemas/tools/toolDashboardV2Args.d.ts.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts +1464 -4
- package/dist/types/ee/AiAgent/schemas/tools/toolProposeChangeArgs.d.ts.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts +1850 -26
- package/dist/types/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.d.ts.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js +2 -2
- package/dist/types/ee/AiAgent/schemas/tools/toolRunMetricQueryArgs.js.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts +1850 -26
- package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.d.ts.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.js +2 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolRunQueryArgs.js.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts +1850 -26
- package/dist/types/ee/AiAgent/schemas/tools/toolTableVizArgs.d.ts.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolTableVizArgs.js +2 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolTableVizArgs.js.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts +1850 -26
- package/dist/types/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.d.ts.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js +2 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolTimeSeriesArgs.js.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts +1850 -26
- package/dist/types/ee/AiAgent/schemas/tools/toolVerticalBarArgs.d.ts.map +1 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js +2 -1
- package/dist/types/ee/AiAgent/schemas/tools/toolVerticalBarArgs.js.map +1 -1
- package/dist/types/ee/AiAgent/utils.d.ts +5 -40
- package/dist/types/ee/AiAgent/utils.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"customMetrics.d.ts","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/customMetrics.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"customMetrics.d.ts","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/customMetrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { v4 as uuid } from 'uuid';
|
|
1
2
|
import { z } from 'zod';
|
|
2
3
|
import { MetricType } from '../../../types/field';
|
|
4
|
+
import { booleanFilterSchema, dateFilterSchema, numberFilterSchema, stringFilterSchema, } from './filters';
|
|
3
5
|
const extractFieldNameFromFieldId = (table, baseDimensionName) => {
|
|
4
6
|
const prefix = `${table}_`;
|
|
5
7
|
if (!baseDimensionName.startsWith(prefix)) {
|
|
@@ -7,8 +9,26 @@ const extractFieldNameFromFieldId = (table, baseDimensionName) => {
|
|
|
7
9
|
}
|
|
8
10
|
return baseDimensionName.slice(prefix.length);
|
|
9
11
|
};
|
|
10
|
-
|
|
11
|
-
|
|
12
|
+
// Convert fieldId (customers_age) to fieldRef (customers.age)
|
|
13
|
+
const fieldIdToFieldRef = (fieldId, table) => {
|
|
14
|
+
const prefix = `${table}_`;
|
|
15
|
+
if (fieldId.startsWith(prefix)) {
|
|
16
|
+
return `${table}.${fieldId.slice(prefix.length)}`;
|
|
17
|
+
}
|
|
18
|
+
return `${table}.${fieldId}`;
|
|
19
|
+
};
|
|
20
|
+
const filterSchema = z.union([
|
|
21
|
+
booleanFilterSchema,
|
|
22
|
+
stringFilterSchema,
|
|
23
|
+
numberFilterSchema,
|
|
24
|
+
dateFilterSchema,
|
|
25
|
+
]);
|
|
26
|
+
const metricFilterRuleSchema = z.object({
|
|
27
|
+
filter: filterSchema,
|
|
28
|
+
table: z.string().describe('Table name this filter field belongs to'),
|
|
29
|
+
});
|
|
30
|
+
const metricFiltersSchema = z.array(metricFilterRuleSchema).nullable();
|
|
31
|
+
const customMetricBaseSchemaV1 = z.object({
|
|
12
32
|
name: z
|
|
13
33
|
.string()
|
|
14
34
|
.describe('Unique metric name using snake_case (e.g., "avg_customer_age", "total_revenue")'),
|
|
@@ -36,10 +56,34 @@ export const customMetricBaseSchema = z
|
|
|
36
56
|
MetricType.MEDIAN,
|
|
37
57
|
])
|
|
38
58
|
.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.`),
|
|
59
|
+
});
|
|
60
|
+
export const customMetricBaseSchemaV2 = customMetricBaseSchemaV1.extend({
|
|
61
|
+
filters: metricFiltersSchema.describe('Optional filters for conditional metrics. Each filter needs fieldId (from findFields) and table name.'),
|
|
62
|
+
});
|
|
63
|
+
export const customMetricBaseSchema = z.union([
|
|
64
|
+
customMetricBaseSchemaV2,
|
|
65
|
+
customMetricBaseSchemaV1,
|
|
66
|
+
]);
|
|
67
|
+
export const customMetricBaseSchemaTransformed = customMetricBaseSchemaV2
|
|
68
|
+
.extend({
|
|
69
|
+
filters: metricFiltersSchema.default(null),
|
|
39
70
|
})
|
|
40
|
-
.transform((
|
|
41
|
-
...
|
|
42
|
-
baseDimensionName: extractFieldNameFromFieldId(
|
|
71
|
+
.transform((cm) => ({
|
|
72
|
+
...cm,
|
|
73
|
+
baseDimensionName: extractFieldNameFromFieldId(cm.table, cm.baseDimensionName),
|
|
74
|
+
filters: cm.filters?.length
|
|
75
|
+
? cm.filters.map((f) => ({
|
|
76
|
+
id: uuid(),
|
|
77
|
+
target: {
|
|
78
|
+
fieldRef: fieldIdToFieldRef(f.filter.fieldId, f.table),
|
|
79
|
+
},
|
|
80
|
+
operator: f.filter.operator,
|
|
81
|
+
values: 'values' in f.filter ? f.filter.values : [],
|
|
82
|
+
...('settings' in f.filter
|
|
83
|
+
? { settings: f.filter.settings }
|
|
84
|
+
: {}),
|
|
85
|
+
}))
|
|
86
|
+
: undefined,
|
|
43
87
|
}));
|
|
44
88
|
export const customMetricsSchema = z
|
|
45
89
|
.array(customMetricBaseSchema)
|
|
@@ -54,9 +98,20 @@ When using custom metrics:
|
|
|
54
98
|
3. Reference it anywhere else you use fieldIds (sorts, filters, chartConfig.yAxisMetrics) using the same "table_metricname" format
|
|
55
99
|
4. DO NOT use the raw metric name in metrics, sorts, filters, or chart configuration
|
|
56
100
|
|
|
101
|
+
To create conditional metrics (e.g., "count of orders where status = 'completed'"):
|
|
102
|
+
1. Set the appropriate aggregation type (COUNT, SUM, etc.)
|
|
103
|
+
2. Add filters array with {filter, table} objects
|
|
104
|
+
3. filter contains: fieldId, fieldType, fieldFilterType, operator, values
|
|
105
|
+
4. Example: {name: "completed_orders", type: "COUNT", baseDimensionName: "order_id", table: "orders",
|
|
106
|
+
filters: [{table: "orders", filter: {fieldId: "orders_status", fieldType: "STRING", fieldFilterType: "string",
|
|
107
|
+
operator: "equals", values: ["completed"]}}]}
|
|
108
|
+
|
|
57
109
|
For example:
|
|
58
110
|
- "Show me average customer age sorted descending" →
|
|
59
111
|
customMetrics: [{name: "avg_customer_age", label: "Average Customer Age", type: "AVERAGE", baseDimensionName: "age", table: "customers"}]
|
|
60
112
|
metrics: ["customers_avg_customer_age"]
|
|
61
113
|
sorts: [{fieldId: "customers_avg_customer_age", descending: true}]`);
|
|
114
|
+
export const customMetricsSchemaTransformed = z
|
|
115
|
+
.array(customMetricBaseSchemaTransformed)
|
|
116
|
+
.nullable();
|
|
62
117
|
//# sourceMappingURL=customMetrics.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"customMetrics.js","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;
|
|
1
|
+
{"version":3,"file":"customMetrics.js","sourceRoot":"","sources":["../../../../../src/ee/AiAgent/schemas/customMetrics.ts"],"names":[],"mappings":"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"}
|