@quillsql/react 2.13.40 → 2.13.42
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 +5 -1
- package/dist/cjs/Chart.d.ts.map +1 -1
- package/dist/cjs/Chart.js +51 -28
- package/dist/cjs/ChartBuilder.d.ts +30 -3
- package/dist/cjs/ChartBuilder.d.ts.map +1 -1
- package/dist/cjs/ChartBuilder.js +483 -182
- package/dist/cjs/ChartEditor.d.ts.map +1 -1
- package/dist/cjs/ChartEditor.js +11 -1
- package/dist/cjs/Context.d.ts +16 -4
- package/dist/cjs/Context.d.ts.map +1 -1
- package/dist/cjs/Context.js +95 -46
- package/dist/cjs/Dashboard.d.ts +6 -3
- package/dist/cjs/Dashboard.d.ts.map +1 -1
- package/dist/cjs/Dashboard.js +69 -28
- package/dist/cjs/QuillProvider.d.ts +4 -8
- package/dist/cjs/QuillProvider.d.ts.map +1 -1
- package/dist/cjs/ReportBuilder.d.ts +2 -1
- package/dist/cjs/ReportBuilder.d.ts.map +1 -1
- package/dist/cjs/ReportBuilder.js +190 -48
- package/dist/cjs/SQLEditor.d.ts +8 -1
- package/dist/cjs/SQLEditor.d.ts.map +1 -1
- package/dist/cjs/SQLEditor.js +94 -10
- package/dist/cjs/Table.d.ts +21 -1
- package/dist/cjs/Table.d.ts.map +1 -1
- package/dist/cjs/Table.js +30 -192
- package/dist/cjs/components/Chart/BarChart.d.ts +5 -1
- package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/BarChart.js +4 -3
- package/dist/cjs/components/Chart/CustomReferenceLine.d.ts +2 -0
- package/dist/cjs/components/Chart/CustomReferenceLine.d.ts.map +1 -0
- package/dist/cjs/components/Chart/CustomReferenceLine.js +26 -0
- package/dist/cjs/components/Chart/GaugeChart.d.ts +11 -0
- package/dist/cjs/components/Chart/GaugeChart.d.ts.map +1 -0
- package/dist/cjs/components/Chart/GaugeChart.js +198 -0
- package/dist/cjs/components/Chart/InternalChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/InternalChart.js +14 -11
- package/dist/cjs/components/Chart/LineChart.d.ts +5 -1
- package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/LineChart.js +4 -3
- package/dist/cjs/components/Chart/MapChart.d.ts +36 -0
- package/dist/cjs/components/Chart/MapChart.d.ts.map +1 -0
- package/dist/cjs/components/Chart/MapChart.js +548 -0
- package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DataLoader.js +114 -42
- package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/MetricComponent.js +57 -54
- package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/TableComponent.js +5 -1
- package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
- package/dist/cjs/components/QuillMultiSelectWithCombo.js +5 -4
- package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -1
- package/dist/cjs/components/QuillSelectWithCombo.js +12 -11
- package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/AddColumnModal.js +2 -1
- package/dist/cjs/components/ReportBuilder/FilterModal.js +13 -13
- package/dist/cjs/components/ReportBuilder/FilterStack.d.ts +2 -1
- package/dist/cjs/components/ReportBuilder/FilterStack.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/FilterStack.js +4 -4
- package/dist/cjs/components/ReportBuilder/convert.d.ts +2 -0
- package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/convert.js +28 -7
- package/dist/cjs/components/ReportBuilder/util.d.ts +1 -1
- package/dist/cjs/components/ReportBuilder/util.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/util.js +15 -2
- 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 +34 -7
- package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
- package/dist/cjs/hooks/useDashboard.js +11 -9
- package/dist/cjs/hooks/useExport.d.ts.map +1 -1
- package/dist/cjs/hooks/useExport.js +18 -4
- package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
- package/dist/cjs/hooks/useQuill.js +16 -3
- package/dist/cjs/hooks/useReport.d.ts.map +1 -1
- package/dist/cjs/hooks/useReport.js +1 -7
- package/dist/cjs/hooks/useVirtualTables.d.ts +6 -2
- package/dist/cjs/hooks/useVirtualTables.d.ts.map +1 -1
- package/dist/cjs/hooks/useVirtualTables.js +5 -2
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotModal.js +7 -8
- package/dist/cjs/models/Columns.d.ts +1 -0
- package/dist/cjs/models/Columns.d.ts.map +1 -1
- package/dist/cjs/models/Filter.d.ts +20 -13
- package/dist/cjs/models/Filter.d.ts.map +1 -1
- package/dist/cjs/models/Filter.js +161 -87
- package/dist/cjs/models/Report.d.ts +12 -1
- package/dist/cjs/models/Report.d.ts.map +1 -1
- package/dist/cjs/models/Schema.d.ts +12 -1
- package/dist/cjs/models/Schema.d.ts.map +1 -1
- package/dist/cjs/utils/astFilterProcessing.js +22 -22
- package/dist/cjs/utils/astProcessing.d.ts +2 -2
- package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/astProcessing.js +25 -6
- package/dist/cjs/utils/axisFormatter.d.ts.map +1 -1
- package/dist/cjs/utils/axisFormatter.js +25 -0
- package/dist/cjs/utils/color.d.ts +159 -0
- package/dist/cjs/utils/color.d.ts.map +1 -1
- package/dist/cjs/utils/color.js +14 -5
- package/dist/cjs/utils/columnProcessing.js +3 -3
- package/dist/cjs/utils/constants.d.ts +1 -0
- package/dist/cjs/utils/constants.d.ts.map +1 -1
- package/dist/cjs/utils/constants.js +2 -1
- package/dist/cjs/utils/dashboard.d.ts +14 -3
- package/dist/cjs/utils/dashboard.d.ts.map +1 -1
- package/dist/cjs/utils/dashboard.js +79 -16
- package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
- package/dist/cjs/utils/dataFetcher.js +3 -1
- package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/filterProcessing.js +9 -9
- package/dist/cjs/utils/getDomain.d.ts +4 -1
- package/dist/cjs/utils/getDomain.d.ts.map +1 -1
- package/dist/cjs/utils/getDomain.js +11 -1
- package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
- package/dist/cjs/utils/pivotConstructor.js +9 -6
- package/dist/cjs/utils/queryConstructor.d.ts +1 -1
- package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
- package/dist/cjs/utils/queryConstructor.js +83 -49
- package/dist/cjs/utils/report.d.ts +23 -5
- package/dist/cjs/utils/report.d.ts.map +1 -1
- package/dist/cjs/utils/report.js +36 -14
- package/dist/cjs/utils/schema.d.ts +28 -3
- package/dist/cjs/utils/schema.d.ts.map +1 -1
- package/dist/cjs/utils/schema.js +79 -43
- package/dist/cjs/utils/tableProcessing.d.ts +12 -3
- package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/tableProcessing.js +36 -8
- package/dist/cjs/utils/textProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/textProcessing.js +0 -1
- package/dist/cjs/utils/valueFormatter.d.ts +1 -0
- package/dist/cjs/utils/valueFormatter.d.ts.map +1 -1
- package/dist/cjs/utils/valueFormatter.js +55 -1
- package/dist/esm/Chart.d.ts +5 -1
- package/dist/esm/Chart.d.ts.map +1 -1
- package/dist/esm/Chart.js +52 -29
- package/dist/esm/ChartBuilder.d.ts +30 -3
- package/dist/esm/ChartBuilder.d.ts.map +1 -1
- package/dist/esm/ChartBuilder.js +487 -187
- package/dist/esm/ChartEditor.d.ts.map +1 -1
- package/dist/esm/ChartEditor.js +11 -1
- package/dist/esm/Context.d.ts +16 -4
- package/dist/esm/Context.d.ts.map +1 -1
- package/dist/esm/Context.js +97 -48
- package/dist/esm/Dashboard.d.ts +6 -3
- package/dist/esm/Dashboard.d.ts.map +1 -1
- package/dist/esm/Dashboard.js +70 -29
- package/dist/esm/QuillProvider.d.ts +4 -8
- package/dist/esm/QuillProvider.d.ts.map +1 -1
- package/dist/esm/ReportBuilder.d.ts +2 -1
- package/dist/esm/ReportBuilder.d.ts.map +1 -1
- package/dist/esm/ReportBuilder.js +192 -50
- package/dist/esm/SQLEditor.d.ts +8 -1
- package/dist/esm/SQLEditor.d.ts.map +1 -1
- package/dist/esm/SQLEditor.js +95 -11
- package/dist/esm/Table.d.ts +21 -1
- package/dist/esm/Table.d.ts.map +1 -1
- package/dist/esm/Table.js +34 -196
- package/dist/esm/components/Chart/BarChart.d.ts +5 -1
- package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/BarChart.js +5 -4
- package/dist/esm/components/Chart/CustomReferenceLine.d.ts +2 -0
- package/dist/esm/components/Chart/CustomReferenceLine.d.ts.map +1 -0
- package/dist/esm/components/Chart/CustomReferenceLine.js +23 -0
- package/dist/esm/components/Chart/GaugeChart.d.ts +11 -0
- package/dist/esm/components/Chart/GaugeChart.d.ts.map +1 -0
- package/dist/esm/components/Chart/GaugeChart.js +195 -0
- package/dist/esm/components/Chart/InternalChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/InternalChart.js +14 -11
- package/dist/esm/components/Chart/LineChart.d.ts +5 -1
- package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/LineChart.js +5 -4
- package/dist/esm/components/Chart/MapChart.d.ts +36 -0
- package/dist/esm/components/Chart/MapChart.d.ts.map +1 -0
- package/dist/esm/components/Chart/MapChart.js +541 -0
- package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DataLoader.js +114 -42
- package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/MetricComponent.js +57 -54
- package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/TableComponent.js +5 -1
- package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
- package/dist/esm/components/QuillMultiSelectWithCombo.js +5 -4
- package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -1
- package/dist/esm/components/QuillSelectWithCombo.js +12 -11
- package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/AddColumnModal.js +2 -1
- package/dist/esm/components/ReportBuilder/FilterModal.js +14 -14
- package/dist/esm/components/ReportBuilder/FilterStack.d.ts +2 -1
- package/dist/esm/components/ReportBuilder/FilterStack.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/FilterStack.js +4 -4
- package/dist/esm/components/ReportBuilder/convert.d.ts +2 -0
- package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/convert.js +26 -7
- package/dist/esm/components/ReportBuilder/util.d.ts +1 -1
- package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/util.js +15 -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 +32 -6
- package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
- package/dist/esm/hooks/useDashboard.js +11 -9
- package/dist/esm/hooks/useExport.d.ts.map +1 -1
- package/dist/esm/hooks/useExport.js +19 -5
- package/dist/esm/hooks/useQuill.d.ts.map +1 -1
- package/dist/esm/hooks/useQuill.js +16 -3
- package/dist/esm/hooks/useReport.d.ts.map +1 -1
- package/dist/esm/hooks/useReport.js +1 -7
- package/dist/esm/hooks/useVirtualTables.d.ts +6 -2
- package/dist/esm/hooks/useVirtualTables.d.ts.map +1 -1
- package/dist/esm/hooks/useVirtualTables.js +6 -3
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.js +7 -8
- package/dist/esm/models/Columns.d.ts +1 -0
- package/dist/esm/models/Columns.d.ts.map +1 -1
- package/dist/esm/models/Filter.d.ts +20 -13
- package/dist/esm/models/Filter.d.ts.map +1 -1
- package/dist/esm/models/Filter.js +160 -86
- package/dist/esm/models/Report.d.ts +12 -1
- package/dist/esm/models/Report.d.ts.map +1 -1
- package/dist/esm/models/Schema.d.ts +12 -1
- package/dist/esm/models/Schema.d.ts.map +1 -1
- package/dist/esm/utils/astFilterProcessing.js +23 -23
- package/dist/esm/utils/astProcessing.d.ts +2 -2
- package/dist/esm/utils/astProcessing.d.ts.map +1 -1
- package/dist/esm/utils/astProcessing.js +25 -6
- package/dist/esm/utils/axisFormatter.d.ts.map +1 -1
- package/dist/esm/utils/axisFormatter.js +25 -0
- package/dist/esm/utils/color.d.ts +159 -0
- package/dist/esm/utils/color.d.ts.map +1 -1
- package/dist/esm/utils/color.js +8 -2
- package/dist/esm/utils/columnProcessing.js +3 -3
- package/dist/esm/utils/constants.d.ts +1 -0
- package/dist/esm/utils/constants.d.ts.map +1 -1
- package/dist/esm/utils/constants.js +1 -0
- package/dist/esm/utils/dashboard.d.ts +14 -3
- package/dist/esm/utils/dashboard.d.ts.map +1 -1
- package/dist/esm/utils/dashboard.js +80 -17
- package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
- package/dist/esm/utils/dataFetcher.js +3 -1
- package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
- package/dist/esm/utils/filterProcessing.js +10 -10
- package/dist/esm/utils/getDomain.d.ts +4 -1
- package/dist/esm/utils/getDomain.d.ts.map +1 -1
- package/dist/esm/utils/getDomain.js +11 -1
- package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
- package/dist/esm/utils/pivotConstructor.js +9 -6
- package/dist/esm/utils/queryConstructor.d.ts +1 -1
- package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
- package/dist/esm/utils/queryConstructor.js +83 -49
- package/dist/esm/utils/report.d.ts +23 -5
- package/dist/esm/utils/report.d.ts.map +1 -1
- package/dist/esm/utils/report.js +38 -16
- package/dist/esm/utils/schema.d.ts +28 -3
- package/dist/esm/utils/schema.d.ts.map +1 -1
- package/dist/esm/utils/schema.js +78 -43
- package/dist/esm/utils/tableProcessing.d.ts +12 -3
- package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
- package/dist/esm/utils/tableProcessing.js +36 -8
- package/dist/esm/utils/textProcessing.d.ts.map +1 -1
- package/dist/esm/utils/textProcessing.js +0 -1
- package/dist/esm/utils/valueFormatter.d.ts +1 -0
- package/dist/esm/utils/valueFormatter.d.ts.map +1 -1
- package/dist/esm/utils/valueFormatter.js +53 -0
- package/package.json +10 -3
package/dist/cjs/utils/report.js
CHANGED
|
@@ -69,10 +69,14 @@ function extractAllReportValuesFromQuillInternalReport(reportInternal) {
|
|
|
69
69
|
queryString: reportInternal.queryString,
|
|
70
70
|
rowCount: reportInternal.rowCount,
|
|
71
71
|
template: reportInternal.template,
|
|
72
|
+
referenceLineYValues: reportInternal.referenceLineYValues,
|
|
73
|
+
referenceLines: reportInternal.referenceLines,
|
|
74
|
+
includeCustomFields: reportInternal.includeCustomFields,
|
|
75
|
+
columnsWithCustomFields: reportInternal.columnsWithCustomFields,
|
|
72
76
|
};
|
|
73
77
|
}
|
|
74
78
|
// TODO: Convert this to take an object rather than a bunch of arguments
|
|
75
|
-
async function fetchReport(reportId, client, tenants, flags, useReportTask = true, filters = [], additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly, abortSignal, getDefaultDashboardFilters) {
|
|
79
|
+
async function fetchReport({ reportId, client, tenants, flags, useReportTask = true, filters = [], additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly, abortSignal, getDefaultDashboardFilters, }) {
|
|
76
80
|
let reportInfo = undefined;
|
|
77
81
|
let errorMessage = undefined;
|
|
78
82
|
try {
|
|
@@ -107,6 +111,7 @@ async function fetchReport(reportId, client, tenants, flags, useReportTask = tru
|
|
|
107
111
|
filters,
|
|
108
112
|
dateBucket,
|
|
109
113
|
additionalProcessing,
|
|
114
|
+
customFields,
|
|
110
115
|
});
|
|
111
116
|
}
|
|
112
117
|
catch (error) {
|
|
@@ -135,10 +140,10 @@ async function fetchReport(reportId, client, tenants, flags, useReportTask = tru
|
|
|
135
140
|
}
|
|
136
141
|
return { report: reportInfo || exports.EMPTY_INTERNAL_REPORT, error: errorMessage };
|
|
137
142
|
}
|
|
138
|
-
async function processReportResponse({ resp, client, filters, dateBucket, additionalProcessing, }) {
|
|
143
|
+
async function processReportResponse({ resp, client, filters, dateBucket, additionalProcessing, customFields, }) {
|
|
139
144
|
const dashboardItem = {
|
|
140
145
|
...resp,
|
|
141
|
-
filtersApplied: filters?.filter((filter) => filter.filterType in Filter_1.
|
|
146
|
+
filtersApplied: filters?.filter((filter) => filter.filterType in Filter_1.InternalFilterType),
|
|
142
147
|
};
|
|
143
148
|
if (resp.errorMessage) {
|
|
144
149
|
throw new error_1.DataLoadError(resp?.errorMessage, {
|
|
@@ -155,7 +160,14 @@ async function processReportResponse({ resp, client, filters, dateBucket, additi
|
|
|
155
160
|
(0, dataProcessing_1.parseValueFromBigQueryDates)(dashboardItem.compareRows, resp.fields);
|
|
156
161
|
}
|
|
157
162
|
}
|
|
158
|
-
const reportInfo = await (0, dashboard_1.cleanDashboardItem)(
|
|
163
|
+
const reportInfo = await (0, dashboard_1.cleanDashboardItem)({
|
|
164
|
+
item: dashboardItem,
|
|
165
|
+
dashboardFilters: filters,
|
|
166
|
+
client,
|
|
167
|
+
dateBucket,
|
|
168
|
+
additionalProcessing,
|
|
169
|
+
customFields,
|
|
170
|
+
});
|
|
159
171
|
if (additionalProcessing) {
|
|
160
172
|
reportInfo.pagination = additionalProcessing.page;
|
|
161
173
|
reportInfo.sort = additionalProcessing.sort;
|
|
@@ -257,15 +269,22 @@ const formatRowsFromReport = (report, xAxisField, xAxisFormat) => {
|
|
|
257
269
|
if (!report.rows || !report.columns) {
|
|
258
270
|
return [];
|
|
259
271
|
}
|
|
272
|
+
const columns = report.includeCustomFields &&
|
|
273
|
+
report.columnsWithCustomFields &&
|
|
274
|
+
!report.pivot
|
|
275
|
+
? report.columnsWithCustomFields
|
|
276
|
+
: report.columns;
|
|
260
277
|
return report.rows.map((row) => {
|
|
261
|
-
return
|
|
278
|
+
return columns.reduce((formattedRow, column) => {
|
|
262
279
|
// Apply the format function to each field in the row
|
|
263
|
-
const formattedValue =
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
: column.
|
|
268
|
-
|
|
280
|
+
const formattedValue = column.inferFormat
|
|
281
|
+
? (0, valueFormatter_1.quillAutoFormat)(row[column.field])
|
|
282
|
+
: (0, valueFormatter_1.quillFormat)({
|
|
283
|
+
value: row[column.field],
|
|
284
|
+
format: column.field === xAxisField && xAxisFormat
|
|
285
|
+
? xAxisFormat
|
|
286
|
+
: column.format,
|
|
287
|
+
});
|
|
269
288
|
formattedRow[column.field] = formattedValue;
|
|
270
289
|
return formattedRow;
|
|
271
290
|
}, {});
|
|
@@ -282,7 +301,8 @@ function convertInternalReportToReport(report, dashboardFilters, initiator) {
|
|
|
282
301
|
};
|
|
283
302
|
if (formattedReport.pivot &&
|
|
284
303
|
(0, pivotProcessing_1.isValidPivot)(formattedReport.pivot).valid &&
|
|
285
|
-
initiator !== 'useQuill'
|
|
304
|
+
initiator !== 'useQuill' &&
|
|
305
|
+
initiator !== 'Table') {
|
|
286
306
|
let columns = report.pivotColumns ?? report.columns;
|
|
287
307
|
let rows = report.pivotRows ?? report.rows;
|
|
288
308
|
if (report.chartType === 'table') {
|
|
@@ -356,7 +376,7 @@ const fetchReportBuilderDataFromAST = async ({ baseAst, formData, schema, client
|
|
|
356
376
|
if (!table || !tableInfo) {
|
|
357
377
|
throw new Error('No table found');
|
|
358
378
|
}
|
|
359
|
-
const tableData = await (0, tableProcessing_1.fetchTableByAST)({ ...baseAst, where: formData }, client, tenants, processing ?? { page: paginationProcessing_1.DEFAULT_PAGINATION },
|
|
379
|
+
const tableData = await (0, tableProcessing_1.fetchTableByAST)({ ...baseAst, where: formData }, client, tenants, processing ?? { page: paginationProcessing_1.DEFAULT_PAGINATION }, customFields, skipRowCount, undefined, dashboardName);
|
|
360
380
|
if (tableData.error) {
|
|
361
381
|
throw new Error(tableData.error);
|
|
362
382
|
}
|
|
@@ -384,6 +404,8 @@ const fetchReportBuilderDataFromAST = async ({ baseAst, formData, schema, client
|
|
|
384
404
|
};
|
|
385
405
|
}),
|
|
386
406
|
columnInternal: tableData.columns,
|
|
407
|
+
referenceLines: report?.referenceLines,
|
|
408
|
+
referenceLineYValues: report?.referenceLineYValues,
|
|
387
409
|
};
|
|
388
410
|
if (table !== currentTable || previousFormData !== formData) {
|
|
389
411
|
const queryResult = await (0, dataFetcher_1.fetchSqlQuery)({
|
|
@@ -424,7 +446,7 @@ const fetchReportBuilderDataFromAST = async ({ baseAst, formData, schema, client
|
|
|
424
446
|
}
|
|
425
447
|
if (!Object.values(relevantInfo.uniqueStrings[table] ?? {}).length ||
|
|
426
448
|
!(0, fast_deep_equal_1.default)(formData, previousFormData)) {
|
|
427
|
-
relevantInfo.uniqueStrings[table] = await (0, tableProcessing_1.getUniqueStringValues)(tableInfo.columns.filter((column) => column.field === pivot?.columnField), table, client, tenants, customFields, undefined, undefined, query ? query : (report?.queryString ?? ''));
|
|
449
|
+
relevantInfo.uniqueStrings[table] = await (0, tableProcessing_1.getUniqueStringValues)(tableInfo.columns.filter((column) => column.field === pivot?.columnField), table, client, tenants, customFields, undefined, undefined, query ? query : (report?.queryString ?? ''), report?.dashboardName);
|
|
428
450
|
}
|
|
429
451
|
newPivotData = await (0, PivotModal_1.generatePivotTable)({
|
|
430
452
|
pivot,
|
|
@@ -1,8 +1,33 @@
|
|
|
1
1
|
import { QuillProviderClient } from '../models/Client';
|
|
2
|
+
import { ColumnInternal } from '../models/Columns';
|
|
3
|
+
import { CustomField } from '../models/Schema';
|
|
2
4
|
import { Table } from '../models/Tables';
|
|
3
|
-
export declare const getCustomFieldInfo: (client
|
|
4
|
-
|
|
5
|
+
export declare const getCustomFieldInfo: ({ client, tenants, caller, abortSignal, }: {
|
|
6
|
+
client: QuillProviderClient;
|
|
7
|
+
tenants: {
|
|
8
|
+
tenantField: string;
|
|
9
|
+
tenantIds: (string | number)[];
|
|
10
|
+
}[] | (string | number)[];
|
|
11
|
+
caller?: string;
|
|
12
|
+
abortSignal?: AbortSignal;
|
|
13
|
+
}) => Promise<{
|
|
14
|
+
[tableName: string]: CustomField[];
|
|
15
|
+
} | null>;
|
|
16
|
+
export declare const getSchemaInfo: ({ client, caller, tenants, tableIds, abortSignal, }: {
|
|
17
|
+
client: QuillProviderClient;
|
|
18
|
+
tenants?: {
|
|
19
|
+
tenantField: string;
|
|
20
|
+
tenantIds: (string | number)[];
|
|
21
|
+
}[] | (string | number)[];
|
|
22
|
+
caller?: string;
|
|
23
|
+
tableIds?: string[];
|
|
24
|
+
abortSignal?: AbortSignal;
|
|
25
|
+
}) => Promise<{
|
|
5
26
|
schemaData: Table[];
|
|
6
|
-
customFieldsByTable:
|
|
27
|
+
customFieldsByTable: {
|
|
28
|
+
[tableName: string]: CustomField[];
|
|
29
|
+
} | null;
|
|
30
|
+
schemaWithCustomFields: Table[];
|
|
7
31
|
}>;
|
|
32
|
+
export declare const customFieldToColumnInternal: (customField: CustomField) => ColumnInternal;
|
|
8
33
|
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AA8BzC,eAAO,MAAM,kBAAkB,8CAK5B;IACD,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EACH;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;KAAE,EAAE,GACzD,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,KAAG,OAAO,CAAC;IAAE,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,EAAE,CAAA;CAAE,GAAG,IAAI,CAmFxD,CAAC;AAEF,eAAO,MAAM,aAAa,wDAMvB;IACD,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,CAAC,EACJ;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;KAAE,EAAE,GACzD,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,KAAG,OAAO,CAAC;IACV,UAAU,EAAE,KAAK,EAAE,CAAC;IACpB,mBAAmB,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IACnE,sBAAsB,EAAE,KAAK,EAAE,CAAC;CACjC,CAiEA,CAAC;AA0BF,eAAO,MAAM,2BAA2B,gBACzB,WAAW,KACvB,cAaF,CAAC"}
|
package/dist/cjs/utils/schema.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getSchemaInfo = exports.getCustomFieldInfo = void 0;
|
|
3
|
+
exports.customFieldToColumnInternal = exports.getSchemaInfo = exports.getCustomFieldInfo = void 0;
|
|
4
4
|
const columnProcessing_1 = require("./columnProcessing");
|
|
5
5
|
const parseResponse = (results) => {
|
|
6
6
|
if (results.data?.data) {
|
|
@@ -23,14 +23,16 @@ const parseResponse = (results) => {
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
};
|
|
26
|
-
const getCustomFieldInfo = async (client, caller = 'se') => {
|
|
27
|
-
let
|
|
26
|
+
const getCustomFieldInfo = async ({ client, tenants, caller = 'se', abortSignal, }) => {
|
|
27
|
+
let customFieldsByTableUniqueRows = [];
|
|
28
28
|
try {
|
|
29
|
-
const { queryEndpoint, queryHeaders, publicKey, databaseType
|
|
30
|
-
if (
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
const { queryEndpoint, queryHeaders, publicKey, databaseType } = client;
|
|
30
|
+
// if (
|
|
31
|
+
// (databaseType && databaseType.toLowerCase() !== 'postgresql') ||
|
|
32
|
+
// !['665610862cf7a3000be66453'].includes(publicKey)
|
|
33
|
+
// ) {
|
|
34
|
+
// throw new Error('CUSTOM FIELDS IS ONLY ALLOWED FOR POSTGRESQL DATABASES');
|
|
35
|
+
// }
|
|
34
36
|
const response = await fetch(`${queryEndpoint}?cfr-${caller}`, {
|
|
35
37
|
method: 'POST',
|
|
36
38
|
headers: {
|
|
@@ -42,10 +44,12 @@ const getCustomFieldInfo = async (client, caller = 'se') => {
|
|
|
42
44
|
metadata: {
|
|
43
45
|
clientId: publicKey,
|
|
44
46
|
publicKey,
|
|
45
|
-
|
|
47
|
+
tenants,
|
|
48
|
+
task: 'custom-fields',
|
|
46
49
|
databaseType: databaseType,
|
|
47
50
|
},
|
|
48
51
|
}),
|
|
52
|
+
signal: abortSignal,
|
|
49
53
|
});
|
|
50
54
|
const result = await response.json();
|
|
51
55
|
const extractedData = parseResponse(result);
|
|
@@ -56,50 +60,67 @@ const getCustomFieldInfo = async (client, caller = 'se') => {
|
|
|
56
60
|
}
|
|
57
61
|
table.rows.forEach((row) => {
|
|
58
62
|
customFieldsByTable.push({
|
|
59
|
-
|
|
60
|
-
|
|
63
|
+
viewName: table.name,
|
|
64
|
+
refTable: row.ref_table,
|
|
61
65
|
field: row.field,
|
|
62
|
-
|
|
66
|
+
refColumn: row.ref_column,
|
|
63
67
|
type: row.type,
|
|
68
|
+
refField: row.ref_table_id_field,
|
|
64
69
|
});
|
|
65
70
|
});
|
|
66
71
|
});
|
|
67
72
|
// make sure the are no duplicate records in extractedData
|
|
68
73
|
const customFieldsByTableSet = new Set();
|
|
69
|
-
|
|
70
|
-
if (customFieldsByTableSet.has(item.
|
|
71
|
-
item.
|
|
74
|
+
customFieldsByTableUniqueRows = customFieldsByTable.filter((item) => {
|
|
75
|
+
if (customFieldsByTableSet.has(item.viewName +
|
|
76
|
+
item.refTable +
|
|
77
|
+
item.refField +
|
|
72
78
|
item.field +
|
|
73
|
-
item.
|
|
79
|
+
item.refColumn +
|
|
74
80
|
item.type)) {
|
|
75
81
|
return false;
|
|
76
82
|
}
|
|
77
|
-
customFieldsByTableSet.add(item.
|
|
78
|
-
item.ref_table +
|
|
79
|
-
item.field +
|
|
80
|
-
item.ref_column +
|
|
81
|
-
item.type);
|
|
83
|
+
customFieldsByTableSet.add(item.viewName + item.refTable + item.refField + item.field + item.refColumn + item.type);
|
|
82
84
|
return true;
|
|
83
85
|
});
|
|
84
86
|
}
|
|
85
87
|
catch (e) {
|
|
86
|
-
return
|
|
88
|
+
return null;
|
|
87
89
|
}
|
|
90
|
+
const customFieldsByTableUnique = customFieldsByTableUniqueRows
|
|
91
|
+
? customFieldsByTableUniqueRows.reduce((acc, row) => {
|
|
92
|
+
if (!acc[row.viewName]) {
|
|
93
|
+
acc[row.viewName] = [];
|
|
94
|
+
}
|
|
95
|
+
acc[row.viewName]?.push(row);
|
|
96
|
+
return acc;
|
|
97
|
+
}, {})
|
|
98
|
+
: {};
|
|
88
99
|
return customFieldsByTableUnique;
|
|
89
100
|
};
|
|
90
101
|
exports.getCustomFieldInfo = getCustomFieldInfo;
|
|
91
|
-
const getSchemaInfo = async (client, caller = 'se', tableIds) => {
|
|
92
|
-
const { queryEndpoint, queryHeaders, publicKey, withCredentials
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
102
|
+
const getSchemaInfo = async ({ client, caller = 'se', tenants, tableIds, abortSignal, }) => {
|
|
103
|
+
const { queryEndpoint, queryHeaders, publicKey, withCredentials } = client;
|
|
104
|
+
let customFieldsByTableUnique = null;
|
|
105
|
+
if (client.featureFlags?.customFieldsEnabled &&
|
|
106
|
+
tenants &&
|
|
107
|
+
tenants[0] !== 'QUILL_ALL_TENANTS' &&
|
|
108
|
+
tenants.length === 1 &&
|
|
109
|
+
(typeof tenants[0] !== 'object' ||
|
|
110
|
+
(tenants[0].tenantIds?.[0] !== 'QUILL_ALL_TENANTS' &&
|
|
111
|
+
tenants[0].tenantIds?.length === 1))) {
|
|
112
|
+
try {
|
|
113
|
+
customFieldsByTableUnique = await (0, exports.getCustomFieldInfo)({
|
|
114
|
+
client,
|
|
115
|
+
tenants,
|
|
116
|
+
caller,
|
|
117
|
+
abortSignal,
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
catch (e) {
|
|
121
|
+
console.error('Error fetching custom fields', e);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
103
124
|
const response = await fetch(`${queryEndpoint}?schema-${caller}`, {
|
|
104
125
|
method: 'POST',
|
|
105
126
|
headers: {
|
|
@@ -113,26 +134,28 @@ const getSchemaInfo = async (client, caller = 'se', tableIds) => {
|
|
|
113
134
|
publicKey: publicKey,
|
|
114
135
|
task: 'schema',
|
|
115
136
|
removeCustomerField: true,
|
|
116
|
-
|
|
117
|
-
// !client.organizationId ||
|
|
118
|
-
// client.organizationId === '*' ||
|
|
119
|
-
// (customFieldsByTableUnique.length === 0 && !getCustomFields)
|
|
120
|
-
// ? false
|
|
121
|
-
// : true,
|
|
137
|
+
removeCustomFieldRef: true,
|
|
122
138
|
tableIds,
|
|
123
|
-
|
|
139
|
+
customFieldsByTable: customFieldsByTableUnique,
|
|
140
|
+
useNewCustomFields: true,
|
|
124
141
|
gatherSchemaData: '665610862cf7a3000be66453' === publicKey ? true : false,
|
|
142
|
+
tenants,
|
|
125
143
|
},
|
|
144
|
+
signal: abortSignal,
|
|
126
145
|
}),
|
|
127
146
|
});
|
|
128
147
|
const result = await response.json();
|
|
129
148
|
const parsedData = parseResponse(result);
|
|
130
149
|
const converted = convertSchemaInfoToTable(parsedData);
|
|
131
150
|
// triggerSoftUpdate(client, converted);
|
|
151
|
+
const schemaWithCustomFields = converted.map((table) => {
|
|
152
|
+
const customFieldRows = (customFieldsByTableUnique?.[table.name] ?? []).map((customField) => (0, exports.customFieldToColumnInternal)(customField));
|
|
153
|
+
return { ...table, columns: [...table.columns, ...customFieldRows] };
|
|
154
|
+
});
|
|
132
155
|
return {
|
|
133
156
|
schemaData: converted,
|
|
134
|
-
|
|
135
|
-
|
|
157
|
+
customFieldsByTable: customFieldsByTableUnique,
|
|
158
|
+
schemaWithCustomFields,
|
|
136
159
|
};
|
|
137
160
|
};
|
|
138
161
|
exports.getSchemaInfo = getSchemaInfo;
|
|
@@ -159,3 +182,16 @@ function convertSchemaInfoToTable(schemaData) {
|
|
|
159
182
|
});
|
|
160
183
|
return tables;
|
|
161
184
|
}
|
|
185
|
+
const customFieldToColumnInternal = (customField) => {
|
|
186
|
+
return {
|
|
187
|
+
field: customField.field,
|
|
188
|
+
label: customField.field,
|
|
189
|
+
format: (0, columnProcessing_1.isNumberType)(customField.type || 'varchar')
|
|
190
|
+
? 'whole_number'
|
|
191
|
+
: 'string', // ex. 'whole_number'
|
|
192
|
+
fieldType: customField.type || 'varchar',
|
|
193
|
+
dataTypeID: (0, columnProcessing_1.fieldTypeToDataTypeID)(customField.type?.toLocaleLowerCase() || 'varchar'),
|
|
194
|
+
jsType: (0, columnProcessing_1.isNumberType)(customField.type || 'varchar') ? 'number' : 'string',
|
|
195
|
+
};
|
|
196
|
+
};
|
|
197
|
+
exports.customFieldToColumnInternal = customFieldToColumnInternal;
|
|
@@ -4,6 +4,7 @@ import { Column, ColumnInternal } from '../models/Columns';
|
|
|
4
4
|
import { DashboardFilter } from '../models/Filter';
|
|
5
5
|
import { Pagination } from '../models/Pagination';
|
|
6
6
|
import { Pivot } from '../models/Pivot';
|
|
7
|
+
import { CustomField } from '../models/Schema';
|
|
7
8
|
import { DateRangesByColumn } from '../models/Tables';
|
|
8
9
|
export interface AdditionalProcessing {
|
|
9
10
|
sort?: {
|
|
@@ -17,7 +18,9 @@ export declare const hasColumnAlias: (columns: Column[], referencedColumns: stri
|
|
|
17
18
|
export declare const getUniqueValuesByColumns: (columns: Column[], query: string, rows: any, client: QuillProviderClient, tenants: {
|
|
18
19
|
tenantField: string;
|
|
19
20
|
tenantIds: (string | number)[];
|
|
20
|
-
}[] | (string | number)[] | undefined, customFields:
|
|
21
|
+
}[] | (string | number)[] | undefined, customFields: {
|
|
22
|
+
[table: string]: CustomField[];
|
|
23
|
+
}, filters?: DashboardFilter[], dashboardName?: string) => Promise<{
|
|
21
24
|
[column: string]: {
|
|
22
25
|
[value: string]: boolean;
|
|
23
26
|
};
|
|
@@ -41,14 +44,18 @@ export declare const getRelevantInfoFromQuery: (columns: ColumnInternal[], clien
|
|
|
41
44
|
export declare const getCountsByColumns: (columns: Column[], query: string, client: QuillProviderClient, tenants: {
|
|
42
45
|
tenantField: string;
|
|
43
46
|
tenantIds: (string | number)[];
|
|
44
|
-
}[] | (string | number)[] | undefined, customFields:
|
|
47
|
+
}[] | (string | number)[] | undefined, customFields: {
|
|
48
|
+
[table: string]: CustomField[];
|
|
49
|
+
}, dashboardName?: string) => Promise<{
|
|
45
50
|
filteredColumns: Column[];
|
|
46
51
|
exceededColumns: Column[] | undefined;
|
|
47
52
|
}>;
|
|
48
53
|
export declare const getQueryDateRangeByColumns: (columns: Column[], query: string, client: QuillProviderClient, tenants: {
|
|
49
54
|
tenantField: string;
|
|
50
55
|
tenantIds: (string | number)[];
|
|
51
|
-
}[] | (string | number)[] | undefined, customFields:
|
|
56
|
+
}[] | (string | number)[] | undefined, customFields: {
|
|
57
|
+
[table: string]: CustomField[];
|
|
58
|
+
}, dashboardName?: string) => Promise<{
|
|
52
59
|
[column: string]: {
|
|
53
60
|
dateRange: {
|
|
54
61
|
start: Date;
|
|
@@ -97,6 +104,7 @@ export declare const fetchResultsByQuery: ({ query, client, tenants, processing,
|
|
|
97
104
|
rowCount?: number;
|
|
98
105
|
error?: string;
|
|
99
106
|
itemQuery?: string[];
|
|
107
|
+
referencedTables?: string[];
|
|
100
108
|
}>;
|
|
101
109
|
export declare const fetchResultsByReport: ({ reportId, client, tenants, processing, filters, customFields, rowsOnly, rowCountOnly, abortSignal, pivot, pivotQuery, comparisonPivotQuery, getPivotRowCount, }: {
|
|
102
110
|
reportId: string;
|
|
@@ -130,6 +138,7 @@ export declare const fetchTableByAST: (ast: NodeSQLParser.Select, client: QuillP
|
|
|
130
138
|
rowCount?: number;
|
|
131
139
|
error?: string;
|
|
132
140
|
itemQuery?: string[];
|
|
141
|
+
referencedTables?: string[];
|
|
133
142
|
}>;
|
|
134
143
|
export declare const convertUniqueValuesByColumnToUniqueValueStrings: (uniqueValuesByColumns: {
|
|
135
144
|
[column: string]: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tableProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/tableProcessing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAoBtD,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,cAAc,YAChB,MAAM,EAAE,qBACE,MAAM,EAAE,KAC1B,OAUF,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAC1B,MAAM,EAAE,SACV,MAAM,QACP,GAAG,UACD,mBAAmB,WAEvB;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;CAAE,EAAE,GACzD,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GACnB,SAAS,gBACC,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"tableProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/tableProcessing.ts"],"names":[],"mappings":"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"}
|
|
@@ -82,11 +82,11 @@ const getUniqueStringValues = async (columns, tableName, client, tenants, custom
|
|
|
82
82
|
const convertedStringColumns = columns.filter((column) => {
|
|
83
83
|
return (0, columnProcessing_1.isStringType)(column.fieldType);
|
|
84
84
|
});
|
|
85
|
-
const stringNames = convertedStringColumns.map((column) => (0, queryConstructor_1.processColumnReference)(column.field, client.databaseType));
|
|
85
|
+
const stringNames = convertedStringColumns.map((column) => (0, queryConstructor_1.processColumnReference)(column.field, client.databaseType, undefined, true));
|
|
86
86
|
const { filteredColumns: smallStringColumns, exceededColumns } = stringNames.length > 0
|
|
87
87
|
? await (0, exports.getCountsByColumns)(convertedStringColumns, query || `Select ${stringNames.join(', ')} from ${tableName}`, client, tenants, customFields ?? [], dashboardName)
|
|
88
88
|
: { filteredColumns: [], exceededColumns: undefined };
|
|
89
|
-
const smallStringNames = smallStringColumns.map((column) => (0, queryConstructor_1.processColumnReference)(column.field, client.databaseType));
|
|
89
|
+
const smallStringNames = smallStringColumns.map((column) => (0, queryConstructor_1.processColumnReference)(column.field, client.databaseType, undefined, true));
|
|
90
90
|
const newUniqueValues = query || smallStringColumns.length > 0
|
|
91
91
|
? await (0, exports.getUniqueValuesByColumns)(
|
|
92
92
|
// returns null if data error
|
|
@@ -203,8 +203,8 @@ const fetchDistinctStrings = async (query, client, tenants, customFields, filter
|
|
|
203
203
|
filters,
|
|
204
204
|
// @ts-ignore
|
|
205
205
|
dateField: filters?.find((filter) => filter.filterType === 'date_range')?.dateField,
|
|
206
|
-
dashboardName
|
|
207
|
-
tenants
|
|
206
|
+
dashboardName,
|
|
207
|
+
tenants,
|
|
208
208
|
},
|
|
209
209
|
};
|
|
210
210
|
const cloudBody = { query };
|
|
@@ -318,6 +318,7 @@ const fetchResultsByQuery = async ({ query, client, tenants, processing, customF
|
|
|
318
318
|
let error = undefined;
|
|
319
319
|
let rowCount = undefined;
|
|
320
320
|
let itemQuery = undefined;
|
|
321
|
+
let referencedTables = undefined;
|
|
321
322
|
try {
|
|
322
323
|
if (pivot) {
|
|
323
324
|
const pivotData = await (0, pivotConstructor_1.generatePivotWithSQL)({
|
|
@@ -343,7 +344,6 @@ const fetchResultsByQuery = async ({ query, client, tenants, processing, customF
|
|
|
343
344
|
filterMap,
|
|
344
345
|
clientId: client.publicKey,
|
|
345
346
|
databaseType: client?.databaseType,
|
|
346
|
-
getCustomFields: !!tenants?.length,
|
|
347
347
|
customFieldsByTable: customFields,
|
|
348
348
|
additionalProcessing: processing,
|
|
349
349
|
useUpdatedDataGathering: processing ? true : false,
|
|
@@ -409,6 +409,20 @@ const fetchResultsByQuery = async ({ query, client, tenants, processing, customF
|
|
|
409
409
|
columns = resp.fields.map((elem) => (0, columnProcessing_1.convertPostgresColumn)(elem));
|
|
410
410
|
rows = resp.rows;
|
|
411
411
|
itemQuery = resp.itemQuery;
|
|
412
|
+
referencedTables = resp.referencedTables;
|
|
413
|
+
if (customFields) {
|
|
414
|
+
const tables = referencedTables ?? [];
|
|
415
|
+
tables.forEach((table) => {
|
|
416
|
+
const _customFields = customFields?.[table] ?? [];
|
|
417
|
+
columns.forEach((col) => {
|
|
418
|
+
if (_customFields.some((field) => {
|
|
419
|
+
return field.field === col.field;
|
|
420
|
+
})) {
|
|
421
|
+
col.inferFormat = true;
|
|
422
|
+
}
|
|
423
|
+
});
|
|
424
|
+
});
|
|
425
|
+
}
|
|
412
426
|
}
|
|
413
427
|
}
|
|
414
428
|
catch (e) {
|
|
@@ -419,7 +433,7 @@ const fetchResultsByQuery = async ({ query, client, tenants, processing, customF
|
|
|
419
433
|
if (client.databaseType && client.databaseType.toLowerCase() === 'bigquery') {
|
|
420
434
|
(0, dataProcessing_1.parseValueFromBigQueryDates)(rows, columns);
|
|
421
435
|
}
|
|
422
|
-
return { rows, columns, rowCount, error, itemQuery };
|
|
436
|
+
return { rows, columns, rowCount, error, itemQuery, referencedTables };
|
|
423
437
|
};
|
|
424
438
|
exports.fetchResultsByQuery = fetchResultsByQuery;
|
|
425
439
|
const fetchResultsByReport = async ({ reportId, client, tenants, processing, filters, customFields, rowsOnly, rowCountOnly, abortSignal, pivot, pivotQuery, comparisonPivotQuery, getPivotRowCount = true, }) => {
|
|
@@ -515,6 +529,7 @@ const fetchTableByAST = async (ast, client, tenants, processing, customFields, r
|
|
|
515
529
|
let rowCount;
|
|
516
530
|
let error;
|
|
517
531
|
let itemQuery;
|
|
532
|
+
let referencedTables;
|
|
518
533
|
try {
|
|
519
534
|
const hostedBody = {
|
|
520
535
|
metadata: {
|
|
@@ -522,7 +537,6 @@ const fetchTableByAST = async (ast, client, tenants, processing, customFields, r
|
|
|
522
537
|
ast,
|
|
523
538
|
publicKey: client.publicKey,
|
|
524
539
|
task: 'patterns',
|
|
525
|
-
getCustomFields: false,
|
|
526
540
|
customFields,
|
|
527
541
|
additionalProcessing: processing,
|
|
528
542
|
useUpdatedDataGathering: true,
|
|
@@ -546,6 +560,20 @@ const fetchTableByAST = async (ast, client, tenants, processing, customFields, r
|
|
|
546
560
|
columns = resp.fields.map((elem) => (0, columnProcessing_1.convertPostgresColumn)(elem));
|
|
547
561
|
rows = gatheredRows;
|
|
548
562
|
itemQuery = resp.itemQuery;
|
|
563
|
+
referencedTables = resp.referencedTables;
|
|
564
|
+
if (customFields) {
|
|
565
|
+
const tables = referencedTables ?? [];
|
|
566
|
+
tables.forEach((table) => {
|
|
567
|
+
const _customFields = customFields?.[table] ?? [];
|
|
568
|
+
columns.forEach((col) => {
|
|
569
|
+
if (_customFields.some((field) => {
|
|
570
|
+
return field.field === col.field;
|
|
571
|
+
})) {
|
|
572
|
+
col.inferFormat = true;
|
|
573
|
+
}
|
|
574
|
+
});
|
|
575
|
+
});
|
|
576
|
+
}
|
|
549
577
|
}
|
|
550
578
|
catch (e) {
|
|
551
579
|
rows = [];
|
|
@@ -556,7 +584,7 @@ const fetchTableByAST = async (ast, client, tenants, processing, customFields, r
|
|
|
556
584
|
if (client.databaseType && client.databaseType.toLowerCase() === 'bigquery') {
|
|
557
585
|
(0, dataProcessing_1.parseValueFromBigQueryDates)(rows, columns);
|
|
558
586
|
}
|
|
559
|
-
return { rows, columns, rowCount, error, itemQuery };
|
|
587
|
+
return { rows, columns, rowCount, error, itemQuery, referencedTables };
|
|
560
588
|
};
|
|
561
589
|
exports.fetchTableByAST = fetchTableByAST;
|
|
562
590
|
const convertUniqueValuesByColumnToUniqueValueStrings = (uniqueValuesByColumns) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/textProcessing.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQhD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAsE1F;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,UAa/C;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"textProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/textProcessing.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQhD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAsE1F;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,UAa/C;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,UAiBvD;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,UAK7C"}
|
|
@@ -23,6 +23,7 @@ export declare const quillFormat: ({ value, format, }: {
|
|
|
23
23
|
value: any;
|
|
24
24
|
format: string;
|
|
25
25
|
}) => string;
|
|
26
|
+
export declare const quillAutoFormat: (value: any) => string;
|
|
26
27
|
export declare function getValidDate(dateString: string): Date | undefined;
|
|
27
28
|
export declare const compareValues: (a: {
|
|
28
29
|
[key: string]: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"valueFormatter.d.ts","sourceRoot":"","sources":["../../../src/utils/valueFormatter.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;CACpB,CAAC;AAEF,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,GAAG,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjC,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,IAAI,CAAC;QAAC,GAAG,EAAE,IAAI,CAAA;KAAE,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,iBAAiB,UAQ7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAO/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,uDAMxB,KAAK,KAAG,MA8CV,CAAC;AAEF,eAAO,MAAM,WAAW,uBAGrB;IACD,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB,KAAG,MAkDH,CAAC;AAgPF,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,oBAG9C;AAED,eAAO,MAAM,aAAa,MACrB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,KACtB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,UACjB,MAAM,KACb,MAkDF,CAAC"}
|
|
1
|
+
{"version":3,"file":"valueFormatter.d.ts","sourceRoot":"","sources":["../../../src/utils/valueFormatter.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;CACpB,CAAC;AAEF,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,GAAG,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjC,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,IAAI,CAAC;QAAC,GAAG,EAAE,IAAI,CAAA;KAAE,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,iBAAiB,UAQ7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAO/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,uDAMxB,KAAK,KAAG,MA8CV,CAAC;AAEF,eAAO,MAAM,WAAW,uBAGrB;IACD,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB,KAAG,MAkDH,CAAC;AAEF,eAAO,MAAM,eAAe,UAAW,GAAG,KAAG,MA+D5C,CAAC;AAgPF,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,oBAG9C;AAED,eAAO,MAAM,aAAa,MACrB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,KACtB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,UACjB,MAAM,KACb,MAkDF,CAAC"}
|