@quillsql/react 2.13.1 → 2.13.3

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.
Files changed (147) hide show
  1. package/dist/cjs/Chart.d.ts.map +1 -1
  2. package/dist/cjs/Chart.js +7 -15
  3. package/dist/cjs/ChartBuilder.d.ts +4 -1
  4. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  5. package/dist/cjs/ChartBuilder.js +7 -7
  6. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  7. package/dist/cjs/ChartEditor.js +40 -19
  8. package/dist/cjs/Context.d.ts +52 -16
  9. package/dist/cjs/Context.d.ts.map +1 -1
  10. package/dist/cjs/Context.js +34 -47
  11. package/dist/cjs/Dashboard.d.ts +5 -2
  12. package/dist/cjs/Dashboard.d.ts.map +1 -1
  13. package/dist/cjs/Dashboard.js +73 -83
  14. package/dist/cjs/DateRangePicker/QuillDateRangePicker.js +1 -1
  15. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  16. package/dist/cjs/ReportBuilder.js +179 -114
  17. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  18. package/dist/cjs/SQLEditor.js +18 -11
  19. package/dist/cjs/Table.d.ts.map +1 -1
  20. package/dist/cjs/Table.js +6 -3
  21. package/dist/cjs/components/Dashboard/DashboardFilter.js +1 -1
  22. package/dist/cjs/components/Dashboard/DataLoader.d.ts +6 -4
  23. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  24. package/dist/cjs/components/Dashboard/DataLoader.js +76 -68
  25. package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
  26. package/dist/cjs/components/Dashboard/MetricComponent.js +14 -3
  27. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  28. package/dist/cjs/components/Dashboard/TableComponent.js +8 -1
  29. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts +1 -1
  30. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  31. package/dist/cjs/components/QuillMultiSelectWithCombo.js +6 -2
  32. package/dist/cjs/components/QuillSelect.js +3 -3
  33. package/dist/cjs/components/QuillSelectWithCombo.d.ts +1 -1
  34. package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -1
  35. package/dist/cjs/components/QuillSelectWithCombo.js +13 -3
  36. package/dist/cjs/components/QuillTable.d.ts +1 -1
  37. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  38. package/dist/cjs/components/QuillTable.js +17 -14
  39. package/dist/cjs/components/ReportBuilder/FilterStack.d.ts +33 -0
  40. package/dist/cjs/components/ReportBuilder/FilterStack.d.ts.map +1 -0
  41. package/dist/cjs/components/ReportBuilder/FilterStack.js +121 -0
  42. package/dist/cjs/components/ReportBuilder/ui.d.ts +0 -1
  43. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  44. package/dist/cjs/components/ReportBuilder/ui.js +1 -13
  45. package/dist/cjs/components/UiComponents.d.ts +2 -1
  46. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  47. package/dist/cjs/components/UiComponents.js +3 -3
  48. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  49. package/dist/cjs/hooks/useDashboard.js +41 -50
  50. package/dist/cjs/hooks/useExport.d.ts +14 -1
  51. package/dist/cjs/hooks/useExport.d.ts.map +1 -1
  52. package/dist/cjs/hooks/useExport.js +120 -38
  53. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  54. package/dist/cjs/hooks/useQuill.js +3 -1
  55. package/dist/cjs/models/Client.d.ts +2 -0
  56. package/dist/cjs/models/Client.d.ts.map +1 -1
  57. package/dist/cjs/models/Dashboard.d.ts +1 -1
  58. package/dist/cjs/models/Dashboard.d.ts.map +1 -1
  59. package/dist/cjs/models/Filter.d.ts +1 -1
  60. package/dist/cjs/models/Filter.d.ts.map +1 -1
  61. package/dist/cjs/utils/client.d.ts.map +1 -1
  62. package/dist/cjs/utils/client.js +1 -0
  63. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  64. package/dist/cjs/utils/dashboard.js +6 -3
  65. package/dist/cjs/utils/filterProcessing.d.ts +1 -1
  66. package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
  67. package/dist/cjs/utils/filterProcessing.js +3 -3
  68. package/dist/cjs/utils/report.d.ts +2 -2
  69. package/dist/cjs/utils/report.d.ts.map +1 -1
  70. package/dist/cjs/utils/report.js +5 -4
  71. package/dist/cjs/utils/tableProcessing.d.ts +2 -2
  72. package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
  73. package/dist/cjs/utils/tableProcessing.js +3 -1
  74. package/dist/esm/Chart.d.ts.map +1 -1
  75. package/dist/esm/Chart.js +7 -15
  76. package/dist/esm/ChartBuilder.d.ts +4 -1
  77. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  78. package/dist/esm/ChartBuilder.js +7 -7
  79. package/dist/esm/ChartEditor.d.ts.map +1 -1
  80. package/dist/esm/ChartEditor.js +41 -20
  81. package/dist/esm/Context.d.ts +52 -16
  82. package/dist/esm/Context.d.ts.map +1 -1
  83. package/dist/esm/Context.js +33 -46
  84. package/dist/esm/Dashboard.d.ts +5 -2
  85. package/dist/esm/Dashboard.d.ts.map +1 -1
  86. package/dist/esm/Dashboard.js +75 -85
  87. package/dist/esm/DateRangePicker/QuillDateRangePicker.js +1 -1
  88. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  89. package/dist/esm/ReportBuilder.js +182 -117
  90. package/dist/esm/SQLEditor.d.ts.map +1 -1
  91. package/dist/esm/SQLEditor.js +18 -11
  92. package/dist/esm/Table.d.ts.map +1 -1
  93. package/dist/esm/Table.js +6 -3
  94. package/dist/esm/components/Dashboard/DashboardFilter.js +1 -1
  95. package/dist/esm/components/Dashboard/DataLoader.d.ts +6 -4
  96. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  97. package/dist/esm/components/Dashboard/DataLoader.js +77 -69
  98. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
  99. package/dist/esm/components/Dashboard/MetricComponent.js +14 -3
  100. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  101. package/dist/esm/components/Dashboard/TableComponent.js +8 -1
  102. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts +1 -1
  103. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  104. package/dist/esm/components/QuillMultiSelectWithCombo.js +6 -2
  105. package/dist/esm/components/QuillSelect.js +3 -3
  106. package/dist/esm/components/QuillSelectWithCombo.d.ts +1 -1
  107. package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -1
  108. package/dist/esm/components/QuillSelectWithCombo.js +13 -3
  109. package/dist/esm/components/QuillTable.d.ts +1 -1
  110. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  111. package/dist/esm/components/QuillTable.js +17 -14
  112. package/dist/esm/components/ReportBuilder/FilterStack.d.ts +33 -0
  113. package/dist/esm/components/ReportBuilder/FilterStack.d.ts.map +1 -0
  114. package/dist/esm/components/ReportBuilder/FilterStack.js +118 -0
  115. package/dist/esm/components/ReportBuilder/ui.d.ts +0 -1
  116. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  117. package/dist/esm/components/ReportBuilder/ui.js +0 -8
  118. package/dist/esm/components/UiComponents.d.ts +2 -1
  119. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  120. package/dist/esm/components/UiComponents.js +3 -3
  121. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  122. package/dist/esm/hooks/useDashboard.js +41 -50
  123. package/dist/esm/hooks/useExport.d.ts +14 -1
  124. package/dist/esm/hooks/useExport.d.ts.map +1 -1
  125. package/dist/esm/hooks/useExport.js +122 -40
  126. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  127. package/dist/esm/hooks/useQuill.js +3 -1
  128. package/dist/esm/models/Client.d.ts +2 -0
  129. package/dist/esm/models/Client.d.ts.map +1 -1
  130. package/dist/esm/models/Dashboard.d.ts +1 -1
  131. package/dist/esm/models/Dashboard.d.ts.map +1 -1
  132. package/dist/esm/models/Filter.d.ts +1 -1
  133. package/dist/esm/models/Filter.d.ts.map +1 -1
  134. package/dist/esm/utils/client.d.ts.map +1 -1
  135. package/dist/esm/utils/client.js +1 -0
  136. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  137. package/dist/esm/utils/dashboard.js +6 -3
  138. package/dist/esm/utils/filterProcessing.d.ts +1 -1
  139. package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
  140. package/dist/esm/utils/filterProcessing.js +3 -3
  141. package/dist/esm/utils/report.d.ts +2 -2
  142. package/dist/esm/utils/report.d.ts.map +1 -1
  143. package/dist/esm/utils/report.js +5 -4
  144. package/dist/esm/utils/tableProcessing.d.ts +2 -2
  145. package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
  146. package/dist/esm/utils/tableProcessing.js +3 -1
  147. package/package.json +3 -3
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const ReportBuilder_1 = require("../../ReportBuilder");
5
+ const astFilterProcessing_1 = require("../../utils/astFilterProcessing");
6
+ const astProcessing_1 = require("../../utils/astProcessing");
7
+ const filterProcessing_1 = require("../../utils/filterProcessing");
8
+ const UiComponents_1 = require("../UiComponents");
9
+ const ui_1 = require("./ui");
10
+ const util_1 = require("./util");
11
+ function FilterStack({ client, filterStack, filterTree, defaultAST, baseAst, setBaseAst, setFormData, fetchSqlQuery, schemaData, defaultColumn, defaultTable, currentTable, initialTableName, globalUniqueValues, globalUniqueValuesIsLoading, columns, removingFilter, setRemovingFilter, TabsComponent, FilterPopoverComponent, FilterModal, ButtonComponent, SecondaryButtonComponent, SelectComponent, TextInputComponent, MultiSelectComponent, actionsEnabled = true, }) {
12
+ return ((0, jsx_runtime_1.jsx)("div", { style: {
13
+ display: 'flex',
14
+ flexDirection: 'column',
15
+ }, children: filterStack.map((item, index) => {
16
+ if (!item.leaf && (item.operator === 'and' || item.operator === 'or')) {
17
+ return ((0, jsx_runtime_1.jsx)("div", { style: {
18
+ width: 'fit-content',
19
+ marginBottom: '8px',
20
+ marginTop: '8px',
21
+ }, children: (0, jsx_runtime_1.jsx)(TabsComponent, { value: item.operator.toUpperCase(), options: UiComponents_1.DEFAULT_TAB_OPTIONS, onChange: () => {
22
+ if (item.operator === 'and') {
23
+ item.operator = 'or';
24
+ }
25
+ else {
26
+ item.operator = 'and';
27
+ }
28
+ let newFormData = null;
29
+ if (filterTree) {
30
+ newFormData = (0, astFilterProcessing_1.filterTreeToAst)(filterTree, client.databaseType.toLowerCase());
31
+ }
32
+ const newAst = (0, util_1.deepCopy)({
33
+ ...defaultAST,
34
+ ...baseAst,
35
+ ...(!baseAst?.columns && {
36
+ columns: (0, astProcessing_1.getAllPossibleColumns)(baseAst, schemaData.schema).map((c) => {
37
+ const newColumn = (0, util_1.deepCopy)(defaultColumn);
38
+ newColumn.expr.column = c.field;
39
+ return newColumn;
40
+ }),
41
+ }),
42
+ ...(!baseAst?.from && {
43
+ from: [{ ...defaultTable, table: initialTableName }],
44
+ }),
45
+ where: newFormData,
46
+ });
47
+ setBaseAst(newAst);
48
+ setFormData(newFormData);
49
+ fetchSqlQuery(newAst, newFormData);
50
+ } }) }, index));
51
+ }
52
+ else if (item.value) {
53
+ return ((0, jsx_runtime_1.jsx)(ui_1.FilterPopoverWrapper, { schema: schemaData.schema.find((s) => s.name === currentTable || s.displayName === currentTable) ?? schemaData.schema[0], filter: item.value, filterLabel: item.value ? (0, filterProcessing_1.filterSentence)(item.value) : '', index: index, FilterTagComponent: FilterPopoverComponent, FilterModal: FilterModal, fieldValuesMap: globalUniqueValues, fieldValuesMapIsLoading: globalUniqueValuesIsLoading, priorFilters: filterStack.slice(0, index > 0 ? index - 1 : 0), columns: columns, client: client, customFields: schemaData.customFields, baseAst: baseAst, endpoint: ReportBuilder_1.QUILL_SERVER, ButtonComponent: ButtonComponent, SecondaryButtonComponent: SecondaryButtonComponent, SelectComponent: SelectComponent, TextInputComponent: TextInputComponent, MultiSelectComponent: MultiSelectComponent, handleFilterSave: (filter) => {
54
+ item.value = filter;
55
+ let newFormData = null;
56
+ if (filterTree) {
57
+ newFormData = (0, astFilterProcessing_1.filterTreeToAst)(filterTree, client.databaseType.toLowerCase());
58
+ }
59
+ const newAst = (0, util_1.deepCopy)({
60
+ ...defaultAST,
61
+ ...baseAst,
62
+ ...(!baseAst?.columns && {
63
+ columns: (0, astProcessing_1.getAllPossibleColumns)(baseAst, schemaData.schema).map((c) => {
64
+ const newColumn = (0, util_1.deepCopy)(defaultColumn);
65
+ newColumn.expr.column = c.field;
66
+ return newColumn;
67
+ }),
68
+ }),
69
+ ...(!baseAst?.from && {
70
+ from: [{ ...defaultTable, table: initialTableName }],
71
+ }),
72
+ where: newFormData,
73
+ });
74
+ setBaseAst(newAst);
75
+ setFormData(newFormData);
76
+ fetchSqlQuery(newAst, newFormData);
77
+ }, handleFilterDelete: (i) => {
78
+ if (!removingFilter) {
79
+ setRemovingFilter(true);
80
+ const newStack = filterStack;
81
+ if (i > 0) {
82
+ newStack.splice(i - 1, 2);
83
+ }
84
+ else {
85
+ if (filterStack.length > 1) {
86
+ newStack.splice(i, 2);
87
+ }
88
+ else {
89
+ newStack.splice(i, 1);
90
+ }
91
+ }
92
+ const tree = (0, filterProcessing_1.filterStackToFilterTree)(newStack);
93
+ let newFormData = null;
94
+ if (tree) {
95
+ newFormData = (0, astFilterProcessing_1.filterTreeToAst)(tree, client.databaseType.toLowerCase());
96
+ }
97
+ const newAst = (0, util_1.deepCopy)({
98
+ ...defaultAST,
99
+ ...baseAst,
100
+ ...(!baseAst?.columns && {
101
+ columns: (0, astProcessing_1.getAllPossibleColumns)(baseAst, schemaData.schema).map((c) => {
102
+ const newColumn = (0, util_1.deepCopy)(defaultColumn);
103
+ newColumn.expr.column = c.field;
104
+ return newColumn;
105
+ }),
106
+ }),
107
+ ...(!baseAst?.from && {
108
+ from: [{ ...defaultTable, table: initialTableName }],
109
+ }),
110
+ where: newFormData,
111
+ });
112
+ setBaseAst(newAst);
113
+ setFormData(newFormData);
114
+ fetchSqlQuery(newAst, newFormData);
115
+ setRemovingFilter(false);
116
+ }
117
+ }, disabled: !actionsEnabled }, `filter_${index}_${item.value ? (0, filterProcessing_1.filterSentence)(item.value) : ''}`));
118
+ }
119
+ }) }));
120
+ }
121
+ exports.default = FilterStack;
@@ -12,7 +12,6 @@ import { QuillProviderClient } from '../../models/Client';
12
12
  */
13
13
  export declare const QuillButton: ({ children, ...props }: any) => import("react/jsx-runtime").JSX.Element;
14
14
  export declare const QuillSecondaryButton: ({ children, ...props }: any) => import("react/jsx-runtime").JSX.Element;
15
- export declare const QuillReportBuilderTable: ({ rows, columns, error, ...props }: any) => import("react/jsx-runtime").JSX.Element;
16
15
  export declare const QuillTag: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
17
16
  export interface SidebarHeadingComponentProps {
18
17
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/ui.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/ui.tsx"],"names":[],"mappings":"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"}
@@ -1,17 +1,11 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.FilterPopoverWrapper = 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;
3
+ exports.FilterPopoverWrapper = 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.QuillSecondaryButton = exports.QuillButton = void 0;
7
4
  const jsx_runtime_1 = require("react/jsx-runtime");
8
5
  const react_1 = require("react");
9
6
  const UiComponents_1 = require("../UiComponents");
10
- const QuillTable_1 = __importDefault(require("../QuillTable"));
11
7
  const Context_1 = require("../../Context");
12
8
  const util_1 = require("./util");
13
- const csv_1 = require("../../utils/csv");
14
- const paginationProcessing_1 = require("../../utils/paginationProcessing");
15
9
  const filterProcessing_1 = require("../../utils/filterProcessing");
16
10
  const tableProcessing_1 = require("../../utils/tableProcessing");
17
11
  /**
@@ -62,12 +56,6 @@ const QuillSecondaryButton = ({ children, ...props }) => {
62
56
  }, children: children }));
63
57
  };
64
58
  exports.QuillSecondaryButton = QuillSecondaryButton;
65
- // TODO: remove this, I think it is unused.
66
- const QuillReportBuilderTable = ({ rows, columns, error, ...props }) => {
67
- const reformattedColumns = columns.map((c) => ({ label: c, field: c }));
68
- 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: paginationProcessing_1.DEFAULT_PAGINATION.rowsPerPage, hideCSVDownloadButton: rows?.length > 0, downloadCSV: () => (0, csv_1.downloadCSV)({ rows, fields: reformattedColumns, name: 'my_report' }), emptyStateLabel: error || 'No results', ...props }) }));
69
- };
70
- exports.QuillReportBuilderTable = QuillReportBuilderTable;
71
59
  exports.QuillTag = (0, react_1.forwardRef)(({ label, onClick, children, onClickDelete, hideDelete = false }, forwardedRef) => {
72
60
  const [theme] = (0, react_1.useContext)(Context_1.ThemeContext);
73
61
  return ((0, jsx_runtime_1.jsxs)("div", { style: {
@@ -106,6 +106,7 @@ export interface MultiSelectComponentProps {
106
106
  };
107
107
  }) => void;
108
108
  isLoading?: boolean;
109
+ disabled?: boolean;
109
110
  }
110
111
  export interface HeaderComponentProps {
111
112
  label: string;
@@ -178,7 +179,7 @@ export interface TableComponentProps {
178
179
  setCurrentPage?: (page: number) => void;
179
180
  }
180
181
  export declare const QuillTableSQLEditorComponent: ({ rows, columns, isLoading, rowCount, rowCountIsLoading, rowsPerPage, onPageChange, onSortChange, containerStyle, currentPage, setCurrentPage, }: TableComponentProps) => import("react/jsx-runtime").JSX.Element;
181
- export declare const QuillTableComponent: ({ rows, columns, isLoading, rowCount, onPageChange, onSortChange, }: TableComponentProps) => import("react/jsx-runtime").JSX.Element;
182
+ export declare const QuillTableComponent: ({ rows, columns, isLoading, rowCount, rowCountIsLoading, onPageChange, onSortChange, }: TableComponentProps) => import("react/jsx-runtime").JSX.Element;
182
183
  export declare const QuillEmptyDashboardComponent: () => import("react/jsx-runtime").JSX.Element;
183
184
  export declare const QuillLoadingDashboardComponent: ({ containerStyle, chartContainerStyle, LoadingComponent, }: {
184
185
  containerStyle?: React.CSSProperties | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"UiComponents.d.ts","sourceRoot":"","sources":["../../../src/components/UiComponents.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UiComponents.d.ts","sourceRoot":"","sources":["../../../src/components/UiComponents.tsx"],"names":[],"mappings":"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"}
@@ -420,13 +420,13 @@ const QuillTableSQLEditorComponent = ({ rows, columns, isLoading = false, rowCou
420
420
  onPageChange && onPageChange(page);
421
421
  }, onSortChange: (sort) => {
422
422
  setSort(sort);
423
- setPage(page);
424
423
  setCurrentPage && setCurrentPage(0);
424
+ setPage(0);
425
425
  onSortChange && onSortChange(sort);
426
426
  }, sort: sort, currentPage: currentPage ?? page, isLoading: isLoading, containerStyle: containerStyle }));
427
427
  };
428
428
  exports.QuillTableSQLEditorComponent = QuillTableSQLEditorComponent;
429
- const QuillTableComponent = ({ rows, columns, isLoading = false, rowCount, onPageChange, onSortChange, }) => {
429
+ const QuillTableComponent = ({ rows, columns, isLoading = false, rowCount, rowCountIsLoading, onPageChange, onSortChange, }) => {
430
430
  const [sort, setSort] = (0, react_1.useState)({ field: '', direction: '' });
431
431
  const [page, setPage] = (0, react_1.useState)(0);
432
432
  const [initialLoad, setInitialLoad] = (0, react_1.useState)(true);
@@ -444,7 +444,7 @@ const QuillTableComponent = ({ rows, columns, isLoading = false, rowCount, onPag
444
444
  height: '100%',
445
445
  }, children: (0, jsx_runtime_1.jsx)(ChartSkeleton_1.default, {}) }));
446
446
  }
447
- return ((0, jsx_runtime_1.jsx)(QuillTable_1.default, { rows: rows, columns: columns, rowsPerPage: paginationProcessing_1.DEFAULT_PAGINATION.rowsPerPage, rowCount: rowCount, onPageChange: (page) => {
447
+ return ((0, jsx_runtime_1.jsx)(QuillTable_1.default, { rows: rows, columns: columns, rowsPerPage: paginationProcessing_1.DEFAULT_PAGINATION.rowsPerPage, rowCount: rowCount, rowCountIsLoading: rowCountIsLoading, onPageChange: (page) => {
448
448
  setPage(page);
449
449
  onPageChange && onPageChange(page);
450
450
  }, onSortChange: (sort) => {
@@ -1 +1 @@
1
- {"version":3,"file":"useDashboard.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDashboard.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAOpE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGnD,eAAO,MAAM,UAAU;gDAYC,mBAAmB,KAAK,OAAO;CAYtD,CAAC;AAEF,eAAO,MAAM,YAAY,kBAAmB,MAAM;;;;2CAsQF,MAAM;;qCAhP1B,MAAM,4CAEf;QACb,MAAM,EAAE,WAAW,GAAG;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC;QACrC,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC;KAC7B,oBACiB;QAAE,OAAO,EAAE,eAAe,EAAE,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAA;KAAE;CA0P9E,CAAC"}
1
+ {"version":3,"file":"useDashboard.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDashboard.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAOpE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGnD,eAAO,MAAM,UAAU;gDAYC,mBAAmB,KAAK,OAAO;CAYtD,CAAC;AAEF,eAAO,MAAM,YAAY,kBAAmB,MAAM;;;;2CA0PF,MAAM;;qCApO1B,MAAM,4CAEf;QACb,MAAM,EAAE,WAAW,GAAG;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC;QACrC,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC;KAC7B,oBACiB;QAAE,OAAO,EAAE,eAAe,EAAE,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAA;KAAE;CA8O9E,CAAC"}
@@ -15,7 +15,7 @@ const useReports = () => {
15
15
  dispatch({
16
16
  type: 'UPDATE_DASHBOARD_ITEM',
17
17
  id: id,
18
- data: { ...dashboard[id], triggerReload: true },
18
+ data: { triggerReload: true },
19
19
  });
20
20
  };
21
21
  const reloadFilteredReports = (predicate) => {
@@ -42,8 +42,6 @@ const useDashboard = (dashboardName) => {
42
42
  (dashboardConfig[dashboardName] &&
43
43
  !dashboardConfig[dashboardName]?.sections), [isLoading, isClientLoading, dashboardConfig, dashboardName]);
44
44
  const handleReload = async (overrideDashboardName, fetchFromServer = false, reportAction, overrideFilters) => {
45
- if (!fetchFromServer && isLoading)
46
- return;
47
45
  if (overrideFilters) {
48
46
  // Pull the date filter out of the override filters, process it, and append it to the filters
49
47
  const dateFilter = overrideFilters.filters.find((f) => f.filterType === 'date_range');
@@ -120,61 +118,54 @@ const useDashboard = (dashboardName) => {
120
118
  ...(dashboard?.filters ?? []),
121
119
  ]);
122
120
  };
123
- //FIXME: report should be of type QuillReport
124
121
  async function getDashboards(dashboardName, fetchFromServer = false, reportAction) {
125
- const curDashboardConfig = dashboardConfig[dashboardName];
122
+ let curDashboardConfig = dashboardConfig[dashboardName];
126
123
  if (!fetchFromServer && curDashboardConfig?.sections) {
127
124
  if (reportAction?.action === 'delete') {
128
- dashboardConfigContext({
129
- type: 'UPDATE_DASHBOARD',
130
- id: dashboardName,
131
- data: {
132
- ...curDashboardConfig,
133
- sections: Object.fromEntries(Object.entries(curDashboardConfig?.sections ?? {}).map(([sectionKey, reports]) => [
134
- sectionKey,
135
- reports.filter((report) => (report.id ?? report._id) !==
136
- (reportAction.report.id ?? reportAction.report._id)),
137
- ])),
138
- },
139
- });
125
+ curDashboardConfig = {
126
+ ...curDashboardConfig,
127
+ sections: Object.fromEntries(Object.entries(curDashboardConfig?.sections ?? {}).map(([sectionKey, reports]) => [
128
+ sectionKey,
129
+ reports.filter((report) => report.id !== reportAction.report.id),
130
+ ])),
131
+ };
140
132
  }
141
133
  else if (reportAction?.action === 'upsert') {
142
134
  const containsReport = Object.values(curDashboardConfig?.sections ?? {})
143
135
  .flat()
144
- .some((report) => (report.id ?? report._id) ===
145
- (reportAction?.report.id ?? reportAction?.report._id));
146
- dashboardConfigContext({
147
- type: 'UPDATE_DASHBOARD',
148
- id: dashboardName,
149
- data: {
150
- ...curDashboardConfig,
151
- sections: Object.fromEntries(Object.entries(curDashboardConfig?.sections ?? {}).map(([sectionKey, reports]) => [
152
- sectionKey,
153
- containsReport
154
- ? reports.map((report) => {
155
- return {
156
- report,
157
- // FIXME: this is bizarre. The _id field shouldn't even exist on the report according to the type, but that's what is set.
158
- ...((reportAction?.report.id ??
159
- reportAction?.report._id) ===
160
- (report.id ?? report._id)
161
- ? reportAction?.report
162
- : dashboard[report.id ?? report._id]),
163
- _id: report.id ?? report._id,
164
- };
165
- })
166
- : [
167
- ...(reports ?? []),
168
- {
169
- report: reportAction?.report,
170
- ...dashboard[reportAction?.report.id ?? reportAction?.report._id],
171
- _id: reportAction?.report.id ?? reportAction?.report._id,
172
- },
173
- ],
174
- ])),
175
- },
176
- });
136
+ .some((report) => report.id === reportAction?.report.id);
137
+ curDashboardConfig = {
138
+ ...curDashboardConfig,
139
+ sections: Object.fromEntries(Object.entries(curDashboardConfig?.sections ?? {}).map(([sectionKey, reports]) => [
140
+ sectionKey,
141
+ containsReport
142
+ ? reports.map((report) => {
143
+ return {
144
+ report,
145
+ ...(reportAction?.report.id === report.id
146
+ ? reportAction?.report
147
+ : dashboard[report.id]),
148
+ _id: report.id,
149
+ id: report.id,
150
+ };
151
+ })
152
+ : [
153
+ ...(reports ?? []),
154
+ {
155
+ report: reportAction?.report,
156
+ ...dashboard[reportAction?.report.id],
157
+ id: reportAction?.report.id,
158
+ _id: reportAction?.report.id,
159
+ },
160
+ ],
161
+ ])),
162
+ };
177
163
  }
164
+ dashboardConfigContext({
165
+ type: 'UPDATE_DASHBOARD',
166
+ id: dashboardName,
167
+ data: curDashboardConfig,
168
+ });
178
169
  setIsLoading(false);
179
170
  return curDashboardConfig;
180
171
  }
@@ -1,6 +1,19 @@
1
- export declare const useExport: (reportId?: string) => {
1
+ /// <reference types="react" />
2
+ import { QuillReport } from '../models/Report';
3
+ export declare const useExport: (reportId?: string, { CustomDocumentComponent, maximumRowsPerPage, sectionField, }?: {
4
+ CustomDocumentComponent?: ((props: QuillPDFProps) => JSX.Element) | undefined;
5
+ maximumRowsPerPage?: number | undefined;
6
+ sectionField?: string | undefined;
7
+ }) => {
2
8
  downloadCSV: () => void;
3
9
  downloadPDF: () => void;
4
10
  isLoading: boolean;
5
11
  };
12
+ interface QuillPDFProps {
13
+ report: QuillReport;
14
+ pageNumber: number;
15
+ numberOfPages: number;
16
+ maximumRowsPerPage: number;
17
+ }
18
+ export {};
6
19
  //# sourceMappingURL=useExport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useExport.d.ts","sourceRoot":"","sources":["../../../src/hooks/useExport.tsx"],"names":[],"mappings":"AA8DA,eAAO,MAAM,SAAS,cAAe,MAAM;;;;CA2D1C,CAAC"}
1
+ {"version":3,"file":"useExport.d.ts","sourceRoot":"","sources":["../../../src/hooks/useExport.tsx"],"names":[],"mappings":";AASA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAwD/C,eAAO,MAAM,SAAS,cACT,MAAM;uCAOmB,aAAa,KAAK,WAAW;;;;;;;CA2LlE,CAAC;AAEF,UAAU,aAAa;IACrB,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;CAC5B"}
@@ -9,11 +9,14 @@ const csv_1 = require("../utils/csv");
9
9
  const react_1 = require("react");
10
10
  const dataFetcher_1 = require("../utils/dataFetcher");
11
11
  const Context_1 = require("../Context");
12
- const react_dom_1 = __importDefault(require("react-dom"));
13
- const valueFormatter_1 = require("../utils/valueFormatter");
14
12
  const dashboard_1 = require("../utils/dashboard");
15
- const react_to_print_1 = require("react-to-print");
13
+ const QuillProvider_1 = require("../QuillProvider");
14
+ const client_1 = require("react-dom/client");
15
+ const react_dom_1 = require("react-dom");
16
16
  const Chart_1 = require("../Chart");
17
+ const report_1 = require("../utils/report");
18
+ const jspdf_1 = __importDefault(require("jspdf"));
19
+ const valueFormatter_1 = require("../utils/valueFormatter");
17
20
  async function getExportData(client, dashboardFilters, reportId) {
18
21
  const minimalFilters = Object.values(dashboardFilters).length
19
22
  ? Object.values(dashboardFilters).map((filter) => {
@@ -48,18 +51,21 @@ async function getExportData(client, dashboardFilters, reportId) {
48
51
  }
49
52
  return cleanedReport;
50
53
  }
51
- const useExport = (reportId) => {
54
+ const useExport = (reportId, { CustomDocumentComponent = QuillCustomDocumentComponent, maximumRowsPerPage = 20,
55
+ // if sectionKeyField is passed, then we will group by that field
56
+ sectionField, } = {}) => {
52
57
  const { dashboardFilters } = (0, react_1.useContext)(Context_1.DashboardFiltersContext);
58
+ const [dashboard] = (0, react_1.useContext)(Context_1.DashboardContext);
53
59
  const specificDashboardFilters = (0, react_1.useMemo)(() => {
54
60
  //FIXME: Pretty sure this won't work with multiple dashboards
55
61
  Object.values(dashboardFilters).map((dashboardFilter) => {
56
62
  return dashboardFilter.filter;
57
63
  });
58
64
  }, [dashboardFilters]);
59
- const [theme] = (0, react_1.useContext)(Context_1.ThemeContext);
65
+ // const [theme] = useContext(ThemeContext);
60
66
  const [client] = (0, react_1.useContext)(Context_1.ClientContext);
61
67
  const [isLoading, setIsLoading] = (0, react_1.useState)(false);
62
- if (!reportId) {
68
+ if (!reportId || !client) {
63
69
  return { downloadCSV: () => { }, downloadPDF: () => { }, isLoading: false };
64
70
  }
65
71
  return {
@@ -77,49 +83,125 @@ const useExport = (reportId) => {
77
83
  setIsLoading(false);
78
84
  },
79
85
  downloadPDF: async () => {
80
- if (!client) {
81
- return;
82
- }
83
86
  setIsLoading(true);
84
- const resp = await getExportData(client, specificDashboardFilters, reportId);
85
- const iframe = document.createElement('iframe');
86
- document.body.appendChild(iframe);
87
- if (iframe && iframe.contentDocument && theme) {
88
- react_dom_1.default.render((0, jsx_runtime_1.jsx)(PDFDetail, { report: resp, theme: theme }), iframe.contentDocument.body);
87
+ // @ts-ignore
88
+ let report;
89
+ if (reportId &&
90
+ dashboard[reportId] &&
91
+ dashboardFilters &&
92
+ // @ts-ignore
93
+ dashboardFilters[dashboard[reportId].dashboardName]) {
94
+ const { report: fetchedReport } = await (0, report_1.fetchReport)(reportId, client, true, Object.values(
95
+ // @ts-ignore
96
+ dashboardFilters[dashboard[reportId].dashboardName]).map((elem) => elem.filter));
97
+ report = fetchedReport;
89
98
  }
90
- // delete the iframe
91
- setTimeout(() => {
92
- document.body.removeChild(iframe);
93
- }, 1000);
94
- setIsLoading(false);
99
+ else {
100
+ const { report: fetchedReport } = await (0, report_1.fetchReport)(reportId, client, true, []);
101
+ report = fetchedReport;
102
+ }
103
+ let groupedRows = {};
104
+ if (sectionField) {
105
+ groupedRows = (report?.rows || []).reduce((acc, row) => {
106
+ const key = row[sectionField];
107
+ if (key !== undefined) {
108
+ if (!acc[key]) {
109
+ acc[key] = [];
110
+ }
111
+ acc[key].push(row);
112
+ }
113
+ return acc;
114
+ }, {});
115
+ }
116
+ // report.rows
117
+ const numberOfPages = Math.ceil(report.rows.length / maximumRowsPerPage);
118
+ let html = '';
119
+ let currentPage = {};
120
+ let currentCount = 0;
121
+ let pageNumber = 1;
122
+ // Iterate over each group of rows
123
+ for (const groupKey in groupedRows) {
124
+ // @ts-ignore
125
+ const rows = groupedRows[groupKey];
126
+ let groupIndex = 0;
127
+ while (groupIndex < rows.length) {
128
+ const remainingRows = rows.length - groupIndex;
129
+ const availableSpace = maximumRowsPerPage - currentCount;
130
+ const rowsToAdd = Math.min(remainingRows, availableSpace);
131
+ // @ts-ignore
132
+ currentPage[groupKey] = (currentPage[groupKey] || []).concat(rows.slice(groupIndex, groupIndex + rowsToAdd));
133
+ currentCount += rowsToAdd;
134
+ groupIndex += rowsToAdd;
135
+ if (currentCount === maximumRowsPerPage) {
136
+ if (Object.keys(currentPage).length > 0) {
137
+ pageNumber++;
138
+ const div = document.createElement('div');
139
+ const root = (0, client_1.createRoot)(div);
140
+ (0, react_dom_1.flushSync)(() => {
141
+ root.render((0, jsx_runtime_1.jsx)(CustomDocumentComponent, { report: {
142
+ // @ts-ignore
143
+ ...report,
144
+ // @ts-ignore
145
+ sections: currentPage,
146
+ filters: Object.values(
147
+ // @ts-ignore
148
+ dashboardFilters[report.dashboardName]).map((elem) => elem.filter),
149
+ }, pageNumber: pageNumber, numberOfPages: numberOfPages, maximumRowsPerPage: maximumRowsPerPage }));
150
+ });
151
+ // const divContentBuffer = Buffer.from(div.innerHTML, 'utf-8');
152
+ // htmlBuffer = Buffer.concat([htmlBuffer, divContentBuffer]);
153
+ html += div.innerHTML;
154
+ currentPage = {};
155
+ currentCount = 0;
156
+ }
157
+ }
158
+ }
159
+ }
160
+ // Add the last page if it has remaining rows
161
+ if (Object.keys(currentPage).length > 0) {
162
+ pageNumber++;
163
+ const div = document.createElement('div');
164
+ const root = (0, client_1.createRoot)(div);
165
+ (0, react_dom_1.flushSync)(() => {
166
+ root.render((0, jsx_runtime_1.jsx)(CustomDocumentComponent, { report: {
167
+ // @ts-ignore
168
+ ...report,
169
+ // @ts-ignore
170
+ sections: currentPage,
171
+ filters: Object.values(
172
+ // @ts-ignore
173
+ dashboardFilters[report.dashboardName]).map((elem) => elem.filter),
174
+ }, pageNumber: pageNumber, numberOfPages: numberOfPages, maximumRowsPerPage: maximumRowsPerPage }));
175
+ });
176
+ // const divContentBuffer = Buffer.from(div.innerHTML, 'utf-8');
177
+ // htmlBuffer = Buffer.concat([htmlBuffer, divContentBuffer]);
178
+ html += div.innerHTML;
179
+ currentPage = {};
180
+ currentCount = 0;
181
+ }
182
+ const doc = new jspdf_1.default('landscape', 'pt', 'a4');
183
+ // const htmlStringFromBuffer = htmlBuffer.toString('utf-8');
184
+ doc.html(html, {
185
+ callback: function (doc) {
186
+ // @ts-ignore
187
+ doc.save(`${report.name}.pdf`);
188
+ setIsLoading(false);
189
+ },
190
+ });
95
191
  },
96
192
  isLoading,
97
193
  };
98
194
  };
99
195
  exports.useExport = useExport;
100
- function PDFDetail({ report, theme }) {
101
- const componentRef = (0, react_1.useRef)(null);
102
- const handlePrint = (0, react_to_print_1.useReactToPrint)({
103
- content: () => componentRef.current,
104
- pageStyle: `@page {
105
- size: letter;
106
- margin: 0;
107
- }
108
-
109
- body {
110
- margin: 2rem;
111
- }`,
112
- });
113
- (0, react_1.useLayoutEffect)(() => {
114
- setTimeout(() => handlePrint(), 1500);
115
- }, []);
116
- return ((0, jsx_runtime_1.jsxs)("div", { ref: componentRef, style: { display: 'flex', flexDirection: 'column', margin: '2rem' }, children: [(0, jsx_runtime_1.jsx)("div", { style: { display: 'flex', flexDirection: 'row', alignItems: 'center' }, children: (0, jsx_runtime_1.jsx)("h2", { style: {
196
+ function QuillCustomDocumentComponent({ report }) {
197
+ // const [theme] = useContext(ThemeContext);
198
+ return ((0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', flexDirection: 'column', margin: '2rem' }, children: [(0, jsx_runtime_1.jsx)("div", { style: { display: 'flex', flexDirection: 'row', alignItems: 'center' }, children: (0, jsx_runtime_1.jsx)("h2", { style: {
117
199
  fontSize: 18,
118
200
  fontWeight: '600',
119
201
  textAlign: 'left',
120
202
  paddingLeft: 10,
121
- color: theme?.primaryTextColor,
122
- }, children: report.name }) }), (0, jsx_runtime_1.jsxs)("div", { style: { paddingLeft: 20, paddingRight: 20 }, children: [report.chartType !== 'table' && ((0, jsx_runtime_1.jsx)(Chart_1.ChartDisplay, { overrideTheme: theme, config: report, containerStyle: {
203
+ // color: theme?.primaryTextColor,
204
+ }, children: report.name }) }), (0, jsx_runtime_1.jsxs)("div", { style: { paddingLeft: 20, paddingRight: 20 }, children: [report.chartType !== 'table' && ((0, jsx_runtime_1.jsx)(Chart_1.ChartDisplay, { overrideTheme: QuillProvider_1.defaultQuillTheme, config: report, containerStyle: {
123
205
  display: 'flex',
124
206
  height: 400,
125
207
  }, loading: false, isAnimationActive: false })), (0, jsx_runtime_1.jsx)("div", { style: {
@@ -1 +1 @@
1
- {"version":3,"file":"useQuill.d.ts","sourceRoot":"","sources":["../../../src/hooks/useQuill.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,WAAW,EAIZ,MAAM,yBAAyB,CAAC;AAGjC,UAAU,MAAM;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,QAAQ,cACR,MAAM,eACJ;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE;UAEtD,WAAW,GAAG,IAAI;aACf,OAAO;WACT,MAAM,GAAG,SAAS;sBACP,MAAM,KAAK,IAAI;qBAChB,MAAM,aAAa,MAAM,KAAK,IAAI;2BAEnC,WAAW,KAAK,MAAM,GAAG,SAAS,WACvC,SAAS;CAiLrB,CAAC;AAEF,eAAO,MAAM,QAAQ,cACR,MAAM;UAEX;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS;WAC7C,MAAM,GAAG,SAAS;CAoD1B,CAAC"}
1
+ {"version":3,"file":"useQuill.d.ts","sourceRoot":"","sources":["../../../src/hooks/useQuill.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,WAAW,EAIZ,MAAM,yBAAyB,CAAC;AAGjC,UAAU,MAAM;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,QAAQ,cACR,MAAM,eACJ;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE;UAEtD,WAAW,GAAG,IAAI;aACf,OAAO;WACT,MAAM,GAAG,SAAS;sBACP,MAAM,KAAK,IAAI;qBAChB,MAAM,aAAa,MAAM,KAAK,IAAI;2BAEnC,WAAW,KAAK,MAAM,GAAG,SAAS,WACvC,SAAS;CAmLrB,CAAC;AAEF,eAAO,MAAM,QAAQ,cACR,MAAM;UAEX;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS;WAC7C,MAAM,GAAG,SAAS;CAoD1B,CAAC"}
@@ -135,7 +135,9 @@ const useQuill = (reportId, pagination) => {
135
135
  };
136
136
  (0, react_1.useEffect)(() => {
137
137
  if (reportId) {
138
- fetchReportHelper(reportId, pagination ? true : false, pagination);
138
+ fetchReportHelper(reportId, pagination ? true : false, {
139
+ page: pagination,
140
+ });
139
141
  }
140
142
  }, [reportId, dashboard]);
141
143
  (0, react_1.useEffect)(() => {