@quillsql/react 2.14.13 → 2.14.14
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/Chart.d.ts.map +1 -1
- package/dist/cjs/Chart.js +12 -0
- package/dist/cjs/ChartBuilder.d.ts +3 -2
- package/dist/cjs/ChartBuilder.d.ts.map +1 -1
- package/dist/cjs/ChartBuilder.js +105 -16
- package/dist/cjs/ChartEditor.d.ts.map +1 -1
- package/dist/cjs/ChartEditor.js +2 -0
- package/dist/cjs/Context.d.ts +6 -2
- package/dist/cjs/Context.d.ts.map +1 -1
- package/dist/cjs/Context.js +163 -35
- package/dist/cjs/Dashboard.d.ts.map +1 -1
- package/dist/cjs/Dashboard.js +93 -16
- package/dist/cjs/QuillProvider.d.ts +40 -1
- package/dist/cjs/QuillProvider.d.ts.map +1 -1
- package/dist/cjs/QuillProvider.js +2 -2
- package/dist/cjs/ReportBuilder.d.ts +4 -1
- package/dist/cjs/ReportBuilder.d.ts.map +1 -1
- package/dist/cjs/ReportBuilder.js +103 -1262
- package/dist/cjs/SQLEditor.d.ts.map +1 -1
- package/dist/cjs/SQLEditor.js +50 -6
- package/dist/cjs/Table.d.ts.map +1 -1
- package/dist/cjs/Table.js +12 -0
- package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/BarChart.js +14 -9
- package/dist/cjs/components/Chart/CustomBar.d.ts +18 -0
- package/dist/cjs/components/Chart/CustomBar.d.ts.map +1 -0
- package/dist/cjs/components/Chart/CustomBar.js +70 -0
- package/dist/cjs/components/Chart/InternalChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/InternalChart.js +24 -1
- package/dist/cjs/components/Dashboard/DashboardTemplate.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DashboardTemplate.js +2 -1
- package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DataLoader.js +73 -2
- package/dist/cjs/components/Dashboard/util.d.ts +2 -1
- package/dist/cjs/components/Dashboard/util.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/util.js +12 -1
- package/dist/cjs/components/QuillTable.d.ts +2 -1
- package/dist/cjs/components/QuillTable.d.ts.map +1 -1
- package/dist/cjs/components/QuillTable.js +2 -2
- package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/AddColumnModal.js +7 -1
- package/dist/cjs/components/ReportBuilder/ColumnComponent.d.ts +48 -0
- package/dist/cjs/components/ReportBuilder/ColumnComponent.d.ts.map +1 -0
- package/dist/cjs/components/ReportBuilder/ColumnComponent.js +46 -0
- package/dist/cjs/components/ReportBuilder/FilterComponent.d.ts +65 -0
- package/dist/cjs/components/ReportBuilder/FilterComponent.d.ts.map +1 -0
- package/dist/cjs/components/ReportBuilder/FilterComponent.js +51 -0
- package/dist/cjs/components/ReportBuilder/LimitComponent.d.ts +42 -0
- package/dist/cjs/components/ReportBuilder/LimitComponent.d.ts.map +1 -0
- package/dist/cjs/components/ReportBuilder/LimitComponent.js +50 -0
- package/dist/cjs/components/ReportBuilder/PivotComponent.d.ts +66 -0
- package/dist/cjs/components/ReportBuilder/PivotComponent.d.ts.map +1 -0
- package/dist/cjs/components/ReportBuilder/PivotComponent.js +47 -0
- package/dist/cjs/components/ReportBuilder/SaveReport.d.ts +162 -0
- package/dist/cjs/components/ReportBuilder/SaveReport.d.ts.map +1 -0
- package/dist/cjs/components/ReportBuilder/SaveReport.js +31 -0
- package/dist/cjs/components/ReportBuilder/SortComponent.d.ts +42 -0
- package/dist/cjs/components/ReportBuilder/SortComponent.d.ts.map +1 -0
- package/dist/cjs/components/ReportBuilder/SortComponent.js +50 -0
- package/dist/cjs/components/ReportBuilder/TableComponent.d.ts +28 -0
- package/dist/cjs/components/ReportBuilder/TableComponent.d.ts.map +1 -0
- package/dist/cjs/components/ReportBuilder/TableComponent.js +24 -0
- package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/ui.js +3 -1
- package/dist/cjs/components/UiComponents.d.ts +5 -2
- package/dist/cjs/components/UiComponents.d.ts.map +1 -1
- package/dist/cjs/components/UiComponents.js +6 -5
- package/dist/cjs/hooks/useAskQuill.d.ts.map +1 -1
- package/dist/cjs/hooks/useAskQuill.js +38 -0
- package/dist/cjs/hooks/useDashboard.d.ts +3 -1
- package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
- package/dist/cjs/hooks/useDashboard.js +91 -6
- package/dist/cjs/hooks/useExport.d.ts.map +1 -1
- package/dist/cjs/hooks/useExport.js +17 -9
- package/dist/cjs/hooks/useLongLoading.d.ts +13 -0
- package/dist/cjs/hooks/useLongLoading.d.ts.map +1 -0
- package/dist/cjs/hooks/useLongLoading.js +67 -0
- package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
- package/dist/cjs/hooks/useQuill.js +25 -1
- package/dist/cjs/hooks/useReportBuilder.d.ts +178 -0
- package/dist/cjs/hooks/useReportBuilder.d.ts.map +1 -0
- package/dist/cjs/hooks/useReportBuilder.js +1476 -0
- package/dist/cjs/hooks/useVirtualTables.d.ts.map +1 -1
- package/dist/cjs/hooks/useVirtualTables.js +27 -2
- package/dist/cjs/index.d.ts +11 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +17 -1
- package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts +14 -1
- package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotForm.js +86 -3
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +19 -2
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotModal.js +421 -141
- package/dist/cjs/models/Client.d.ts +6 -2
- package/dist/cjs/models/Client.d.ts.map +1 -1
- package/dist/cjs/utils/astProcessing.d.ts +4 -2
- package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/astProcessing.js +25 -2
- package/dist/cjs/utils/client.d.ts +2 -1
- package/dist/cjs/utils/client.d.ts.map +1 -1
- package/dist/cjs/utils/client.js +13 -2
- package/dist/cjs/utils/dashboard.d.ts +3 -1
- package/dist/cjs/utils/dashboard.d.ts.map +1 -1
- package/dist/cjs/utils/dashboard.js +44 -3
- package/dist/cjs/utils/filterProcessing.d.ts +2 -1
- package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/filterProcessing.js +12 -1
- package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
- package/dist/cjs/utils/pivotConstructor.js +11 -9
- package/dist/cjs/utils/report.d.ts +11 -5
- package/dist/cjs/utils/report.d.ts.map +1 -1
- package/dist/cjs/utils/report.js +55 -8
- package/dist/cjs/utils/reportBuilder.d.ts.map +1 -1
- package/dist/cjs/utils/reportBuilder.js +5 -2
- package/dist/cjs/utils/schema.d.ts +5 -2
- package/dist/cjs/utils/schema.d.ts.map +1 -1
- package/dist/cjs/utils/schema.js +14 -2
- package/dist/cjs/utils/tableProcessing.d.ts +17 -10
- package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/tableProcessing.js +99 -17
- package/dist/esm/Chart.d.ts.map +1 -1
- package/dist/esm/Chart.js +13 -1
- package/dist/esm/ChartBuilder.d.ts +3 -2
- package/dist/esm/ChartBuilder.d.ts.map +1 -1
- package/dist/esm/ChartBuilder.js +107 -18
- package/dist/esm/ChartEditor.d.ts.map +1 -1
- package/dist/esm/ChartEditor.js +3 -1
- package/dist/esm/Context.d.ts +6 -2
- package/dist/esm/Context.d.ts.map +1 -1
- package/dist/esm/Context.js +162 -34
- package/dist/esm/Dashboard.d.ts.map +1 -1
- package/dist/esm/Dashboard.js +94 -17
- package/dist/esm/QuillProvider.d.ts +40 -1
- package/dist/esm/QuillProvider.d.ts.map +1 -1
- package/dist/esm/QuillProvider.js +2 -2
- package/dist/esm/ReportBuilder.d.ts +4 -1
- package/dist/esm/ReportBuilder.d.ts.map +1 -1
- package/dist/esm/ReportBuilder.js +106 -1262
- package/dist/esm/SQLEditor.d.ts.map +1 -1
- package/dist/esm/SQLEditor.js +51 -7
- package/dist/esm/Table.d.ts.map +1 -1
- package/dist/esm/Table.js +13 -1
- package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/BarChart.js +15 -10
- package/dist/esm/components/Chart/CustomBar.d.ts +18 -0
- package/dist/esm/components/Chart/CustomBar.d.ts.map +1 -0
- package/dist/esm/components/Chart/CustomBar.js +68 -0
- package/dist/esm/components/Chart/InternalChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/InternalChart.js +25 -2
- package/dist/esm/components/Dashboard/DashboardTemplate.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DashboardTemplate.js +3 -2
- package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DataLoader.js +74 -3
- package/dist/esm/components/Dashboard/util.d.ts +2 -1
- package/dist/esm/components/Dashboard/util.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/util.js +12 -1
- package/dist/esm/components/QuillTable.d.ts +2 -1
- package/dist/esm/components/QuillTable.d.ts.map +1 -1
- package/dist/esm/components/QuillTable.js +2 -2
- package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/AddColumnModal.js +7 -1
- package/dist/esm/components/ReportBuilder/ColumnComponent.d.ts +48 -0
- package/dist/esm/components/ReportBuilder/ColumnComponent.d.ts.map +1 -0
- package/dist/esm/components/ReportBuilder/ColumnComponent.js +39 -0
- package/dist/esm/components/ReportBuilder/FilterComponent.d.ts +65 -0
- package/dist/esm/components/ReportBuilder/FilterComponent.d.ts.map +1 -0
- package/dist/esm/components/ReportBuilder/FilterComponent.js +44 -0
- package/dist/esm/components/ReportBuilder/LimitComponent.d.ts +42 -0
- package/dist/esm/components/ReportBuilder/LimitComponent.d.ts.map +1 -0
- package/dist/esm/components/ReportBuilder/LimitComponent.js +46 -0
- package/dist/esm/components/ReportBuilder/PivotComponent.d.ts +66 -0
- package/dist/esm/components/ReportBuilder/PivotComponent.d.ts.map +1 -0
- package/dist/esm/components/ReportBuilder/PivotComponent.js +40 -0
- package/dist/esm/components/ReportBuilder/SaveReport.d.ts +162 -0
- package/dist/esm/components/ReportBuilder/SaveReport.d.ts.map +1 -0
- package/dist/esm/components/ReportBuilder/SaveReport.js +31 -0
- package/dist/esm/components/ReportBuilder/SortComponent.d.ts +42 -0
- package/dist/esm/components/ReportBuilder/SortComponent.d.ts.map +1 -0
- package/dist/esm/components/ReportBuilder/SortComponent.js +46 -0
- package/dist/esm/components/ReportBuilder/TableComponent.d.ts +28 -0
- package/dist/esm/components/ReportBuilder/TableComponent.d.ts.map +1 -0
- package/dist/esm/components/ReportBuilder/TableComponent.js +20 -0
- package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/ui.js +4 -2
- package/dist/esm/components/UiComponents.d.ts +5 -2
- package/dist/esm/components/UiComponents.d.ts.map +1 -1
- package/dist/esm/components/UiComponents.js +6 -5
- package/dist/esm/hooks/useAskQuill.d.ts.map +1 -1
- package/dist/esm/hooks/useAskQuill.js +39 -1
- package/dist/esm/hooks/useDashboard.d.ts +3 -1
- package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
- package/dist/esm/hooks/useDashboard.js +92 -7
- package/dist/esm/hooks/useExport.d.ts.map +1 -1
- package/dist/esm/hooks/useExport.js +18 -10
- package/dist/esm/hooks/useLongLoading.d.ts +13 -0
- package/dist/esm/hooks/useLongLoading.d.ts.map +1 -0
- package/dist/esm/hooks/useLongLoading.js +64 -0
- package/dist/esm/hooks/useQuill.d.ts.map +1 -1
- package/dist/esm/hooks/useQuill.js +26 -2
- package/dist/esm/hooks/useReportBuilder.d.ts +178 -0
- package/dist/esm/hooks/useReportBuilder.d.ts.map +1 -0
- package/dist/esm/hooks/useReportBuilder.js +1471 -0
- package/dist/esm/hooks/useVirtualTables.d.ts.map +1 -1
- package/dist/esm/hooks/useVirtualTables.js +28 -3
- package/dist/esm/index.d.ts +11 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +8 -0
- package/dist/esm/internals/ReportBuilder/PivotForm.d.ts +14 -1
- package/dist/esm/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotForm.js +87 -4
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +19 -2
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.js +423 -143
- package/dist/esm/models/Client.d.ts +6 -2
- package/dist/esm/models/Client.d.ts.map +1 -1
- package/dist/esm/utils/astProcessing.d.ts +4 -2
- package/dist/esm/utils/astProcessing.d.ts.map +1 -1
- package/dist/esm/utils/astProcessing.js +25 -2
- package/dist/esm/utils/client.d.ts +2 -1
- package/dist/esm/utils/client.d.ts.map +1 -1
- package/dist/esm/utils/client.js +13 -2
- package/dist/esm/utils/dashboard.d.ts +3 -1
- package/dist/esm/utils/dashboard.d.ts.map +1 -1
- package/dist/esm/utils/dashboard.js +44 -3
- package/dist/esm/utils/filterProcessing.d.ts +2 -1
- package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
- package/dist/esm/utils/filterProcessing.js +12 -1
- package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
- package/dist/esm/utils/pivotConstructor.js +11 -9
- package/dist/esm/utils/report.d.ts +11 -5
- package/dist/esm/utils/report.d.ts.map +1 -1
- package/dist/esm/utils/report.js +55 -8
- package/dist/esm/utils/reportBuilder.d.ts.map +1 -1
- package/dist/esm/utils/reportBuilder.js +5 -2
- package/dist/esm/utils/schema.d.ts +5 -2
- package/dist/esm/utils/schema.d.ts.map +1 -1
- package/dist/esm/utils/schema.js +14 -2
- package/dist/esm/utils/tableProcessing.d.ts +17 -10
- package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
- package/dist/esm/utils/tableProcessing.js +99 -17
- package/package.json +1 -1
|
@@ -18,14 +18,14 @@ export const hasColumnAlias = (columns, referencedColumns) => {
|
|
|
18
18
|
}
|
|
19
19
|
return false;
|
|
20
20
|
};
|
|
21
|
-
export const getUniqueValuesByQuery = async ({ columns, query, client, getToken, tenants, customFields, filters, dashboardName, }) => {
|
|
21
|
+
export const getUniqueValuesByQuery = async ({ columns, query, client, getToken, tenants, customFields, filters, dashboardName, eventTracking, }) => {
|
|
22
22
|
const stringNames = columns.map((column) => column.field);
|
|
23
23
|
const uniqueValues = {};
|
|
24
24
|
if (stringNames.length === 0) {
|
|
25
25
|
return {};
|
|
26
26
|
}
|
|
27
27
|
const distinctValueQuery = generateDistinctQuery(stringNames, query, client.databaseType || 'postgresql');
|
|
28
|
-
const distinctStrings = await fetchDistinctStrings(distinctValueQuery, client, getToken, tenants, customFields, filters, dashboardName);
|
|
28
|
+
const distinctStrings = await fetchDistinctStrings(distinctValueQuery, client, getToken, tenants, eventTracking, customFields, filters, dashboardName);
|
|
29
29
|
if (!distinctStrings) {
|
|
30
30
|
return {};
|
|
31
31
|
}
|
|
@@ -34,13 +34,13 @@ export const getUniqueValuesByQuery = async ({ columns, query, client, getToken,
|
|
|
34
34
|
}
|
|
35
35
|
return uniqueValues;
|
|
36
36
|
};
|
|
37
|
-
export const getUniqueStringValuesByColumn = async ({ columns, tableName, client, getToken, tenants, customFields, withExceededColumns, query, dashboardName, }) => {
|
|
37
|
+
export const getUniqueStringValuesByColumn = async ({ columns, tableName, client, getToken, tenants, customFields, withExceededColumns, query, dashboardName, eventTracking, }) => {
|
|
38
38
|
const convertedStringColumns = columns.filter((column) => {
|
|
39
39
|
return isStringType(column.fieldType);
|
|
40
40
|
});
|
|
41
41
|
const stringNames = convertedStringColumns.map((column) => processColumnReference(column.field, client.databaseType, undefined, true));
|
|
42
42
|
const { filteredColumns: smallStringColumns, exceededColumns } = stringNames.length > 0
|
|
43
|
-
? await getCountsByColumns(convertedStringColumns, query || `Select ${stringNames.join(', ')} from ${tableName}`, client, getToken, tenants, customFields ?? [], dashboardName)
|
|
43
|
+
? await getCountsByColumns(convertedStringColumns, query || `Select ${stringNames.join(', ')} from ${tableName}`, client, getToken, tenants, customFields ?? [], eventTracking, dashboardName)
|
|
44
44
|
: { filteredColumns: [], exceededColumns: undefined };
|
|
45
45
|
const smallStringNames = smallStringColumns.map((column) => processColumnReference(column.field, client.databaseType, undefined, true));
|
|
46
46
|
const newUniqueValues = query || smallStringColumns.length > 0
|
|
@@ -53,6 +53,7 @@ export const getUniqueStringValuesByColumn = async ({ columns, tableName, client
|
|
|
53
53
|
tenants,
|
|
54
54
|
customFields: customFields ?? [],
|
|
55
55
|
dashboardName,
|
|
56
|
+
eventTracking,
|
|
56
57
|
})
|
|
57
58
|
: null;
|
|
58
59
|
if (!newUniqueValues) {
|
|
@@ -67,7 +68,7 @@ export const getUniqueStringValuesByColumn = async ({ columns, tableName, client
|
|
|
67
68
|
}
|
|
68
69
|
return newUniqueValues;
|
|
69
70
|
};
|
|
70
|
-
export const getUniqueStringValuesByTable = async ({ tables, columns, client, getToken, tenants, dashboardName, customFields, withExceededColumns, queryTemplate, }) => {
|
|
71
|
+
export const getUniqueStringValuesByTable = async ({ tables, columns, client, getToken, tenants, dashboardName, customFields, withExceededColumns, queryTemplate, eventTracking, }) => {
|
|
71
72
|
const uniqueValues = {};
|
|
72
73
|
await Promise.all(tables.map(async (tableName) => {
|
|
73
74
|
const tableColumns = columns.filter((column) => {
|
|
@@ -89,12 +90,13 @@ export const getUniqueStringValuesByTable = async ({ tables, columns, client, ge
|
|
|
89
90
|
customFields,
|
|
90
91
|
withExceededColumns,
|
|
91
92
|
query,
|
|
93
|
+
eventTracking,
|
|
92
94
|
});
|
|
93
95
|
uniqueValues[tableName] = newUniqueValues;
|
|
94
96
|
}));
|
|
95
97
|
return uniqueValues;
|
|
96
98
|
};
|
|
97
|
-
export const getRelevantInfoFromQuery = async ({ tables, columns, aliasedColumns, reportBuilderColumns, client, getToken, tenants, query, queryTemplate, customFields, dashboardName, }) => {
|
|
99
|
+
export const getRelevantInfoFromQuery = async ({ tables, columns, aliasedColumns, reportBuilderColumns, client, getToken, tenants, query, queryTemplate, customFields, dashboardName, eventTracking, }) => {
|
|
98
100
|
let dateRanges = {};
|
|
99
101
|
let uniqueStrings = null;
|
|
100
102
|
const columnUniqueValues = {};
|
|
@@ -110,6 +112,7 @@ export const getRelevantInfoFromQuery = async ({ tables, columns, aliasedColumns
|
|
|
110
112
|
customFields,
|
|
111
113
|
withExceededColumns: true,
|
|
112
114
|
queryTemplate,
|
|
115
|
+
eventTracking,
|
|
113
116
|
});
|
|
114
117
|
reportBuilderColumns.forEach((column) => {
|
|
115
118
|
columnUniqueValues[column.alias || column.field] =
|
|
@@ -119,13 +122,24 @@ export const getRelevantInfoFromQuery = async ({ tables, columns, aliasedColumns
|
|
|
119
122
|
return column.fieldType === 'date';
|
|
120
123
|
});
|
|
121
124
|
if (dateColumns.length > 0) {
|
|
122
|
-
dateRanges = await getQueryDateRangeByColumns(dateColumns, query, client, getToken, tenants, customFields, dashboardName);
|
|
125
|
+
dateRanges = await getQueryDateRangeByColumns(dateColumns, query, client, getToken, tenants, eventTracking, customFields, dashboardName);
|
|
123
126
|
if (dateRanges === null) {
|
|
124
127
|
throw new Error("Couldn't fetch date ranges");
|
|
125
128
|
}
|
|
126
129
|
}
|
|
127
130
|
}
|
|
128
131
|
catch (e) {
|
|
132
|
+
eventTracking?.logError?.({
|
|
133
|
+
type: 'bug', // TODO: determine type
|
|
134
|
+
severity: 'high',
|
|
135
|
+
message: 'Error fetching pivot info',
|
|
136
|
+
errorMessage: e.message,
|
|
137
|
+
errorStack: e.stack,
|
|
138
|
+
errorData: {
|
|
139
|
+
caller: 'getRelevantInfoFromQuery',
|
|
140
|
+
function: 'getRelevantInfoFromQuery',
|
|
141
|
+
},
|
|
142
|
+
});
|
|
129
143
|
error = "Couldn't fetch pivot info";
|
|
130
144
|
}
|
|
131
145
|
return {
|
|
@@ -135,7 +149,7 @@ export const getRelevantInfoFromQuery = async ({ tables, columns, aliasedColumns
|
|
|
135
149
|
error,
|
|
136
150
|
};
|
|
137
151
|
};
|
|
138
|
-
export const getCountsByColumns = async (columns, query, client, getToken, tenants, customFields, dashboardName) => {
|
|
152
|
+
export const getCountsByColumns = async (columns, query, client, getToken, tenants, customFields, eventTracking, dashboardName) => {
|
|
139
153
|
const stringNames = columns.map((column) => column.field);
|
|
140
154
|
const countQuery = generateCountQuery(stringNames, query, client.databaseType || 'postgresql');
|
|
141
155
|
try {
|
|
@@ -174,11 +188,21 @@ export const getCountsByColumns = async (columns, query, client, getToken, tenan
|
|
|
174
188
|
return { filteredColumns, exceededColumns };
|
|
175
189
|
}
|
|
176
190
|
catch (e) {
|
|
177
|
-
|
|
191
|
+
eventTracking?.logError?.({
|
|
192
|
+
type: 'bug', // TODO: determine type
|
|
193
|
+
severity: 'high',
|
|
194
|
+
message: 'Error fetching counts by columns',
|
|
195
|
+
errorMessage: e.message,
|
|
196
|
+
errorStack: e.stack,
|
|
197
|
+
errorData: {
|
|
198
|
+
caller: 'getCountsByColumns',
|
|
199
|
+
function: 'getCountsByColumns',
|
|
200
|
+
},
|
|
201
|
+
});
|
|
178
202
|
return { filteredColumns: columns, exceededColumns: undefined };
|
|
179
203
|
}
|
|
180
204
|
};
|
|
181
|
-
const fetchDistinctStrings = async (query, client, getToken, tenants, customFields, filters, dashboardName) => {
|
|
205
|
+
const fetchDistinctStrings = async (query, client, getToken, tenants, eventTracking, customFields, filters, dashboardName) => {
|
|
182
206
|
try {
|
|
183
207
|
const { data } = await quillFetch({
|
|
184
208
|
client,
|
|
@@ -231,18 +255,29 @@ const fetchDistinctStrings = async (query, client, getToken, tenants, customFiel
|
|
|
231
255
|
return results;
|
|
232
256
|
}
|
|
233
257
|
catch (e) {
|
|
258
|
+
eventTracking?.logError?.({
|
|
259
|
+
type: 'bug', // TODO: determine type
|
|
260
|
+
severity: 'high',
|
|
261
|
+
message: 'Error fetching distinct strings',
|
|
262
|
+
errorMessage: e.message,
|
|
263
|
+
errorStack: e.stack,
|
|
264
|
+
errorData: {
|
|
265
|
+
caller: 'fetchDistinctStrings',
|
|
266
|
+
function: 'fetchDistinctStrings',
|
|
267
|
+
},
|
|
268
|
+
});
|
|
234
269
|
return null;
|
|
235
270
|
}
|
|
236
271
|
};
|
|
237
|
-
export const getQueryDateRangeByColumns = async (columns, query, client, getToken, tenants, customFields, dashboardName) => {
|
|
272
|
+
export const getQueryDateRangeByColumns = async (columns, query, client, getToken, tenants, eventTracking, customFields, dashboardName) => {
|
|
238
273
|
const columnNames = columns.map(
|
|
239
274
|
// @ts-ignore
|
|
240
275
|
(column) => column.field || column.name);
|
|
241
276
|
const distinctValueQuery = generateMinMaxDateRangeQueries(columnNames, query, client.databaseType || 'postgresql');
|
|
242
|
-
const dateRanges = await fetchQueryDateRanges(distinctValueQuery, client, getToken, tenants, customFields, dashboardName);
|
|
277
|
+
const dateRanges = await fetchQueryDateRanges(distinctValueQuery, client, getToken, tenants, eventTracking, customFields, dashboardName);
|
|
243
278
|
return dateRanges;
|
|
244
279
|
};
|
|
245
|
-
const fetchQueryDateRanges = async (query, client, getToken, tenants, customFields, dashboardName) => {
|
|
280
|
+
const fetchQueryDateRanges = async (query, client, getToken, tenants, eventTracking, customFields, dashboardName) => {
|
|
246
281
|
try {
|
|
247
282
|
const { data } = await quillFetch({
|
|
248
283
|
client,
|
|
@@ -270,11 +305,22 @@ const fetchQueryDateRanges = async (query, client, getToken, tenants, customFiel
|
|
|
270
305
|
return results;
|
|
271
306
|
}
|
|
272
307
|
catch (e) {
|
|
308
|
+
eventTracking?.logError?.({
|
|
309
|
+
type: 'bug', // TODO: determine type
|
|
310
|
+
severity: 'high',
|
|
311
|
+
message: 'Error fetching query date ranges',
|
|
312
|
+
errorMessage: e.message,
|
|
313
|
+
errorStack: e.stack,
|
|
314
|
+
errorData: {
|
|
315
|
+
caller: 'fetchQueryDateRanges',
|
|
316
|
+
function: 'fetchQueryDateRanges',
|
|
317
|
+
},
|
|
318
|
+
});
|
|
273
319
|
return null;
|
|
274
320
|
}
|
|
275
321
|
};
|
|
276
322
|
// Unused?
|
|
277
|
-
export const getPaginatedRows = async (client, getToken, tenants, dashboardName, query, reportId, processing, filters, customFields) => {
|
|
323
|
+
export const getPaginatedRows = async (client, getToken, eventTracking, tenants, dashboardName, query, reportId, processing, filters, customFields) => {
|
|
278
324
|
if (query) {
|
|
279
325
|
return await fetchResultsByQuery({
|
|
280
326
|
query,
|
|
@@ -285,6 +331,7 @@ export const getPaginatedRows = async (client, getToken, tenants, dashboardName,
|
|
|
285
331
|
filters,
|
|
286
332
|
dashboardName,
|
|
287
333
|
getToken,
|
|
334
|
+
eventTracking,
|
|
288
335
|
});
|
|
289
336
|
}
|
|
290
337
|
else if (reportId) {
|
|
@@ -296,11 +343,12 @@ export const getPaginatedRows = async (client, getToken, tenants, dashboardName,
|
|
|
296
343
|
filters,
|
|
297
344
|
customFields,
|
|
298
345
|
getToken,
|
|
346
|
+
eventTracking,
|
|
299
347
|
});
|
|
300
348
|
}
|
|
301
349
|
return { rows: [], columns: [] };
|
|
302
350
|
};
|
|
303
|
-
export const fetchResultsByQuery = async ({ query, client, tenants, processing, customFields, filters, dateField, rowsOnly, rowCountOnly, filterMap, dashboardName, pivot, getPivotRowCount = true, comparisonQuery, getToken, }) => {
|
|
351
|
+
export const fetchResultsByQuery = async ({ query, client, tenants, processing, customFields, filters, dateField, rowsOnly, rowCountOnly, filterMap, dashboardName, pivot, getPivotRowCount = true, comparisonQuery, getToken, eventTracking, }) => {
|
|
304
352
|
let rows = [];
|
|
305
353
|
let columns = [];
|
|
306
354
|
let error = undefined;
|
|
@@ -409,6 +457,17 @@ export const fetchResultsByQuery = async ({ query, client, tenants, processing,
|
|
|
409
457
|
}
|
|
410
458
|
}
|
|
411
459
|
catch (e) {
|
|
460
|
+
eventTracking?.logError?.({
|
|
461
|
+
type: 'bug', // TODO: determine type
|
|
462
|
+
severity: 'high',
|
|
463
|
+
message: 'Error fetching results by query',
|
|
464
|
+
errorMessage: e.message,
|
|
465
|
+
errorStack: e.stack,
|
|
466
|
+
errorData: {
|
|
467
|
+
caller: 'fetchResultsByQuery',
|
|
468
|
+
function: 'fetchResultsByQuery',
|
|
469
|
+
},
|
|
470
|
+
});
|
|
412
471
|
rows = [];
|
|
413
472
|
columns = [];
|
|
414
473
|
error = e.message || e;
|
|
@@ -418,7 +477,7 @@ export const fetchResultsByQuery = async ({ query, client, tenants, processing,
|
|
|
418
477
|
}
|
|
419
478
|
return { rows, columns, rowCount, error, itemQuery, referencedTables };
|
|
420
479
|
};
|
|
421
|
-
export const fetchResultsByReport = async ({ reportId, client, tenants, processing, filters, customFields, rowsOnly, rowCountOnly, abortSignal, pivot, pivotQuery, comparisonPivotQuery, getPivotRowCount = true, getToken, }) => {
|
|
480
|
+
export const fetchResultsByReport = async ({ reportId, client, tenants, processing, filters, customFields, rowsOnly, rowCountOnly, abortSignal, pivot, pivotQuery, comparisonPivotQuery, getPivotRowCount = true, getToken, eventTracking, }) => {
|
|
422
481
|
if (pivot && pivotQuery) {
|
|
423
482
|
return fetchResultsByQuery({
|
|
424
483
|
query: pivotQuery,
|
|
@@ -431,6 +490,7 @@ export const fetchResultsByReport = async ({ reportId, client, tenants, processi
|
|
|
431
490
|
pivot,
|
|
432
491
|
getPivotRowCount,
|
|
433
492
|
getToken,
|
|
493
|
+
eventTracking,
|
|
434
494
|
});
|
|
435
495
|
}
|
|
436
496
|
const updatedProcessing = { ...processing };
|
|
@@ -494,6 +554,17 @@ export const fetchResultsByReport = async ({ reportId, client, tenants, processi
|
|
|
494
554
|
if (e instanceof Error && e.name === 'AbortError') {
|
|
495
555
|
throw e;
|
|
496
556
|
}
|
|
557
|
+
eventTracking?.logError?.({
|
|
558
|
+
type: 'bug', // TODO: determine type
|
|
559
|
+
severity: 'high',
|
|
560
|
+
message: 'Error fetching results by report',
|
|
561
|
+
errorMessage: e.message,
|
|
562
|
+
errorStack: e.stack,
|
|
563
|
+
errorData: {
|
|
564
|
+
caller: 'fetchResultsByReport',
|
|
565
|
+
function: 'fetchResultsByReport',
|
|
566
|
+
},
|
|
567
|
+
});
|
|
497
568
|
rows = [];
|
|
498
569
|
columns = [];
|
|
499
570
|
rowCount = 0;
|
|
@@ -504,7 +575,7 @@ export const fetchResultsByReport = async ({ reportId, client, tenants, processi
|
|
|
504
575
|
}
|
|
505
576
|
return { rows, columns, rowCount, error };
|
|
506
577
|
};
|
|
507
|
-
export const fetchTableByAST = async (ast, client, getToken, tenants, dashboardName, processing, customFields, rowsOnly, rowCountOnly) => {
|
|
578
|
+
export const fetchTableByAST = async (ast, client, getToken, tenants, eventTracking, dashboardName, processing, customFields, rowsOnly, rowCountOnly) => {
|
|
508
579
|
let rows = [];
|
|
509
580
|
let columns = [];
|
|
510
581
|
let rowCount;
|
|
@@ -557,6 +628,17 @@ export const fetchTableByAST = async (ast, client, getToken, tenants, dashboardN
|
|
|
557
628
|
}
|
|
558
629
|
}
|
|
559
630
|
catch (e) {
|
|
631
|
+
eventTracking?.logError?.({
|
|
632
|
+
type: 'bug', // TODO: determine type
|
|
633
|
+
severity: 'high',
|
|
634
|
+
message: 'Error fetching table by AST',
|
|
635
|
+
errorMessage: e.message,
|
|
636
|
+
errorStack: e.stack,
|
|
637
|
+
errorData: {
|
|
638
|
+
caller: 'fetchTableByAST',
|
|
639
|
+
function: 'fetchTableByAST',
|
|
640
|
+
},
|
|
641
|
+
});
|
|
560
642
|
rows = [];
|
|
561
643
|
columns = [];
|
|
562
644
|
rowCount = 0;
|