@quillsql/react 2.13.19 → 2.13.21

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 (47) hide show
  1. package/dist/cjs/Chart.d.ts +1 -1
  2. package/dist/cjs/Chart.d.ts.map +1 -1
  3. package/dist/cjs/Chart.js +209 -43
  4. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  5. package/dist/cjs/ChartBuilder.js +0 -2
  6. package/dist/cjs/Context.d.ts.map +1 -1
  7. package/dist/cjs/Context.js +13 -15
  8. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  9. package/dist/cjs/components/Dashboard/DashboardFilter.js +19 -1
  10. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  11. package/dist/cjs/components/Dashboard/DataLoader.js +5 -11
  12. package/dist/cjs/hooks/useExport.d.ts.map +1 -1
  13. package/dist/cjs/hooks/useExport.js +101 -70
  14. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  15. package/dist/cjs/hooks/useQuill.js +21 -23
  16. package/dist/cjs/utils/filterProcessing.d.ts +2 -1
  17. package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
  18. package/dist/cjs/utils/filterProcessing.js +16 -0
  19. package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
  20. package/dist/cjs/utils/queryConstructor.js +2 -1
  21. package/dist/cjs/utils/report.d.ts +1 -1
  22. package/dist/cjs/utils/report.d.ts.map +1 -1
  23. package/dist/cjs/utils/report.js +6 -6
  24. package/dist/esm/Chart.d.ts +1 -1
  25. package/dist/esm/Chart.d.ts.map +1 -1
  26. package/dist/esm/Chart.js +214 -61
  27. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  28. package/dist/esm/ChartBuilder.js +0 -2
  29. package/dist/esm/Context.d.ts.map +1 -1
  30. package/dist/esm/Context.js +13 -15
  31. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  32. package/dist/esm/components/Dashboard/DashboardFilter.js +20 -2
  33. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  34. package/dist/esm/components/Dashboard/DataLoader.js +5 -11
  35. package/dist/esm/hooks/useExport.d.ts.map +1 -1
  36. package/dist/esm/hooks/useExport.js +102 -71
  37. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  38. package/dist/esm/hooks/useQuill.js +21 -23
  39. package/dist/esm/utils/filterProcessing.d.ts +2 -1
  40. package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
  41. package/dist/esm/utils/filterProcessing.js +15 -0
  42. package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
  43. package/dist/esm/utils/queryConstructor.js +2 -1
  44. package/dist/esm/utils/report.d.ts +1 -1
  45. package/dist/esm/utils/report.d.ts.map +1 -1
  46. package/dist/esm/utils/report.js +6 -6
  47. package/package.json +4 -4
@@ -14,7 +14,6 @@ const tableProcessing_1 = require("../../utils/tableProcessing");
14
14
  const Chart_1 = require("../../Chart");
15
15
  const merge_1 = require("../../utils/merge");
16
16
  const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
17
- const filterProcessing_1 = require("../../utils/filterProcessing");
18
17
  const constructReportFromItem = (item) => {
19
18
  return {
20
19
  ...report_1.EMPTY_INTERNAL_REPORT,
@@ -143,7 +142,7 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
143
142
  rowCountAbortController.current?.abort();
144
143
  rowCountAbortController.current = new AbortController();
145
144
  try {
146
- const rowCount = await (0, report_1.fetchReportRowCount)(item.id, client, true, (0, filterProcessing_1.mergeCustomFilters)(filters, userFilters ?? []), processing, schemaData.customFields, rowCountAbortController.current.signal);
145
+ const rowCount = await (0, report_1.fetchReportRowCount)(item.id, client, true, filters.concat(userFilters ?? []), processing, schemaData.customFields, rowCountAbortController.current.signal);
147
146
  rowCountAbortController.current = null;
148
147
  if (rowCount) {
149
148
  if (reportMode) {
@@ -211,7 +210,7 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
211
210
  updateTableRowsAbortController.current?.abort();
212
211
  updateTableRowsAbortController.current = new AbortController();
213
212
  const updatedProcessing = { ...additionalProcessing, ...processing };
214
- const paginatedRows = await (0, tableProcessing_1.fetchResultsByReport)(item.id, client, updatedProcessing, (0, filterProcessing_1.mergeCustomFilters)(filters, userFilters ?? []), schemaData.customFields, true, undefined, updateTableRowsAbortController.current.signal);
213
+ const paginatedRows = await (0, tableProcessing_1.fetchResultsByReport)(item.id, client, updatedProcessing, filters.concat(userFilters ?? []), schemaData.customFields, true, undefined, updateTableRowsAbortController.current.signal);
215
214
  updateTableRowsAbortController.current = null;
216
215
  if (paginatedRows.error) {
217
216
  throw new Error('Error fetching chart');
@@ -227,8 +226,7 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
227
226
  reportsDispatch({
228
227
  type: 'UPDATE_REPORT',
229
228
  id: item.id,
230
- data: { rows: tempRows },
231
- filtersApplied: userFilters,
229
+ data: { rows: tempRows, filtersApplied: userFilters },
232
230
  });
233
231
  }
234
232
  else {
@@ -280,7 +278,7 @@ function DataLoader({ item, children, filters, userFilters, additionalProcessing
280
278
  rowsAbortController.current = null;
281
279
  }
282
280
  else {
283
- const { report: fetchedReport, error } = await (0, report_1.fetchReport)(item.id, client, true, (0, filterProcessing_1.mergeCustomFilters)(filters, userFilters ?? []), processing, undefined, schemaData.customFields, true, false, rowsAbortController.current.signal);
281
+ const { report: fetchedReport, error } = await (0, report_1.fetchReport)(item.id, client, true, filters.concat(userFilters ?? []), processing, undefined, schemaData.customFields, true, false, rowsAbortController.current.signal);
284
282
  rowsAbortController.current = null;
285
283
  dispatch({
286
284
  type: 'ADD_DASHBOARD_ITEM',
@@ -367,9 +365,6 @@ const ChartDataLoader = ({ item, children, dateBucket, additionalProcessing, fil
367
365
  reportFilters,
368
366
  dashboardFilters,
369
367
  ]);
370
- (0, react_1.useEffect)(() => {
371
- console.log('chartReport memo', chartReport);
372
- }, [chartReport]);
373
368
  const fetchReportHelper = async (useReportTask = true) => {
374
369
  if (!client || !filters) {
375
370
  return;
@@ -403,7 +398,7 @@ const ChartDataLoader = ({ item, children, dateBucket, additionalProcessing, fil
403
398
  fetchReportAbortController.current = null;
404
399
  }
405
400
  else {
406
- const { report, error } = await (0, report_1.fetchReport)(item.id, client, useReportTask, (0, filterProcessing_1.mergeCustomFilters)(filters, userFilters ?? []), {
401
+ const { report, error } = await (0, report_1.fetchReport)(item.id, client, useReportTask, filters.concat(userFilters ?? []), {
407
402
  ...additionalProcessing,
408
403
  ...(item.pivot ? {} : { page: paginationProcessing_1.DEFAULT_PAGINATION }),
409
404
  }, dateBucket, schemaData.customFields, undefined, undefined, fetchReportAbortController.current.signal);
@@ -449,7 +444,6 @@ const ChartDataLoader = ({ item, children, dateBucket, additionalProcessing, fil
449
444
  fetchReportHelper();
450
445
  }
451
446
  }, [(reportMode ? reports : dashboard)[item.id]]);
452
- console.log('chartReport', chartReport);
453
447
  return children({
454
448
  isLoading: !chartReport || loading,
455
449
  data: chartReport,
@@ -1 +1 @@
1
- {"version":3,"file":"useExport.d.ts","sourceRoot":"","sources":["../../../src/hooks/useExport.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAyD/C,eAAO,MAAM,SAAS,cACT,MAAM,mEAMd;IACD,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,GAAG,CAAC,OAAO,CAAC;IAChE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;;;;;;;;;;;;CAoMF,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"}
1
+ {"version":3,"file":"useExport.d.ts","sourceRoot":"","sources":["../../../src/hooks/useExport.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AA0D/C,eAAO,MAAM,SAAS,cACT,MAAM,mEAMd;IACD,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,GAAG,CAAC,OAAO,CAAC;IAChE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;;;;;;;;;;;;CAyOF,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"}
@@ -57,6 +57,7 @@ const useExport = (reportId, { CustomDocumentComponent = QuillCustomDocumentComp
57
57
  sectionField, } = {}) => {
58
58
  const { dashboardFilters } = (0, react_1.useContext)(Context_1.DashboardFiltersContext);
59
59
  const [dashboard] = (0, react_1.useContext)(Context_1.DashboardContext);
60
+ const { reportFilters } = (0, react_1.useContext)(Context_1.ReportFiltersContext);
60
61
  const specificDashboardFilters = (0, react_1.useMemo)(() => {
61
62
  if (!reportId) {
62
63
  return [];
@@ -70,6 +71,11 @@ sectionField, } = {}) => {
70
71
  return dashboardFilter.filter;
71
72
  });
72
73
  }, [dashboardFilters, dashboard, reportId]);
74
+ const specificReportFilters = (0, react_1.useMemo)(() => {
75
+ if (!reportId)
76
+ return [];
77
+ return Object.values(reportFilters[reportId] ?? []).map((f) => f.filter);
78
+ }, [reportFilters, reportId]);
73
79
  // const [theme] = useContext(ThemeContext);
74
80
  const [client] = (0, react_1.useContext)(Context_1.ClientContext);
75
81
  const [isCSVLoading, setIsCSVLoading] = (0, react_1.useState)(false);
@@ -83,7 +89,9 @@ sectionField, } = {}) => {
83
89
  return;
84
90
  }
85
91
  setIsCSVLoading(true);
86
- const resp = await getExportData(client, specificDashboardFilters, reportId);
92
+ const resp = await getExportData(client, specificReportFilters.length > 0
93
+ ? specificReportFilters
94
+ : specificDashboardFilters, reportId);
87
95
  (0, csv_1.downloadCSV)({
88
96
  rows: resp.pivot && resp.pivotRows ? resp.pivotRows : resp.rows,
89
97
  fields: resp.pivot && resp.pivotColumns ? resp.pivotColumns : resp.columns,
@@ -93,22 +101,11 @@ sectionField, } = {}) => {
93
101
  },
94
102
  downloadPDF: async () => {
95
103
  setIsPDFLoading(true);
96
- // @ts-ignore
97
- let report;
98
- if (reportId &&
99
- dashboard[reportId] &&
100
- dashboardFilters &&
101
- // @ts-ignore
102
- dashboardFilters[dashboard[reportId].dashboardName]) {
103
- const { report: fetchedReport } = await (0, report_1.fetchReport)(reportId, client, true, Object.values(
104
- // @ts-ignore
105
- dashboardFilters[dashboard[reportId].dashboardName]).map((elem) => elem.filter));
106
- report = fetchedReport;
107
- }
108
- else {
109
- const { report: fetchedReport } = await (0, report_1.fetchReport)(reportId, client, true, []);
110
- report = fetchedReport;
111
- }
104
+ const filters = specificReportFilters.length > 0
105
+ ? specificReportFilters
106
+ : specificDashboardFilters;
107
+ const { report: fetchedReport } = await (0, report_1.fetchReport)(reportId, client, true, filters);
108
+ const report = fetchedReport;
112
109
  let groupedRows = {};
113
110
  if (sectionField) {
114
111
  groupedRows = (report?.rows || []).reduce((acc, row) => {
@@ -128,65 +125,99 @@ sectionField, } = {}) => {
128
125
  let currentPage = {};
129
126
  let currentCount = 0;
130
127
  let pageNumber = 1;
131
- // Iterate over each group of rows
132
- for (const groupKey in groupedRows) {
133
- // @ts-ignore
134
- const rows = groupedRows[groupKey];
135
- let groupIndex = 0;
136
- while (groupIndex < rows.length) {
137
- const remainingRows = rows.length - groupIndex;
128
+ if (sectionField) {
129
+ // Iterate over each group of rows
130
+ for (const groupKey in groupedRows) {
131
+ // @ts-ignore
132
+ const rows = groupedRows[groupKey];
133
+ let groupIndex = 0;
134
+ while (groupIndex < rows.length) {
135
+ const remainingRows = rows.length - groupIndex;
136
+ const availableSpace = maximumRowsPerPage - currentCount;
137
+ const rowsToAdd = Math.min(remainingRows, availableSpace);
138
+ // @ts-ignore
139
+ currentPage[groupKey] = (currentPage[groupKey] || []).concat(rows.slice(groupIndex, groupIndex + rowsToAdd));
140
+ currentCount += rowsToAdd;
141
+ groupIndex += rowsToAdd;
142
+ if (currentCount === maximumRowsPerPage) {
143
+ if (Object.keys(currentPage).length > 0) {
144
+ pageNumber++;
145
+ const div = document.createElement('div');
146
+ const root = (0, client_1.createRoot)(div);
147
+ (0, react_dom_1.flushSync)(() => {
148
+ root.render((0, jsx_runtime_1.jsx)(CustomDocumentComponent, { report: {
149
+ // @ts-ignore
150
+ ...report,
151
+ // @ts-ignore
152
+ sections: currentPage,
153
+ filters,
154
+ }, pageNumber: pageNumber, numberOfPages: numberOfPages, maximumRowsPerPage: maximumRowsPerPage }));
155
+ });
156
+ // const divContentBuffer = Buffer.from(div.innerHTML, 'utf-8');
157
+ // htmlBuffer = Buffer.concat([htmlBuffer, divContentBuffer]);
158
+ html += div.innerHTML;
159
+ currentPage = {};
160
+ currentCount = 0;
161
+ }
162
+ }
163
+ }
164
+ }
165
+ // Add the last page if it has remaining rows
166
+ if (Object.keys(currentPage).length > 0) {
167
+ pageNumber++;
168
+ const div = document.createElement('div');
169
+ const root = (0, client_1.createRoot)(div);
170
+ (0, react_dom_1.flushSync)(() => {
171
+ root.render((0, jsx_runtime_1.jsx)(CustomDocumentComponent, { report: {
172
+ // @ts-ignore
173
+ ...report,
174
+ // @ts-ignore
175
+ sections: currentPage,
176
+ filters,
177
+ }, pageNumber: pageNumber, numberOfPages: numberOfPages, maximumRowsPerPage: maximumRowsPerPage }));
178
+ });
179
+ // const divContentBuffer = Buffer.from(div.innerHTML, 'utf-8');
180
+ // htmlBuffer = Buffer.concat([htmlBuffer, divContentBuffer]);
181
+ html += div.innerHTML;
182
+ currentPage = {};
183
+ currentCount = 0;
184
+ }
185
+ }
186
+ else {
187
+ const rows = report.rows;
188
+ for (let i = 0; i < rows.length; i += maximumRowsPerPage) {
189
+ const remainingRows = rows.length - i * maximumRowsPerPage;
138
190
  const availableSpace = maximumRowsPerPage - currentCount;
139
191
  const rowsToAdd = Math.min(remainingRows, availableSpace);
140
- // @ts-ignore
141
- currentPage[groupKey] = (currentPage[groupKey] || []).concat(rows.slice(groupIndex, groupIndex + rowsToAdd));
142
192
  currentCount += rowsToAdd;
143
- groupIndex += rowsToAdd;
144
193
  if (currentCount === maximumRowsPerPage) {
145
- if (Object.keys(currentPage).length > 0) {
146
- pageNumber++;
147
- const div = document.createElement('div');
148
- const root = (0, client_1.createRoot)(div);
149
- (0, react_dom_1.flushSync)(() => {
150
- root.render((0, jsx_runtime_1.jsx)(CustomDocumentComponent, { report: {
151
- // @ts-ignore
152
- ...report,
153
- // @ts-ignore
154
- sections: currentPage,
155
- filters: Object.values(
156
- // @ts-ignore
157
- dashboardFilters[report.dashboardName]).map((elem) => elem.filter),
158
- }, pageNumber: pageNumber, numberOfPages: numberOfPages, maximumRowsPerPage: maximumRowsPerPage }));
159
- });
160
- // const divContentBuffer = Buffer.from(div.innerHTML, 'utf-8');
161
- // htmlBuffer = Buffer.concat([htmlBuffer, divContentBuffer]);
162
- html += div.innerHTML;
163
- currentPage = {};
164
- currentCount = 0;
165
- }
194
+ pageNumber++;
195
+ const div = document.createElement('div');
196
+ const root = (0, client_1.createRoot)(div);
197
+ (0, react_dom_1.flushSync)(() => {
198
+ root.render((0, jsx_runtime_1.jsx)(CustomDocumentComponent, { report: report, pageNumber: pageNumber, numberOfPages: numberOfPages, maximumRowsPerPage: maximumRowsPerPage }));
199
+ });
200
+ // const divContentBuffer = Buffer.from(div.innerHTML, 'utf-8');
201
+ // htmlBuffer = Buffer.concat([htmlBuffer, divContentBuffer]);
202
+ html += div.innerHTML;
203
+ console.log('html', html);
204
+ currentCount = 0;
166
205
  }
167
206
  }
168
- }
169
- // Add the last page if it has remaining rows
170
- if (Object.keys(currentPage).length > 0) {
171
- pageNumber++;
172
- const div = document.createElement('div');
173
- const root = (0, client_1.createRoot)(div);
174
- (0, react_dom_1.flushSync)(() => {
175
- root.render((0, jsx_runtime_1.jsx)(CustomDocumentComponent, { report: {
176
- // @ts-ignore
177
- ...report,
178
- // @ts-ignore
179
- sections: currentPage,
180
- filters: Object.values(
181
- // @ts-ignore
182
- dashboardFilters[report.dashboardName]).map((elem) => elem.filter),
183
- }, pageNumber: pageNumber, numberOfPages: numberOfPages, maximumRowsPerPage: maximumRowsPerPage }));
184
- });
185
- // const divContentBuffer = Buffer.from(div.innerHTML, 'utf-8');
186
- // htmlBuffer = Buffer.concat([htmlBuffer, divContentBuffer]);
187
- html += div.innerHTML;
188
- currentPage = {};
189
- currentCount = 0;
207
+ // Add the last page if it has remaining rows
208
+ if (currentCount < maximumRowsPerPage) {
209
+ pageNumber++;
210
+ const div = document.createElement('div');
211
+ const root = (0, client_1.createRoot)(div);
212
+ (0, react_dom_1.flushSync)(() => {
213
+ root.render((0, jsx_runtime_1.jsx)(CustomDocumentComponent, { report: report, pageNumber: pageNumber, numberOfPages: numberOfPages, maximumRowsPerPage: maximumRowsPerPage }));
214
+ });
215
+ // const divContentBuffer = Buffer.from(div.innerHTML, 'utf-8');
216
+ // htmlBuffer = Buffer.concat([htmlBuffer, divContentBuffer]);
217
+ html += div.innerHTML;
218
+ currentPage = {};
219
+ currentCount = 0;
220
+ }
190
221
  }
191
222
  const doc = new jspdf_1.default('landscape', 'pt', 'a4');
192
223
  // const htmlStringFromBuffer = htmlBuffer.toString('utf-8');
@@ -1 +1 @@
1
- {"version":3,"file":"useQuill.d.ts","sourceRoot":"","sources":["../../../src/hooks/useQuill.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,WAAW,EAIZ,MAAM,yBAAyB,CAAC;AAIjC,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,KAC3D;IACD,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,SAAS,EACL,CAAC,CAAC,QAAQ,EAAE,WAAW,KAAK,MAAM,GAAG,SAAS,CAAC,GAC/C,CAAC,MAAM,SAAS,CAAC,CAAC;CA8MvB,CAAC"}
1
+ {"version":3,"file":"useQuill.d.ts","sourceRoot":"","sources":["../../../src/hooks/useQuill.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,WAAW,EAIZ,MAAM,yBAAyB,CAAC;AAIjC,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,KAC3D;IACD,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,SAAS,EACL,CAAC,CAAC,QAAQ,EAAE,WAAW,KAAK,MAAM,GAAG,SAAS,CAAC,GAC/C,CAAC,MAAM,SAAS,CAAC,CAAC;CA+MvB,CAAC"}
@@ -13,17 +13,9 @@ const useQuill = (reportId, pagination) => {
13
13
  const [dashboard] = (0, react_1.useContext)(Context_1.DashboardContext);
14
14
  const { dashboardFilters } = (0, react_1.useContext)(Context_1.DashboardFiltersContext);
15
15
  const { reportFilters, reportFiltersDispatch } = (0, react_1.useContext)(Context_1.ReportFiltersContext);
16
- const specificDashboardFilters = (0, react_1.useMemo)(() => {
17
- if (!reportId)
18
- return [];
19
- const dashboardName = reports[reportId]?.dashboardName;
20
- if (!dashboardName)
21
- return [];
22
- return Object.values(dashboardFilters[dashboardName] ?? {}).map((f) => f.filter);
23
- }, [dashboardFilters, reportId, dashboard]);
24
16
  const specificReportFilters = (0, react_1.useMemo)(() => {
25
17
  if (!reportId)
26
- return [];
18
+ return null;
27
19
  return Object.values(reportFilters[reportId] ?? []).map((f) => f.filter);
28
20
  }, [reportFilters, reportId]);
29
21
  const [schemaData] = (0, react_1.useContext)(Context_1.SchemaDataContext);
@@ -33,7 +25,7 @@ const useQuill = (reportId, pagination) => {
33
25
  const [previousPage, setPreviousPage] = (0, react_1.useState)(0);
34
26
  const processedReport = (0, react_1.useMemo)(() => {
35
27
  return reportId && (reports[reportId] || dashboard[reportId])
36
- ? (0, report_1.convertInternalReportToReport)((0, merge_1.mergeComparisonRange)(reports[reportId] || dashboard[reportId]), specificReportFilters)
28
+ ? (0, report_1.convertInternalReportToReport)((0, merge_1.mergeComparisonRange)(reports[reportId] || dashboard[reportId]), specificReportFilters ?? [], 'useQuill')
37
29
  : undefined;
38
30
  }, [
39
31
  reportId,
@@ -140,18 +132,9 @@ const useQuill = (reportId, pagination) => {
140
132
  setLoading(false);
141
133
  return;
142
134
  }
143
- if (specificDashboardFilters.length && !specificReportFilters.length) {
144
- reportFiltersDispatch({
145
- type: 'ADD_REPORT_FILTERS',
146
- id: curReportId,
147
- data: Object.values(dashboardFilters[curReportId] ?? []),
148
- });
149
- }
150
135
  setLoading(true);
151
136
  try {
152
- fetchIndividualReport(curReportId, 'useQuill', true, specificReportFilters, [], additionalProcessing).then(() => {
153
- console.log('fetched report', reports[curReportId]);
154
- });
137
+ await fetchIndividualReport(curReportId, 'useQuill', true, specificReportFilters || [], [], additionalProcessing);
155
138
  }
156
139
  catch (error) {
157
140
  setError(error.message ?? 'Error fetching report');
@@ -161,15 +144,30 @@ const useQuill = (reportId, pagination) => {
161
144
  }
162
145
  };
163
146
  (0, react_1.useEffect)(() => {
164
- if (reportId) {
147
+ if (reportId && specificReportFilters) {
165
148
  fetchReportHelper(reportId, {
166
149
  page: pagination,
167
150
  });
168
151
  }
169
- }, [reportId]);
152
+ // if we don't have report filters, we need set those
153
+ if (reportId && !specificReportFilters) {
154
+ // should always resolve to some dashboard name given that spacificDashboardFilters is not empty
155
+ const dashboardName = reportId && reports[reportId]
156
+ ? reports[reportId].dashboardName
157
+ : '';
158
+ reportFiltersDispatch({
159
+ type: 'ADD_REPORT_FILTERS',
160
+ id: reportId,
161
+ data: dashboardName
162
+ ? Object.values(dashboardFilters[dashboardName] ?? {})
163
+ : [],
164
+ });
165
+ }
166
+ }, [reportId, specificReportFilters]);
170
167
  return {
171
168
  data: processedReport ?? null,
172
- loading,
169
+ // rows is undefined sometimes when loading is false ??? @sam
170
+ loading: !processedReport || !processedReport.rows || loading,
173
171
  error,
174
172
  fetchMore,
175
173
  setSort,
@@ -1,4 +1,4 @@
1
- import { FieldType, InternalFilter, DashboardFilter, DashboardDateFilter } from '../models/Filter';
1
+ import { FieldType, InternalFilter, DashboardFilter, DashboardDateFilter, Filter } from '../models/Filter';
2
2
  import { QuillReport } from '../models/Report';
3
3
  import { UniqueValuesByColumn } from '../models/Tables';
4
4
  import { FilterTreeNode } from './astFilterProcessing';
@@ -28,6 +28,7 @@ export declare function buildQueryFromFilters(baseAst: any, filters: FilterTreeN
28
28
  error?: string;
29
29
  }>;
30
30
  export declare function mergeCustomFilters(filters: DashboardFilter[], customFilters: InternalFilter[]): any[];
31
+ export declare function applyCustomFilterToDashDateFilter(customDateFilter: Filter, dashboardDateFilter: DashboardDateFilter): DashboardDateFilter;
31
32
  export declare function filtersAreEquivalent(filters1?: InternalFilter[], filters2?: InternalFilter[]): boolean;
32
33
  /**
33
34
  * Helper function that converts a UniqueValuesByColumn interface to a string map
@@ -1 +1 @@
1
- {"version":3,"file":"filterProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/filterProcessing.ts"],"names":[],"mappings":"AAQA,OAAO,EAEL,SAAS,EACT,cAAc,EAEd,eAAe,EAEf,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAmB,MAAM,uBAAuB,CAAC;AAGxE,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,CAoB5D;AAMD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,GAAG,OAkBnD;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,GAAU,EACjB,UAAU,EAAE,GAAU,EACtB,aAAa,EAAE,MAAM,OAmGtB;AAGD,eAAO,MAAM,OAAO,MAAO,MAAM,6EAwDhC,CAAC;AAEF;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAwB7D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,GAAG,GAAG,cAAc,EAAE,CAoCrE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,yBAgCnD;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,cAAc,EAAE,EACzB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,GAAG,GACV,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA2B/D;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,eAAe,EAAE,EAC1B,aAAa,EAAE,cAAc,EAAE,GAC9B,GAAG,EAAE,CAsCP;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,CAAC,EAAE,cAAc,EAAE,EAC3B,QAAQ,CAAC,EAAE,cAAc,EAAE,GAC1B,OAAO,CA+BT;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,oBAAoB,GAAG;IAC3E,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACzB,CASA;AAED,eAAO,MAAM,uBAAuB,WAC1B,mBAAmB,WAClB,WAAW,EAAE,iBACP,MAAM,KACpB,CAAC,mBAAmB,GAAG;IAAE,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,GAAG,SAqDpD,CAAC"}
1
+ {"version":3,"file":"filterProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/filterProcessing.ts"],"names":[],"mappings":"AAQA,OAAO,EAEL,SAAS,EACT,cAAc,EAEd,eAAe,EAEf,mBAAmB,EACnB,MAAM,EACP,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAmB,MAAM,uBAAuB,CAAC;AAGxE,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,CAoB5D;AAMD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,GAAG,OAkBnD;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,GAAU,EACjB,UAAU,EAAE,GAAU,EACtB,aAAa,EAAE,MAAM,OAmGtB;AAGD,eAAO,MAAM,OAAO,MAAO,MAAM,6EAwDhC,CAAC;AAEF;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAwB7D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,GAAG,GAAG,cAAc,EAAE,CAoCrE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,yBAgCnD;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,cAAc,EAAE,EACzB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,GAAG,GACV,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA2B/D;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,eAAe,EAAE,EAC1B,aAAa,EAAE,cAAc,EAAE,GAC9B,GAAG,EAAE,CAsCP;AAED,wBAAgB,iCAAiC,CAC/C,gBAAgB,EAAE,MAAM,EACxB,mBAAmB,EAAE,mBAAmB,GACvC,mBAAmB,CAiBrB;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,CAAC,EAAE,cAAc,EAAE,EAC3B,QAAQ,CAAC,EAAE,cAAc,EAAE,GAC1B,OAAO,CA+BT;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,oBAAoB,GAAG;IAC3E,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACzB,CASA;AAED,eAAO,MAAM,uBAAuB,WAC1B,mBAAmB,WAClB,WAAW,EAAE,iBACP,MAAM,KACpB,CAAC,mBAAmB,GAAG;IAAE,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,GAAG,SAqDpD,CAAC"}
@@ -9,6 +9,7 @@ exports.generateFilterStack = generateFilterStack;
9
9
  exports.filterStackToFilterTree = filterStackToFilterTree;
10
10
  exports.buildQueryFromFilters = buildQueryFromFilters;
11
11
  exports.mergeCustomFilters = mergeCustomFilters;
12
+ exports.applyCustomFilterToDashDateFilter = applyCustomFilterToDashDateFilter;
12
13
  exports.filtersAreEquivalent = filtersAreEquivalent;
13
14
  exports.uniqueValuesToStringMap = uniqueValuesToStringMap;
14
15
  const dateRangePickerUtils_1 = require("../DateRangePicker/dateRangePickerUtils");
@@ -378,6 +379,21 @@ function mergeCustomFilters(filters, customFilters) {
378
379
  ])
379
380
  .concat(customWithoutDate);
380
381
  }
382
+ function applyCustomFilterToDashDateFilter(customDateFilter, dashboardDateFilter) {
383
+ if (customDateFilter.value &&
384
+ typeof customDateFilter.value === 'object' &&
385
+ 'startDate' in customDateFilter.value &&
386
+ 'endDate' in customDateFilter.value) {
387
+ const startDate = customDateFilter.value.startDate;
388
+ const endDate = customDateFilter.value.endDate;
389
+ return {
390
+ ...dashboardDateFilter,
391
+ startDate: new Date(startDate),
392
+ endDate: new Date(endDate),
393
+ };
394
+ }
395
+ return dashboardDateFilter;
396
+ }
381
397
  function filtersAreEquivalent(filters1, filters2) {
382
398
  if (!filters1 && !filters2) {
383
399
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"queryConstructor.d.ts","sourceRoot":"","sources":["../../../src/utils/queryConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAoBxC,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,cAAc,CAAC,EAAE,MAAM,EAEvB,uBAAuB,CAAC,EAAE,OAAO,EACjC,sBAAsB,CAAC,EAAE,OAAO,UAqEjC;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,UAE1D;AAwDD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EAAE,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAsBrB;AAED,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAYrB;AAiDD,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAarB;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EAAE,EACrB,YAAY,EAAE,MAAM,EACpB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,EAC1B,UAAU,CAAC,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAgCpB"}
1
+ {"version":3,"file":"queryConstructor.d.ts","sourceRoot":"","sources":["../../../src/utils/queryConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAoBxC,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,cAAc,CAAC,EAAE,MAAM,EAEvB,uBAAuB,CAAC,EAAE,OAAO,EACjC,sBAAsB,CAAC,EAAE,OAAO,UAqEjC;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,UAE1D;AAwDD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EAAE,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAsBrB;AAED,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAYrB;AAiDD,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAcrB;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EAAE,EACrB,YAAY,EAAE,MAAM,EACpB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,EAC1B,UAAU,CAAC,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAgCpB"}
@@ -191,11 +191,12 @@ function generateDistinctQuerySnowflake(stringFields, query) {
191
191
  }
192
192
  function generateMinMaxRangeQueries(columnFields, query, databaseType) {
193
193
  const max = databaseType.toLowerCase() === 'snowflake' ? 'GREATEST' : 'MAX';
194
+ const min = databaseType.toLowerCase() === 'snowflake' ? 'LEAST' : 'MIN';
194
195
  const distinctQueries = columnFields.map((field) => {
195
196
  const wrappedField = ['postgresql'].includes(databaseType.toLowerCase())
196
197
  ? `"${field}"`
197
198
  : field;
198
- return `SELECT '${field}' AS field, MIN(${wrappedField}) AS min_range, ${max}(${wrappedField}) AS max_range FROM querytable`;
199
+ return `SELECT '${field}' AS field, ${min}(${wrappedField}) AS min_range, ${max}(${wrappedField}) AS max_range FROM querytable`;
199
200
  });
200
201
  const distinctQuery = distinctQueries.join(' UNION ALL ');
201
202
  return `WITH querytable AS (${query.replace(';', '')}) ` + distinctQuery;
@@ -46,7 +46,7 @@ export declare function saveReport({ report, dashboardItemId, client, }: {
46
46
  client: QuillProviderClient;
47
47
  }): Promise<any>;
48
48
  export declare const formatRowsFromReport: (report: any) => any;
49
- export declare function convertInternalReportToReport(report: QuillReportInternal, dashboardFilters: DashboardFilter[]): QuillReport;
49
+ export declare function convertInternalReportToReport(report: QuillReportInternal, dashboardFilters: DashboardFilter[], initiator?: string): QuillReport;
50
50
  export declare const fetchReportBuilderDataFromAST: (baseAst: any, formData: any, schema: Table[], client: QuillProviderClient, pivot?: Pivot, previousFormData?: any, currentTable?: string, previousRelevant?: {
51
51
  uniqueStrings: UniqueValuesByTable;
52
52
  dateRanges: DateRangesByColumn;
@@ -1 +1 @@
1
- {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ exports.convertInternalReportToReport = convertInternalReportToReport;
10
10
  const ChartBuilder_1 = require("../ChartBuilder");
11
11
  const ast_1 = require("../components/ReportBuilder/ast");
12
12
  const PivotModal_1 = require("../internals/ReportBuilder/PivotModal");
13
+ const Filter_1 = require("../models/Filter");
13
14
  const astProcessing_1 = require("./astProcessing");
14
15
  const columnProcessing_1 = require("./columnProcessing");
15
16
  const dashboard_1 = require("./dashboard");
@@ -142,7 +143,7 @@ async function fetchReport(reportId, client, useReportTask = true, filters = [],
142
143
  async function processReportResponse({ resp, client, filters, dateBucket, additionalProcessing, }) {
143
144
  const dashboardItem = {
144
145
  ...resp,
145
- filtersApplied: filters,
146
+ filtersApplied: filters?.filter((filter) => filter.filterType in Filter_1.FilterType),
146
147
  };
147
148
  if (resp.errorMessage) {
148
149
  throw new error_1.DataLoadError(resp?.errorMessage, {
@@ -159,10 +160,7 @@ async function processReportResponse({ resp, client, filters, dateBucket, additi
159
160
  (0, dataProcessing_1.parseValueFromBigQueryDates)(dashboardItem.compareRows, resp.fields);
160
161
  }
161
162
  }
162
- console.log('dashboardItem', dashboardItem);
163
- console.log('filters', filters);
164
163
  const reportInfo = await (0, dashboard_1.cleanDashboardItem)(dashboardItem, filters, client, dateBucket);
165
- console.log('reportInfo', reportInfo);
166
164
  if (additionalProcessing) {
167
165
  reportInfo.pagination = additionalProcessing.page;
168
166
  reportInfo.sort = additionalProcessing.sort;
@@ -284,7 +282,7 @@ const formatRowsFromReport = (report) => {
284
282
  });
285
283
  };
286
284
  exports.formatRowsFromReport = formatRowsFromReport;
287
- function convertInternalReportToReport(report, dashboardFilters) {
285
+ function convertInternalReportToReport(report, dashboardFilters, initiator) {
288
286
  try {
289
287
  if (!report) {
290
288
  return exports.EMPTY_REPORT;
@@ -292,7 +290,9 @@ function convertInternalReportToReport(report, dashboardFilters) {
292
290
  const formattedReport = {
293
291
  ...report,
294
292
  };
295
- if (formattedReport.pivot && (0, pivotProcessing_1.isValidPivot)(formattedReport.pivot)) {
293
+ if (formattedReport.pivot &&
294
+ (0, pivotProcessing_1.isValidPivot)(formattedReport.pivot) &&
295
+ initiator !== 'useQuill') {
296
296
  let columns = report.pivotColumns ?? report.columns;
297
297
  let rows = report.pivotRows ?? report.rows;
298
298
  if (report.chartType === 'table') {
@@ -204,7 +204,7 @@ export interface ChartProps {
204
204
  /** An override for the pivot date bucketing. */
205
205
  dateBucket?: string;
206
206
  }
207
- export default function Chart({ colors, reportId, className, containerStyle, isAnimationActive, hideXAxis, hideYAxis, hideCartesianGrid, hideHorizontalCartesianGrid, hideVerticalCartesianGrid, hideSubsequentXAxisTicks, cartesianGridLineStyle, cartesianGridLineColor, comparisonLineStyle, hideDateRangeFilter, mapColorsToFields, LoadingComponent, TableComponent, MetricComponent, filters, onClickChartElement, dateBucket, }: ChartProps): import("react/jsx-runtime").JSX.Element;
207
+ export default function Chart({ colors, reportId, className, containerStyle, isAnimationActive, hideXAxis, hideYAxis, hideCartesianGrid, hideHorizontalCartesianGrid, hideVerticalCartesianGrid, hideSubsequentXAxisTicks, cartesianGridLineStyle, cartesianGridLineColor, comparisonLineStyle, hideDateRangeFilter, hideFilters, mapColorsToFields, LoadingComponent, SelectComponent, MultiSelectComponent, DateRangePickerComponent, FilterContainerComponent, TableComponent, MetricComponent, filters, onClickChartElement, dateBucket, }: ChartProps): import("react/jsx-runtime").JSX.Element;
208
208
  interface ChartDisplayProps extends WithConfig {
209
209
  loading: boolean;
210
210
  ErrorComponent?: ({ errorMessage }: {
@@ -1 +1 @@
1
- {"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../src/Chart.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../src/Chart.tsx"],"names":[],"mappings":"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"}