@quillsql/react 2.12.37 → 2.12.38

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 (448) hide show
  1. package/dist/esm/Chart.d.ts +204 -0
  2. package/dist/esm/Chart.d.ts.map +1 -0
  3. package/dist/esm/Chart.js +431 -0
  4. package/dist/esm/ChartBuilder.d.ts +339 -0
  5. package/dist/esm/ChartBuilder.d.ts.map +1 -0
  6. package/dist/esm/ChartBuilder.js +1312 -0
  7. package/dist/esm/ChartEditor.d.ts +209 -0
  8. package/dist/esm/ChartEditor.d.ts.map +1 -0
  9. package/dist/esm/ChartEditor.js +182 -0
  10. package/dist/esm/Context.d.ts +14 -0
  11. package/dist/esm/Context.d.ts.map +1 -0
  12. package/dist/esm/Context.js +269 -0
  13. package/dist/esm/Dashboard.d.ts +279 -0
  14. package/dist/esm/Dashboard.d.ts.map +1 -0
  15. package/dist/esm/Dashboard.js +660 -0
  16. package/dist/esm/DateRangePicker/Calendar.d.ts +17 -0
  17. package/dist/esm/DateRangePicker/Calendar.d.ts.map +1 -0
  18. package/dist/esm/DateRangePicker/Calendar.js +164 -0
  19. package/dist/esm/DateRangePicker/DateRangePicker.d.ts +39 -0
  20. package/dist/esm/DateRangePicker/DateRangePicker.d.ts.map +1 -0
  21. package/dist/esm/DateRangePicker/DateRangePicker.js +95 -0
  22. package/dist/esm/DateRangePicker/DateRangePickerButton.d.ts +22 -0
  23. package/dist/esm/DateRangePicker/DateRangePickerButton.d.ts.map +1 -0
  24. package/dist/esm/DateRangePicker/DateRangePickerButton.js +134 -0
  25. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts +25 -0
  26. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -0
  27. package/dist/esm/DateRangePicker/QuillDateRangePicker.js +260 -0
  28. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts +80 -0
  29. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -0
  30. package/dist/esm/DateRangePicker/dateRangePickerUtils.js +521 -0
  31. package/dist/esm/DateRangePicker/index.d.ts +3 -0
  32. package/dist/esm/DateRangePicker/index.d.ts.map +1 -0
  33. package/dist/esm/DateRangePicker/index.js +2 -0
  34. package/dist/esm/QuillProvider.d.ts +163 -0
  35. package/dist/esm/QuillProvider.d.ts.map +1 -0
  36. package/dist/esm/QuillProvider.js +104 -0
  37. package/dist/esm/ReportBuilder.d.ts +318 -0
  38. package/dist/esm/ReportBuilder.d.ts.map +1 -0
  39. package/dist/esm/ReportBuilder.js +3279 -0
  40. package/dist/esm/SQLEditor.d.ts +272 -0
  41. package/dist/esm/SQLEditor.d.ts.map +1 -0
  42. package/dist/esm/SQLEditor.js +510 -0
  43. package/dist/esm/Table.d.ts +167 -0
  44. package/dist/esm/Table.d.ts.map +1 -0
  45. package/dist/esm/Table.js +215 -0
  46. package/dist/esm/TableChart.d.ts +15 -0
  47. package/dist/esm/TableChart.d.ts.map +1 -0
  48. package/dist/esm/TableChart.js +95 -0
  49. package/dist/esm/assets/ArrowDownHeadIcon.d.ts +5 -0
  50. package/dist/esm/assets/ArrowDownHeadIcon.d.ts.map +1 -0
  51. package/dist/esm/assets/ArrowDownHeadIcon.js +3 -0
  52. package/dist/esm/assets/ArrowDownIcon.d.ts +5 -0
  53. package/dist/esm/assets/ArrowDownIcon.d.ts.map +1 -0
  54. package/dist/esm/assets/ArrowDownIcon.js +3 -0
  55. package/dist/esm/assets/ArrowDownRightIcon.d.ts +5 -0
  56. package/dist/esm/assets/ArrowDownRightIcon.d.ts.map +1 -0
  57. package/dist/esm/assets/ArrowDownRightIcon.js +3 -0
  58. package/dist/esm/assets/ArrowLeftHeadIcon.d.ts +5 -0
  59. package/dist/esm/assets/ArrowLeftHeadIcon.d.ts.map +1 -0
  60. package/dist/esm/assets/ArrowLeftHeadIcon.js +3 -0
  61. package/dist/esm/assets/ArrowRightHeadIcon.d.ts +5 -0
  62. package/dist/esm/assets/ArrowRightHeadIcon.d.ts.map +1 -0
  63. package/dist/esm/assets/ArrowRightHeadIcon.js +3 -0
  64. package/dist/esm/assets/ArrowRightIcon.d.ts +5 -0
  65. package/dist/esm/assets/ArrowRightIcon.d.ts.map +1 -0
  66. package/dist/esm/assets/ArrowRightIcon.js +3 -0
  67. package/dist/esm/assets/ArrowUpHeadIcon.d.ts +5 -0
  68. package/dist/esm/assets/ArrowUpHeadIcon.d.ts.map +1 -0
  69. package/dist/esm/assets/ArrowUpHeadIcon.js +3 -0
  70. package/dist/esm/assets/ArrowUpIcon.d.ts +5 -0
  71. package/dist/esm/assets/ArrowUpIcon.d.ts.map +1 -0
  72. package/dist/esm/assets/ArrowUpIcon.js +3 -0
  73. package/dist/esm/assets/ArrowUpRightIcon.d.ts +5 -0
  74. package/dist/esm/assets/ArrowUpRightIcon.d.ts.map +1 -0
  75. package/dist/esm/assets/ArrowUpRightIcon.js +3 -0
  76. package/dist/esm/assets/CalendarIcon.d.ts +5 -0
  77. package/dist/esm/assets/CalendarIcon.d.ts.map +1 -0
  78. package/dist/esm/assets/CalendarIcon.js +3 -0
  79. package/dist/esm/assets/CalendarNormalIcon.d.ts +5 -0
  80. package/dist/esm/assets/CalendarNormalIcon.d.ts.map +1 -0
  81. package/dist/esm/assets/CalendarNormalIcon.js +3 -0
  82. package/dist/esm/assets/DoubleArrowLeftHeadIcon.d.ts +5 -0
  83. package/dist/esm/assets/DoubleArrowLeftHeadIcon.d.ts.map +1 -0
  84. package/dist/esm/assets/DoubleArrowLeftHeadIcon.js +3 -0
  85. package/dist/esm/assets/DoubleArrowRightHeadIcon.d.ts +5 -0
  86. package/dist/esm/assets/DoubleArrowRightHeadIcon.d.ts.map +1 -0
  87. package/dist/esm/assets/DoubleArrowRightHeadIcon.js +3 -0
  88. package/dist/esm/assets/ExclamationFilledIcon.d.ts +5 -0
  89. package/dist/esm/assets/ExclamationFilledIcon.d.ts.map +1 -0
  90. package/dist/esm/assets/ExclamationFilledIcon.js +3 -0
  91. package/dist/esm/assets/FilterIcon.d.ts +5 -0
  92. package/dist/esm/assets/FilterIcon.d.ts.map +1 -0
  93. package/dist/esm/assets/FilterIcon.js +3 -0
  94. package/dist/esm/assets/LoadingSpinner.d.ts +5 -0
  95. package/dist/esm/assets/LoadingSpinner.d.ts.map +1 -0
  96. package/dist/esm/assets/LoadingSpinner.js +3 -0
  97. package/dist/esm/assets/RefreshIcon.d.ts +5 -0
  98. package/dist/esm/assets/RefreshIcon.d.ts.map +1 -0
  99. package/dist/esm/assets/RefreshIcon.js +3 -0
  100. package/dist/esm/assets/SearchIcon.d.ts +5 -0
  101. package/dist/esm/assets/SearchIcon.d.ts.map +1 -0
  102. package/dist/esm/assets/SearchIcon.js +3 -0
  103. package/dist/esm/assets/UpLeftArrowsIcon.d.ts +5 -0
  104. package/dist/esm/assets/UpLeftArrowsIcon.d.ts.map +1 -0
  105. package/dist/esm/assets/UpLeftArrowsIcon.js +3 -0
  106. package/dist/esm/assets/XCircleIcon.d.ts +5 -0
  107. package/dist/esm/assets/XCircleIcon.d.ts.map +1 -0
  108. package/dist/esm/assets/XCircleIcon.js +3 -0
  109. package/dist/esm/assets/XIcon.d.ts +5 -0
  110. package/dist/esm/assets/XIcon.d.ts.map +1 -0
  111. package/dist/esm/assets/XIcon.js +3 -0
  112. package/dist/esm/assets/index.d.ts +22 -0
  113. package/dist/esm/assets/index.d.ts.map +1 -0
  114. package/dist/esm/assets/index.js +21 -0
  115. package/dist/esm/components/Banner/index.d.ts +3 -0
  116. package/dist/esm/components/Banner/index.d.ts.map +1 -0
  117. package/dist/esm/components/Banner/index.js +24 -0
  118. package/dist/esm/components/BigModal/BigModal.d.ts +15 -0
  119. package/dist/esm/components/BigModal/BigModal.d.ts.map +1 -0
  120. package/dist/esm/components/BigModal/BigModal.js +56 -0
  121. package/dist/esm/components/Chart/BarChart.d.ts +23 -0
  122. package/dist/esm/components/Chart/BarChart.d.ts.map +1 -0
  123. package/dist/esm/components/Chart/BarChart.js +110 -0
  124. package/dist/esm/components/Chart/BarList.d.ts +27 -0
  125. package/dist/esm/components/Chart/BarList.d.ts.map +1 -0
  126. package/dist/esm/components/Chart/BarList.js +148 -0
  127. package/dist/esm/components/Chart/ChartError.d.ts +10 -0
  128. package/dist/esm/components/Chart/ChartError.d.ts.map +1 -0
  129. package/dist/esm/components/Chart/ChartError.js +65 -0
  130. package/dist/esm/components/Chart/ChartSkeleton.d.ts +8 -0
  131. package/dist/esm/components/Chart/ChartSkeleton.d.ts.map +1 -0
  132. package/dist/esm/components/Chart/ChartSkeleton.js +19 -0
  133. package/dist/esm/components/Chart/ChartTooltip.d.ts +31 -0
  134. package/dist/esm/components/Chart/ChartTooltip.d.ts.map +1 -0
  135. package/dist/esm/components/Chart/ChartTooltip.js +234 -0
  136. package/dist/esm/components/Chart/ChartTooltipFrame.d.ts +6 -0
  137. package/dist/esm/components/Chart/ChartTooltipFrame.d.ts.map +1 -0
  138. package/dist/esm/components/Chart/ChartTooltipFrame.js +14 -0
  139. package/dist/esm/components/Chart/ChartTooltipGroup.d.ts +11 -0
  140. package/dist/esm/components/Chart/ChartTooltipGroup.d.ts.map +1 -0
  141. package/dist/esm/components/Chart/ChartTooltipGroup.js +23 -0
  142. package/dist/esm/components/Chart/ChartTooltipRow.d.ts +8 -0
  143. package/dist/esm/components/Chart/ChartTooltipRow.d.ts.map +1 -0
  144. package/dist/esm/components/Chart/ChartTooltipRow.js +41 -0
  145. package/dist/esm/components/Chart/LineChart.d.ts +29 -0
  146. package/dist/esm/components/Chart/LineChart.d.ts.map +1 -0
  147. package/dist/esm/components/Chart/LineChart.js +163 -0
  148. package/dist/esm/components/Chart/PieChart.d.ts +62 -0
  149. package/dist/esm/components/Chart/PieChart.d.ts.map +1 -0
  150. package/dist/esm/components/Chart/PieChart.js +195 -0
  151. package/dist/esm/components/Dashboard/ChartComponent.d.ts +4 -0
  152. package/dist/esm/components/Dashboard/ChartComponent.d.ts.map +1 -0
  153. package/dist/esm/components/Dashboard/ChartComponent.js +60 -0
  154. package/dist/esm/components/Dashboard/DashboardFilter.d.ts +38 -0
  155. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -0
  156. package/dist/esm/components/Dashboard/DashboardFilter.js +89 -0
  157. package/dist/esm/components/Dashboard/DashboardSection.d.ts +7 -0
  158. package/dist/esm/components/Dashboard/DashboardSection.d.ts.map +1 -0
  159. package/dist/esm/components/Dashboard/DashboardSection.js +22 -0
  160. package/dist/esm/components/Dashboard/DashboardSectionContainer.d.ts +3 -0
  161. package/dist/esm/components/Dashboard/DashboardSectionContainer.d.ts.map +1 -0
  162. package/dist/esm/components/Dashboard/DashboardSectionContainer.js +10 -0
  163. package/dist/esm/components/Dashboard/DataLoader.d.ts +44 -0
  164. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -0
  165. package/dist/esm/components/Dashboard/DataLoader.js +190 -0
  166. package/dist/esm/components/Dashboard/MetricComponent.d.ts +4 -0
  167. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -0
  168. package/dist/esm/components/Dashboard/MetricComponent.js +133 -0
  169. package/dist/esm/components/Dashboard/TableComponent.d.ts +15 -0
  170. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -0
  171. package/dist/esm/components/Dashboard/TableComponent.js +62 -0
  172. package/dist/esm/components/Dropdown/Dropdown.d.ts +14 -0
  173. package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -0
  174. package/dist/esm/components/Dropdown/Dropdown.js +69 -0
  175. package/dist/esm/components/Dropdown/DropdownItem.d.ts +11 -0
  176. package/dist/esm/components/Dropdown/DropdownItem.d.ts.map +1 -0
  177. package/dist/esm/components/Dropdown/DropdownItem.js +37 -0
  178. package/dist/esm/components/Dropdown/index.d.ts +3 -0
  179. package/dist/esm/components/Dropdown/index.d.ts.map +1 -0
  180. package/dist/esm/components/Dropdown/index.js +2 -0
  181. package/dist/esm/components/Modal/Modal.d.ts +15 -0
  182. package/dist/esm/components/Modal/Modal.d.ts.map +1 -0
  183. package/dist/esm/components/Modal/Modal.js +64 -0
  184. package/dist/esm/components/Modal/index.d.ts +2 -0
  185. package/dist/esm/components/Modal/index.d.ts.map +1 -0
  186. package/dist/esm/components/Modal/index.js +1 -0
  187. package/dist/esm/components/QuillCard.d.ts +9 -0
  188. package/dist/esm/components/QuillCard.d.ts.map +1 -0
  189. package/dist/esm/components/QuillCard.js +56 -0
  190. package/dist/esm/components/QuillMultiSelect.d.ts +11 -0
  191. package/dist/esm/components/QuillMultiSelect.d.ts.map +1 -0
  192. package/dist/esm/components/QuillMultiSelect.js +193 -0
  193. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts +11 -0
  194. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -0
  195. package/dist/esm/components/QuillMultiSelectWithCombo.js +215 -0
  196. package/dist/esm/components/QuillSelect.d.ts +6 -0
  197. package/dist/esm/components/QuillSelect.d.ts.map +1 -0
  198. package/dist/esm/components/QuillSelect.js +136 -0
  199. package/dist/esm/components/QuillSelectWithCombo.d.ts +6 -0
  200. package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -0
  201. package/dist/esm/components/QuillSelectWithCombo.js +163 -0
  202. package/dist/esm/components/QuillTable.d.ts +31 -0
  203. package/dist/esm/components/QuillTable.d.ts.map +1 -0
  204. package/dist/esm/components/QuillTable.js +261 -0
  205. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts +34 -0
  206. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -0
  207. package/dist/esm/components/ReportBuilder/AddColumnModal.js +145 -0
  208. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts +26 -0
  209. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -0
  210. package/dist/esm/components/ReportBuilder/AddLimitPopover.js +36 -0
  211. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts +23 -0
  212. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts.map +1 -0
  213. package/dist/esm/components/ReportBuilder/AddSortPopover.js +73 -0
  214. package/dist/esm/components/ReportBuilder/FilterModal.d.ts +30 -0
  215. package/dist/esm/components/ReportBuilder/FilterModal.d.ts.map +1 -0
  216. package/dist/esm/components/ReportBuilder/FilterModal.js +576 -0
  217. package/dist/esm/components/ReportBuilder/ast.d.ts +523 -0
  218. package/dist/esm/components/ReportBuilder/ast.d.ts.map +1 -0
  219. package/dist/esm/components/ReportBuilder/ast.js +230 -0
  220. package/dist/esm/components/ReportBuilder/bigDateMap.d.ts +7 -0
  221. package/dist/esm/components/ReportBuilder/bigDateMap.d.ts.map +1 -0
  222. package/dist/esm/components/ReportBuilder/bigDateMap.js +687 -0
  223. package/dist/esm/components/ReportBuilder/constants.d.ts +117 -0
  224. package/dist/esm/components/ReportBuilder/constants.d.ts.map +1 -0
  225. package/dist/esm/components/ReportBuilder/constants.js +161 -0
  226. package/dist/esm/components/ReportBuilder/convert.d.ts +65 -0
  227. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -0
  228. package/dist/esm/components/ReportBuilder/convert.js +717 -0
  229. package/dist/esm/components/ReportBuilder/operators.d.ts +462 -0
  230. package/dist/esm/components/ReportBuilder/operators.d.ts.map +1 -0
  231. package/dist/esm/components/ReportBuilder/operators.js +581 -0
  232. package/dist/esm/components/ReportBuilder/pivot.d.ts +16 -0
  233. package/dist/esm/components/ReportBuilder/pivot.d.ts.map +1 -0
  234. package/dist/esm/components/ReportBuilder/pivot.js +1 -0
  235. package/dist/esm/components/ReportBuilder/postgres.d.ts +150 -0
  236. package/dist/esm/components/ReportBuilder/postgres.d.ts.map +1 -0
  237. package/dist/esm/components/ReportBuilder/postgres.js +355 -0
  238. package/dist/esm/components/ReportBuilder/schema.d.ts +23 -0
  239. package/dist/esm/components/ReportBuilder/schema.d.ts.map +1 -0
  240. package/dist/esm/components/ReportBuilder/schema.js +1 -0
  241. package/dist/esm/components/ReportBuilder/ui.d.ts +119 -0
  242. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -0
  243. package/dist/esm/components/ReportBuilder/ui.js +382 -0
  244. package/dist/esm/components/ReportBuilder/util.d.ts +76 -0
  245. package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -0
  246. package/dist/esm/components/ReportBuilder/util.js +729 -0
  247. package/dist/esm/components/UiComponents.d.ts +221 -0
  248. package/dist/esm/components/UiComponents.d.ts.map +1 -0
  249. package/dist/esm/components/UiComponents.js +571 -0
  250. package/dist/esm/components/selectUtils.d.ts +9 -0
  251. package/dist/esm/components/selectUtils.d.ts.map +1 -0
  252. package/dist/esm/components/selectUtils.js +17 -0
  253. package/dist/esm/contexts/BaseColorContext.d.ts +4 -0
  254. package/dist/esm/contexts/BaseColorContext.d.ts.map +1 -0
  255. package/dist/esm/contexts/BaseColorContext.js +3 -0
  256. package/dist/esm/contexts/HoveredValueContext.d.ts +8 -0
  257. package/dist/esm/contexts/HoveredValueContext.d.ts.map +1 -0
  258. package/dist/esm/contexts/HoveredValueContext.js +5 -0
  259. package/dist/esm/contexts/RootStylesContext.d.ts +4 -0
  260. package/dist/esm/contexts/RootStylesContext.d.ts.map +1 -0
  261. package/dist/esm/contexts/RootStylesContext.js +3 -0
  262. package/dist/esm/contexts/SelectedValueContext.d.ts +8 -0
  263. package/dist/esm/contexts/SelectedValueContext.d.ts.map +1 -0
  264. package/dist/esm/contexts/SelectedValueContext.js +6 -0
  265. package/dist/esm/contexts/index.d.ts +5 -0
  266. package/dist/esm/contexts/index.d.ts.map +1 -0
  267. package/dist/esm/contexts/index.js +4 -0
  268. package/dist/esm/hooks/index.d.ts +6 -0
  269. package/dist/esm/hooks/index.d.ts.map +1 -0
  270. package/dist/esm/hooks/index.js +5 -0
  271. package/dist/esm/hooks/useAstToFilterTree.d.ts +11 -0
  272. package/dist/esm/hooks/useAstToFilterTree.d.ts.map +1 -0
  273. package/dist/esm/hooks/useAstToFilterTree.js +24 -0
  274. package/dist/esm/hooks/useDashboard.d.ts +7 -0
  275. package/dist/esm/hooks/useDashboard.d.ts.map +1 -0
  276. package/dist/esm/hooks/useDashboard.js +69 -0
  277. package/dist/esm/hooks/useExport.d.ts +6 -0
  278. package/dist/esm/hooks/useExport.d.ts.map +1 -0
  279. package/dist/esm/hooks/useExport.js +125 -0
  280. package/dist/esm/hooks/useFormat.d.ts +5 -0
  281. package/dist/esm/hooks/useFormat.d.ts.map +1 -0
  282. package/dist/esm/hooks/useFormat.js +25 -0
  283. package/dist/esm/hooks/useInternalState.d.ts +4 -0
  284. package/dist/esm/hooks/useInternalState.d.ts.map +1 -0
  285. package/dist/esm/hooks/useInternalState.js +14 -0
  286. package/dist/esm/hooks/useOnClickOutside.d.ts +3 -0
  287. package/dist/esm/hooks/useOnClickOutside.d.ts.map +1 -0
  288. package/dist/esm/hooks/useOnClickOutside.js +18 -0
  289. package/dist/esm/hooks/useOnWindowResize.d.ts +5 -0
  290. package/dist/esm/hooks/useOnWindowResize.d.ts.map +1 -0
  291. package/dist/esm/hooks/useOnWindowResize.js +14 -0
  292. package/dist/esm/hooks/useQuill.d.ts +37 -0
  293. package/dist/esm/hooks/useQuill.d.ts.map +1 -0
  294. package/dist/esm/hooks/useQuill.js +182 -0
  295. package/dist/esm/hooks/useSelectOnKeyDown.d.ts +3 -0
  296. package/dist/esm/hooks/useSelectOnKeyDown.d.ts.map +1 -0
  297. package/dist/esm/hooks/useSelectOnKeyDown.js +63 -0
  298. package/dist/esm/hooks/useTheme.d.ts +7 -0
  299. package/dist/esm/hooks/useTheme.d.ts.map +1 -0
  300. package/dist/esm/hooks/useTheme.js +10 -0
  301. package/dist/esm/index.d.ts +29 -0
  302. package/dist/esm/index.d.ts.map +1 -0
  303. package/dist/esm/index.js +16 -0
  304. package/dist/esm/internals/ReportBuilder/PivotForm.d.ts +28 -0
  305. package/dist/esm/internals/ReportBuilder/PivotForm.d.ts.map +1 -0
  306. package/dist/esm/internals/ReportBuilder/PivotForm.js +62 -0
  307. package/dist/esm/internals/ReportBuilder/PivotList.d.ts +39 -0
  308. package/dist/esm/internals/ReportBuilder/PivotList.d.ts.map +1 -0
  309. package/dist/esm/internals/ReportBuilder/PivotList.js +89 -0
  310. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +146 -0
  311. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -0
  312. package/dist/esm/internals/ReportBuilder/PivotModal.js +1210 -0
  313. package/dist/esm/lib/font.d.ts +14 -0
  314. package/dist/esm/lib/font.d.ts.map +1 -0
  315. package/dist/esm/lib/font.js +13 -0
  316. package/dist/esm/lib/index.d.ts +4 -0
  317. package/dist/esm/lib/index.d.ts.map +1 -0
  318. package/dist/esm/lib/index.js +3 -0
  319. package/dist/esm/lib/inputTypes.d.ts +21 -0
  320. package/dist/esm/lib/inputTypes.d.ts.map +1 -0
  321. package/dist/esm/lib/inputTypes.js +55 -0
  322. package/dist/esm/lib/utils.d.ts +10 -0
  323. package/dist/esm/lib/utils.d.ts.map +1 -0
  324. package/dist/esm/lib/utils.js +35 -0
  325. package/dist/esm/models/Columns.d.ts +12 -0
  326. package/dist/esm/models/Columns.d.ts.map +1 -0
  327. package/dist/esm/models/Columns.js +1 -0
  328. package/dist/esm/models/Filter.d.ts +118 -0
  329. package/dist/esm/models/Filter.d.ts.map +1 -0
  330. package/dist/esm/models/Filter.js +98 -0
  331. package/dist/esm/models/Pagination.d.ts +10 -0
  332. package/dist/esm/models/Pagination.d.ts.map +1 -0
  333. package/dist/esm/models/Pagination.js +1 -0
  334. package/dist/esm/models/Pivots.d.ts +2 -0
  335. package/dist/esm/models/Pivots.d.ts.map +1 -0
  336. package/dist/esm/models/Pivots.js +1 -0
  337. package/dist/esm/models/Report.d.ts +103 -0
  338. package/dist/esm/models/Report.d.ts.map +1 -0
  339. package/dist/esm/models/Report.js +1 -0
  340. package/dist/esm/models/Tables.d.ts +8 -0
  341. package/dist/esm/models/Tables.d.ts.map +1 -0
  342. package/dist/esm/models/Tables.js +1 -0
  343. package/dist/esm/utils/aggregate.d.ts +4 -0
  344. package/dist/esm/utils/aggregate.d.ts.map +1 -0
  345. package/dist/esm/utils/aggregate.js +422 -0
  346. package/dist/esm/utils/astFilterProcessing.d.ts +36 -0
  347. package/dist/esm/utils/astFilterProcessing.d.ts.map +1 -0
  348. package/dist/esm/utils/astFilterProcessing.js +8084 -0
  349. package/dist/esm/utils/astProcessing.d.ts +26 -0
  350. package/dist/esm/utils/astProcessing.d.ts.map +1 -0
  351. package/dist/esm/utils/astProcessing.js +254 -0
  352. package/dist/esm/utils/axisFormatter.d.ts +20 -0
  353. package/dist/esm/utils/axisFormatter.d.ts.map +1 -0
  354. package/dist/esm/utils/axisFormatter.js +179 -0
  355. package/dist/esm/utils/color.d.ts +44 -0
  356. package/dist/esm/utils/color.d.ts.map +1 -0
  357. package/dist/esm/utils/color.js +425 -0
  358. package/dist/esm/utils/columnProcessing.d.ts +13 -0
  359. package/dist/esm/utils/columnProcessing.d.ts.map +1 -0
  360. package/dist/esm/utils/columnProcessing.js +260 -0
  361. package/dist/esm/utils/constants.d.ts +2 -0
  362. package/dist/esm/utils/constants.d.ts.map +1 -0
  363. package/dist/esm/utils/constants.js +1 -0
  364. package/dist/esm/utils/crypto.d.ts +2 -0
  365. package/dist/esm/utils/crypto.d.ts.map +1 -0
  366. package/dist/esm/utils/crypto.js +10 -0
  367. package/dist/esm/utils/csv.d.ts +6 -0
  368. package/dist/esm/utils/csv.d.ts.map +1 -0
  369. package/dist/esm/utils/csv.js +78 -0
  370. package/dist/esm/utils/dashboard.d.ts +13 -0
  371. package/dist/esm/utils/dashboard.d.ts.map +1 -0
  372. package/dist/esm/utils/dashboard.js +171 -0
  373. package/dist/esm/utils/dataFetcher.d.ts +3 -0
  374. package/dist/esm/utils/dataFetcher.d.ts.map +1 -0
  375. package/dist/esm/utils/dataFetcher.js +205 -0
  376. package/dist/esm/utils/dataProcessing.d.ts +11 -0
  377. package/dist/esm/utils/dataProcessing.d.ts.map +1 -0
  378. package/dist/esm/utils/dataProcessing.js +162 -0
  379. package/dist/esm/utils/dates.d.ts +20 -0
  380. package/dist/esm/utils/dates.d.ts.map +1 -0
  381. package/dist/esm/utils/dates.js +95 -0
  382. package/dist/esm/utils/error.d.ts +5 -0
  383. package/dist/esm/utils/error.d.ts.map +1 -0
  384. package/dist/esm/utils/error.js +8 -0
  385. package/dist/esm/utils/errorProcessing.d.ts +2 -0
  386. package/dist/esm/utils/errorProcessing.d.ts.map +1 -0
  387. package/dist/esm/utils/errorProcessing.js +5 -0
  388. package/dist/esm/utils/filterConstants.d.ts +34 -0
  389. package/dist/esm/utils/filterConstants.d.ts.map +1 -0
  390. package/dist/esm/utils/filterConstants.js +33 -0
  391. package/dist/esm/utils/filterProcessing.d.ts +10 -0
  392. package/dist/esm/utils/filterProcessing.d.ts.map +1 -0
  393. package/dist/esm/utils/filterProcessing.js +232 -0
  394. package/dist/esm/utils/getDomain.d.ts +8 -0
  395. package/dist/esm/utils/getDomain.d.ts.map +1 -0
  396. package/dist/esm/utils/getDomain.js +52 -0
  397. package/dist/esm/utils/logging.d.ts +2 -0
  398. package/dist/esm/utils/logging.d.ts.map +1 -0
  399. package/dist/esm/utils/logging.js +7 -0
  400. package/dist/esm/utils/merge.d.ts +2 -0
  401. package/dist/esm/utils/merge.d.ts.map +1 -0
  402. package/dist/esm/utils/merge.js +18 -0
  403. package/dist/esm/utils/monacoConfig.d.ts +21 -0
  404. package/dist/esm/utils/monacoConfig.d.ts.map +1 -0
  405. package/dist/esm/utils/monacoConfig.js +319 -0
  406. package/dist/esm/utils/paginationProcessing.d.ts +5 -0
  407. package/dist/esm/utils/paginationProcessing.d.ts.map +1 -0
  408. package/dist/esm/utils/paginationProcessing.js +25 -0
  409. package/dist/esm/utils/parserBigQuery.d.ts +6 -0
  410. package/dist/esm/utils/parserBigQuery.d.ts.map +1 -0
  411. package/dist/esm/utils/parserBigQuery.js +52 -0
  412. package/dist/esm/utils/parserPostgres.d.ts +3 -0
  413. package/dist/esm/utils/parserPostgres.d.ts.map +1 -0
  414. package/dist/esm/utils/parserPostgres.js +37 -0
  415. package/dist/esm/utils/pivotConstructor.d.ts +7 -0
  416. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -0
  417. package/dist/esm/utils/pivotConstructor.js +151 -0
  418. package/dist/esm/utils/pivotProcessing.d.ts +17 -0
  419. package/dist/esm/utils/pivotProcessing.d.ts.map +1 -0
  420. package/dist/esm/utils/pivotProcessing.js +132 -0
  421. package/dist/esm/utils/queryConstructor.d.ts +7 -0
  422. package/dist/esm/utils/queryConstructor.d.ts.map +1 -0
  423. package/dist/esm/utils/queryConstructor.js +226 -0
  424. package/dist/esm/utils/report.d.ts +10 -0
  425. package/dist/esm/utils/report.d.ts.map +1 -0
  426. package/dist/esm/utils/report.js +186 -0
  427. package/dist/esm/utils/schema.d.ts +6 -0
  428. package/dist/esm/utils/schema.d.ts.map +1 -0
  429. package/dist/esm/utils/schema.js +153 -0
  430. package/dist/esm/utils/styles.d.ts +17 -0
  431. package/dist/esm/utils/styles.d.ts.map +1 -0
  432. package/dist/esm/utils/styles.js +16 -0
  433. package/dist/esm/utils/tableProcessing.d.ts +45 -0
  434. package/dist/esm/utils/tableProcessing.d.ts.map +1 -0
  435. package/dist/esm/utils/tableProcessing.js +300 -0
  436. package/dist/esm/utils/textProcessing.d.ts +6 -0
  437. package/dist/esm/utils/textProcessing.d.ts.map +1 -0
  438. package/dist/esm/utils/textProcessing.js +49 -0
  439. package/dist/esm/utils/validation.d.ts +9 -0
  440. package/dist/esm/utils/validation.d.ts.map +1 -0
  441. package/dist/esm/utils/validation.js +20 -0
  442. package/dist/esm/utils/valueFormatter.d.ts +29 -0
  443. package/dist/esm/utils/valueFormatter.d.ts.map +1 -0
  444. package/dist/esm/utils/valueFormatter.js +342 -0
  445. package/dist/esm/utils/width.d.ts +12 -0
  446. package/dist/esm/utils/width.d.ts.map +1 -0
  447. package/dist/esm/utils/width.js +21 -0
  448. package/package.json +1 -1
@@ -0,0 +1,30 @@
1
+ /// <reference types="react" />
2
+ import { Filter, Operator } from '../../models/Filter';
3
+ interface FilterModalProps {
4
+ schema: any;
5
+ filter?: Filter;
6
+ fieldValuesMap: {
7
+ [key: string]: string[];
8
+ } | {
9
+ [key: string]: {
10
+ [key: string]: string[];
11
+ };
12
+ };
13
+ customOperatorOptions?: OperatorOptionsMap;
14
+ onSubmitFilter: (filter: Filter) => void;
15
+ onDeleteFilter: () => void;
16
+ ButtonComponent: React.ComponentType<any>;
17
+ SelectComponent: React.ComponentType<any>;
18
+ TextInputComponent: React.ComponentType<any>;
19
+ SecondaryButtonComponent?: React.ComponentType<any>;
20
+ MultiSelectComponent: React.ComponentType<any>;
21
+ }
22
+ type OperatorOptionsMap = {
23
+ [key: string]: Operator[];
24
+ };
25
+ /**
26
+ * Modal for adding, editing, and deleting Filters
27
+ */
28
+ export default function FilterModal({ schema, filter, fieldValuesMap, customOperatorOptions, onSubmitFilter, onDeleteFilter, ButtonComponent, SelectComponent, TextInputComponent, SecondaryButtonComponent, MultiSelectComponent, }: FilterModalProps): import("react/jsx-runtime").JSX.Element;
29
+ export {};
30
+ //# sourceMappingURL=FilterModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterModal.d.ts","sourceRoot":"","sources":["../../../../src/components/ReportBuilder/FilterModal.tsx"],"names":[],"mappings":";AAIA,OAAO,EACL,MAAM,EAIN,QAAQ,EAOT,MAAM,qBAAqB,CAAC;AAM7B,UAAU,gBAAgB;IACxB,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,EACZ;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,GACzB;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,CAAC;IACnD,qBAAqB,CAAC,EAAE,kBAAkB,CAAC;IAC3C,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,eAAe,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC1C,eAAe,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC1C,kBAAkB,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC7C,wBAAwB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACpD,oBAAoB,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;CAChD;AAQD,KAAK,kBAAkB,GAAG;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAClC,MAAM,EACN,MAAM,EACN,cAAc,EACd,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,oBAAoB,GACrB,EAAE,gBAAgB,2CAwvBlB"}
@@ -0,0 +1,576 @@
1
+ /* eslint-disable no-unused-vars */
2
+ 'use client';
3
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
4
+ import { useState, useEffect } from 'react';
5
+ import { NumberOperator, DateOperator, StringOperator, FieldTypes, NullOperator, TimeUnit, FilterNames, BoolOperator, } from '../../models/Filter';
6
+ import { QuillDateRangePicker } from '../../DateRangePicker/QuillDateRangePicker';
7
+ import { isValid, parse, startOfToday } from 'date-fns';
8
+ import { snakeAndCamelCaseToTitleCase } from '../../utils/textProcessing';
9
+ import { getType } from '../../utils/filterProcessing';
10
+ /**
11
+ * Modal for adding, editing, and deleting Filters
12
+ */
13
+ export default function FilterModal({ schema, filter, fieldValuesMap, customOperatorOptions, onSubmitFilter, onDeleteFilter, ButtonComponent, SelectComponent, TextInputComponent, SecondaryButtonComponent, MultiSelectComponent, }) {
14
+ const [field, setField] = useState(filter ? filter.field : '');
15
+ const [fieldOptions, setFieldOptions] = useState([]);
16
+ const [fieldValues, setFieldValues] = useState([]);
17
+ const [type, setType] = useState(filter ? filter.type : '');
18
+ const [value, setValue] = useState(filter
19
+ ? filter.name === 'date-filter'
20
+ ? filter.value.value
21
+ : filter.value
22
+ : undefined);
23
+ const [selectedOptions, setSelectedOptions] = useState(filter && filter.name === 'string-in-filter'
24
+ ? filter.value.map((val) => {
25
+ return { label: val, value: val };
26
+ })
27
+ : []);
28
+ const [operator, setOperator] = useState(filter ? filter.operator : '');
29
+ const [operatorOptions, setOperatorOptions] = useState([]);
30
+ const [unit, setUnit] = useState(filter && filter.name === 'date-filter' ? filter.value.unit : '');
31
+ const [unitOptions, setUnitOptions] = useState([]);
32
+ const [startDate, setStartDate] = useState(filter && filter.value?.startDate
33
+ ? filter.value.startDate.substring(0, 10)
34
+ : startOfToday().toISOString().substring(0, 10));
35
+ const [endDate, setEndDate] = useState(filter && filter.value?.endDate
36
+ ? filter.value.endDate.substring(0, 10)
37
+ : startOfToday().toISOString().substring(0, 10));
38
+ const [filterInitialized, setFilterInitialized] = useState(false);
39
+ const [table, setTable] = useState('');
40
+ // Define all supported operator options for each field type
41
+ const allOperatorOptions = {
42
+ [FieldTypes.Numeric]: [
43
+ NumberOperator.EqualTo,
44
+ NumberOperator.NotEqualTo,
45
+ NumberOperator.GreaterThan,
46
+ NumberOperator.LessThan,
47
+ NumberOperator.GreaterThanOrEqualTo,
48
+ NumberOperator.LessThanOrEqualTo,
49
+ NullOperator.IsNotNull,
50
+ NullOperator.IsNull,
51
+ ],
52
+ [FieldTypes.Date]: [
53
+ DateOperator.Custom,
54
+ DateOperator.InTheLast,
55
+ DateOperator.InThePrevious,
56
+ DateOperator.InTheCurrent,
57
+ DateOperator.GreaterThan,
58
+ DateOperator.LessThan,
59
+ DateOperator.GreaterThanOrEqualTo,
60
+ DateOperator.LessThanOrEqualTo,
61
+ NullOperator.IsNotNull,
62
+ NullOperator.IsNull,
63
+ ],
64
+ [FieldTypes.String]: [
65
+ StringOperator.IsExactly,
66
+ StringOperator.IsNotExactly,
67
+ StringOperator.Contains,
68
+ StringOperator.Is,
69
+ StringOperator.IsNot,
70
+ NullOperator.IsNotNull,
71
+ NullOperator.IsNull,
72
+ ],
73
+ [FieldTypes.Boolean]: [
74
+ BoolOperator.EqualTo,
75
+ BoolOperator.NotEqualTo,
76
+ NullOperator.IsNotNull,
77
+ NullOperator.IsNull,
78
+ ],
79
+ };
80
+ // Effect hook to initialize or update fieldValues based on selected field
81
+ useEffect(() => {
82
+ if (filter) {
83
+ if (filter.name === 'string-in-filter') {
84
+ setSelectedOptions(filter.value.map((val) => {
85
+ return { label: val, value: val };
86
+ }));
87
+ }
88
+ }
89
+ }, [filter]);
90
+ // Given the schema, set the options for the field
91
+ useEffect(() => {
92
+ if (schema && schema.columns) {
93
+ const fo = schema.columns.map((column) => {
94
+ return {
95
+ name: column.name,
96
+ type: column.fieldType,
97
+ table: column.table ?? '',
98
+ };
99
+ });
100
+ setFieldOptions(fo);
101
+ if (!filter && fo.length > 0 && fo[0]) {
102
+ setField(fo[0].name);
103
+ }
104
+ }
105
+ }, [schema]);
106
+ // Effect hook to update UI when field selection changes
107
+ useEffect(() => {
108
+ if (field !== '') {
109
+ const selectedOption = fieldOptions.find((option) => option.name === field);
110
+ if (selectedOption) {
111
+ const fv = getFieldValues(selectedOption.name, selectedOption.table);
112
+ setFieldValues(fv);
113
+ if (!selectedOptions.every((item) => fv
114
+ .map((v) => v.toLowerCase())
115
+ .includes(item.value.toLowerCase()))) {
116
+ setSelectedOptions([]);
117
+ }
118
+ setType(getType(selectedOption.type));
119
+ setTable(selectedOption.table);
120
+ }
121
+ }
122
+ else {
123
+ setType('');
124
+ setFieldValues([]);
125
+ setSelectedOptions([]);
126
+ }
127
+ }, [field, fieldOptions]);
128
+ // Effect hook to update operator options based on selected field type
129
+ useEffect(() => {
130
+ if (type) {
131
+ const options = customOperatorOptions?.[type] ?? allOperatorOptions[type];
132
+ if (options) {
133
+ setOperatorOptions(options);
134
+ if (filterInitialized || !filter) {
135
+ switch (type) {
136
+ case 'string':
137
+ setOperator(StringOperator.Is);
138
+ setValue('');
139
+ break;
140
+ case 'date':
141
+ setOperator(DateOperator.InTheLast);
142
+ setValue('90');
143
+ break;
144
+ case 'numeric':
145
+ setOperator(NumberOperator.EqualTo);
146
+ setValue('0');
147
+ break;
148
+ case 'boolean':
149
+ setOperator(BoolOperator.EqualTo);
150
+ setValue(true);
151
+ break;
152
+ }
153
+ }
154
+ else if (filter) {
155
+ setFilterInitialized(true);
156
+ }
157
+ }
158
+ }
159
+ else {
160
+ setOperatorOptions([]);
161
+ setOperator('');
162
+ setType('');
163
+ }
164
+ }, [type]);
165
+ // Effect hook to update UI when operator selection changes
166
+ useEffect(() => {
167
+ if (operator === '') {
168
+ setValue('');
169
+ }
170
+ if (typeof value !== 'string' &&
171
+ typeof value !== 'number' &&
172
+ typeof value !== 'boolean' &&
173
+ operator !== DateOperator.Custom) {
174
+ setValue('');
175
+ }
176
+ const options = getUnits(operator);
177
+ setUnitOptions(options);
178
+ if (!options || !options.includes(unit)) {
179
+ setUnit('');
180
+ }
181
+ }, [operator]);
182
+ useEffect(() => {
183
+ if (!filter && unitOptions.length > 0) {
184
+ setUnit(TimeUnit.Day);
185
+ }
186
+ }, [unitOptions]);
187
+ // Function that returns the list of units used for certain DateOperators
188
+ const getUnits = (operator) => {
189
+ switch (operator) {
190
+ case DateOperator.InTheLast:
191
+ case DateOperator.InThePrevious:
192
+ return [
193
+ TimeUnit.Year,
194
+ TimeUnit.Month,
195
+ TimeUnit.Week,
196
+ TimeUnit.Day,
197
+ TimeUnit.Hour,
198
+ ];
199
+ case DateOperator.InTheCurrent:
200
+ return [
201
+ TimeUnit.Year,
202
+ TimeUnit.Quarter,
203
+ TimeUnit.Month,
204
+ TimeUnit.Week,
205
+ TimeUnit.Day,
206
+ TimeUnit.Hour,
207
+ ];
208
+ default:
209
+ return [];
210
+ }
211
+ };
212
+ // Get the unique values available to a field
213
+ const getFieldValues = (field, table) => {
214
+ if (table !== '' &&
215
+ typeof fieldValuesMap[table] === 'object' &&
216
+ !Array.isArray(fieldValuesMap[table])) {
217
+ const tableMap = fieldValuesMap[table];
218
+ return tableMap[field] ?? [];
219
+ }
220
+ else if (typeof fieldValuesMap === 'object' &&
221
+ !Array.isArray(fieldValuesMap)) {
222
+ return fieldValuesMap[field] ?? [];
223
+ }
224
+ else {
225
+ return [];
226
+ }
227
+ };
228
+ // Handler for operator selection change
229
+ const handleOperatorChange = (event) => {
230
+ const newOp = event.target.value;
231
+ setOperator(newOp);
232
+ };
233
+ // Handler for date range selection
234
+ const handleDateRangeSelect = (date) => {
235
+ if (date) {
236
+ if (date.from) {
237
+ setStartDate(date.from.toISOString().substring(0, 10));
238
+ }
239
+ if (date.to) {
240
+ setEndDate(date.to.toISOString().substring(0, 10));
241
+ }
242
+ }
243
+ setOperator(DateOperator.Custom);
244
+ };
245
+ // Handler for form submission
246
+ const handleSubmit = () => {
247
+ if (!field || field === '') {
248
+ alert('Please specify field');
249
+ return;
250
+ }
251
+ if (!operator || operator === '') {
252
+ alert('Please specify operator');
253
+ return;
254
+ }
255
+ // Handle different filter types and submit the filter
256
+ switch (type) {
257
+ case 'date':
258
+ switch (operator) {
259
+ case DateOperator.InTheLast:
260
+ case DateOperator.InThePrevious:
261
+ if (typeof value !== 'number' && isNaN(Number(value))) {
262
+ alert('Please specify a valid number');
263
+ return;
264
+ }
265
+ if (!getUnits(operator).includes(unit)) {
266
+ alert('Please specify a valid unit');
267
+ return;
268
+ }
269
+ onSubmitFilter({
270
+ field,
271
+ name: FilterNames.DateFilter,
272
+ type: FieldTypes.Date,
273
+ operator: operator,
274
+ value: { value: value, unit: unit },
275
+ table,
276
+ });
277
+ break;
278
+ case DateOperator.InTheCurrent:
279
+ if (!getUnits(operator).includes(unit)) {
280
+ alert('Please specify a valid unit');
281
+ return;
282
+ }
283
+ onSubmitFilter({
284
+ field,
285
+ name: FilterNames.DateFilter,
286
+ type: FieldTypes.Date,
287
+ operator: operator,
288
+ value: { value: 0, unit: unit },
289
+ table,
290
+ });
291
+ break;
292
+ case DateOperator.Custom:
293
+ if (!startDate || !endDate) {
294
+ alert('Please specify a valid date range');
295
+ return;
296
+ }
297
+ onSubmitFilter({
298
+ field,
299
+ name: FilterNames.DateCustomFilter,
300
+ type: FieldTypes.Date,
301
+ operator: operator,
302
+ value: { startDate, endDate },
303
+ table,
304
+ });
305
+ break;
306
+ case DateOperator.EqualTo:
307
+ case DateOperator.NotEqualTo:
308
+ case DateOperator.GreaterThan:
309
+ case DateOperator.LessThan:
310
+ case DateOperator.GreaterThanOrEqualTo:
311
+ case DateOperator.LessThanOrEqualTo:
312
+ // eslint-disable-next-line no-case-declarations
313
+ const parsedDate = parse(value, 'yyyy-mm-dd', new Date());
314
+ if (!isValid(parsedDate)) {
315
+ alert('Please specify a valid date in yyyy-mm-dd');
316
+ return;
317
+ }
318
+ onSubmitFilter({
319
+ field,
320
+ name: FilterNames.DateComparisonFilter,
321
+ type: FieldTypes.Date,
322
+ operator: operator,
323
+ value,
324
+ table,
325
+ });
326
+ break;
327
+ case NullOperator.IsNotNull:
328
+ case NullOperator.IsNull:
329
+ onSubmitFilter({
330
+ field,
331
+ name: FilterNames.NullFilter,
332
+ type: FieldTypes.Null,
333
+ operator: operator,
334
+ value: null,
335
+ table,
336
+ });
337
+ break;
338
+ }
339
+ break;
340
+ case 'string':
341
+ switch (operator) {
342
+ case StringOperator.Is:
343
+ case StringOperator.IsNot:
344
+ if (!selectedOptions || selectedOptions.length === 0) {
345
+ alert('Please specify some values');
346
+ return;
347
+ }
348
+ onSubmitFilter({
349
+ field,
350
+ name: FilterNames.StringInFilter,
351
+ type: FieldTypes.String,
352
+ operator: operator,
353
+ value: selectedOptions.map((val) => val.label),
354
+ table,
355
+ });
356
+ break;
357
+ case NullOperator.IsNotNull:
358
+ case NullOperator.IsNull:
359
+ onSubmitFilter({
360
+ field,
361
+ name: FilterNames.NullFilter,
362
+ type: FieldTypes.Null,
363
+ operator: operator,
364
+ value: null,
365
+ table,
366
+ });
367
+ break;
368
+ default:
369
+ if (typeof value !== 'string') {
370
+ alert('Please specify a valid string');
371
+ return;
372
+ }
373
+ onSubmitFilter({
374
+ field,
375
+ name: FilterNames.StringFilter,
376
+ type: FieldTypes.String,
377
+ operator: operator,
378
+ value,
379
+ table,
380
+ });
381
+ }
382
+ break;
383
+ case 'numeric':
384
+ switch (operator) {
385
+ case NullOperator.IsNotNull:
386
+ case NullOperator.IsNull:
387
+ onSubmitFilter({
388
+ field,
389
+ name: FilterNames.NullFilter,
390
+ type: FieldTypes.Null,
391
+ operator: operator,
392
+ value: null,
393
+ table,
394
+ });
395
+ break;
396
+ default:
397
+ if (value === undefined ||
398
+ value === '' ||
399
+ (typeof value !== 'number' && isNaN(Number(value)))) {
400
+ alert('Please specify a valid number');
401
+ return;
402
+ }
403
+ onSubmitFilter({
404
+ field,
405
+ name: FilterNames.NumericFilter,
406
+ type: FieldTypes.Numeric,
407
+ operator: operator,
408
+ value,
409
+ table,
410
+ });
411
+ }
412
+ break;
413
+ case 'boolean':
414
+ switch (operator) {
415
+ case NullOperator.IsNotNull:
416
+ case NullOperator.IsNull:
417
+ onSubmitFilter({
418
+ field,
419
+ name: FilterNames.NullFilter,
420
+ type: FieldTypes.Null,
421
+ operator: operator,
422
+ value: null,
423
+ table,
424
+ });
425
+ break;
426
+ case BoolOperator.EqualTo:
427
+ case BoolOperator.NotEqualTo:
428
+ onSubmitFilter({
429
+ field,
430
+ name: FilterNames.BooleanFilter,
431
+ type: FieldTypes.Boolean,
432
+ operator: operator,
433
+ value: value,
434
+ table,
435
+ });
436
+ break;
437
+ }
438
+ break;
439
+ default:
440
+ alert('Error parsing filter');
441
+ }
442
+ };
443
+ // Handler filter delete
444
+ const handleDelete = () => {
445
+ onDeleteFilter();
446
+ };
447
+ return (_jsxs("div", { style: {
448
+ display: 'flex',
449
+ flexDirection: 'column',
450
+ gap: 12,
451
+ }, children: [_jsx("div", { style: {
452
+ display: 'flex',
453
+ gap: '12px',
454
+ flexDirection: 'column',
455
+ width: '100%',
456
+ padding: '6px 0px',
457
+ }, children: _jsxs("div", { style: {
458
+ display: 'flex',
459
+ gap: '20px',
460
+ flexDirection: 'row',
461
+ width: '100%',
462
+ }, children: [_jsx("div", { style: { display: 'flex', gap: 20 }, children: _jsx(SelectComponent, { value: field, width: 200, onChange: (event) => setField(event.target.value), options: [
463
+ ...fieldOptions.map((option) => ({
464
+ value: option.name,
465
+ label: option.table !== ''
466
+ ? `${snakeAndCamelCaseToTitleCase(option.name)} (${option.table})`
467
+ : snakeAndCamelCaseToTitleCase(option.name),
468
+ })),
469
+ ] }) }), operatorOptions.length > 0 && (_jsx("div", { style: { display: 'flex', gap: 20 }, children: _jsx(SelectComponent, { value: operator, width: 200, onChange: handleOperatorChange, options: [
470
+ ...operatorOptions.map((operator) => ({
471
+ value: operator,
472
+ label: operator === StringOperator.Is ||
473
+ operator === StringOperator.IsNot
474
+ ? `${operator} one of`
475
+ : operator,
476
+ })),
477
+ ] }) })), _jsx("div", { style: { display: 'flex', gap: 20 }, children: (() => {
478
+ switch (operator) {
479
+ case BoolOperator.EqualTo:
480
+ case BoolOperator.NotEqualTo:
481
+ case StringOperator.IsExactly:
482
+ case StringOperator.IsNotExactly:
483
+ case StringOperator.Contains:
484
+ case NumberOperator.EqualTo:
485
+ case NumberOperator.NotEqualTo:
486
+ case NumberOperator.GreaterThan:
487
+ case NumberOperator.LessThan:
488
+ case NumberOperator.GreaterThanOrEqualTo:
489
+ case NumberOperator.LessThanOrEqualTo:
490
+ if (type === 'boolean') {
491
+ return (_jsx(SelectComponent, { value: value, width: 200, onChange: (event) => setValue(event.target.value), options: [
492
+ { value: true, label: 'true' },
493
+ { value: false, label: 'false' },
494
+ ] }));
495
+ }
496
+ else {
497
+ return (_jsx(TextInputComponent, { value: value, width: 120, onChange: (event) => {
498
+ setValue(event.target.value);
499
+ } }));
500
+ }
501
+ case StringOperator.Is:
502
+ case StringOperator.IsNot:
503
+ return (_jsx(MultiSelectComponent, { options: fieldValues.map((v) => {
504
+ return { value: v.toLowerCase(), label: v };
505
+ }), width: 200, value: selectedOptions.map((val) => val.value.toLowerCase()), onChange: (e) => {
506
+ if (e.target.value === '') {
507
+ setSelectedOptions([]);
508
+ return;
509
+ }
510
+ let parsedValue = e.target.value;
511
+ if (typeof e.target.value === 'string') {
512
+ parsedValue = e.target.value.split(',');
513
+ }
514
+ const jsonValue = parsedValue.map((val) => {
515
+ return {
516
+ value: val,
517
+ label: fieldValues.find((v) => v.toLowerCase() === val.toLowerCase()) ?? val,
518
+ };
519
+ });
520
+ setSelectedOptions(jsonValue);
521
+ } }));
522
+ case DateOperator.Custom:
523
+ return (_jsx(QuillDateRangePicker, { dateRange: {
524
+ startDate: startDate
525
+ ? new Date(startDate + 'T00:00:00')
526
+ : startOfToday(),
527
+ endDate: endDate
528
+ ? new Date(endDate + 'T00:00:00')
529
+ : startOfToday(),
530
+ }, preset: "", presetOptions: [], onChangePreset: () => { }, hidePreset: true, onChangeDateRange: (value) => {
531
+ handleDateRangeSelect({
532
+ from: value.startDate,
533
+ to: value.endDate,
534
+ });
535
+ } }));
536
+ case DateOperator.InTheLast:
537
+ case DateOperator.InThePrevious:
538
+ return (_jsxs("div", { style: { display: 'flex', flexDirection: 'row' }, children: [_jsx(TextInputComponent, { value: value, width: 120, onChange: (event) => {
539
+ setValue(event.target.value);
540
+ } }), unitOptions.length > 0 && (_jsx("div", { style: { marginLeft: '10px', marginRight: '10px' }, children: _jsx(SelectComponent, { value: unit, width: 200, onChange: (event) => setUnit(event.target.value), options: [
541
+ // { value: 'Select', label: 'Select' },
542
+ ...unitOptions.map((unit) => ({
543
+ value: unit,
544
+ label: `${unit}${value && value !== '1' && value !== 1
545
+ ? 's'
546
+ : ''}`,
547
+ })),
548
+ ] }) }))] }));
549
+ case DateOperator.InTheCurrent:
550
+ return (_jsx(_Fragment, { children: unitOptions.length > 0 && (_jsx("div", { style: { marginLeft: '10px', marginRight: '10px' }, children: _jsx(SelectComponent, { value: unit, width: 200, onChange: (event) => setUnit(event.target.value), options: [
551
+ // { value: 'Select', label: 'Select' },
552
+ ...unitOptions.map((unit) => ({
553
+ value: unit,
554
+ label: `${unit}${operator !== DateOperator.InTheCurrent &&
555
+ value &&
556
+ value !== '1' &&
557
+ value !== 1
558
+ ? 's'
559
+ : ''}`,
560
+ })),
561
+ ] }) })) }));
562
+ default:
563
+ return _jsx(_Fragment, {});
564
+ }
565
+ })() })] }) }), _jsx("div", { style: {
566
+ display: 'flex',
567
+ flexDirection: 'row',
568
+ justifyContent: 'flex-end',
569
+ }, children: filter ? (_jsxs("div", { style: {
570
+ display: 'flex',
571
+ flexDirection: 'row',
572
+ justifyContent: 'end',
573
+ gap: 8,
574
+ width: '100%',
575
+ }, children: [SecondaryButtonComponent ? (_jsx(SecondaryButtonComponent, { onClick: handleDelete, label: 'Delete' })) : (_jsx(ButtonComponent, { onClick: handleDelete, label: 'Delete' })), _jsx(ButtonComponent, { onClick: handleSubmit, label: 'Save' })] })) : (operator && (_jsx(ButtonComponent, { onClick: handleSubmit, label: 'Add Filter' }))) })] }));
576
+ }