@quillsql/react 2.13.43 → 2.13.44
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 +2 -2
- package/dist/cjs/ChartBuilder.d.ts +1 -0
- package/dist/cjs/ChartBuilder.d.ts.map +1 -1
- package/dist/cjs/ChartBuilder.js +48 -14
- package/dist/cjs/ChartEditor.d.ts +1 -1
- package/dist/cjs/ChartEditor.d.ts.map +1 -1
- package/dist/cjs/ChartEditor.js +2 -2
- package/dist/cjs/Context.d.ts.map +1 -1
- package/dist/cjs/Context.js +37 -26
- package/dist/cjs/Dashboard.d.ts +2 -2
- package/dist/cjs/Dashboard.d.ts.map +1 -1
- package/dist/cjs/Dashboard.js +115 -99
- package/dist/cjs/ReportBuilder.d.ts.map +1 -1
- package/dist/cjs/ReportBuilder.js +871 -1574
- package/dist/cjs/SQLEditor.d.ts.map +1 -1
- package/dist/cjs/SQLEditor.js +23 -4
- package/dist/cjs/Table.d.ts.map +1 -1
- package/dist/cjs/components/Chart/CustomReferenceLine.js +1 -1
- package/dist/cjs/components/Chart/GaugeChart.js +0 -6
- package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DashboardFilter.js +3 -3
- package/dist/cjs/components/Dashboard/DashboardSection.d.ts +1 -1
- package/dist/cjs/components/Dashboard/DashboardSection.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DashboardSection.js +20 -19
- package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/MetricComponent.js +1 -0
- 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 +58 -8
- package/dist/cjs/components/QuillSelect.d.ts.map +1 -1
- package/dist/cjs/components/QuillSelect.js +91 -14
- package/dist/cjs/components/QuillSelectWithCombo.js +6 -6
- package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts +6 -16
- package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/AddColumnModal.js +172 -75
- package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts +1 -5
- package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/AddSortPopover.js +2 -9
- package/dist/cjs/components/ReportBuilder/DraggableColumns.d.ts +17 -0
- package/dist/cjs/components/ReportBuilder/DraggableColumns.d.ts.map +1 -0
- package/dist/cjs/components/ReportBuilder/DraggableColumns.js +52 -0
- package/dist/cjs/components/ReportBuilder/DraggableItem.d.ts +17 -0
- package/dist/cjs/components/ReportBuilder/DraggableItem.d.ts.map +1 -0
- package/dist/cjs/components/ReportBuilder/DraggableItem.js +17 -0
- package/dist/cjs/components/ReportBuilder/FilterModal.d.ts +6 -12
- package/dist/cjs/components/ReportBuilder/FilterModal.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/FilterModal.js +29 -20
- package/dist/cjs/components/ReportBuilder/FilterStack.d.ts +8 -17
- package/dist/cjs/components/ReportBuilder/FilterStack.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/FilterStack.js +20 -86
- package/dist/cjs/components/ReportBuilder/convert.js +6 -6
- package/dist/cjs/components/ReportBuilder/ui.d.ts +8 -9
- package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/ui.js +30 -8
- package/dist/cjs/components/ReportBuilder/util.d.ts +2 -5
- package/dist/cjs/components/ReportBuilder/util.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/util.js +1 -1
- package/dist/cjs/components/UiComponents.d.ts +3 -2
- package/dist/cjs/components/UiComponents.d.ts.map +1 -1
- package/dist/cjs/components/UiComponents.js +13 -13
- package/dist/cjs/hooks/useAskQuill.d.ts +1 -1
- package/dist/cjs/hooks/useAskQuill.d.ts.map +1 -1
- package/dist/cjs/hooks/useAskQuill.js +14 -12
- package/dist/cjs/hooks/useDashboard.d.ts +5 -3
- package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
- package/dist/cjs/hooks/useDashboard.js +8 -6
- package/dist/cjs/hooks/useOnClickOutside.d.ts +1 -0
- package/dist/cjs/hooks/useOnClickOutside.d.ts.map +1 -1
- package/dist/cjs/hooks/useOnClickOutside.js +33 -0
- package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts +2 -1
- package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotForm.js +22 -15
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +7 -5
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotModal.js +100 -48
- package/dist/cjs/models/Client.d.ts +4 -0
- package/dist/cjs/models/Client.d.ts.map +1 -1
- package/dist/cjs/models/Dashboard.d.ts +1 -0
- package/dist/cjs/models/Dashboard.d.ts.map +1 -1
- package/dist/cjs/models/Report.d.ts +2 -0
- package/dist/cjs/models/Report.d.ts.map +1 -1
- package/dist/cjs/models/ReportBuilder.d.ts +46 -0
- package/dist/cjs/models/ReportBuilder.d.ts.map +1 -0
- package/dist/cjs/models/ReportBuilder.js +19 -0
- package/dist/cjs/models/Tables.d.ts +5 -5
- package/dist/cjs/models/Tables.d.ts.map +1 -1
- package/dist/cjs/utils/astFilterProcessing.d.ts +4 -0
- package/dist/cjs/utils/astFilterProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/astFilterProcessing.js +301 -97
- package/dist/cjs/utils/astProcessing.d.ts +14 -4
- package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/astProcessing.js +38 -4
- package/dist/cjs/utils/dashboard.d.ts.map +1 -1
- package/dist/cjs/utils/dashboard.js +18 -3
- package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
- package/dist/cjs/utils/dataFetcher.js +4 -3
- package/dist/cjs/utils/filterProcessing.d.ts +2 -11
- package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/filterProcessing.js +4 -16
- package/dist/cjs/utils/pivotConstructor.d.ts +2 -1
- package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
- package/dist/cjs/utils/pivotConstructor.js +4 -2
- package/dist/cjs/utils/pivotProcessing.d.ts +17 -7
- package/dist/cjs/utils/pivotProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/pivotProcessing.js +60 -51
- package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
- package/dist/cjs/utils/queryConstructor.js +15 -2
- package/dist/cjs/utils/report.d.ts +12 -9
- package/dist/cjs/utils/report.d.ts.map +1 -1
- package/dist/cjs/utils/report.js +114 -47
- package/dist/cjs/utils/reportBuilder.d.ts +88 -0
- package/dist/cjs/utils/reportBuilder.d.ts.map +1 -0
- package/dist/cjs/utils/reportBuilder.js +395 -0
- package/dist/cjs/utils/schema.d.ts +7 -0
- package/dist/cjs/utils/schema.d.ts.map +1 -1
- package/dist/cjs/utils/schema.js +36 -2
- package/dist/cjs/utils/tableProcessing.d.ts +59 -29
- package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/tableProcessing.js +75 -90
- package/dist/cjs/utils/ui.d.ts +2 -0
- package/dist/cjs/utils/ui.d.ts.map +1 -0
- package/dist/cjs/utils/ui.js +18 -0
- package/dist/esm/Chart.d.ts.map +1 -1
- package/dist/esm/Chart.js +2 -2
- package/dist/esm/ChartBuilder.d.ts +1 -0
- package/dist/esm/ChartBuilder.d.ts.map +1 -1
- package/dist/esm/ChartBuilder.js +49 -15
- package/dist/esm/ChartEditor.d.ts +1 -1
- package/dist/esm/ChartEditor.d.ts.map +1 -1
- package/dist/esm/ChartEditor.js +2 -2
- package/dist/esm/Context.d.ts.map +1 -1
- package/dist/esm/Context.js +37 -26
- package/dist/esm/Dashboard.d.ts +2 -2
- package/dist/esm/Dashboard.d.ts.map +1 -1
- package/dist/esm/Dashboard.js +119 -103
- package/dist/esm/ReportBuilder.d.ts.map +1 -1
- package/dist/esm/ReportBuilder.js +878 -1581
- package/dist/esm/SQLEditor.d.ts.map +1 -1
- package/dist/esm/SQLEditor.js +23 -4
- package/dist/esm/Table.d.ts.map +1 -1
- package/dist/esm/components/Chart/CustomReferenceLine.js +1 -1
- package/dist/esm/components/Chart/GaugeChart.js +0 -6
- package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DashboardFilter.js +3 -3
- package/dist/esm/components/Dashboard/DashboardSection.d.ts +1 -1
- package/dist/esm/components/Dashboard/DashboardSection.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DashboardSection.js +21 -20
- package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/MetricComponent.js +1 -0
- 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 +57 -7
- package/dist/esm/components/QuillSelect.d.ts.map +1 -1
- package/dist/esm/components/QuillSelect.js +58 -14
- package/dist/esm/components/QuillSelectWithCombo.js +6 -6
- package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts +6 -16
- package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/AddColumnModal.js +173 -76
- package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts +1 -5
- package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/AddSortPopover.js +2 -9
- package/dist/esm/components/ReportBuilder/DraggableColumns.d.ts +17 -0
- package/dist/esm/components/ReportBuilder/DraggableColumns.d.ts.map +1 -0
- package/dist/esm/components/ReportBuilder/DraggableColumns.js +46 -0
- package/dist/esm/components/ReportBuilder/DraggableItem.d.ts +17 -0
- package/dist/esm/components/ReportBuilder/DraggableItem.d.ts.map +1 -0
- package/dist/esm/components/ReportBuilder/DraggableItem.js +14 -0
- package/dist/esm/components/ReportBuilder/FilterModal.d.ts +6 -12
- package/dist/esm/components/ReportBuilder/FilterModal.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/FilterModal.js +29 -20
- package/dist/esm/components/ReportBuilder/FilterStack.d.ts +8 -17
- package/dist/esm/components/ReportBuilder/FilterStack.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/FilterStack.js +21 -87
- package/dist/esm/components/ReportBuilder/convert.js +6 -6
- package/dist/esm/components/ReportBuilder/ui.d.ts +8 -9
- package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/ui.js +33 -11
- package/dist/esm/components/ReportBuilder/util.d.ts +2 -5
- package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/util.js +1 -1
- package/dist/esm/components/UiComponents.d.ts +3 -2
- package/dist/esm/components/UiComponents.d.ts.map +1 -1
- package/dist/esm/components/UiComponents.js +13 -13
- package/dist/esm/hooks/useAskQuill.d.ts +1 -1
- package/dist/esm/hooks/useAskQuill.d.ts.map +1 -1
- package/dist/esm/hooks/useAskQuill.js +14 -12
- package/dist/esm/hooks/useDashboard.d.ts +5 -3
- package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
- package/dist/esm/hooks/useDashboard.js +8 -6
- package/dist/esm/hooks/useOnClickOutside.d.ts +1 -0
- package/dist/esm/hooks/useOnClickOutside.d.ts.map +1 -1
- package/dist/esm/hooks/useOnClickOutside.js +31 -0
- package/dist/esm/internals/ReportBuilder/PivotForm.d.ts +2 -1
- package/dist/esm/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotForm.js +23 -16
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +7 -5
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.js +101 -49
- package/dist/esm/models/Client.d.ts +4 -0
- package/dist/esm/models/Client.d.ts.map +1 -1
- package/dist/esm/models/Dashboard.d.ts +1 -0
- package/dist/esm/models/Dashboard.d.ts.map +1 -1
- package/dist/esm/models/Report.d.ts +2 -0
- package/dist/esm/models/Report.d.ts.map +1 -1
- package/dist/esm/models/ReportBuilder.d.ts +46 -0
- package/dist/esm/models/ReportBuilder.d.ts.map +1 -0
- package/dist/esm/models/ReportBuilder.js +16 -0
- package/dist/esm/models/Tables.d.ts +5 -5
- package/dist/esm/models/Tables.d.ts.map +1 -1
- package/dist/esm/utils/astFilterProcessing.d.ts +4 -0
- package/dist/esm/utils/astFilterProcessing.d.ts.map +1 -1
- package/dist/esm/utils/astFilterProcessing.js +300 -97
- package/dist/esm/utils/astProcessing.d.ts +14 -4
- package/dist/esm/utils/astProcessing.d.ts.map +1 -1
- package/dist/esm/utils/astProcessing.js +38 -5
- package/dist/esm/utils/dashboard.d.ts.map +1 -1
- package/dist/esm/utils/dashboard.js +18 -3
- package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
- package/dist/esm/utils/dataFetcher.js +4 -3
- package/dist/esm/utils/filterProcessing.d.ts +2 -11
- package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
- package/dist/esm/utils/filterProcessing.js +4 -15
- package/dist/esm/utils/pivotConstructor.d.ts +2 -1
- package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
- package/dist/esm/utils/pivotConstructor.js +4 -2
- package/dist/esm/utils/pivotProcessing.d.ts +17 -7
- package/dist/esm/utils/pivotProcessing.d.ts.map +1 -1
- package/dist/esm/utils/pivotProcessing.js +58 -49
- package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
- package/dist/esm/utils/queryConstructor.js +15 -2
- package/dist/esm/utils/report.d.ts +12 -9
- package/dist/esm/utils/report.d.ts.map +1 -1
- package/dist/esm/utils/report.js +116 -46
- package/dist/esm/utils/reportBuilder.d.ts +88 -0
- package/dist/esm/utils/reportBuilder.d.ts.map +1 -0
- package/dist/esm/utils/reportBuilder.js +386 -0
- package/dist/esm/utils/schema.d.ts +7 -0
- package/dist/esm/utils/schema.d.ts.map +1 -1
- package/dist/esm/utils/schema.js +34 -1
- package/dist/esm/utils/tableProcessing.d.ts +59 -29
- package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
- package/dist/esm/utils/tableProcessing.js +71 -86
- package/dist/esm/utils/ui.d.ts +2 -0
- package/dist/esm/utils/ui.d.ts.map +1 -0
- package/dist/esm/utils/ui.js +14 -0
- package/package.json +1 -1
|
@@ -3,21 +3,25 @@ import { ColumnInternal } from '../models/Columns';
|
|
|
3
3
|
import { DashboardFilter, InternalFilter } from '../models/Filter';
|
|
4
4
|
import { Pivot, PivotData } from '../models/Pivot';
|
|
5
5
|
import { QuillReport, QuillReportInternal } from '../models/Report';
|
|
6
|
-
import { DateRangesByColumn, Table,
|
|
6
|
+
import { DateRangesByColumn, UniqueValuesByTable, Table, UniqueValuesByColumn } from '../models/Tables';
|
|
7
7
|
import { AdditionalProcessing } from './tableProcessing';
|
|
8
8
|
import { CustomField } from '../models/Schema';
|
|
9
|
+
import { ReportBuilderColumn } from '../models/ReportBuilder';
|
|
9
10
|
export type ReportBuilderInfo = {
|
|
10
11
|
rows: any[];
|
|
11
12
|
columns: ColumnInternal[];
|
|
13
|
+
reportBuilderColumns: ReportBuilderColumn[];
|
|
12
14
|
rowCount: number;
|
|
13
15
|
pivot: Pivot | null;
|
|
14
16
|
pivotData: PivotData | null;
|
|
15
17
|
formattedRows: any[];
|
|
16
18
|
report: QuillReportInternal;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
+
tables: string[];
|
|
20
|
+
uniqueStringsByTable: UniqueValuesByTable;
|
|
21
|
+
uniqueStringsByColumn: UniqueValuesByColumn;
|
|
19
22
|
dateRanges: DateRangesByColumn;
|
|
20
23
|
query: string;
|
|
24
|
+
pivotHint: string;
|
|
21
25
|
error?: string;
|
|
22
26
|
itemQuery?: string[];
|
|
23
27
|
};
|
|
@@ -72,9 +76,8 @@ export declare function saveReport({ report, dashboardItemId, client, }: {
|
|
|
72
76
|
}): Promise<any>;
|
|
73
77
|
export declare const formatRowsFromReport: (report: any, xAxisField?: string, xAxisFormat?: string) => any;
|
|
74
78
|
export declare function convertInternalReportToReport(report: QuillReportInternal, dashboardFilters: DashboardFilter[], initiator?: string): QuillReport;
|
|
75
|
-
export declare const fetchReportBuilderDataFromAST: ({ baseAst,
|
|
79
|
+
export declare const fetchReportBuilderDataFromAST: ({ baseAst, schema, client, tenants, pivot, previousRelevant, requiresNewFilteredUniqueValues, report, customFields, skipUniqueValues, skipRowCount, processing, dashboardName, }: {
|
|
76
80
|
baseAst: any;
|
|
77
|
-
formData: any;
|
|
78
81
|
schema: Table[];
|
|
79
82
|
client: QuillProviderClient;
|
|
80
83
|
tenants?: {
|
|
@@ -82,17 +85,17 @@ export declare const fetchReportBuilderDataFromAST: ({ baseAst, formData, schema
|
|
|
82
85
|
tenantIds: (string | number)[];
|
|
83
86
|
}[] | (string | number)[];
|
|
84
87
|
pivot?: Pivot;
|
|
85
|
-
previousFormData?: any;
|
|
86
|
-
currentTable?: string;
|
|
87
88
|
previousRelevant?: {
|
|
88
|
-
|
|
89
|
+
uniqueStringsByTable: UniqueValuesByTable;
|
|
90
|
+
uniqueStringsByColumn: UniqueValuesByColumn;
|
|
89
91
|
dateRanges: DateRangesByColumn;
|
|
90
92
|
};
|
|
93
|
+
requiresNewFilteredUniqueValues?: boolean;
|
|
91
94
|
report?: QuillReportInternal;
|
|
92
95
|
customFields?: any;
|
|
93
96
|
skipUniqueValues?: boolean;
|
|
94
97
|
skipRowCount?: boolean;
|
|
95
98
|
processing?: AdditionalProcessing;
|
|
96
|
-
dashboardName
|
|
99
|
+
dashboardName: string;
|
|
97
100
|
}) => Promise<ReportBuilderInfo>;
|
|
98
101
|
//# sourceMappingURL=report.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/utils/report.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import equal from 'fast-deep-equal';
|
|
2
1
|
import { createInitialFormData } from '../ChartBuilder';
|
|
3
2
|
import { getTableNames } from '../components/ReportBuilder/ast';
|
|
4
3
|
import { generatePivotTable } from '../internals/ReportBuilder/PivotModal';
|
|
5
|
-
import { InternalFilterType } from '../models/Filter';
|
|
6
|
-
import { createBasicSelectASTFromColumns } from './astProcessing';
|
|
4
|
+
import { InternalFilterType, } from '../models/Filter';
|
|
7
5
|
import { getYAxisFields } from './columnProcessing';
|
|
8
6
|
import { cleanDashboardItem } from './dashboard';
|
|
9
7
|
import { fetchSqlQuery, getData } from './dataFetcher';
|
|
@@ -12,9 +10,12 @@ import { getDateBucketFromRange } from './dates';
|
|
|
12
10
|
import { DataLoadError } from './error';
|
|
13
11
|
import { DEFAULT_PAGINATION } from './paginationProcessing';
|
|
14
12
|
import { isPivotPossible, isValidPivot } from './pivotProcessing';
|
|
15
|
-
import { fetchTableByAST, getQueryDateRangeByColumns, getRelevantInfoFromQuery,
|
|
13
|
+
import { fetchTableByAST, getQueryDateRangeByColumns, getRelevantInfoFromQuery, } from './tableProcessing';
|
|
16
14
|
import { snakeAndCamelCaseToTitleCase } from './textProcessing';
|
|
17
15
|
import { quillAutoFormat, quillFormat } from './valueFormatter';
|
|
16
|
+
import { getFieldFromExpression } from './astFilterProcessing';
|
|
17
|
+
import { isValidPivotForReport, makePivotValid, setTypesOnPivot, } from './reportBuilder';
|
|
18
|
+
import { createSelectStarFromAst } from './astProcessing';
|
|
18
19
|
export const EMPTY_REPORT = {
|
|
19
20
|
id: '',
|
|
20
21
|
name: '',
|
|
@@ -42,6 +43,7 @@ function extractAllReportValuesFromQuillInternalReport(reportInternal) {
|
|
|
42
43
|
id: reportInternal.id,
|
|
43
44
|
name: reportInternal.name,
|
|
44
45
|
dashboardName: reportInternal.dashboardName,
|
|
46
|
+
section: reportInternal.section,
|
|
45
47
|
rows: reportInternal.rows,
|
|
46
48
|
columns: reportInternal.columns,
|
|
47
49
|
chartType: reportInternal.chartType,
|
|
@@ -63,7 +65,6 @@ function extractAllReportValuesFromQuillInternalReport(reportInternal) {
|
|
|
63
65
|
columnsWithCustomFields: reportInternal.columnsWithCustomFields,
|
|
64
66
|
};
|
|
65
67
|
}
|
|
66
|
-
// TODO: Convert this to take an object rather than a bunch of arguments
|
|
67
68
|
export async function fetchReport({ reportId, client, tenants, flags, useReportTask = true, filters = [], additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly, abortSignal, getDefaultDashboardFilters, }) {
|
|
68
69
|
let reportInfo = undefined;
|
|
69
70
|
let errorMessage = undefined;
|
|
@@ -344,26 +345,72 @@ export function convertInternalReportToReport(report, dashboardFilters, initiato
|
|
|
344
345
|
return EMPTY_REPORT;
|
|
345
346
|
}
|
|
346
347
|
}
|
|
347
|
-
export const fetchReportBuilderDataFromAST = async ({ baseAst,
|
|
348
|
+
export const fetchReportBuilderDataFromAST = async ({ baseAst, schema, client, tenants, pivot, previousRelevant, requiresNewFilteredUniqueValues, report, customFields, skipUniqueValues, skipRowCount, processing, dashboardName, }) => {
|
|
348
349
|
let newRows = [];
|
|
349
350
|
let newColumns = [];
|
|
350
351
|
let newRowCount = 0;
|
|
351
352
|
let newPivot = null;
|
|
352
353
|
let newPivotData = null;
|
|
354
|
+
let pivotHint = '';
|
|
353
355
|
let formattedRows = [];
|
|
354
356
|
let curReport = report;
|
|
355
|
-
let table = '';
|
|
356
357
|
let error;
|
|
357
|
-
const relevantInfo = previousRelevant ?? {
|
|
358
|
+
const relevantInfo = previousRelevant ?? {
|
|
359
|
+
uniqueStringsByTable: {},
|
|
360
|
+
dateRanges: {},
|
|
361
|
+
uniqueStringsByColumn: {},
|
|
362
|
+
};
|
|
358
363
|
let query = '';
|
|
364
|
+
let tables = [];
|
|
365
|
+
const reportBuilderColumns = [];
|
|
359
366
|
try {
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
+
tables = getTableNames(baseAst);
|
|
368
|
+
const astColumnsByTable = {};
|
|
369
|
+
baseAst.columns.forEach((col) => {
|
|
370
|
+
if (!astColumnsByTable[col.expr?.table ?? '']) {
|
|
371
|
+
astColumnsByTable[col.expr?.table ?? ''] = [];
|
|
372
|
+
}
|
|
373
|
+
const field = getFieldFromExpression(col.expr ?? col);
|
|
374
|
+
const table = tables.length === 1 ? tables[0] : col.expr?.table;
|
|
375
|
+
if (field) {
|
|
376
|
+
astColumnsByTable[table ?? '']?.push(field);
|
|
377
|
+
if (table) {
|
|
378
|
+
reportBuilderColumns.push({ field, table, alias: col.as });
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
});
|
|
382
|
+
const columnInfo = tables.flatMap((table) => {
|
|
383
|
+
const tableInfo = schema.find((tableInfo) => tableInfo.name === table);
|
|
384
|
+
if (!tableInfo) {
|
|
385
|
+
return [];
|
|
386
|
+
}
|
|
387
|
+
return tableInfo.columns
|
|
388
|
+
.map((col) => ({ ...col, table }))
|
|
389
|
+
.filter((col) => {
|
|
390
|
+
return (astColumnsByTable[table]?.includes(col.field) ||
|
|
391
|
+
astColumnsByTable['']?.includes(col.field));
|
|
392
|
+
});
|
|
393
|
+
});
|
|
394
|
+
const aliasedColumnInfo = tables.flatMap((table) => {
|
|
395
|
+
const tableInfo = schema.find((tableInfo) => tableInfo.name === table);
|
|
396
|
+
if (!tableInfo) {
|
|
397
|
+
return [];
|
|
398
|
+
}
|
|
399
|
+
return tableInfo.columns
|
|
400
|
+
.map((col) => ({ ...col, table }))
|
|
401
|
+
.filter((col) => {
|
|
402
|
+
return (astColumnsByTable[table]?.includes(col.field) ||
|
|
403
|
+
astColumnsByTable['']?.includes(col.field));
|
|
404
|
+
})
|
|
405
|
+
.map((col) => {
|
|
406
|
+
const reportBuilderColumn = reportBuilderColumns.find((c) => c.field === col.field && c.table === col.table);
|
|
407
|
+
return {
|
|
408
|
+
...col,
|
|
409
|
+
field: reportBuilderColumn?.alias ?? col.field,
|
|
410
|
+
};
|
|
411
|
+
});
|
|
412
|
+
});
|
|
413
|
+
const tableData = await fetchTableByAST(baseAst, client, tenants, processing ?? { page: DEFAULT_PAGINATION }, customFields, skipRowCount, undefined, dashboardName);
|
|
367
414
|
if (tableData.error) {
|
|
368
415
|
throw new Error(tableData.error);
|
|
369
416
|
}
|
|
@@ -394,36 +441,56 @@ export const fetchReportBuilderDataFromAST = async ({ baseAst, formData, schema,
|
|
|
394
441
|
referenceLines: report?.referenceLines,
|
|
395
442
|
referenceLineYValues: report?.referenceLineYValues,
|
|
396
443
|
};
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
}
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
444
|
+
const queryResult = await fetchSqlQuery(baseAst, client);
|
|
445
|
+
if (queryResult.error) {
|
|
446
|
+
throw new Error(queryResult.error);
|
|
447
|
+
}
|
|
448
|
+
query = queryResult.query;
|
|
449
|
+
if (!skipUniqueValues || (pivot && requiresNewFilteredUniqueValues)) {
|
|
450
|
+
const starQuery = await fetchSqlQuery(createSelectStarFromAst(baseAst), client);
|
|
451
|
+
const { uniqueStrings, dateRanges, columnUniqueValues } = await getRelevantInfoFromQuery({
|
|
452
|
+
tables,
|
|
453
|
+
columns: columnInfo,
|
|
454
|
+
aliasedColumns: aliasedColumnInfo,
|
|
455
|
+
reportBuilderColumns,
|
|
456
|
+
client,
|
|
457
|
+
tenants,
|
|
458
|
+
query: queryResult.query,
|
|
459
|
+
queryTemplate: starQuery.query,
|
|
460
|
+
customFields,
|
|
461
|
+
dashboardName,
|
|
462
|
+
});
|
|
463
|
+
relevantInfo.uniqueStringsByTable = uniqueStrings ?? {};
|
|
464
|
+
relevantInfo.dateRanges = dateRanges ?? {};
|
|
465
|
+
relevantInfo.uniqueStringsByColumn = columnUniqueValues ?? {};
|
|
466
|
+
}
|
|
467
|
+
else {
|
|
468
|
+
const dateColumns = aliasedColumnInfo.filter((column) => {
|
|
469
|
+
return column.fieldType === 'date';
|
|
470
|
+
});
|
|
471
|
+
if (dateColumns.length > 0) {
|
|
472
|
+
const dateRanges = await getQueryDateRangeByColumns(dateColumns, queryResult.query, client, tenants, customFields ?? [], dashboardName);
|
|
473
|
+
if (dateRanges === null) {
|
|
474
|
+
throw new Error("Couldn't fetch date ranges");
|
|
421
475
|
}
|
|
476
|
+
relevantInfo.dateRanges = dateRanges ?? {};
|
|
422
477
|
}
|
|
423
478
|
}
|
|
424
479
|
if (!!relevantInfo.error) {
|
|
425
480
|
throw new Error(relevantInfo.error);
|
|
426
481
|
}
|
|
482
|
+
if (pivot &&
|
|
483
|
+
!isValidPivotForReport(pivot, relevantInfo.uniqueStringsByColumn, tableData.columns)) {
|
|
484
|
+
const { pivot: newValidPivot, hint } = makePivotValid(pivot, relevantInfo.uniqueStringsByColumn, tableData.columns);
|
|
485
|
+
if (newValidPivot) {
|
|
486
|
+
pivot = newValidPivot;
|
|
487
|
+
pivotHint = hint;
|
|
488
|
+
}
|
|
489
|
+
else {
|
|
490
|
+
pivot = undefined;
|
|
491
|
+
pivotHint = 'Pivot no longer valid';
|
|
492
|
+
}
|
|
493
|
+
}
|
|
427
494
|
if (pivot) {
|
|
428
495
|
if (isPivotPossible(tableData.columns, pivot)) {
|
|
429
496
|
let dateBucket = undefined;
|
|
@@ -431,19 +498,16 @@ export const fetchReportBuilderDataFromAST = async ({ baseAst, formData, schema,
|
|
|
431
498
|
if (rowFieldDateRange) {
|
|
432
499
|
dateBucket = getDateBucketFromRange(rowFieldDateRange.dateRange);
|
|
433
500
|
}
|
|
434
|
-
if (!Object.values(relevantInfo.uniqueStrings[table] ?? {}).length ||
|
|
435
|
-
!equal(formData, previousFormData)) {
|
|
436
|
-
relevantInfo.uniqueStrings[table] = await getUniqueStringValues(tableInfo.columns.filter((column) => column.field === pivot?.columnField), table, client, tenants, customFields, undefined, undefined, query ? query : (report?.queryString ?? ''), report?.dashboardName);
|
|
437
|
-
}
|
|
438
501
|
newPivotData = await generatePivotTable({
|
|
439
502
|
pivot,
|
|
440
503
|
dateBucket,
|
|
441
504
|
report: curReport,
|
|
442
505
|
client,
|
|
443
|
-
uniqueValues: relevantInfo.
|
|
506
|
+
uniqueValues: relevantInfo.uniqueStringsByColumn,
|
|
444
507
|
dashboardName,
|
|
445
508
|
tenants,
|
|
446
509
|
additionalProcessing: processing,
|
|
510
|
+
caller: 'ReportBuilder',
|
|
447
511
|
});
|
|
448
512
|
newPivot = pivot;
|
|
449
513
|
}
|
|
@@ -474,18 +538,24 @@ export const fetchReportBuilderDataFromAST = async ({ baseAst, formData, schema,
|
|
|
474
538
|
catch (e) {
|
|
475
539
|
error = e.message;
|
|
476
540
|
}
|
|
541
|
+
if (newPivot) {
|
|
542
|
+
newPivot = setTypesOnPivot(newPivot, newColumns);
|
|
543
|
+
}
|
|
477
544
|
return {
|
|
478
545
|
rows: newRows,
|
|
479
546
|
columns: newColumns,
|
|
547
|
+
reportBuilderColumns,
|
|
480
548
|
rowCount: newRowCount,
|
|
481
549
|
pivot: newPivot,
|
|
482
550
|
pivotData: newPivotData,
|
|
483
551
|
formattedRows,
|
|
484
552
|
report: curReport ?? EMPTY_INTERNAL_REPORT,
|
|
485
|
-
|
|
486
|
-
|
|
553
|
+
tables,
|
|
554
|
+
uniqueStringsByTable: relevantInfo.uniqueStringsByTable,
|
|
555
|
+
uniqueStringsByColumn: relevantInfo.uniqueStringsByColumn,
|
|
487
556
|
dateRanges: relevantInfo.dateRanges,
|
|
488
557
|
query,
|
|
558
|
+
pivotHint,
|
|
489
559
|
error: error,
|
|
490
560
|
itemQuery: curReport?.itemQuery,
|
|
491
561
|
};
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { Column, ColumnInternal } from '../models/Columns';
|
|
2
|
+
import { Pivot } from '../models/Pivot';
|
|
3
|
+
import { ReportBuilderState } from '../models/ReportBuilder';
|
|
4
|
+
import { Table, UniqueValuesByColumn } from '../models/Tables';
|
|
5
|
+
export declare const reportBuilderStateToAst: (reportBuilderState: ReportBuilderState, databaseType: string) => {
|
|
6
|
+
from: {
|
|
7
|
+
db: null;
|
|
8
|
+
table: string;
|
|
9
|
+
as: string | null;
|
|
10
|
+
join: import("../models/ReportBuilder").JoinType | null;
|
|
11
|
+
on: {
|
|
12
|
+
type: string;
|
|
13
|
+
operator: string;
|
|
14
|
+
left: {
|
|
15
|
+
type: string;
|
|
16
|
+
table: string;
|
|
17
|
+
column: string;
|
|
18
|
+
};
|
|
19
|
+
right: {
|
|
20
|
+
type: string;
|
|
21
|
+
table: string;
|
|
22
|
+
column: string;
|
|
23
|
+
};
|
|
24
|
+
} | null;
|
|
25
|
+
}[];
|
|
26
|
+
columns: {
|
|
27
|
+
expr: {
|
|
28
|
+
type: string;
|
|
29
|
+
table: string;
|
|
30
|
+
column: string;
|
|
31
|
+
};
|
|
32
|
+
as: string | null;
|
|
33
|
+
}[] | null;
|
|
34
|
+
where: any;
|
|
35
|
+
orderby: {
|
|
36
|
+
expr: {
|
|
37
|
+
type: string;
|
|
38
|
+
table: null;
|
|
39
|
+
column: string;
|
|
40
|
+
};
|
|
41
|
+
type: import("../models/ReportBuilder").SortDirection;
|
|
42
|
+
}[] | null;
|
|
43
|
+
limit: {
|
|
44
|
+
value: number;
|
|
45
|
+
percent: null;
|
|
46
|
+
seperator?: undefined;
|
|
47
|
+
} | {
|
|
48
|
+
seperator: string;
|
|
49
|
+
value: {
|
|
50
|
+
type: string;
|
|
51
|
+
value: number;
|
|
52
|
+
}[];
|
|
53
|
+
percent?: undefined;
|
|
54
|
+
} | null;
|
|
55
|
+
top: {
|
|
56
|
+
value: number;
|
|
57
|
+
percent: null;
|
|
58
|
+
seperator?: undefined;
|
|
59
|
+
} | {
|
|
60
|
+
seperator: string;
|
|
61
|
+
value: {
|
|
62
|
+
type: string;
|
|
63
|
+
value: number;
|
|
64
|
+
}[];
|
|
65
|
+
percent?: undefined;
|
|
66
|
+
} | null;
|
|
67
|
+
with: null;
|
|
68
|
+
type: string;
|
|
69
|
+
options: null;
|
|
70
|
+
distinct: {
|
|
71
|
+
type: null;
|
|
72
|
+
};
|
|
73
|
+
into: {
|
|
74
|
+
position: null;
|
|
75
|
+
};
|
|
76
|
+
groupby: null;
|
|
77
|
+
having: null;
|
|
78
|
+
window: null;
|
|
79
|
+
};
|
|
80
|
+
export declare const astToReportBuilderState: (ast: any, databaseType: string, schema: Table[]) => ReportBuilderState;
|
|
81
|
+
export declare const isValidPivotForReport: (pivot: Pivot, uniqueValuesByColumn: UniqueValuesByColumn, reportColumns: ColumnInternal[]) => boolean;
|
|
82
|
+
export declare const makePivotValid: (pivot: Pivot, uniqueValuesForPivot: UniqueValuesByColumn, reportColumns: ColumnInternal[]) => {
|
|
83
|
+
pivot: Pivot | null;
|
|
84
|
+
hint: string;
|
|
85
|
+
};
|
|
86
|
+
export declare const formatRows: (rows: any[], columns: Column[], pivot?: boolean, aggregationType?: string, dateBucket?: string) => any;
|
|
87
|
+
export declare const setTypesOnPivot: (newPivot: Pivot, searchColumns: ColumnInternal[]) => Pivot;
|
|
88
|
+
//# sourceMappingURL=reportBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reportBuilder.d.ts","sourceRoot":"","sources":["../../../src/utils/reportBuilder.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAEL,kBAAkB,EAKnB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAmC/D,eAAO,MAAM,uBAAuB,uBACd,kBAAkB,gBACxB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuBrB,CAAC;AAEF,eAAO,MAAM,uBAAuB,QAC7B,GAAG,gBACM,MAAM,UACZ,KAAK,EAAE,KACd,kBAuBF,CAAC;AAwOF,eAAO,MAAM,qBAAqB,UACzB,KAAK,wBACU,oBAAoB,iBAC3B,cAAc,EAAE,YAuChC,CAAC;AAEF,eAAO,MAAM,cAAc,UAClB,KAAK,wBACU,oBAAoB,iBAC3B,cAAc,EAAE,KAC9B;IAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAgCrC,CAAC;AAEF,eAAO,MAAM,UAAU,SACf,GAAG,EAAE,WACF,MAAM,EAAE,UACT,OAAO,oBACG,MAAM,eACX,MAAM,QA6CpB,CAAC;AAEF,eAAO,MAAM,eAAe,aAChB,KAAK,iBACA,cAAc,EAAE,KAoBzB,KAAK,CAAC"}
|