@quillsql/react 2.12.29 → 2.12.31

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 (530) hide show
  1. package/dist/cjs/Chart.d.ts +29 -46
  2. package/dist/cjs/Chart.d.ts.map +1 -1
  3. package/dist/cjs/Chart.js +187 -468
  4. package/dist/cjs/ChartBuilder.d.ts +30 -61
  5. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  6. package/dist/cjs/ChartBuilder.js +190 -131
  7. package/dist/cjs/ChartEditor.d.ts +14 -2
  8. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  9. package/dist/cjs/ChartEditor.js +70 -125
  10. package/dist/cjs/Context.d.ts +4 -1
  11. package/dist/cjs/Context.d.ts.map +1 -1
  12. package/dist/cjs/Context.js +52 -6
  13. package/dist/cjs/Dashboard.d.ts +74 -118
  14. package/dist/cjs/Dashboard.d.ts.map +1 -1
  15. package/dist/cjs/Dashboard.js +273 -47
  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 -29
  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 +18 -6
  30. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  31. package/dist/cjs/ReportBuilder.js +477 -489
  32. package/dist/cjs/SQLEditor.d.ts +4 -11
  33. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  34. package/dist/cjs/SQLEditor.js +76 -88
  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 +130 -114
  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/BarChart.d.ts.map +1 -1
  62. package/dist/cjs/components/Chart/BarChart.js +12 -1
  63. package/dist/cjs/components/Chart/BarList.d.ts.map +1 -1
  64. package/dist/cjs/components/Chart/BarList.js +21 -14
  65. package/dist/cjs/components/Chart/ChartError.d.ts +8 -1
  66. package/dist/cjs/components/Chart/ChartError.d.ts.map +1 -1
  67. package/dist/cjs/components/Chart/ChartError.js +40 -5
  68. package/dist/cjs/components/Chart/ChartTooltip.d.ts.map +1 -1
  69. package/dist/cjs/components/Chart/ChartTooltip.js +8 -2
  70. package/dist/cjs/components/Chart/LineChart.d.ts +2 -1
  71. package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
  72. package/dist/cjs/components/Chart/LineChart.js +27 -3
  73. package/dist/cjs/components/Chart/PieChart.d.ts.map +1 -1
  74. package/dist/cjs/components/Chart/PieChart.js +1 -3
  75. package/dist/cjs/components/Dashboard/ChartComponent.d.ts +1 -1
  76. package/dist/cjs/components/Dashboard/ChartComponent.d.ts.map +1 -1
  77. package/dist/cjs/components/Dashboard/ChartComponent.js +1 -1
  78. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts +5 -1
  79. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  80. package/dist/cjs/components/Dashboard/DashboardFilter.js +10 -5
  81. package/dist/cjs/components/Dashboard/DataLoader.d.ts +8 -12
  82. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  83. package/dist/cjs/components/Dashboard/DataLoader.js +137 -194
  84. package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
  85. package/dist/cjs/components/Dashboard/MetricComponent.js +11 -45
  86. package/dist/cjs/components/Dashboard/TableComponent.d.ts +2 -5
  87. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  88. package/dist/cjs/components/Dashboard/TableComponent.js +3 -32
  89. package/dist/cjs/components/Dropdown/Dropdown.d.ts.map +1 -1
  90. package/dist/cjs/components/Dropdown/Dropdown.js +1 -3
  91. package/dist/cjs/components/Dropdown/DropdownItem.d.ts.map +1 -1
  92. package/dist/cjs/components/Dropdown/DropdownItem.js +3 -8
  93. package/dist/cjs/components/Dropdown/index.d.ts +2 -2
  94. package/dist/cjs/components/Modal/Modal.d.ts.map +1 -1
  95. package/dist/cjs/components/Modal/Modal.js +2 -3
  96. package/dist/cjs/components/Modal/index.d.ts +1 -1
  97. package/dist/cjs/components/QuillMultiSelect.d.ts.map +1 -1
  98. package/dist/cjs/components/QuillMultiSelect.js +18 -3
  99. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  100. package/dist/cjs/components/QuillMultiSelectWithCombo.js +18 -3
  101. package/dist/cjs/components/QuillSelect.js +1 -1
  102. package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -1
  103. package/dist/cjs/components/QuillSelectWithCombo.js +6 -3
  104. package/dist/cjs/components/QuillTable.d.ts +1 -4
  105. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  106. package/dist/cjs/components/QuillTable.js +5 -11
  107. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts +3 -1
  108. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  109. package/dist/cjs/components/ReportBuilder/AddColumnModal.js +5 -8
  110. package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  111. package/dist/cjs/components/ReportBuilder/AddLimitPopover.js +1 -3
  112. package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  113. package/dist/cjs/components/ReportBuilder/AddSortPopover.js +12 -1
  114. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts +30 -0
  115. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts.map +1 -0
  116. package/dist/cjs/components/ReportBuilder/FilterModal.js +579 -0
  117. package/dist/cjs/components/ReportBuilder/ast.d.ts +2 -1
  118. package/dist/cjs/components/ReportBuilder/ast.d.ts.map +1 -1
  119. package/dist/cjs/components/ReportBuilder/ast.js +33 -6
  120. package/dist/cjs/components/ReportBuilder/constants.d.ts +18 -3
  121. package/dist/cjs/components/ReportBuilder/constants.d.ts.map +1 -1
  122. package/dist/cjs/components/ReportBuilder/constants.js +24 -3
  123. package/dist/cjs/components/ReportBuilder/convert.d.ts +18 -16
  124. package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
  125. package/dist/cjs/components/ReportBuilder/convert.js +378 -494
  126. package/dist/cjs/components/ReportBuilder/operators.d.ts +24 -4
  127. package/dist/cjs/components/ReportBuilder/operators.d.ts.map +1 -1
  128. package/dist/cjs/components/ReportBuilder/operators.js +32 -4
  129. package/dist/cjs/components/ReportBuilder/ui.d.ts +20 -0
  130. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  131. package/dist/cjs/components/ReportBuilder/ui.js +15 -5
  132. package/dist/cjs/components/ReportBuilder/util.d.ts +3 -11
  133. package/dist/cjs/components/ReportBuilder/util.d.ts.map +1 -1
  134. package/dist/cjs/components/ReportBuilder/util.js +15 -18
  135. package/dist/cjs/components/UiComponents.d.ts +36 -8
  136. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  137. package/dist/cjs/components/UiComponents.js +106 -12
  138. package/dist/cjs/components/selectUtils.d.ts +0 -1
  139. package/dist/cjs/components/selectUtils.d.ts.map +1 -1
  140. package/dist/cjs/components/selectUtils.js +1 -22
  141. package/dist/cjs/hooks/index.d.ts +4 -4
  142. package/dist/cjs/hooks/useAstToFilterTree.d.ts +11 -0
  143. package/dist/cjs/hooks/useAstToFilterTree.d.ts.map +1 -0
  144. package/dist/cjs/hooks/useAstToFilterTree.js +26 -0
  145. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  146. package/dist/cjs/hooks/useDashboard.js +5 -1
  147. package/dist/cjs/hooks/useExport.d.ts.map +1 -1
  148. package/dist/cjs/hooks/useExport.js +3 -1
  149. package/dist/cjs/hooks/useOnClickOutside.js +4 -4
  150. package/dist/cjs/hooks/useOnWindowResize.d.ts.map +1 -1
  151. package/dist/cjs/hooks/useOnWindowResize.js +2 -2
  152. package/dist/cjs/hooks/useQuill.d.ts +10 -27
  153. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  154. package/dist/cjs/hooks/useQuill.js +133 -85
  155. package/dist/cjs/hooks/useSelectOnKeyDown.d.ts.map +1 -1
  156. package/dist/cjs/hooks/useSelectOnKeyDown.js +4 -4
  157. package/dist/cjs/hooks/useTheme.js +1 -1
  158. package/dist/cjs/index.d.ts +3 -1
  159. package/dist/cjs/index.d.ts.map +1 -1
  160. package/dist/cjs/index.js +3 -1
  161. package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  162. package/dist/cjs/internals/ReportBuilder/PivotForm.js +8 -1
  163. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts +2 -2
  164. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  165. package/dist/cjs/internals/ReportBuilder/PivotList.js +2 -2
  166. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +2 -1
  167. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  168. package/dist/cjs/internals/ReportBuilder/PivotModal.js +8 -21
  169. package/dist/cjs/lib/utils.js +2 -2
  170. package/dist/cjs/models/Columns.d.ts +2 -1
  171. package/dist/cjs/models/Columns.d.ts.map +1 -1
  172. package/dist/cjs/models/Filter.d.ts +115 -4
  173. package/dist/cjs/models/Filter.d.ts.map +1 -1
  174. package/dist/cjs/models/Filter.js +99 -0
  175. package/dist/cjs/models/Pagination.d.ts +10 -0
  176. package/dist/cjs/models/Pagination.d.ts.map +1 -0
  177. package/dist/cjs/models/Pagination.js +2 -0
  178. package/dist/cjs/models/Report.d.ts +103 -0
  179. package/dist/cjs/models/Report.d.ts.map +1 -0
  180. package/dist/cjs/models/Report.js +2 -0
  181. package/dist/cjs/utils/aggregate.js +1 -1
  182. package/dist/cjs/utils/astFilterProcessing.d.ts +36 -0
  183. package/dist/cjs/utils/astFilterProcessing.d.ts.map +1 -0
  184. package/dist/cjs/utils/astFilterProcessing.js +8091 -0
  185. package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
  186. package/dist/cjs/utils/astProcessing.js +4 -3
  187. package/dist/cjs/utils/axisFormatter.js +0 -71
  188. package/dist/cjs/utils/color.js +9 -87
  189. package/dist/cjs/utils/columnProcessing.d.ts +2 -0
  190. package/dist/cjs/utils/columnProcessing.d.ts.map +1 -1
  191. package/dist/cjs/utils/columnProcessing.js +54 -1
  192. package/dist/cjs/utils/csv.d.ts.map +1 -1
  193. package/dist/cjs/utils/dashboard.d.ts +1 -1
  194. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  195. package/dist/cjs/utils/dashboard.js +6 -59
  196. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
  197. package/dist/cjs/utils/dataFetcher.js +63 -1
  198. package/dist/cjs/utils/dataProcessing.d.ts +10 -0
  199. package/dist/cjs/utils/dataProcessing.d.ts.map +1 -0
  200. package/dist/cjs/utils/dataProcessing.js +144 -0
  201. package/dist/cjs/utils/dates.d.ts +2 -1
  202. package/dist/cjs/utils/dates.d.ts.map +1 -1
  203. package/dist/cjs/utils/dates.js +23 -1
  204. package/dist/cjs/utils/error.d.ts +5 -0
  205. package/dist/cjs/utils/error.d.ts.map +1 -0
  206. package/dist/cjs/utils/error.js +12 -0
  207. package/dist/cjs/utils/filterConstants.d.ts +34 -0
  208. package/dist/cjs/utils/filterConstants.d.ts.map +1 -0
  209. package/dist/cjs/utils/filterConstants.js +36 -0
  210. package/dist/cjs/utils/filterProcessing.d.ts +7 -1
  211. package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
  212. package/dist/cjs/utils/filterProcessing.js +104 -17
  213. package/dist/cjs/utils/logging.d.ts.map +1 -1
  214. package/dist/cjs/utils/logging.js +1 -0
  215. package/dist/cjs/utils/merge.js +0 -21
  216. package/dist/cjs/utils/{monacoAutocomplete.d.ts → monacoConfig.d.ts} +3 -2
  217. package/dist/cjs/utils/monacoConfig.d.ts.map +1 -0
  218. package/dist/cjs/utils/monacoConfig.js +324 -0
  219. package/dist/cjs/utils/paginationProcessing.d.ts +5 -0
  220. package/dist/cjs/utils/paginationProcessing.d.ts.map +1 -0
  221. package/dist/cjs/utils/paginationProcessing.js +30 -0
  222. package/dist/cjs/utils/pivotConstructor.d.ts +2 -1
  223. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  224. package/dist/cjs/utils/pivotConstructor.js +16 -1
  225. package/dist/cjs/utils/pivotProcessing.d.ts.map +1 -1
  226. package/dist/cjs/utils/pivotProcessing.js +12 -6
  227. package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
  228. package/dist/cjs/utils/queryConstructor.js +4 -3
  229. package/dist/cjs/utils/report.d.ts +10 -0
  230. package/dist/cjs/utils/report.d.ts.map +1 -0
  231. package/dist/cjs/utils/report.js +180 -0
  232. package/dist/cjs/utils/schema.d.ts.map +1 -1
  233. package/dist/cjs/utils/schema.js +35 -6
  234. package/dist/cjs/utils/styles.d.ts +1 -1
  235. package/dist/cjs/utils/styles.d.ts.map +1 -1
  236. package/dist/cjs/utils/tableProcessing.d.ts +22 -8
  237. package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
  238. package/dist/cjs/utils/tableProcessing.js +116 -35
  239. package/dist/cjs/utils/textProcessing.js +3 -3
  240. package/dist/cjs/utils/validation.d.ts +9 -0
  241. package/dist/cjs/utils/validation.d.ts.map +1 -0
  242. package/dist/cjs/utils/validation.js +24 -0
  243. package/dist/cjs/utils/valueFormatter.d.ts.map +1 -1
  244. package/dist/cjs/utils/valueFormatter.js +8 -4
  245. package/dist/esm/Chart.d.ts +29 -46
  246. package/dist/esm/Chart.d.ts.map +1 -1
  247. package/dist/esm/Chart.js +189 -471
  248. package/dist/esm/ChartBuilder.d.ts +30 -61
  249. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  250. package/dist/esm/ChartBuilder.js +191 -129
  251. package/dist/esm/ChartEditor.d.ts +14 -2
  252. package/dist/esm/ChartEditor.d.ts.map +1 -1
  253. package/dist/esm/ChartEditor.js +71 -126
  254. package/dist/esm/Context.d.ts +4 -1
  255. package/dist/esm/Context.d.ts.map +1 -1
  256. package/dist/esm/Context.js +51 -5
  257. package/dist/esm/Dashboard.d.ts +74 -118
  258. package/dist/esm/Dashboard.d.ts.map +1 -1
  259. package/dist/esm/Dashboard.js +275 -49
  260. package/dist/esm/DateRangePicker/Calendar.d.ts.map +1 -1
  261. package/dist/esm/DateRangePicker/Calendar.js +5 -8
  262. package/dist/esm/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  263. package/dist/esm/DateRangePicker/DateRangePicker.js +2 -29
  264. package/dist/esm/DateRangePicker/DateRangePickerButton.d.ts +1 -2
  265. package/dist/esm/DateRangePicker/DateRangePickerButton.d.ts.map +1 -1
  266. package/dist/esm/DateRangePicker/DateRangePickerButton.js +2 -4
  267. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts +2 -1
  268. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
  269. package/dist/esm/DateRangePicker/QuillDateRangePicker.js +4 -4
  270. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts +1 -1
  271. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
  272. package/dist/esm/DateRangePicker/dateRangePickerUtils.js +1 -15
  273. package/dist/esm/ReportBuilder.d.ts +18 -6
  274. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  275. package/dist/esm/ReportBuilder.js +484 -496
  276. package/dist/esm/SQLEditor.d.ts +4 -11
  277. package/dist/esm/SQLEditor.d.ts.map +1 -1
  278. package/dist/esm/SQLEditor.js +75 -87
  279. package/dist/esm/Table.d.ts +19 -3
  280. package/dist/esm/Table.d.ts.map +1 -1
  281. package/dist/esm/Table.js +132 -116
  282. package/dist/esm/TableChart.d.ts.map +1 -1
  283. package/dist/esm/TableChart.js +0 -1
  284. package/dist/esm/assets/ArrowDownHeadIcon.d.ts.map +1 -1
  285. package/dist/esm/assets/ArrowDownIcon.d.ts.map +1 -1
  286. package/dist/esm/assets/ArrowDownRightIcon.d.ts.map +1 -1
  287. package/dist/esm/assets/ArrowLeftHeadIcon.d.ts.map +1 -1
  288. package/dist/esm/assets/ArrowRightHeadIcon.d.ts.map +1 -1
  289. package/dist/esm/assets/ArrowRightIcon.d.ts.map +1 -1
  290. package/dist/esm/assets/ArrowUpHeadIcon.d.ts.map +1 -1
  291. package/dist/esm/assets/ArrowUpIcon.d.ts.map +1 -1
  292. package/dist/esm/assets/ArrowUpRightIcon.d.ts.map +1 -1
  293. package/dist/esm/assets/CalendarIcon.d.ts.map +1 -1
  294. package/dist/esm/assets/DoubleArrowLeftHeadIcon.d.ts.map +1 -1
  295. package/dist/esm/assets/DoubleArrowRightHeadIcon.d.ts.map +1 -1
  296. package/dist/esm/assets/ExclamationFilledIcon.d.ts.map +1 -1
  297. package/dist/esm/assets/LoadingSpinner.d.ts.map +1 -1
  298. package/dist/esm/assets/SearchIcon.d.ts.map +1 -1
  299. package/dist/esm/assets/XCircleIcon.d.ts.map +1 -1
  300. package/dist/esm/components/Banner/index.d.ts +1 -1
  301. package/dist/esm/components/Banner/index.d.ts.map +1 -1
  302. package/dist/esm/components/Banner/index.js +1 -1
  303. package/dist/esm/components/BigModal/BigModal.d.ts.map +1 -1
  304. package/dist/esm/components/BigModal/BigModal.js +7 -13
  305. package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
  306. package/dist/esm/components/Chart/BarChart.js +13 -2
  307. package/dist/esm/components/Chart/BarList.d.ts.map +1 -1
  308. package/dist/esm/components/Chart/BarList.js +21 -14
  309. package/dist/esm/components/Chart/ChartError.d.ts +8 -1
  310. package/dist/esm/components/Chart/ChartError.d.ts.map +1 -1
  311. package/dist/esm/components/Chart/ChartError.js +39 -6
  312. package/dist/esm/components/Chart/ChartTooltip.d.ts.map +1 -1
  313. package/dist/esm/components/Chart/ChartTooltip.js +8 -2
  314. package/dist/esm/components/Chart/LineChart.d.ts +2 -1
  315. package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
  316. package/dist/esm/components/Chart/LineChart.js +28 -4
  317. package/dist/esm/components/Chart/PieChart.d.ts.map +1 -1
  318. package/dist/esm/components/Chart/PieChart.js +1 -3
  319. package/dist/esm/components/Dashboard/ChartComponent.d.ts +1 -1
  320. package/dist/esm/components/Dashboard/ChartComponent.d.ts.map +1 -1
  321. package/dist/esm/components/Dashboard/ChartComponent.js +1 -1
  322. package/dist/esm/components/Dashboard/DashboardFilter.d.ts +5 -1
  323. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  324. package/dist/esm/components/Dashboard/DashboardFilter.js +10 -5
  325. package/dist/esm/components/Dashboard/DataLoader.d.ts +8 -12
  326. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  327. package/dist/esm/components/Dashboard/DataLoader.js +137 -194
  328. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
  329. package/dist/esm/components/Dashboard/MetricComponent.js +11 -45
  330. package/dist/esm/components/Dashboard/TableComponent.d.ts +2 -5
  331. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  332. package/dist/esm/components/Dashboard/TableComponent.js +3 -32
  333. package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
  334. package/dist/esm/components/Dropdown/Dropdown.js +2 -4
  335. package/dist/esm/components/Dropdown/DropdownItem.d.ts.map +1 -1
  336. package/dist/esm/components/Dropdown/DropdownItem.js +4 -9
  337. package/dist/esm/components/Dropdown/index.d.ts +2 -2
  338. package/dist/esm/components/Dropdown/index.js +2 -2
  339. package/dist/esm/components/Modal/Modal.d.ts.map +1 -1
  340. package/dist/esm/components/Modal/Modal.js +2 -3
  341. package/dist/esm/components/Modal/index.d.ts +1 -1
  342. package/dist/esm/components/Modal/index.js +1 -1
  343. package/dist/esm/components/QuillMultiSelect.d.ts.map +1 -1
  344. package/dist/esm/components/QuillMultiSelect.js +18 -3
  345. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  346. package/dist/esm/components/QuillMultiSelectWithCombo.js +18 -3
  347. package/dist/esm/components/QuillSelect.js +1 -1
  348. package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -1
  349. package/dist/esm/components/QuillSelectWithCombo.js +7 -4
  350. package/dist/esm/components/QuillTable.d.ts +1 -4
  351. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  352. package/dist/esm/components/QuillTable.js +5 -11
  353. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts +3 -1
  354. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  355. package/dist/esm/components/ReportBuilder/AddColumnModal.js +8 -11
  356. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  357. package/dist/esm/components/ReportBuilder/AddLimitPopover.js +2 -4
  358. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  359. package/dist/esm/components/ReportBuilder/AddSortPopover.js +12 -1
  360. package/dist/esm/components/ReportBuilder/FilterModal.d.ts +30 -0
  361. package/dist/esm/components/ReportBuilder/FilterModal.d.ts.map +1 -0
  362. package/dist/esm/components/ReportBuilder/FilterModal.js +576 -0
  363. package/dist/esm/components/ReportBuilder/ast.d.ts +2 -1
  364. package/dist/esm/components/ReportBuilder/ast.d.ts.map +1 -1
  365. package/dist/esm/components/ReportBuilder/ast.js +31 -5
  366. package/dist/esm/components/ReportBuilder/constants.d.ts +18 -3
  367. package/dist/esm/components/ReportBuilder/constants.d.ts.map +1 -1
  368. package/dist/esm/components/ReportBuilder/constants.js +24 -3
  369. package/dist/esm/components/ReportBuilder/convert.d.ts +18 -16
  370. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
  371. package/dist/esm/components/ReportBuilder/convert.js +375 -493
  372. package/dist/esm/components/ReportBuilder/convert.uspec.d.ts +2 -0
  373. package/dist/esm/components/ReportBuilder/convert.uspec.d.ts.map +1 -0
  374. package/dist/esm/components/ReportBuilder/convert.uspec.js +1419 -0
  375. package/dist/esm/components/ReportBuilder/operators.d.ts +24 -4
  376. package/dist/esm/components/ReportBuilder/operators.d.ts.map +1 -1
  377. package/dist/esm/components/ReportBuilder/operators.js +32 -4
  378. package/dist/esm/components/ReportBuilder/ui.d.ts +20 -0
  379. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  380. package/dist/esm/components/ReportBuilder/ui.js +13 -4
  381. package/dist/esm/components/ReportBuilder/util.d.ts +3 -11
  382. package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -1
  383. package/dist/esm/components/ReportBuilder/util.js +16 -19
  384. package/dist/esm/components/UiComponents.d.ts +36 -8
  385. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  386. package/dist/esm/components/UiComponents.js +104 -11
  387. package/dist/esm/components/selectUtils.d.ts +0 -1
  388. package/dist/esm/components/selectUtils.d.ts.map +1 -1
  389. package/dist/esm/components/selectUtils.js +0 -20
  390. package/dist/esm/hooks/index.d.ts +4 -4
  391. package/dist/esm/hooks/index.js +4 -4
  392. package/dist/esm/hooks/useAstToFilterTree.d.ts +11 -0
  393. package/dist/esm/hooks/useAstToFilterTree.d.ts.map +1 -0
  394. package/dist/esm/hooks/useAstToFilterTree.js +24 -0
  395. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  396. package/dist/esm/hooks/useDashboard.js +5 -1
  397. package/dist/esm/hooks/useExport.d.ts.map +1 -1
  398. package/dist/esm/hooks/useExport.js +4 -2
  399. package/dist/esm/hooks/useOnClickOutside.js +5 -5
  400. package/dist/esm/hooks/useOnWindowResize.d.ts.map +1 -1
  401. package/dist/esm/hooks/useOnWindowResize.js +3 -3
  402. package/dist/esm/hooks/useQuill.d.ts +10 -27
  403. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  404. package/dist/esm/hooks/useQuill.js +133 -85
  405. package/dist/esm/hooks/useSelectOnKeyDown.d.ts.map +1 -1
  406. package/dist/esm/hooks/useSelectOnKeyDown.js +5 -5
  407. package/dist/esm/hooks/useTheme.js +1 -1
  408. package/dist/esm/index.d.ts +3 -1
  409. package/dist/esm/index.d.ts.map +1 -1
  410. package/dist/esm/index.js +1 -0
  411. package/dist/esm/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  412. package/dist/esm/internals/ReportBuilder/PivotForm.js +9 -2
  413. package/dist/esm/internals/ReportBuilder/PivotList.d.ts +2 -2
  414. package/dist/esm/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  415. package/dist/esm/internals/ReportBuilder/PivotList.js +3 -3
  416. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +2 -1
  417. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  418. package/dist/esm/internals/ReportBuilder/PivotModal.js +11 -24
  419. package/dist/esm/lib/utils.js +2 -2
  420. package/dist/esm/models/Columns.d.ts +2 -1
  421. package/dist/esm/models/Columns.d.ts.map +1 -1
  422. package/dist/esm/models/Filter.d.ts +115 -4
  423. package/dist/esm/models/Filter.d.ts.map +1 -1
  424. package/dist/esm/models/Filter.js +98 -1
  425. package/dist/esm/models/Pagination.d.ts +10 -0
  426. package/dist/esm/models/Pagination.d.ts.map +1 -0
  427. package/dist/esm/models/Pagination.js +1 -0
  428. package/dist/esm/models/Report.d.ts +103 -0
  429. package/dist/esm/models/Report.d.ts.map +1 -0
  430. package/dist/esm/models/Report.js +1 -0
  431. package/dist/esm/test-utils/constants.d.ts +56 -0
  432. package/dist/esm/test-utils/constants.d.ts.map +1 -0
  433. package/dist/esm/test-utils/constants.js +271 -0
  434. package/dist/esm/test-utils/generators.d.ts +4 -0
  435. package/dist/esm/test-utils/generators.d.ts.map +1 -0
  436. package/dist/esm/test-utils/generators.js +37 -0
  437. package/dist/esm/utils/aggregate.js +1 -1
  438. package/dist/esm/utils/astFilterProcessing.d.ts +36 -0
  439. package/dist/esm/utils/astFilterProcessing.d.ts.map +1 -0
  440. package/dist/esm/utils/astFilterProcessing.js +8084 -0
  441. package/dist/esm/utils/astFilterProcessing.uspec.d.ts +2 -0
  442. package/dist/esm/utils/astFilterProcessing.uspec.d.ts.map +1 -0
  443. package/dist/esm/utils/astFilterProcessing.uspec.js +2877 -0
  444. package/dist/esm/utils/astProcessing.d.ts.map +1 -1
  445. package/dist/esm/utils/astProcessing.js +4 -3
  446. package/dist/esm/utils/axisFormatter.js +0 -71
  447. package/dist/esm/utils/color.js +9 -87
  448. package/dist/esm/utils/columnProcessing.d.ts +2 -0
  449. package/dist/esm/utils/columnProcessing.d.ts.map +1 -1
  450. package/dist/esm/utils/columnProcessing.js +52 -0
  451. package/dist/esm/utils/columnProcessing.uspec.d.ts +2 -0
  452. package/dist/esm/utils/columnProcessing.uspec.d.ts.map +1 -0
  453. package/dist/esm/utils/columnProcessing.uspec.js +65 -0
  454. package/dist/esm/utils/csv.d.ts.map +1 -1
  455. package/dist/esm/utils/dashboard.d.ts +1 -1
  456. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  457. package/dist/esm/utils/dashboard.js +6 -59
  458. package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
  459. package/dist/esm/utils/dataFetcher.js +63 -1
  460. package/dist/esm/utils/dataProcessing.d.ts +10 -0
  461. package/dist/esm/utils/dataProcessing.d.ts.map +1 -0
  462. package/dist/esm/utils/dataProcessing.js +138 -0
  463. package/dist/esm/utils/dataProcessing.uspec.d.ts +2 -0
  464. package/dist/esm/utils/dataProcessing.uspec.d.ts.map +1 -0
  465. package/dist/esm/utils/dataProcessing.uspec.js +205 -0
  466. package/dist/esm/utils/dates.d.ts +2 -1
  467. package/dist/esm/utils/dates.d.ts.map +1 -1
  468. package/dist/esm/utils/dates.js +21 -0
  469. package/dist/esm/utils/error.d.ts +5 -0
  470. package/dist/esm/utils/error.d.ts.map +1 -0
  471. package/dist/esm/utils/error.js +8 -0
  472. package/dist/esm/utils/filterConstants.d.ts +34 -0
  473. package/dist/esm/utils/filterConstants.d.ts.map +1 -0
  474. package/dist/esm/utils/filterConstants.js +33 -0
  475. package/dist/esm/utils/filterProcessing.d.ts +7 -1
  476. package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
  477. package/dist/esm/utils/filterProcessing.js +101 -16
  478. package/dist/esm/utils/filterProcessing.uspec.d.ts +2 -0
  479. package/dist/esm/utils/filterProcessing.uspec.d.ts.map +1 -0
  480. package/dist/esm/utils/filterProcessing.uspec.js +245 -0
  481. package/dist/esm/utils/logging.d.ts.map +1 -1
  482. package/dist/esm/utils/logging.js +1 -0
  483. package/dist/esm/utils/merge.js +0 -21
  484. package/dist/esm/utils/{monacoAutocomplete.d.ts → monacoConfig.d.ts} +3 -2
  485. package/dist/esm/utils/monacoConfig.d.ts.map +1 -0
  486. package/dist/esm/utils/monacoConfig.js +319 -0
  487. package/dist/esm/utils/paginationProcessing.d.ts +5 -0
  488. package/dist/esm/utils/paginationProcessing.d.ts.map +1 -0
  489. package/dist/esm/utils/paginationProcessing.js +25 -0
  490. package/dist/esm/utils/pivotConstructor.d.ts +2 -1
  491. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  492. package/dist/esm/utils/pivotConstructor.js +16 -1
  493. package/dist/esm/utils/pivotProcessing.d.ts.map +1 -1
  494. package/dist/esm/utils/pivotProcessing.js +12 -6
  495. package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
  496. package/dist/esm/utils/queryConstructor.js +4 -3
  497. package/dist/esm/utils/queryConstructor.uspec.js +21 -21
  498. package/dist/esm/utils/report.d.ts +10 -0
  499. package/dist/esm/utils/report.d.ts.map +1 -0
  500. package/dist/esm/utils/report.ispec.d.ts +2 -0
  501. package/dist/esm/utils/report.ispec.d.ts.map +1 -0
  502. package/dist/esm/utils/report.ispec.js +46 -0
  503. package/dist/esm/utils/report.js +174 -0
  504. package/dist/esm/utils/report.uspec.d.ts +2 -0
  505. package/dist/esm/utils/report.uspec.d.ts.map +1 -0
  506. package/dist/esm/utils/report.uspec.js +66 -0
  507. package/dist/esm/utils/schema.d.ts.map +1 -1
  508. package/dist/esm/utils/schema.js +35 -6
  509. package/dist/esm/utils/styles.d.ts +1 -1
  510. package/dist/esm/utils/styles.d.ts.map +1 -1
  511. package/dist/esm/utils/tableProcessing.d.ts +22 -8
  512. package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
  513. package/dist/esm/utils/tableProcessing.ispec.d.ts +2 -0
  514. package/dist/esm/utils/tableProcessing.ispec.d.ts.map +1 -0
  515. package/dist/esm/utils/tableProcessing.ispec.js +61 -0
  516. package/dist/esm/utils/tableProcessing.js +112 -33
  517. package/dist/esm/utils/textProcessing.js +3 -3
  518. package/dist/esm/utils/validation.d.ts +9 -0
  519. package/dist/esm/utils/validation.d.ts.map +1 -0
  520. package/dist/esm/utils/validation.js +20 -0
  521. package/dist/esm/utils/valueFormatter.d.ts.map +1 -1
  522. package/dist/esm/utils/valueFormatter.js +8 -4
  523. package/package.json +1 -1
  524. package/dist/cjs/utils/monacoAutocomplete.d.ts.map +0 -1
  525. package/dist/cjs/utils/monacoAutocomplete.js +0 -145
  526. package/dist/cjs/utils/queryConstructor.uspec.d.ts +0 -2
  527. package/dist/cjs/utils/queryConstructor.uspec.d.ts.map +0 -1
  528. package/dist/cjs/utils/queryConstructor.uspec.js +0 -225
  529. package/dist/esm/utils/monacoAutocomplete.d.ts.map +0 -1
  530. package/dist/esm/utils/monacoAutocomplete.js +0 -140
@@ -1 +1 @@
1
- {"version":3,"file":"astProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/astProcessing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,OAQxC;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,OAe5D;AAGD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAgBtE;AAGD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,GAAG,CAgB1E;AAED,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,GAAG;;EA2BtD;AAED,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,MAAM,GAChB;IAAE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAahD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,GAAG,CActE;AAED,wBAAgB,sCAAsC,CACpD,IAAI,EAAE,GAAG,EACT,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,EAAE,GAAG,EAAE,GACb,GAAG,CAYL;AAED,wBAAgB,qBAAqB,CACnC,aAAa,EAAE;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EAC1C,MAAM,EAAE,GAAG,EACX,UAAU,EAAE,GAAG,GACd;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAqCvD;AAED,wBAAgB,iCAAiC,CAC/C,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,GAAG,EACX,aAAa,EAAE,GAAG,GACjB;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CAAE,CAqG/B"}
1
+ {"version":3,"file":"astProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/astProcessing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,OAQxC;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,OAe5D;AAGD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAgBtE;AAGD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,GAAG,CAgB1E;AAED,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,GAAG;;EA4BtD;AAED,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,MAAM,GAChB;IAAE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAahD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,GAAG,CActE;AAED,wBAAgB,sCAAsC,CACpD,IAAI,EAAE,GAAG,EACT,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,EAAE,GAAG,EAAE,GACb,GAAG,CAYL;AAED,wBAAgB,qBAAqB,CACnC,aAAa,EAAE;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EAC1C,MAAM,EAAE,GAAG,EACX,UAAU,EAAE,GAAG,GACd;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAqCvD;AAED,wBAAgB,iCAAiC,CAC/C,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,GAAG,EACX,aAAa,EAAE,GAAG,GACjB;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CAAE,CAqG/B"}
@@ -83,8 +83,9 @@ function createTableNameToTableAliasMap(ast) {
83
83
  }
84
84
  if (ast.with) {
85
85
  for (const withStmt of ast.with) {
86
- if (withStmt.stmt.ast.from) {
87
- for (const table of withStmt.stmt.ast.from) {
86
+ const astFrom = withStmt.stmt.from ?? withStmt.stmt.ast.from;
87
+ if (astFrom) {
88
+ for (const table of astFrom) {
88
89
  const tableObject = recursiveSearchByKeys(table, ['table', 'as']);
89
90
  if (tableObject.as) {
90
91
  tableNameToTableAliasMap[tableObject.as] = tableObject.table;
@@ -180,7 +181,7 @@ function getColumnAndTableInfo(tableAliasMap, column, schemaInfo) {
180
181
  }
181
182
  exports.getColumnAndTableInfo = getColumnAndTableInfo;
182
183
  function getColumnsByTableFromASTAndSchema(ast, tables, tableAliasMap) {
183
- let referencedColumns = {};
184
+ const referencedColumns = {};
184
185
  if (ast.columns === '*' || ast.columns[0].expr.column === '*') {
185
186
  // Be sure to select everything from stars
186
187
  const tableList = ast.from.map((table) => recursiveSearchByKey(table, 'table'));
@@ -70,13 +70,6 @@ const formatterDollar = new Intl.NumberFormat('en-US', {
70
70
  currency: 'USD',
71
71
  maximumFractionDigits: 0,
72
72
  });
73
- // Formats to dollars like 1234.567 -> $1234.57
74
- const formatterDollarsCents = new Intl.NumberFormat('en-US', {
75
- style: 'currency',
76
- currency: 'USD',
77
- minimumFractionDigits: 2,
78
- maximumFractionDigits: 2,
79
- });
80
73
  /**
81
74
  * Formats the value as a (rounded) currency amount in dollars. If value is
82
75
  * zero, returns '$0' with no cents. If value is greater than or equal to 1000,
@@ -98,27 +91,6 @@ const formatDollarAmount = (value) => {
98
91
  return formatterDollar.format(num);
99
92
  }
100
93
  };
101
- /**
102
- * Formats the value as a (rounded) currency amount in dollars and cents. If
103
- * value is zero, returns '$0' with no cents. If value is greater than or equal
104
- * to 1000, it will not show cents and shorten the value with a suffix such
105
- * as K (for thousands) or M (for millions).
106
- *
107
- * @example format(1,234,567) => "$1.2M"
108
- * @example format(1234.567) => "$1.2K"
109
- * @example format(5000) => "$5K"
110
- * @example format(123.45) => "$123.45"
111
- * @example format(0.00) => "$0"
112
- */
113
- const formatDollarCents = (value) => {
114
- const num = Number(value ?? 0);
115
- if (num >= 1000 || num === 0) {
116
- return formatterBigDollars.format(num);
117
- }
118
- else {
119
- return formatterDollarsCents.format(num);
120
- }
121
- };
122
94
  const formatterBigWholeNumber = new Intl.NumberFormat('en-US', {
123
95
  minimumSignificantDigits: 1,
124
96
  maximumSignificantDigits: 2,
@@ -133,48 +105,6 @@ const formatterBigWholeNumber = new Intl.NumberFormat('en-US', {
133
105
  const formatWholeNumber = (value) => {
134
106
  return formatterBigWholeNumber.format(Number(value));
135
107
  };
136
- /**
137
- * Formats the value as a number rounded to exactly one decimal place.
138
- *
139
- * @example format(1234.567) => "1.2K"
140
- * @example format(123.456) => "1,234.6"
141
- */
142
- const formatOneDecimalPlace = (value) => {
143
- const formatter = new Intl.NumberFormat('en-US', {
144
- minimumFractionDigits: 1,
145
- maximumFractionDigits: 1,
146
- notation: 'compact',
147
- compactDisplay: 'short',
148
- });
149
- const num = Number(value ?? 0);
150
- if (num >= 1000 || num === 0) {
151
- return formatterBigWholeNumber.format(num);
152
- }
153
- else {
154
- return formatter.format(num);
155
- }
156
- };
157
- /**
158
- * Formats the value as a number rounded to exactly two decimal places.
159
- *
160
- * @example format(1234.567) => "1.23K"
161
- * @example format(123.456) => "123.46"
162
- */
163
- const formatTwoDecimalPlaces = (value) => {
164
- const formatter = new Intl.NumberFormat('en-US', {
165
- minimumFractionDigits: 2,
166
- maximumFractionDigits: 2,
167
- notation: 'compact',
168
- compactDisplay: 'short',
169
- });
170
- const num = Number(value ?? 0);
171
- if (num >= 1000 || num === 0) {
172
- return formatterBigWholeNumber.format(num);
173
- }
174
- else {
175
- return formatter.format(num);
176
- }
177
- };
178
108
  /**
179
109
  * Formats the value as a percentage.
180
110
  *
@@ -229,7 +159,6 @@ const format_MMM_ww_yyyy = (value) => {
229
159
  const utcDate = (0, date_fns_tz_1.utcToZonedTime)(new Date(value), 'UTC');
230
160
  if (!(0, date_fns_1.isValid)(utcDate))
231
161
  return 'Invalid date';
232
- const currentDate = new Date();
233
162
  const startOfWeekDate = (0, date_fns_1.startOfWeek)(utcDate, { weekStartsOn: 1 });
234
163
  const endOfWeekDate = (0, date_fns_1.endOfWeek)(utcDate, { weekStartsOn: 1 });
235
164
  const month = (0, date_fns_1.format)(utcDate, 'MMM');
@@ -73,7 +73,7 @@ function interpolateBetween(leftColor, rightColor, length = 3) {
73
73
  * @param length - The number of interpolated colors to generate.
74
74
  */
75
75
  function monochromaticInterpolation(color, length) {
76
- const [h, s, _l] = colorToHSL(color);
76
+ const [h, s] = colorToHSL(color);
77
77
  const hues = linspace(h, h, length);
78
78
  const saturations = linspace(s, s, length);
79
79
  const lightnesses = linspace(0.6, 0.9, length);
@@ -366,15 +366,15 @@ const COLOR_TO_HEX = {
366
366
  */
367
367
  function rgbToHsl(r, g, b) {
368
368
  (r /= 255), (g /= 255), (b /= 255);
369
- var max = Math.max(r, g, b), min = Math.min(r, g, b);
370
- var h = (max + min) / 2;
371
- var s = (max + min) / 2;
372
- var l = (max + min) / 2;
369
+ const max = Math.max(r, g, b), min = Math.min(r, g, b);
370
+ let h = (max + min) / 2;
371
+ let s = (max + min) / 2;
372
+ const l = (max + min) / 2;
373
373
  if (max == min) {
374
374
  h = s = 0; // achromatic
375
375
  }
376
376
  else {
377
- var d = max - min;
377
+ const d = max - min;
378
378
  s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
379
379
  switch (max) {
380
380
  case r:
@@ -404,7 +404,7 @@ exports.rgbToHsl = rgbToHsl;
404
404
  * @return Array The RGB representation
405
405
  */
406
406
  function HSLtoRGB(h, s, l) {
407
- var r, g, b;
407
+ let r, g, b;
408
408
  if (s == 0) {
409
409
  r = g = b = l; // achromatic
410
410
  }
@@ -422,8 +422,8 @@ function HSLtoRGB(h, s, l) {
422
422
  return p + (q - p) * (2 / 3 - t) * 6;
423
423
  return p;
424
424
  };
425
- var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
426
- var p = 2 * l - q;
425
+ const q = l < 0.5 ? l * (1 + s) : l + s - l * s;
426
+ const p = 2 * l - q;
427
427
  r = hue2rgb(p, q, h + 1 / 3);
428
428
  g = hue2rgb(p, q, h);
429
429
  b = hue2rgb(p, q, h - 1 / 3);
@@ -431,81 +431,3 @@ function HSLtoRGB(h, s, l) {
431
431
  return [r * 255, g * 255, b * 255];
432
432
  }
433
433
  exports.HSLtoRGB = HSLtoRGB;
434
- /**
435
- * Converts an RGB color value to HSV. Conversion formula
436
- * adapted from http://en.wikipedia.org/wiki/HSV_color_space.
437
- * Assumes r, g, and b are contained in the set [0, 255] and
438
- * returns h, s, and v in the set [0, 1].
439
- *
440
- * @param Number r The red color value
441
- * @param Number g The green color value
442
- * @param Number b The blue color value
443
- * @return Array The HSV representation
444
- */
445
- function rgbToHsv(r, g, b) {
446
- (r = r / 255), (g = g / 255), (b = b / 255);
447
- var max = Math.max(r, g, b), min = Math.min(r, g, b);
448
- var h = max;
449
- var s = max;
450
- var v = max;
451
- var d = max - min;
452
- s = max == 0 ? 0 : d / max;
453
- if (max == min) {
454
- h = 0; // achromatic
455
- }
456
- else {
457
- switch (max) {
458
- case r:
459
- h = (g - b) / d + (g < b ? 6 : 0);
460
- break;
461
- case g:
462
- h = (b - r) / d + 2;
463
- break;
464
- case b:
465
- h = (r - g) / d + 4;
466
- break;
467
- }
468
- h /= 6;
469
- }
470
- return [h, s, v];
471
- }
472
- /**
473
- * Converts an HSV color value to RGB. Conversion formula
474
- * adapted from http://en.wikipedia.org/wiki/HSV_color_space.
475
- * Assumes h, s, and v are contained in the set [0, 1] and
476
- * returns r, g, and b in the set [0, 255].
477
- *
478
- * @param Number h The hue
479
- * @param Number s The saturation
480
- * @param Number v The value
481
- * @return Array The RGB representation
482
- */
483
- function hsvToRgb(h, s, v) {
484
- var r, g, b;
485
- var i = Math.floor(h * 6);
486
- var f = h * 6 - i;
487
- var p = v * (1 - s);
488
- var q = v * (1 - f * s);
489
- var t = v * (1 - (1 - f) * s);
490
- switch (i % 6) {
491
- case 0:
492
- (r = v), (g = t), (b = p);
493
- break;
494
- case 1:
495
- (r = q), (g = v), (b = p);
496
- break;
497
- case 2:
498
- (r = p), (g = v), (b = t);
499
- break;
500
- case 3:
501
- (r = p), (g = q), (b = v);
502
- break;
503
- case 4:
504
- (r = t), (g = p), (b = v);
505
- break;
506
- case 5:
507
- (r = v), (g = p), (b = q);
508
- break;
509
- }
510
- return [r * 255, g * 255, b * 255];
511
- }
@@ -1,5 +1,6 @@
1
1
  import { ColumnInfo } from '../components/ReportBuilder/schema';
2
2
  import { Column, ColumnInternal } from '../models/Columns';
3
+ import { QuillReportInternal } from '../models/Report';
3
4
  export declare function convertPostgresColumn(field: {
4
5
  name: string;
5
6
  dataTypeID: number;
@@ -8,4 +9,5 @@ export declare function convertColumnInfoToColumnInternal(columnInfo: ColumnInfo
8
9
  export declare function convertFieldTypeToJSType(fieldType: string): string;
9
10
  export declare function convertFormatToJsType(column: Column): string;
10
11
  export declare function processColumnName(columnName: string): string;
12
+ export declare const getYAxisFields: (report: QuillReportInternal) => any[];
11
13
  //# sourceMappingURL=columnProcessing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"columnProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/columnProcessing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAM3D,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,cAAc,CAyGjB;AAED,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,UAAU,GACrB,cAAc,CAShB;AA0DD,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAsBlE;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAY5D;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE5D"}
1
+ {"version":3,"file":"columnProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/columnProcessing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAEhE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAOvD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,cAAc,CAyGjB;AAED,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,UAAU,GACrB,cAAc,CAShB;AA0DD,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAsBlE;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAY5D;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,eAAO,MAAM,cAAc,WAAY,mBAAmB,UAsDzD,CAAC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.processColumnName = exports.convertFormatToJsType = exports.convertFieldTypeToJSType = exports.convertColumnInfoToColumnInternal = exports.convertPostgresColumn = void 0;
3
+ exports.getYAxisFields = exports.processColumnName = exports.convertFormatToJsType = exports.convertFieldTypeToJSType = exports.convertColumnInfoToColumnInternal = exports.convertPostgresColumn = void 0;
4
+ const filterProcessing_1 = require("./filterProcessing");
4
5
  function removeBigQuerySpecialChars(columnName) {
5
6
  return columnName.replaceAll('quill_forward_slash', '/');
6
7
  }
@@ -214,3 +215,55 @@ function processColumnName(columnName) {
214
215
  return removeBigQuerySpecialChars(columnName);
215
216
  }
216
217
  exports.processColumnName = processColumnName;
218
+ const getYAxisFields = (report) => {
219
+ try {
220
+ const curDateFilter = (0, filterProcessing_1.findAndProcessDateFilter)(Object.values(report.filtersApplied));
221
+ if (report.pivot && report.pivotColumns && report.pivot.columnField) {
222
+ return (report.pivotColumns
223
+ .slice(1)
224
+ .map((column) => {
225
+ // @ts-ignore
226
+ return { ...column, format: report.yAxisFields[0].format };
227
+ }) ?? []);
228
+ }
229
+ else if (report.pivot && report.pivotColumns) {
230
+ return (report.pivotColumns
231
+ .slice(1)
232
+ .map((column) => {
233
+ return {
234
+ ...column,
235
+ // @ts-ignore
236
+ label: report?.yAxisFields[0].label,
237
+ // @ts-ignore
238
+ format: report?.yAxisFields[0].format,
239
+ };
240
+ }) ?? []);
241
+ }
242
+ else {
243
+ if (curDateFilter?.comparison &&
244
+ curDateFilter.comparisonRange.value !== 'NO_COMPARISON') {
245
+ const comparisonYAxisFields = report.yAxisFields?.map((field) => {
246
+ return {
247
+ ...field,
248
+ field: `comparison_${field.field}`,
249
+ label: `comparison ${field.label ?? field.field}`,
250
+ };
251
+ });
252
+ if (report.pivotColumns) {
253
+ return report.pivotColumns;
254
+ }
255
+ else if (comparisonYAxisFields || report.yAxisFields) {
256
+ const yAxisFields = report.yAxisFields ?? [];
257
+ const compYAxisFields = comparisonYAxisFields ?? [];
258
+ return [...yAxisFields, ...compYAxisFields];
259
+ }
260
+ return [];
261
+ }
262
+ return report.pivotColumns ?? report.yAxisFields ?? [];
263
+ }
264
+ }
265
+ catch (e) {
266
+ return report.yAxisFields;
267
+ }
268
+ };
269
+ exports.getYAxisFields = getYAxisFields;
@@ -1 +1 @@
1
- {"version":3,"file":"csv.d.ts","sourceRoot":"","sources":["../../../src/utils/csv.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,WAAW,SAAU;IAChC,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,SA2FA,CAAC"}
1
+ {"version":3,"file":"csv.d.ts","sourceRoot":"","sources":["../../../src/utils/csv.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,SAAU;IAChC,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,SA2FA,CAAC"}
@@ -1,4 +1,4 @@
1
- import { QuillReportInternal } from '../Dashboard';
1
+ import { QuillReportInternal } from '../models/Report';
2
2
  /**
3
3
  * Returns a cleaned version of the dashboard item we store in state. We clean
4
4
  * the dashboard item so that we aren't exposing unnecessary details to the
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../../src/utils/dashboard.ts"],"names":[],"mappings":"AACA,OAAO,EAA2B,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAoC5E;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GAAG,SAAS,EACxC,gBAAgB,EAAE,GAAG,EACrB,MAAM,CAAC,EAAE,GAAG,EACZ,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,mBAAmB,CAAC,CAiD9B;AA0KD,wBAAsB,YAAY,CAChC,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,GAAG,GACV,OAAO,CAAC,GAAG,CAAC,CA0Bd"}
1
+ {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../../src/utils/dashboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AA+BpE;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GAAG,SAAS,EACxC,gBAAgB,EAAE,GAAG,EACrB,MAAM,CAAC,EAAE,GAAG,EACZ,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,mBAAmB,CAAC,CAyC9B;AAgHD,wBAAsB,YAAY,CAChC,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,GAAG,GACV,OAAO,CAAC,GAAG,CAAC,CA2Bd"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getDashboard = exports.cleanDashboardItem = void 0;
4
- const valueFormatter_1 = require("./valueFormatter");
5
4
  const PivotModal_1 = require("../internals/ReportBuilder/PivotModal");
6
5
  const textProcessing_1 = require("./textProcessing");
7
6
  const dataFetcher_1 = require("./dataFetcher");
@@ -17,15 +16,14 @@ const defaultDashboardItem = {
17
16
  chartType: '',
18
17
  dateField: null,
19
18
  pivot: null,
20
- primaryAggregation: '',
21
- comparisonAggregation: '',
22
- aggregationPercentChange: undefined,
23
19
  yAxisFields: [],
24
20
  xAxisLabel: '',
25
21
  xAxisField: '',
26
22
  xAxisFormat: 'string',
27
23
  order: -1,
28
24
  filtersApplied: {},
25
+ queryString: '',
26
+ rowCount: 0,
29
27
  };
30
28
  /**
31
29
  * Returns a cleaned version of the dashboard item we store in state. We clean
@@ -44,7 +42,6 @@ async function cleanDashboardItem(item, dashboardFilters, client, dateBucket) {
44
42
  name: item.name,
45
43
  };
46
44
  const pivotTable = await getPivotTable(item, dashboardFilters, client, dateBucket);
47
- const { primaryAggregation, comparisonAggregation, aggregationPercentChange, } = getAggragations(pivotTable, item);
48
45
  return {
49
46
  id: item._id,
50
47
  name: item.name,
@@ -59,9 +56,6 @@ async function cleanDashboardItem(item, dashboardFilters, client, dateBucket) {
59
56
  chartType: item.chartType,
60
57
  dateField: item.dateField,
61
58
  pivot: item.pivot,
62
- primaryAggregation,
63
- comparisonAggregation,
64
- aggregationPercentChange,
65
59
  yAxisFields: pivotTable
66
60
  ? extractPivotedYAxis(pivotTable, item)
67
61
  : item.yAxisFields,
@@ -72,53 +66,19 @@ async function cleanDashboardItem(item, dashboardFilters, client, dateBucket) {
72
66
  filtersApplied: item.filtersApplied,
73
67
  rowCount: parseInt(item.rowCount),
74
68
  sort: item.sort,
75
- page: item.page,
76
69
  itemQuery: item.itemQuery,
70
+ queryString: item.queryString,
77
71
  };
78
72
  }
79
73
  exports.cleanDashboardItem = cleanDashboardItem;
80
- /**
81
- * Extracts the aggregations from the item, if any.
82
- */
83
- function getAggragations(pivotTable, item) {
84
- const yAxisFields = extractPivotedYAxis(pivotTable, item);
85
- const rows = extractPivotedData(pivotTable, item);
86
- // extract the aggragation for the primary range.
87
- const mainKey = yAxisFields[0]?.field ?? item.pivot?.valueField;
88
- const primary = mainKey
89
- ? rows.reduce((sum, row) => sum + parseFloat(row[mainKey]), 0)
90
- : 0;
91
- // extract the aggragation for the comparison range, if applicable.
92
- const compKey = yAxisFields[1]?.field ?? item.pivot?.valueField;
93
- const comparison = compKey
94
- ? rows.reduce((sum, row) => sum + parseFloat(row[compKey]), 0)
95
- : 0;
96
- return {
97
- primaryAggregation: formatAggragation(item, primary),
98
- comparisonAggregation: formatAggragation(item, comparison),
99
- aggregationPercentChange: Number(primary - comparison),
100
- };
101
- }
102
- /**
103
- * Applies a valueFormatter to the given value based on the format in the item.
104
- */
105
- function formatAggragation(item, value) {
106
- if (!value)
107
- return undefined;
108
- return (0, valueFormatter_1.valueFormatter)({
109
- value,
110
- field: item.pivot?.valueField,
111
- fields: item.yAxisFields,
112
- });
113
- }
114
74
  /**
115
75
  * Extract and transform the data from itemInfo.
116
76
  */
117
77
  async function getPivotTable(report, dashboardFilters, client, dateBucketInitial) {
118
78
  if (!report)
119
79
  return undefined;
120
- let dateFilter = Object.values(dashboardFilters ?? {}).find((filter) => filter.filterType === 'date_range' || filter.opterator === 'BETWEEN');
121
- if (dateFilter?.opterator === 'BETWEEN') {
80
+ const dateFilter = Object.values(dashboardFilters ?? {}).find((filter) => filter.filterType === 'date_range' || filter.opterator === 'BETWEEN');
81
+ if (dateFilter?.operator === 'BETWEEN') {
122
82
  dateFilter.startDate = dateFilter.value[0];
123
83
  dateFilter.endDate = dateFilter.value[1];
124
84
  }
@@ -166,20 +126,6 @@ async function getPivotTable(report, dashboardFilters, client, dateBucketInitial
166
126
  : undefined)
167
127
  : undefined;
168
128
  }
169
- /**
170
- * Returns the data list based on whether the table is pivoted and if there is
171
- * a config value passed into this component.
172
- */
173
- function extractPivotedData(pivotTable, item, config = undefined) {
174
- if (pivotTable)
175
- return pivotTable.rows;
176
- if (config) {
177
- if (config.bucketedRows.length > 0)
178
- return config.bucketedRows;
179
- return config.rows;
180
- }
181
- return item.rows;
182
- }
183
129
  /**
184
130
  * Extracts the yAxis from the pivot table, if one exists.
185
131
  */
@@ -221,6 +167,7 @@ async function getDashboard(dashboardName, client) {
221
167
  clientId: client.publicKey,
222
168
  orgId: client.customerId || '*',
223
169
  databaseType: client.databaseType,
170
+ useNewNodeSql: true,
224
171
  },
225
172
  };
226
173
  const resp = await (0, dataFetcher_1.getData)(client, `dashconfig?${searchParams}`, 'omit', hostedBody, null, 'GET');
@@ -1 +1 @@
1
- {"version":3,"file":"dataFetcher.d.ts","sourceRoot":"","sources":["../../../src/utils/dataFetcher.tsx"],"names":[],"mappings":"AAqBA,wBAAsB,OAAO,CAC3B,MAAM,EAAE,GAAG,EACX,kBAAkB,EAAE,MAAM,EAC1B,MAAM,EAAE,kBAAkB,EAC1B,iBAAiB,EAAE,GAAG,EACtB,gBAAgB,EAAE,GAAG,EACrB,MAAM,SAAS,EACf,UAAU,CAAC,EAAE,MAAM,gBAwGpB;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,GAAG,EACX,kBAAkB,EAAE,MAAM,EAC1B,gBAAgB,EAAE,GAAG,EACrB,MAAM,SAAS,gBAgChB"}
1
+ {"version":3,"file":"dataFetcher.d.ts","sourceRoot":"","sources":["../../../src/utils/dataFetcher.tsx"],"names":[],"mappings":"AAwEA,wBAAsB,OAAO,CAC3B,MAAM,EAAE,GAAG,EACX,kBAAkB,EAAE,MAAM,EAC1B,MAAM,EAAE,kBAAkB,EAC1B,iBAAiB,EAAE,GAAG,EACtB,gBAAgB,EAAE,GAAG,EACrB,MAAM,SAAS,EACf,UAAU,CAAC,EAAE,MAAM,gBA0IpB;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,GAAG,EACX,kBAAkB,EAAE,MAAM,EAC1B,gBAAgB,EAAE,GAAG,EACrB,MAAM,SAAS,gBAgChB"}
@@ -1,6 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getDataFromCloud = exports.getData = void 0;
4
+ function fetchQuillData(responseData) {
5
+ if (!responseData) {
6
+ return null;
7
+ }
8
+ if (responseData.data && responseData.data?.data) {
9
+ return responseData.data;
10
+ }
11
+ else if (responseData.data) {
12
+ return responseData;
13
+ }
14
+ return null;
15
+ }
4
16
  function parseData(rows, queryType) {
5
17
  if (!rows || rows.length === 0)
6
18
  return [];
@@ -20,6 +32,32 @@ function parseData(rows, queryType) {
20
32
  return rows;
21
33
  }
22
34
  }
35
+ async function testSqlViewState(hostedRequestBody, client, referencedTables) {
36
+ let errorMessage = null;
37
+ await Promise.all(referencedTables.map(async (table) => {
38
+ const hostedBody = {
39
+ metadata: {
40
+ tables: [table],
41
+ task: 'test-view',
42
+ clientId: hostedRequestBody.metadata.clientId,
43
+ },
44
+ };
45
+ const cloudBody = { ...hostedBody };
46
+ const resp = await getData(client, 'test-view', 'same-origin', hostedBody, cloudBody);
47
+ if (resp.success === false) {
48
+ const brokenBody = {
49
+ metadata: {
50
+ table: table,
51
+ task: 'set-broken-view',
52
+ clientId: hostedRequestBody.metadata.clientId,
53
+ },
54
+ };
55
+ getData(client, 'test-view', 'same-origin', brokenBody, cloudBody);
56
+ errorMessage = `SQL View Error: '${table}' is out of sync with datasource.`;
57
+ }
58
+ }));
59
+ return errorMessage;
60
+ }
23
61
  // this function gets the data either from the self hosted endpoint or
24
62
  // our cloud server
25
63
  async function getData(client, cloudQueryEndpoint, noCred, hostedRequestBody, cloudRequestBody, method = 'POST', queryParam) {
@@ -40,6 +78,30 @@ async function getData(client, cloudQueryEndpoint, noCred, hostedRequestBody, cl
40
78
  body: JSON.stringify(hostedRequestBody),
41
79
  });
42
80
  const responseJson = await resp.json();
81
+ if (responseJson.status === 'error' &&
82
+ ['query', 'patterns', 'item'].includes(hostedRequestBody.metadata.task)) {
83
+ const brokenReport = { ...responseJson };
84
+ let errorPrefix = 'Error: ';
85
+ let errorMessage = 'Failed to fetch chart';
86
+ if (hostedRequestBody.metadata.task === 'query' ||
87
+ hostedRequestBody.metadata.task === 'patterns') {
88
+ errorPrefix = 'SQL Error: ';
89
+ errorMessage = errorPrefix + responseJson.error;
90
+ }
91
+ let adminErrorMessage = undefined;
92
+ const processedData = fetchQuillData(brokenReport);
93
+ if (processedData &&
94
+ processedData.data &&
95
+ processedData.data.referencedTables) {
96
+ adminErrorMessage = await testSqlViewState(hostedRequestBody, client, processedData.data.referencedTables);
97
+ }
98
+ return {
99
+ success: false,
100
+ errorMessage,
101
+ adminErrorMessage,
102
+ data: brokenReport.data,
103
+ };
104
+ }
43
105
  if (responseJson.error) {
44
106
  return { success: false, errorMessage: responseJson.error };
45
107
  }
@@ -53,7 +115,7 @@ async function getData(client, cloudQueryEndpoint, noCred, hostedRequestBody, cl
53
115
  fields: responseJson?.data.queries?.queryResults[0]?.fields,
54
116
  ...responseJson.data.data,
55
117
  };
56
- responseJson.data.data.queryOrder.forEach((queryKey, index) => {
118
+ responseJson.data.data?.queryOrder?.forEach((queryKey, index) => {
57
119
  result[queryKey] = parseData(responseJson.queries.queryResults[index].rows, queryKey);
58
120
  });
59
121
  }
@@ -0,0 +1,10 @@
1
+ import { QuillReportInternal } from '../models/Report';
2
+ export declare enum Calculation {
3
+ PointToPointPercentageChange = "POINT_TO_POINT_PERCENTAGE_CHANGE",
4
+ SimplePercentageChange = "SIMPLE_PERCENTAGE_CHANGE",
5
+ Sum = "SUM"
6
+ }
7
+ export declare const getSimplePercentageChange: (data: QuillReportInternal) => number | undefined;
8
+ export declare const getPointToPointPercentageChange: (data: QuillReportInternal) => number | undefined;
9
+ export declare const getSumOfFields: (data: QuillReportInternal) => number;
10
+ //# sourceMappingURL=dataProcessing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataProcessing.d.ts","sourceRoot":"","sources":["../../../src/utils/dataProcessing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAIvD,oBAAY,WAAW;IACrB,4BAA4B,qCAAqC;IACjE,sBAAsB,6BAA6B;IACnD,GAAG,QAAQ;CACZ;AAyBD,eAAO,MAAM,yBAAyB,SAAU,mBAAmB,uBAsClE,CAAC;AAEF,eAAO,MAAM,+BAA+B,SAAU,mBAAmB,uBAkFxE,CAAC;AAEF,eAAO,MAAM,cAAc,SAAU,mBAAmB,WAavD,CAAC"}