@quillsql/react 2.11.16 → 2.11.17
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 +117 -42
- package/dist/cjs/Chart.d.ts.map +1 -1
- package/dist/cjs/Chart.js +44 -18
- package/dist/cjs/ChartBuilder.d.ts +194 -30
- package/dist/cjs/ChartBuilder.d.ts.map +1 -1
- package/dist/cjs/ChartBuilder.js +122 -62
- package/dist/cjs/ChartEditor.d.ts +114 -18
- package/dist/cjs/ChartEditor.d.ts.map +1 -1
- package/dist/cjs/ChartEditor.js +47 -15
- package/dist/cjs/Dashboard.d.ts +148 -91
- package/dist/cjs/Dashboard.d.ts.map +1 -1
- package/dist/cjs/Dashboard.js +46 -152
- package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts +21 -1
- package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
- package/dist/cjs/DateRangePicker/QuillDateRangePicker.js +5 -2
- package/dist/cjs/DateRangePicker/dateRangePickerUtils.js +1 -1
- package/dist/cjs/QuillProvider.d.ts +105 -2
- package/dist/cjs/QuillProvider.d.ts.map +1 -1
- package/dist/cjs/QuillProvider.js +59 -0
- package/dist/cjs/ReportBuilder.d.ts +188 -42
- package/dist/cjs/ReportBuilder.d.ts.map +1 -1
- package/dist/cjs/ReportBuilder.js +466 -394
- package/dist/cjs/SQLEditor.d.ts +158 -23
- package/dist/cjs/SQLEditor.d.ts.map +1 -1
- package/dist/cjs/SQLEditor.js +35 -30
- package/dist/cjs/Table.d.ts +119 -15
- package/dist/cjs/Table.d.ts.map +1 -1
- package/dist/cjs/Table.js +37 -6
- package/dist/cjs/TableChart.d.ts.map +1 -1
- package/dist/cjs/TableChart.js +0 -194
- package/dist/cjs/{BarList.d.ts → components/Chart/BarList.d.ts} +1 -1
- package/dist/cjs/components/Chart/BarList.d.ts.map +1 -0
- package/dist/cjs/{BarList.js → components/Chart/BarList.js} +1 -1
- package/dist/cjs/components/Chart/LineChart.d.ts +2 -3
- package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
- package/dist/cjs/components/Chart/LineChart.js +3 -3
- package/dist/cjs/components/Chart/PieChart.d.ts.map +1 -0
- package/dist/cjs/{PieChart.js → components/Chart/PieChart.js} +1 -1
- package/dist/cjs/components/Dashboard/ChartComponent.d.ts +2 -1
- package/dist/cjs/components/Dashboard/ChartComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/ChartComponent.js +6 -7
- package/dist/cjs/components/Dashboard/DashboardFilter.d.ts +22 -0
- package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -0
- package/dist/cjs/components/Dashboard/DashboardFilter.js +75 -0
- package/dist/cjs/components/Dashboard/DataLoader.d.ts +1 -1
- package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/DataLoader.js +1 -1
- package/dist/cjs/components/Dashboard/MetricComponent.d.ts +2 -12
- package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/MetricComponent.js +39 -17
- package/dist/cjs/components/Dashboard/TableComponent.d.ts +2 -1
- package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
- package/dist/cjs/components/Dashboard/TableComponent.js +6 -9
- package/dist/cjs/components/QuillSelect.d.ts +4 -1
- package/dist/cjs/components/QuillSelect.d.ts.map +1 -1
- package/dist/cjs/components/QuillSelect.js +13 -8
- package/dist/cjs/components/QuillTable.d.ts +16 -2
- package/dist/cjs/components/QuillTable.d.ts.map +1 -1
- package/dist/cjs/components/QuillTable.js +4 -4
- package/dist/cjs/components/ReportBuilder/AddColumnPopover.d.ts +9 -3
- package/dist/cjs/components/ReportBuilder/AddColumnPopover.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/AddColumnPopover.js +8 -6
- package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts +13 -1
- package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/AddLimitPopover.js +4 -14
- package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts +21 -1
- package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/AddSortPopover.js +15 -17
- package/dist/cjs/components/ReportBuilder/bigDateMap.js +1 -1
- package/dist/cjs/components/ReportBuilder/convert.d.ts +2 -1
- package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/convert.js +40 -20
- package/dist/cjs/components/ReportBuilder/pivot.d.ts +2 -1
- package/dist/cjs/components/ReportBuilder/pivot.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/ui.d.ts +83 -18
- package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/ui.js +52 -100
- package/dist/cjs/components/ReportBuilder/util.d.ts +2 -1
- package/dist/cjs/components/ReportBuilder/util.d.ts.map +1 -1
- package/dist/cjs/components/ReportBuilder/util.js +16 -9
- package/dist/cjs/components/UiComponents.d.ts +86 -86
- package/dist/cjs/components/UiComponents.d.ts.map +1 -1
- package/dist/cjs/components/UiComponents.js +118 -103
- package/dist/cjs/hooks/index.d.ts +1 -0
- package/dist/cjs/hooks/index.d.ts.map +1 -1
- package/dist/cjs/hooks/index.js +3 -1
- package/dist/cjs/hooks/useTheme.d.ts +7 -0
- package/dist/cjs/hooks/useTheme.d.ts.map +1 -0
- package/dist/cjs/hooks/useTheme.js +12 -0
- package/dist/cjs/index.d.ts +10 -2
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotList.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotList.js +10 -10
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +29 -14
- package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/cjs/internals/ReportBuilder/PivotModal.js +73 -49
- package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
- package/dist/cjs/utils/dataFetcher.js +2 -0
- package/dist/esm/Chart.d.ts +117 -42
- package/dist/esm/Chart.d.ts.map +1 -1
- package/dist/esm/Chart.js +45 -19
- package/dist/esm/ChartBuilder.d.ts +194 -30
- package/dist/esm/ChartBuilder.d.ts.map +1 -1
- package/dist/esm/ChartBuilder.js +122 -62
- package/dist/esm/ChartEditor.d.ts +114 -18
- package/dist/esm/ChartEditor.d.ts.map +1 -1
- package/dist/esm/ChartEditor.js +51 -19
- package/dist/esm/Dashboard.d.ts +148 -91
- package/dist/esm/Dashboard.d.ts.map +1 -1
- package/dist/esm/Dashboard.js +49 -153
- package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts +21 -1
- package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
- package/dist/esm/DateRangePicker/QuillDateRangePicker.js +6 -3
- package/dist/esm/DateRangePicker/dateRangePickerUtils.js +1 -1
- package/dist/esm/QuillProvider.d.ts +105 -2
- package/dist/esm/QuillProvider.d.ts.map +1 -1
- package/dist/esm/QuillProvider.js +59 -0
- package/dist/esm/ReportBuilder.d.ts +188 -42
- package/dist/esm/ReportBuilder.d.ts.map +1 -1
- package/dist/esm/ReportBuilder.js +468 -396
- package/dist/esm/SQLEditor.d.ts +158 -23
- package/dist/esm/SQLEditor.d.ts.map +1 -1
- package/dist/esm/SQLEditor.js +35 -30
- package/dist/esm/Table.d.ts +119 -15
- package/dist/esm/Table.d.ts.map +1 -1
- package/dist/esm/Table.js +38 -7
- package/dist/esm/TableChart.d.ts.map +1 -1
- package/dist/esm/TableChart.js +0 -194
- package/dist/esm/{BarList.d.ts → components/Chart/BarList.d.ts} +1 -1
- package/dist/esm/components/Chart/BarList.d.ts.map +1 -0
- package/dist/esm/{BarList.js → components/Chart/BarList.js} +1 -1
- package/dist/esm/components/Chart/LineChart.d.ts +2 -3
- package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
- package/dist/esm/components/Chart/LineChart.js +3 -3
- package/dist/esm/components/Chart/PieChart.d.ts.map +1 -0
- package/dist/esm/{PieChart.js → components/Chart/PieChart.js} +1 -1
- package/dist/esm/components/Dashboard/ChartComponent.d.ts +2 -1
- package/dist/esm/components/Dashboard/ChartComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/ChartComponent.js +5 -6
- package/dist/esm/components/Dashboard/DashboardFilter.d.ts +22 -0
- package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -0
- package/dist/esm/components/Dashboard/DashboardFilter.js +71 -0
- package/dist/esm/components/Dashboard/DataLoader.d.ts +1 -1
- package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/DataLoader.js +1 -1
- package/dist/esm/components/Dashboard/MetricComponent.d.ts +2 -12
- package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/MetricComponent.js +39 -17
- package/dist/esm/components/Dashboard/TableComponent.d.ts +2 -1
- package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
- package/dist/esm/components/Dashboard/TableComponent.js +6 -9
- package/dist/esm/components/QuillSelect.d.ts +4 -1
- package/dist/esm/components/QuillSelect.d.ts.map +1 -1
- package/dist/esm/components/QuillSelect.js +14 -9
- package/dist/esm/components/QuillTable.d.ts +16 -2
- package/dist/esm/components/QuillTable.d.ts.map +1 -1
- package/dist/esm/components/QuillTable.js +4 -4
- package/dist/esm/components/ReportBuilder/AddColumnPopover.d.ts +9 -3
- package/dist/esm/components/ReportBuilder/AddColumnPopover.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/AddColumnPopover.js +8 -6
- package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts +13 -1
- package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/AddLimitPopover.js +4 -14
- package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts +21 -1
- package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/AddSortPopover.js +17 -19
- package/dist/esm/components/ReportBuilder/bigDateMap.js +1 -1
- package/dist/esm/components/ReportBuilder/convert.d.ts +2 -1
- package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/convert.js +33 -13
- package/dist/esm/components/ReportBuilder/pivot.d.ts +2 -1
- package/dist/esm/components/ReportBuilder/pivot.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/ui.d.ts +83 -18
- package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/ui.js +50 -98
- package/dist/esm/components/ReportBuilder/util.d.ts +2 -1
- package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -1
- package/dist/esm/components/ReportBuilder/util.js +14 -8
- package/dist/esm/components/UiComponents.d.ts +86 -86
- package/dist/esm/components/UiComponents.d.ts.map +1 -1
- package/dist/esm/components/UiComponents.js +111 -101
- package/dist/esm/hooks/index.d.ts +1 -0
- package/dist/esm/hooks/index.d.ts.map +1 -1
- package/dist/esm/hooks/index.js +1 -0
- package/dist/esm/hooks/useTheme.d.ts +7 -0
- package/dist/esm/hooks/useTheme.d.ts.map +1 -0
- package/dist/esm/hooks/useTheme.js +10 -0
- package/dist/esm/index.d.ts +10 -2
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotList.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotList.js +10 -10
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +29 -14
- package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
- package/dist/esm/internals/ReportBuilder/PivotModal.js +73 -49
- package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
- package/dist/esm/utils/dataFetcher.js +2 -0
- package/package.json +1 -1
- package/dist/cjs/BarList.d.ts.map +0 -1
- package/dist/cjs/PieChart.d.ts.map +0 -1
- package/dist/esm/BarList.d.ts.map +0 -1
- package/dist/esm/PieChart.d.ts.map +0 -1
- /package/dist/cjs/{PieChart.d.ts → components/Chart/PieChart.d.ts} +0 -0
- /package/dist/esm/{PieChart.d.ts → components/Chart/PieChart.d.ts} +0 -0
|
@@ -180,8 +180,11 @@ function convertGroupBy(ast, prevPivot = null, schemaTables) {
|
|
|
180
180
|
else if (column.expr?.args?.expr) {
|
|
181
181
|
columnName = column.expr?.args?.expr?.value;
|
|
182
182
|
}
|
|
183
|
-
if (column.expr.type === 'aggr_func' && !isIdColumn(columnName)) {
|
|
183
|
+
if (column.expr.type === 'aggr_func' && !(0, util_1.isIdColumn)(columnName)) {
|
|
184
184
|
pivot.aggregationType = column.expr.name.toLowerCase();
|
|
185
|
+
if (pivot.aggregationType === 'avg') {
|
|
186
|
+
pivot.aggregationType = 'average';
|
|
187
|
+
}
|
|
185
188
|
pivot.valueField =
|
|
186
189
|
column.expr.args?.expr?.value || column.expr.args?.expr?.column;
|
|
187
190
|
if (column.expr.args.expr.type === 'column_ref') {
|
|
@@ -197,15 +200,23 @@ function convertGroupBy(ast, prevPivot = null, schemaTables) {
|
|
|
197
200
|
}
|
|
198
201
|
}
|
|
199
202
|
if (columnName === '*') {
|
|
200
|
-
//
|
|
203
|
+
// Use the first numeric column found, if none found, use the first column
|
|
204
|
+
let columnForValueField = columns.find((c) => {
|
|
205
|
+
return (0, ast_1.isNumericColumnType)(c.fieldType) && !(0, util_1.isIdColumn)(c.field);
|
|
206
|
+
});
|
|
207
|
+
if (!columnForValueField) {
|
|
208
|
+
columnForValueField = columns[0];
|
|
209
|
+
}
|
|
201
210
|
for (let i = 0; i < columns.length; i++) {
|
|
202
|
-
if (!isIdColumn(columns[i]?.field) &&
|
|
211
|
+
if (!(0, util_1.isIdColumn)(columns[i]?.field) &&
|
|
203
212
|
(0, ast_1.isNumericColumnType)(columns[i]?.fieldType)) {
|
|
204
|
-
|
|
205
|
-
columnName = columns[i].field;
|
|
213
|
+
columnForValueField = columns[i];
|
|
206
214
|
break;
|
|
207
215
|
}
|
|
208
216
|
}
|
|
217
|
+
pivot.valueField = columnForValueField.field;
|
|
218
|
+
pivot.valueFieldType = 'number';
|
|
219
|
+
columnName = columnForValueField.field;
|
|
209
220
|
}
|
|
210
221
|
newColumns.push({
|
|
211
222
|
type: 'expr',
|
|
@@ -234,9 +245,12 @@ function convertGroupBy(ast, prevPivot = null, schemaTables) {
|
|
|
234
245
|
// The result of the CASE is the column to use
|
|
235
246
|
const columnNode = column.expr?.args?.expr?.args[0]?.result;
|
|
236
247
|
const columnName = columnNode?.value ?? columnNode?.column;
|
|
237
|
-
if (!isIdColumn(columnName)) {
|
|
248
|
+
if (!(0, util_1.isIdColumn)(columnName)) {
|
|
238
249
|
pivot.valueField = columnName;
|
|
239
250
|
pivot.aggregationType = column?.expr?.name?.toLowerCase();
|
|
251
|
+
if (pivot.aggregationType === 'avg') {
|
|
252
|
+
pivot.aggregationType = 'average';
|
|
253
|
+
}
|
|
240
254
|
}
|
|
241
255
|
const findByName = (x) => [x.expr?.value, x.expr?.column].includes(columnName);
|
|
242
256
|
if (!newColumns.find(findByName)) {
|
|
@@ -254,7 +268,7 @@ function convertGroupBy(ast, prevPivot = null, schemaTables) {
|
|
|
254
268
|
// the CASE and we'll use that as the columnField in our pivot.
|
|
255
269
|
const condNode = column.expr?.args?.expr?.args[0]?.cond;
|
|
256
270
|
const condColumnName = condNode.left?.column ?? condNode.left?.value;
|
|
257
|
-
if (!isIdColumn(condColumnName)) {
|
|
271
|
+
if (!(0, util_1.isIdColumn)(condColumnName)) {
|
|
258
272
|
pivot.columnField = condColumnName;
|
|
259
273
|
}
|
|
260
274
|
const findByColName = (x) => [x.expr?.value, x.expr?.column].includes(condColumnName);
|
|
@@ -283,19 +297,27 @@ function convertGroupBy(ast, prevPivot = null, schemaTables) {
|
|
|
283
297
|
const columnName = columnNode?.value || columnNode?.column;
|
|
284
298
|
// if count(*), make the value field an actual column
|
|
285
299
|
if (columnName === '*') {
|
|
286
|
-
|
|
287
|
-
return (0, ast_1.isNumericColumnType)(c.fieldType) && !isIdColumn(c.field);
|
|
300
|
+
let columnForValueField = columns.find((c) => {
|
|
301
|
+
return (0, ast_1.isNumericColumnType)(c.fieldType) && !(0, util_1.isIdColumn)(c.field);
|
|
288
302
|
});
|
|
289
|
-
|
|
303
|
+
// if there aren't any numeric columns use the first column
|
|
304
|
+
if (!column) {
|
|
305
|
+
columnForValueField = columns[0];
|
|
306
|
+
}
|
|
307
|
+
pivot.valueField = columnForValueField?.field;
|
|
308
|
+
pivot.valueFieldType = 'number';
|
|
290
309
|
pivot.aggregationType = column?.expr?.name.toLowerCase();
|
|
291
|
-
|
|
310
|
+
if (pivot.aggregationType === 'avg') {
|
|
311
|
+
pivot.aggregationType = 'average';
|
|
312
|
+
}
|
|
313
|
+
const findByName = (x) => [x.expr?.value, x.expr?.column].includes(columnForValueField.field);
|
|
292
314
|
if (!newColumns.find(findByName)) {
|
|
293
315
|
newColumns.push({
|
|
294
316
|
type: 'expr',
|
|
295
317
|
expr: {
|
|
296
318
|
type: 'column_ref',
|
|
297
319
|
table: null,
|
|
298
|
-
column:
|
|
320
|
+
column: columnForValueField?.field || '',
|
|
299
321
|
},
|
|
300
322
|
as: null,
|
|
301
323
|
});
|
|
@@ -304,9 +326,12 @@ function convertGroupBy(ast, prevPivot = null, schemaTables) {
|
|
|
304
326
|
else {
|
|
305
327
|
// ONLY SET VALUE FIELD IF THE FIELD TYPE IS A NUMBER
|
|
306
328
|
if ((0, ast_1.isNumericColumnType)(field?.fieldType) &&
|
|
307
|
-
!isIdColumn(columnName)) {
|
|
329
|
+
!(0, util_1.isIdColumn)(columnName)) {
|
|
308
330
|
pivot.valueField = columnName;
|
|
309
331
|
pivot.aggregationType = column?.expr?.name.toLowerCase();
|
|
332
|
+
if (pivot.aggregationType === 'avg') {
|
|
333
|
+
pivot.aggregationType = 'average';
|
|
334
|
+
}
|
|
310
335
|
}
|
|
311
336
|
const findByName = (x) => [x.expr?.value, x.expr?.column].includes(columnName);
|
|
312
337
|
if (!newColumns.find(findByName)) {
|
|
@@ -459,7 +484,7 @@ function convertGroupBy(ast, prevPivot = null, schemaTables) {
|
|
|
459
484
|
for (let j = 0; j < ast.groupby.length; j++) {
|
|
460
485
|
const group = ast.groupby[j];
|
|
461
486
|
let groupValue = (0, ast_1.extractColumnish)(group);
|
|
462
|
-
if (!groupValue || isIdColumn(groupValue)) {
|
|
487
|
+
if (!groupValue || (0, util_1.isIdColumn)(groupValue)) {
|
|
463
488
|
continue;
|
|
464
489
|
}
|
|
465
490
|
// check if this value is an alias, if so use concrete value
|
|
@@ -501,7 +526,7 @@ function convertGroupBy(ast, prevPivot = null, schemaTables) {
|
|
|
501
526
|
newAst.columns[i].expr?.value ||
|
|
502
527
|
undefined;
|
|
503
528
|
if (columnName &&
|
|
504
|
-
!isIdColumn(columnName) &&
|
|
529
|
+
!(0, util_1.isIdColumn)(columnName) &&
|
|
505
530
|
(0, ast_1.isNumericColumnType)(columns.find((c) => c.field === columnName)?.fieldType)) {
|
|
506
531
|
pivot.valueField = columnName;
|
|
507
532
|
pivot.aggregationType = 'sum';
|
|
@@ -782,8 +807,3 @@ function convertRemoveSimpleParentheses(ast) {
|
|
|
782
807
|
return { ...ast, where: node };
|
|
783
808
|
}
|
|
784
809
|
exports.convertRemoveSimpleParentheses = convertRemoveSimpleParentheses;
|
|
785
|
-
function isIdColumn(columnName) {
|
|
786
|
-
return (columnName &&
|
|
787
|
-
(columnName.toLowerCase() === 'id' ||
|
|
788
|
-
columnName.toLowerCase().endsWith('_id')));
|
|
789
|
-
}
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
* Represents the metadata of a pivot table.
|
|
3
3
|
*/
|
|
4
4
|
export type Pivot = {
|
|
5
|
-
aggregationType: 'sum' | 'average' | 'min' | 'max' | 'count';
|
|
5
|
+
aggregationType: 'sum' | 'average' | 'min' | 'max' | 'count' | 'avg';
|
|
6
6
|
valueField: string;
|
|
7
|
+
valueFieldType?: string;
|
|
7
8
|
rowField?: string;
|
|
8
9
|
rowFieldType?: string;
|
|
9
10
|
columnField?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pivot.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/pivot.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,eAAe,EAAE,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"pivot.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/pivot.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,eAAe,EAAE,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,CAAC;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,EAAE,KAAK,GAAG,MAAM,CAAC;CAC/B,GAAG,IAAI,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { SidebarComponentProps, ContainerComponentProps } from '../UiComponents';
|
|
2
3
|
/**
|
|
3
4
|
* This file is a collection of basic UI components that conform to the shape
|
|
4
5
|
* expected by the Report Builder. Where possible, we use our existing
|
|
@@ -9,26 +10,90 @@ export declare const QuillButton: ({ children, ...props }: any) => import("react
|
|
|
9
10
|
export declare const QuillSecondaryButton: ({ children, ...props }: any) => import("react/jsx-runtime").JSX.Element;
|
|
10
11
|
export declare const QuillReportBuilderTable: ({ rows, columns, error, ...props }: any) => import("react/jsx-runtime").JSX.Element;
|
|
11
12
|
export declare const QuillTag: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
|
|
12
|
-
export
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
export declare const
|
|
16
|
-
export declare const
|
|
17
|
-
export declare
|
|
18
|
-
export declare const QuillPopover: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
|
|
13
|
+
export interface SidebarHeadingComponentProps {
|
|
14
|
+
label: string;
|
|
15
|
+
}
|
|
16
|
+
export declare const QuillSidebarHeading: ({ label, }: SidebarHeadingComponentProps) => import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export declare const QuillSidebar: ({ children }: SidebarComponentProps) => import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export declare const CustomContainer: ({ children }: ContainerComponentProps) => import("react/jsx-runtime").JSX.Element;
|
|
19
19
|
export declare const QuillHandleButton: () => import("react/jsx-runtime").JSX.Element;
|
|
20
|
-
export
|
|
21
|
-
|
|
20
|
+
export interface SelectColumnComponentProps {
|
|
21
|
+
label: string;
|
|
22
|
+
isSelected: boolean;
|
|
23
|
+
setSelected: () => void;
|
|
24
|
+
DragHandle: ({ dragIcon }: {
|
|
25
|
+
dragIcon: () => JSX.Element;
|
|
26
|
+
}) => JSX.Element;
|
|
27
|
+
}
|
|
28
|
+
export declare const QuillSelectColumn: ({ label, isSelected, setSelected, DragHandle, }: SelectColumnComponentProps) => import("react/jsx-runtime").JSX.Element;
|
|
29
|
+
/**
|
|
30
|
+
* Props for a draggable card with a grab-handle and a column name.
|
|
31
|
+
*/
|
|
32
|
+
export interface DraggableColumnComponentProps {
|
|
33
|
+
label: string;
|
|
34
|
+
onDelete: () => void;
|
|
35
|
+
DragHandle: ({ dragIcon }: {
|
|
36
|
+
dragIcon: () => JSX.Element;
|
|
37
|
+
}) => JSX.Element;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* A draggable card with a grab-handle and a column name
|
|
41
|
+
*/
|
|
42
|
+
export declare const QuillDraggableColumn: ({ label, onDelete, DragHandle, }: DraggableColumnComponentProps) => import("react/jsx-runtime").JSX.Element;
|
|
22
43
|
export declare const QuillButtonLoadingState: () => import("react/jsx-runtime").JSX.Element;
|
|
23
44
|
export declare const QuillTableLoadingState: () => import("react/jsx-runtime").JSX.Element;
|
|
24
|
-
export declare const DEFAULT_TAB_OPTIONS: {
|
|
25
|
-
label: string;
|
|
26
|
-
value: string;
|
|
27
|
-
}[];
|
|
28
|
-
export declare const QuillTabs: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
|
|
29
45
|
export declare const EditPopover: ({ onSave, onDelete, Button, renderNode, activeEditItem, }: any) => import("react/jsx-runtime").JSX.Element;
|
|
30
|
-
export
|
|
31
|
-
|
|
32
|
-
|
|
46
|
+
export interface FilterPopoverComponentProps {
|
|
47
|
+
isOpen: boolean;
|
|
48
|
+
setIsOpen: (isOpen: boolean) => void;
|
|
49
|
+
popoverTitle?: string;
|
|
50
|
+
popoverChildren: ReactNode;
|
|
51
|
+
filterLabel: string;
|
|
52
|
+
onClickDelete: (e: React.MouseEvent<HTMLElement>) => void;
|
|
53
|
+
}
|
|
54
|
+
export declare const QuillFilterPopover: ({ filterLabel, onClickDelete, popoverTitle, popoverChildren, isOpen, setIsOpen, }: FilterPopoverComponentProps) => import("react/jsx-runtime").JSX.Element;
|
|
55
|
+
export interface SortPopoverComponentProps {
|
|
56
|
+
isOpen: boolean;
|
|
57
|
+
setIsOpen: (isOpen: boolean) => void;
|
|
58
|
+
popoverTitle?: string;
|
|
59
|
+
popoverChildren: ReactNode;
|
|
60
|
+
sortLabel: string;
|
|
61
|
+
onClickDelete: (e: React.MouseEvent<HTMLElement>) => void;
|
|
62
|
+
}
|
|
63
|
+
export declare const QuillSortPopover: ({ sortLabel, onClickDelete, popoverTitle, popoverChildren, isOpen, setIsOpen, }: SortPopoverComponentProps) => import("react/jsx-runtime").JSX.Element;
|
|
64
|
+
export interface LimitPopoverComponentProps {
|
|
65
|
+
isOpen: boolean;
|
|
66
|
+
setIsOpen: (isOpen: boolean) => void;
|
|
67
|
+
popoverTitle?: string;
|
|
68
|
+
popoverChildren: ReactNode;
|
|
69
|
+
limitLabel: string;
|
|
70
|
+
onClickDelete: (e: React.MouseEvent<HTMLElement>) => void;
|
|
71
|
+
}
|
|
72
|
+
export declare const QuillLimitPopover: ({ limitLabel, onClickDelete, popoverTitle, popoverChildren, isOpen, setIsOpen, }: LimitPopoverComponentProps) => import("react/jsx-runtime").JSX.Element;
|
|
73
|
+
export interface TagWrapperProps {
|
|
74
|
+
isCard: boolean;
|
|
75
|
+
isRow: boolean;
|
|
76
|
+
editPopoverKey: string;
|
|
77
|
+
keyPrefix: string;
|
|
78
|
+
formData: any;
|
|
79
|
+
activeEditItem: any;
|
|
80
|
+
setEditPopoverKey: any;
|
|
81
|
+
setActiveEditItem: any;
|
|
82
|
+
setActivePath: any;
|
|
83
|
+
setOpenPopover: any;
|
|
84
|
+
setIsPending: any;
|
|
85
|
+
clearCheckboxes: any;
|
|
86
|
+
fetchSqlQuery: any;
|
|
87
|
+
handleDelete: any;
|
|
88
|
+
setCheckboxes: any;
|
|
89
|
+
handleReplaceSubtree: any;
|
|
90
|
+
FilterPopover: (props: FilterPopoverComponentProps) => JSX.Element;
|
|
91
|
+
getByKey: any;
|
|
92
|
+
EditPopover: any;
|
|
93
|
+
Button: any;
|
|
94
|
+
renderNode: any;
|
|
95
|
+
children: any;
|
|
96
|
+
}
|
|
97
|
+
export declare const TagWrapper: ({ isCard, isRow, editPopoverKey, keyPrefix, formData, activeEditItem, setEditPopoverKey, setActiveEditItem, setActivePath, setOpenPopover, setIsPending, clearCheckboxes, fetchSqlQuery, handleDelete, setCheckboxes, handleReplaceSubtree, FilterPopover, getByKey, EditPopover, Button, renderNode, children, }: TagWrapperProps) => import("react/jsx-runtime").JSX.Element;
|
|
33
98
|
export declare const AddFilterPopover: ({ onSave, Button, renderNode, activeEditItem, }: any) => import("react/jsx-runtime").JSX.Element;
|
|
34
99
|
//# sourceMappingURL=ui.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/ui.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/ui.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.AddFilterPopover = exports.TagWrapper = exports.
|
|
6
|
+
exports.AddFilterPopover = exports.TagWrapper = exports.QuillLimitPopover = exports.QuillSortPopover = exports.QuillFilterPopover = exports.EditPopover = exports.QuillTableLoadingState = exports.QuillButtonLoadingState = exports.QuillDraggableColumn = exports.QuillSelectColumn = exports.QuillHandleButton = exports.CustomContainer = exports.QuillSidebar = exports.QuillSidebarHeading = exports.QuillTag = exports.QuillReportBuilderTable = exports.QuillSecondaryButton = exports.QuillButton = void 0;
|
|
7
7
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
8
|
const react_1 = require("react");
|
|
9
9
|
const UiComponents_1 = require("../UiComponents");
|
|
@@ -60,6 +60,7 @@ const QuillSecondaryButton = ({ children, ...props }) => {
|
|
|
60
60
|
}, children: children }));
|
|
61
61
|
};
|
|
62
62
|
exports.QuillSecondaryButton = QuillSecondaryButton;
|
|
63
|
+
// TODO: remove this, I think it is unused.
|
|
63
64
|
const QuillReportBuilderTable = ({ rows, columns, error, ...props }) => {
|
|
64
65
|
const reformattedColumns = columns.map((c) => ({ label: c, field: c }));
|
|
65
66
|
return ((0, jsx_runtime_1.jsx)("div", { style: { height: '100%', overflow: 'auto' }, children: (0, jsx_runtime_1.jsx)(QuillTable_1.default, { rows: rows, columns: reformattedColumns, rowsPerPage: 10, showDownloadCSVButton: rows?.length > 0, downloadCSV: () => (0, csv_1.downloadCSV)({ rows, fields: reformattedColumns, name: 'my_report' }), emptyStateLabel: error || 'No results', ...props }) }));
|
|
@@ -105,22 +106,20 @@ exports.QuillTag = (0, react_1.forwardRef)(({ label, onClick, children, onClickD
|
|
|
105
106
|
}, children: (0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 20 20", fill: theme?.secondaryButtonColor || 'currentColor', style: { width: 16, height: 16 }, children: (0, jsx_runtime_1.jsx)("path", { d: "M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z" }) }) }) }))] }));
|
|
106
107
|
});
|
|
107
108
|
// A heading element in the sidebar (eg. "Filters")
|
|
108
|
-
const QuillSidebarHeading = ({ label }) => (
|
|
109
|
+
const QuillSidebarHeading = ({ label, }) => (0, jsx_runtime_1.jsx)(UiComponents_1.MemoizedHeader, { label: label });
|
|
109
110
|
exports.QuillSidebarHeading = QuillSidebarHeading;
|
|
110
|
-
// A sub-heading element in the sidebar (eg. "Filters")
|
|
111
|
-
const QuillSidebarSubHeading = ({ label }) => ((0, jsx_runtime_1.jsx)(UiComponents_1.MemoizedLabel, { children: label }));
|
|
112
|
-
exports.QuillSidebarSubHeading = QuillSidebarSubHeading;
|
|
113
111
|
// The gray thing on the left.
|
|
114
|
-
|
|
112
|
+
const QuillSidebar = ({ children }) => ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
115
113
|
overflowX: 'visible',
|
|
116
114
|
padding: '12px',
|
|
117
115
|
width: '25%',
|
|
118
116
|
height: '100%',
|
|
119
117
|
maxWidth: '300px',
|
|
120
118
|
boxSizing: 'border-box',
|
|
121
|
-
},
|
|
119
|
+
}, children: children }));
|
|
120
|
+
exports.QuillSidebar = QuillSidebar;
|
|
122
121
|
// A big wrapper around the main content (ie. Input, Button, and Table)
|
|
123
|
-
|
|
122
|
+
const CustomContainer = ({ children }) => ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
124
123
|
position: 'sticky',
|
|
125
124
|
top: 0,
|
|
126
125
|
display: 'flex',
|
|
@@ -133,61 +132,8 @@ exports.CustomContainer = (0, react_1.forwardRef)(({ children, ...props }, forwa
|
|
|
133
132
|
width: '75%',
|
|
134
133
|
height: '100%',
|
|
135
134
|
boxSizing: 'border-box',
|
|
136
|
-
},
|
|
137
|
-
|
|
138
|
-
const handleOnChange = (value) => {
|
|
139
|
-
if (!onChange)
|
|
140
|
-
return;
|
|
141
|
-
const option = props.options.find((opt) => opt.value === value);
|
|
142
|
-
if (option) {
|
|
143
|
-
onChange(option.value);
|
|
144
|
-
}
|
|
145
|
-
};
|
|
146
|
-
return (0, jsx_runtime_1.jsx)(UiComponents_1.MemoizedSelect, { ...props, onChange: handleOnChange });
|
|
147
|
-
};
|
|
148
|
-
exports.QuillSelect = QuillSelect;
|
|
149
|
-
function MemoizedPopover({ onClose, children, style = {}, trigger, isOpen, }) {
|
|
150
|
-
const modalRef = (0, react_1.useRef)(null);
|
|
151
|
-
const [theme] = (0, react_1.useContext)(Context_1.ThemeContext);
|
|
152
|
-
(0, react_1.useEffect)(() => {
|
|
153
|
-
const listener = (event) => {
|
|
154
|
-
if (modalRef?.current && !modalRef?.current?.contains(event.target)) {
|
|
155
|
-
onClose(event);
|
|
156
|
-
}
|
|
157
|
-
};
|
|
158
|
-
document.addEventListener('mousedown', listener);
|
|
159
|
-
return () => {
|
|
160
|
-
document.removeEventListener('mousedown', listener);
|
|
161
|
-
};
|
|
162
|
-
}, [modalRef, onClose]);
|
|
163
|
-
return ((0, jsx_runtime_1.jsxs)("div", { children: [trigger, isOpen && ((0, jsx_runtime_1.jsx)("div", { id: "quill-popover-modal", ref: modalRef, style: { position: 'relative' }, children: (0, jsx_runtime_1.jsx)("div", { style: {
|
|
164
|
-
background: theme?.backgroundColor || 'white',
|
|
165
|
-
position: 'absolute',
|
|
166
|
-
boxShadow: '0px 1px 12px 0px rgba(56, 65, 81, 0.1)',
|
|
167
|
-
border: theme
|
|
168
|
-
? `${theme.borderWidth || 1}px solid ${theme.borderColor || '#e7e7e7'}`
|
|
169
|
-
: '1px solid #e7e7e7',
|
|
170
|
-
boxSizing: 'content-box',
|
|
171
|
-
zIndex: 999,
|
|
172
|
-
top: 12,
|
|
173
|
-
borderRadius: 6,
|
|
174
|
-
padding: 20,
|
|
175
|
-
...style,
|
|
176
|
-
}, children: children }) }))] }));
|
|
177
|
-
}
|
|
178
|
-
exports.MemoizedPopover = MemoizedPopover;
|
|
179
|
-
exports.QuillPopover = (0, react_1.forwardRef)(({ children, trigger, isOpen, onClose = () => { }, title = undefined }, ref) => {
|
|
180
|
-
const [theme] = (0, react_1.useContext)(Context_1.ThemeContext);
|
|
181
|
-
return ((0, jsx_runtime_1.jsxs)(MemoizedPopover, { isOpen: isOpen, onClose: onClose, trigger: trigger, parentRef: ref, ref: ref, children: [title && ((0, jsx_runtime_1.jsx)("h1", { style: {
|
|
182
|
-
fontWeight: '600',
|
|
183
|
-
fontSize: 18,
|
|
184
|
-
margin: 0,
|
|
185
|
-
textAlign: 'left',
|
|
186
|
-
marginBottom: 5,
|
|
187
|
-
color: theme?.primaryTextColor,
|
|
188
|
-
fontFamily: theme?.fontFamily,
|
|
189
|
-
}, children: title })), children] }));
|
|
190
|
-
});
|
|
135
|
+
}, children: children }));
|
|
136
|
+
exports.CustomContainer = CustomContainer;
|
|
191
137
|
// The six-dot grab-handle icon.
|
|
192
138
|
const QuillHandleButton = () => {
|
|
193
139
|
const [theme] = (0, react_1.useContext)(Context_1.ThemeContext);
|
|
@@ -233,7 +179,7 @@ const QuillHandleButton = () => {
|
|
|
233
179
|
} })] })] }));
|
|
234
180
|
};
|
|
235
181
|
exports.QuillHandleButton = QuillHandleButton;
|
|
236
|
-
const QuillSelectColumn = ({ label,
|
|
182
|
+
const QuillSelectColumn = ({ label, isSelected, setSelected, DragHandle, }) => {
|
|
237
183
|
const [theme] = (0, react_1.useContext)(Context_1.ThemeContext);
|
|
238
184
|
return ((0, jsx_runtime_1.jsxs)("div", { title: label, style: {
|
|
239
185
|
boxShadow: '0px 1px 4px #e2e8f005',
|
|
@@ -245,13 +191,13 @@ const QuillSelectColumn = ({ label, selected, setSelected, children, }) => {
|
|
|
245
191
|
display: 'flex',
|
|
246
192
|
alignItems: 'center',
|
|
247
193
|
backgroundColor: theme?.backgroundColor || 'white',
|
|
248
|
-
}, children: [(0, jsx_runtime_1.jsx)(
|
|
194
|
+
}, children: [(0, jsx_runtime_1.jsx)(DragHandle, { dragIcon: exports.QuillHandleButton }), (0, jsx_runtime_1.jsxs)("label", { style: {
|
|
249
195
|
display: 'flex',
|
|
250
196
|
gap: 2,
|
|
251
197
|
whiteSpace: 'nowrap',
|
|
252
198
|
textOverflow: 'ellipsis',
|
|
253
199
|
overflow: 'hidden',
|
|
254
|
-
}, children: [(0, jsx_runtime_1.jsx)(UiComponents_1.MemoizedCheckbox, {
|
|
200
|
+
}, children: [(0, jsx_runtime_1.jsx)(UiComponents_1.MemoizedCheckbox, { isChecked: isSelected, onChange: () => setSelected() }), (0, jsx_runtime_1.jsx)("span", { style: {
|
|
255
201
|
marginLeft: 6,
|
|
256
202
|
display: 'block',
|
|
257
203
|
whiteSpace: 'nowrap',
|
|
@@ -262,8 +208,10 @@ const QuillSelectColumn = ({ label, selected, setSelected, children, }) => {
|
|
|
262
208
|
}, children: (0, textProcessing_1.snakeCaseToTitleCase)(label) })] })] }));
|
|
263
209
|
};
|
|
264
210
|
exports.QuillSelectColumn = QuillSelectColumn;
|
|
265
|
-
|
|
266
|
-
|
|
211
|
+
/**
|
|
212
|
+
* A draggable card with a grab-handle and a column name
|
|
213
|
+
*/
|
|
214
|
+
const QuillDraggableColumn = ({ label, onDelete, DragHandle, }) => {
|
|
267
215
|
const [theme] = (0, react_1.useContext)(Context_1.ThemeContext);
|
|
268
216
|
return ((0, jsx_runtime_1.jsxs)("div", { style: {
|
|
269
217
|
boxShadow: '0px 1px 4px #e2e8f005',
|
|
@@ -272,13 +220,14 @@ const QuillDraggableColumn = ({ label, children, onDelete }) => {
|
|
|
272
220
|
display: 'flex',
|
|
273
221
|
alignItems: 'center',
|
|
274
222
|
backgroundColor: theme?.backgroundColor || 'white',
|
|
275
|
-
}, children: [(0, jsx_runtime_1.jsx)(
|
|
223
|
+
}, children: [(0, jsx_runtime_1.jsx)(DragHandle, { dragIcon: exports.QuillHandleButton }), (0, jsx_runtime_1.jsx)("div", { style: {
|
|
276
224
|
marginLeft: 2,
|
|
277
225
|
marginRight: 'auto',
|
|
278
226
|
fontSize: 14,
|
|
279
227
|
display: 'block',
|
|
280
228
|
whiteSpace: 'nowrap',
|
|
281
229
|
textOverflow: 'ellipsis',
|
|
230
|
+
overflow: 'hidden',
|
|
282
231
|
fontFamily: theme?.fontFamily,
|
|
283
232
|
}, children: label }), (0, jsx_runtime_1.jsx)("button", { onClick: onDelete, style: {
|
|
284
233
|
paddingRight: 4,
|
|
@@ -299,11 +248,6 @@ const QuillTableLoadingState = () => {
|
|
|
299
248
|
return ((0, jsx_runtime_1.jsx)("div", { style: { display: 'flex', flexDirection: 'column', margin: 'auto' }, children: (0, jsx_runtime_1.jsx)(UiComponents_1.LoadingSpinner, {}) }));
|
|
300
249
|
};
|
|
301
250
|
exports.QuillTableLoadingState = QuillTableLoadingState;
|
|
302
|
-
exports.DEFAULT_TAB_OPTIONS = [
|
|
303
|
-
{ label: 'or', value: 'OR' },
|
|
304
|
-
{ label: 'and', value: 'AND' },
|
|
305
|
-
];
|
|
306
|
-
exports.QuillTabs = (0, react_1.forwardRef)(({ options = exports.DEFAULT_TAB_OPTIONS, ...props }, ref) => ((0, jsx_runtime_1.jsx)(UiComponents_1.MemoizedTabs, { ref: ref, options: options, ...props })));
|
|
307
251
|
const EditPopover = ({ onSave, onDelete, Button, renderNode, activeEditItem, }) => {
|
|
308
252
|
const handleOnClick = () => {
|
|
309
253
|
if (!(0, util_1.allNumericNodesValidInTree)(activeEditItem)) {
|
|
@@ -325,41 +269,48 @@ const EditPopover = ({ onSave, onDelete, Button, renderNode, activeEditItem, })
|
|
|
325
269
|
}, children: [(0, jsx_runtime_1.jsx)(UiComponents_1.MemoizedSecondaryButton, { onClick: onDelete, label: "Delete" }), (0, jsx_runtime_1.jsx)(Button, { onClick: handleOnClick, label: "Save" })] })] }));
|
|
326
270
|
};
|
|
327
271
|
exports.EditPopover = EditPopover;
|
|
328
|
-
const QuillFilterPopover = ({ filterLabel,
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
}, children: popoverChildren }));
|
|
272
|
+
const QuillFilterPopover = ({ filterLabel, onClickDelete, popoverTitle, popoverChildren, isOpen, setIsOpen, }) => {
|
|
273
|
+
const handleSetIsOpen = (isOpen) => {
|
|
274
|
+
setIsOpen(isOpen);
|
|
275
|
+
};
|
|
276
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(exports.QuillTag, { label: filterLabel, onClickDelete: onClickDelete, onClick: () => setIsOpen(!isOpen) }), (0, jsx_runtime_1.jsx)(UiComponents_1.MemoizedPopover, { isOpen: isOpen, setIsOpen: handleSetIsOpen, popoverTitle: popoverTitle, popoverChildren: popoverChildren })] }));
|
|
334
277
|
};
|
|
335
278
|
exports.QuillFilterPopover = QuillFilterPopover;
|
|
336
|
-
const QuillSortPopover = ({
|
|
337
|
-
return ((0, jsx_runtime_1.
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
setIsOpen(false);
|
|
341
|
-
}, children: popoverChildren }));
|
|
279
|
+
const QuillSortPopover = ({ sortLabel, onClickDelete, popoverTitle, popoverChildren, isOpen, setIsOpen, }) => {
|
|
280
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(exports.QuillTag, { label: sortLabel, onClickDelete: onClickDelete, onClick: () => {
|
|
281
|
+
setIsOpen(!isOpen);
|
|
282
|
+
} }), (0, jsx_runtime_1.jsx)(UiComponents_1.MemoizedPopover, { isOpen: isOpen, popoverTitle: popoverTitle, setIsOpen: setIsOpen, popoverChildren: popoverChildren })] }));
|
|
342
283
|
};
|
|
343
284
|
exports.QuillSortPopover = QuillSortPopover;
|
|
285
|
+
const QuillLimitPopover = ({ limitLabel, onClickDelete, popoverTitle, popoverChildren, isOpen, setIsOpen, }) => {
|
|
286
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(exports.QuillTag, { label: limitLabel, onClickDelete: onClickDelete, onClick: () => {
|
|
287
|
+
setIsOpen(!isOpen);
|
|
288
|
+
} }), (0, jsx_runtime_1.jsx)(UiComponents_1.MemoizedPopover, { isOpen: isOpen, popoverTitle: popoverTitle, setIsOpen: setIsOpen, popoverChildren: popoverChildren })] }));
|
|
289
|
+
};
|
|
290
|
+
exports.QuillLimitPopover = QuillLimitPopover;
|
|
344
291
|
const TagWrapper = ({ isCard, isRow, editPopoverKey, keyPrefix, formData, activeEditItem, setEditPopoverKey, setActiveEditItem, setActivePath, setOpenPopover, setIsPending, clearCheckboxes, fetchSqlQuery, handleDelete, setCheckboxes, handleReplaceSubtree, FilterPopover, getByKey, EditPopover, Button, renderNode, children, }) => {
|
|
345
292
|
const [isOpen, setIsOpen] = (0, react_1.useState)(false);
|
|
293
|
+
const onOpen = () => {
|
|
294
|
+
setActiveEditItem(getByKey(formData, keyPrefix));
|
|
295
|
+
setActivePath(keyPrefix);
|
|
296
|
+
setIsPending(true);
|
|
297
|
+
setEditPopoverKey(keyPrefix);
|
|
298
|
+
setCheckboxes(getByKey(formData, keyPrefix));
|
|
299
|
+
};
|
|
300
|
+
const onClose = () => {
|
|
301
|
+
setEditPopoverKey(null);
|
|
302
|
+
setIsPending(false);
|
|
303
|
+
setActiveEditItem(null);
|
|
304
|
+
setActivePath(null);
|
|
305
|
+
setOpenPopover(null);
|
|
306
|
+
clearCheckboxes();
|
|
307
|
+
};
|
|
346
308
|
(0, react_1.useEffect)(() => {
|
|
347
309
|
if (isOpen) {
|
|
348
|
-
|
|
349
|
-
setActiveEditItem(getByKey(formData, keyPrefix));
|
|
350
|
-
setActivePath(keyPrefix);
|
|
351
|
-
setIsPending(true);
|
|
352
|
-
setEditPopoverKey(keyPrefix);
|
|
353
|
-
setCheckboxes(getByKey(formData, keyPrefix));
|
|
310
|
+
onOpen();
|
|
354
311
|
}
|
|
355
312
|
else {
|
|
356
|
-
|
|
357
|
-
setEditPopoverKey(null);
|
|
358
|
-
setIsPending(false);
|
|
359
|
-
setActiveEditItem(null);
|
|
360
|
-
setActivePath(null);
|
|
361
|
-
setOpenPopover(null);
|
|
362
|
-
clearCheckboxes();
|
|
313
|
+
onClose();
|
|
363
314
|
}
|
|
364
315
|
}, [isOpen]);
|
|
365
316
|
if (isCard && isRow) {
|
|
@@ -371,9 +322,10 @@ const TagWrapper = ({ isCard, isRow, editPopoverKey, keyPrefix, formData, active
|
|
|
371
322
|
setActivePath(null);
|
|
372
323
|
setOpenPopover(null);
|
|
373
324
|
setEditPopoverKey(null);
|
|
325
|
+
fetchSqlQuery();
|
|
374
326
|
clearCheckboxes();
|
|
375
327
|
};
|
|
376
|
-
return ((0, jsx_runtime_1.jsx)("div", { style: { width: '100%' }, children: (0, jsx_runtime_1.jsx)(FilterPopover, { isOpen: editPopoverKey === keyPrefix, popoverTitle: "Edit Filter", filterLabel: children,
|
|
328
|
+
return ((0, jsx_runtime_1.jsx)("div", { style: { width: '100%' }, children: (0, jsx_runtime_1.jsx)(FilterPopover, { isOpen: editPopoverKey === keyPrefix, popoverTitle: "Edit Filter", filterLabel: children, onClickDelete: handleClickDelete, setIsOpen: setIsOpen, popoverChildren: (0, jsx_runtime_1.jsx)(EditPopover, { Button: Button, renderNode: renderNode, activeEditItem: activeEditItem, onSave: () => {
|
|
377
329
|
if ((0, util_1.isNodeEmptyCollection)(activeEditItem)) {
|
|
378
330
|
setIsPending(false);
|
|
379
331
|
setActiveEditItem(null);
|
|
@@ -73,6 +73,7 @@ export declare const getDateFilterInfo: (node: any) => {
|
|
|
73
73
|
intervalType: any;
|
|
74
74
|
intervalPaths: any;
|
|
75
75
|
};
|
|
76
|
-
export declare function removeNonSelectedTableReferences(ast: any, table: string): any;
|
|
76
|
+
export declare function removeNonSelectedTableReferences(ast: any, table: string, columns: string[]): any;
|
|
77
77
|
export declare function allNumericNodesValidInTree(node: any): boolean;
|
|
78
|
+
export declare function isIdColumn(columnName?: string): boolean | "" | undefined;
|
|
78
79
|
//# sourceMappingURL=util.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/util.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,eAAO,MAAM,qBAAqB,SAAU,GAAG,YAW9C,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,WAa1C;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,WAK5C;AAGD,eAAO,MAAM,WAAW,SAAU,GAAG,YAuBpC,CAAC;AAKF,eAAO,MAAM,oBAAoB,SAAU,GAAG,QAE7C,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG;;;;;;;;EAU3C;AAKD,eAAO,MAAM,eAAe,QAAS,GAAG,QAMvC,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,WAiBvD;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,GAAG,iBAQjD;AAED,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAOf;AAQD,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAWf;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAOf;AAMD,eAAO,MAAM,mBAAmB,SAAU,GAAG,gBAAgB,MAAM,YA4BlE,CAAC;AAIF,eAAO,MAAM,2BAA2B,SAAU,GAAG,YAUpD,CAAC;AAIF,eAAO,MAAM,oBAAoB,SACzB,GAAG,gBACK,MAAM,KACnB,OAoBF,CAAC;AAEF,eAAO,MAAM,qBAAqB,SAAU,GAAG,gBAAgB,MAAM,QAYpE,CAAC;AAEF,eAAO,MAAM,4BAA4B,SAAU,GAAG,KAAG,OAUxD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,SAAU,GAAG,QA4B3C,CAAC;AAGF,eAAO,MAAM,UAAU,eAAgB,MAAM,SAe5C,CAAC;AAmBF;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM,UAsBvE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,GAAG,UAgB9C;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM,sBAmBtE;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,SAAU,GAAG,YAU1C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,SAAU,GAAG,YAOxC,CAAC;AAEF,wBAAgB,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,WAehD;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,GAAG,GACV,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAyB1C;AAED,eAAO,MAAM,QAAQ,QAAS,GAAG,QAAoC,CAAC;AAEtE,eAAO,MAAM,QAAQ,MAAO,MAAM,WAA2C,CAAC;AA4L9E,eAAO,MAAM,iBAAiB,SAAU,GAAG;;;;;;;CAc1C,CAAC;
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/util.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,eAAO,MAAM,qBAAqB,SAAU,GAAG,YAW9C,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,WAa1C;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,WAK5C;AAGD,eAAO,MAAM,WAAW,SAAU,GAAG,YAuBpC,CAAC;AAKF,eAAO,MAAM,oBAAoB,SAAU,GAAG,QAE7C,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG;;;;;;;;EAU3C;AAKD,eAAO,MAAM,eAAe,QAAS,GAAG,QAMvC,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,WAiBvD;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,GAAG,iBAQjD;AAED,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAOf;AAQD,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAWf;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,GAAG,EACT,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAOf;AAMD,eAAO,MAAM,mBAAmB,SAAU,GAAG,gBAAgB,MAAM,YA4BlE,CAAC;AAIF,eAAO,MAAM,2BAA2B,SAAU,GAAG,YAUpD,CAAC;AAIF,eAAO,MAAM,oBAAoB,SACzB,GAAG,gBACK,MAAM,KACnB,OAoBF,CAAC;AAEF,eAAO,MAAM,qBAAqB,SAAU,GAAG,gBAAgB,MAAM,QAYpE,CAAC;AAEF,eAAO,MAAM,4BAA4B,SAAU,GAAG,KAAG,OAUxD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,SAAU,GAAG,QA4B3C,CAAC;AAGF,eAAO,MAAM,UAAU,eAAgB,MAAM,SAe5C,CAAC;AAmBF;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM,UAsBvE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,GAAG,UAgB9C;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM,sBAmBtE;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,SAAU,GAAG,YAU1C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,SAAU,GAAG,YAOxC,CAAC;AAEF,wBAAgB,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,WAehD;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,GAAG,GACV,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAyB1C;AAED,eAAO,MAAM,QAAQ,QAAS,GAAG,QAAoC,CAAC;AAEtE,eAAO,MAAM,QAAQ,MAAO,MAAM,WAA2C,CAAC;AA4L9E,eAAO,MAAM,iBAAiB,SAAU,GAAG;;;;;;;CAc1C,CAAC;AA6CF,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EAAE,OAQlB;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAc7D;AAED,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,4BAO7C"}
|