@quillsql/react 2.12.52 → 2.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (263) hide show
  1. package/dist/cjs/Chart.d.ts.map +1 -1
  2. package/dist/cjs/Chart.js +5 -3
  3. package/dist/cjs/ChartBuilder.d.ts +10 -3
  4. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  5. package/dist/cjs/ChartBuilder.js +62 -26
  6. package/dist/cjs/ChartEditor.d.ts +3 -1
  7. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  8. package/dist/cjs/ChartEditor.js +74 -16
  9. package/dist/cjs/Context.d.ts +17 -6
  10. package/dist/cjs/Context.d.ts.map +1 -1
  11. package/dist/cjs/Context.js +138 -73
  12. package/dist/cjs/Dashboard.d.ts +8 -4
  13. package/dist/cjs/Dashboard.d.ts.map +1 -1
  14. package/dist/cjs/Dashboard.js +146 -367
  15. package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
  16. package/dist/cjs/DateRangePicker/QuillDateRangePicker.js +20 -14
  17. package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts +1 -0
  18. package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
  19. package/dist/cjs/DateRangePicker/dateRangePickerUtils.js +1 -1
  20. package/dist/cjs/QuillProvider.js +1 -1
  21. package/dist/cjs/ReportBuilder.d.ts +8 -12
  22. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  23. package/dist/cjs/ReportBuilder.js +163 -83
  24. package/dist/cjs/SQLEditor.d.ts +8 -1
  25. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  26. package/dist/cjs/SQLEditor.js +81 -28
  27. package/dist/cjs/Table.d.ts.map +1 -1
  28. package/dist/cjs/Table.js +6 -3
  29. package/dist/cjs/assets/AdjustmentsIcon.d.ts +5 -0
  30. package/dist/cjs/assets/AdjustmentsIcon.d.ts.map +1 -0
  31. package/dist/cjs/assets/AdjustmentsIcon.js +5 -0
  32. package/dist/cjs/assets/ArrowDownHeadIcon.d.ts.map +1 -1
  33. package/dist/cjs/components/Chart/ChartError.js +2 -2
  34. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts +4 -3
  35. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  36. package/dist/cjs/components/Dashboard/DashboardFilter.js +12 -12
  37. package/dist/cjs/components/Dashboard/DashboardTemplate.d.ts +2 -2
  38. package/dist/cjs/components/Dashboard/DashboardTemplate.d.ts.map +1 -1
  39. package/dist/cjs/components/Dashboard/DataLoader.d.ts +11 -5
  40. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  41. package/dist/cjs/components/Dashboard/DataLoader.js +91 -32
  42. package/dist/cjs/components/Dashboard/TableComponent.d.ts +2 -1
  43. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  44. package/dist/cjs/components/Dashboard/TableComponent.js +10 -3
  45. package/dist/cjs/components/Dashboard/util.d.ts +2 -2
  46. package/dist/cjs/components/Dashboard/util.d.ts.map +1 -1
  47. package/dist/cjs/components/Dashboard/util.js +2 -2
  48. package/dist/cjs/components/QuillMultiSelect.d.ts.map +1 -1
  49. package/dist/cjs/components/QuillMultiSelect.js +18 -13
  50. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  51. package/dist/cjs/components/QuillMultiSelectWithCombo.js +67 -45
  52. package/dist/cjs/components/QuillSelect.d.ts +1 -1
  53. package/dist/cjs/components/QuillSelect.d.ts.map +1 -1
  54. package/dist/cjs/components/QuillSelect.js +29 -7
  55. package/dist/cjs/components/QuillSelectWithCombo.d.ts +1 -1
  56. package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -1
  57. package/dist/cjs/components/QuillSelectWithCombo.js +47 -26
  58. package/dist/cjs/components/QuillTable.d.ts +3 -2
  59. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  60. package/dist/cjs/components/QuillTable.js +32 -19
  61. package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts +2 -1
  62. package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  63. package/dist/cjs/components/ReportBuilder/AddLimitPopover.js +2 -2
  64. package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts +2 -1
  65. package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  66. package/dist/cjs/components/ReportBuilder/AddSortPopover.js +2 -2
  67. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts +2 -1
  68. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts.map +1 -1
  69. package/dist/cjs/components/ReportBuilder/FilterModal.js +17 -4
  70. package/dist/cjs/components/ReportBuilder/ui.d.ts +13 -8
  71. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  72. package/dist/cjs/components/ReportBuilder/ui.js +15 -24
  73. package/dist/cjs/components/UiComponents.d.ts +17 -9
  74. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  75. package/dist/cjs/components/UiComponents.js +30 -24
  76. package/dist/cjs/hooks/useAstToFilterTree.d.ts +2 -2
  77. package/dist/cjs/hooks/useAstToFilterTree.d.ts.map +1 -1
  78. package/dist/cjs/hooks/useDashboard.d.ts +13 -5
  79. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  80. package/dist/cjs/hooks/useDashboard.js +158 -70
  81. package/dist/cjs/hooks/useExport.d.ts.map +1 -1
  82. package/dist/cjs/hooks/useExport.js +9 -3
  83. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  84. package/dist/cjs/hooks/useQuill.js +15 -15
  85. package/dist/cjs/hooks/useVirtualTables.d.ts +12 -3
  86. package/dist/cjs/hooks/useVirtualTables.d.ts.map +1 -1
  87. package/dist/cjs/hooks/useVirtualTables.js +105 -1
  88. package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts +3 -1
  89. package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  90. package/dist/cjs/internals/ReportBuilder/PivotForm.js +9 -9
  91. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  92. package/dist/cjs/internals/ReportBuilder/PivotList.js +21 -15
  93. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +3 -2
  94. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  95. package/dist/cjs/internals/ReportBuilder/PivotModal.js +9 -9
  96. package/dist/cjs/models/Client.d.ts +16 -2
  97. package/dist/cjs/models/Client.d.ts.map +1 -1
  98. package/dist/cjs/models/Dashboard.d.ts +1 -1
  99. package/dist/cjs/models/Dashboard.d.ts.map +1 -1
  100. package/dist/cjs/models/Filter.d.ts +4 -3
  101. package/dist/cjs/models/Filter.d.ts.map +1 -1
  102. package/dist/cjs/models/Filter.js +38 -1
  103. package/dist/cjs/utils/astProcessing.d.ts +3 -3
  104. package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
  105. package/dist/cjs/utils/client.d.ts.map +1 -1
  106. package/dist/cjs/utils/client.js +2 -7
  107. package/dist/cjs/utils/dashboard.d.ts +5 -5
  108. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  109. package/dist/cjs/utils/dashboard.js +90 -9
  110. package/dist/cjs/utils/dataFetcher.d.ts +4 -4
  111. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
  112. package/dist/cjs/utils/dataFetcher.js +1 -1
  113. package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
  114. package/dist/cjs/utils/filterProcessing.js +2 -8
  115. package/dist/cjs/utils/paginationProcessing.js +1 -1
  116. package/dist/cjs/utils/pivotConstructor.d.ts +2 -2
  117. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  118. package/dist/cjs/utils/pivotConstructor.js +1 -1
  119. package/dist/cjs/utils/pivotProcessing.d.ts.map +1 -1
  120. package/dist/cjs/utils/pivotProcessing.js +6 -2
  121. package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
  122. package/dist/cjs/utils/queryConstructor.js +12 -9
  123. package/dist/cjs/utils/report.d.ts +6 -5
  124. package/dist/cjs/utils/report.d.ts.map +1 -1
  125. package/dist/cjs/utils/report.js +71 -25
  126. package/dist/cjs/utils/schema.d.ts +3 -3
  127. package/dist/cjs/utils/schema.d.ts.map +1 -1
  128. package/dist/cjs/utils/schema.js +39 -35
  129. package/dist/cjs/utils/tableProcessing.d.ts +18 -11
  130. package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
  131. package/dist/cjs/utils/tableProcessing.js +44 -23
  132. package/dist/esm/Chart.d.ts.map +1 -1
  133. package/dist/esm/Chart.js +6 -4
  134. package/dist/esm/ChartBuilder.d.ts +10 -3
  135. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  136. package/dist/esm/ChartBuilder.js +59 -26
  137. package/dist/esm/ChartEditor.d.ts +3 -1
  138. package/dist/esm/ChartEditor.d.ts.map +1 -1
  139. package/dist/esm/ChartEditor.js +76 -18
  140. package/dist/esm/Context.d.ts +17 -6
  141. package/dist/esm/Context.d.ts.map +1 -1
  142. package/dist/esm/Context.js +139 -74
  143. package/dist/esm/Dashboard.d.ts +8 -4
  144. package/dist/esm/Dashboard.d.ts.map +1 -1
  145. package/dist/esm/Dashboard.js +146 -367
  146. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
  147. package/dist/esm/DateRangePicker/QuillDateRangePicker.js +21 -15
  148. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts +1 -0
  149. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
  150. package/dist/esm/DateRangePicker/dateRangePickerUtils.js +1 -1
  151. package/dist/esm/QuillProvider.js +1 -1
  152. package/dist/esm/ReportBuilder.d.ts +8 -12
  153. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  154. package/dist/esm/ReportBuilder.js +167 -87
  155. package/dist/esm/SQLEditor.d.ts +8 -1
  156. package/dist/esm/SQLEditor.d.ts.map +1 -1
  157. package/dist/esm/SQLEditor.js +84 -31
  158. package/dist/esm/Table.d.ts.map +1 -1
  159. package/dist/esm/Table.js +7 -4
  160. package/dist/esm/assets/AdjustmentsIcon.d.ts +5 -0
  161. package/dist/esm/assets/AdjustmentsIcon.d.ts.map +1 -0
  162. package/dist/esm/assets/AdjustmentsIcon.js +3 -0
  163. package/dist/esm/assets/ArrowDownHeadIcon.d.ts.map +1 -1
  164. package/dist/esm/components/Chart/ChartError.js +2 -2
  165. package/dist/esm/components/Dashboard/DashboardFilter.d.ts +4 -3
  166. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  167. package/dist/esm/components/Dashboard/DashboardFilter.js +12 -12
  168. package/dist/esm/components/Dashboard/DashboardTemplate.d.ts +2 -2
  169. package/dist/esm/components/Dashboard/DashboardTemplate.d.ts.map +1 -1
  170. package/dist/esm/components/Dashboard/DataLoader.d.ts +11 -5
  171. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  172. package/dist/esm/components/Dashboard/DataLoader.js +94 -35
  173. package/dist/esm/components/Dashboard/TableComponent.d.ts +2 -1
  174. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  175. package/dist/esm/components/Dashboard/TableComponent.js +10 -3
  176. package/dist/esm/components/Dashboard/util.d.ts +2 -2
  177. package/dist/esm/components/Dashboard/util.d.ts.map +1 -1
  178. package/dist/esm/components/Dashboard/util.js +2 -2
  179. package/dist/esm/components/QuillMultiSelect.d.ts.map +1 -1
  180. package/dist/esm/components/QuillMultiSelect.js +19 -14
  181. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  182. package/dist/esm/components/QuillMultiSelectWithCombo.js +68 -46
  183. package/dist/esm/components/QuillSelect.d.ts +1 -1
  184. package/dist/esm/components/QuillSelect.d.ts.map +1 -1
  185. package/dist/esm/components/QuillSelect.js +30 -8
  186. package/dist/esm/components/QuillSelectWithCombo.d.ts +1 -1
  187. package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -1
  188. package/dist/esm/components/QuillSelectWithCombo.js +48 -27
  189. package/dist/esm/components/QuillTable.d.ts +3 -2
  190. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  191. package/dist/esm/components/QuillTable.js +32 -19
  192. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts +2 -1
  193. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  194. package/dist/esm/components/ReportBuilder/AddLimitPopover.js +2 -2
  195. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts +2 -1
  196. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  197. package/dist/esm/components/ReportBuilder/AddSortPopover.js +2 -2
  198. package/dist/esm/components/ReportBuilder/FilterModal.d.ts +2 -1
  199. package/dist/esm/components/ReportBuilder/FilterModal.d.ts.map +1 -1
  200. package/dist/esm/components/ReportBuilder/FilterModal.js +17 -4
  201. package/dist/esm/components/ReportBuilder/ui.d.ts +13 -8
  202. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  203. package/dist/esm/components/ReportBuilder/ui.js +14 -19
  204. package/dist/esm/components/UiComponents.d.ts +17 -9
  205. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  206. package/dist/esm/components/UiComponents.js +30 -24
  207. package/dist/esm/hooks/useAstToFilterTree.d.ts +2 -2
  208. package/dist/esm/hooks/useAstToFilterTree.d.ts.map +1 -1
  209. package/dist/esm/hooks/useDashboard.d.ts +13 -5
  210. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  211. package/dist/esm/hooks/useDashboard.js +158 -73
  212. package/dist/esm/hooks/useExport.d.ts.map +1 -1
  213. package/dist/esm/hooks/useExport.js +10 -4
  214. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  215. package/dist/esm/hooks/useQuill.js +17 -17
  216. package/dist/esm/hooks/useVirtualTables.d.ts +12 -3
  217. package/dist/esm/hooks/useVirtualTables.d.ts.map +1 -1
  218. package/dist/esm/hooks/useVirtualTables.js +106 -2
  219. package/dist/esm/internals/ReportBuilder/PivotForm.d.ts +3 -1
  220. package/dist/esm/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  221. package/dist/esm/internals/ReportBuilder/PivotForm.js +9 -9
  222. package/dist/esm/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  223. package/dist/esm/internals/ReportBuilder/PivotList.js +21 -15
  224. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +3 -2
  225. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  226. package/dist/esm/internals/ReportBuilder/PivotModal.js +9 -9
  227. package/dist/esm/models/Client.d.ts +16 -2
  228. package/dist/esm/models/Client.d.ts.map +1 -1
  229. package/dist/esm/models/Dashboard.d.ts +1 -1
  230. package/dist/esm/models/Dashboard.d.ts.map +1 -1
  231. package/dist/esm/models/Filter.d.ts +4 -3
  232. package/dist/esm/models/Filter.d.ts.map +1 -1
  233. package/dist/esm/models/Filter.js +36 -0
  234. package/dist/esm/utils/astProcessing.d.ts +3 -3
  235. package/dist/esm/utils/astProcessing.d.ts.map +1 -1
  236. package/dist/esm/utils/client.d.ts.map +1 -1
  237. package/dist/esm/utils/client.js +2 -7
  238. package/dist/esm/utils/dashboard.d.ts +5 -5
  239. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  240. package/dist/esm/utils/dashboard.js +90 -9
  241. package/dist/esm/utils/dataFetcher.d.ts +4 -4
  242. package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
  243. package/dist/esm/utils/dataFetcher.js +1 -1
  244. package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
  245. package/dist/esm/utils/filterProcessing.js +2 -8
  246. package/dist/esm/utils/paginationProcessing.js +1 -1
  247. package/dist/esm/utils/pivotConstructor.d.ts +2 -2
  248. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  249. package/dist/esm/utils/pivotConstructor.js +1 -1
  250. package/dist/esm/utils/pivotProcessing.d.ts.map +1 -1
  251. package/dist/esm/utils/pivotProcessing.js +6 -2
  252. package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
  253. package/dist/esm/utils/queryConstructor.js +12 -9
  254. package/dist/esm/utils/report.d.ts +6 -5
  255. package/dist/esm/utils/report.d.ts.map +1 -1
  256. package/dist/esm/utils/report.js +70 -25
  257. package/dist/esm/utils/schema.d.ts +3 -3
  258. package/dist/esm/utils/schema.d.ts.map +1 -1
  259. package/dist/esm/utils/schema.js +39 -35
  260. package/dist/esm/utils/tableProcessing.d.ts +18 -11
  261. package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
  262. package/dist/esm/utils/tableProcessing.js +41 -20
  263. package/package.json +1 -1
@@ -93,17 +93,12 @@ function updateFilter(filter, value = null, comparison = null) {
93
93
  }
94
94
  if (comparison ||
95
95
  (filter.comparison && filter.comparisonRange.value !== 'NO_COMPARISON')) {
96
- let preset = '';
97
- if (comparison) {
98
- preset = filter.preset.label;
99
- }
100
96
  const key = comparison?.value || filter.comparisonRange.value;
101
97
  let primaryRange = {
102
98
  start: value ? value.startDate : filter.startDate,
103
99
  end: value ? value.endDate : filter.endDate,
104
100
  };
105
101
  if (value && value.preset) {
106
- preset = value.preset;
107
102
  primaryRange = (0, dateRangePickerUtils_1.getRangeFromPresetOptions)(value.preset, presetsOptions);
108
103
  }
109
104
  return {
@@ -112,7 +107,7 @@ function updateFilter(filter, value = null, comparison = null) {
112
107
  filterType: 'date_range',
113
108
  label: 'Date',
114
109
  field: 'date_range',
115
- preset: { label: preset },
110
+ preset: filter.preset,
116
111
  options: filter.options,
117
112
  comparison: true,
118
113
  comparisonRange: {
@@ -130,10 +125,9 @@ function updateFilter(filter, value = null, comparison = null) {
130
125
  start: value?.startDate || filter.startDate,
131
126
  end: value?.endDate || filter.endDate,
132
127
  };
133
- const preset = value?.preset ? value.preset : '';
134
128
  return {
135
129
  ...filter,
136
- preset: { label: preset },
130
+ preset: filter.preset,
137
131
  startDate: primaryRange.start,
138
132
  endDate: primaryRange.end,
139
133
  filterType: 'date_range',
@@ -4,7 +4,7 @@ exports.shouldSortInMemory = exports.shouldFetchMore = exports.DEFAULT_PAGINATIO
4
4
  exports.DEFAULT_PAGINATION = {
5
5
  page: 0,
6
6
  rowsPerPage: 10,
7
- rowsPerRequest: 1000,
7
+ rowsPerRequest: 600,
8
8
  };
9
9
  function shouldFetchMore(pagination, page, maxPage) {
10
10
  if (!pagination) {
@@ -1,7 +1,7 @@
1
- import { Client } from '../models/Client';
1
+ import { QuillProviderClient } from '../models/Client';
2
2
  import { Pivot } from '../models/Pivot';
3
3
  import { QuillReportInternal } from '../models/Report';
4
- export declare function generatePivotWithSQL(pivot: Pivot, report: QuillReportInternal, client: Client, dateBucket?: string, dateFilter?: any, distinctStrings?: any): Promise<{
4
+ export declare function generatePivotWithSQL(pivot: Pivot, report: QuillReportInternal, client: QuillProviderClient, dateBucket?: string, dateFilter?: any, distinctStrings?: any): Promise<{
5
5
  rows: any;
6
6
  columns: any;
7
7
  } | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"pivotConstructor.d.ts","sourceRoot":"","sources":["../../../src/utils/pivotConstructor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAOvD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,GAAG,EAChB,eAAe,CAAC,EAAE,GAAG;;;eAuMtB"}
1
+ {"version":3,"file":"pivotConstructor.d.ts","sourceRoot":"","sources":["../../../src/utils/pivotConstructor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAOvD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,mBAAmB,EAC3B,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,GAAG,EAChB,eAAe,CAAC,EAAE,GAAG;;;eAuMtB"}
@@ -43,7 +43,7 @@ async function generatePivotWithSQL(pivot, report, client, dateBucket, dateFilte
43
43
  metadata: {
44
44
  preQueries: [sqlQuery],
45
45
  task: 'query',
46
- orgId: client.customerId || '*',
46
+ orgId: client.organizationId || '*',
47
47
  clientId: client.publicKey,
48
48
  databaseType: client?.databaseType,
49
49
  getCustomFields: false,
@@ -1 +1 @@
1
- {"version":3,"file":"pivotProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/pivotProcessing.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAIxD,wBAAgB,UAAU,CACxB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,cAAc,EAAE,GACxB,MAAM,CAuCR;AAkBD,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,WA0BxC;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,cAAc,EAAE,EACzB,YAAY,EAAE,oBAAoB;;;;EA6CnC;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE;IACf,SAAS,EAAE,GAAG,CAAC;IACf,YAAY,EAAE,GAAG,CAAC;IAClB,WAAW,EAAE,GAAG,CAAC;CAClB,GACA,KAAK,CAqCP;AAED,eAAO,MAAM,eAAe,WAAY,GAAG,SAAS,KAAK,YA8BxD,CAAC"}
1
+ {"version":3,"file":"pivotProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/pivotProcessing.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAIxD,wBAAgB,UAAU,CACxB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,cAAc,EAAE,GACxB,MAAM,CAuCR;AAkBD,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,WA0BxC;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,cAAc,EAAE,EACzB,YAAY,EAAE,oBAAoB;;;;EAqDnC;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE;IACf,SAAS,EAAE,GAAG,CAAC;IACf,YAAY,EAAE,GAAG,CAAC;IAClB,WAAW,EAAE,GAAG,CAAC;CAClB,GACA,KAAK,CAqCP;AAED,eAAO,MAAM,eAAe,WAAY,GAAG,SAAS,KAAK,YA8BxD,CAAC"}
@@ -89,11 +89,15 @@ function getPossiblePivotFieldOptions(columns, uniqueValues) {
89
89
  (Object.keys(possibleValues).length === 1 &&
90
90
  Object.keys(possibleValues)[0] === 'null');
91
91
  if (!isNullValuesOnly &&
92
- Object.keys(possibleValues).length <= constants_1.MAX_PIVOT_UNIQUE_VALUES) {
92
+ Object.keys(possibleValues).length <= constants_1.MAX_PIVOT_UNIQUE_VALUES &&
93
+ !(Object.keys(possibleValues).length === 1 &&
94
+ possibleValues['EXCEEDS_LIMIT'] !== undefined)) {
93
95
  columnFields.push(column.field);
94
96
  }
95
97
  if (!isNullValuesOnly &&
96
- Object.keys(possibleValues).length <= constants_1.MAX_PIVOT_UNIQUE_VALUES) {
98
+ Object.keys(possibleValues).length <= constants_1.MAX_PIVOT_UNIQUE_VALUES &&
99
+ !(Object.keys(possibleValues).length === 1 &&
100
+ possibleValues['EXCEEDS_LIMIT'] !== undefined)) {
97
101
  rowFields.push(column.field);
98
102
  }
99
103
  }
@@ -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;AAmBxC,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,cAAc,CAAC,EAAE,MAAM,EAEvB,iBAAiB,CAAC,EAAE,OAAO,UAmC5B;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,UAE1D;AAwDD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EAAE,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAmBrB;AAED,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,UAUrB;AAsDD,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,GAClB,MAAM,GAAG,SAAS,CAyBpB"}
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,iBAAiB,CAAC,EAAE,OAAO,UAgC5B;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,UAUrB;AAsDD,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,GAClB,MAAM,GAAG,SAAS,CAyBpB"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.generatePivotQuery = exports.generateMinMaxRangeQueries = exports.generateDistinctQuery = exports.generateCountQuery = exports.replaceSpacesWithUnderscores = exports.processColumnReference = void 0;
4
+ const constants_1 = require("./constants");
4
5
  const pivotProcessing_1 = require("./pivotProcessing");
5
6
  function processSingleQuotes(value, databaseType) {
6
7
  if (['postgresql', 'snowflake'].includes(databaseType.toLowerCase())) {
@@ -40,11 +41,8 @@ isPivotFieldAlias) {
40
41
  if (column === '' && fallbackOnNull) {
41
42
  return `${fallbackOnNull}`;
42
43
  }
43
- // Wrap in single quotes if contains whitespace or special characters and no single quotes
44
- if (column.match(/[^a-zA-Z0-9_]/) && !column.includes("'")) {
45
- return `'${column}'`;
46
- }
47
- return `${column}`;
44
+ // Wrap MySQL columns in backticks to handle whitespace
45
+ return `\`${column}\``;
48
46
  }
49
47
  const columnParts = column.split('.');
50
48
  if (columnParts.length > 1) {
@@ -97,19 +95,24 @@ function processValueField(aggType, databaseType, valueField) {
97
95
  }
98
96
  function generateCountQuery(fields, query, databaseType) {
99
97
  let countQuery = [];
98
+ let cteQuery = `WITH querytable AS (${query.replace(';', '')}) `;
99
+ let cte = [];
100
100
  switch (databaseType.toLowerCase()) {
101
101
  case 'mysql':
102
- countQuery = fields.map((field) => {
103
- return `SELECT '${field}' AS ${processColumnReference('field', databaseType)}, COUNT(DISTINCT ${processColumnReference(field, databaseType)}) AS ${processColumnReference('count', databaseType)} FROM querytable`;
102
+ cte = fields.map((field, index) => {
103
+ return `, distinct_cte_${index} AS (SELECT DISTINCT ${processColumnReference(field, databaseType)} FROM querytable LIMIT ${constants_1.MAX_PIVOT_UNIQUE_VALUES + 1})`;
104
+ });
105
+ countQuery = fields.map((field, index) => {
106
+ return `SELECT '${field}' AS ${processColumnReference('field', databaseType)}, COUNT(*) AS ${processColumnReference('count', databaseType)} FROM distinct_cte_${index}`;
104
107
  });
108
+ cteQuery += cte.join(' ');
105
109
  break;
106
110
  default:
107
111
  countQuery = fields.map((field) => {
108
112
  return `SELECT '${field}' AS ${processColumnReference('field', databaseType)}, COUNT(DISTINCT ${processColumnReference(field, databaseType)}) AS ${processColumnReference('count', databaseType)} FROM querytable`;
109
113
  });
110
114
  }
111
- return (`WITH querytable AS (${query.replace(';', '')}) ` +
112
- countQuery.join(' UNION ALL '));
115
+ return cteQuery + countQuery.join(' UNION ALL ');
113
116
  }
114
117
  exports.generateCountQuery = generateCountQuery;
115
118
  function generateDistinctQuery(stringFields, query, databaseType) {
@@ -1,4 +1,4 @@
1
- import { Client } from '../models/Client';
1
+ import { QuillProviderClient } from '../models/Client';
2
2
  import { ColumnInternal } from '../models/Columns';
3
3
  import { Pivot } from '../models/Pivot';
4
4
  import { QuillReport, QuillReportInternal } from '../models/Report';
@@ -23,19 +23,20 @@ export type ReportBuilderInfo = {
23
23
  };
24
24
  export declare const EMPTY_REPORT: QuillReport;
25
25
  export declare const EMPTY_INTERNAL_REPORT: QuillReportInternal;
26
- export declare function fetchReport(reportId: string, client: Client, useReportTask?: boolean, filters?: any[], additionalProcessing?: AdditionalProcessing, dateBucket?: string, customFields?: any): Promise<{
26
+ export declare function fetchReport(reportId: string, client: QuillProviderClient, useReportTask?: boolean, filters?: any[], additionalProcessing?: AdditionalProcessing, dateBucket?: string, customFields?: any, rowsOnly?: boolean, rowCountOnly?: boolean): Promise<{
27
27
  report: QuillReportInternal;
28
28
  error?: string;
29
29
  }>;
30
+ export declare function fetchReportRowCount(reportId: string, client: QuillProviderClient, useReportTask?: boolean, filters?: any[], additionalProcessing?: AdditionalProcessing, customFields?: any): Promise<number | undefined>;
30
31
  export declare function saveReport({ report, dashboardItemId, client, }: {
31
32
  report: any;
32
33
  dashboardItemId?: string;
33
- client: Client;
34
+ client: QuillProviderClient;
34
35
  }): Promise<any>;
35
36
  export declare const formatRowsFromReport: (report: any) => any;
36
37
  export declare function convertInternalReportToReport(report: QuillReportInternal): QuillReport;
37
- export declare const fetchReportBuilderDataFromAST: (baseAst: any, formData: any, schema: Table[], client: Client, pivot?: Pivot, previousFormData?: any, currentTable?: string, previousRelevant?: {
38
+ export declare const fetchReportBuilderDataFromAST: (baseAst: any, formData: any, schema: Table[], client: QuillProviderClient, pivot?: Pivot, previousFormData?: any, currentTable?: string, previousRelevant?: {
38
39
  uniqueStrings: UniqueValuesByTable;
39
40
  dateRanges: DateRangesByColumn;
40
- }, report?: QuillReportInternal, customFields?: any) => Promise<ReportBuilderInfo>;
41
+ }, report?: QuillReportInternal, customFields?: any, skipUniqueValues?: boolean, skipRowCount?: boolean, processing?: AdditionalProcessing) => Promise<ReportBuilderInfo>;
41
42
  //# sourceMappingURL=report.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAU,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EACL,kBAAkB,EAClB,KAAK,EACL,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAa1B,OAAO,EACL,oBAAoB,EAGrB,MAAM,mBAAmB,CAAC;AAI3B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,OAAO,EAAE,cAAc,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IAC7D,aAAa,EAAE,GAAG,EAAE,CAAC;IACrB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,mBAAmB,CAAC;IAClC,UAAU,EAAE,kBAAkB,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,WAkB1B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,mBAGnC,CAAC;AA2BF,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,aAAa,UAAO,EACpB,OAAO,GAAE,GAAG,EAAO,EACnB,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,GAAG,GACjB,OAAO,CAAC;IAAE,MAAM,EAAE,mBAAmB,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA4H1D;AAED,wBAAsB,UAAU,CAAC,EAC/B,MAAM,EACN,eAAe,EACf,MAAM,GACP,EAAE;IACD,MAAM,EAAE,GAAG,CAAC;IACZ,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,GAAG,CAAC,CA4Cf;AAED,eAAO,MAAM,oBAAoB,WAAY,GAAG,QAkB/C,CAAC;AAEF,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,mBAAmB,GAC1B,WAAW,CAsDb;AAED,eAAO,MAAM,6BAA6B,YAC/B,GAAG,YACF,GAAG,UACL,KAAK,EAAE,UACP,MAAM,UACN,KAAK,qBACM,GAAG,iBACP,MAAM,qBACF;IACjB,aAAa,EAAE,mBAAmB,CAAC;IACnC,UAAU,EAAE,kBAAkB,CAAC;CAChC,WACQ,mBAAmB,iBACb,GAAG,KACjB,QAAQ,iBAAiB,CAyI3B,CAAC"}
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/utils/report.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAU,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EACL,kBAAkB,EAClB,KAAK,EACL,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAa1B,OAAO,EACL,oBAAoB,EAIrB,MAAM,mBAAmB,CAAC;AAI3B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,OAAO,EAAE,cAAc,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IAC7D,aAAa,EAAE,GAAG,EAAE,CAAC;IACrB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,mBAAmB,CAAC;IAClC,UAAU,EAAE,kBAAkB,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,WAkB1B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,mBAGnC,CAAC;AA2BF,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,EAC3B,aAAa,UAAO,EACpB,OAAO,GAAE,GAAG,EAAO,EACnB,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,GAAG,EAClB,QAAQ,CAAC,EAAE,OAAO,EAClB,YAAY,CAAC,EAAE,OAAO,GACrB,OAAO,CAAC;IAAE,MAAM,EAAE,mBAAmB,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAmI1D;AAED,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,EAC3B,aAAa,UAAO,EACpB,OAAO,GAAE,GAAG,EAAO,EACnB,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,YAAY,CAAC,EAAE,GAAG,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAkC7B;AAED,wBAAsB,UAAU,CAAC,EAC/B,MAAM,EACN,eAAe,EACf,MAAM,GACP,EAAE;IACD,MAAM,EAAE,GAAG,CAAC;IACZ,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,mBAAmB,CAAC;CAC7B,GAAG,OAAO,CAAC,GAAG,CAAC,CA4Cf;AAED,eAAO,MAAM,oBAAoB,WAAY,GAAG,QAkB/C,CAAC;AAEF,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,mBAAmB,GAC1B,WAAW,CAsDb;AAED,eAAO,MAAM,6BAA6B,YAC/B,GAAG,YACF,GAAG,UACL,KAAK,EAAE,UACP,mBAAmB,UACnB,KAAK,qBACM,GAAG,iBACP,MAAM,qBACF;IACjB,aAAa,EAAE,mBAAmB,CAAC;IACnC,UAAU,EAAE,kBAAkB,CAAC;CAChC,WACQ,mBAAmB,iBACb,GAAG,qBACC,OAAO,iBACX,OAAO,eACT,oBAAoB,KAChC,QAAQ,iBAAiB,CAgK3B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fetchReportBuilderDataFromAST = exports.convertInternalReportToReport = exports.formatRowsFromReport = exports.saveReport = exports.fetchReport = exports.EMPTY_INTERNAL_REPORT = exports.EMPTY_REPORT = void 0;
3
+ exports.fetchReportBuilderDataFromAST = exports.convertInternalReportToReport = exports.formatRowsFromReport = exports.saveReport = exports.fetchReportRowCount = exports.fetchReport = exports.EMPTY_INTERNAL_REPORT = exports.EMPTY_REPORT = void 0;
4
4
  const ChartBuilder_1 = require("../ChartBuilder");
5
5
  const ast_1 = require("../components/ReportBuilder/ast");
6
6
  const PivotModal_1 = require("../internals/ReportBuilder/PivotModal");
@@ -64,7 +64,7 @@ function extractAllReportValuesFromQuillInternalReport(reportInternal) {
64
64
  template: reportInternal.template,
65
65
  };
66
66
  }
67
- async function fetchReport(reportId, client, useReportTask = true, filters = [], additionalProcessing, dateBucket, customFields) {
67
+ async function fetchReport(reportId, client, useReportTask = true, filters = [], additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly) {
68
68
  let reportInfo = undefined;
69
69
  let errorMessage = undefined;
70
70
  try {
@@ -73,14 +73,16 @@ async function fetchReport(reportId, client, useReportTask = true, filters = [],
73
73
  metadata: {
74
74
  reportId,
75
75
  dashboardItemId: reportId,
76
- orgId: client.customerId || '*',
76
+ orgId: client.organizationId || '*',
77
77
  clientId: client.publicKey,
78
78
  task: useReportTask ? 'report' : 'item',
79
79
  databaseType: client.databaseType,
80
- filters: filters,
80
+ filters: filters.map((filter) => ({ ...filter, options: undefined })),
81
81
  customFields,
82
82
  additionalProcessing,
83
83
  useNewNodeSql: true,
84
+ rowsOnly,
85
+ rowCountOnly,
84
86
  },
85
87
  };
86
88
  const cloudBody = {
@@ -116,8 +118,11 @@ async function fetchReport(reportId, client, useReportTask = true, filters = [],
116
118
  // Ensure the report columns don't reference any columns that aren't present in the rows
117
119
  const observedColumns = reportInfo?.rows[0]
118
120
  ? Object.keys(reportInfo.rows[0])
119
- : [];
120
- if (reportInfo &&
121
+ : null;
122
+ if (observedColumns &&
123
+ reportInfo &&
124
+ !reportInfo.pivot &&
125
+ !reportInfo.pivotColumns &&
121
126
  useReportTask &&
122
127
  reportInfo.columns?.filter((col) => !observedColumns.includes(col.field))
123
128
  ?.length > 0) {
@@ -134,7 +139,7 @@ async function fetchReport(reportId, client, useReportTask = true, filters = [],
134
139
  if (error instanceof error_1.DataLoadError) {
135
140
  if (error.data.useReportTask) {
136
141
  (0, logging_1.internalLog)('USING ITEM AS BACKUP');
137
- const { report, error } = await fetchReport(reportId, client, false, filters, additionalProcessing, dateBucket, customFields);
142
+ const { report, error } = await fetchReport(reportId, client, false, filters, additionalProcessing, dateBucket, customFields, rowsOnly, rowCountOnly);
138
143
  reportInfo = report;
139
144
  errorMessage = error;
140
145
  }
@@ -162,12 +167,38 @@ async function fetchReport(reportId, client, useReportTask = true, filters = [],
162
167
  return { report: reportInfo || exports.EMPTY_INTERNAL_REPORT, error: errorMessage };
163
168
  }
164
169
  exports.fetchReport = fetchReport;
170
+ async function fetchReportRowCount(reportId, client, useReportTask = true, filters = [], additionalProcessing, customFields) {
171
+ // Remove extra fields on each filter so we don't confuse the backend.
172
+ const hostedBody = {
173
+ metadata: {
174
+ reportId,
175
+ dashboardItemId: reportId,
176
+ orgId: client.organizationId || '*',
177
+ clientId: client.publicKey,
178
+ task: useReportTask ? 'report' : 'item',
179
+ databaseType: client.databaseType,
180
+ filters: filters.map((filter) => ({ ...filter, options: undefined })),
181
+ customFields,
182
+ additionalProcessing,
183
+ useNewNodeSql: true,
184
+ rowCountOnly: true,
185
+ },
186
+ };
187
+ const cloudBody = {
188
+ id: reportId,
189
+ filters: filters,
190
+ useNewNodeSql: true,
191
+ };
192
+ const resp = await (0, dataFetcher_1.getData)(client, 'itempost', 'omit', hostedBody, cloudBody, 'POST', 'fetch-data');
193
+ return resp.rowCount;
194
+ }
195
+ exports.fetchReportRowCount = fetchReportRowCount;
165
196
  async function saveReport({ report, dashboardItemId, client, }) {
166
- const { publicKey, customerId, databaseType } = client;
197
+ const { publicKey, organizationId, databaseType } = client;
167
198
  const cloudBody = {
168
199
  ...report,
169
200
  dashboardItemId,
170
- customerId: customerId || '*',
201
+ customerId: organizationId || '*',
171
202
  useNewNodeSql: true,
172
203
  };
173
204
  // @ts-ignore
@@ -185,14 +216,14 @@ async function saveReport({ report, dashboardItemId, client, }) {
185
216
  clientId: publicKey,
186
217
  databaseType: databaseType,
187
218
  ...cloudBody,
188
- orgId: customerId || '*',
219
+ orgId: organizationId || '*',
189
220
  useNewNodeSql: true,
190
221
  },
191
222
  };
192
- const searchParams = new URLSearchParams(customerId
223
+ const searchParams = new URLSearchParams(organizationId
193
224
  ? {
194
225
  clientId: publicKey,
195
- customerId: customerId,
226
+ customerId: organizationId,
196
227
  }
197
228
  : { clientId: publicKey }).toString();
198
229
  return await (0, dataFetcher_1.getData)(client, `dashedit2?${searchParams}`, 'same-origin', hostedBody, cloudBody);
@@ -272,7 +303,7 @@ function convertInternalReportToReport(report) {
272
303
  }
273
304
  }
274
305
  exports.convertInternalReportToReport = convertInternalReportToReport;
275
- const fetchReportBuilderDataFromAST = async (baseAst, formData, schema, client, pivot, previousFormData, currentTable, previousRelevant, report, customFields) => {
306
+ const fetchReportBuilderDataFromAST = async (baseAst, formData, schema, client, pivot, previousFormData, currentTable, previousRelevant, report, customFields, skipUniqueValues, skipRowCount, processing) => {
276
307
  let newRows = [];
277
308
  let newColumns = [];
278
309
  let newRowCount = 0;
@@ -283,7 +314,7 @@ const fetchReportBuilderDataFromAST = async (baseAst, formData, schema, client,
283
314
  let table = '';
284
315
  let error;
285
316
  const relevantInfo = previousRelevant ?? { uniqueStrings: {}, dateRanges: {} };
286
- const query = '';
317
+ let query = '';
287
318
  try {
288
319
  const tables = (0, ast_1.getTableNames)(baseAst);
289
320
  table = tables[0] ? tables[0] : '';
@@ -291,7 +322,7 @@ const fetchReportBuilderDataFromAST = async (baseAst, formData, schema, client,
291
322
  if (!table || !tableInfo) {
292
323
  throw new Error('No table found;');
293
324
  }
294
- const tableData = await (0, tableProcessing_1.fetchTableByAST)({ ...baseAst, where: formData }, client, { page: paginationProcessing_1.DEFAULT_PAGINATION });
325
+ const tableData = await (0, tableProcessing_1.fetchTableByAST)({ ...baseAst, where: formData }, client, processing ?? { page: paginationProcessing_1.DEFAULT_PAGINATION }, undefined, skipRowCount);
295
326
  if (tableData.error) {
296
327
  throw new Error(tableData.error);
297
328
  }
@@ -315,17 +346,32 @@ const fetchReportBuilderDataFromAST = async (baseAst, formData, schema, client,
315
346
  }),
316
347
  columnInternal: tableData.columns,
317
348
  };
318
- const queryResult = await (0, dataFetcher_1.fetchSqlQuery)({
319
- ...(0, astProcessing_1.createBasicSelectASTFromColumns)(tableInfo.columns, table),
320
- where: formData,
321
- }, client, formData);
322
- if (queryResult.error) {
323
- throw new Error(queryResult.error);
324
- }
325
349
  if (table !== currentTable || previousFormData !== formData) {
326
- const { uniqueStrings, dateRanges } = await (0, tableProcessing_1.getRelevantInfoFromQuery)(tableInfo.columns, client, queryResult.query, customFields);
327
- relevantInfo.uniqueStrings[table] = uniqueStrings ?? {};
328
- relevantInfo.dateRanges = dateRanges ?? {};
350
+ const queryResult = await (0, dataFetcher_1.fetchSqlQuery)({
351
+ ...(0, astProcessing_1.createBasicSelectASTFromColumns)(tableInfo.columns, table),
352
+ where: formData,
353
+ }, client, formData);
354
+ if (queryResult.error) {
355
+ throw new Error(queryResult.error);
356
+ }
357
+ query = queryResult.query;
358
+ if (!skipUniqueValues) {
359
+ const { uniqueStrings, dateRanges } = await (0, tableProcessing_1.getRelevantInfoFromQuery)(tableInfo.columns, client, queryResult.query, customFields);
360
+ relevantInfo.uniqueStrings[table] = uniqueStrings ?? {};
361
+ relevantInfo.dateRanges = dateRanges ?? {};
362
+ }
363
+ else {
364
+ const dateColumns = tableInfo.columns.filter((column) => {
365
+ return column.fieldType === 'date';
366
+ });
367
+ if (dateColumns.length > 0) {
368
+ const dateRanges = await (0, tableProcessing_1.getDateRangeByColumns)(dateColumns, queryResult.query, client, customFields ?? []);
369
+ if (dateRanges === null) {
370
+ throw new Error("Couldn't fetch date ranges");
371
+ }
372
+ relevantInfo.dateRanges = dateRanges ?? {};
373
+ }
374
+ }
329
375
  }
330
376
  if (!!relevantInfo.error) {
331
377
  throw new Error(relevantInfo.error);
@@ -1,7 +1,7 @@
1
- import { Client } from '../models/Client';
1
+ import { QuillProviderClient } from '../models/Client';
2
2
  import { Table } from '../models/Tables';
3
- export declare const getCustomFieldInfo: (client: Client, caller?: string) => Promise<any[]>;
4
- export declare const getSchemaInfoWithCustomFields: (client: Client, caller?: string) => Promise<{
3
+ export declare const getCustomFieldInfo: (client: QuillProviderClient, caller?: string) => Promise<any[]>;
4
+ export declare const getSchemaInfoWithCustomFields: (client: QuillProviderClient, caller?: string, tableIds?: string[]) => Promise<{
5
5
  schemaData: Table[];
6
6
  customFieldsByTable: any;
7
7
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAsDzC,eAAO,MAAM,kBAAkB,WAAkB,MAAM,oCA8EtD,CAAC;AAEF,eAAO,MAAM,6BAA6B,WAChC,MAAM,sBAEb,QAAQ;IAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IAAC,mBAAmB,EAAE,GAAG,CAAA;CAAE,CAmD3D,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAyDzC,eAAO,MAAM,kBAAkB,WACrB,mBAAmB,oCAqF5B,CAAC;AAEF,eAAO,MAAM,6BAA6B,WAChC,mBAAmB,8BAEhB,MAAM,EAAE,KAClB,QAAQ;IAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IAAC,mBAAmB,EAAE,GAAG,CAAA;CAAE,CAoD3D,CAAC"}
@@ -2,32 +2,35 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getSchemaInfoWithCustomFields = exports.getCustomFieldInfo = void 0;
4
4
  const columnProcessing_1 = require("./columnProcessing");
5
- const triggerSoftUpdate = async (client, tables) => {
6
- const { queryEndpoint, queryHeaders, publicKey, withCredentials } = client;
7
- tables.forEach(async (table) => {
8
- // if (table.isSelectStar) {
9
- fetch(`${queryEndpoint}?update-view`, {
10
- method: 'POST',
11
- headers: {
12
- ...queryHeaders,
13
- 'Content-Type': 'application/json',
14
- },
15
- credentials: withCredentials ? 'include' : 'omit',
16
- body: JSON.stringify({
17
- metadata: {
18
- preQueries: [table.viewQuery.replace(/;/, '')],
19
- clientId: publicKey,
20
- publicKey: publicKey,
21
- task: 'update-view',
22
- name: table.name,
23
- id: table._id,
24
- runQueryConfig: { getColumns: true },
25
- },
26
- }),
27
- });
28
- // }
29
- });
30
- };
5
+ // const triggerSoftUpdate = async (
6
+ // client: QuillProviderClient,
7
+ // tables: Table[],
8
+ // ) => {
9
+ // const { queryEndpoint, queryHeaders, publicKey, withCredentials } = client;
10
+ // tables.forEach(async (table: Table) => {
11
+ // // if (table.isSelectStar) {
12
+ // fetch(`${queryEndpoint}?update-view`, {
13
+ // method: 'POST',
14
+ // headers: {
15
+ // ...queryHeaders,
16
+ // 'Content-Type': 'application/json',
17
+ // },
18
+ // credentials: withCredentials ? 'include' : 'omit',
19
+ // body: JSON.stringify({
20
+ // metadata: {
21
+ // preQueries: [table.viewQuery.replace(/;/, '')],
22
+ // clientId: publicKey,
23
+ // publicKey: publicKey,
24
+ // task: 'update-view',
25
+ // name: table.name,
26
+ // id: table._id,
27
+ // runQueryConfig: { getColumns: true },
28
+ // },
29
+ // }),
30
+ // });
31
+ // // }
32
+ // });
33
+ // };
31
34
  const parseResponse = (results) => {
32
35
  if (results.data?.data) {
33
36
  if (results.data.data.queries &&
@@ -52,7 +55,7 @@ const parseResponse = (results) => {
52
55
  const getCustomFieldInfo = async (client, caller = 'se') => {
53
56
  let customFieldsByTableUnique = [];
54
57
  try {
55
- const { queryEndpoint, queryHeaders, publicKey, databaseType, customerId } = client;
58
+ const { queryEndpoint, queryHeaders, publicKey, databaseType, organizationId, } = client;
56
59
  if ((databaseType && databaseType.toLowerCase() !== 'postgresql') ||
57
60
  !['665610862cf7a3000be66453'].includes(publicKey)) {
58
61
  throw new Error('CUSTOM FIELDS IS ONLY ALLOWED FOR POSTGRESQL DATABASES');
@@ -70,7 +73,7 @@ const getCustomFieldInfo = async (client, caller = 'se') => {
70
73
  publicKey,
71
74
  task: 'custom-field-records',
72
75
  databaseType: databaseType,
73
- orgId: customerId,
76
+ orgId: organizationId,
74
77
  },
75
78
  }),
76
79
  });
@@ -115,11 +118,11 @@ const getCustomFieldInfo = async (client, caller = 'se') => {
115
118
  return customFieldsByTableUnique;
116
119
  };
117
120
  exports.getCustomFieldInfo = getCustomFieldInfo;
118
- const getSchemaInfoWithCustomFields = async (client, caller = 'se') => {
119
- const { queryEndpoint, queryHeaders, publicKey, customerId, withCredentials, } = client;
121
+ const getSchemaInfoWithCustomFields = async (client, caller = 'se', tableIds) => {
122
+ const { queryEndpoint, queryHeaders, publicKey, organizationId, withCredentials, } = client;
120
123
  let customFieldsByTableUnique = [];
121
124
  let getCustomFields = true;
122
- if (!customerId || customerId !== '*') {
125
+ if (!organizationId || organizationId !== '*') {
123
126
  try {
124
127
  customFieldsByTableUnique = await (0, exports.getCustomFieldInfo)(client, caller);
125
128
  }
@@ -140,12 +143,13 @@ const getSchemaInfoWithCustomFields = async (client, caller = 'se') => {
140
143
  publicKey: publicKey,
141
144
  task: 'schema',
142
145
  removeCustomerField: true,
143
- getCustomFields: !client.customerId ||
144
- client.customerId === '*' ||
146
+ getCustomFields: !client.organizationId ||
147
+ client.organizationId === '*' ||
145
148
  (customFieldsByTableUnique.length === 0 && !getCustomFields)
146
149
  ? false
147
150
  : true,
148
- orgId: client.customerId || '*',
151
+ orgId: client.organizationId || '*',
152
+ tableIds,
149
153
  customFieldsByTable: customFieldsByTableUnique,
150
154
  gatherSchemaData: '665610862cf7a3000be66453' === publicKey ? true : false,
151
155
  },
@@ -154,7 +158,7 @@ const getSchemaInfoWithCustomFields = async (client, caller = 'se') => {
154
158
  const result = await response.json();
155
159
  const parsedData = parseResponse(result);
156
160
  const converted = convertSchemaInfoToTable(parsedData);
157
- triggerSoftUpdate(client, converted);
161
+ // triggerSoftUpdate(client, converted);
158
162
  return {
159
163
  schemaData: converted,
160
164
  customFieldsByTable: customFieldsByTableUnique,
@@ -1,6 +1,7 @@
1
1
  import { NodeSQLParser } from '../components/ReportBuilder/ast';
2
- import { Client } from '../models/Client';
2
+ import { QuillProviderClient } from '../models/Client';
3
3
  import { Column, ColumnInternal } from '../models/Columns';
4
+ import { DashboardFilter } from '../models/Filter';
4
5
  import { Pagination } from '../models/Pagination';
5
6
  import { DateRangesByColumn, UniqueValuesByColumn } from '../models/Tables';
6
7
  export interface AdditionalProcessing {
@@ -9,22 +10,25 @@ export interface AdditionalProcessing {
9
10
  direction: string;
10
11
  };
11
12
  page?: Pagination;
12
- last?: any;
13
+ last?: number;
13
14
  }
14
15
  export declare const hasColumnAlias: (columns: Column[], referencedColumns: string[]) => boolean;
15
- export declare const getUniqueValuesByColumns: (columns: Column[], query: string, rows: any, client: Client, customFields: any[]) => Promise<{
16
+ export declare const getUniqueValuesByColumns: (columns: Column[], query: string, rows: any, client: QuillProviderClient, customFields: any[]) => Promise<{
16
17
  [column: string]: {
17
18
  [value: string]: boolean;
18
19
  };
19
20
  } | null>;
20
- export declare const getUniqueStringValues: (columns: ColumnInternal[], tableName: string, client: any, customFields?: any, previousUniqueValues?: any) => Promise<any>;
21
- export declare const getRelevantInfoFromQuery: (columns: ColumnInternal[], client: Client, query: string, customFields?: any) => Promise<{
21
+ export declare const getUniqueStringValues: (columns: ColumnInternal[], tableName: string, client: any, customFields?: any, previousUniqueValues?: any, withExceededColumns?: boolean, query?: string) => Promise<any>;
22
+ export declare const getRelevantInfoFromQuery: (columns: ColumnInternal[], client: QuillProviderClient, query: string, customFields?: any) => Promise<{
22
23
  uniqueStrings?: UniqueValuesByColumn | undefined;
23
24
  dateRanges?: DateRangesByColumn | undefined;
24
25
  error?: string | undefined;
25
26
  }>;
26
- export declare const getCountsByColumns: (columns: Column[], query: string, client: Client, customFields: any[]) => Promise<Column[]>;
27
- export declare const getDateRangeByColumns: (columns: Column[], query: string, client: Client, customFields: any[]) => Promise<{
27
+ export declare const getCountsByColumns: (columns: Column[], query: string, client: QuillProviderClient, customFields: any[]) => Promise<{
28
+ filteredColumns: Column[];
29
+ exceededColumns: Column[] | undefined;
30
+ }>;
31
+ export declare const getDateRangeByColumns: (columns: Column[], query: string, client: QuillProviderClient, customFields: any[]) => Promise<{
28
32
  [column: string]: {
29
33
  dateRange: {
30
34
  start: Date;
@@ -32,26 +36,29 @@ export declare const getDateRangeByColumns: (columns: Column[], query: string, c
32
36
  };
33
37
  };
34
38
  } | null>;
35
- export declare const getPaginatedRows: (client: Client, query?: string, reportId?: string, processing?: AdditionalProcessing, filters?: any, customFields?: any) => Promise<{
39
+ export declare const getPaginatedRows: (client: QuillProviderClient, query?: string, reportId?: string, processing?: AdditionalProcessing, filters?: any, customFields?: any) => Promise<{
36
40
  columns: Column[];
37
41
  rows: any[];
38
42
  rowCount?: number;
39
43
  error?: string;
40
44
  }>;
41
- export declare const fetchTableByQuery: (query: string, client: Client, processing?: AdditionalProcessing, customFields?: any) => Promise<{
45
+ export declare const fetchResultsByQuery: (query: string, client: QuillProviderClient, processing?: AdditionalProcessing, customFields?: any, filters?: DashboardFilter[], dateField?: {
46
+ field: string;
47
+ table: string;
48
+ } | null, rowsOnly?: boolean, rowCountOnly?: boolean) => Promise<{
42
49
  columns: ColumnInternal[];
43
50
  rows: any[];
44
51
  rowCount?: number | undefined;
45
52
  error?: string | undefined;
46
53
  itemQuery?: string[] | undefined;
47
54
  }>;
48
- export declare const fetchTableByReport: (reportId: string, client: Client, processing?: AdditionalProcessing, filters?: any, customFields?: any) => Promise<{
55
+ export declare const fetchResultsByReport: (reportId: string, client: QuillProviderClient, processing?: AdditionalProcessing, filters?: any, customFields?: any, rowsOnly?: boolean, rowCountOnly?: boolean) => Promise<{
49
56
  columns: Column[];
50
57
  rows: any[];
51
58
  rowCount?: number | undefined;
52
59
  error?: string | undefined;
53
60
  }>;
54
- export declare const fetchTableByAST: (ast: NodeSQLParser.Select, client: Client, processing?: AdditionalProcessing, customFields?: any) => Promise<{
61
+ export declare const fetchTableByAST: (ast: NodeSQLParser.Select, client: QuillProviderClient, processing?: AdditionalProcessing, customFields?: any, rowsOnly?: boolean, rowCountOnly?: boolean) => Promise<{
55
62
  columns: ColumnInternal[];
56
63
  rows: any[];
57
64
  rowCount?: number | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"tableProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/tableProcessing.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EACd,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAgB5E,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,eAAO,MAAM,cAAc,YAChB,MAAM,EAAE,qBACE,MAAM,EAAE,KAC1B,OAUF,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAC1B,MAAM,EAAE,SACV,MAAM,QACP,GAAG,UACD,MAAM,gBACA,GAAG,EAAE;;;;SAmEpB,CAAC;AAEF,eAAO,MAAM,qBAAqB,YACvB,cAAc,EAAE,aACd,MAAM,UACT,GAAG,iBACI,GAAG,yBACK,GAAG,iBAkC3B,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAC1B,cAAc,EAAE,UACjB,MAAM,SACP,MAAM,iBACE,GAAG;;;;EA6DnB,CAAC;AAEF,eAAO,MAAM,kBAAkB,YACpB,MAAM,EAAE,SACV,MAAM,UACL,MAAM,gBACA,GAAG,EAAE,KAClB,QAAQ,MAAM,EAAE,CA2ClB,CAAC;AAkDF,eAAO,MAAM,qBAAqB,YACvB,MAAM,EAAE,SACV,MAAM,UACL,MAAM,gBACA,GAAG,EAAE;;mBAEY;YAAE,KAAK,EAAE,IAAI,CAAC;YAAC,GAAG,EAAE,IAAI,CAAA;SAAE;;SAiB1D,CAAC;AA2DF,eAAO,MAAM,gBAAgB,WACnB,MAAM,UACN,MAAM,aACH,MAAM,eACJ,oBAAoB,YACvB,GAAG,iBACE,GAAG,KACjB,QAAQ;IACT,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAaA,CAAC;AAEF,eAAO,MAAM,iBAAiB,UACrB,MAAM,UACL,MAAM,eACD,oBAAoB,iBAClB,GAAG;aAET,cAAc,EAAE;UACnB,GAAG,EAAE;;;;EAqDZ,CAAC;AAEF,eAAO,MAAM,kBAAkB,aACnB,MAAM,UACR,MAAM,eACD,oBAAoB,YACvB,GAAG,iBACE,GAAG;aAET,MAAM,EAAE;UACX,GAAG,EAAE;;;EAgFZ,CAAC;AAEF,eAAO,MAAM,eAAe,QACrB,cAAc,MAAM,UACjB,MAAM,eACD,oBAAoB,iBAClB,GAAG;aAET,cAAc,EAAE;UACnB,GAAG,EAAE;;;;EAuDZ,CAAC;AAEF,eAAO,MAAM,+CAA+C,0BACnC,oBAAoB;;CAU5C,CAAC"}
1
+ {"version":3,"file":"tableProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/tableProcessing.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EACd,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAgB5E,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,cAAc,YAChB,MAAM,EAAE,qBACE,MAAM,EAAE,KAC1B,OAUF,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAC1B,MAAM,EAAE,SACV,MAAM,QACP,GAAG,UACD,mBAAmB,gBACb,GAAG,EAAE;;;;SAmEpB,CAAC;AAEF,eAAO,MAAM,qBAAqB,YACvB,cAAc,EAAE,aACd,MAAM,UACT,GAAG,iBACI,GAAG,yBACK,GAAG,wBACJ,OAAO,UACrB,MAAM,iBA2Cf,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAC1B,cAAc,EAAE,UACjB,mBAAmB,SACpB,MAAM,iBACE,GAAG;;;;EA6DnB,CAAC;AAEF,eAAO,MAAM,kBAAkB,YACpB,MAAM,EAAE,SACV,MAAM,UACL,mBAAmB,gBACb,GAAG,EAAE,KAClB,QAAQ;IACT,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACvC,CAiDA,CAAC;AAkDF,eAAO,MAAM,qBAAqB,YACvB,MAAM,EAAE,SACV,MAAM,UACL,mBAAmB,gBACb,GAAG,EAAE;;mBAEY;YAAE,KAAK,EAAE,IAAI,CAAC;YAAC,GAAG,EAAE,IAAI,CAAA;SAAE;;SAiB1D,CAAC;AA2DF,eAAO,MAAM,gBAAgB,WACnB,mBAAmB,UACnB,MAAM,aACH,MAAM,eACJ,oBAAoB,YACvB,GAAG,iBACE,GAAG,KACjB,QAAQ;IACT,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAaA,CAAC;AAEF,eAAO,MAAM,mBAAmB,UACvB,MAAM,UACL,mBAAmB,eACd,oBAAoB,iBAClB,GAAG,YACR,eAAe,EAAE,cACf;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,aACxC,OAAO,iBACH,OAAO;aAEb,cAAc,EAAE;UACnB,GAAG,EAAE;;;;EA2DZ,CAAC;AAEF,eAAO,MAAM,oBAAoB,aACrB,MAAM,UACR,mBAAmB,eACd,oBAAoB,YACvB,GAAG,iBACE,GAAG,aACP,OAAO,iBACH,OAAO;aAEb,MAAM,EAAE;UACX,GAAG,EAAE;;;EAkFZ,CAAC;AAEF,eAAO,MAAM,eAAe,QACrB,cAAc,MAAM,UACjB,mBAAmB,eACd,oBAAoB,iBAClB,GAAG,aACP,OAAO,iBACH,OAAO;aAEb,cAAc,EAAE;UACnB,GAAG,EAAE;;;;EAyDZ,CAAC;AAEF,eAAO,MAAM,+CAA+C,0BACnC,oBAAoB;;CAU5C,CAAC"}