@quillsql/react 2.14.16 → 2.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/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 +112 -18
- 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 +160 -33
- package/dist/cjs/Dashboard.d.ts.map +1 -1
- package/dist/cjs/Dashboard.js +99 -19
- package/dist/cjs/QuillProvider.d.ts +38 -1
- package/dist/cjs/QuillProvider.d.ts.map +1 -1
- package/dist/cjs/QuillProvider.js +2 -2
- package/dist/cjs/ReportBuilder.d.ts +7 -2
- package/dist/cjs/ReportBuilder.d.ts.map +1 -1
- package/dist/cjs/ReportBuilder.js +104 -1271
- package/dist/cjs/SQLEditor.d.ts +9 -2
- package/dist/cjs/SQLEditor.d.ts.map +1 -1
- package/dist/cjs/SQLEditor.js +67 -10
- package/dist/cjs/Table.d.ts.map +1 -1
- package/dist/cjs/Table.js +12 -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 +2 -1
- package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/AddColumnModal.js +28 -3
- package/dist/cjs/components/ReportBuilder/ColumnComponent.d.ts +49 -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 +7 -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 +1 -1
- package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
- package/dist/cjs/hooks/useDashboard.js +62 -6
- package/dist/cjs/hooks/useExport.d.ts.map +1 -1
- package/dist/cjs/hooks/useExport.js +5 -2
- 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 +1495 -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/PivotList.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotList.js +3 -3
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +18 -2
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotModal.js +438 -147
- package/dist/cjs/models/Filter.d.ts +1 -1
- package/dist/cjs/models/Filter.d.ts.map +1 -1
- package/dist/cjs/models/Filter.js +3 -3
- package/dist/cjs/utils/astFilterProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/astFilterProcessing.js +25 -4
- 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 +12 -1
- 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 +15 -10
- package/dist/cjs/utils/pivotProcessing.d.ts.map +1 -1
- package/dist/cjs/utils/pivotProcessing.js +13 -3
- package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
- package/dist/cjs/utils/queryConstructor.js +30 -16
- package/dist/cjs/utils/report.d.ts +10 -5
- package/dist/cjs/utils/report.d.ts.map +1 -1
- package/dist/cjs/utils/report.js +55 -7
- 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 +114 -20
- 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 +159 -32
- package/dist/esm/Dashboard.d.ts.map +1 -1
- package/dist/esm/Dashboard.js +100 -20
- package/dist/esm/QuillProvider.d.ts +38 -1
- package/dist/esm/QuillProvider.d.ts.map +1 -1
- package/dist/esm/QuillProvider.js +2 -2
- package/dist/esm/ReportBuilder.d.ts +7 -2
- package/dist/esm/ReportBuilder.d.ts.map +1 -1
- package/dist/esm/ReportBuilder.js +107 -1271
- package/dist/esm/SQLEditor.d.ts +9 -2
- package/dist/esm/SQLEditor.d.ts.map +1 -1
- package/dist/esm/SQLEditor.js +68 -11
- package/dist/esm/Table.d.ts.map +1 -1
- package/dist/esm/Table.js +13 -1
- 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 +2 -1
- package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/AddColumnModal.js +29 -4
- package/dist/esm/components/ReportBuilder/ColumnComponent.d.ts +49 -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 +7 -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 +1 -1
- package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
- package/dist/esm/hooks/useDashboard.js +63 -7
- package/dist/esm/hooks/useExport.d.ts.map +1 -1
- package/dist/esm/hooks/useExport.js +6 -3
- 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 +1490 -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/PivotList.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotList.js +3 -3
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +18 -2
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.js +440 -149
- package/dist/esm/models/Filter.d.ts +1 -1
- package/dist/esm/models/Filter.d.ts.map +1 -1
- package/dist/esm/models/Filter.js +3 -3
- package/dist/esm/utils/astFilterProcessing.d.ts.map +1 -1
- package/dist/esm/utils/astFilterProcessing.js +25 -4
- 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 +12 -1
- 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 +15 -10
- package/dist/esm/utils/pivotProcessing.d.ts.map +1 -1
- package/dist/esm/utils/pivotProcessing.js +13 -3
- package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
- package/dist/esm/utils/queryConstructor.js +30 -16
- package/dist/esm/utils/report.d.ts +10 -5
- package/dist/esm/utils/report.d.ts.map +1 -1
- package/dist/esm/utils/report.js +55 -7
- 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
|
@@ -612,7 +612,10 @@ function create1DStringPivotQuery(pivot, itemQuery, databaseType) {
|
|
|
612
612
|
: '';
|
|
613
613
|
let value2AliasSubstring = '';
|
|
614
614
|
const disambiguation = pivot.aggregations?.length > 1
|
|
615
|
-
? `${disambiguationIndex}
|
|
615
|
+
? `${disambiguationIndex}` +
|
|
616
|
+
(currentAgg.aggregationType !== 'count'
|
|
617
|
+
? `_${currentAgg.aggregationType}`
|
|
618
|
+
: '')
|
|
616
619
|
: '';
|
|
617
620
|
// Wrap the field in a CASE WHEN if it's boolean
|
|
618
621
|
let valueExpr = !currentAgg.valueField ? '*' : valueFieldAlias;
|
|
@@ -620,10 +623,12 @@ function create1DStringPivotQuery(pivot, itemQuery, databaseType) {
|
|
|
620
623
|
valueExpr = `CASE WHEN ${valueFieldAlias} THEN 1 ELSE 0 END`;
|
|
621
624
|
}
|
|
622
625
|
if (currentAgg.aggregationType === 'percentage') {
|
|
626
|
+
let countPercentage = false;
|
|
623
627
|
if (!currentAgg.valueField) {
|
|
624
|
-
|
|
628
|
+
countPercentage = true;
|
|
629
|
+
// throw new Error('No value field provided for percentage aggregation');
|
|
625
630
|
}
|
|
626
|
-
const valueField2Alias = processColumnReference(currentAgg.valueField2 ?? currentAgg.valueField, databaseType, undefined, false, true);
|
|
631
|
+
const valueField2Alias = processColumnReference(currentAgg.valueField2 ?? currentAgg.valueField ?? 'count', databaseType, undefined, false, true);
|
|
627
632
|
let value2Expr = valueField2Alias;
|
|
628
633
|
if ((currentAgg.valueField2Type ?? currentAgg.valueFieldType) === 'bool') {
|
|
629
634
|
value2Expr = `CASE WHEN ${valueField2Alias} THEN 1 ELSE 0 END`;
|
|
@@ -633,13 +638,15 @@ function create1DStringPivotQuery(pivot, itemQuery, databaseType) {
|
|
|
633
638
|
currentAgg.valueField !== currentAgg.valueField2
|
|
634
639
|
? `${processColumnReference(currentAgg.valueField2, databaseType, undefined, true)} AS ${valueField2Alias}`
|
|
635
640
|
: '';
|
|
636
|
-
const percentageExpr =
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
641
|
+
const percentageExpr = countPercentage
|
|
642
|
+
? 'CAST(COUNT(*) AS FLOAT) / (SELECT COUNT(*) FROM quill_base_table)'
|
|
643
|
+
: currentAgg.valueField === currentAgg.valueField2 ||
|
|
644
|
+
!currentAgg.valueField2
|
|
645
|
+
? `CAST(sum(${valueExpr}) AS FLOAT) / ${(currentAgg.valueField2Type ?? currentAgg.valueFieldType) === 'bool' ? 'COUNT(*)' : 'SUM(sum(' + valueExpr + ')) OVER ()'}`
|
|
646
|
+
: `CAST(sum(${valueExpr}) AS FLOAT) / GREATEST(sum(${value2Expr}), 1)`;
|
|
640
647
|
quillAggSelects = [
|
|
641
648
|
...quillAggSelects,
|
|
642
|
-
`${percentageExpr} as ${processColumnReference(`${currentAgg.valueField ?? ''}${disambiguation}`, databaseType, undefined, false, true)}`,
|
|
649
|
+
`${percentageExpr} as ${processColumnReference(`${currentAgg.valueField ?? (disambiguation ? 'count' : 'percentage')}${disambiguation}`, databaseType, undefined, false, true)}`,
|
|
643
650
|
];
|
|
644
651
|
}
|
|
645
652
|
else {
|
|
@@ -707,7 +714,10 @@ function create1DDatePivotQuery(pivot, itemQuery, dateBucket = 'month', database
|
|
|
707
714
|
: '';
|
|
708
715
|
let value2AliasSubstring = '';
|
|
709
716
|
const disambiguation = pivot.aggregations?.length > 1
|
|
710
|
-
? `${disambiguationIndex}
|
|
717
|
+
? `${disambiguationIndex}` +
|
|
718
|
+
(currentAgg.aggregationType !== 'count'
|
|
719
|
+
? `_${currentAgg.aggregationType}`
|
|
720
|
+
: '')
|
|
711
721
|
: '';
|
|
712
722
|
// Wrap the field in a CASE WHEN if it's boolean
|
|
713
723
|
let valueExpr = !currentAgg.valueField ? '*' : valueFieldAlias;
|
|
@@ -715,10 +725,12 @@ function create1DDatePivotQuery(pivot, itemQuery, dateBucket = 'month', database
|
|
|
715
725
|
valueExpr = `CASE WHEN ${valueFieldAlias} THEN 1 ELSE 0 END`;
|
|
716
726
|
}
|
|
717
727
|
if (currentAgg.aggregationType === 'percentage') {
|
|
728
|
+
let countPercentage = false;
|
|
718
729
|
if (!currentAgg.valueField) {
|
|
719
|
-
|
|
730
|
+
countPercentage = true;
|
|
731
|
+
// throw new Error('No value field provided for percentage aggregation');
|
|
720
732
|
}
|
|
721
|
-
const valueField2Alias = processColumnReference(currentAgg.valueField2 ?? currentAgg.valueField, databaseType, undefined, false, true);
|
|
733
|
+
const valueField2Alias = processColumnReference(currentAgg.valueField2 ?? currentAgg.valueField ?? 'count', databaseType, undefined, false, true);
|
|
722
734
|
value2AliasSubstring =
|
|
723
735
|
currentAgg.valueField2 &&
|
|
724
736
|
currentAgg.valueField !== currentAgg.valueField2
|
|
@@ -728,13 +740,15 @@ function create1DDatePivotQuery(pivot, itemQuery, dateBucket = 'month', database
|
|
|
728
740
|
if ((currentAgg.valueField2Type ?? currentAgg.valueFieldType) === 'bool') {
|
|
729
741
|
value2Expr = `CASE WHEN ${valueField2Alias} THEN 1 ELSE 0 END`;
|
|
730
742
|
}
|
|
731
|
-
const percentageExpr =
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
743
|
+
const percentageExpr = countPercentage
|
|
744
|
+
? 'CAST(COUNT(*) AS FLOAT) / (SELECT COUNT(*) FROM quill_base_table)'
|
|
745
|
+
: currentAgg.valueField === currentAgg.valueField2 ||
|
|
746
|
+
!currentAgg.valueField2
|
|
747
|
+
? `CAST(sum(${valueExpr}) AS FLOAT) / ${(currentAgg.valueField2Type ?? currentAgg.valueFieldType) === 'bool' ? 'COUNT(*)' : 'SUM(sum(' + valueExpr + ')) OVER ()'}`
|
|
748
|
+
: `CAST(sum(${valueExpr}) AS FLOAT) / GREATEST(sum(${value2Expr}), 1)`;
|
|
735
749
|
quillAggSelects = [
|
|
736
750
|
...quillAggSelects,
|
|
737
|
-
`${percentageExpr} as ${processColumnReference(`${currentAgg.valueField}${disambiguation}`, databaseType, undefined, false, true)}`,
|
|
751
|
+
`${percentageExpr} as ${processColumnReference(`${currentAgg.valueField ?? (disambiguation ? 'count' : 'percentage')}${disambiguation}`, databaseType, undefined, false, true)}`,
|
|
738
752
|
];
|
|
739
753
|
}
|
|
740
754
|
else {
|
|
@@ -7,6 +7,7 @@ import { DateRangesByColumn, UniqueValuesByTable, Table, UniqueValuesByColumn }
|
|
|
7
7
|
import { AdditionalProcessing } from './tableProcessing';
|
|
8
8
|
import { CustomField } from '../models/Schema';
|
|
9
9
|
import { ReportBuilderColumn } from '../models/ReportBuilder';
|
|
10
|
+
import { EventTracking } from '../QuillProvider';
|
|
10
11
|
export type ReportBuilderInfo = {
|
|
11
12
|
rows: any[];
|
|
12
13
|
columns: ColumnInternal[];
|
|
@@ -27,7 +28,7 @@ export type ReportBuilderInfo = {
|
|
|
27
28
|
};
|
|
28
29
|
export declare const EMPTY_REPORT: QuillReport;
|
|
29
30
|
export declare const EMPTY_INTERNAL_REPORT: QuillReportInternal;
|
|
30
|
-
export declare function fetchReport({ reportId, client, tenants, flags, useReportTask, filters, additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly, abortSignal, getToken, }: {
|
|
31
|
+
export declare function fetchReport({ reportId, client, tenants, flags, useReportTask, filters, additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly, abortSignal, getToken, eventTracking, }: {
|
|
31
32
|
reportId: string;
|
|
32
33
|
client: QuillProviderClient;
|
|
33
34
|
tenants?: {
|
|
@@ -44,11 +45,12 @@ export declare function fetchReport({ reportId, client, tenants, flags, useRepor
|
|
|
44
45
|
rowCountOnly?: boolean;
|
|
45
46
|
abortSignal?: AbortSignal;
|
|
46
47
|
getToken: () => Promise<string>;
|
|
48
|
+
eventTracking: EventTracking | null;
|
|
47
49
|
}): Promise<{
|
|
48
50
|
report: QuillReportInternal;
|
|
49
51
|
error?: string;
|
|
50
52
|
}>;
|
|
51
|
-
export declare function processReportResponse({ resp, client, filters, dateBucket, additionalProcessing, customFields, getToken, tenants, }: {
|
|
53
|
+
export declare function processReportResponse({ resp, client, filters, dateBucket, additionalProcessing, customFields, getToken, eventTracking, tenants, }: {
|
|
52
54
|
resp: any;
|
|
53
55
|
client: QuillProviderClient;
|
|
54
56
|
filters?: (InternalDashboardFilter | InternalFilter)[];
|
|
@@ -58,6 +60,7 @@ export declare function processReportResponse({ resp, client, filters, dateBucke
|
|
|
58
60
|
[tableName: string]: CustomField[];
|
|
59
61
|
} | null;
|
|
60
62
|
getToken: () => Promise<string>;
|
|
63
|
+
eventTracking: EventTracking | null;
|
|
61
64
|
tenants?: {
|
|
62
65
|
tenantField: string;
|
|
63
66
|
tenantIds: (string | number)[];
|
|
@@ -74,11 +77,12 @@ export declare function fetchReportRowCount(reportId: string, client: QuillProvi
|
|
|
74
77
|
tenantField: string;
|
|
75
78
|
tenantIds: (string | number)[];
|
|
76
79
|
}[] | (string | number)[], flags?: string[], useReportTask?: boolean, filters?: any[], additionalProcessing?: AdditionalProcessing, customFields?: any, abortSignal?: AbortSignal): Promise<number | undefined>;
|
|
77
|
-
export declare function saveReport({ report, dashboardItemId, client, getToken, }: {
|
|
80
|
+
export declare function saveReport({ report, dashboardItemId, client, getToken, eventTracking, }: {
|
|
78
81
|
report: any;
|
|
79
82
|
dashboardItemId?: string;
|
|
80
83
|
client: QuillProviderClient;
|
|
81
84
|
getToken: () => Promise<string>;
|
|
85
|
+
eventTracking: EventTracking | null;
|
|
82
86
|
}): Promise<any>;
|
|
83
87
|
export declare const formatRowsFromReport: (report: any, xAxisField?: string, xAxisFormat?: string) => any;
|
|
84
88
|
export declare function formattedPivotRowsAndColumns(report: QuillReport): {
|
|
@@ -88,8 +92,8 @@ export declare function formattedPivotRowsAndColumns(report: QuillReport): {
|
|
|
88
92
|
columns: Column[];
|
|
89
93
|
rowCount: number;
|
|
90
94
|
};
|
|
91
|
-
export declare function convertInternalReportToReport(report: QuillReportInternal, dashboardFilters: InternalDashboardFilter[], initiator?: string): QuillReport;
|
|
92
|
-
export declare const fetchReportBuilderDataFromAST: ({ baseAst, schema, client, tenants, pivot, skipPivotColumnFetch, previousRelevant, requiresNewFilteredUniqueValues, report, customFields, skipUniqueValues, skipRowCount, processing, dashboardName, getToken, }: {
|
|
95
|
+
export declare function convertInternalReportToReport(report: QuillReportInternal, dashboardFilters: InternalDashboardFilter[], eventTracking: EventTracking | null, initiator?: string): QuillReport;
|
|
96
|
+
export declare const fetchReportBuilderDataFromAST: ({ baseAst, schema, client, tenants, pivot, skipPivotColumnFetch, previousRelevant, requiresNewFilteredUniqueValues, report, customFields, skipUniqueValues, skipRowCount, processing, dashboardName, getToken, eventTracking, }: {
|
|
93
97
|
baseAst: any;
|
|
94
98
|
schema: Table[];
|
|
95
99
|
client: QuillProviderClient;
|
|
@@ -112,5 +116,6 @@ export declare const fetchReportBuilderDataFromAST: ({ baseAst, schema, client,
|
|
|
112
116
|
processing?: AdditionalProcessing;
|
|
113
117
|
dashboardName: string;
|
|
114
118
|
getToken: () => Promise<string>;
|
|
119
|
+
eventTracking: EventTracking | null;
|
|
115
120
|
}) => Promise<ReportBuilderInfo>;
|
|
116
121
|
//# sourceMappingURL=report.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EACL,uBAAuB,EAEvB,cAAc,EACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,KAAK,EACL,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAS1B,OAAO,EACL,oBAAoB,EAIrB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/utils/report.js
CHANGED
|
@@ -78,7 +78,7 @@ function extractAllReportValuesFromQuillInternalReport(reportInternal) {
|
|
|
78
78
|
pivotRowCount: reportInternal.pivotRowCount,
|
|
79
79
|
};
|
|
80
80
|
}
|
|
81
|
-
async function fetchReport({ reportId, client, tenants, flags, useReportTask = true, filters = [], additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly, abortSignal, getToken, }) {
|
|
81
|
+
async function fetchReport({ reportId, client, tenants, flags, useReportTask = true, filters = [], additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly, abortSignal, getToken, eventTracking, }) {
|
|
82
82
|
let reportInfo = undefined;
|
|
83
83
|
let errorMessage = undefined;
|
|
84
84
|
try {
|
|
@@ -112,6 +112,7 @@ async function fetchReport({ reportId, client, tenants, flags, useReportTask = t
|
|
|
112
112
|
additionalProcessing,
|
|
113
113
|
customFields,
|
|
114
114
|
getToken,
|
|
115
|
+
eventTracking,
|
|
115
116
|
tenants,
|
|
116
117
|
});
|
|
117
118
|
}
|
|
@@ -119,6 +120,17 @@ async function fetchReport({ reportId, client, tenants, flags, useReportTask = t
|
|
|
119
120
|
if (error instanceof Error && error.name === 'AbortError') {
|
|
120
121
|
throw error;
|
|
121
122
|
}
|
|
123
|
+
eventTracking?.logError?.({
|
|
124
|
+
type: 'bug', // TODO: determine type
|
|
125
|
+
severity: 'high',
|
|
126
|
+
message: 'Error fetching report',
|
|
127
|
+
errorMessage: error.message,
|
|
128
|
+
errorStack: error.stack,
|
|
129
|
+
errorData: {
|
|
130
|
+
caller: 'fetchReport',
|
|
131
|
+
function: 'fetchReport',
|
|
132
|
+
},
|
|
133
|
+
});
|
|
122
134
|
if (error instanceof error_1.DataLoadError) {
|
|
123
135
|
if (!error.data.data) {
|
|
124
136
|
errorMessage = error.message ?? 'Failed to fetch chart';
|
|
@@ -143,7 +155,7 @@ async function fetchReport({ reportId, client, tenants, flags, useReportTask = t
|
|
|
143
155
|
}
|
|
144
156
|
return { report: reportInfo || exports.EMPTY_INTERNAL_REPORT, error: errorMessage };
|
|
145
157
|
}
|
|
146
|
-
async function processReportResponse({ resp, client, filters, dateBucket, additionalProcessing, customFields, getToken, tenants, }) {
|
|
158
|
+
async function processReportResponse({ resp, client, filters, dateBucket, additionalProcessing, customFields, getToken, eventTracking, tenants, }) {
|
|
147
159
|
const dashboardItem = {
|
|
148
160
|
...resp,
|
|
149
161
|
filtersApplied: filters?.filter((filter) => filter.filterType in Filter_1.InternalFilterType),
|
|
@@ -172,6 +184,7 @@ async function processReportResponse({ resp, client, filters, dateBucket, additi
|
|
|
172
184
|
customFields,
|
|
173
185
|
getToken,
|
|
174
186
|
tenants,
|
|
187
|
+
eventTracking,
|
|
175
188
|
});
|
|
176
189
|
if (additionalProcessing) {
|
|
177
190
|
reportInfo.pagination = additionalProcessing.page;
|
|
@@ -198,6 +211,7 @@ async function processReportResponse({ resp, client, filters, dateBucket, additi
|
|
|
198
211
|
dashboardItemId: reportInfo.id,
|
|
199
212
|
client,
|
|
200
213
|
getToken,
|
|
214
|
+
eventTracking,
|
|
201
215
|
});
|
|
202
216
|
}
|
|
203
217
|
return reportInfo;
|
|
@@ -240,7 +254,7 @@ async function fetchReportRowCount(reportId, client, getToken, tenants, flags, u
|
|
|
240
254
|
const resp = await (0, dataFetcher_1.parseFetchResponse)(client, useReportTask ? 'report' : 'item', fetchResp, getToken);
|
|
241
255
|
return resp.rowCount;
|
|
242
256
|
}
|
|
243
|
-
async function saveReport({ report, dashboardItemId, client, getToken, }) {
|
|
257
|
+
async function saveReport({ report, dashboardItemId, client, getToken, eventTracking, }) {
|
|
244
258
|
const { publicKey, databaseType } = client;
|
|
245
259
|
const { data } = await (0, dataFetcher_1.quillFetch)({
|
|
246
260
|
client,
|
|
@@ -257,6 +271,16 @@ async function saveReport({ report, dashboardItemId, client, getToken, }) {
|
|
|
257
271
|
credentials: 'same-origin',
|
|
258
272
|
getToken,
|
|
259
273
|
});
|
|
274
|
+
if (dashboardItemId) {
|
|
275
|
+
eventTracking?.logEvent?.('save-report', {
|
|
276
|
+
reportId: data.id || data._id,
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
else {
|
|
280
|
+
eventTracking?.logEvent?.('create-report', {
|
|
281
|
+
reportId: data.id || data._id,
|
|
282
|
+
});
|
|
283
|
+
}
|
|
260
284
|
return data;
|
|
261
285
|
}
|
|
262
286
|
const formatRowsFromReport = (report, xAxisField, xAxisFormat) => {
|
|
@@ -321,7 +345,7 @@ function formattedPivotRowsAndColumns(report) {
|
|
|
321
345
|
: 0,
|
|
322
346
|
};
|
|
323
347
|
}
|
|
324
|
-
function convertInternalReportToReport(report, dashboardFilters, initiator) {
|
|
348
|
+
function convertInternalReportToReport(report, dashboardFilters, eventTracking, initiator) {
|
|
325
349
|
try {
|
|
326
350
|
if (!report) {
|
|
327
351
|
return exports.EMPTY_REPORT;
|
|
@@ -354,10 +378,21 @@ function convertInternalReportToReport(report, dashboardFilters, initiator) {
|
|
|
354
378
|
};
|
|
355
379
|
}
|
|
356
380
|
catch (error) {
|
|
381
|
+
eventTracking?.logError?.({
|
|
382
|
+
type: 'bug', // TODO: determine type
|
|
383
|
+
severity: 'high',
|
|
384
|
+
message: 'Error converting internal report to report',
|
|
385
|
+
errorMessage: error.message,
|
|
386
|
+
errorStack: error.stack,
|
|
387
|
+
errorData: {
|
|
388
|
+
caller: 'convertInternalReportToReport',
|
|
389
|
+
function: 'convertInternalReportToReport',
|
|
390
|
+
},
|
|
391
|
+
});
|
|
357
392
|
return exports.EMPTY_REPORT;
|
|
358
393
|
}
|
|
359
394
|
}
|
|
360
|
-
const fetchReportBuilderDataFromAST = async ({ baseAst, schema, client, tenants, pivot, skipPivotColumnFetch, previousRelevant, requiresNewFilteredUniqueValues, report, customFields, skipUniqueValues, skipRowCount, processing, dashboardName, getToken, }) => {
|
|
395
|
+
const fetchReportBuilderDataFromAST = async ({ baseAst, schema, client, tenants, pivot, skipPivotColumnFetch, previousRelevant, requiresNewFilteredUniqueValues, report, customFields, skipUniqueValues, skipRowCount, processing, dashboardName, getToken, eventTracking, }) => {
|
|
361
396
|
let newRows = [];
|
|
362
397
|
let newColumns = [];
|
|
363
398
|
let newRowCount = 0;
|
|
@@ -422,7 +457,7 @@ const fetchReportBuilderDataFromAST = async ({ baseAst, schema, client, tenants,
|
|
|
422
457
|
};
|
|
423
458
|
});
|
|
424
459
|
});
|
|
425
|
-
const tableData = await (0, tableProcessing_1.fetchTableByAST)(baseAst, client, getToken, tenants, dashboardName, processing ?? { page: paginationProcessing_1.DEFAULT_PAGINATION }, customFields, skipRowCount);
|
|
460
|
+
const tableData = await (0, tableProcessing_1.fetchTableByAST)(baseAst, client, getToken, tenants, eventTracking, dashboardName, processing ?? { page: paginationProcessing_1.DEFAULT_PAGINATION }, customFields, skipRowCount);
|
|
426
461
|
if (tableData.error) {
|
|
427
462
|
throw new Error(tableData.error);
|
|
428
463
|
}
|
|
@@ -468,6 +503,7 @@ const fetchReportBuilderDataFromAST = async ({ baseAst, schema, client, tenants,
|
|
|
468
503
|
reportBuilderColumns,
|
|
469
504
|
client,
|
|
470
505
|
getToken,
|
|
506
|
+
eventTracking,
|
|
471
507
|
tenants,
|
|
472
508
|
query: queryResult.query,
|
|
473
509
|
queryTemplate: starQuery.query,
|
|
@@ -483,7 +519,7 @@ const fetchReportBuilderDataFromAST = async ({ baseAst, schema, client, tenants,
|
|
|
483
519
|
return column.fieldType === 'date';
|
|
484
520
|
});
|
|
485
521
|
if (dateColumns.length > 0) {
|
|
486
|
-
const dateRanges = await (0, tableProcessing_1.getQueryDateRangeByColumns)(dateColumns, queryResult.query, client, getToken, tenants, customFields ?? [], dashboardName);
|
|
522
|
+
const dateRanges = await (0, tableProcessing_1.getQueryDateRangeByColumns)(dateColumns, queryResult.query, client, getToken, tenants, eventTracking, customFields ?? [], dashboardName);
|
|
487
523
|
if (dateRanges === null) {
|
|
488
524
|
throw new Error("Couldn't fetch date ranges");
|
|
489
525
|
}
|
|
@@ -525,6 +561,7 @@ const fetchReportBuilderDataFromAST = async ({ baseAst, schema, client, tenants,
|
|
|
525
561
|
caller: 'ReportBuilder',
|
|
526
562
|
getToken,
|
|
527
563
|
pivotQuery: skipPivotColumnFetch ? curReport?.pivotQuery : undefined,
|
|
564
|
+
eventTracking,
|
|
528
565
|
});
|
|
529
566
|
newPivot = pivot;
|
|
530
567
|
}
|
|
@@ -553,6 +590,17 @@ const fetchReportBuilderDataFromAST = async ({ baseAst, schema, client, tenants,
|
|
|
553
590
|
newColumns = tableData.columns;
|
|
554
591
|
}
|
|
555
592
|
catch (e) {
|
|
593
|
+
eventTracking?.logError?.({
|
|
594
|
+
type: 'bug', // TODO: determine type
|
|
595
|
+
severity: 'high',
|
|
596
|
+
message: 'Error fetching report builder data from AST',
|
|
597
|
+
errorMessage: e.message,
|
|
598
|
+
errorStack: e.stack,
|
|
599
|
+
errorData: {
|
|
600
|
+
caller: 'fetchReportBuilderDataFromAST',
|
|
601
|
+
function: 'fetchReportBuilderDataFromAST',
|
|
602
|
+
},
|
|
603
|
+
});
|
|
556
604
|
error = e.message;
|
|
557
605
|
}
|
|
558
606
|
if (newPivot) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reportBuilder.d.ts","sourceRoot":"","sources":["../../../src/utils/reportBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAEL,kBAAkB,EAGlB,kBAAkB,EAElB,QAAQ,EACT,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;
|
|
1
|
+
{"version":3,"file":"reportBuilder.d.ts","sourceRoot":"","sources":["../../../src/utils/reportBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAEL,kBAAkB,EAGlB,kBAAkB,EAElB,QAAQ,EACT,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;AA2OF,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;AAEd,eAAO,MAAM,6BAA6B,WAChC,kBAAkB,EAAE,iBACb;IACb,CAAC,KAAK,EAAE,MAAM,GAAG;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,sBAAsB,EAAE,MAAM,CAAC;QAC/B,UAAU,EAAE,MAAM,CAAC;KACpB,EAAE,CAAC;CACL,yBAqCF,CAAC;AAEF,eAAO,MAAM,2BAA2B,UAC/B,kBAAkB,iBACV,aAAa,KAC3B,kBAoGF,CAAC"}
|
|
@@ -162,8 +162,11 @@ const astOrderByToSort = (node) => {
|
|
|
162
162
|
}
|
|
163
163
|
return node
|
|
164
164
|
.map((node) => {
|
|
165
|
-
return node.expr
|
|
166
|
-
? {
|
|
165
|
+
return node.expr
|
|
166
|
+
? {
|
|
167
|
+
field: (0, astFilterProcessing_1.getFieldFromExpression)(node.expr),
|
|
168
|
+
direction: node.type ?? 'ASC',
|
|
169
|
+
}
|
|
167
170
|
: null;
|
|
168
171
|
})
|
|
169
172
|
.filter((node) => node);
|
|
@@ -3,7 +3,8 @@ import { QuillProviderClient } from '../models/Client';
|
|
|
3
3
|
import { ColumnInternal } from '../models/Columns';
|
|
4
4
|
import { CustomField } from '../models/Schema';
|
|
5
5
|
import { Table } from '../models/Tables';
|
|
6
|
-
|
|
6
|
+
import { EventTracking } from '../QuillProvider';
|
|
7
|
+
export declare const getCustomFieldInfo: ({ client, tenants, abortSignal, getToken, eventTracking, }: {
|
|
7
8
|
client: QuillProviderClient;
|
|
8
9
|
tenants: {
|
|
9
10
|
tenantField: string;
|
|
@@ -11,10 +12,11 @@ export declare const getCustomFieldInfo: ({ client, tenants, abortSignal, getTok
|
|
|
11
12
|
}[] | (string | number)[];
|
|
12
13
|
abortSignal?: AbortSignal;
|
|
13
14
|
getToken: () => Promise<string>;
|
|
15
|
+
eventTracking: EventTracking | null;
|
|
14
16
|
}) => Promise<{
|
|
15
17
|
[tableName: string]: CustomField[];
|
|
16
18
|
} | null>;
|
|
17
|
-
export declare const getSchemaInfo: ({ client, caller, tenants, tableIds, abortSignal, getToken, }: {
|
|
19
|
+
export declare const getSchemaInfo: ({ client, caller, tenants, tableIds, abortSignal, getToken, eventTracking, }: {
|
|
18
20
|
client: QuillProviderClient;
|
|
19
21
|
tenants?: {
|
|
20
22
|
tenantField: string;
|
|
@@ -24,6 +26,7 @@ export declare const getSchemaInfo: ({ client, caller, tenants, tableIds, abortS
|
|
|
24
26
|
tableIds?: string[];
|
|
25
27
|
abortSignal?: AbortSignal;
|
|
26
28
|
getToken: () => Promise<string>;
|
|
29
|
+
eventTracking: EventTracking | null;
|
|
27
30
|
}) => Promise<{
|
|
28
31
|
schemaData: Table[];
|
|
29
32
|
customFieldsByTable: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAEd,MAAM,oCAAoC,CAAC;AAC5C,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;AA+
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAEd,MAAM,oCAAoC,CAAC;AAC5C,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;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AA+BjD,eAAO,MAAM,kBAAkB,+DAM5B;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,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CACrC,KAAG,OAAO,CAAC;IAAE,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,EAAE,CAAA;CAAE,GAAG,IAAI,CA2FxD,CAAC;AAEF,eAAO,MAAM,aAAa,iFAQvB;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;IAC1B,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CACrC,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,CA0DA,CAAC;AA2BF,eAAO,MAAM,2BAA2B,gBACzB,WAAW,KACvB,cAaF,CAAC;AAIF,eAAO,MAAM,0BAA0B,WAAY,KAAK,EAAE,KAAG,aA8B5D,CAAC"}
|
package/dist/cjs/utils/schema.js
CHANGED
|
@@ -24,7 +24,7 @@ const parseResponse = (results) => {
|
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
};
|
|
27
|
-
const getCustomFieldInfo = async ({ client, tenants, abortSignal, getToken, }) => {
|
|
27
|
+
const getCustomFieldInfo = async ({ client, tenants, abortSignal, getToken, eventTracking, }) => {
|
|
28
28
|
let customFieldsByTableUniqueRows = [];
|
|
29
29
|
try {
|
|
30
30
|
const { publicKey, databaseType } = client;
|
|
@@ -83,6 +83,17 @@ const getCustomFieldInfo = async ({ client, tenants, abortSignal, getToken, }) =
|
|
|
83
83
|
});
|
|
84
84
|
}
|
|
85
85
|
catch (e) {
|
|
86
|
+
eventTracking?.logError?.({
|
|
87
|
+
type: 'bug', // TODO: determine type
|
|
88
|
+
severity: 'high',
|
|
89
|
+
message: 'Error fetching custom fields',
|
|
90
|
+
errorMessage: e.message,
|
|
91
|
+
errorStack: e.stack,
|
|
92
|
+
errorData: {
|
|
93
|
+
caller: 'getCustomFieldInfo',
|
|
94
|
+
function: 'getCustomFieldInfo',
|
|
95
|
+
},
|
|
96
|
+
});
|
|
86
97
|
return null;
|
|
87
98
|
}
|
|
88
99
|
const customFieldsByTableUnique = customFieldsByTableUniqueRows
|
|
@@ -97,7 +108,7 @@ const getCustomFieldInfo = async ({ client, tenants, abortSignal, getToken, }) =
|
|
|
97
108
|
return customFieldsByTableUnique;
|
|
98
109
|
};
|
|
99
110
|
exports.getCustomFieldInfo = getCustomFieldInfo;
|
|
100
|
-
const getSchemaInfo = async ({ client, caller = 'se', tenants, tableIds, abortSignal, getToken, }) => {
|
|
111
|
+
const getSchemaInfo = async ({ client, caller = 'se', tenants, tableIds, abortSignal, getToken, eventTracking, }) => {
|
|
101
112
|
const { publicKey } = client;
|
|
102
113
|
let customFieldsByTableUnique = null;
|
|
103
114
|
if (client.featureFlags?.customFieldsEnabled &&
|
|
@@ -113,6 +124,7 @@ const getSchemaInfo = async ({ client, caller = 'se', tenants, tableIds, abortSi
|
|
|
113
124
|
tenants,
|
|
114
125
|
abortSignal,
|
|
115
126
|
getToken,
|
|
127
|
+
eventTracking,
|
|
116
128
|
});
|
|
117
129
|
}
|
|
118
130
|
catch (e) {
|
|
@@ -7,6 +7,7 @@ import { Pivot } from '../models/Pivot';
|
|
|
7
7
|
import { ReportBuilderColumn } from '../models/ReportBuilder';
|
|
8
8
|
import { CustomField } from '../models/Schema';
|
|
9
9
|
import { DateRangesByColumn, UniqueValuesByTable, UniqueValuesByColumn } from '../models/Tables';
|
|
10
|
+
import { EventTracking } from '../QuillProvider';
|
|
10
11
|
export interface AdditionalProcessing {
|
|
11
12
|
sort?: {
|
|
12
13
|
field: string;
|
|
@@ -16,7 +17,7 @@ export interface AdditionalProcessing {
|
|
|
16
17
|
last?: number;
|
|
17
18
|
}
|
|
18
19
|
export declare const hasColumnAlias: (columns: Column[], referencedColumns: string[]) => boolean;
|
|
19
|
-
export declare const getUniqueValuesByQuery: ({ columns, query, client, getToken, tenants, customFields, filters, dashboardName, }: {
|
|
20
|
+
export declare const getUniqueValuesByQuery: ({ columns, query, client, getToken, tenants, customFields, filters, dashboardName, eventTracking, }: {
|
|
20
21
|
columns: Column[];
|
|
21
22
|
query: string;
|
|
22
23
|
client: QuillProviderClient;
|
|
@@ -30,8 +31,9 @@ export declare const getUniqueValuesByQuery: ({ columns, query, client, getToken
|
|
|
30
31
|
};
|
|
31
32
|
filters?: InternalDashboardFilter[];
|
|
32
33
|
dashboardName: string;
|
|
34
|
+
eventTracking: EventTracking | null;
|
|
33
35
|
}) => Promise<UniqueValuesByColumn | null>;
|
|
34
|
-
export declare const getUniqueStringValuesByColumn: ({ columns, tableName, client, getToken, tenants, customFields, withExceededColumns, query, dashboardName, }: {
|
|
36
|
+
export declare const getUniqueStringValuesByColumn: ({ columns, tableName, client, getToken, tenants, customFields, withExceededColumns, query, dashboardName, eventTracking, }: {
|
|
35
37
|
columns: ColumnInternal[];
|
|
36
38
|
tableName: string;
|
|
37
39
|
client: any;
|
|
@@ -44,8 +46,9 @@ export declare const getUniqueStringValuesByColumn: ({ columns, tableName, clien
|
|
|
44
46
|
withExceededColumns?: boolean;
|
|
45
47
|
query?: string;
|
|
46
48
|
dashboardName: string;
|
|
49
|
+
eventTracking: EventTracking | null;
|
|
47
50
|
}) => Promise<UniqueValuesByColumn>;
|
|
48
|
-
export declare const getUniqueStringValuesByTable: ({ tables, columns, client, getToken, tenants, dashboardName, customFields, withExceededColumns, queryTemplate, }: {
|
|
51
|
+
export declare const getUniqueStringValuesByTable: ({ tables, columns, client, getToken, tenants, dashboardName, customFields, withExceededColumns, queryTemplate, eventTracking, }: {
|
|
49
52
|
tables: string[];
|
|
50
53
|
columns: ColumnInternal[];
|
|
51
54
|
client: QuillProviderClient;
|
|
@@ -60,8 +63,9 @@ export declare const getUniqueStringValuesByTable: ({ tables, columns, client, g
|
|
|
60
63
|
};
|
|
61
64
|
withExceededColumns?: boolean;
|
|
62
65
|
queryTemplate?: string;
|
|
66
|
+
eventTracking: EventTracking | null;
|
|
63
67
|
}) => Promise<UniqueValuesByTable>;
|
|
64
|
-
export declare const getRelevantInfoFromQuery: ({ tables, columns, aliasedColumns, reportBuilderColumns, client, getToken, tenants, query, queryTemplate, customFields, dashboardName, }: {
|
|
68
|
+
export declare const getRelevantInfoFromQuery: ({ tables, columns, aliasedColumns, reportBuilderColumns, client, getToken, tenants, query, queryTemplate, customFields, dashboardName, eventTracking, }: {
|
|
65
69
|
tables: string[];
|
|
66
70
|
columns: ColumnInternal[];
|
|
67
71
|
aliasedColumns: ColumnInternal[];
|
|
@@ -76,6 +80,7 @@ export declare const getRelevantInfoFromQuery: ({ tables, columns, aliasedColumn
|
|
|
76
80
|
queryTemplate: string;
|
|
77
81
|
customFields?: any;
|
|
78
82
|
dashboardName: string;
|
|
83
|
+
eventTracking: EventTracking | null;
|
|
79
84
|
}) => Promise<{
|
|
80
85
|
uniqueStrings?: UniqueValuesByTable;
|
|
81
86
|
columnUniqueValues?: UniqueValuesByColumn;
|
|
@@ -87,14 +92,14 @@ export declare const getCountsByColumns: (columns: Column[], query: string, clie
|
|
|
87
92
|
tenantIds: (string | number)[];
|
|
88
93
|
}[] | (string | number)[] | undefined, customFields: {
|
|
89
94
|
[table: string]: CustomField[];
|
|
90
|
-
}, dashboardName: string) => Promise<{
|
|
95
|
+
}, eventTracking: EventTracking | null, dashboardName: string) => Promise<{
|
|
91
96
|
filteredColumns: Column[];
|
|
92
97
|
exceededColumns: Column[] | undefined;
|
|
93
98
|
}>;
|
|
94
99
|
export declare const getQueryDateRangeByColumns: (columns: Column[], query: string, client: QuillProviderClient, getToken: () => Promise<string>, tenants: {
|
|
95
100
|
tenantField: string;
|
|
96
101
|
tenantIds: (string | number)[];
|
|
97
|
-
}[] | (string | number)[] | undefined, customFields: {
|
|
102
|
+
}[] | (string | number)[] | undefined, eventTracking: EventTracking | null, customFields: {
|
|
98
103
|
[table: string]: CustomField[];
|
|
99
104
|
}, dashboardName: string) => Promise<{
|
|
100
105
|
[column: string]: {
|
|
@@ -104,7 +109,7 @@ export declare const getQueryDateRangeByColumns: (columns: Column[], query: stri
|
|
|
104
109
|
};
|
|
105
110
|
};
|
|
106
111
|
} | null>;
|
|
107
|
-
export declare const getPaginatedRows: (client: QuillProviderClient, getToken: () => Promise<string>, tenants: {
|
|
112
|
+
export declare const getPaginatedRows: (client: QuillProviderClient, getToken: () => Promise<string>, eventTracking: EventTracking | null, tenants: {
|
|
108
113
|
tenantField: string;
|
|
109
114
|
tenantIds: (string | number)[];
|
|
110
115
|
}[] | (string | number)[] | undefined, dashboardName: string, query?: string, reportId?: string, processing?: AdditionalProcessing, filters?: any, customFields?: any) => Promise<{
|
|
@@ -113,7 +118,7 @@ export declare const getPaginatedRows: (client: QuillProviderClient, getToken: (
|
|
|
113
118
|
rowCount?: number;
|
|
114
119
|
error?: string;
|
|
115
120
|
}>;
|
|
116
|
-
export declare const fetchResultsByQuery: ({ query, client, tenants, processing, customFields, filters, dateField, rowsOnly, rowCountOnly, filterMap, dashboardName, pivot, getPivotRowCount, comparisonQuery, getToken, }: {
|
|
121
|
+
export declare const fetchResultsByQuery: ({ query, client, tenants, processing, customFields, filters, dateField, rowsOnly, rowCountOnly, filterMap, dashboardName, pivot, getPivotRowCount, comparisonQuery, getToken, eventTracking, }: {
|
|
117
122
|
query: string;
|
|
118
123
|
client: QuillProviderClient;
|
|
119
124
|
tenants: {
|
|
@@ -138,6 +143,7 @@ export declare const fetchResultsByQuery: ({ query, client, tenants, processing,
|
|
|
138
143
|
getPivotRowCount?: boolean;
|
|
139
144
|
comparisonQuery?: string;
|
|
140
145
|
getToken: () => Promise<string>;
|
|
146
|
+
eventTracking: EventTracking | null;
|
|
141
147
|
} & ({
|
|
142
148
|
dashboardName: string;
|
|
143
149
|
pivot?: Pivot | null;
|
|
@@ -152,7 +158,7 @@ export declare const fetchResultsByQuery: ({ query, client, tenants, processing,
|
|
|
152
158
|
itemQuery?: string[];
|
|
153
159
|
referencedTables?: string[];
|
|
154
160
|
}>;
|
|
155
|
-
export declare const fetchResultsByReport: ({ reportId, client, tenants, processing, filters, customFields, rowsOnly, rowCountOnly, abortSignal, pivot, pivotQuery, comparisonPivotQuery, getPivotRowCount, getToken, }: {
|
|
161
|
+
export declare const fetchResultsByReport: ({ reportId, client, tenants, processing, filters, customFields, rowsOnly, rowCountOnly, abortSignal, pivot, pivotQuery, comparisonPivotQuery, getPivotRowCount, getToken, eventTracking, }: {
|
|
156
162
|
reportId: string;
|
|
157
163
|
client: QuillProviderClient;
|
|
158
164
|
tenants: {
|
|
@@ -170,6 +176,7 @@ export declare const fetchResultsByReport: ({ reportId, client, tenants, process
|
|
|
170
176
|
comparisonPivotQuery?: string;
|
|
171
177
|
getPivotRowCount?: boolean;
|
|
172
178
|
getToken: () => Promise<string>;
|
|
179
|
+
eventTracking: EventTracking | null;
|
|
173
180
|
}) => Promise<{
|
|
174
181
|
columns: Column[];
|
|
175
182
|
rows: any[];
|
|
@@ -179,7 +186,7 @@ export declare const fetchResultsByReport: ({ reportId, client, tenants, process
|
|
|
179
186
|
export declare const fetchTableByAST: (ast: NodeSQLParser.Select, client: QuillProviderClient, getToken: () => Promise<string>, tenants: {
|
|
180
187
|
tenantField: string;
|
|
181
188
|
tenantIds: (string | number)[];
|
|
182
|
-
}[] | (string | number)[] | undefined, dashboardName: string, processing?: AdditionalProcessing, customFields?: any, rowsOnly?: boolean, rowCountOnly?: boolean) => Promise<{
|
|
189
|
+
}[] | (string | number)[] | undefined, eventTracking: EventTracking | null, dashboardName: string, processing?: AdditionalProcessing, customFields?: any, rowsOnly?: boolean, rowCountOnly?: boolean) => Promise<{
|
|
183
190
|
columns: ColumnInternal[];
|
|
184
191
|
rows: any[];
|
|
185
192
|
rowCount?: number;
|
|
@@ -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;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"tableProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/tableProcessing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAgBjD,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,sBAAsB,wGAUhC;IACD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,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,GACnB,SAAS,CAAC;IACd,YAAY,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,EAAE,CAAA;KAAE,CAAC;IACjD,OAAO,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CACrC,KAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CA4BtC,CAAC;AAEF,eAAO,MAAM,6BAA6B,+HAWvC;IACD,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,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,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CACrC,KAAG,OAAO,CAAC,oBAAoB,CAmD/B,CAAC;AAEF,eAAO,MAAM,4BAA4B,oIAWtC;IACD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,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,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,EAAE,CAAA;KAAE,CAAC;IAClD,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CACrC,KAAG,OAAO,CAAC,mBAAmB,CA8B9B,CAAC;AAEF,eAAO,MAAM,wBAAwB,4JAalC;IACD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;IAC5C,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,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,GACnB,SAAS,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CACrC,KAAG,OAAO,CAAC;IACV,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,kBAAkB,CAAC,EAAE,oBAAoB,CAAC;IAC1C,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAmEA,CAAC;AAEF,eAAO,MAAM,kBAAkB,YACpB,MAAM,EAAE,SACV,MAAM,UACL,mBAAmB,YACjB,MAAM,OAAO,CAAC,MAAM,CAAC,WAE3B;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;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,EAAE,CAAA;CAAE,iBACjC,aAAa,GAAG,IAAI,iBACpB,MAAM,KACpB,OAAO,CAAC;IACT,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACvC,CA2DA,CAAC;AA2FF,eAAO,MAAM,0BAA0B,YAC5B,MAAM,EAAE,SACV,MAAM,UACL,mBAAmB,YACjB,MAAM,OAAO,CAAC,MAAM,CAAC,WAE3B;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,iBACE,aAAa,GAAG,IAAI,gBACrB;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,EAAE,CAAA;CAAE,iBACjC,MAAM,KACpB,OAAO,CAAC;IACT,CAAC,MAAM,EAAE,MAAM,GAAG;QAAE,SAAS,EAAE;YAAE,KAAK,EAAE,IAAI,CAAC;YAAC,GAAG,EAAE,IAAI,CAAA;SAAE,CAAA;KAAE,CAAC;CAC7D,GAAG,IAAI,CAoBP,CAAC;AAoEF,eAAO,MAAM,gBAAgB,WACnB,mBAAmB,YACjB,MAAM,OAAO,CAAC,MAAM,CAAC,iBAChB,aAAa,GAAG,IAAI,WAE/B;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,iBACE,MAAM,UACb,MAAM,aACH,MAAM,eACJ,oBAAoB,YACvB,GAAG,iBACE,GAAG,KACjB,OAAO,CAAC;IACT,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CA0BA,CAAC;AAEF,eAAO,MAAM,mBAAmB,mMAiB7B;IACD,KAAK,EAAE,MAAM,CAAC;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,GACnB,SAAS,CAAC;IACd,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,OAAO,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CACrC,GAAG,CACA;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAA;CAAE,GAC/C;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;CAAE,CAClD,KAAG,OAAO,CAAC;IACV,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B,CA0IA,CAAC;AAEF,eAAO,MAAM,oBAAoB,+LAgB9B;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,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,GACnB,SAAS,CAAC;IACd,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CACrC,KAAG,OAAO,CAAC;IACV,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAkGA,CAAC;AAEF,eAAO,MAAM,eAAe,QACrB,aAAa,CAAC,MAAM,UACjB,mBAAmB,YACjB,MAAM,OAAO,CAAC,MAAM,CAAC,WAE3B;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,iBACE,aAAa,GAAG,IAAI,iBACpB,MAAM,eACR,oBAAoB,iBAClB,GAAG,aACP,OAAO,iBACH,OAAO,KACrB,OAAO,CAAC;IACT,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B,CAkFA,CAAC"}
|