@quillsql/react 2.12.29 → 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 (483) 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 +143 -183
  4. package/dist/cjs/ChartBuilder.d.ts +18 -12
  5. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  6. package/dist/cjs/ChartBuilder.js +125 -98
  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.map +1 -1
  11. package/dist/cjs/Context.js +42 -2
  12. package/dist/cjs/Dashboard.d.ts +16 -7
  13. package/dist/cjs/Dashboard.d.ts.map +1 -1
  14. package/dist/cjs/Dashboard.js +17 -22
  15. package/dist/cjs/DateRangePicker/Calendar.d.ts.map +1 -1
  16. package/dist/cjs/DateRangePicker/Calendar.js +3 -6
  17. package/dist/cjs/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  18. package/dist/cjs/DateRangePicker/DateRangePicker.js +2 -3
  19. package/dist/cjs/DateRangePicker/DateRangePickerButton.d.ts +1 -2
  20. package/dist/cjs/DateRangePicker/DateRangePickerButton.d.ts.map +1 -1
  21. package/dist/cjs/DateRangePicker/DateRangePickerButton.js +2 -4
  22. package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts +2 -1
  23. package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
  24. package/dist/cjs/DateRangePicker/QuillDateRangePicker.js +4 -4
  25. package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts +1 -1
  26. package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
  27. package/dist/cjs/DateRangePicker/dateRangePickerUtils.js +1 -15
  28. package/dist/cjs/ReportBuilder.d.ts +17 -5
  29. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  30. package/dist/cjs/ReportBuilder.js +510 -487
  31. package/dist/cjs/SQLEditor.d.ts +2 -9
  32. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  33. package/dist/cjs/SQLEditor.js +69 -86
  34. package/dist/cjs/Table.d.ts +19 -3
  35. package/dist/cjs/Table.d.ts.map +1 -1
  36. package/dist/cjs/Table.js +105 -87
  37. package/dist/cjs/TableChart.d.ts.map +1 -1
  38. package/dist/cjs/TableChart.js +0 -1
  39. package/dist/cjs/assets/ArrowDownHeadIcon.d.ts.map +1 -1
  40. package/dist/cjs/assets/ArrowDownIcon.d.ts.map +1 -1
  41. package/dist/cjs/assets/ArrowDownRightIcon.d.ts.map +1 -1
  42. package/dist/cjs/assets/ArrowLeftHeadIcon.d.ts.map +1 -1
  43. package/dist/cjs/assets/ArrowRightHeadIcon.d.ts.map +1 -1
  44. package/dist/cjs/assets/ArrowRightIcon.d.ts.map +1 -1
  45. package/dist/cjs/assets/ArrowUpHeadIcon.d.ts.map +1 -1
  46. package/dist/cjs/assets/ArrowUpIcon.d.ts.map +1 -1
  47. package/dist/cjs/assets/ArrowUpRightIcon.d.ts.map +1 -1
  48. package/dist/cjs/assets/CalendarIcon.d.ts.map +1 -1
  49. package/dist/cjs/assets/DoubleArrowLeftHeadIcon.d.ts.map +1 -1
  50. package/dist/cjs/assets/DoubleArrowRightHeadIcon.d.ts.map +1 -1
  51. package/dist/cjs/assets/ExclamationFilledIcon.d.ts.map +1 -1
  52. package/dist/cjs/assets/LoadingSpinner.d.ts.map +1 -1
  53. package/dist/cjs/assets/SearchIcon.d.ts.map +1 -1
  54. package/dist/cjs/assets/XCircleIcon.d.ts.map +1 -1
  55. package/dist/cjs/components/Banner/index.d.ts +1 -1
  56. package/dist/cjs/components/Banner/index.d.ts.map +1 -1
  57. package/dist/cjs/components/Banner/index.js +1 -1
  58. package/dist/cjs/components/BigModal/BigModal.d.ts.map +1 -1
  59. package/dist/cjs/components/BigModal/BigModal.js +6 -12
  60. package/dist/cjs/components/Chart/BarList.d.ts.map +1 -1
  61. package/dist/cjs/components/Chart/BarList.js +21 -14
  62. package/dist/cjs/components/Chart/ChartError.d.ts +8 -1
  63. package/dist/cjs/components/Chart/ChartError.d.ts.map +1 -1
  64. package/dist/cjs/components/Chart/ChartError.js +40 -5
  65. package/dist/cjs/components/Chart/ChartTooltip.d.ts.map +1 -1
  66. package/dist/cjs/components/Chart/ChartTooltip.js +8 -2
  67. package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
  68. package/dist/cjs/components/Chart/LineChart.js +2 -2
  69. package/dist/cjs/components/Chart/PieChart.d.ts.map +1 -1
  70. package/dist/cjs/components/Chart/PieChart.js +1 -3
  71. package/dist/cjs/components/Dashboard/ChartComponent.d.ts +1 -1
  72. package/dist/cjs/components/Dashboard/ChartComponent.d.ts.map +1 -1
  73. package/dist/cjs/components/Dashboard/ChartComponent.js +1 -1
  74. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts +5 -1
  75. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  76. package/dist/cjs/components/Dashboard/DashboardFilter.js +10 -5
  77. package/dist/cjs/components/Dashboard/DataLoader.d.ts +2 -6
  78. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  79. package/dist/cjs/components/Dashboard/DataLoader.js +88 -181
  80. package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
  81. package/dist/cjs/components/Dashboard/MetricComponent.js +1 -1
  82. package/dist/cjs/components/Dashboard/TableComponent.d.ts +1 -4
  83. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  84. package/dist/cjs/components/Dashboard/TableComponent.js +3 -3
  85. package/dist/cjs/components/Dropdown/Dropdown.d.ts.map +1 -1
  86. package/dist/cjs/components/Dropdown/Dropdown.js +1 -3
  87. package/dist/cjs/components/Dropdown/DropdownItem.d.ts.map +1 -1
  88. package/dist/cjs/components/Dropdown/DropdownItem.js +3 -8
  89. package/dist/cjs/components/Dropdown/index.d.ts +2 -2
  90. package/dist/cjs/components/Modal/Modal.d.ts.map +1 -1
  91. package/dist/cjs/components/Modal/Modal.js +2 -3
  92. package/dist/cjs/components/Modal/index.d.ts +1 -1
  93. package/dist/cjs/components/QuillMultiSelect.d.ts.map +1 -1
  94. package/dist/cjs/components/QuillMultiSelect.js +18 -3
  95. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  96. package/dist/cjs/components/QuillMultiSelectWithCombo.js +2 -2
  97. package/dist/cjs/components/QuillSelect.js +1 -1
  98. package/dist/cjs/components/QuillSelectWithCombo.js +2 -2
  99. package/dist/cjs/components/QuillTable.d.ts +1 -4
  100. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  101. package/dist/cjs/components/QuillTable.js +5 -11
  102. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts +3 -1
  103. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  104. package/dist/cjs/components/ReportBuilder/AddColumnModal.js +5 -8
  105. package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  106. package/dist/cjs/components/ReportBuilder/AddLimitPopover.js +1 -3
  107. package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  108. package/dist/cjs/components/ReportBuilder/AddSortPopover.js +12 -1
  109. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts +22 -0
  110. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts.map +1 -0
  111. package/dist/cjs/components/ReportBuilder/FilterModal.js +555 -0
  112. package/dist/cjs/components/ReportBuilder/ast.d.ts +2 -1
  113. package/dist/cjs/components/ReportBuilder/ast.d.ts.map +1 -1
  114. package/dist/cjs/components/ReportBuilder/ast.js +33 -6
  115. package/dist/cjs/components/ReportBuilder/constants.d.ts +18 -3
  116. package/dist/cjs/components/ReportBuilder/constants.d.ts.map +1 -1
  117. package/dist/cjs/components/ReportBuilder/constants.js +24 -3
  118. package/dist/cjs/components/ReportBuilder/convert.d.ts +12 -15
  119. package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
  120. package/dist/cjs/components/ReportBuilder/convert.js +326 -494
  121. package/dist/cjs/components/ReportBuilder/operators.d.ts +24 -4
  122. package/dist/cjs/components/ReportBuilder/operators.d.ts.map +1 -1
  123. package/dist/cjs/components/ReportBuilder/operators.js +32 -4
  124. package/dist/cjs/components/ReportBuilder/ui.d.ts +20 -0
  125. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  126. package/dist/cjs/components/ReportBuilder/ui.js +30 -4
  127. package/dist/cjs/components/ReportBuilder/util.d.ts +3 -11
  128. package/dist/cjs/components/ReportBuilder/util.d.ts.map +1 -1
  129. package/dist/cjs/components/ReportBuilder/util.js +15 -18
  130. package/dist/cjs/components/UiComponents.d.ts +10 -7
  131. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  132. package/dist/cjs/components/UiComponents.js +9 -8
  133. package/dist/cjs/components/selectUtils.d.ts +0 -1
  134. package/dist/cjs/components/selectUtils.d.ts.map +1 -1
  135. package/dist/cjs/components/selectUtils.js +1 -22
  136. package/dist/cjs/hooks/index.d.ts +4 -4
  137. package/dist/cjs/hooks/useAstToFilterTree.d.ts +11 -0
  138. package/dist/cjs/hooks/useAstToFilterTree.d.ts.map +1 -0
  139. package/dist/cjs/hooks/useAstToFilterTree.js +26 -0
  140. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  141. package/dist/cjs/hooks/useDashboard.js +5 -1
  142. package/dist/cjs/hooks/useExport.d.ts.map +1 -1
  143. package/dist/cjs/hooks/useExport.js +3 -1
  144. package/dist/cjs/hooks/useOnClickOutside.js +4 -4
  145. package/dist/cjs/hooks/useOnWindowResize.d.ts.map +1 -1
  146. package/dist/cjs/hooks/useOnWindowResize.js +2 -2
  147. package/dist/cjs/hooks/useQuill.d.ts +10 -27
  148. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  149. package/dist/cjs/hooks/useQuill.js +114 -82
  150. package/dist/cjs/hooks/useSelectOnKeyDown.d.ts.map +1 -1
  151. package/dist/cjs/hooks/useSelectOnKeyDown.js +4 -4
  152. package/dist/cjs/hooks/useTheme.js +1 -1
  153. package/dist/cjs/index.d.ts +1 -0
  154. package/dist/cjs/index.d.ts.map +1 -1
  155. package/dist/cjs/index.js +3 -1
  156. package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  157. package/dist/cjs/internals/ReportBuilder/PivotForm.js +8 -1
  158. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts +2 -2
  159. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  160. package/dist/cjs/internals/ReportBuilder/PivotList.js +2 -2
  161. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +1 -1
  162. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  163. package/dist/cjs/internals/ReportBuilder/PivotModal.js +8 -21
  164. package/dist/cjs/lib/utils.js +2 -2
  165. package/dist/cjs/models/Filter.d.ts +104 -4
  166. package/dist/cjs/models/Filter.d.ts.map +1 -1
  167. package/dist/cjs/models/Filter.js +91 -0
  168. package/dist/cjs/models/Pagination.d.ts +10 -0
  169. package/dist/cjs/models/Pagination.d.ts.map +1 -0
  170. package/dist/cjs/models/Pagination.js +2 -0
  171. package/dist/cjs/models/Report.d.ts +116 -0
  172. package/dist/cjs/models/Report.d.ts.map +1 -0
  173. package/dist/cjs/models/Report.js +2 -0
  174. package/dist/cjs/utils/aggregate.js +1 -1
  175. package/dist/cjs/utils/astFilterProcessing.d.ts +36 -0
  176. package/dist/cjs/utils/astFilterProcessing.d.ts.map +1 -0
  177. package/dist/cjs/utils/astFilterProcessing.js +8056 -0
  178. package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
  179. package/dist/cjs/utils/astProcessing.js +4 -3
  180. package/dist/cjs/utils/axisFormatter.js +0 -71
  181. package/dist/cjs/utils/color.js +9 -87
  182. package/dist/cjs/utils/csv.d.ts.map +1 -1
  183. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  184. package/dist/cjs/utils/dashboard.js +3 -3
  185. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
  186. package/dist/cjs/utils/dataFetcher.js +63 -1
  187. package/dist/cjs/utils/dataProcessing.d.ts +8 -0
  188. package/dist/cjs/utils/dataProcessing.d.ts.map +1 -0
  189. package/dist/cjs/utils/dataProcessing.js +127 -0
  190. package/dist/cjs/utils/dates.d.ts +1 -1
  191. package/dist/cjs/utils/error.d.ts +5 -0
  192. package/dist/cjs/utils/error.d.ts.map +1 -0
  193. package/dist/cjs/utils/error.js +12 -0
  194. package/dist/cjs/utils/filterConstants.d.ts +34 -0
  195. package/dist/cjs/utils/filterConstants.d.ts.map +1 -0
  196. package/dist/cjs/utils/filterConstants.js +36 -0
  197. package/dist/cjs/utils/filterProcessing.js +4 -4
  198. package/dist/cjs/utils/logging.d.ts.map +1 -1
  199. package/dist/cjs/utils/logging.js +1 -0
  200. package/dist/cjs/utils/merge.js +0 -21
  201. package/dist/cjs/utils/{monacoAutocomplete.d.ts → monacoConfig.d.ts} +3 -2
  202. package/dist/cjs/utils/monacoConfig.d.ts.map +1 -0
  203. package/dist/cjs/utils/monacoConfig.js +324 -0
  204. package/dist/cjs/utils/paginationProcessing.d.ts +5 -0
  205. package/dist/cjs/utils/paginationProcessing.d.ts.map +1 -0
  206. package/dist/cjs/utils/paginationProcessing.js +30 -0
  207. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  208. package/dist/cjs/utils/pivotConstructor.js +9 -0
  209. package/dist/cjs/utils/pivotProcessing.d.ts.map +1 -1
  210. package/dist/cjs/utils/pivotProcessing.js +12 -6
  211. package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
  212. package/dist/cjs/utils/queryConstructor.js +4 -3
  213. package/dist/cjs/utils/report.d.ts +7 -0
  214. package/dist/cjs/utils/report.d.ts.map +1 -0
  215. package/dist/cjs/utils/report.js +93 -0
  216. package/dist/cjs/utils/schema.d.ts.map +1 -1
  217. package/dist/cjs/utils/schema.js +35 -6
  218. package/dist/cjs/utils/styles.d.ts +1 -1
  219. package/dist/cjs/utils/styles.d.ts.map +1 -1
  220. package/dist/cjs/utils/tableProcessing.d.ts +22 -8
  221. package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
  222. package/dist/cjs/utils/tableProcessing.js +116 -35
  223. package/dist/cjs/utils/textProcessing.js +3 -3
  224. package/dist/cjs/utils/validation.d.ts +9 -0
  225. package/dist/cjs/utils/validation.d.ts.map +1 -0
  226. package/dist/cjs/utils/validation.js +24 -0
  227. package/dist/cjs/utils/valueFormatter.d.ts.map +1 -1
  228. package/dist/cjs/utils/valueFormatter.js +8 -4
  229. package/dist/esm/Chart.d.ts +24 -10
  230. package/dist/esm/Chart.d.ts.map +1 -1
  231. package/dist/esm/Chart.js +146 -186
  232. package/dist/esm/ChartBuilder.d.ts +18 -12
  233. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  234. package/dist/esm/ChartBuilder.js +126 -99
  235. package/dist/esm/ChartEditor.d.ts +13 -1
  236. package/dist/esm/ChartEditor.d.ts.map +1 -1
  237. package/dist/esm/ChartEditor.js +63 -122
  238. package/dist/esm/Context.d.ts.map +1 -1
  239. package/dist/esm/Context.js +42 -2
  240. package/dist/esm/Dashboard.d.ts +16 -7
  241. package/dist/esm/Dashboard.d.ts.map +1 -1
  242. package/dist/esm/Dashboard.js +17 -22
  243. package/dist/esm/DateRangePicker/Calendar.d.ts.map +1 -1
  244. package/dist/esm/DateRangePicker/Calendar.js +5 -8
  245. package/dist/esm/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  246. package/dist/esm/DateRangePicker/DateRangePicker.js +2 -3
  247. package/dist/esm/DateRangePicker/DateRangePickerButton.d.ts +1 -2
  248. package/dist/esm/DateRangePicker/DateRangePickerButton.d.ts.map +1 -1
  249. package/dist/esm/DateRangePicker/DateRangePickerButton.js +2 -4
  250. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts +2 -1
  251. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
  252. package/dist/esm/DateRangePicker/QuillDateRangePicker.js +4 -4
  253. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts +1 -1
  254. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
  255. package/dist/esm/DateRangePicker/dateRangePickerUtils.js +1 -15
  256. package/dist/esm/ReportBuilder.d.ts +17 -5
  257. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  258. package/dist/esm/ReportBuilder.js +516 -493
  259. package/dist/esm/SQLEditor.d.ts +2 -9
  260. package/dist/esm/SQLEditor.d.ts.map +1 -1
  261. package/dist/esm/SQLEditor.js +68 -85
  262. package/dist/esm/Table.d.ts +19 -3
  263. package/dist/esm/Table.d.ts.map +1 -1
  264. package/dist/esm/Table.js +107 -89
  265. package/dist/esm/TableChart.d.ts.map +1 -1
  266. package/dist/esm/TableChart.js +0 -1
  267. package/dist/esm/assets/ArrowDownHeadIcon.d.ts.map +1 -1
  268. package/dist/esm/assets/ArrowDownIcon.d.ts.map +1 -1
  269. package/dist/esm/assets/ArrowDownRightIcon.d.ts.map +1 -1
  270. package/dist/esm/assets/ArrowLeftHeadIcon.d.ts.map +1 -1
  271. package/dist/esm/assets/ArrowRightHeadIcon.d.ts.map +1 -1
  272. package/dist/esm/assets/ArrowRightIcon.d.ts.map +1 -1
  273. package/dist/esm/assets/ArrowUpHeadIcon.d.ts.map +1 -1
  274. package/dist/esm/assets/ArrowUpIcon.d.ts.map +1 -1
  275. package/dist/esm/assets/ArrowUpRightIcon.d.ts.map +1 -1
  276. package/dist/esm/assets/CalendarIcon.d.ts.map +1 -1
  277. package/dist/esm/assets/DoubleArrowLeftHeadIcon.d.ts.map +1 -1
  278. package/dist/esm/assets/DoubleArrowRightHeadIcon.d.ts.map +1 -1
  279. package/dist/esm/assets/ExclamationFilledIcon.d.ts.map +1 -1
  280. package/dist/esm/assets/LoadingSpinner.d.ts.map +1 -1
  281. package/dist/esm/assets/SearchIcon.d.ts.map +1 -1
  282. package/dist/esm/assets/XCircleIcon.d.ts.map +1 -1
  283. package/dist/esm/components/Banner/index.d.ts +1 -1
  284. package/dist/esm/components/Banner/index.d.ts.map +1 -1
  285. package/dist/esm/components/Banner/index.js +1 -1
  286. package/dist/esm/components/BigModal/BigModal.d.ts.map +1 -1
  287. package/dist/esm/components/BigModal/BigModal.js +7 -13
  288. package/dist/esm/components/Chart/BarList.d.ts.map +1 -1
  289. package/dist/esm/components/Chart/BarList.js +21 -14
  290. package/dist/esm/components/Chart/ChartError.d.ts +8 -1
  291. package/dist/esm/components/Chart/ChartError.d.ts.map +1 -1
  292. package/dist/esm/components/Chart/ChartError.js +39 -6
  293. package/dist/esm/components/Chart/ChartTooltip.d.ts.map +1 -1
  294. package/dist/esm/components/Chart/ChartTooltip.js +8 -2
  295. package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
  296. package/dist/esm/components/Chart/LineChart.js +2 -2
  297. package/dist/esm/components/Chart/PieChart.d.ts.map +1 -1
  298. package/dist/esm/components/Chart/PieChart.js +1 -3
  299. package/dist/esm/components/Dashboard/ChartComponent.d.ts +1 -1
  300. package/dist/esm/components/Dashboard/ChartComponent.d.ts.map +1 -1
  301. package/dist/esm/components/Dashboard/ChartComponent.js +1 -1
  302. package/dist/esm/components/Dashboard/DashboardFilter.d.ts +5 -1
  303. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  304. package/dist/esm/components/Dashboard/DashboardFilter.js +10 -5
  305. package/dist/esm/components/Dashboard/DataLoader.d.ts +2 -6
  306. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  307. package/dist/esm/components/Dashboard/DataLoader.js +88 -181
  308. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
  309. package/dist/esm/components/Dashboard/MetricComponent.js +1 -1
  310. package/dist/esm/components/Dashboard/TableComponent.d.ts +1 -4
  311. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  312. package/dist/esm/components/Dashboard/TableComponent.js +3 -3
  313. package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
  314. package/dist/esm/components/Dropdown/Dropdown.js +2 -4
  315. package/dist/esm/components/Dropdown/DropdownItem.d.ts.map +1 -1
  316. package/dist/esm/components/Dropdown/DropdownItem.js +4 -9
  317. package/dist/esm/components/Dropdown/index.d.ts +2 -2
  318. package/dist/esm/components/Dropdown/index.js +2 -2
  319. package/dist/esm/components/Modal/Modal.d.ts.map +1 -1
  320. package/dist/esm/components/Modal/Modal.js +2 -3
  321. package/dist/esm/components/Modal/index.d.ts +1 -1
  322. package/dist/esm/components/Modal/index.js +1 -1
  323. package/dist/esm/components/QuillMultiSelect.d.ts.map +1 -1
  324. package/dist/esm/components/QuillMultiSelect.js +18 -3
  325. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  326. package/dist/esm/components/QuillMultiSelectWithCombo.js +2 -2
  327. package/dist/esm/components/QuillSelect.js +1 -1
  328. package/dist/esm/components/QuillSelectWithCombo.js +2 -2
  329. package/dist/esm/components/QuillTable.d.ts +1 -4
  330. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  331. package/dist/esm/components/QuillTable.js +5 -11
  332. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts +3 -1
  333. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  334. package/dist/esm/components/ReportBuilder/AddColumnModal.js +8 -11
  335. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  336. package/dist/esm/components/ReportBuilder/AddLimitPopover.js +2 -4
  337. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  338. package/dist/esm/components/ReportBuilder/AddSortPopover.js +12 -1
  339. package/dist/esm/components/ReportBuilder/FilterModal.d.ts +22 -0
  340. package/dist/esm/components/ReportBuilder/FilterModal.d.ts.map +1 -0
  341. package/dist/esm/components/ReportBuilder/FilterModal.js +552 -0
  342. package/dist/esm/components/ReportBuilder/ast.d.ts +2 -1
  343. package/dist/esm/components/ReportBuilder/ast.d.ts.map +1 -1
  344. package/dist/esm/components/ReportBuilder/ast.js +31 -5
  345. package/dist/esm/components/ReportBuilder/constants.d.ts +18 -3
  346. package/dist/esm/components/ReportBuilder/constants.d.ts.map +1 -1
  347. package/dist/esm/components/ReportBuilder/constants.js +24 -3
  348. package/dist/esm/components/ReportBuilder/convert.d.ts +12 -15
  349. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
  350. package/dist/esm/components/ReportBuilder/convert.js +324 -493
  351. package/dist/esm/components/ReportBuilder/convert.uspec.d.ts +2 -0
  352. package/dist/esm/components/ReportBuilder/convert.uspec.d.ts.map +1 -0
  353. package/dist/esm/components/ReportBuilder/convert.uspec.js +1152 -0
  354. package/dist/esm/components/ReportBuilder/operators.d.ts +24 -4
  355. package/dist/esm/components/ReportBuilder/operators.d.ts.map +1 -1
  356. package/dist/esm/components/ReportBuilder/operators.js +32 -4
  357. package/dist/esm/components/ReportBuilder/ui.d.ts +20 -0
  358. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  359. package/dist/esm/components/ReportBuilder/ui.js +28 -3
  360. package/dist/esm/components/ReportBuilder/util.d.ts +3 -11
  361. package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -1
  362. package/dist/esm/components/ReportBuilder/util.js +16 -19
  363. package/dist/esm/components/UiComponents.d.ts +10 -7
  364. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  365. package/dist/esm/components/UiComponents.js +9 -8
  366. package/dist/esm/components/selectUtils.d.ts +0 -1
  367. package/dist/esm/components/selectUtils.d.ts.map +1 -1
  368. package/dist/esm/components/selectUtils.js +0 -20
  369. package/dist/esm/hooks/index.d.ts +4 -4
  370. package/dist/esm/hooks/index.js +4 -4
  371. package/dist/esm/hooks/useAstToFilterTree.d.ts +11 -0
  372. package/dist/esm/hooks/useAstToFilterTree.d.ts.map +1 -0
  373. package/dist/esm/hooks/useAstToFilterTree.js +24 -0
  374. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  375. package/dist/esm/hooks/useDashboard.js +5 -1
  376. package/dist/esm/hooks/useExport.d.ts.map +1 -1
  377. package/dist/esm/hooks/useExport.js +4 -2
  378. package/dist/esm/hooks/useOnClickOutside.js +5 -5
  379. package/dist/esm/hooks/useOnWindowResize.d.ts.map +1 -1
  380. package/dist/esm/hooks/useOnWindowResize.js +3 -3
  381. package/dist/esm/hooks/useQuill.d.ts +10 -27
  382. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  383. package/dist/esm/hooks/useQuill.js +114 -82
  384. package/dist/esm/hooks/useSelectOnKeyDown.d.ts.map +1 -1
  385. package/dist/esm/hooks/useSelectOnKeyDown.js +5 -5
  386. package/dist/esm/hooks/useTheme.js +1 -1
  387. package/dist/esm/index.d.ts +1 -0
  388. package/dist/esm/index.d.ts.map +1 -1
  389. package/dist/esm/index.js +1 -0
  390. package/dist/esm/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  391. package/dist/esm/internals/ReportBuilder/PivotForm.js +9 -2
  392. package/dist/esm/internals/ReportBuilder/PivotList.d.ts +2 -2
  393. package/dist/esm/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  394. package/dist/esm/internals/ReportBuilder/PivotList.js +3 -3
  395. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +1 -1
  396. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  397. package/dist/esm/internals/ReportBuilder/PivotModal.js +11 -24
  398. package/dist/esm/lib/utils.js +2 -2
  399. package/dist/esm/models/Filter.d.ts +104 -4
  400. package/dist/esm/models/Filter.d.ts.map +1 -1
  401. package/dist/esm/models/Filter.js +90 -1
  402. package/dist/esm/models/Pagination.d.ts +10 -0
  403. package/dist/esm/models/Pagination.d.ts.map +1 -0
  404. package/dist/esm/models/Pagination.js +1 -0
  405. package/dist/esm/models/Report.d.ts +116 -0
  406. package/dist/esm/models/Report.d.ts.map +1 -0
  407. package/dist/esm/models/Report.js +1 -0
  408. package/dist/esm/utils/aggregate.js +1 -1
  409. package/dist/esm/utils/astFilterProcessing.d.ts +36 -0
  410. package/dist/esm/utils/astFilterProcessing.d.ts.map +1 -0
  411. package/dist/esm/utils/astFilterProcessing.js +8049 -0
  412. package/dist/esm/utils/astFilterProcessing.uspec.d.ts +2 -0
  413. package/dist/esm/utils/astFilterProcessing.uspec.d.ts.map +1 -0
  414. package/dist/esm/utils/astFilterProcessing.uspec.js +2729 -0
  415. package/dist/esm/utils/astProcessing.d.ts.map +1 -1
  416. package/dist/esm/utils/astProcessing.js +4 -3
  417. package/dist/esm/utils/axisFormatter.js +0 -71
  418. package/dist/esm/utils/color.js +9 -87
  419. package/dist/esm/utils/csv.d.ts.map +1 -1
  420. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  421. package/dist/esm/utils/dashboard.js +3 -3
  422. package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
  423. package/dist/esm/utils/dataFetcher.js +63 -1
  424. package/dist/esm/utils/dataProcessing.d.ts +8 -0
  425. package/dist/esm/utils/dataProcessing.d.ts.map +1 -0
  426. package/dist/esm/utils/dataProcessing.js +122 -0
  427. package/dist/esm/utils/dataProcessing.uspec.d.ts +2 -0
  428. package/dist/esm/utils/dataProcessing.uspec.d.ts.map +1 -0
  429. package/dist/esm/utils/dataProcessing.uspec.js +204 -0
  430. package/dist/esm/utils/dates.d.ts +1 -1
  431. package/dist/esm/utils/error.d.ts +5 -0
  432. package/dist/esm/utils/error.d.ts.map +1 -0
  433. package/dist/esm/utils/error.js +8 -0
  434. package/dist/esm/utils/filterConstants.d.ts +34 -0
  435. package/dist/esm/utils/filterConstants.d.ts.map +1 -0
  436. package/dist/esm/utils/filterConstants.js +33 -0
  437. package/dist/esm/utils/filterProcessing.js +4 -4
  438. package/dist/esm/utils/logging.d.ts.map +1 -1
  439. package/dist/esm/utils/logging.js +1 -0
  440. package/dist/esm/utils/merge.js +0 -21
  441. package/dist/esm/utils/{monacoAutocomplete.d.ts → monacoConfig.d.ts} +3 -2
  442. package/dist/esm/utils/monacoConfig.d.ts.map +1 -0
  443. package/dist/esm/utils/monacoConfig.js +319 -0
  444. package/dist/esm/utils/paginationProcessing.d.ts +5 -0
  445. package/dist/esm/utils/paginationProcessing.d.ts.map +1 -0
  446. package/dist/esm/utils/paginationProcessing.js +25 -0
  447. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  448. package/dist/esm/utils/pivotConstructor.js +9 -0
  449. package/dist/esm/utils/pivotProcessing.d.ts.map +1 -1
  450. package/dist/esm/utils/pivotProcessing.js +12 -6
  451. package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
  452. package/dist/esm/utils/queryConstructor.js +4 -3
  453. package/dist/esm/utils/queryConstructor.uspec.js +21 -21
  454. package/dist/esm/utils/report.d.ts +7 -0
  455. package/dist/esm/utils/report.d.ts.map +1 -0
  456. package/dist/esm/utils/report.ispec.d.ts +2 -0
  457. package/dist/esm/utils/report.ispec.d.ts.map +1 -0
  458. package/dist/esm/utils/report.ispec.js +46 -0
  459. package/dist/esm/utils/report.js +88 -0
  460. package/dist/esm/utils/schema.d.ts.map +1 -1
  461. package/dist/esm/utils/schema.js +35 -6
  462. package/dist/esm/utils/styles.d.ts +1 -1
  463. package/dist/esm/utils/styles.d.ts.map +1 -1
  464. package/dist/esm/utils/tableProcessing.d.ts +22 -8
  465. package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
  466. package/dist/esm/utils/tableProcessing.ispec.d.ts +2 -0
  467. package/dist/esm/utils/tableProcessing.ispec.d.ts.map +1 -0
  468. package/dist/esm/utils/tableProcessing.ispec.js +61 -0
  469. package/dist/esm/utils/tableProcessing.js +112 -33
  470. package/dist/esm/utils/textProcessing.js +3 -3
  471. package/dist/esm/utils/validation.d.ts +9 -0
  472. package/dist/esm/utils/validation.d.ts.map +1 -0
  473. package/dist/esm/utils/validation.js +20 -0
  474. package/dist/esm/utils/valueFormatter.d.ts.map +1 -1
  475. package/dist/esm/utils/valueFormatter.js +8 -4
  476. package/package.json +1 -1
  477. package/dist/cjs/utils/monacoAutocomplete.d.ts.map +0 -1
  478. package/dist/cjs/utils/monacoAutocomplete.js +0 -145
  479. package/dist/cjs/utils/queryConstructor.uspec.d.ts +0 -2
  480. package/dist/cjs/utils/queryConstructor.uspec.d.ts.map +0 -1
  481. package/dist/cjs/utils/queryConstructor.uspec.js +0 -225
  482. package/dist/esm/utils/monacoAutocomplete.d.ts.map +0 -1
  483. package/dist/esm/utils/monacoAutocomplete.js +0 -140
@@ -1,145 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateSuggestionsByDatasource = exports.generateSuggestionsBySchema = void 0;
4
- const queryConstructor_1 = require("./queryConstructor");
5
- const GENERIC_DATASOURCE_SUGGESTIONS = (monaco, range) => {
6
- return [
7
- {
8
- label: 'SELECT',
9
- kind: monaco.languages.CompletionItemKind.Keyword,
10
- insertText: 'SELECT',
11
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
12
- range,
13
- },
14
- {
15
- label: 'FROM',
16
- kind: monaco.languages.CompletionItemKind.Keyword,
17
- insertText: 'FROM',
18
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
19
- range,
20
- },
21
- {
22
- label: 'JOIN',
23
- kind: monaco.languages.CompletionItemKind.Keyword,
24
- insertText: 'JOIN',
25
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
26
- range,
27
- },
28
- {
29
- label: 'LEFT JOIN',
30
- kind: monaco.languages.CompletionItemKind.Keyword,
31
- insertText: 'LEFT JOIN',
32
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
33
- range,
34
- },
35
- {
36
- label: 'INNER JOIN',
37
- kind: monaco.languages.CompletionItemKind.Keyword,
38
- insertText: 'INNER JOIN',
39
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
40
- range,
41
- },
42
- {
43
- label: 'MAX',
44
- kind: monaco.languages.CompletionItemKind.Keyword,
45
- insertText: 'MAX',
46
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
47
- range,
48
- },
49
- {
50
- label: 'MIN',
51
- kind: monaco.languages.CompletionItemKind.Keyword,
52
- insertText: 'MIN',
53
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
54
- range,
55
- },
56
- {
57
- label: 'ON',
58
- kind: monaco.languages.CompletionItemKind.Keyword,
59
- insertText: 'ON',
60
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
61
- range,
62
- },
63
- {
64
- label: 'WHERE',
65
- kind: monaco.languages.CompletionItemKind.Keyword,
66
- insertText: 'WHERE',
67
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
68
- range,
69
- },
70
- {
71
- label: 'LIMIT',
72
- kind: monaco.languages.CompletionItemKind.Keyword,
73
- insertText: 'LIMIT',
74
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
75
- range,
76
- },
77
- {
78
- label: 'GROUP BY',
79
- kind: monaco.languages.CompletionItemKind.Keyword,
80
- insertText: 'GROUP BY',
81
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
82
- range,
83
- },
84
- {
85
- label: 'ORDER BY',
86
- kind: monaco.languages.CompletionItemKind.Keyword,
87
- insertText: 'ORDER BY',
88
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
89
- range,
90
- },
91
- ];
92
- };
93
- const POSTGRES_DATASOURCE_SUGGESTIONS = (monaco, range) => {
94
- return [
95
- {
96
- label: 'SELECT',
97
- kind: monaco.languages.CompletionItemKind.Keyword,
98
- insertText: 'SELECT',
99
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
100
- range,
101
- },
102
- {
103
- label: 'FROM',
104
- kind: monaco.languages.CompletionItemKind.Keyword,
105
- insertText: 'FROM',
106
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
107
- range,
108
- },
109
- ];
110
- };
111
- function generateSuggestionsBySchema(schema, monaco, range, databaseType) {
112
- console.log(databaseType);
113
- const suggestions = [];
114
- schema.forEach((table) => {
115
- const curSuggestion = {
116
- label: table.name,
117
- kind: monaco.languages.CompletionItemKind.Field,
118
- insertText: `${(0, queryConstructor_1.processColumnReference)(table.name, databaseType).replaceAll('`', '')}`,
119
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
120
- range,
121
- };
122
- suggestions.push(curSuggestion);
123
- table.columns.forEach((column) => {
124
- const insertText = `${(0, queryConstructor_1.processColumnReference)(column.name, databaseType).replaceAll('`', '')}`;
125
- const curSuggestion = {
126
- label: column.name,
127
- kind: monaco.languages.CompletionItemKind.Field,
128
- insertText,
129
- detail: table.name,
130
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
131
- range,
132
- };
133
- suggestions.push(curSuggestion);
134
- });
135
- }, []);
136
- return suggestions;
137
- }
138
- exports.generateSuggestionsBySchema = generateSuggestionsBySchema;
139
- function generateSuggestionsByDatasource(monaco, range, databaseType) {
140
- return [
141
- ...POSTGRES_DATASOURCE_SUGGESTIONS(monaco, range),
142
- ...GENERIC_DATASOURCE_SUGGESTIONS(monaco, range),
143
- ];
144
- }
145
- exports.generateSuggestionsByDatasource = generateSuggestionsByDatasource;
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=queryConstructor.uspec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"queryConstructor.uspec.d.ts","sourceRoot":"","sources":["../../../src/utils/queryConstructor.uspec.ts"],"names":[],"mappings":""}
@@ -1,225 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const queryConstructor_1 = require("./queryConstructor");
4
- const removeExtraSpacesAndNewLines = (str) => {
5
- return str.replace(/\s+/g, ' ').trim();
6
- };
7
- describe('queryConstructor', () => {
8
- let default2DPivot = {
9
- rowField: 'merchant',
10
- rowFieldType: 'string',
11
- columnField: 'user',
12
- valueField: 'amount',
13
- aggregationType: 'sum',
14
- };
15
- const nonComparisonQuery = ['select * from transactions'];
16
- const comparisonQueries = [
17
- `select * from transactions where created_at BETWEEN '2024-06-01' AND '2024-07-01'`,
18
- `select * from transactions where created_at BETWEEN '2024-05-01' AND '2024-06-01'`,
19
- ];
20
- describe('bigquery - generatePivotQuery', () => {
21
- let databaseType = 'bigquery';
22
- it('should return a 2d string pivot query', async () => {
23
- const query = (0, queryConstructor_1.generatePivotQuery)(default2DPivot, nonComparisonQuery, databaseType, undefined, ['value1', 'value2']);
24
- const expected = `WITH quill_qt AS (select * from transactions),
25
- quill_qt_cw AS (SELECT \`merchant\`,
26
- sum(CASE WHEN \`user\` = 'value1' THEN \`amount\` ELSE 0 END) AS \`value1\`,
27
- sum(CASE WHEN \`user\` = 'value2' THEN \`amount\` ELSE 0 END) AS \`value2\`
28
- FROM quill_qt GROUP BY \`merchant\`)
29
- SELECT * FROM quill_qt_cw qt`;
30
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
31
- });
32
- it('should return a 2d date pivot query', async () => {
33
- const query = (0, queryConstructor_1.generatePivotQuery)({
34
- ...default2DPivot,
35
- rowFieldType: 'MMM_DD_YYY',
36
- rowField: 'created_at',
37
- }, nonComparisonQuery, databaseType, undefined, ['value1', 'value2']);
38
- const expected = `WITH quill_query_table AS (select * from transactions),
39
- quill_qt_agg as (SELECT TIMESTAMP_TRUNC(\`created_at\`, month) as \`created_at\`,
40
- sum(CASE WHEN qt.\`user\` = 'value1' THEN \`amount\` ELSE 0 END) AS \`value1\`,
41
- sum(CASE WHEN qt.\`user\` = 'value2' THEN \`amount\` ELSE 0 END) AS \`value2\` FROM quill_query_table qt
42
- GROUP BY TIMESTAMP_TRUNC(\`created_at\`, month))
43
- SELECT * FROM quill_qt_agg qt ORDER BY qt.\`created_at\``;
44
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
45
- });
46
- it('should return a 1d date pivot query', async () => {
47
- const query = (0, queryConstructor_1.generatePivotQuery)({
48
- ...default2DPivot,
49
- rowFieldType: 'MMM_DD_YYY',
50
- rowField: 'created_at',
51
- columnField: undefined,
52
- }, nonComparisonQuery, databaseType, undefined);
53
- const expected = `WITH quill_qt AS (select * from transactions),
54
- quill_qt_agg AS (SELECT TIMESTAMP_TRUNC(\`created_at\`, month) as \`created_at\`,
55
- sum(\`amount\`) as \`amount\` FROM quill_qt GROUP BY TIMESTAMP_TRUNC(\`created_at\`, month))
56
- SELECT * FROM quill_qt_agg qt ORDER BY qt.\`created_at\``;
57
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
58
- });
59
- it('should return a 1d string pivot query', async () => {
60
- const query = (0, queryConstructor_1.generatePivotQuery)({ ...default2DPivot, columnField: undefined }, nonComparisonQuery, databaseType, undefined);
61
- const expected = `WITH quill_qt AS (select * from transactions),
62
- quill_qt_cw AS (SELECT \`merchant\`, sum(\`amount\`) as \`amount\`
63
- FROM quill_qt GROUP BY \`merchant\`)
64
- SELECT * FROM quill_qt_cw qt`;
65
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
66
- });
67
- it('should return a value aggregation query', async () => {
68
- const query = (0, queryConstructor_1.generatePivotQuery)(
69
- // @ts-ignore
70
- { ...default2DPivot, columnField: undefined, rowField: undefined }, nonComparisonQuery, databaseType, undefined);
71
- const expected = `WITH quill_qt AS (select * from transactions),
72
- quill_qt_agg AS (SELECT sum(\`amount\`) as \`amount\` FROM quill_qt) SELECT * FROM quill_qt_agg qt`;
73
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
74
- });
75
- it('should return a 2d string pivot query with comparison', async () => {
76
- const query = (0, queryConstructor_1.generatePivotQuery)(default2DPivot, comparisonQueries, databaseType, undefined, ['value1', 'value2']);
77
- const expected = `WITH quill_qt AS
78
- (select * from transactions where created_at BETWEEN '2024-06-01' AND '2024-07-01'),
79
- quill_qt_cw AS (SELECT \`merchant\`,
80
- sum(CASE WHEN \`user\` = 'value1' THEN \`amount\` ELSE 0 END) AS \`value1\`,
81
- sum(CASE WHEN \`user\` = 'value2' THEN \`amount\` ELSE 0 END) AS \`value2\` FROM quill_qt GROUP BY \`merchant\`) ,
82
- quill_ct as (select * from transactions where created_at BETWEEN '2024-05-01' AND '2024-06-01') ,
83
- quill_ct_cw as (SELECT \`merchant\` as \`comparison_merchant\`,
84
- sum(CASE WHEN \`user\` = 'value1' THEN \`amount\` ELSE 0 END) AS \`comparison_value1\`,
85
- sum(CASE WHEN \`user\` = 'value2' THEN \`amount\` ELSE 0 END) AS \`comparison_value2\` FROM quill_ct GROUP BY \`merchant\`)
86
- SELECT * FROM quill_qt_cw qt JOIN quill_ct_cw ct ON ct.\`comparison_merchant\` = qt.\`merchant\``;
87
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
88
- });
89
- it('should return a 2d date pivot query with comparison', async () => {
90
- const query = (0, queryConstructor_1.generatePivotQuery)({
91
- ...default2DPivot,
92
- rowFieldType: 'MMM_DD_YYY',
93
- rowField: 'created_at',
94
- }, comparisonQueries, databaseType, '90', ['value1', 'value2']);
95
- const expected = `WITH quill_query_table AS (select * from transactions where created_at BETWEEN '2024-06-01' AND '2024-07-01'),
96
- quill_qt_agg as (SELECT TIMESTAMP_TRUNC(\`created_at\`, month) as \`created_at\`,
97
- sum(CASE WHEN qt.\`user\` = 'value1' THEN \`amount\` ELSE 0 END) AS \`value1\`,
98
- sum(CASE WHEN qt.\`user\` = 'value2' THEN \`amount\` ELSE 0 END) AS \`value2\`
99
- FROM quill_query_table qt GROUP BY TIMESTAMP_TRUNC(\`created_at\`, month)) ,
100
- quill_ct as (select * from transactions where created_at BETWEEN '2024-05-01' AND '2024-06-01') ,
101
- quill_ct_cw as (SELECT TIMESTAMP_TRUNC(\`created_at\`, month) as \`comparison_created_at\`,
102
- sum(CASE WHEN \`user\` = 'value1' THEN \`amount\` ELSE 0 END) AS \`comparison_value1\`,
103
- sum(CASE WHEN \`user\` = 'value2' THEN \`amount\` ELSE 0 END) AS \`comparison_value2\`
104
- FROM quill_ct GROUP BY TIMESTAMP_TRUNC(\`created_at\`, month))
105
- SELECT * FROM quill_qt_agg qt
106
- LEFT JOIN quill_ct_cw \`ct\` ON qt.\`created_at\` = TIMESTAMP_TRUNC(TIMESTAMP_ADD(\`ct\`.\`comparison_created_at\`, INTERVAL 90 ), month)
107
- ORDER BY qt.\`created_at\``;
108
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
109
- });
110
- it('should return a 1d date pivot query with comparison', async () => {
111
- const query = (0, queryConstructor_1.generatePivotQuery)({
112
- ...default2DPivot,
113
- rowFieldType: 'MMM_DD_YYY',
114
- rowField: 'created_at',
115
- columnField: undefined,
116
- }, comparisonQueries, databaseType, '3 month');
117
- const expected = `WITH quill_qt AS (select * from transactions where created_at BETWEEN '2024-06-01' AND '2024-07-01'),
118
- quill_qt_agg AS (SELECT TIMESTAMP_TRUNC(\`created_at\`, month) as \`created_at\`,
119
- sum(\`amount\`) as \`amount\` FROM quill_qt GROUP BY TIMESTAMP_TRUNC(\`created_at\`, month)) ,
120
- quill_ct as (select * from transactions where created_at BETWEEN '2024-05-01' AND '2024-06-01') ,
121
- quill_ct_cw as (SELECT TIMESTAMP_TRUNC(\`created_at\`, month) as \`comparison_created_at\`,
122
- sum(\`amount\`) as \`comparison_amount\` FROM quill_ct GROUP BY TIMESTAMP_TRUNC(\`created_at\`, month))
123
- SELECT * FROM quill_qt_agg qt LEFT JOIN quill_ct_cw \`ct\` ON qt.\`created_at\` = TIMESTAMP_TRUNC(TIMESTAMP_ADD(\`ct\`.\`comparison_created_at\`, INTERVAL 3 month ), month)
124
- ORDER BY qt.\`created_at\``;
125
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
126
- });
127
- it('should return a 1d string pivot query with comparison', async () => {
128
- const query = (0, queryConstructor_1.generatePivotQuery)({ ...default2DPivot, columnField: undefined }, comparisonQueries, databaseType, undefined);
129
- const expected = `WITH quill_qt AS (select * from transactions where created_at BETWEEN '2024-06-01' AND '2024-07-01'),
130
- quill_qt_cw AS (SELECT \`merchant\`, sum(\`amount\`) as \`amount\` FROM quill_qt GROUP BY \`merchant\`) ,
131
- quill_ct as (select * from transactions where created_at BETWEEN '2024-05-01' AND '2024-06-01') ,
132
- quill_ct_cw as (SELECT \`merchant\` as \`comparison_merchant\`, sum(\`amount\`) as \`comparison_amount\` FROM quill_ct GROUP BY \`merchant\`)
133
- SELECT * FROM quill_qt_cw qt JOIN quill_ct_cw ct ON ct.\`comparison_merchant\` = qt.\`merchant\``;
134
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
135
- });
136
- it('should return a value aggregation query', async () => {
137
- const query = (0, queryConstructor_1.generatePivotQuery)(
138
- // @ts-ignore
139
- { ...default2DPivot, columnField: undefined, rowField: undefined }, comparisonQueries, databaseType, undefined);
140
- const expected = `WITH quill_qt AS (select * from transactions where created_at BETWEEN '2024-06-01' AND '2024-07-01'),
141
- quill_qt_agg AS (SELECT sum(\`amount\`) as \`amount\` FROM quill_qt) ,
142
- quill_ct as (select * from transactions where created_at BETWEEN '2024-05-01' AND '2024-06-01') ,
143
- quill_ct_cw as (SELECT sum(\`amount\`) as \`comparison_amount\` FROM quill_ct)
144
- SELECT * FROM quill_qt_agg qt CROSS JOIN quill_ct_cw ct`;
145
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
146
- });
147
- });
148
- describe('postgresql - generatePivotQuery', () => {
149
- let databaseType = 'postgresql';
150
- it('should return a 2d string pivot query', async () => {
151
- const query = (0, queryConstructor_1.generatePivotQuery)(default2DPivot, ['select * from transactions'], databaseType, undefined, ['value1', 'value2']);
152
- const expected = `WITH quill_qt AS (select * from transactions),
153
- quill_qt_cw AS
154
- (SELECT \"merchant\", sum(CASE WHEN \"user\" = 'value1' THEN \"amount\" ELSE 0 END) AS \"value1\",
155
- sum(CASE WHEN \"user\" = 'value2' THEN \"amount\" ELSE 0 END) AS \"value2\" FROM quill_qt GROUP BY \"merchant\")
156
- SELECT * FROM quill_qt_cw qt`;
157
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
158
- });
159
- it('should return a 2d date pivot query', async () => {
160
- const query = (0, queryConstructor_1.generatePivotQuery)({
161
- ...default2DPivot,
162
- rowFieldType: 'MMM_DD_YYY',
163
- rowField: 'created_at',
164
- }, ['select * from transactions'], databaseType, undefined, ['value1', 'value2']);
165
- const expected = `WITH quill_query_table AS (select * from transactions),
166
- quill_qt_agg as (SELECT date_trunc('month', \"created_at\") as \"created_at\",
167
- sum(CASE WHEN qt.\"user\" = 'value1' THEN \"amount\" ELSE 0 END) AS \"value1\",
168
- sum(CASE WHEN qt.\"user\" = 'value2' THEN \"amount\" ELSE 0 END) AS \"value2\"
169
- FROM quill_query_table qt
170
- GROUP BY date_trunc('month', \"created_at\"))
171
- SELECT * FROM quill_qt_agg qt ORDER BY qt.\"created_at\"`;
172
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
173
- });
174
- it('should return a 1d date pivot query', async () => {
175
- const query = (0, queryConstructor_1.generatePivotQuery)({
176
- ...default2DPivot,
177
- rowFieldType: 'MMM_DD_YYY',
178
- rowField: 'created_at',
179
- columnField: undefined,
180
- }, ['select * from transactions'], databaseType, undefined);
181
- const expected = `WITH quill_qt AS (select * from transactions),
182
- quill_qt_agg AS (SELECT date_trunc('month', \"created_at\") as \"created_at\", sum(\"amount\") as \"amount\"
183
- FROM quill_qt
184
- GROUP BY date_trunc('month', \"created_at\"))
185
- SELECT * FROM quill_qt_agg qt ORDER BY qt.\"created_at\"`;
186
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
187
- });
188
- it('should return a 1d string pivot query', async () => {
189
- const query = (0, queryConstructor_1.generatePivotQuery)({ ...default2DPivot, columnField: undefined }, ['select * from transactions'], databaseType, undefined);
190
- const expected = `WITH quill_qt AS (select * from transactions),
191
- quill_qt_cw AS (SELECT "merchant", sum("amount") as "amount"
192
- FROM quill_qt
193
- GROUP BY "merchant")
194
- SELECT * FROM quill_qt_cw qt`;
195
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
196
- });
197
- it('should return a value aggregation query', async () => {
198
- const query = (0, queryConstructor_1.generatePivotQuery)(
199
- // @ts-ignore
200
- { ...default2DPivot, columnField: undefined, rowField: undefined }, ['select * from transactions'], databaseType, undefined);
201
- const expected = `WITH quill_qt AS (select * from transactions),
202
- quill_qt_agg AS (SELECT sum("amount") as "amount" FROM quill_qt) SELECT * FROM quill_qt_agg qt`;
203
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
204
- });
205
- it('should return a 2d date pivot query with comparison', async () => {
206
- const query = (0, queryConstructor_1.generatePivotQuery)({
207
- ...default2DPivot,
208
- rowFieldType: 'MMM_DD_YYY',
209
- rowField: 'created_at',
210
- }, comparisonQueries, databaseType, '90 DAY', ['value1', 'value2']);
211
- const expected = `WITH quill_query_table AS
212
- (select * from transactions where created_at BETWEEN '2024-06-01' AND '2024-07-01'),
213
- quill_qt_agg as (SELECT date_trunc('month', \"created_at\") as \"created_at\",
214
- sum(CASE WHEN qt.\"user\" = 'value1' THEN \"amount\" ELSE 0 END) AS \"value1\",
215
- sum(CASE WHEN qt.\"user\" = 'value2' THEN \"amount\" ELSE 0 END) AS \"value2\" FROM quill_query_table qt GROUP BY date_trunc('month', \"created_at\")) ,
216
- quill_ct as (select * from transactions where created_at BETWEEN '2024-05-01' AND '2024-06-01') ,
217
- quill_ct_cw as (SELECT date_trunc('month', \"created_at\") as \"comparison_created_at\",
218
- sum(CASE WHEN \"user\" = 'value1' THEN \"amount\" ELSE 0 END) AS \"comparison_value1\",
219
- sum(CASE WHEN \"user\" = 'value2' THEN \"amount\" ELSE 0 END) AS \"comparison_value2\" FROM quill_ct GROUP BY date_trunc('month', \"created_at\"))
220
- SELECT * FROM quill_qt_agg qt LEFT JOIN quill_ct_cw \"ct\" ON qt.\"created_at\" = date_trunc('month', (\"ct\".\"comparison_created_at\" + INTERVAL '90 DAY'))
221
- ORDER BY qt.\"created_at\"`;
222
- expect(removeExtraSpacesAndNewLines(query)).toEqual(removeExtraSpacesAndNewLines(expected));
223
- });
224
- });
225
- });
@@ -1 +0,0 @@
1
- {"version":3,"file":"monacoAutocomplete.d.ts","sourceRoot":"","sources":["../../../src/utils/monacoAutocomplete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAY,KAAK,EAAE,MAAM,eAAe,CAAC;AAGhD,UAAU,cAAc;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA4HD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,GAAG,EAAE,EACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,MAAM,GACnB,cAAc,EAAE,CA4BlB;AAED,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,MAAM;;;;;;IAMrB"}
@@ -1,140 +0,0 @@
1
- import { processColumnReference } from './queryConstructor';
2
- const GENERIC_DATASOURCE_SUGGESTIONS = (monaco, range) => {
3
- return [
4
- {
5
- label: 'SELECT',
6
- kind: monaco.languages.CompletionItemKind.Keyword,
7
- insertText: 'SELECT',
8
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
9
- range,
10
- },
11
- {
12
- label: 'FROM',
13
- kind: monaco.languages.CompletionItemKind.Keyword,
14
- insertText: 'FROM',
15
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
16
- range,
17
- },
18
- {
19
- label: 'JOIN',
20
- kind: monaco.languages.CompletionItemKind.Keyword,
21
- insertText: 'JOIN',
22
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
23
- range,
24
- },
25
- {
26
- label: 'LEFT JOIN',
27
- kind: monaco.languages.CompletionItemKind.Keyword,
28
- insertText: 'LEFT JOIN',
29
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
30
- range,
31
- },
32
- {
33
- label: 'INNER JOIN',
34
- kind: monaco.languages.CompletionItemKind.Keyword,
35
- insertText: 'INNER JOIN',
36
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
37
- range,
38
- },
39
- {
40
- label: 'MAX',
41
- kind: monaco.languages.CompletionItemKind.Keyword,
42
- insertText: 'MAX',
43
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
44
- range,
45
- },
46
- {
47
- label: 'MIN',
48
- kind: monaco.languages.CompletionItemKind.Keyword,
49
- insertText: 'MIN',
50
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
51
- range,
52
- },
53
- {
54
- label: 'ON',
55
- kind: monaco.languages.CompletionItemKind.Keyword,
56
- insertText: 'ON',
57
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
58
- range,
59
- },
60
- {
61
- label: 'WHERE',
62
- kind: monaco.languages.CompletionItemKind.Keyword,
63
- insertText: 'WHERE',
64
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
65
- range,
66
- },
67
- {
68
- label: 'LIMIT',
69
- kind: monaco.languages.CompletionItemKind.Keyword,
70
- insertText: 'LIMIT',
71
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
72
- range,
73
- },
74
- {
75
- label: 'GROUP BY',
76
- kind: monaco.languages.CompletionItemKind.Keyword,
77
- insertText: 'GROUP BY',
78
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
79
- range,
80
- },
81
- {
82
- label: 'ORDER BY',
83
- kind: monaco.languages.CompletionItemKind.Keyword,
84
- insertText: 'ORDER BY',
85
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
86
- range,
87
- },
88
- ];
89
- };
90
- const POSTGRES_DATASOURCE_SUGGESTIONS = (monaco, range) => {
91
- return [
92
- {
93
- label: 'SELECT',
94
- kind: monaco.languages.CompletionItemKind.Keyword,
95
- insertText: 'SELECT',
96
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
97
- range,
98
- },
99
- {
100
- label: 'FROM',
101
- kind: monaco.languages.CompletionItemKind.Keyword,
102
- insertText: 'FROM',
103
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
104
- range,
105
- },
106
- ];
107
- };
108
- export function generateSuggestionsBySchema(schema, monaco, range, databaseType) {
109
- console.log(databaseType);
110
- const suggestions = [];
111
- schema.forEach((table) => {
112
- const curSuggestion = {
113
- label: table.name,
114
- kind: monaco.languages.CompletionItemKind.Field,
115
- insertText: `${processColumnReference(table.name, databaseType).replaceAll('`', '')}`,
116
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
117
- range,
118
- };
119
- suggestions.push(curSuggestion);
120
- table.columns.forEach((column) => {
121
- const insertText = `${processColumnReference(column.name, databaseType).replaceAll('`', '')}`;
122
- const curSuggestion = {
123
- label: column.name,
124
- kind: monaco.languages.CompletionItemKind.Field,
125
- insertText,
126
- detail: table.name,
127
- insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
128
- range,
129
- };
130
- suggestions.push(curSuggestion);
131
- });
132
- }, []);
133
- return suggestions;
134
- }
135
- export function generateSuggestionsByDatasource(monaco, range, databaseType) {
136
- return [
137
- ...POSTGRES_DATASOURCE_SUGGESTIONS(monaco, range),
138
- ...GENERIC_DATASOURCE_SUGGESTIONS(monaco, range),
139
- ];
140
- }