@quillsql/react 2.12.30 → 2.12.32

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 (201) hide show
  1. package/dist/cjs/Chart.d.ts +6 -37
  2. package/dist/cjs/Chart.d.ts.map +1 -1
  3. package/dist/cjs/Chart.js +86 -327
  4. package/dist/cjs/ChartBuilder.d.ts +12 -49
  5. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  6. package/dist/cjs/ChartBuilder.js +68 -36
  7. package/dist/cjs/ChartEditor.d.ts +1 -1
  8. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  9. package/dist/cjs/ChartEditor.js +11 -7
  10. package/dist/cjs/Context.d.ts +4 -1
  11. package/dist/cjs/Context.d.ts.map +1 -1
  12. package/dist/cjs/Context.js +10 -4
  13. package/dist/cjs/Dashboard.d.ts +61 -114
  14. package/dist/cjs/Dashboard.d.ts.map +1 -1
  15. package/dist/cjs/Dashboard.js +261 -30
  16. package/dist/cjs/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  17. package/dist/cjs/DateRangePicker/DateRangePicker.js +0 -26
  18. package/dist/cjs/ReportBuilder.d.ts +1 -1
  19. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  20. package/dist/cjs/ReportBuilder.js +62 -97
  21. package/dist/cjs/SQLEditor.d.ts +2 -2
  22. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  23. package/dist/cjs/SQLEditor.js +10 -5
  24. package/dist/cjs/Table.d.ts.map +1 -1
  25. package/dist/cjs/Table.js +41 -43
  26. package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
  27. package/dist/cjs/components/Chart/BarChart.js +12 -1
  28. package/dist/cjs/components/Chart/LineChart.d.ts +2 -1
  29. package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
  30. package/dist/cjs/components/Chart/LineChart.js +25 -1
  31. package/dist/cjs/components/Dashboard/DataLoader.d.ts +7 -7
  32. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  33. package/dist/cjs/components/Dashboard/DataLoader.js +64 -28
  34. package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
  35. package/dist/cjs/components/Dashboard/MetricComponent.js +11 -45
  36. package/dist/cjs/components/Dashboard/TableComponent.d.ts +1 -1
  37. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  38. package/dist/cjs/components/Dashboard/TableComponent.js +1 -30
  39. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  40. package/dist/cjs/components/QuillMultiSelectWithCombo.js +16 -1
  41. package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -1
  42. package/dist/cjs/components/QuillSelectWithCombo.js +4 -1
  43. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts +10 -2
  44. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts.map +1 -1
  45. package/dist/cjs/components/ReportBuilder/FilterModal.js +94 -70
  46. package/dist/cjs/components/ReportBuilder/convert.d.ts +7 -2
  47. package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
  48. package/dist/cjs/components/ReportBuilder/convert.js +53 -1
  49. package/dist/cjs/components/ReportBuilder/ui.d.ts +6 -6
  50. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  51. package/dist/cjs/components/ReportBuilder/ui.js +6 -22
  52. package/dist/cjs/components/UiComponents.d.ts +26 -1
  53. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  54. package/dist/cjs/components/UiComponents.js +97 -4
  55. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  56. package/dist/cjs/hooks/useQuill.js +19 -3
  57. package/dist/cjs/index.d.ts +2 -1
  58. package/dist/cjs/index.d.ts.map +1 -1
  59. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +1 -0
  60. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  61. package/dist/cjs/models/Columns.d.ts +2 -1
  62. package/dist/cjs/models/Columns.d.ts.map +1 -1
  63. package/dist/cjs/models/Filter.d.ts +15 -4
  64. package/dist/cjs/models/Filter.d.ts.map +1 -1
  65. package/dist/cjs/models/Filter.js +9 -1
  66. package/dist/cjs/models/Report.d.ts +10 -23
  67. package/dist/cjs/models/Report.d.ts.map +1 -1
  68. package/dist/cjs/utils/astFilterProcessing.d.ts.map +1 -1
  69. package/dist/cjs/utils/astFilterProcessing.js +37 -2
  70. package/dist/cjs/utils/columnProcessing.d.ts +2 -0
  71. package/dist/cjs/utils/columnProcessing.d.ts.map +1 -1
  72. package/dist/cjs/utils/columnProcessing.js +54 -1
  73. package/dist/cjs/utils/dashboard.d.ts +1 -1
  74. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  75. package/dist/cjs/utils/dashboard.js +3 -56
  76. package/dist/cjs/utils/dataProcessing.d.ts +4 -2
  77. package/dist/cjs/utils/dataProcessing.d.ts.map +1 -1
  78. package/dist/cjs/utils/dataProcessing.js +18 -1
  79. package/dist/cjs/utils/dates.d.ts +2 -1
  80. package/dist/cjs/utils/dates.d.ts.map +1 -1
  81. package/dist/cjs/utils/dates.js +23 -1
  82. package/dist/cjs/utils/filterProcessing.d.ts +7 -1
  83. package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
  84. package/dist/cjs/utils/filterProcessing.js +100 -13
  85. package/dist/cjs/utils/pivotConstructor.d.ts +2 -1
  86. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  87. package/dist/cjs/utils/pivotConstructor.js +7 -1
  88. package/dist/cjs/utils/report.d.ts +4 -1
  89. package/dist/cjs/utils/report.d.ts.map +1 -1
  90. package/dist/cjs/utils/report.js +94 -7
  91. package/dist/cjs/utils/tableProcessing.d.ts +1 -1
  92. package/dist/esm/Chart.d.ts +6 -37
  93. package/dist/esm/Chart.d.ts.map +1 -1
  94. package/dist/esm/Chart.js +87 -329
  95. package/dist/esm/ChartBuilder.d.ts +12 -49
  96. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  97. package/dist/esm/ChartBuilder.js +68 -33
  98. package/dist/esm/ChartEditor.d.ts +1 -1
  99. package/dist/esm/ChartEditor.d.ts.map +1 -1
  100. package/dist/esm/ChartEditor.js +11 -7
  101. package/dist/esm/Context.d.ts +4 -1
  102. package/dist/esm/Context.d.ts.map +1 -1
  103. package/dist/esm/Context.js +9 -3
  104. package/dist/esm/Dashboard.d.ts +61 -114
  105. package/dist/esm/Dashboard.d.ts.map +1 -1
  106. package/dist/esm/Dashboard.js +263 -32
  107. package/dist/esm/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  108. package/dist/esm/DateRangePicker/DateRangePicker.js +0 -26
  109. package/dist/esm/ReportBuilder.d.ts +1 -1
  110. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  111. package/dist/esm/ReportBuilder.js +64 -99
  112. package/dist/esm/SQLEditor.d.ts +2 -2
  113. package/dist/esm/SQLEditor.d.ts.map +1 -1
  114. package/dist/esm/SQLEditor.js +11 -6
  115. package/dist/esm/Table.d.ts.map +1 -1
  116. package/dist/esm/Table.js +42 -44
  117. package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
  118. package/dist/esm/components/Chart/BarChart.js +13 -2
  119. package/dist/esm/components/Chart/LineChart.d.ts +2 -1
  120. package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
  121. package/dist/esm/components/Chart/LineChart.js +26 -2
  122. package/dist/esm/components/Dashboard/DataLoader.d.ts +7 -7
  123. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  124. package/dist/esm/components/Dashboard/DataLoader.js +65 -29
  125. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
  126. package/dist/esm/components/Dashboard/MetricComponent.js +11 -45
  127. package/dist/esm/components/Dashboard/TableComponent.d.ts +1 -1
  128. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  129. package/dist/esm/components/Dashboard/TableComponent.js +1 -30
  130. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  131. package/dist/esm/components/QuillMultiSelectWithCombo.js +16 -1
  132. package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -1
  133. package/dist/esm/components/QuillSelectWithCombo.js +5 -2
  134. package/dist/esm/components/ReportBuilder/FilterModal.d.ts +10 -2
  135. package/dist/esm/components/ReportBuilder/FilterModal.d.ts.map +1 -1
  136. package/dist/esm/components/ReportBuilder/FilterModal.js +94 -70
  137. package/dist/esm/components/ReportBuilder/convert.d.ts +7 -2
  138. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
  139. package/dist/esm/components/ReportBuilder/convert.js +51 -0
  140. package/dist/esm/components/ReportBuilder/ui.d.ts +6 -6
  141. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  142. package/dist/esm/components/ReportBuilder/ui.js +6 -22
  143. package/dist/esm/components/UiComponents.d.ts +26 -1
  144. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  145. package/dist/esm/components/UiComponents.js +95 -3
  146. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  147. package/dist/esm/hooks/useQuill.js +19 -3
  148. package/dist/esm/index.d.ts +2 -1
  149. package/dist/esm/index.d.ts.map +1 -1
  150. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +1 -0
  151. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  152. package/dist/esm/models/Columns.d.ts +2 -1
  153. package/dist/esm/models/Columns.d.ts.map +1 -1
  154. package/dist/esm/models/Filter.d.ts +15 -4
  155. package/dist/esm/models/Filter.d.ts.map +1 -1
  156. package/dist/esm/models/Filter.js +8 -0
  157. package/dist/esm/models/Report.d.ts +10 -23
  158. package/dist/esm/models/Report.d.ts.map +1 -1
  159. package/dist/esm/utils/astFilterProcessing.d.ts.map +1 -1
  160. package/dist/esm/utils/astFilterProcessing.js +38 -3
  161. package/dist/esm/utils/columnProcessing.d.ts +2 -0
  162. package/dist/esm/utils/columnProcessing.d.ts.map +1 -1
  163. package/dist/esm/utils/columnProcessing.js +52 -0
  164. package/dist/esm/utils/dashboard.d.ts +1 -1
  165. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  166. package/dist/esm/utils/dashboard.js +3 -56
  167. package/dist/esm/utils/dataProcessing.d.ts +4 -2
  168. package/dist/esm/utils/dataProcessing.d.ts.map +1 -1
  169. package/dist/esm/utils/dataProcessing.js +16 -0
  170. package/dist/esm/utils/dates.d.ts +2 -1
  171. package/dist/esm/utils/dates.d.ts.map +1 -1
  172. package/dist/esm/utils/dates.js +21 -0
  173. package/dist/esm/utils/filterProcessing.d.ts +7 -1
  174. package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
  175. package/dist/esm/utils/filterProcessing.js +97 -12
  176. package/dist/esm/utils/pivotConstructor.d.ts +2 -1
  177. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  178. package/dist/esm/utils/pivotConstructor.js +7 -1
  179. package/dist/esm/utils/report.d.ts +4 -1
  180. package/dist/esm/utils/report.d.ts.map +1 -1
  181. package/dist/esm/utils/report.js +92 -6
  182. package/dist/esm/utils/tableProcessing.d.ts +1 -1
  183. package/package.json +1 -1
  184. package/dist/esm/components/ReportBuilder/convert.uspec.d.ts +0 -2
  185. package/dist/esm/components/ReportBuilder/convert.uspec.d.ts.map +0 -1
  186. package/dist/esm/components/ReportBuilder/convert.uspec.js +0 -1152
  187. package/dist/esm/utils/astFilterProcessing.uspec.d.ts +0 -2
  188. package/dist/esm/utils/astFilterProcessing.uspec.d.ts.map +0 -1
  189. package/dist/esm/utils/astFilterProcessing.uspec.js +0 -2729
  190. package/dist/esm/utils/dataProcessing.uspec.d.ts +0 -2
  191. package/dist/esm/utils/dataProcessing.uspec.d.ts.map +0 -1
  192. package/dist/esm/utils/dataProcessing.uspec.js +0 -204
  193. package/dist/esm/utils/queryConstructor.uspec.d.ts +0 -2
  194. package/dist/esm/utils/queryConstructor.uspec.d.ts.map +0 -1
  195. package/dist/esm/utils/queryConstructor.uspec.js +0 -223
  196. package/dist/esm/utils/report.ispec.d.ts +0 -2
  197. package/dist/esm/utils/report.ispec.d.ts.map +0 -1
  198. package/dist/esm/utils/report.ispec.js +0 -46
  199. package/dist/esm/utils/tableProcessing.ispec.d.ts +0 -2
  200. package/dist/esm/utils/tableProcessing.ispec.d.ts.map +0 -1
  201. package/dist/esm/utils/tableProcessing.ispec.js +0 -61
@@ -41,10 +41,10 @@ const PivotForm_1 = __importDefault(require("./internals/ReportBuilder/PivotForm
41
41
  const schema_1 = require("./utils/schema");
42
42
  const dates_1 = require("./utils/dates");
43
43
  const FilterModal_1 = __importDefault(require("./components/ReportBuilder/FilterModal"));
44
- const Filter_1 = require("./models/Filter");
45
44
  const astFilterProcessing_1 = require("./utils/astFilterProcessing");
46
45
  const useAstToFilterTree_1 = __importDefault(require("./hooks/useAstToFilterTree"));
47
- const QuillMultiSelect_1 = require("./components/QuillMultiSelect");
46
+ const filterProcessing_1 = require("./utils/filterProcessing");
47
+ const QuillMultiSelectWithCombo_1 = require("./components/QuillMultiSelectWithCombo");
48
48
  const paginationProcessing_1 = require("./utils/paginationProcessing");
49
49
  const report_1 = require("./utils/report");
50
50
  exports.QUILL_SERVER = (typeof process !== 'undefined' && process?.env?.QUILL_SERVER_HOST) ||
@@ -80,7 +80,7 @@ exports.QUILL_SERVER = (typeof process !== 'undefined' && process?.env?.QUILL_SE
80
80
  * ### Report Builder API
81
81
  * @see https://docs.quillsql.com/components/report-builder
82
82
  */
83
- function ReportBuilder({ initialTableName = '', onSubmitEditReport = () => void null, onSubmitCreateReport = () => void null, destinationDashboard = undefined, organizationName = '', ButtonComponent = UiComponents_1.MemoizedButton, SecondaryButtonComponent = UiComponents_1.MemoizedSecondaryButton, DeleteButtonComponent = UiComponents_1.MemoizedDeleteButton, ModalComponent = UiComponents_1.MemoizedModal, TextInputComponent = UiComponents_2.QuillTextInput, SelectComponent = QuillSelect_1.QuillSelectComponent, MultiSelectComponent = QuillMultiSelect_1.QuillMultiSelectComponent, TableComponent = UiComponents_1.QuillTableSQLEditorComponent, PopoverComponent = UiComponents_1.MemoizedPopover, TabsComponent = UiComponents_1.QuillTabs, CheckboxComponent = UiComponents_1.MemoizedCheckbox, SidebarComponent = ui_1.QuillSidebar, ContainerComponent = ui_1.CustomContainer, SelectColumnComponent = ui_1.QuillSelectColumn, DraggableColumnComponent = ui_1.QuillDraggableColumn, SidebarHeadingComponent = ui_1.QuillSidebarHeading, FilterPopoverComponent = ui_1.QuillFilterPopover, SortPopoverComponent = ui_1.QuillSortPopover, LimitPopoverComponent = ui_1.QuillLimitPopover, CardComponent = QuillCard_1.QuillCard, LabelComponent = UiComponents_1.MemoizedLabel, HeaderComponent = UiComponents_1.MemoizedHeader, SubHeaderComponent = UiComponents_1.MemoizedSubHeader, TextComponent = UiComponents_1.MemoizedText, ErrorMessageComponent = UiComponents_1.QuillErrorMessageComponent, ChartBuilderInputRowContainer = UiComponents_1.QuillChartBuilderInputRowContainer, ChartBuilderInputColumnContainer = UiComponents_1.QuillChartBuilderInputColumnContainer, PivotRowContainer = UiComponents_1.QuillPivotRowContainer, PivotColumnContainer = UiComponents_1.QuillPivotColumnContainer, LoadingComponent = UiComponents_1.QuillLoadingComponent, ColumnSearchEmptyState = UiComponents_1.QuillColumnSearchEmptyState, ChartBuilderFormContainer = UiComponents_1.QuillChartBuilderFormContainer, ChartBuilderModalComponent = UiComponents_1.MemoizedModal, isAdminEnabled = false, isAIEnabled = true, showChartBuilderTableFormatOptions = true, containerStyle, className, pivotRecommendationsEnabled = true, reportId, hideCopySQL = true, isChartBuilderHorizontalView = true, onClickChartElement, }) {
83
+ function ReportBuilder({ initialTableName = '', onSubmitEditReport = () => void null, onSubmitCreateReport = () => void null, destinationDashboard = undefined, organizationName = '', ButtonComponent = UiComponents_1.MemoizedButton, SecondaryButtonComponent = UiComponents_1.MemoizedSecondaryButton, DeleteButtonComponent = UiComponents_1.MemoizedDeleteButton, ModalComponent = UiComponents_1.MemoizedModal, TextInputComponent = UiComponents_2.QuillTextInput, SelectComponent = QuillSelect_1.QuillSelectComponent, MultiSelectComponent = QuillMultiSelectWithCombo_1.QuillMultiSelectComponentWithCombo, TableComponent = UiComponents_1.QuillTableSQLEditorComponent, PopoverComponent = UiComponents_1.MemoizedPopover, TabsComponent = UiComponents_1.QuillTabs, CheckboxComponent = UiComponents_1.MemoizedCheckbox, SidebarComponent = ui_1.QuillSidebar, ContainerComponent = ui_1.CustomContainer, SelectColumnComponent = ui_1.QuillSelectColumn, DraggableColumnComponent = ui_1.QuillDraggableColumn, SidebarHeadingComponent = ui_1.QuillSidebarHeading, FilterPopoverComponent = ui_1.QuillFilterPopover, SortPopoverComponent = ui_1.QuillSortPopover, LimitPopoverComponent = ui_1.QuillLimitPopover, CardComponent = QuillCard_1.QuillCard, LabelComponent = UiComponents_1.MemoizedLabel, HeaderComponent = UiComponents_1.MemoizedHeader, SubHeaderComponent = UiComponents_1.MemoizedSubHeader, TextComponent = UiComponents_1.MemoizedText, ErrorMessageComponent = UiComponents_1.QuillErrorMessageComponent, ChartBuilderInputRowContainer = UiComponents_1.QuillChartBuilderInputRowContainer, ChartBuilderInputColumnContainer = UiComponents_1.QuillChartBuilderInputColumnContainer, PivotRowContainer = UiComponents_1.QuillPivotRowContainer, PivotColumnContainer = UiComponents_1.QuillPivotColumnContainer, LoadingComponent = UiComponents_1.QuillLoadingComponent, ColumnSearchEmptyState = UiComponents_1.QuillColumnSearchEmptyState, ChartBuilderFormContainer = UiComponents_1.QuillChartBuilderFormContainer, ChartBuilderModalComponent = UiComponents_1.MemoizedModal, isAdminEnabled = false, isAIEnabled = true, showChartBuilderTableFormatOptions = true, containerStyle, className, pivotRecommendationsEnabled = true, reportId, hideCopySQL = true, isChartBuilderHorizontalView = true, onClickChartElement, }) {
84
84
  const { data: report } = (0, useQuill_1.useQuill)(reportId || '');
85
85
  const [aiPrompt, setAiPrompt] = (0, react_1.useState)('');
86
86
  const [errorMessage, setErrorMessage] = (0, react_1.useState)('');
@@ -103,7 +103,7 @@ function ReportBuilder({ initialTableName = '', onSubmitEditReport = () => void
103
103
  const [rows, setRows] = (0, react_1.useState)([]);
104
104
  const [formattedRows, setFormattedRows] = (0, react_1.useState)([]);
105
105
  const [columns, setColumns] = (0, react_1.useState)([]);
106
- const [tempReport, setTempReport] = (0, react_1.useState)({});
106
+ const [tempReport, setTempReport] = (0, react_1.useState)(report_1.EMPTY_REPORT);
107
107
  const [topLevelBinaryOperator, setTopLevelBinaryOperator] = (0, react_1.useState)('AND');
108
108
  const [uniqueValues, setUniqueValues] = (0, react_1.useState)({});
109
109
  const [pivot, setPivot] = (0, react_1.useState)(null);
@@ -133,7 +133,6 @@ function ReportBuilder({ initialTableName = '', onSubmitEditReport = () => void
133
133
  // JANK: This is temp and stupid
134
134
  const [overrideRecommendations, setOverrideRecommendations] = (0, react_1.useState)(true);
135
135
  const [customFields, setCustomFields] = (0, react_1.useContext)(Context_1.CustomFieldContext);
136
- const [openFilterIndex, setOpenFilterIndex] = (0, react_1.useState)(null); // Sets open filter modals
137
136
  const [fieldValuesMap, setFieldValuesMap] = (0, react_1.useState)({}); // Mapping of unique values per field, used in string filter 'in' and 'not in'
138
137
  const filterTree = (0, useAstToFilterTree_1.default)(formData, client); // Stores the state of filters
139
138
  (0, react_1.useEffect)(() => {
@@ -1006,8 +1005,7 @@ function ReportBuilder({ initialTableName = '', onSubmitEditReport = () => void
1006
1005
  }
1007
1006
  };
1008
1007
  const onSortChange = (sort) => {
1009
- if (report &&
1010
- (0, paginationProcessing_1.shouldSortInMemory)(paginationProcessing_1.DEFAULT_PAGINATION, report.rowCount, !!report.pivot)) {
1008
+ if ((0, paginationProcessing_1.shouldSortInMemory)(paginationProcessing_1.DEFAULT_PAGINATION, numberOfRows, !!pivot)) {
1011
1009
  return;
1012
1010
  }
1013
1011
  const updatedProcessing = { page: paginationProcessing_1.DEFAULT_PAGINATION, sort };
@@ -1041,7 +1039,7 @@ function ReportBuilder({ initialTableName = '', onSubmitEditReport = () => void
1041
1039
  }
1042
1040
  catch (e) {
1043
1041
  setTableLoading(false);
1044
- setErrorMessage('Failed to run SQL query: ' + e);
1042
+ setErrorMessage('Failed to run SQL query: ' + e.message);
1045
1043
  setRows([]);
1046
1044
  setColumns([]);
1047
1045
  return;
@@ -1718,11 +1716,9 @@ function ReportBuilder({ initialTableName = '', onSubmitEditReport = () => void
1718
1716
  return validPivot;
1719
1717
  };
1720
1718
  /**
1721
- *
1722
1719
  * @param filterTree
1723
1720
  * Returns a list of filters to be displayed
1724
1721
  * Replaces the functionality of renderNodes in the context of filters
1725
- * Contains filterSentence, which replaces renderSentence
1726
1722
  */
1727
1723
  const renderFilters = (filterTree) => {
1728
1724
  let tree = filterTree;
@@ -1743,37 +1739,6 @@ function ReportBuilder({ initialTableName = '', onSubmitEditReport = () => void
1743
1739
  traverseTree(node.rightNode);
1744
1740
  }
1745
1741
  }
1746
- /**
1747
- * Returns a sentence to describe a Filter
1748
- */
1749
- function filterSentence(filter) {
1750
- let value = '';
1751
- if (filter.name == Filter_1.FilterNames.NullFilter) {
1752
- return `${(0, textProcessing_1.snakeAndCamelCaseToTitleCase)(filter.field)} ${filter.operator}`;
1753
- }
1754
- else if (filter.value === null || filter.value === undefined) {
1755
- return 'Error: filter missing value';
1756
- }
1757
- if (typeof filter.value === 'string' ||
1758
- typeof filter.value === 'number') {
1759
- value = filter.value.toString();
1760
- }
1761
- else if ('unit' in filter.value) {
1762
- if (filter.operator === Filter_1.DateOperator.InTheCurrent) {
1763
- value = `${filter.value.unit}`;
1764
- }
1765
- else {
1766
- value = `${filter.value.value} ${filter.value.unit}${filter.value.value === 1 ? '' : 's'}`;
1767
- }
1768
- }
1769
- else if ('startDate' in filter.value) {
1770
- value = `from ${filter.value.startDate}`;
1771
- }
1772
- else if (filter.value.length > 0) {
1773
- value = filter.value.join(', ');
1774
- }
1775
- return `${(0, textProcessing_1.snakeAndCamelCaseToTitleCase)(filter.field)} ${filter.operator} ${value}`;
1776
- }
1777
1742
  /**
1778
1743
  * Given an array of Filters (presumed to be in in-order state), generate
1779
1744
  * the corresponding Filter tree. Essentially the reverse of what traverseTree does
@@ -1862,67 +1827,66 @@ function ReportBuilder({ initialTableName = '', onSubmitEditReport = () => void
1862
1827
  } }) }, index));
1863
1828
  }
1864
1829
  else {
1865
- return ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)(ui_1.FilterPopoverWrapper, { schema: schema.find((s) => s.name === currentTable ||
1866
- s.displayName === currentTable) ?? schema[0], filter: item.value, filterLabel: item.value ? filterSentence(item.value) : '', index: index, openFilterIndex: openFilterIndex, setOpenFilterIndex: setOpenFilterIndex, FilterPopover: FilterPopoverComponent, FilterModal: FilterModal_1.default, fieldValuesMap: fieldValuesMap, ButtonComponent: ButtonComponent, SecondaryButtonComponent: SecondaryButtonComponent, SelectComponent: SelectComponent, TextInputComponent: TextInputComponent, MultiSelectComponent: MultiSelectComponent, handleFilterSave: (filter) => {
1867
- item.value = filter;
1868
- let newFormData = null;
1869
- if (tree) {
1870
- newFormData = (0, astFilterProcessing_1.filterTreeToAst)(tree, client.databaseType.toLowerCase());
1871
- }
1872
- const newAst = (0, util_1.deepCopy)({
1873
- ...constants_1.defaultAST,
1874
- ...baseAst,
1875
- ...(!baseAst?.columns && {
1876
- columns: getAllPossibleColumns().map((c) => {
1877
- const newColumn = (0, util_1.deepCopy)(constants_1.defaultColumn);
1878
- newColumn.expr.column = c.name;
1879
- return newColumn;
1880
- }),
1881
- }),
1882
- ...(!baseAst?.from && {
1883
- from: [{ ...constants_1.defaultTable, table: initialTableName }],
1830
+ return ((0, jsx_runtime_1.jsx)(ui_1.FilterPopoverWrapper, { schema: schema.find((s) => s.name === currentTable || s.displayName === currentTable) ?? schema[0], filter: item.value, filterLabel: item.value ? (0, filterProcessing_1.filterSentence)(item.value) : '', index: index, FilterTagComponent: FilterPopoverComponent, FilterModal: FilterModal_1.default, fieldValuesMap: fieldValuesMap, ButtonComponent: ButtonComponent, SecondaryButtonComponent: SecondaryButtonComponent, SelectComponent: SelectComponent, TextInputComponent: TextInputComponent, MultiSelectComponent: MultiSelectComponent, handleFilterSave: (filter) => {
1831
+ item.value = filter;
1832
+ let newFormData = null;
1833
+ if (tree) {
1834
+ newFormData = (0, astFilterProcessing_1.filterTreeToAst)(tree, client.databaseType.toLowerCase());
1835
+ }
1836
+ const newAst = (0, util_1.deepCopy)({
1837
+ ...constants_1.defaultAST,
1838
+ ...baseAst,
1839
+ ...(!baseAst?.columns && {
1840
+ columns: getAllPossibleColumns().map((c) => {
1841
+ const newColumn = (0, util_1.deepCopy)(constants_1.defaultColumn);
1842
+ newColumn.expr.column = c.name;
1843
+ return newColumn;
1884
1844
  }),
1885
- where: newFormData,
1886
- });
1887
- setBaseAst(newAst);
1888
- setFormData(newFormData);
1889
- fetchSqlQuery(newAst, newFormData);
1890
- }, handleFilterDelete: (i) => {
1891
- if (i > 0) {
1892
- filterStack.splice(i - 1, 2);
1845
+ }),
1846
+ ...(!baseAst?.from && {
1847
+ from: [{ ...constants_1.defaultTable, table: initialTableName }],
1848
+ }),
1849
+ where: newFormData,
1850
+ });
1851
+ setBaseAst(newAst);
1852
+ setFormData(newFormData);
1853
+ fetchSqlQuery(newAst, newFormData);
1854
+ }, handleFilterDelete: (i) => {
1855
+ if (i > 0) {
1856
+ filterStack.splice(i - 1, 2);
1857
+ }
1858
+ else {
1859
+ if (filterStack.length > 1) {
1860
+ filterStack.splice(i, 2);
1893
1861
  }
1894
1862
  else {
1895
- if (filterStack.length > 1) {
1896
- filterStack.splice(i, 2);
1897
- }
1898
- else {
1899
- filterStack.splice(i, 1);
1900
- }
1901
- }
1902
- tree = filterStackToFilterTree(filterStack);
1903
- let newFormData = null;
1904
- if (tree) {
1905
- newFormData = (0, astFilterProcessing_1.filterTreeToAst)(tree, client.databaseType.toLowerCase());
1863
+ filterStack.splice(i, 1);
1906
1864
  }
1907
- const newAst = (0, util_1.deepCopy)({
1908
- ...constants_1.defaultAST,
1909
- ...baseAst,
1910
- ...(!baseAst?.columns && {
1911
- columns: getAllPossibleColumns().map((c) => {
1912
- const newColumn = (0, util_1.deepCopy)(constants_1.defaultColumn);
1913
- newColumn.expr.column = c.name;
1914
- return newColumn;
1915
- }),
1916
- }),
1917
- ...(!baseAst?.from && {
1918
- from: [{ ...constants_1.defaultTable, table: initialTableName }],
1865
+ }
1866
+ tree = filterStackToFilterTree(filterStack);
1867
+ let newFormData = null;
1868
+ if (tree) {
1869
+ newFormData = (0, astFilterProcessing_1.filterTreeToAst)(tree, client.databaseType.toLowerCase());
1870
+ }
1871
+ const newAst = (0, util_1.deepCopy)({
1872
+ ...constants_1.defaultAST,
1873
+ ...baseAst,
1874
+ ...(!baseAst?.columns && {
1875
+ columns: getAllPossibleColumns().map((c) => {
1876
+ const newColumn = (0, util_1.deepCopy)(constants_1.defaultColumn);
1877
+ newColumn.expr.column = c.name;
1878
+ return newColumn;
1919
1879
  }),
1920
- where: newFormData,
1921
- });
1922
- setBaseAst(newAst);
1923
- setFormData(newFormData);
1924
- fetchSqlQuery(newAst, newFormData);
1925
- } }) }, index));
1880
+ }),
1881
+ ...(!baseAst?.from && {
1882
+ from: [{ ...constants_1.defaultTable, table: initialTableName }],
1883
+ }),
1884
+ where: newFormData,
1885
+ });
1886
+ setBaseAst(newAst);
1887
+ setFormData(newFormData);
1888
+ fetchSqlQuery(newAst, newFormData);
1889
+ } }, 'filter' + index));
1926
1890
  }
1927
1891
  }) }));
1928
1892
  };
@@ -2264,6 +2228,7 @@ function ReportBuilder({ initialTableName = '', onSubmitEditReport = () => void
2264
2228
  newAst = (0, convert_1.convertRemoveSimpleParentheses)(newAst);
2265
2229
  const table = (0, ast_1.getTableNames)(newAst)[0] ?? initialTableName;
2266
2230
  const tableAlias = (0, ast_1.getTableAliases)(newAst)[0] ?? initialTableName;
2231
+ newAst = (0, convert_1.convertUnaryToBinary)(newAst);
2267
2232
  newAst = (0, util_1.removeNonSelectedTableReferences)(newAst, tableAlias ?? table, getAllPossibleColumns().map((col) => col.name));
2268
2233
  const procesedColumns = (0, util_1.deepCopy)(newAst).columns?.map((column) => {
2269
2234
  if (column.expr.type === 'column_ref') {
@@ -1,5 +1,5 @@
1
1
  import React, { ReactNode } from 'react';
2
- import { QuillReport } from './Dashboard';
2
+ import { QuillReport } from './models/Report';
3
3
  /**
4
4
  * Props for the Quill SQLEditor component.
5
5
  */
@@ -201,7 +201,7 @@ export interface SQLEditorProps {
201
201
  /**
202
202
  * A dashboard item.
203
203
  */
204
- report?: QuillReport | any;
204
+ report?: QuillReport;
205
205
  /**
206
206
  * The default query to use as a placeholder.
207
207
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SQLEditor.d.ts","sourceRoot":"","sources":["../../src/SQLEditor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SQLEditor.d.ts","sourceRoot":"","sources":["../../src/SQLEditor.tsx"],"names":[],"mappings":"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"}
@@ -108,7 +108,10 @@ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryB
108
108
  const [formattedRows, setFormattedRows] = (0, react_1.useState)([]);
109
109
  const [rowCount, setRowCount] = (0, react_1.useState)(undefined);
110
110
  const [maxPage, setMaxPage] = (0, react_1.useState)(1);
111
- const [tempReport, setTempReport] = (0, react_1.useState)(report);
111
+ const [tempReport, setTempReport] = (0, react_1.useState)({
112
+ ...report_1.EMPTY_REPORT,
113
+ ...report,
114
+ });
112
115
  const [currentProcessing, setCurrentProcessing] = (0, react_1.useState)({
113
116
  page: paginationProcessing_1.DEFAULT_PAGINATION,
114
117
  });
@@ -163,7 +166,7 @@ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryB
163
166
  }
164
167
  };
165
168
  const onSortChange = (sort) => {
166
- if (report && (0, paginationProcessing_1.shouldSortInMemory)(paginationProcessing_1.DEFAULT_PAGINATION, rowCount, false)) {
169
+ if (tempReport && (0, paginationProcessing_1.shouldSortInMemory)(paginationProcessing_1.DEFAULT_PAGINATION, rowCount, false)) {
167
170
  return;
168
171
  }
169
172
  const updatedProcessing = { page: paginationProcessing_1.DEFAULT_PAGINATION, sort };
@@ -197,6 +200,7 @@ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryB
197
200
  }
198
201
  setRows(tempRows);
199
202
  setFormattedRows((0, report_1.formatRowsFromReport)({ rows: tempRows, columns: tableInfo.columns }));
203
+ console.log((0, report_1.formatRowsFromReport)({ rows: tempRows, columns: tableInfo.columns }));
200
204
  if (onChangeData) {
201
205
  onChangeData(tempRows);
202
206
  }
@@ -211,16 +215,17 @@ function SQLEditor({ ButtonComponent = UiComponents_1.MemoizedButton, SecondaryB
211
215
  ? report
212
216
  : (0, ChartBuilder_1.createInitialFormData)(tableInfo.columns);
213
217
  setTempReport({
218
+ ...tempReport,
214
219
  ...formData,
215
220
  itemQuery: tableInfo.itemQuery,
216
- rowCount: tableInfo.rowCount,
217
- filtersApplied: report && report.filtersApplied ? report.filtersApplied : [],
221
+ rowCount: tableInfo.rowCount ?? tableInfo.rows.length,
222
+ filtersApplied: tempReport.filtersApplied ?? [],
218
223
  rows: tempRows,
219
224
  columns: tableInfo.columns,
220
225
  });
221
226
  }
222
227
  catch (e) {
223
- setErrorMessage(e);
228
+ setErrorMessage(e.message);
224
229
  return;
225
230
  }
226
231
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,WAAW,EACX,SAAS,EAIV,MAAM,OAAO,CAAC;AAaf,OAAO,EACL,yBAAyB,EAEzB,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAkBnC,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAwDD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,IAAI,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,CAAC;IAEhC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,OAAO,CAAC,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IAEJ;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC,qEAAqE;IACrE,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC;IAErC,oDAAoD;IACpD,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,GAAG,CAAC,OAAO,CAAC;IAE/D,0DAA0D;IAC1D,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,GAAG,CAAC,OAAO,CAAC;IAEzE,+DAA+D;IAC/D,wBAAwB,CAAC,EAAE,CAAC,EAC1B,SAAS,EACT,KAAK,EACL,aAAa,EACb,MAAM,EACN,WAAW,EACX,iBAAiB,EACjB,cAAc,GACf,EAAE;QACD,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE;YAAE,SAAS,EAAE,IAAI,CAAC;YAAC,OAAO,EAAE,IAAI,CAAA;SAAE,CAAC;QAC9C,aAAa,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QAClD,iBAAiB,EAAE,CAAC,EAClB,SAAS,EACT,OAAO,GACR,EAAE;YACD,SAAS,EAAE,IAAI,CAAC;YAChB,OAAO,EAAE,IAAI,CAAC;SACf,KAAK,IAAI,CAAC;QACX,cAAc,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;KACjE,KAAK,GAAG,CAAC,OAAO,CAAC;IAElB,wEAAwE;IACxE,wBAAwB,CAAC,EAAE,CAAC,EAC1B,QAAQ,GACT,EAAE;QACD,QAAQ,EAAE,SAAS,CAAC;KACrB,KAAK,GAAG,CAAC,OAAO,CAAC;IAElB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACtC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,QAAA,MAAM,KAAK,UAAW,UAAU,4CAmC/B,CAAC;AA6SF,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,WAAW,EACX,SAAS,EAIV,MAAM,OAAO,CAAC;AAaf,OAAO,EACL,yBAAyB,EAEzB,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAuBnC,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAwDD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,IAAI,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,CAAC;IAEhC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,OAAO,CAAC,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IAEJ;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC,qEAAqE;IACrE,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC;IAErC,oDAAoD;IACpD,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,GAAG,CAAC,OAAO,CAAC;IAE/D,0DAA0D;IAC1D,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,GAAG,CAAC,OAAO,CAAC;IAEzE,+DAA+D;IAC/D,wBAAwB,CAAC,EAAE,CAAC,EAC1B,SAAS,EACT,KAAK,EACL,aAAa,EACb,MAAM,EACN,WAAW,EACX,iBAAiB,EACjB,cAAc,GACf,EAAE;QACD,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE;YAAE,SAAS,EAAE,IAAI,CAAC;YAAC,OAAO,EAAE,IAAI,CAAA;SAAE,CAAC;QAC9C,aAAa,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QAClD,iBAAiB,EAAE,CAAC,EAClB,SAAS,EACT,OAAO,GACR,EAAE;YACD,SAAS,EAAE,IAAI,CAAC;YAChB,OAAO,EAAE,IAAI,CAAC;SACf,KAAK,IAAI,CAAC;QACX,cAAc,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;KACjE,KAAK,GAAG,CAAC,OAAO,CAAC;IAElB,wEAAwE;IACxE,wBAAwB,CAAC,EAAE,CAAC,EAC1B,QAAQ,GACT,EAAE;QACD,QAAQ,EAAE,SAAS,CAAC;KACrB,KAAK,GAAG,CAAC,OAAO,CAAC;IAElB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACtC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,QAAA,MAAM,KAAK,UAAW,UAAU,4CAmC/B,CAAC;AAmSF,eAAe,KAAK,CAAC"}
package/dist/cjs/Table.js CHANGED
@@ -51,7 +51,7 @@ const paginationProcessing_1 = require("./utils/paginationProcessing");
51
51
  */
52
52
  const Table = (props) => {
53
53
  const data = props;
54
- const { dashboard } = (0, react_1.useContext)(Context_1.DashboardContext);
54
+ const [dashboard] = (0, react_1.useContext)(Context_1.DashboardContext);
55
55
  const [client] = (0, react_1.useContext)(Context_1.ClientContext);
56
56
  if ('rows' in data && 'columns' in data) {
57
57
  return ((0, jsx_runtime_1.jsx)(QuillTable_1.default, { hideCSVDownloadButton: data.hideCSVDownloadButton, columns: data.columns, rows: data.rows, className: data.className, containerStyle: data.containerStyle, LoadingComponent: data.LoadingComponent, isLoading: data.isLoading, downloadCSV: data.downloadCSV }));
@@ -130,12 +130,13 @@ const ChartUpdater = ({ reportId, containerStyle, className, dashboardContext, c
130
130
  setRows([]);
131
131
  return;
132
132
  }
133
+ const convertedReport = (0, report_1.convertInternalReportToReport)(report);
133
134
  let filterArray = reportFilters.filters;
134
135
  // THIS SHOULD ONLY BE UNDEFINED ON INITIAL LOAD
135
136
  if (!filterArray) {
136
137
  filterArray = report.filtersApplied
137
138
  ? report.filtersApplied.map((filter) => {
138
- return (0, filterProcessing_1.processFilterFromBackend)(filter, report.rows);
139
+ return (0, filterProcessing_1.processFilterFromBackend)(filter);
139
140
  })
140
141
  : [];
141
142
  reportFiltersDispatch({
@@ -147,10 +148,10 @@ const ChartUpdater = ({ reportId, containerStyle, className, dashboardContext, c
147
148
  },
148
149
  });
149
150
  }
150
- setRows((0, report_1.formatRowsFromReport)(report));
151
+ setRows((0, report_1.formatRowsFromReport)(convertedReport));
151
152
  setTableFilters(filterArray);
152
- setRowCount(report.rowCount);
153
- setColumns(report.columns);
153
+ setRowCount(convertedReport.rowCount ?? 0);
154
+ setColumns(convertedReport.columns);
154
155
  setLoading(false);
155
156
  setInitialLoad(false);
156
157
  };
@@ -158,8 +159,8 @@ const ChartUpdater = ({ reportId, containerStyle, className, dashboardContext, c
158
159
  if (!client) {
159
160
  return;
160
161
  }
161
- // IF WE HAVE THE DATA IN DASHBOARD CONTEXT AND IT IS THE INITIAL LAOD DON'T FETCH DATA
162
- if (initialLoad && dashboardContext[reportId]) {
162
+ const report = dashboardContext[reportId];
163
+ if (initialLoad && report) {
163
164
  setInitialLoad(false);
164
165
  return;
165
166
  }
@@ -170,53 +171,50 @@ const ChartUpdater = ({ reportId, containerStyle, className, dashboardContext, c
170
171
  fetchReportHelper(true, parsedReportFilters, currentProcessing);
171
172
  }, [client, reportId, reportFilters[reportId]?.updateIndex]);
172
173
  (0, react_1.useEffect)(() => {
173
- if (!dashboardContext || !dashboardContext[reportId]) {
174
+ const report = dashboardContext[reportId];
175
+ if (!report) {
174
176
  return;
175
177
  }
176
- if (!dashboardContext[reportId].rows ||
177
- !dashboardContext[reportId].columns) {
178
+ if (!report.rows || !report.columns) {
178
179
  setRows([]);
179
180
  setColumns([]);
180
181
  return;
181
182
  }
182
183
  let filtersApplied = [];
183
- if (dashboardContext[reportId].filtersApplied &&
184
- dashboardContext[reportId].filtersApplied.length > 0) {
185
- filtersApplied = dashboardContext[reportId].filtersApplied;
184
+ if (report.filtersApplied && report.filtersApplied.length > 0) {
185
+ filtersApplied = report.filtersApplied.map((filter) => {
186
+ return filter;
187
+ });
186
188
  }
187
- setRows((0, report_1.formatRowsFromReport)(dashboardContext[reportId]));
188
- setRowCount(dashboardContext[reportId].rowCount);
189
- setColumns(dashboardContext[reportId].columns);
189
+ const convertedReport = (0, report_1.convertInternalReportToReport)(report);
190
+ setRows((0, report_1.formatRowsFromReport)(convertedReport));
191
+ setRowCount(convertedReport.rowCount);
192
+ setColumns(convertedReport.columns);
190
193
  setTableFilters(filtersApplied);
191
194
  }, []);
192
- return ((0, jsx_runtime_1.jsxs)("div", { children: [!hideFilters && ((0, jsx_runtime_1.jsx)("div", { style: {
193
- display: 'flex',
194
- boxSizing: 'content-box',
195
- flexDirection: 'row',
196
- alignItems: 'center',
197
- }, children: (0, jsx_runtime_1.jsx)(FilterContainerComponent, { children: tableFilters.map((filter, index) => ((0, jsx_runtime_1.jsx)(DashboardFilter_1.DashboardFilter, { filter: filter, onChangeFilter: (filter, value = null, comparison = null) => {
198
- const updatedFilters = tableFilters.map((f) => {
199
- if (f.field === filter.field ||
200
- (f.filterType === 'date_range' &&
201
- filter.filterType === 'date_range')) {
202
- return (0, filterProcessing_1.updateFilter)(f, value, comparison);
203
- }
204
- return f;
205
- });
206
- setTableFilters(updatedFilters);
207
- fetchReportHelper(true, {
195
+ return ((0, jsx_runtime_1.jsxs)("div", { children: [!hideFilters && ((0, jsx_runtime_1.jsx)(FilterContainerComponent, { children: tableFilters.map((filter, index) => ((0, jsx_runtime_1.jsx)(DashboardFilter_1.DashboardFilter, { filter: filter, onChangeFilter: (filter, value = null, comparison = null) => {
196
+ const updatedFilters = tableFilters.map((f) => {
197
+ if (f.field === filter.field ||
198
+ (f.filterType === 'date_range' &&
199
+ filter.filterType === 'date_range')) {
200
+ return (0, filterProcessing_1.updateFilter)(f, value, comparison);
201
+ }
202
+ return f;
203
+ });
204
+ setTableFilters(updatedFilters);
205
+ fetchReportHelper(true, {
206
+ filters: updatedFilters,
207
+ updateIndex: filterUpdateIndex + 1,
208
+ }, currentProcessing);
209
+ setFilterUpdateIndex(filterUpdateIndex + 1);
210
+ reportFiltersDispatch({
211
+ type: 'UPDATE_REPORT_FILTER',
212
+ id: reportId,
213
+ data: {
208
214
  filters: updatedFilters,
209
215
  updateIndex: filterUpdateIndex + 1,
210
- }, currentProcessing);
211
- setFilterUpdateIndex(filterUpdateIndex + 1);
212
- reportFiltersDispatch({
213
- type: 'UPDATE_REPORT_FILTER',
214
- id: reportId,
215
- data: {
216
- filters: updatedFilters,
217
- updateIndex: filterUpdateIndex + 1,
218
- },
219
- });
220
- }, theme: theme, SelectComponent: SelectComponent, MultiSelectComponent: MultiSelectComponent, DateRangePickerComponent: DateRangePickerComponent }, index))) }) })), (0, jsx_runtime_1.jsx)(QuillTable_1.default, { hideCSVDownloadButton: hideCSVDownloadButton, columns: columns ?? [], rows: rows ?? [], containerStyle: containerStyle, className: className, LoadingComponent: LoadingComponent, sort: currentProcessing.sort, isLoading: loading || initialLoad, downloadCSV: downloadCSV, onPageChange: onPageChange, onSortChange: onSortChange, rowCount: rowCount })] }));
216
+ },
217
+ });
218
+ }, theme: theme, SelectComponent: SelectComponent, MultiSelectComponent: MultiSelectComponent, DateRangePickerComponent: DateRangePickerComponent }, index))) })), (0, jsx_runtime_1.jsx)(QuillTable_1.default, { hideCSVDownloadButton: hideCSVDownloadButton, columns: columns ?? [], rows: rows ?? [], containerStyle: containerStyle, className: className, LoadingComponent: LoadingComponent, sort: currentProcessing.sort, isLoading: loading || initialLoad, downloadCSV: downloadCSV, onPageChange: onPageChange, onSortChange: onSortChange, rowCount: rowCount })] }));
221
219
  };
222
220
  exports.default = Table;
@@ -1 +1 @@
1
- {"version":3,"file":"BarChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/BarChart.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAC/B,MAAM,EACN,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,SAAS,EACT,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,EACzB,mBAAmB,EACnB,UAAU,GACX,EAAE;IACD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB,2CA2MA"}
1
+ {"version":3,"file":"BarChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/BarChart.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAC/B,MAAM,EACN,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,SAAS,EACT,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,EACzB,mBAAmB,EACnB,UAAU,GACX,EAAE;IACD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB,2CAsNA"}
@@ -16,6 +16,17 @@ function BarChart({ colors, colorMap, yAxisFields, data, containerStyle, classNa
16
16
  const [formattedData, setFormattedData] = (0, react_1.useState)(data);
17
17
  (0, react_1.useEffect)(() => {
18
18
  if (!data || data.length === 0) {
19
+ let barChartData = [];
20
+ if (dateFilter && (!barChartData || barChartData.length === 0)) {
21
+ const xAxis = xAxisField || '';
22
+ const endDate = (0, valueFormatter_1.quillFormat)({
23
+ value: dateFilter?.endDate,
24
+ format: xAxisFormat,
25
+ });
26
+ const yAxis = yAxisFields[0]?.field;
27
+ barChartData = [{ [xAxis]: endDate, [yAxis]: '0' }];
28
+ }
29
+ setFormattedData(barChartData);
19
30
  return;
20
31
  }
21
32
  const curData = data.map((d) => {
@@ -44,7 +55,7 @@ function BarChart({ colors, colorMap, yAxisFields, data, containerStyle, classNa
44
55
  }
45
56
  return fields;
46
57
  };
47
- if (!data || data.length === 0) {
58
+ if (!formattedData || formattedData.length === 0) {
48
59
  return ((0, jsx_runtime_1.jsx)("div", { style: {
49
60
  display: 'flex',
50
61
  flex: '1 0 auto',
@@ -1,5 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { type ColorMapType } from '../../Chart';
3
+ import { AxisFormat } from '../../Dashboard';
3
4
  export default function LineChart({ colors, colorMap, yAxisFields, data, containerStyle, className, xAxisField, xAxisFormat, theme, comparison, isAnimationActive, hideXAxis, hideYAxis, hideCartesianGrid, hideHorizontalCartesianGrid, hideVerticalCartesianGrid, hideSubsequentXAxisTicks, cartesianGridLineStyle, comparisonLineStyle, cartesianGridLineColor, onClickChartElement, dateFilter, }: {
4
5
  colors?: string[];
5
6
  colorMap?: ColorMapType;
@@ -9,7 +10,7 @@ export default function LineChart({ colors, colorMap, yAxisFields, data, contain
9
10
  className?: string;
10
11
  xAxisField: string;
11
12
  xAxisLabel: string;
12
- xAxisFormat: string;
13
+ xAxisFormat: AxisFormat;
13
14
  theme: any;
14
15
  comparison: any;
15
16
  isAnimationActive: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"LineChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/LineChart.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,MAAM,EACN,QAAa,EACb,WAAW,EACX,IAAI,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,EACzB,2BAAmC,EACnC,yBAAgC,EAChC,wBAAgC,EAChC,sBAAgC,EAChC,mBAA6B,EAC7B,sBAAsB,EACtB,mBAA8B,EAC9B,UAAU,GACX,EAAE;IACD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,GAAG,CAAC;IAChB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;IACnC,wBAAwB,EAAE,OAAO,CAAC;IAClC,sBAAsB,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC3C,mBAAmB,EAAE,OAAO,GAAG,QAAQ,CAAC;IACxC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB,2CA8PA"}
1
+ {"version":3,"file":"LineChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/LineChart.tsx"],"names":[],"mappings":";AAoBA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAgC7C,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,MAAM,EACN,QAAa,EACb,WAAW,EACX,IAAI,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,EACzB,2BAAmC,EACnC,yBAAgC,EAChC,wBAAgC,EAChC,sBAAgC,EAChC,mBAA6B,EAC7B,sBAAsB,EACtB,mBAA8B,EAC9B,UAAU,GACX,EAAE;IACD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,GAAG,CAAC;IAChB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;IACnC,wBAAwB,EAAE,OAAO,CAAC;IAClC,sBAAsB,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC3C,mBAAmB,EAAE,OAAO,GAAG,QAAQ,CAAC;IACxC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB,2CAuQA"}
@@ -13,10 +13,33 @@ const ChartTooltip_1 = __importDefault(require("../../components/Chart/ChartTool
13
13
  const getDomain_1 = __importDefault(require("../../utils/getDomain"));
14
14
  const react_1 = require("react");
15
15
  const crypto_1 = require("../../utils/crypto");
16
+ function createLineForEmptyChart(yAxisFields, dateFilter, xAxisField, xAxisFormat) {
17
+ let lineChartData = [];
18
+ if (dateFilter &&
19
+ valueFormatter_1.DATE_FORMAT_TYPES.includes(xAxisFormat || '') &&
20
+ (!lineChartData || lineChartData.length === 0)) {
21
+ const xAxis = xAxisField || '';
22
+ const yAxis = yAxisFields[0]?.field;
23
+ const startDate = (0, valueFormatter_1.quillFormat)({
24
+ value: dateFilter?.startDate,
25
+ format: xAxisFormat,
26
+ });
27
+ const endDate = (0, valueFormatter_1.quillFormat)({
28
+ value: dateFilter?.endDate,
29
+ format: xAxisFormat,
30
+ });
31
+ lineChartData = [
32
+ { [xAxis]: startDate, [yAxis]: '0' },
33
+ { [xAxis]: endDate, [yAxis]: '0' },
34
+ ];
35
+ }
36
+ return lineChartData;
37
+ }
16
38
  function LineChart({ colors, colorMap = {}, yAxisFields, data, containerStyle, className, xAxisField, xAxisFormat, theme, comparison, isAnimationActive = true, hideXAxis = false, hideYAxis = false, hideCartesianGrid = false, hideHorizontalCartesianGrid = false, hideVerticalCartesianGrid = true, hideSubsequentXAxisTicks = false, cartesianGridLineStyle = 'solid', comparisonLineStyle = 'solid', cartesianGridLineColor, onClickChartElement = () => { }, dateFilter, }) {
17
39
  const [formattedData, setFormattedData] = (0, react_1.useState)(data);
18
40
  (0, react_1.useEffect)(() => {
19
41
  if (!data || data.length === 0) {
42
+ setFormattedData(createLineForEmptyChart(yAxisFields, dateFilter, xAxisField, xAxisFormat));
20
43
  return;
21
44
  }
22
45
  let newData = [...data];
@@ -36,7 +59,7 @@ function LineChart({ colors, colorMap = {}, yAxisFields, data, containerStyle, c
36
59
  }
37
60
  setFormattedData(newData);
38
61
  }, [data]);
39
- if (!data || data.length === 0) {
62
+ if (!formattedData || formattedData.length === 0) {
40
63
  return ((0, jsx_runtime_1.jsx)("div", { style: {
41
64
  display: 'flex',
42
65
  flex: '1 0 auto',
@@ -62,6 +85,7 @@ function LineChart({ colors, colorMap = {}, yAxisFields, data, containerStyle, c
62
85
  key = 'comparisonGradientStart';
63
86
  if (index === 0 && gradient === 'stop')
64
87
  key = 'comparisonGradientStop';
88
+ // @ts-ignore
65
89
  return colorMap[field][key];
66
90
  }
67
91
  return undefined; // use the default colors from the theme