@quillsql/react 2.12.28 → 2.12.30

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 (502) hide show
  1. package/dist/cjs/Chart.d.ts +24 -10
  2. package/dist/cjs/Chart.d.ts.map +1 -1
  3. package/dist/cjs/Chart.js +151 -189
  4. package/dist/cjs/ChartBuilder.d.ts +51 -11
  5. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  6. package/dist/cjs/ChartBuilder.js +162 -101
  7. package/dist/cjs/ChartEditor.d.ts +13 -1
  8. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  9. package/dist/cjs/ChartEditor.js +62 -121
  10. package/dist/cjs/Context.d.ts +1 -19
  11. package/dist/cjs/Context.d.ts.map +1 -1
  12. package/dist/cjs/Context.js +74 -85
  13. package/dist/cjs/Dashboard.d.ts +16 -7
  14. package/dist/cjs/Dashboard.d.ts.map +1 -1
  15. package/dist/cjs/Dashboard.js +90 -68
  16. package/dist/cjs/DateRangePicker/Calendar.d.ts.map +1 -1
  17. package/dist/cjs/DateRangePicker/Calendar.js +3 -6
  18. package/dist/cjs/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  19. package/dist/cjs/DateRangePicker/DateRangePicker.js +2 -3
  20. package/dist/cjs/DateRangePicker/DateRangePickerButton.d.ts +1 -2
  21. package/dist/cjs/DateRangePicker/DateRangePickerButton.d.ts.map +1 -1
  22. package/dist/cjs/DateRangePicker/DateRangePickerButton.js +2 -4
  23. package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts +2 -1
  24. package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
  25. package/dist/cjs/DateRangePicker/QuillDateRangePicker.js +4 -4
  26. package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts +1 -1
  27. package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
  28. package/dist/cjs/DateRangePicker/dateRangePickerUtils.js +1 -15
  29. package/dist/cjs/ReportBuilder.d.ts +22 -1
  30. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  31. package/dist/cjs/ReportBuilder.js +758 -505
  32. package/dist/cjs/SQLEditor.d.ts +2 -9
  33. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  34. package/dist/cjs/SQLEditor.js +142 -90
  35. package/dist/cjs/Table.d.ts +19 -3
  36. package/dist/cjs/Table.d.ts.map +1 -1
  37. package/dist/cjs/Table.js +110 -92
  38. package/dist/cjs/TableChart.d.ts.map +1 -1
  39. package/dist/cjs/TableChart.js +0 -1
  40. package/dist/cjs/assets/ArrowDownHeadIcon.d.ts.map +1 -1
  41. package/dist/cjs/assets/ArrowDownIcon.d.ts.map +1 -1
  42. package/dist/cjs/assets/ArrowDownRightIcon.d.ts.map +1 -1
  43. package/dist/cjs/assets/ArrowLeftHeadIcon.d.ts.map +1 -1
  44. package/dist/cjs/assets/ArrowRightHeadIcon.d.ts.map +1 -1
  45. package/dist/cjs/assets/ArrowRightIcon.d.ts.map +1 -1
  46. package/dist/cjs/assets/ArrowUpHeadIcon.d.ts.map +1 -1
  47. package/dist/cjs/assets/ArrowUpIcon.d.ts.map +1 -1
  48. package/dist/cjs/assets/ArrowUpRightIcon.d.ts.map +1 -1
  49. package/dist/cjs/assets/CalendarIcon.d.ts.map +1 -1
  50. package/dist/cjs/assets/DoubleArrowLeftHeadIcon.d.ts.map +1 -1
  51. package/dist/cjs/assets/DoubleArrowRightHeadIcon.d.ts.map +1 -1
  52. package/dist/cjs/assets/ExclamationFilledIcon.d.ts.map +1 -1
  53. package/dist/cjs/assets/LoadingSpinner.d.ts.map +1 -1
  54. package/dist/cjs/assets/SearchIcon.d.ts.map +1 -1
  55. package/dist/cjs/assets/XCircleIcon.d.ts.map +1 -1
  56. package/dist/cjs/components/Banner/index.d.ts +1 -1
  57. package/dist/cjs/components/Banner/index.d.ts.map +1 -1
  58. package/dist/cjs/components/Banner/index.js +1 -1
  59. package/dist/cjs/components/BigModal/BigModal.d.ts.map +1 -1
  60. package/dist/cjs/components/BigModal/BigModal.js +6 -12
  61. package/dist/cjs/components/Chart/BarList.d.ts.map +1 -1
  62. package/dist/cjs/components/Chart/BarList.js +21 -14
  63. package/dist/cjs/components/Chart/ChartError.d.ts +8 -1
  64. package/dist/cjs/components/Chart/ChartError.d.ts.map +1 -1
  65. package/dist/cjs/components/Chart/ChartError.js +40 -5
  66. package/dist/cjs/components/Chart/ChartTooltip.d.ts.map +1 -1
  67. package/dist/cjs/components/Chart/ChartTooltip.js +8 -2
  68. package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
  69. package/dist/cjs/components/Chart/LineChart.js +2 -2
  70. package/dist/cjs/components/Chart/PieChart.d.ts.map +1 -1
  71. package/dist/cjs/components/Chart/PieChart.js +1 -3
  72. package/dist/cjs/components/Dashboard/ChartComponent.d.ts +1 -1
  73. package/dist/cjs/components/Dashboard/ChartComponent.d.ts.map +1 -1
  74. package/dist/cjs/components/Dashboard/ChartComponent.js +1 -1
  75. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts +5 -1
  76. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  77. package/dist/cjs/components/Dashboard/DashboardFilter.js +10 -5
  78. package/dist/cjs/components/Dashboard/DataLoader.d.ts +2 -6
  79. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  80. package/dist/cjs/components/Dashboard/DataLoader.js +98 -187
  81. package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
  82. package/dist/cjs/components/Dashboard/MetricComponent.js +1 -1
  83. package/dist/cjs/components/Dashboard/TableComponent.d.ts +1 -4
  84. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  85. package/dist/cjs/components/Dashboard/TableComponent.js +3 -3
  86. package/dist/cjs/components/Dropdown/Dropdown.d.ts.map +1 -1
  87. package/dist/cjs/components/Dropdown/Dropdown.js +1 -3
  88. package/dist/cjs/components/Dropdown/DropdownItem.d.ts.map +1 -1
  89. package/dist/cjs/components/Dropdown/DropdownItem.js +3 -8
  90. package/dist/cjs/components/Dropdown/index.d.ts +2 -2
  91. package/dist/cjs/components/Modal/Modal.d.ts.map +1 -1
  92. package/dist/cjs/components/Modal/Modal.js +2 -3
  93. package/dist/cjs/components/Modal/index.d.ts +1 -1
  94. package/dist/cjs/components/QuillMultiSelect.d.ts.map +1 -1
  95. package/dist/cjs/components/QuillMultiSelect.js +18 -3
  96. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  97. package/dist/cjs/components/QuillMultiSelectWithCombo.js +2 -2
  98. package/dist/cjs/components/QuillSelect.js +1 -1
  99. package/dist/cjs/components/QuillSelectWithCombo.js +2 -2
  100. package/dist/cjs/components/QuillTable.d.ts +1 -4
  101. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  102. package/dist/cjs/components/QuillTable.js +5 -11
  103. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts +3 -1
  104. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  105. package/dist/cjs/components/ReportBuilder/AddColumnModal.js +5 -8
  106. package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  107. package/dist/cjs/components/ReportBuilder/AddLimitPopover.js +1 -3
  108. package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  109. package/dist/cjs/components/ReportBuilder/AddSortPopover.js +12 -1
  110. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts +22 -0
  111. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts.map +1 -0
  112. package/dist/cjs/components/ReportBuilder/FilterModal.js +555 -0
  113. package/dist/cjs/components/ReportBuilder/ast.d.ts +2 -1
  114. package/dist/cjs/components/ReportBuilder/ast.d.ts.map +1 -1
  115. package/dist/cjs/components/ReportBuilder/ast.js +33 -6
  116. package/dist/cjs/components/ReportBuilder/constants.d.ts +18 -3
  117. package/dist/cjs/components/ReportBuilder/constants.d.ts.map +1 -1
  118. package/dist/cjs/components/ReportBuilder/constants.js +24 -3
  119. package/dist/cjs/components/ReportBuilder/convert.d.ts +12 -15
  120. package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
  121. package/dist/cjs/components/ReportBuilder/convert.js +326 -494
  122. package/dist/cjs/components/ReportBuilder/operators.d.ts +24 -4
  123. package/dist/cjs/components/ReportBuilder/operators.d.ts.map +1 -1
  124. package/dist/cjs/components/ReportBuilder/operators.js +32 -4
  125. package/dist/cjs/components/ReportBuilder/ui.d.ts +20 -0
  126. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  127. package/dist/cjs/components/ReportBuilder/ui.js +30 -4
  128. package/dist/cjs/components/ReportBuilder/util.d.ts +3 -11
  129. package/dist/cjs/components/ReportBuilder/util.d.ts.map +1 -1
  130. package/dist/cjs/components/ReportBuilder/util.js +15 -18
  131. package/dist/cjs/components/UiComponents.d.ts +10 -7
  132. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  133. package/dist/cjs/components/UiComponents.js +9 -8
  134. package/dist/cjs/components/selectUtils.d.ts +0 -1
  135. package/dist/cjs/components/selectUtils.d.ts.map +1 -1
  136. package/dist/cjs/components/selectUtils.js +1 -22
  137. package/dist/cjs/hooks/index.d.ts +4 -4
  138. package/dist/cjs/hooks/useAstToFilterTree.d.ts +11 -0
  139. package/dist/cjs/hooks/useAstToFilterTree.d.ts.map +1 -0
  140. package/dist/cjs/hooks/useAstToFilterTree.js +26 -0
  141. package/dist/cjs/hooks/useDashboard.d.ts +1 -1
  142. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  143. package/dist/cjs/hooks/useDashboard.js +22 -4
  144. package/dist/cjs/hooks/useExport.d.ts.map +1 -1
  145. package/dist/cjs/hooks/useExport.js +3 -1
  146. package/dist/cjs/hooks/useOnClickOutside.js +4 -4
  147. package/dist/cjs/hooks/useOnWindowResize.d.ts.map +1 -1
  148. package/dist/cjs/hooks/useOnWindowResize.js +2 -2
  149. package/dist/cjs/hooks/useQuill.d.ts +10 -27
  150. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  151. package/dist/cjs/hooks/useQuill.js +114 -82
  152. package/dist/cjs/hooks/useSelectOnKeyDown.d.ts.map +1 -1
  153. package/dist/cjs/hooks/useSelectOnKeyDown.js +4 -4
  154. package/dist/cjs/hooks/useTheme.js +1 -1
  155. package/dist/cjs/index.d.ts +1 -0
  156. package/dist/cjs/index.d.ts.map +1 -1
  157. package/dist/cjs/index.js +3 -1
  158. package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  159. package/dist/cjs/internals/ReportBuilder/PivotForm.js +8 -1
  160. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts +2 -2
  161. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  162. package/dist/cjs/internals/ReportBuilder/PivotList.js +2 -2
  163. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +1 -1
  164. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  165. package/dist/cjs/internals/ReportBuilder/PivotModal.js +64 -78
  166. package/dist/cjs/lib/utils.js +2 -2
  167. package/dist/cjs/models/Filter.d.ts +104 -4
  168. package/dist/cjs/models/Filter.d.ts.map +1 -1
  169. package/dist/cjs/models/Filter.js +91 -0
  170. package/dist/cjs/models/Pagination.d.ts +10 -0
  171. package/dist/cjs/models/Pagination.d.ts.map +1 -0
  172. package/dist/cjs/models/Pagination.js +2 -0
  173. package/dist/cjs/models/Report.d.ts +116 -0
  174. package/dist/cjs/models/Report.d.ts.map +1 -0
  175. package/dist/cjs/models/Report.js +2 -0
  176. package/dist/cjs/utils/aggregate.js +1 -1
  177. package/dist/cjs/utils/astFilterProcessing.d.ts +36 -0
  178. package/dist/cjs/utils/astFilterProcessing.d.ts.map +1 -0
  179. package/dist/cjs/utils/astFilterProcessing.js +8056 -0
  180. package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
  181. package/dist/cjs/utils/astProcessing.js +4 -3
  182. package/dist/cjs/utils/axisFormatter.js +0 -71
  183. package/dist/cjs/utils/color.js +9 -87
  184. package/dist/cjs/utils/columnProcessing.d.ts +1 -0
  185. package/dist/cjs/utils/columnProcessing.d.ts.map +1 -1
  186. package/dist/cjs/utils/columnProcessing.js +8 -1
  187. package/dist/cjs/utils/csv.d.ts.map +1 -1
  188. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  189. package/dist/cjs/utils/dashboard.js +4 -4
  190. package/dist/cjs/utils/dataFetcher.d.ts +1 -1
  191. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
  192. package/dist/cjs/utils/dataFetcher.js +72 -5
  193. package/dist/cjs/utils/dataProcessing.d.ts +8 -0
  194. package/dist/cjs/utils/dataProcessing.d.ts.map +1 -0
  195. package/dist/cjs/utils/dataProcessing.js +127 -0
  196. package/dist/cjs/utils/dates.d.ts +2 -1
  197. package/dist/cjs/utils/dates.d.ts.map +1 -1
  198. package/dist/cjs/utils/dates.js +12 -3
  199. package/dist/cjs/utils/error.d.ts +5 -0
  200. package/dist/cjs/utils/error.d.ts.map +1 -0
  201. package/dist/cjs/utils/error.js +12 -0
  202. package/dist/cjs/utils/filterConstants.d.ts +34 -0
  203. package/dist/cjs/utils/filterConstants.d.ts.map +1 -0
  204. package/dist/cjs/utils/filterConstants.js +36 -0
  205. package/dist/cjs/utils/filterProcessing.js +4 -4
  206. package/dist/cjs/utils/logging.d.ts.map +1 -1
  207. package/dist/cjs/utils/logging.js +1 -0
  208. package/dist/cjs/utils/merge.js +0 -21
  209. package/dist/cjs/utils/monacoConfig.d.ts +21 -0
  210. package/dist/cjs/utils/monacoConfig.d.ts.map +1 -0
  211. package/dist/cjs/utils/monacoConfig.js +324 -0
  212. package/dist/cjs/utils/paginationProcessing.d.ts +5 -0
  213. package/dist/cjs/utils/paginationProcessing.d.ts.map +1 -0
  214. package/dist/cjs/utils/paginationProcessing.js +30 -0
  215. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  216. package/dist/cjs/utils/pivotConstructor.js +67 -5
  217. package/dist/cjs/utils/pivotProcessing.d.ts.map +1 -1
  218. package/dist/cjs/utils/pivotProcessing.js +12 -6
  219. package/dist/cjs/utils/queryConstructor.d.ts +4 -2
  220. package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
  221. package/dist/cjs/utils/queryConstructor.js +121 -59
  222. package/dist/cjs/utils/report.d.ts +7 -0
  223. package/dist/cjs/utils/report.d.ts.map +1 -0
  224. package/dist/cjs/utils/report.js +93 -0
  225. package/dist/cjs/utils/schema.d.ts.map +1 -1
  226. package/dist/cjs/utils/schema.js +35 -6
  227. package/dist/cjs/utils/styles.d.ts +1 -1
  228. package/dist/cjs/utils/styles.d.ts.map +1 -1
  229. package/dist/cjs/utils/tableProcessing.d.ts +23 -8
  230. package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
  231. package/dist/cjs/utils/tableProcessing.js +156 -38
  232. package/dist/cjs/utils/textProcessing.js +3 -3
  233. package/dist/cjs/utils/validation.d.ts +9 -0
  234. package/dist/cjs/utils/validation.d.ts.map +1 -0
  235. package/dist/cjs/utils/validation.js +24 -0
  236. package/dist/cjs/utils/valueFormatter.d.ts.map +1 -1
  237. package/dist/cjs/utils/valueFormatter.js +8 -4
  238. package/dist/esm/Chart.d.ts +24 -10
  239. package/dist/esm/Chart.d.ts.map +1 -1
  240. package/dist/esm/Chart.js +154 -192
  241. package/dist/esm/ChartBuilder.d.ts +51 -11
  242. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  243. package/dist/esm/ChartBuilder.js +161 -101
  244. package/dist/esm/ChartEditor.d.ts +13 -1
  245. package/dist/esm/ChartEditor.d.ts.map +1 -1
  246. package/dist/esm/ChartEditor.js +63 -122
  247. package/dist/esm/Context.d.ts +1 -19
  248. package/dist/esm/Context.d.ts.map +1 -1
  249. package/dist/esm/Context.js +74 -84
  250. package/dist/esm/Dashboard.d.ts +16 -7
  251. package/dist/esm/Dashboard.d.ts.map +1 -1
  252. package/dist/esm/Dashboard.js +91 -69
  253. package/dist/esm/DateRangePicker/Calendar.d.ts.map +1 -1
  254. package/dist/esm/DateRangePicker/Calendar.js +5 -8
  255. package/dist/esm/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  256. package/dist/esm/DateRangePicker/DateRangePicker.js +2 -3
  257. package/dist/esm/DateRangePicker/DateRangePickerButton.d.ts +1 -2
  258. package/dist/esm/DateRangePicker/DateRangePickerButton.d.ts.map +1 -1
  259. package/dist/esm/DateRangePicker/DateRangePickerButton.js +2 -4
  260. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts +2 -1
  261. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
  262. package/dist/esm/DateRangePicker/QuillDateRangePicker.js +4 -4
  263. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts +1 -1
  264. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
  265. package/dist/esm/DateRangePicker/dateRangePickerUtils.js +1 -15
  266. package/dist/esm/ReportBuilder.d.ts +22 -1
  267. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  268. package/dist/esm/ReportBuilder.js +766 -513
  269. package/dist/esm/SQLEditor.d.ts +2 -9
  270. package/dist/esm/SQLEditor.d.ts.map +1 -1
  271. package/dist/esm/SQLEditor.js +144 -92
  272. package/dist/esm/Table.d.ts +19 -3
  273. package/dist/esm/Table.d.ts.map +1 -1
  274. package/dist/esm/Table.js +112 -94
  275. package/dist/esm/TableChart.d.ts.map +1 -1
  276. package/dist/esm/TableChart.js +0 -1
  277. package/dist/esm/assets/ArrowDownHeadIcon.d.ts.map +1 -1
  278. package/dist/esm/assets/ArrowDownIcon.d.ts.map +1 -1
  279. package/dist/esm/assets/ArrowDownRightIcon.d.ts.map +1 -1
  280. package/dist/esm/assets/ArrowLeftHeadIcon.d.ts.map +1 -1
  281. package/dist/esm/assets/ArrowRightHeadIcon.d.ts.map +1 -1
  282. package/dist/esm/assets/ArrowRightIcon.d.ts.map +1 -1
  283. package/dist/esm/assets/ArrowUpHeadIcon.d.ts.map +1 -1
  284. package/dist/esm/assets/ArrowUpIcon.d.ts.map +1 -1
  285. package/dist/esm/assets/ArrowUpRightIcon.d.ts.map +1 -1
  286. package/dist/esm/assets/CalendarIcon.d.ts.map +1 -1
  287. package/dist/esm/assets/DoubleArrowLeftHeadIcon.d.ts.map +1 -1
  288. package/dist/esm/assets/DoubleArrowRightHeadIcon.d.ts.map +1 -1
  289. package/dist/esm/assets/ExclamationFilledIcon.d.ts.map +1 -1
  290. package/dist/esm/assets/LoadingSpinner.d.ts.map +1 -1
  291. package/dist/esm/assets/SearchIcon.d.ts.map +1 -1
  292. package/dist/esm/assets/XCircleIcon.d.ts.map +1 -1
  293. package/dist/esm/components/Banner/index.d.ts +1 -1
  294. package/dist/esm/components/Banner/index.d.ts.map +1 -1
  295. package/dist/esm/components/Banner/index.js +1 -1
  296. package/dist/esm/components/BigModal/BigModal.d.ts.map +1 -1
  297. package/dist/esm/components/BigModal/BigModal.js +7 -13
  298. package/dist/esm/components/Chart/BarList.d.ts.map +1 -1
  299. package/dist/esm/components/Chart/BarList.js +21 -14
  300. package/dist/esm/components/Chart/ChartError.d.ts +8 -1
  301. package/dist/esm/components/Chart/ChartError.d.ts.map +1 -1
  302. package/dist/esm/components/Chart/ChartError.js +39 -6
  303. package/dist/esm/components/Chart/ChartTooltip.d.ts.map +1 -1
  304. package/dist/esm/components/Chart/ChartTooltip.js +8 -2
  305. package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
  306. package/dist/esm/components/Chart/LineChart.js +2 -2
  307. package/dist/esm/components/Chart/PieChart.d.ts.map +1 -1
  308. package/dist/esm/components/Chart/PieChart.js +1 -3
  309. package/dist/esm/components/Dashboard/ChartComponent.d.ts +1 -1
  310. package/dist/esm/components/Dashboard/ChartComponent.d.ts.map +1 -1
  311. package/dist/esm/components/Dashboard/ChartComponent.js +1 -1
  312. package/dist/esm/components/Dashboard/DashboardFilter.d.ts +5 -1
  313. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  314. package/dist/esm/components/Dashboard/DashboardFilter.js +10 -5
  315. package/dist/esm/components/Dashboard/DataLoader.d.ts +2 -6
  316. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  317. package/dist/esm/components/Dashboard/DataLoader.js +98 -187
  318. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
  319. package/dist/esm/components/Dashboard/MetricComponent.js +1 -1
  320. package/dist/esm/components/Dashboard/TableComponent.d.ts +1 -4
  321. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  322. package/dist/esm/components/Dashboard/TableComponent.js +3 -3
  323. package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
  324. package/dist/esm/components/Dropdown/Dropdown.js +2 -4
  325. package/dist/esm/components/Dropdown/DropdownItem.d.ts.map +1 -1
  326. package/dist/esm/components/Dropdown/DropdownItem.js +4 -9
  327. package/dist/esm/components/Dropdown/index.d.ts +2 -2
  328. package/dist/esm/components/Dropdown/index.js +2 -2
  329. package/dist/esm/components/Modal/Modal.d.ts.map +1 -1
  330. package/dist/esm/components/Modal/Modal.js +2 -3
  331. package/dist/esm/components/Modal/index.d.ts +1 -1
  332. package/dist/esm/components/Modal/index.js +1 -1
  333. package/dist/esm/components/QuillMultiSelect.d.ts.map +1 -1
  334. package/dist/esm/components/QuillMultiSelect.js +18 -3
  335. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  336. package/dist/esm/components/QuillMultiSelectWithCombo.js +2 -2
  337. package/dist/esm/components/QuillSelect.js +1 -1
  338. package/dist/esm/components/QuillSelectWithCombo.js +2 -2
  339. package/dist/esm/components/QuillTable.d.ts +1 -4
  340. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  341. package/dist/esm/components/QuillTable.js +5 -11
  342. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts +3 -1
  343. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  344. package/dist/esm/components/ReportBuilder/AddColumnModal.js +8 -11
  345. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  346. package/dist/esm/components/ReportBuilder/AddLimitPopover.js +2 -4
  347. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  348. package/dist/esm/components/ReportBuilder/AddSortPopover.js +12 -1
  349. package/dist/esm/components/ReportBuilder/FilterModal.d.ts +22 -0
  350. package/dist/esm/components/ReportBuilder/FilterModal.d.ts.map +1 -0
  351. package/dist/esm/components/ReportBuilder/FilterModal.js +552 -0
  352. package/dist/esm/components/ReportBuilder/ast.d.ts +2 -1
  353. package/dist/esm/components/ReportBuilder/ast.d.ts.map +1 -1
  354. package/dist/esm/components/ReportBuilder/ast.js +31 -5
  355. package/dist/esm/components/ReportBuilder/constants.d.ts +18 -3
  356. package/dist/esm/components/ReportBuilder/constants.d.ts.map +1 -1
  357. package/dist/esm/components/ReportBuilder/constants.js +24 -3
  358. package/dist/esm/components/ReportBuilder/convert.d.ts +12 -15
  359. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
  360. package/dist/esm/components/ReportBuilder/convert.js +324 -493
  361. package/dist/esm/components/ReportBuilder/convert.uspec.d.ts +2 -0
  362. package/dist/esm/components/ReportBuilder/convert.uspec.d.ts.map +1 -0
  363. package/dist/esm/components/ReportBuilder/convert.uspec.js +1152 -0
  364. package/dist/esm/components/ReportBuilder/operators.d.ts +24 -4
  365. package/dist/esm/components/ReportBuilder/operators.d.ts.map +1 -1
  366. package/dist/esm/components/ReportBuilder/operators.js +32 -4
  367. package/dist/esm/components/ReportBuilder/ui.d.ts +20 -0
  368. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  369. package/dist/esm/components/ReportBuilder/ui.js +28 -3
  370. package/dist/esm/components/ReportBuilder/util.d.ts +3 -11
  371. package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -1
  372. package/dist/esm/components/ReportBuilder/util.js +16 -19
  373. package/dist/esm/components/UiComponents.d.ts +10 -7
  374. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  375. package/dist/esm/components/UiComponents.js +9 -8
  376. package/dist/esm/components/selectUtils.d.ts +0 -1
  377. package/dist/esm/components/selectUtils.d.ts.map +1 -1
  378. package/dist/esm/components/selectUtils.js +0 -20
  379. package/dist/esm/hooks/index.d.ts +4 -4
  380. package/dist/esm/hooks/index.js +4 -4
  381. package/dist/esm/hooks/useAstToFilterTree.d.ts +11 -0
  382. package/dist/esm/hooks/useAstToFilterTree.d.ts.map +1 -0
  383. package/dist/esm/hooks/useAstToFilterTree.js +24 -0
  384. package/dist/esm/hooks/useDashboard.d.ts +1 -1
  385. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  386. package/dist/esm/hooks/useDashboard.js +23 -5
  387. package/dist/esm/hooks/useExport.d.ts.map +1 -1
  388. package/dist/esm/hooks/useExport.js +4 -2
  389. package/dist/esm/hooks/useOnClickOutside.js +5 -5
  390. package/dist/esm/hooks/useOnWindowResize.d.ts.map +1 -1
  391. package/dist/esm/hooks/useOnWindowResize.js +3 -3
  392. package/dist/esm/hooks/useQuill.d.ts +10 -27
  393. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  394. package/dist/esm/hooks/useQuill.js +114 -82
  395. package/dist/esm/hooks/useSelectOnKeyDown.d.ts.map +1 -1
  396. package/dist/esm/hooks/useSelectOnKeyDown.js +5 -5
  397. package/dist/esm/hooks/useTheme.js +1 -1
  398. package/dist/esm/index.d.ts +1 -0
  399. package/dist/esm/index.d.ts.map +1 -1
  400. package/dist/esm/index.js +1 -0
  401. package/dist/esm/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  402. package/dist/esm/internals/ReportBuilder/PivotForm.js +9 -2
  403. package/dist/esm/internals/ReportBuilder/PivotList.d.ts +2 -2
  404. package/dist/esm/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  405. package/dist/esm/internals/ReportBuilder/PivotList.js +3 -3
  406. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +1 -1
  407. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  408. package/dist/esm/internals/ReportBuilder/PivotModal.js +68 -82
  409. package/dist/esm/lib/utils.js +2 -2
  410. package/dist/esm/models/Filter.d.ts +104 -4
  411. package/dist/esm/models/Filter.d.ts.map +1 -1
  412. package/dist/esm/models/Filter.js +90 -1
  413. package/dist/esm/models/Pagination.d.ts +10 -0
  414. package/dist/esm/models/Pagination.d.ts.map +1 -0
  415. package/dist/esm/models/Pagination.js +1 -0
  416. package/dist/esm/models/Report.d.ts +116 -0
  417. package/dist/esm/models/Report.d.ts.map +1 -0
  418. package/dist/esm/models/Report.js +1 -0
  419. package/dist/esm/utils/aggregate.js +1 -1
  420. package/dist/esm/utils/astFilterProcessing.d.ts +36 -0
  421. package/dist/esm/utils/astFilterProcessing.d.ts.map +1 -0
  422. package/dist/esm/utils/astFilterProcessing.js +8049 -0
  423. package/dist/esm/utils/astFilterProcessing.uspec.d.ts +2 -0
  424. package/dist/esm/utils/astFilterProcessing.uspec.d.ts.map +1 -0
  425. package/dist/esm/utils/astFilterProcessing.uspec.js +2729 -0
  426. package/dist/esm/utils/astProcessing.d.ts.map +1 -1
  427. package/dist/esm/utils/astProcessing.js +4 -3
  428. package/dist/esm/utils/axisFormatter.js +0 -71
  429. package/dist/esm/utils/color.js +9 -87
  430. package/dist/esm/utils/columnProcessing.d.ts +1 -0
  431. package/dist/esm/utils/columnProcessing.d.ts.map +1 -1
  432. package/dist/esm/utils/columnProcessing.js +6 -0
  433. package/dist/esm/utils/csv.d.ts.map +1 -1
  434. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  435. package/dist/esm/utils/dashboard.js +4 -4
  436. package/dist/esm/utils/dataFetcher.d.ts +1 -1
  437. package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
  438. package/dist/esm/utils/dataFetcher.js +72 -5
  439. package/dist/esm/utils/dataProcessing.d.ts +8 -0
  440. package/dist/esm/utils/dataProcessing.d.ts.map +1 -0
  441. package/dist/esm/utils/dataProcessing.js +122 -0
  442. package/dist/esm/utils/dataProcessing.uspec.d.ts +2 -0
  443. package/dist/esm/utils/dataProcessing.uspec.d.ts.map +1 -0
  444. package/dist/esm/utils/dataProcessing.uspec.js +204 -0
  445. package/dist/esm/utils/dates.d.ts +2 -1
  446. package/dist/esm/utils/dates.d.ts.map +1 -1
  447. package/dist/esm/utils/dates.js +10 -2
  448. package/dist/esm/utils/error.d.ts +5 -0
  449. package/dist/esm/utils/error.d.ts.map +1 -0
  450. package/dist/esm/utils/error.js +8 -0
  451. package/dist/esm/utils/filterConstants.d.ts +34 -0
  452. package/dist/esm/utils/filterConstants.d.ts.map +1 -0
  453. package/dist/esm/utils/filterConstants.js +33 -0
  454. package/dist/esm/utils/filterProcessing.js +4 -4
  455. package/dist/esm/utils/logging.d.ts.map +1 -1
  456. package/dist/esm/utils/logging.js +1 -0
  457. package/dist/esm/utils/merge.js +0 -21
  458. package/dist/esm/utils/monacoConfig.d.ts +21 -0
  459. package/dist/esm/utils/monacoConfig.d.ts.map +1 -0
  460. package/dist/esm/utils/monacoConfig.js +319 -0
  461. package/dist/esm/utils/paginationProcessing.d.ts +5 -0
  462. package/dist/esm/utils/paginationProcessing.d.ts.map +1 -0
  463. package/dist/esm/utils/paginationProcessing.js +25 -0
  464. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  465. package/dist/esm/utils/pivotConstructor.js +67 -5
  466. package/dist/esm/utils/pivotProcessing.d.ts.map +1 -1
  467. package/dist/esm/utils/pivotProcessing.js +12 -6
  468. package/dist/esm/utils/queryConstructor.d.ts +4 -2
  469. package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
  470. package/dist/esm/utils/queryConstructor.js +118 -58
  471. package/dist/esm/utils/queryConstructor.uspec.d.ts +2 -0
  472. package/dist/esm/utils/queryConstructor.uspec.d.ts.map +1 -0
  473. package/dist/esm/utils/queryConstructor.uspec.js +223 -0
  474. package/dist/esm/utils/report.d.ts +7 -0
  475. package/dist/esm/utils/report.d.ts.map +1 -0
  476. package/dist/esm/utils/report.ispec.d.ts +2 -0
  477. package/dist/esm/utils/report.ispec.d.ts.map +1 -0
  478. package/dist/esm/utils/report.ispec.js +46 -0
  479. package/dist/esm/utils/report.js +88 -0
  480. package/dist/esm/utils/schema.d.ts.map +1 -1
  481. package/dist/esm/utils/schema.js +35 -6
  482. package/dist/esm/utils/styles.d.ts +1 -1
  483. package/dist/esm/utils/styles.d.ts.map +1 -1
  484. package/dist/esm/utils/tableProcessing.d.ts +23 -8
  485. package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
  486. package/dist/esm/utils/tableProcessing.ispec.d.ts +2 -0
  487. package/dist/esm/utils/tableProcessing.ispec.d.ts.map +1 -0
  488. package/dist/esm/utils/tableProcessing.ispec.js +61 -0
  489. package/dist/esm/utils/tableProcessing.js +152 -37
  490. package/dist/esm/utils/textProcessing.js +3 -3
  491. package/dist/esm/utils/validation.d.ts +9 -0
  492. package/dist/esm/utils/validation.d.ts.map +1 -0
  493. package/dist/esm/utils/validation.js +20 -0
  494. package/dist/esm/utils/valueFormatter.d.ts.map +1 -1
  495. package/dist/esm/utils/valueFormatter.js +8 -4
  496. package/package.json +1 -1
  497. package/dist/cjs/internals/ReportBuilder/PivotModal.spec.d.ts +0 -2
  498. package/dist/cjs/internals/ReportBuilder/PivotModal.spec.d.ts.map +0 -1
  499. package/dist/cjs/internals/ReportBuilder/PivotModal.spec.js +0 -213
  500. package/dist/esm/internals/ReportBuilder/PivotModal.spec.d.ts +0 -2
  501. package/dist/esm/internals/ReportBuilder/PivotModal.spec.d.ts.map +0 -1
  502. package/dist/esm/internals/ReportBuilder/PivotModal.spec.js +0 -211
@@ -6,29 +6,16 @@ import { PivotList, PivotCard } from './PivotList';
6
6
  import { differenceInDays, eachDayOfInterval, eachMonthOfInterval, eachWeekOfInterval, eachYearOfInterval, endOfDay, isWithinInterval, subMilliseconds, } from 'date-fns';
7
7
  import { valueFormatter } from '../../utils/valueFormatter';
8
8
  import { numberFormatOptions, dateFormatOptions } from '../../ChartBuilder';
9
- import { snakeAndCamelCaseToTitleCase, } from '../../utils/textProcessing';
9
+ import { snakeAndCamelCaseToTitleCase } from '../../utils/textProcessing';
10
10
  import { QuillErrorMessageComponent, QuillLoadingComponent, QuillPivotColumnContainer, QuillPivotRowContainer, } from '../../components/UiComponents';
11
- import { isNumericColumnType, } from '../../components/ReportBuilder/ast';
11
+ import { isNumericColumnType } from '../../components/ReportBuilder/ast';
12
12
  import { QuillCard } from '../../components/QuillCard';
13
13
  import { cleanPivot, getPossiblePivotFieldOptions, isValidPivot, } from '../../utils/pivotProcessing';
14
14
  import { hashCode } from '../../utils/crypto';
15
- import { getDateRangeByColumns, getUniqueValuesByColumns, } from '../../utils/tableProcessing';
15
+ import { getCountsByColumns, getDateRangeByColumns, getUniqueValuesByColumns, } from '../../utils/tableProcessing';
16
16
  import { generatePivotWithSQL } from '../../utils/pivotConstructor';
17
- import { getDateBucketFromRange, } from '../../utils/dates';
18
- const QuillHover = () => {
19
- return (_jsx("style", { children: `
20
- .quill-hover {
21
- background-color: white;
22
- }
23
- .quill-hover:hover {
24
- background-color: rgba(56, 65, 81, 0.05);
25
- }
26
- .quill-tab:active {
27
- background-color: rgba(56, 65, 81, 0.15);
28
- }
29
- ` }));
30
- };
31
- export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField, setPivotColumnField, pivotValueField, setPivotValueField, pivotAggregation, setPivotAggregation, popUpTitle, setPopUpTitle, selectedTable, SelectComponent, ButtonComponent, SecondaryButtonComponent, PopoverComponent, ErrorMessageComponent = QuillErrorMessageComponent, PivotRowContainer = QuillPivotRowContainer, PivotColumnContainer = QuillPivotColumnContainer, LoadingComponent = QuillLoadingComponent, CardComponent = QuillCard, HeaderComponent, LabelComponent, TextComponent, selectedPivotIndex, setSelectedPivotIndex, removePivot, selectPivot, showUpdatePivot, setShowUpdatePivot, data, columns, theme, isOpen, setIsOpen, dateRange, createdPivots, setCreatedPivots, recommendedPivots, setRecommendedPivots, triggerButtonText = 'Pivot', showPivotEditButton = false, showEditOnPivotClick = true, selectPivotOnEdit = false, showTrigger = true, rightAlign = false, parentRef, pivotCountRequest = 6, query, initialUniqueValues, initialSelectedPivotTable, disabled = false, pivotRecommendationsEnabled = true, report, }) => {
17
+ import { getDateBucketFromRange } from '../../utils/dates';
18
+ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField, setPivotColumnField, pivotValueField, setPivotValueField, pivotAggregation, setPivotAggregation, popUpTitle, setPopUpTitle, selectedTable, SelectComponent, ButtonComponent, SecondaryButtonComponent, PopoverComponent, ErrorMessageComponent = QuillErrorMessageComponent, PivotRowContainer = QuillPivotRowContainer, PivotColumnContainer = QuillPivotColumnContainer, LoadingComponent = QuillLoadingComponent, CardComponent = QuillCard, HeaderComponent, LabelComponent, TextComponent, selectedPivotIndex, setSelectedPivotIndex, removePivot, selectPivot, showUpdatePivot, setShowUpdatePivot, data, columns, theme, isOpen, setIsOpen, dateRange, createdPivots, setCreatedPivots, recommendedPivots, setRecommendedPivots, triggerButtonText = 'Pivot', showPivotEditButton = false, showEditOnPivotClick = true, showTrigger = true, pivotCountRequest = 6, query, initialUniqueValues, initialSelectedPivotTable, disabled = false, pivotRecommendationsEnabled = true, report, }) => {
32
19
  const [isLoading, setIsLoading] = useState(false);
33
20
  const [selectedPivotType, setSelectedPivotType] = useState('recommended');
34
21
  const [errors, setErrors] = useState([]);
@@ -37,7 +24,6 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
37
24
  const rowFieldRef = useRef(null);
38
25
  const colFieldRef = useRef(null);
39
26
  const [pivotCardWidth, setPivotCardWidth] = useState(420);
40
- const [divWidth, setDivWidth] = useState(0);
41
27
  const [samplePivotTable, setSamplePivotTable] = useState(null);
42
28
  const [allowedColumnFields, setAllowedColumnFields] = useState([]);
43
29
  const [allowedRowFields, setAllowedRowFields] = useState([]);
@@ -54,9 +40,10 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
54
40
  setAllowedRowFields(possibleColumns.rowFields);
55
41
  setAllowedColumnFields(possibleColumns.columnFields);
56
42
  setAllowedValueFields(possibleColumns.valueFields);
57
- return possibleColumns;
43
+ return { possibleColumns, uniqueValues: {} };
58
44
  }
59
- const newUniqueValues = await getUniqueValuesByColumns(stringColumns, query || '', data.rows || [], client, customFields);
45
+ const smallStringColumns = await getCountsByColumns(stringColumns, query || '', client, customFields);
46
+ const newUniqueValues = await getUniqueValuesByColumns(smallStringColumns, query || '', data.rows || [], client, customFields);
60
47
  if (!uniqueValues ||
61
48
  hashCode(uniqueValues) !== hashCode(newUniqueValues)) {
62
49
  const possibleColumns = getPossiblePivotFieldOptions(columns, newUniqueValues || {});
@@ -64,17 +51,16 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
64
51
  setAllowedColumnFields(possibleColumns.columnFields);
65
52
  setAllowedValueFields(possibleColumns.valueFields);
66
53
  setUniqueValues(newUniqueValues);
67
- return possibleColumns;
54
+ return { possibleColumns, uniqueValues: newUniqueValues };
68
55
  }
69
56
  }
70
- return { rowFields: [], columnFields: [], valueFields: [] };
57
+ return {
58
+ possibleColumns: { rowFields: [], columnFields: [], valueFields: [] },
59
+ uniqueValues: {},
60
+ };
71
61
  };
72
62
  const getAllDateRangesByColumn = async () => {
73
63
  // Don't reprocess dateRanges if they are already gathered
74
- if (Object.keys(dateRanges).length > 0 ||
75
- (client && client.databaseType !== 'postgresql')) {
76
- return;
77
- }
78
64
  if (columns) {
79
65
  const dateColumns = columns.filter((column) => {
80
66
  return column.jsType === 'date';
@@ -151,7 +137,7 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
151
137
  });
152
138
  }
153
139
  else {
154
- const { rows, columns } = await generatePivotTable(pivot, data, dateRange, false);
140
+ const { rows, columns } = await generatePivotTable(pivot, data, dateRange, false, -1, undefined, undefined, report, client, uniqueValues);
155
141
  setSamplePivotTable({ pivot: pivot, rows, columns });
156
142
  }
157
143
  }
@@ -167,30 +153,6 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
167
153
  getDistinctValues();
168
154
  }
169
155
  }, [initialSelectedPivotTable, columns, data, pivotRowField]);
170
- useEffect(() => {
171
- const fetchPivotTables = async () => {
172
- const pivot = {
173
- rowField: pivotRowField || '',
174
- rowFieldType: columnsToShow[pivotRowField || ''],
175
- columnField: pivotColumnField,
176
- columnFieldType: columnsToShow[pivotColumnField || ''],
177
- valueField: pivotValueField || '',
178
- aggregationType: pivotAggregation || '',
179
- };
180
- if (isValidPivot(pivot) && data && columns) {
181
- const { rows, columns } = await generatePivotTable(pivot, data, dateRange, false);
182
- setSamplePivotTable({ pivot: pivot, rows, columns });
183
- }
184
- };
185
- fetchPivotTables();
186
- }, [
187
- data,
188
- columns,
189
- pivotRowField,
190
- pivotColumnField,
191
- pivotValueField,
192
- pivotAggregation,
193
- ]);
194
156
  useEffect(() => {
195
157
  if (!initialUniqueValues) {
196
158
  return;
@@ -218,7 +180,7 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
218
180
  return null;
219
181
  }
220
182
  const pivot = createdPivots[selectedPivotIndex];
221
- const { rows, columns } = await generatePivotTable(pivot, data, dateRange, false);
183
+ const { rows, columns } = await generatePivotTable(pivot, data, dateRange, false, -1, undefined, undefined, report, client, uniqueValues);
222
184
  setSelectedPivotTable({
223
185
  pivot: pivot,
224
186
  rows: rows,
@@ -229,7 +191,7 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
229
191
  }, [selectedPivotIndex, data, dateRange, createdPivots]);
230
192
  const onSelectRecommendedPivot = (pivot, index) => {
231
193
  if (showEditOnPivotClick) {
232
- onEditPivot(pivot, index);
194
+ onEditPivot(pivot, index, 'recommended');
233
195
  return;
234
196
  }
235
197
  if (index === selectedPivotIndex && selectedPivotType === 'recommended') {
@@ -241,19 +203,25 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
241
203
  }
242
204
  setIsOpen(false);
243
205
  };
244
- const onSelectCreatedPivot = (pivot, index) => {
245
- selectPivot(pivot, pivot.columnField ? uniqueValues : undefined, dateRanges[pivot.rowField]?.dateRange);
206
+ const onSelectCreatedPivot = (pivot) => {
207
+ selectPivot(pivot, pivot.columnField ? uniqueValues : undefined, dateRanges[pivot.rowField]?.dateRange, samplePivotTable);
246
208
  setSelectedPivotType('created');
247
209
  setIsOpen(false);
248
210
  setPopUpTitle('Add pivot');
249
211
  };
250
- const onEditPivot = async (pivot, index) => {
212
+ const onEditPivot = async (pivot, index, pivotType) => {
251
213
  setIsLoading(false);
252
214
  setPivotRowField(pivot.rowField);
253
215
  setPivotColumnField(pivot.columnField);
254
216
  setPivotValueField(pivot.valueField);
255
217
  setPivotAggregation(pivot.aggregationType);
256
218
  setShowUpdatePivot(true);
219
+ if (pivotType === 'recommended' &&
220
+ index !== null &&
221
+ recommendedPivotTables[index]) {
222
+ setSamplePivotTable(recommendedPivotTables[index]);
223
+ return;
224
+ }
257
225
  if (isValidPivot(pivot)) {
258
226
  let dateBucket = undefined;
259
227
  if (pivotRowField && dateRanges[pivotRowField]) {
@@ -265,7 +233,7 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
265
233
  }
266
234
  setSamplePivotTable(null);
267
235
  };
268
- const onEditRecommendedPivot = (pivot, index) => {
236
+ const onEditRecommendedPivot = (pivot) => {
269
237
  onEditPivot(pivot, null);
270
238
  };
271
239
  const refreshPivots = useCallback(async () => {
@@ -275,6 +243,7 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
275
243
  return;
276
244
  }
277
245
  setIsLoading(true);
246
+ let tempUniqueValues = uniqueValues;
278
247
  let possibleColumns = {
279
248
  rowFields: allowedRowFields,
280
249
  columnFields: allowedColumnFields,
@@ -284,7 +253,9 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
284
253
  allowedColumnFields.length === 0 &&
285
254
  allowedValueFields.length === 0) ||
286
255
  !uniqueValues) {
287
- possibleColumns = await getDistinctValues();
256
+ const distinctValues = await getDistinctValues();
257
+ possibleColumns = distinctValues.possibleColumns;
258
+ tempUniqueValues = distinctValues.uniqueValues;
288
259
  }
289
260
  const cloudBody = {
290
261
  pivotCountRequest,
@@ -304,9 +275,8 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
304
275
  try {
305
276
  const resp = await getDataFromCloud(client, 'pivotai', cloudBody);
306
277
  const recommendedPivots = resp?.data?.pivotTables.map((pivot) => cleanPivot(pivot, possibleColumns)) || [];
307
- setRecommendedPivots(recommendedPivots.map((pivot) => {
308
- if (pivot.columnField &&
309
- columnsToShow[pivot.columnField] === 'date') {
278
+ const cleanedPivots = recommendedPivots.map((pivot) => {
279
+ if (pivot.columnField && columnsToShow[pivot.columnField] === 'date') {
310
280
  const columnField = pivot.columnField;
311
281
  pivot.columnField = pivot.rowField;
312
282
  pivot.rowField = columnField;
@@ -319,7 +289,13 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
319
289
  : undefined,
320
290
  title: generatePivotTitle(pivot),
321
291
  };
292
+ });
293
+ setRecommendedPivots(cleanedPivots);
294
+ const pts = await Promise.all(cleanedPivots.map(async (p) => {
295
+ const { rows, columns } = await generatePivotTable(p, data, dateRange, false, 6, undefined, undefined, report, client, tempUniqueValues);
296
+ return { pivot: p, rows, columns };
322
297
  }));
298
+ setRecommendedPivotTables(pts);
323
299
  setSelectedPivotIndex(-1);
324
300
  }
325
301
  catch (e) {
@@ -372,21 +348,34 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
372
348
  }, 500);
373
349
  };
374
350
  const [recommendedPivotTables, setRecommendedPivotTables] = useState([]);
375
- useEffect(() => {
376
- const fetchPivotTables = async () => {
377
- const pts = await Promise.all(recommendedPivots.map(async (p) => {
378
- const { rows, columns } = await generatePivotTable(p, data, dateRange, false, 6);
379
- return { pivot: p, rows, columns };
380
- }));
381
- setRecommendedPivotTables(pts);
382
- };
383
- fetchPivotTables();
384
- }, [recommendedPivots, dateRange]);
351
+ // useEffect(() => {
352
+ // const fetchPivotTables = async () => {
353
+ // const pts = await Promise.all(
354
+ // recommendedPivots.map(async (p: Pivot) => {
355
+ // const { rows, columns } = await generatePivotTable(
356
+ // p,
357
+ // data,
358
+ // dateRange,
359
+ // false,
360
+ // 6,
361
+ // undefined,
362
+ // undefined,
363
+ // report,
364
+ // client,
365
+ // uniqueValues,
366
+ // );
367
+ // return { pivot: p, rows, columns };
368
+ // }),
369
+ // );
370
+ // setRecommendedPivotTables(pts);
371
+ // };
372
+ // fetchPivotTables();
373
+ // }, [recommendedPivots, dateRange]);
385
374
  const [createdPivotTables, setCreatedPivotTables] = useState([]);
386
375
  useEffect(() => {
387
376
  const fetchPivotTables = async () => {
388
377
  const pts = await Promise.all(createdPivots.map(async (p) => {
389
- const { rows, columns } = await generatePivotTable(p, data, dateRange, false, 6);
378
+ const { rows, columns } = await generatePivotTable(p, data, dateRange, false, 6, undefined, undefined, report, client, uniqueValues);
390
379
  return { pivot: p, rows, columns };
391
380
  }));
392
381
  setCreatedPivotTables(pts);
@@ -515,7 +504,7 @@ export const PivotModal = ({ pivotRowField, setPivotRowField, pivotColumnField,
515
504
  pivot.title = generatePivotTitle(pivot);
516
505
  setIsOpen(false);
517
506
  setCreatedPivots([pivot]);
518
- onSelectCreatedPivot(pivot, 0);
507
+ onSelectCreatedPivot(pivot);
519
508
  setPopUpTitle('Add pivot');
520
509
  }
521
510
  setErrors(errors);
@@ -788,12 +777,8 @@ const fixBigQueryData = (data = []) => {
788
777
  };
789
778
  export async function generatePivotTable(pivot, data, dateRange, isComparison, rowLimit = -1, compRange = undefined, dateBucket, report, client, uniqueValues) {
790
779
  try {
791
- if (report &&
792
- report.rowCount &&
793
- report.rowCount !== data.length &&
794
- client &&
795
- client.databaseType.toLowerCase() === 'postgresql') {
796
- let dateFilter = report
780
+ if (report && report.rowCount && report.rowCount !== data.length) {
781
+ const dateFilter = report
797
782
  ? report.filtersApplied.find((f) => f.filterType === 'date_range')
798
783
  : undefined;
799
784
  const pivotTable = await generatePivotWithSQL(pivot, report, client, dateBucket, dateFilter, pivot.columnField && uniqueValues
@@ -1098,7 +1083,7 @@ export function generatePivotTableInMemory(pivot, data, dateRange, isComparison,
1098
1083
  : snakeAndCamelCaseToTitleCase(pivot.rowField),
1099
1084
  field: pivot.rowField,
1100
1085
  },
1101
- ...uniqueColumns.map((column, index) => {
1086
+ ...uniqueColumns.map((column) => {
1102
1087
  const columnName = isDateField(pivot.columnFieldType || '')
1103
1088
  ? getDateString(column, dateRange, dateBucket)
1104
1089
  : column;
@@ -1170,6 +1155,7 @@ function valueFieldAggregation(data, valueField, aggregationType, isComparison)
1170
1155
  }
1171
1156
  let value = 0;
1172
1157
  let comparisonValue = 0;
1158
+ let count = 0;
1173
1159
  switch (aggregationType) {
1174
1160
  case 'sum':
1175
1161
  value = data.reduce((sum, item) => sum + parseFloat(item[valueField] ?? 0), 0);
@@ -1185,7 +1171,7 @@ function valueFieldAggregation(data, valueField, aggregationType, isComparison)
1185
1171
  break;
1186
1172
  case 'avg':
1187
1173
  case 'average':
1188
- const count = data.reduce((count, item) => count + (item[valueField] ? 1 : 0), 0);
1174
+ count = data.reduce((count, item) => count + (item[valueField] ? 1 : 0), 0);
1189
1175
  value =
1190
1176
  data.reduce((sum, item) => sum + parseFloat(item[valueField] ?? 0), 0) / (count === 0 ? 1 : count);
1191
1177
  if (isComparison) {
@@ -22,8 +22,8 @@ export const stringEndsWithNumber = (str) => {
22
22
  return stringIsNumeric(str.split('-').pop());
23
23
  };
24
24
  export function mergeRefs(refs) {
25
- return value => {
26
- refs.forEach(ref => {
25
+ return (value) => {
26
+ refs.forEach((ref) => {
27
27
  if (typeof ref === 'function') {
28
28
  ref(value);
29
29
  }
@@ -1,7 +1,107 @@
1
- export interface Filter {
2
- table: string;
1
+ export declare enum StringOperator {
2
+ IsExactly = "is exactly",
3
+ IsNotExactly = "is not exactly",
4
+ Contains = "contains",
5
+ Is = "is",
6
+ IsNot = "is not"
7
+ }
8
+ export declare enum DateOperator {
9
+ Custom = "custom",
10
+ InTheLast = "in the last",
11
+ InThePrevious = "in the previous",
12
+ InTheCurrent = "in the current",
13
+ EqualTo = "equal to",
14
+ NotEqualTo = "not equal to",
15
+ GreaterThan = "greater than",
16
+ LessThan = "less than",
17
+ GreaterThanOrEqualTo = "greater than or equal to",
18
+ LessThanOrEqualTo = "less than or equal to"
19
+ }
20
+ export declare enum NumberOperator {
21
+ EqualTo = "equal to",
22
+ NotEqualTo = "not equal to",
23
+ GreaterThan = "greater than",
24
+ LessThan = "less than",
25
+ GreaterThanOrEqualTo = "greater than or equal to",
26
+ LessThanOrEqualTo = "less than or equal to"
27
+ }
28
+ export declare enum NullOperator {
29
+ IsNotNull = "is not null",
30
+ IsNull = "is null"
31
+ }
32
+ export declare enum TimeUnit {
33
+ Year = "year",
34
+ Quarter = "quarter",
35
+ Month = "month",
36
+ Week = "week",
37
+ Day = "day",
38
+ Hour = "hour"
39
+ }
40
+ export declare enum FieldTypes {
41
+ String = "string",
42
+ Numeric = "numeric",
43
+ Date = "date",
44
+ Null = "null"
45
+ }
46
+ export declare enum FilterNames {
47
+ StringFilter = "string-filter",
48
+ DateFilter = "date-filter",
49
+ DateCustomFilter = "date-custom-filter",
50
+ DateComparisonFilter = "date-comparison-filter",
51
+ NumericFilter = "numeric-filter",
52
+ NullFilter = "null-filter",
53
+ StringInFilter = "string-in-filter"
54
+ }
55
+ export type Operator = StringOperator | DateOperator | NumberOperator | NullOperator;
56
+ export type Unit = TimeUnit;
57
+ export interface BaseFilter {
58
+ name: FilterNames;
59
+ type: FieldTypes;
60
+ operator: Operator;
3
61
  field: string;
4
- values: any[];
5
- operator: string;
62
+ value: any;
63
+ table?: string;
64
+ }
65
+ export interface StringFilter extends BaseFilter {
66
+ name: FilterNames.StringFilter;
67
+ type: FieldTypes.String | FieldTypes.Null;
68
+ value: string;
69
+ }
70
+ export interface StringInFilter extends BaseFilter {
71
+ name: FilterNames.StringInFilter;
72
+ type: FieldTypes.String;
73
+ value: string[];
74
+ }
75
+ export interface NumericFilter extends BaseFilter {
76
+ name: FilterNames.NumericFilter;
77
+ type: FieldTypes.Numeric | FieldTypes.Null;
78
+ value: number;
79
+ }
80
+ export interface DateFilter extends BaseFilter {
81
+ name: FilterNames.DateFilter;
82
+ type: FieldTypes.Date;
83
+ value: {
84
+ value: number;
85
+ unit: string;
86
+ };
87
+ }
88
+ export interface DateCustomFilter extends BaseFilter {
89
+ name: FilterNames.DateCustomFilter;
90
+ type: FieldTypes.Date;
91
+ value: {
92
+ startDate: string;
93
+ endDate: string;
94
+ };
95
+ }
96
+ export interface DateComparisonFilter extends BaseFilter {
97
+ name: FilterNames.DateComparisonFilter;
98
+ type: FieldTypes.Date;
99
+ value: string;
100
+ }
101
+ export interface NullFilter extends BaseFilter {
102
+ name: FilterNames.NullFilter;
103
+ type: FieldTypes.Null;
104
+ value: null;
6
105
  }
106
+ export type Filter = BaseFilter | StringFilter | StringInFilter | NumericFilter | DateFilter | DateCustomFilter | DateComparisonFilter | NullFilter;
7
107
  //# sourceMappingURL=Filter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../../src/models/Filter.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../../src/models/Filter.ts"],"names":[],"mappings":"AAkCA,oBAAY,cAAc;IACxB,SAAS,eAAa;IACtB,YAAY,mBAAiB;IAC7B,QAAQ,aAAW;IACnB,EAAE,OAAK;IACP,KAAK,WAAS;CACf;AAED,oBAAY,YAAY;IACtB,MAAM,WAAS;IACf,SAAS,gBAAc;IACvB,aAAa,oBAAkB;IAC/B,YAAY,mBAAiB;IAC7B,OAAO,aAAW;IAClB,UAAU,iBAAe;IACzB,WAAW,iBAAe;IAC1B,QAAQ,cAAY;IACpB,oBAAoB,6BAA2B;IAC/C,iBAAiB,0BAAwB;CAC1C;AAED,oBAAY,cAAc;IACxB,OAAO,aAAW;IAClB,UAAU,iBAAe;IACzB,WAAW,iBAAe;IAC1B,QAAQ,cAAY;IACpB,oBAAoB,6BAA2B;IAC/C,iBAAiB,0BAAwB;CAC1C;AAED,oBAAY,YAAY;IACtB,SAAS,gBAAc;IACvB,MAAM,YAAU;CACjB;AAED,oBAAY,QAAQ;IAClB,IAAI,SAAO;IACX,OAAO,YAAU;IACjB,KAAK,UAAQ;IACb,IAAI,SAAO;IACX,GAAG,QAAM;IACT,IAAI,SAAO;CACZ;AAED,oBAAY,UAAU;IACpB,MAAM,WAAS;IACf,OAAO,YAAU;IACjB,IAAI,SAAO;IACX,IAAI,SAAO;CACZ;AAED,oBAAY,WAAW;IACrB,YAAY,kBAAkB;IAC9B,UAAU,gBAAgB;IAC1B,gBAAgB,uBAAuB;IACvC,oBAAoB,2BAA2B;IAC/C,aAAa,mBAAmB;IAChC,UAAU,gBAAgB;IAC1B,cAAc,qBAAqB;CACpC;AAED,MAAM,MAAM,QAAQ,GAChB,cAAc,GACd,YAAY,GACZ,cAAc,GACd,YAAY,CAAC;AAEjB,MAAM,MAAM,IAAI,GAAG,QAAQ,CAAC;AAE5B,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,IAAI,EAAE,WAAW,CAAC,YAAY,CAAC;IAC/B,IAAI,EAAE,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,IAAI,EAAE,WAAW,CAAC,cAAc,CAAC;IACjC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC/C,IAAI,EAAE,WAAW,CAAC,aAAa,CAAC;IAChC,IAAI,EAAE,UAAU,CAAC,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,UAAW,SAAQ,UAAU;IAC5C,IAAI,EAAE,WAAW,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC;IACtB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACxC;AAED,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,IAAI,EAAE,WAAW,CAAC,gBAAgB,CAAC;IACnC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC;IACtB,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/C;AAED,MAAM,WAAW,oBAAqB,SAAQ,UAAU;IACtD,IAAI,EAAE,WAAW,CAAC,oBAAoB,CAAC;IACvC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,UAAW,SAAQ,UAAU;IAC5C,IAAI,EAAE,WAAW,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC;IACtB,KAAK,EAAE,IAAI,CAAC;CACb;AAED,MAAM,MAAM,MAAM,GACd,UAAU,GACV,YAAY,GACZ,cAAc,GACd,aAAa,GACb,UAAU,GACV,gBAAgB,GAChB,oBAAoB,GACpB,UAAU,CAAC"}
@@ -1 +1,90 @@
1
- export {};
1
+ // import * as Constants from '../utils/filterConstants';
2
+ /* eslint-disable no-unused-vars */
3
+ const IS_EXACTLY = 'is exactly';
4
+ const IS_NOT_EXACTLY = 'is not exactly';
5
+ const CONTAINS = 'contains';
6
+ const IS = 'is';
7
+ const IS_NOT = 'is not';
8
+ const IS_NOT_NULL = 'is not null';
9
+ const IS_NULL = 'is null';
10
+ const IN_THE_LAST = 'in the last';
11
+ const IN_THE_PREVIOUS = 'in the previous';
12
+ const IN_THE_CURRENT = 'in the current';
13
+ const EQUAL_TO = 'equal to';
14
+ const NOT_EQUAL_TO = 'not equal to';
15
+ const GREATER_THAN = 'greater than';
16
+ const LESS_THAN = 'less than';
17
+ const GREATER_THAN_OR_EQUAL_TO = 'greater than or equal to';
18
+ const LESS_THAN_OR_EQUAL_TO = 'less than or equal to';
19
+ const YEAR = 'year';
20
+ const QUARTER = 'quarter';
21
+ const MONTH = 'month';
22
+ const WEEK = 'week';
23
+ const DAY = 'day';
24
+ const HOUR = 'hour';
25
+ const NUMERIC = 'numeric';
26
+ const STRING = 'string';
27
+ const DATE = 'date';
28
+ const NULL = 'null';
29
+ const CUSTOM = 'custom';
30
+ export var StringOperator;
31
+ (function (StringOperator) {
32
+ StringOperator["IsExactly"] = "is exactly";
33
+ StringOperator["IsNotExactly"] = "is not exactly";
34
+ StringOperator["Contains"] = "contains";
35
+ StringOperator["Is"] = "is";
36
+ StringOperator["IsNot"] = "is not";
37
+ })(StringOperator || (StringOperator = {}));
38
+ export var DateOperator;
39
+ (function (DateOperator) {
40
+ DateOperator["Custom"] = "custom";
41
+ DateOperator["InTheLast"] = "in the last";
42
+ DateOperator["InThePrevious"] = "in the previous";
43
+ DateOperator["InTheCurrent"] = "in the current";
44
+ DateOperator["EqualTo"] = "equal to";
45
+ DateOperator["NotEqualTo"] = "not equal to";
46
+ DateOperator["GreaterThan"] = "greater than";
47
+ DateOperator["LessThan"] = "less than";
48
+ DateOperator["GreaterThanOrEqualTo"] = "greater than or equal to";
49
+ DateOperator["LessThanOrEqualTo"] = "less than or equal to";
50
+ })(DateOperator || (DateOperator = {}));
51
+ export var NumberOperator;
52
+ (function (NumberOperator) {
53
+ NumberOperator["EqualTo"] = "equal to";
54
+ NumberOperator["NotEqualTo"] = "not equal to";
55
+ NumberOperator["GreaterThan"] = "greater than";
56
+ NumberOperator["LessThan"] = "less than";
57
+ NumberOperator["GreaterThanOrEqualTo"] = "greater than or equal to";
58
+ NumberOperator["LessThanOrEqualTo"] = "less than or equal to";
59
+ })(NumberOperator || (NumberOperator = {}));
60
+ export var NullOperator;
61
+ (function (NullOperator) {
62
+ NullOperator["IsNotNull"] = "is not null";
63
+ NullOperator["IsNull"] = "is null";
64
+ })(NullOperator || (NullOperator = {}));
65
+ export var TimeUnit;
66
+ (function (TimeUnit) {
67
+ TimeUnit["Year"] = "year";
68
+ TimeUnit["Quarter"] = "quarter";
69
+ TimeUnit["Month"] = "month";
70
+ TimeUnit["Week"] = "week";
71
+ TimeUnit["Day"] = "day";
72
+ TimeUnit["Hour"] = "hour";
73
+ })(TimeUnit || (TimeUnit = {}));
74
+ export var FieldTypes;
75
+ (function (FieldTypes) {
76
+ FieldTypes["String"] = "string";
77
+ FieldTypes["Numeric"] = "numeric";
78
+ FieldTypes["Date"] = "date";
79
+ FieldTypes["Null"] = "null";
80
+ })(FieldTypes || (FieldTypes = {}));
81
+ export var FilterNames;
82
+ (function (FilterNames) {
83
+ FilterNames["StringFilter"] = "string-filter";
84
+ FilterNames["DateFilter"] = "date-filter";
85
+ FilterNames["DateCustomFilter"] = "date-custom-filter";
86
+ FilterNames["DateComparisonFilter"] = "date-comparison-filter";
87
+ FilterNames["NumericFilter"] = "numeric-filter";
88
+ FilterNames["NullFilter"] = "null-filter";
89
+ FilterNames["StringInFilter"] = "string-in-filter";
90
+ })(FilterNames || (FilterNames = {}));
@@ -0,0 +1,10 @@
1
+ export interface Pagination {
2
+ rowsPerPage: number;
3
+ rowsPerRequest: number;
4
+ page?: number;
5
+ }
6
+ export interface SortInto {
7
+ field: string;
8
+ direction: string;
9
+ }
10
+ //# sourceMappingURL=Pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pagination.d.ts","sourceRoot":"","sources":["../../../src/models/Pagination.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,116 @@
1
+ import { AxisFormat } from '../Dashboard';
2
+ import { Column } from './Columns';
3
+ import { Pagination } from './Pagination';
4
+ /**
5
+ * ## QuillReport
6
+ * Represents an individual item on a dashboard.
7
+ *
8
+ * Dashboard items can be charts, metric tiles, tables, etc. and can be styled
9
+ * however you'd like.
10
+ *
11
+ * ### API Reference
12
+ * @see https://docs.quillsql.com/components/quill-provider#quill-report
13
+ */
14
+ export interface QuillReport {
15
+ /** The report's unique id. */
16
+ id: string;
17
+ /** The name of the report. */
18
+ name: string;
19
+ /** The name of the dashboard this report belongs to. */
20
+ dashboardName: string;
21
+ /** The rows of data returned from this report's query. */
22
+ rows: {
23
+ [key: string]: string;
24
+ }[];
25
+ /** The columns data returned from this report's query. */
26
+ columns: Column[];
27
+ /** The type of this chart. */
28
+ chartType: string;
29
+ /** The table and field this report uses for date filtering, if any. */
30
+ dateField: {
31
+ table: string;
32
+ field: string;
33
+ } | null;
34
+ /** The pivot used in this query, if any. */
35
+ pivot: {
36
+ title: string;
37
+ aggregationType: 'sum' | 'average' | 'count';
38
+ rowField: string;
39
+ rowFieldType: string;
40
+ columnField: string | undefined;
41
+ columnFieldType: string | undefined;
42
+ valueField: string;
43
+ valueFieldType: string;
44
+ } | null;
45
+ /** The formatted primary range aggregation value, if any. */
46
+ primaryAggregation?: string;
47
+ /** The formatted comparison range aggregation value, if any. */
48
+ comparisonAggregation?: string;
49
+ /** The percent change in the aggragations, if any. */
50
+ aggregationPercentChange?: number;
51
+ /** The label of the xAxis. */
52
+ xAxisLabel: string;
53
+ /** The field to use for this report's xAxis. */
54
+ xAxisField: string;
55
+ /** The format for this report's xAxis. */
56
+ xAxisFormat: AxisFormat;
57
+ /**
58
+ * A list of metadata about the yAxes of this report.
59
+ */
60
+ yAxisFields: {
61
+ /** The field for this yAxis. */
62
+ field: string;
63
+ /** The label to use for this yAxis. */
64
+ label: string;
65
+ /** The format of the data in this yAxis. */
66
+ format: AxisFormat;
67
+ }[];
68
+ /**
69
+ * The relative ordering of this report in relation to its siblings. Ordering
70
+ * starts at 1 and counts up (eg. 1, 2, 3, etc.).
71
+ *
72
+ * Also note that reports in the same section are first grouped by `chartType`
73
+ * and then each group is sorted by `order`. Currently, the first group is the
74
+ * `metric` reports and the last group is the `table` reports with the rest of
75
+ * the reports in between.
76
+ */
77
+ order: number;
78
+ /**
79
+ * The rows of data returned from this report's query over the comparison date
80
+ * range as opposed to the primary date range.
81
+ */
82
+ compareRows: {
83
+ [key: string]: string;
84
+ }[];
85
+ /** A map of filters that have been applied to this query. */
86
+ filtersApplied: {
87
+ [key: string]: any;
88
+ };
89
+ pagination?: Pagination;
90
+ sort?: {
91
+ field: string;
92
+ direction: string;
93
+ };
94
+ rowCount?: number;
95
+ queryString: string;
96
+ }
97
+ export interface QuillReportInternal extends QuillReport {
98
+ /** The pivot row info. */
99
+ pivotRows?: {
100
+ [key: string]: string;
101
+ }[];
102
+ /**
103
+ * A list of metadata about the pivot yAxes of this report.
104
+ */
105
+ pivotColumns?: {
106
+ /** The field for this yAxis. */
107
+ field: string;
108
+ /** The label to use for this yAxis. */
109
+ label: string;
110
+ }[];
111
+ /** An array of queries that are used to construct the unprocessed report THIS WILL BE REMOVED SOON */
112
+ itemQuery?: string[];
113
+ /** An array of tables referenced by the report used */
114
+ referencedTables?: string[];
115
+ }
116
+ //# sourceMappingURL=Report.d.ts.map