@quillsql/react 2.12.29 → 2.12.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (530) hide show
  1. package/dist/cjs/Chart.d.ts +29 -46
  2. package/dist/cjs/Chart.d.ts.map +1 -1
  3. package/dist/cjs/Chart.js +187 -468
  4. package/dist/cjs/ChartBuilder.d.ts +30 -61
  5. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  6. package/dist/cjs/ChartBuilder.js +190 -131
  7. package/dist/cjs/ChartEditor.d.ts +14 -2
  8. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  9. package/dist/cjs/ChartEditor.js +70 -125
  10. package/dist/cjs/Context.d.ts +4 -1
  11. package/dist/cjs/Context.d.ts.map +1 -1
  12. package/dist/cjs/Context.js +52 -6
  13. package/dist/cjs/Dashboard.d.ts +74 -118
  14. package/dist/cjs/Dashboard.d.ts.map +1 -1
  15. package/dist/cjs/Dashboard.js +273 -47
  16. package/dist/cjs/DateRangePicker/Calendar.d.ts.map +1 -1
  17. package/dist/cjs/DateRangePicker/Calendar.js +3 -6
  18. package/dist/cjs/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  19. package/dist/cjs/DateRangePicker/DateRangePicker.js +2 -29
  20. package/dist/cjs/DateRangePicker/DateRangePickerButton.d.ts +1 -2
  21. package/dist/cjs/DateRangePicker/DateRangePickerButton.d.ts.map +1 -1
  22. package/dist/cjs/DateRangePicker/DateRangePickerButton.js +2 -4
  23. package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts +2 -1
  24. package/dist/cjs/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
  25. package/dist/cjs/DateRangePicker/QuillDateRangePicker.js +4 -4
  26. package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts +1 -1
  27. package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
  28. package/dist/cjs/DateRangePicker/dateRangePickerUtils.js +1 -15
  29. package/dist/cjs/ReportBuilder.d.ts +18 -6
  30. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  31. package/dist/cjs/ReportBuilder.js +477 -489
  32. package/dist/cjs/SQLEditor.d.ts +4 -11
  33. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  34. package/dist/cjs/SQLEditor.js +76 -88
  35. package/dist/cjs/Table.d.ts +19 -3
  36. package/dist/cjs/Table.d.ts.map +1 -1
  37. package/dist/cjs/Table.js +130 -114
  38. package/dist/cjs/TableChart.d.ts.map +1 -1
  39. package/dist/cjs/TableChart.js +0 -1
  40. package/dist/cjs/assets/ArrowDownHeadIcon.d.ts.map +1 -1
  41. package/dist/cjs/assets/ArrowDownIcon.d.ts.map +1 -1
  42. package/dist/cjs/assets/ArrowDownRightIcon.d.ts.map +1 -1
  43. package/dist/cjs/assets/ArrowLeftHeadIcon.d.ts.map +1 -1
  44. package/dist/cjs/assets/ArrowRightHeadIcon.d.ts.map +1 -1
  45. package/dist/cjs/assets/ArrowRightIcon.d.ts.map +1 -1
  46. package/dist/cjs/assets/ArrowUpHeadIcon.d.ts.map +1 -1
  47. package/dist/cjs/assets/ArrowUpIcon.d.ts.map +1 -1
  48. package/dist/cjs/assets/ArrowUpRightIcon.d.ts.map +1 -1
  49. package/dist/cjs/assets/CalendarIcon.d.ts.map +1 -1
  50. package/dist/cjs/assets/DoubleArrowLeftHeadIcon.d.ts.map +1 -1
  51. package/dist/cjs/assets/DoubleArrowRightHeadIcon.d.ts.map +1 -1
  52. package/dist/cjs/assets/ExclamationFilledIcon.d.ts.map +1 -1
  53. package/dist/cjs/assets/LoadingSpinner.d.ts.map +1 -1
  54. package/dist/cjs/assets/SearchIcon.d.ts.map +1 -1
  55. package/dist/cjs/assets/XCircleIcon.d.ts.map +1 -1
  56. package/dist/cjs/components/Banner/index.d.ts +1 -1
  57. package/dist/cjs/components/Banner/index.d.ts.map +1 -1
  58. package/dist/cjs/components/Banner/index.js +1 -1
  59. package/dist/cjs/components/BigModal/BigModal.d.ts.map +1 -1
  60. package/dist/cjs/components/BigModal/BigModal.js +6 -12
  61. package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
  62. package/dist/cjs/components/Chart/BarChart.js +12 -1
  63. package/dist/cjs/components/Chart/BarList.d.ts.map +1 -1
  64. package/dist/cjs/components/Chart/BarList.js +21 -14
  65. package/dist/cjs/components/Chart/ChartError.d.ts +8 -1
  66. package/dist/cjs/components/Chart/ChartError.d.ts.map +1 -1
  67. package/dist/cjs/components/Chart/ChartError.js +40 -5
  68. package/dist/cjs/components/Chart/ChartTooltip.d.ts.map +1 -1
  69. package/dist/cjs/components/Chart/ChartTooltip.js +8 -2
  70. package/dist/cjs/components/Chart/LineChart.d.ts +2 -1
  71. package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
  72. package/dist/cjs/components/Chart/LineChart.js +27 -3
  73. package/dist/cjs/components/Chart/PieChart.d.ts.map +1 -1
  74. package/dist/cjs/components/Chart/PieChart.js +1 -3
  75. package/dist/cjs/components/Dashboard/ChartComponent.d.ts +1 -1
  76. package/dist/cjs/components/Dashboard/ChartComponent.d.ts.map +1 -1
  77. package/dist/cjs/components/Dashboard/ChartComponent.js +1 -1
  78. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts +5 -1
  79. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  80. package/dist/cjs/components/Dashboard/DashboardFilter.js +10 -5
  81. package/dist/cjs/components/Dashboard/DataLoader.d.ts +8 -12
  82. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  83. package/dist/cjs/components/Dashboard/DataLoader.js +137 -194
  84. package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
  85. package/dist/cjs/components/Dashboard/MetricComponent.js +11 -45
  86. package/dist/cjs/components/Dashboard/TableComponent.d.ts +2 -5
  87. package/dist/cjs/components/Dashboard/TableComponent.d.ts.map +1 -1
  88. package/dist/cjs/components/Dashboard/TableComponent.js +3 -32
  89. package/dist/cjs/components/Dropdown/Dropdown.d.ts.map +1 -1
  90. package/dist/cjs/components/Dropdown/Dropdown.js +1 -3
  91. package/dist/cjs/components/Dropdown/DropdownItem.d.ts.map +1 -1
  92. package/dist/cjs/components/Dropdown/DropdownItem.js +3 -8
  93. package/dist/cjs/components/Dropdown/index.d.ts +2 -2
  94. package/dist/cjs/components/Modal/Modal.d.ts.map +1 -1
  95. package/dist/cjs/components/Modal/Modal.js +2 -3
  96. package/dist/cjs/components/Modal/index.d.ts +1 -1
  97. package/dist/cjs/components/QuillMultiSelect.d.ts.map +1 -1
  98. package/dist/cjs/components/QuillMultiSelect.js +18 -3
  99. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  100. package/dist/cjs/components/QuillMultiSelectWithCombo.js +18 -3
  101. package/dist/cjs/components/QuillSelect.js +1 -1
  102. package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -1
  103. package/dist/cjs/components/QuillSelectWithCombo.js +6 -3
  104. package/dist/cjs/components/QuillTable.d.ts +1 -4
  105. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  106. package/dist/cjs/components/QuillTable.js +5 -11
  107. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts +3 -1
  108. package/dist/cjs/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  109. package/dist/cjs/components/ReportBuilder/AddColumnModal.js +5 -8
  110. package/dist/cjs/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  111. package/dist/cjs/components/ReportBuilder/AddLimitPopover.js +1 -3
  112. package/dist/cjs/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  113. package/dist/cjs/components/ReportBuilder/AddSortPopover.js +12 -1
  114. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts +30 -0
  115. package/dist/cjs/components/ReportBuilder/FilterModal.d.ts.map +1 -0
  116. package/dist/cjs/components/ReportBuilder/FilterModal.js +579 -0
  117. package/dist/cjs/components/ReportBuilder/ast.d.ts +2 -1
  118. package/dist/cjs/components/ReportBuilder/ast.d.ts.map +1 -1
  119. package/dist/cjs/components/ReportBuilder/ast.js +33 -6
  120. package/dist/cjs/components/ReportBuilder/constants.d.ts +18 -3
  121. package/dist/cjs/components/ReportBuilder/constants.d.ts.map +1 -1
  122. package/dist/cjs/components/ReportBuilder/constants.js +24 -3
  123. package/dist/cjs/components/ReportBuilder/convert.d.ts +18 -16
  124. package/dist/cjs/components/ReportBuilder/convert.d.ts.map +1 -1
  125. package/dist/cjs/components/ReportBuilder/convert.js +378 -494
  126. package/dist/cjs/components/ReportBuilder/operators.d.ts +24 -4
  127. package/dist/cjs/components/ReportBuilder/operators.d.ts.map +1 -1
  128. package/dist/cjs/components/ReportBuilder/operators.js +32 -4
  129. package/dist/cjs/components/ReportBuilder/ui.d.ts +20 -0
  130. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  131. package/dist/cjs/components/ReportBuilder/ui.js +15 -5
  132. package/dist/cjs/components/ReportBuilder/util.d.ts +3 -11
  133. package/dist/cjs/components/ReportBuilder/util.d.ts.map +1 -1
  134. package/dist/cjs/components/ReportBuilder/util.js +15 -18
  135. package/dist/cjs/components/UiComponents.d.ts +36 -8
  136. package/dist/cjs/components/UiComponents.d.ts.map +1 -1
  137. package/dist/cjs/components/UiComponents.js +106 -12
  138. package/dist/cjs/components/selectUtils.d.ts +0 -1
  139. package/dist/cjs/components/selectUtils.d.ts.map +1 -1
  140. package/dist/cjs/components/selectUtils.js +1 -22
  141. package/dist/cjs/hooks/index.d.ts +4 -4
  142. package/dist/cjs/hooks/useAstToFilterTree.d.ts +11 -0
  143. package/dist/cjs/hooks/useAstToFilterTree.d.ts.map +1 -0
  144. package/dist/cjs/hooks/useAstToFilterTree.js +26 -0
  145. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  146. package/dist/cjs/hooks/useDashboard.js +5 -1
  147. package/dist/cjs/hooks/useExport.d.ts.map +1 -1
  148. package/dist/cjs/hooks/useExport.js +3 -1
  149. package/dist/cjs/hooks/useOnClickOutside.js +4 -4
  150. package/dist/cjs/hooks/useOnWindowResize.d.ts.map +1 -1
  151. package/dist/cjs/hooks/useOnWindowResize.js +2 -2
  152. package/dist/cjs/hooks/useQuill.d.ts +10 -27
  153. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  154. package/dist/cjs/hooks/useQuill.js +133 -85
  155. package/dist/cjs/hooks/useSelectOnKeyDown.d.ts.map +1 -1
  156. package/dist/cjs/hooks/useSelectOnKeyDown.js +4 -4
  157. package/dist/cjs/hooks/useTheme.js +1 -1
  158. package/dist/cjs/index.d.ts +3 -1
  159. package/dist/cjs/index.d.ts.map +1 -1
  160. package/dist/cjs/index.js +3 -1
  161. package/dist/cjs/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  162. package/dist/cjs/internals/ReportBuilder/PivotForm.js +8 -1
  163. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts +2 -2
  164. package/dist/cjs/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  165. package/dist/cjs/internals/ReportBuilder/PivotList.js +2 -2
  166. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +2 -1
  167. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  168. package/dist/cjs/internals/ReportBuilder/PivotModal.js +8 -21
  169. package/dist/cjs/lib/utils.js +2 -2
  170. package/dist/cjs/models/Columns.d.ts +2 -1
  171. package/dist/cjs/models/Columns.d.ts.map +1 -1
  172. package/dist/cjs/models/Filter.d.ts +115 -4
  173. package/dist/cjs/models/Filter.d.ts.map +1 -1
  174. package/dist/cjs/models/Filter.js +99 -0
  175. package/dist/cjs/models/Pagination.d.ts +10 -0
  176. package/dist/cjs/models/Pagination.d.ts.map +1 -0
  177. package/dist/cjs/models/Pagination.js +2 -0
  178. package/dist/cjs/models/Report.d.ts +103 -0
  179. package/dist/cjs/models/Report.d.ts.map +1 -0
  180. package/dist/cjs/models/Report.js +2 -0
  181. package/dist/cjs/utils/aggregate.js +1 -1
  182. package/dist/cjs/utils/astFilterProcessing.d.ts +36 -0
  183. package/dist/cjs/utils/astFilterProcessing.d.ts.map +1 -0
  184. package/dist/cjs/utils/astFilterProcessing.js +8091 -0
  185. package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
  186. package/dist/cjs/utils/astProcessing.js +4 -3
  187. package/dist/cjs/utils/axisFormatter.js +0 -71
  188. package/dist/cjs/utils/color.js +9 -87
  189. package/dist/cjs/utils/columnProcessing.d.ts +2 -0
  190. package/dist/cjs/utils/columnProcessing.d.ts.map +1 -1
  191. package/dist/cjs/utils/columnProcessing.js +54 -1
  192. package/dist/cjs/utils/csv.d.ts.map +1 -1
  193. package/dist/cjs/utils/dashboard.d.ts +1 -1
  194. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  195. package/dist/cjs/utils/dashboard.js +6 -59
  196. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
  197. package/dist/cjs/utils/dataFetcher.js +63 -1
  198. package/dist/cjs/utils/dataProcessing.d.ts +10 -0
  199. package/dist/cjs/utils/dataProcessing.d.ts.map +1 -0
  200. package/dist/cjs/utils/dataProcessing.js +144 -0
  201. package/dist/cjs/utils/dates.d.ts +2 -1
  202. package/dist/cjs/utils/dates.d.ts.map +1 -1
  203. package/dist/cjs/utils/dates.js +23 -1
  204. package/dist/cjs/utils/error.d.ts +5 -0
  205. package/dist/cjs/utils/error.d.ts.map +1 -0
  206. package/dist/cjs/utils/error.js +12 -0
  207. package/dist/cjs/utils/filterConstants.d.ts +34 -0
  208. package/dist/cjs/utils/filterConstants.d.ts.map +1 -0
  209. package/dist/cjs/utils/filterConstants.js +36 -0
  210. package/dist/cjs/utils/filterProcessing.d.ts +7 -1
  211. package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
  212. package/dist/cjs/utils/filterProcessing.js +104 -17
  213. package/dist/cjs/utils/logging.d.ts.map +1 -1
  214. package/dist/cjs/utils/logging.js +1 -0
  215. package/dist/cjs/utils/merge.js +0 -21
  216. package/dist/cjs/utils/{monacoAutocomplete.d.ts → monacoConfig.d.ts} +3 -2
  217. package/dist/cjs/utils/monacoConfig.d.ts.map +1 -0
  218. package/dist/cjs/utils/monacoConfig.js +324 -0
  219. package/dist/cjs/utils/paginationProcessing.d.ts +5 -0
  220. package/dist/cjs/utils/paginationProcessing.d.ts.map +1 -0
  221. package/dist/cjs/utils/paginationProcessing.js +30 -0
  222. package/dist/cjs/utils/pivotConstructor.d.ts +2 -1
  223. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  224. package/dist/cjs/utils/pivotConstructor.js +16 -1
  225. package/dist/cjs/utils/pivotProcessing.d.ts.map +1 -1
  226. package/dist/cjs/utils/pivotProcessing.js +12 -6
  227. package/dist/cjs/utils/queryConstructor.d.ts.map +1 -1
  228. package/dist/cjs/utils/queryConstructor.js +4 -3
  229. package/dist/cjs/utils/report.d.ts +10 -0
  230. package/dist/cjs/utils/report.d.ts.map +1 -0
  231. package/dist/cjs/utils/report.js +180 -0
  232. package/dist/cjs/utils/schema.d.ts.map +1 -1
  233. package/dist/cjs/utils/schema.js +35 -6
  234. package/dist/cjs/utils/styles.d.ts +1 -1
  235. package/dist/cjs/utils/styles.d.ts.map +1 -1
  236. package/dist/cjs/utils/tableProcessing.d.ts +22 -8
  237. package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
  238. package/dist/cjs/utils/tableProcessing.js +116 -35
  239. package/dist/cjs/utils/textProcessing.js +3 -3
  240. package/dist/cjs/utils/validation.d.ts +9 -0
  241. package/dist/cjs/utils/validation.d.ts.map +1 -0
  242. package/dist/cjs/utils/validation.js +24 -0
  243. package/dist/cjs/utils/valueFormatter.d.ts.map +1 -1
  244. package/dist/cjs/utils/valueFormatter.js +8 -4
  245. package/dist/esm/Chart.d.ts +29 -46
  246. package/dist/esm/Chart.d.ts.map +1 -1
  247. package/dist/esm/Chart.js +189 -471
  248. package/dist/esm/ChartBuilder.d.ts +30 -61
  249. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  250. package/dist/esm/ChartBuilder.js +191 -129
  251. package/dist/esm/ChartEditor.d.ts +14 -2
  252. package/dist/esm/ChartEditor.d.ts.map +1 -1
  253. package/dist/esm/ChartEditor.js +71 -126
  254. package/dist/esm/Context.d.ts +4 -1
  255. package/dist/esm/Context.d.ts.map +1 -1
  256. package/dist/esm/Context.js +51 -5
  257. package/dist/esm/Dashboard.d.ts +74 -118
  258. package/dist/esm/Dashboard.d.ts.map +1 -1
  259. package/dist/esm/Dashboard.js +275 -49
  260. package/dist/esm/DateRangePicker/Calendar.d.ts.map +1 -1
  261. package/dist/esm/DateRangePicker/Calendar.js +5 -8
  262. package/dist/esm/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  263. package/dist/esm/DateRangePicker/DateRangePicker.js +2 -29
  264. package/dist/esm/DateRangePicker/DateRangePickerButton.d.ts +1 -2
  265. package/dist/esm/DateRangePicker/DateRangePickerButton.d.ts.map +1 -1
  266. package/dist/esm/DateRangePicker/DateRangePickerButton.js +2 -4
  267. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts +2 -1
  268. package/dist/esm/DateRangePicker/QuillDateRangePicker.d.ts.map +1 -1
  269. package/dist/esm/DateRangePicker/QuillDateRangePicker.js +4 -4
  270. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts +1 -1
  271. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
  272. package/dist/esm/DateRangePicker/dateRangePickerUtils.js +1 -15
  273. package/dist/esm/ReportBuilder.d.ts +18 -6
  274. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  275. package/dist/esm/ReportBuilder.js +484 -496
  276. package/dist/esm/SQLEditor.d.ts +4 -11
  277. package/dist/esm/SQLEditor.d.ts.map +1 -1
  278. package/dist/esm/SQLEditor.js +75 -87
  279. package/dist/esm/Table.d.ts +19 -3
  280. package/dist/esm/Table.d.ts.map +1 -1
  281. package/dist/esm/Table.js +132 -116
  282. package/dist/esm/TableChart.d.ts.map +1 -1
  283. package/dist/esm/TableChart.js +0 -1
  284. package/dist/esm/assets/ArrowDownHeadIcon.d.ts.map +1 -1
  285. package/dist/esm/assets/ArrowDownIcon.d.ts.map +1 -1
  286. package/dist/esm/assets/ArrowDownRightIcon.d.ts.map +1 -1
  287. package/dist/esm/assets/ArrowLeftHeadIcon.d.ts.map +1 -1
  288. package/dist/esm/assets/ArrowRightHeadIcon.d.ts.map +1 -1
  289. package/dist/esm/assets/ArrowRightIcon.d.ts.map +1 -1
  290. package/dist/esm/assets/ArrowUpHeadIcon.d.ts.map +1 -1
  291. package/dist/esm/assets/ArrowUpIcon.d.ts.map +1 -1
  292. package/dist/esm/assets/ArrowUpRightIcon.d.ts.map +1 -1
  293. package/dist/esm/assets/CalendarIcon.d.ts.map +1 -1
  294. package/dist/esm/assets/DoubleArrowLeftHeadIcon.d.ts.map +1 -1
  295. package/dist/esm/assets/DoubleArrowRightHeadIcon.d.ts.map +1 -1
  296. package/dist/esm/assets/ExclamationFilledIcon.d.ts.map +1 -1
  297. package/dist/esm/assets/LoadingSpinner.d.ts.map +1 -1
  298. package/dist/esm/assets/SearchIcon.d.ts.map +1 -1
  299. package/dist/esm/assets/XCircleIcon.d.ts.map +1 -1
  300. package/dist/esm/components/Banner/index.d.ts +1 -1
  301. package/dist/esm/components/Banner/index.d.ts.map +1 -1
  302. package/dist/esm/components/Banner/index.js +1 -1
  303. package/dist/esm/components/BigModal/BigModal.d.ts.map +1 -1
  304. package/dist/esm/components/BigModal/BigModal.js +7 -13
  305. package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
  306. package/dist/esm/components/Chart/BarChart.js +13 -2
  307. package/dist/esm/components/Chart/BarList.d.ts.map +1 -1
  308. package/dist/esm/components/Chart/BarList.js +21 -14
  309. package/dist/esm/components/Chart/ChartError.d.ts +8 -1
  310. package/dist/esm/components/Chart/ChartError.d.ts.map +1 -1
  311. package/dist/esm/components/Chart/ChartError.js +39 -6
  312. package/dist/esm/components/Chart/ChartTooltip.d.ts.map +1 -1
  313. package/dist/esm/components/Chart/ChartTooltip.js +8 -2
  314. package/dist/esm/components/Chart/LineChart.d.ts +2 -1
  315. package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
  316. package/dist/esm/components/Chart/LineChart.js +28 -4
  317. package/dist/esm/components/Chart/PieChart.d.ts.map +1 -1
  318. package/dist/esm/components/Chart/PieChart.js +1 -3
  319. package/dist/esm/components/Dashboard/ChartComponent.d.ts +1 -1
  320. package/dist/esm/components/Dashboard/ChartComponent.d.ts.map +1 -1
  321. package/dist/esm/components/Dashboard/ChartComponent.js +1 -1
  322. package/dist/esm/components/Dashboard/DashboardFilter.d.ts +5 -1
  323. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  324. package/dist/esm/components/Dashboard/DashboardFilter.js +10 -5
  325. package/dist/esm/components/Dashboard/DataLoader.d.ts +8 -12
  326. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  327. package/dist/esm/components/Dashboard/DataLoader.js +137 -194
  328. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
  329. package/dist/esm/components/Dashboard/MetricComponent.js +11 -45
  330. package/dist/esm/components/Dashboard/TableComponent.d.ts +2 -5
  331. package/dist/esm/components/Dashboard/TableComponent.d.ts.map +1 -1
  332. package/dist/esm/components/Dashboard/TableComponent.js +3 -32
  333. package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
  334. package/dist/esm/components/Dropdown/Dropdown.js +2 -4
  335. package/dist/esm/components/Dropdown/DropdownItem.d.ts.map +1 -1
  336. package/dist/esm/components/Dropdown/DropdownItem.js +4 -9
  337. package/dist/esm/components/Dropdown/index.d.ts +2 -2
  338. package/dist/esm/components/Dropdown/index.js +2 -2
  339. package/dist/esm/components/Modal/Modal.d.ts.map +1 -1
  340. package/dist/esm/components/Modal/Modal.js +2 -3
  341. package/dist/esm/components/Modal/index.d.ts +1 -1
  342. package/dist/esm/components/Modal/index.js +1 -1
  343. package/dist/esm/components/QuillMultiSelect.d.ts.map +1 -1
  344. package/dist/esm/components/QuillMultiSelect.js +18 -3
  345. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  346. package/dist/esm/components/QuillMultiSelectWithCombo.js +18 -3
  347. package/dist/esm/components/QuillSelect.js +1 -1
  348. package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -1
  349. package/dist/esm/components/QuillSelectWithCombo.js +7 -4
  350. package/dist/esm/components/QuillTable.d.ts +1 -4
  351. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  352. package/dist/esm/components/QuillTable.js +5 -11
  353. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts +3 -1
  354. package/dist/esm/components/ReportBuilder/AddColumnModal.d.ts.map +1 -1
  355. package/dist/esm/components/ReportBuilder/AddColumnModal.js +8 -11
  356. package/dist/esm/components/ReportBuilder/AddLimitPopover.d.ts.map +1 -1
  357. package/dist/esm/components/ReportBuilder/AddLimitPopover.js +2 -4
  358. package/dist/esm/components/ReportBuilder/AddSortPopover.d.ts.map +1 -1
  359. package/dist/esm/components/ReportBuilder/AddSortPopover.js +12 -1
  360. package/dist/esm/components/ReportBuilder/FilterModal.d.ts +30 -0
  361. package/dist/esm/components/ReportBuilder/FilterModal.d.ts.map +1 -0
  362. package/dist/esm/components/ReportBuilder/FilterModal.js +576 -0
  363. package/dist/esm/components/ReportBuilder/ast.d.ts +2 -1
  364. package/dist/esm/components/ReportBuilder/ast.d.ts.map +1 -1
  365. package/dist/esm/components/ReportBuilder/ast.js +31 -5
  366. package/dist/esm/components/ReportBuilder/constants.d.ts +18 -3
  367. package/dist/esm/components/ReportBuilder/constants.d.ts.map +1 -1
  368. package/dist/esm/components/ReportBuilder/constants.js +24 -3
  369. package/dist/esm/components/ReportBuilder/convert.d.ts +18 -16
  370. package/dist/esm/components/ReportBuilder/convert.d.ts.map +1 -1
  371. package/dist/esm/components/ReportBuilder/convert.js +375 -493
  372. package/dist/esm/components/ReportBuilder/convert.uspec.d.ts +2 -0
  373. package/dist/esm/components/ReportBuilder/convert.uspec.d.ts.map +1 -0
  374. package/dist/esm/components/ReportBuilder/convert.uspec.js +1419 -0
  375. package/dist/esm/components/ReportBuilder/operators.d.ts +24 -4
  376. package/dist/esm/components/ReportBuilder/operators.d.ts.map +1 -1
  377. package/dist/esm/components/ReportBuilder/operators.js +32 -4
  378. package/dist/esm/components/ReportBuilder/ui.d.ts +20 -0
  379. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  380. package/dist/esm/components/ReportBuilder/ui.js +13 -4
  381. package/dist/esm/components/ReportBuilder/util.d.ts +3 -11
  382. package/dist/esm/components/ReportBuilder/util.d.ts.map +1 -1
  383. package/dist/esm/components/ReportBuilder/util.js +16 -19
  384. package/dist/esm/components/UiComponents.d.ts +36 -8
  385. package/dist/esm/components/UiComponents.d.ts.map +1 -1
  386. package/dist/esm/components/UiComponents.js +104 -11
  387. package/dist/esm/components/selectUtils.d.ts +0 -1
  388. package/dist/esm/components/selectUtils.d.ts.map +1 -1
  389. package/dist/esm/components/selectUtils.js +0 -20
  390. package/dist/esm/hooks/index.d.ts +4 -4
  391. package/dist/esm/hooks/index.js +4 -4
  392. package/dist/esm/hooks/useAstToFilterTree.d.ts +11 -0
  393. package/dist/esm/hooks/useAstToFilterTree.d.ts.map +1 -0
  394. package/dist/esm/hooks/useAstToFilterTree.js +24 -0
  395. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  396. package/dist/esm/hooks/useDashboard.js +5 -1
  397. package/dist/esm/hooks/useExport.d.ts.map +1 -1
  398. package/dist/esm/hooks/useExport.js +4 -2
  399. package/dist/esm/hooks/useOnClickOutside.js +5 -5
  400. package/dist/esm/hooks/useOnWindowResize.d.ts.map +1 -1
  401. package/dist/esm/hooks/useOnWindowResize.js +3 -3
  402. package/dist/esm/hooks/useQuill.d.ts +10 -27
  403. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  404. package/dist/esm/hooks/useQuill.js +133 -85
  405. package/dist/esm/hooks/useSelectOnKeyDown.d.ts.map +1 -1
  406. package/dist/esm/hooks/useSelectOnKeyDown.js +5 -5
  407. package/dist/esm/hooks/useTheme.js +1 -1
  408. package/dist/esm/index.d.ts +3 -1
  409. package/dist/esm/index.d.ts.map +1 -1
  410. package/dist/esm/index.js +1 -0
  411. package/dist/esm/internals/ReportBuilder/PivotForm.d.ts.map +1 -1
  412. package/dist/esm/internals/ReportBuilder/PivotForm.js +9 -2
  413. package/dist/esm/internals/ReportBuilder/PivotList.d.ts +2 -2
  414. package/dist/esm/internals/ReportBuilder/PivotList.d.ts.map +1 -1
  415. package/dist/esm/internals/ReportBuilder/PivotList.js +3 -3
  416. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +2 -1
  417. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  418. package/dist/esm/internals/ReportBuilder/PivotModal.js +11 -24
  419. package/dist/esm/lib/utils.js +2 -2
  420. package/dist/esm/models/Columns.d.ts +2 -1
  421. package/dist/esm/models/Columns.d.ts.map +1 -1
  422. package/dist/esm/models/Filter.d.ts +115 -4
  423. package/dist/esm/models/Filter.d.ts.map +1 -1
  424. package/dist/esm/models/Filter.js +98 -1
  425. package/dist/esm/models/Pagination.d.ts +10 -0
  426. package/dist/esm/models/Pagination.d.ts.map +1 -0
  427. package/dist/esm/models/Pagination.js +1 -0
  428. package/dist/esm/models/Report.d.ts +103 -0
  429. package/dist/esm/models/Report.d.ts.map +1 -0
  430. package/dist/esm/models/Report.js +1 -0
  431. package/dist/esm/test-utils/constants.d.ts +56 -0
  432. package/dist/esm/test-utils/constants.d.ts.map +1 -0
  433. package/dist/esm/test-utils/constants.js +271 -0
  434. package/dist/esm/test-utils/generators.d.ts +4 -0
  435. package/dist/esm/test-utils/generators.d.ts.map +1 -0
  436. package/dist/esm/test-utils/generators.js +37 -0
  437. package/dist/esm/utils/aggregate.js +1 -1
  438. package/dist/esm/utils/astFilterProcessing.d.ts +36 -0
  439. package/dist/esm/utils/astFilterProcessing.d.ts.map +1 -0
  440. package/dist/esm/utils/astFilterProcessing.js +8084 -0
  441. package/dist/esm/utils/astFilterProcessing.uspec.d.ts +2 -0
  442. package/dist/esm/utils/astFilterProcessing.uspec.d.ts.map +1 -0
  443. package/dist/esm/utils/astFilterProcessing.uspec.js +2877 -0
  444. package/dist/esm/utils/astProcessing.d.ts.map +1 -1
  445. package/dist/esm/utils/astProcessing.js +4 -3
  446. package/dist/esm/utils/axisFormatter.js +0 -71
  447. package/dist/esm/utils/color.js +9 -87
  448. package/dist/esm/utils/columnProcessing.d.ts +2 -0
  449. package/dist/esm/utils/columnProcessing.d.ts.map +1 -1
  450. package/dist/esm/utils/columnProcessing.js +52 -0
  451. package/dist/esm/utils/columnProcessing.uspec.d.ts +2 -0
  452. package/dist/esm/utils/columnProcessing.uspec.d.ts.map +1 -0
  453. package/dist/esm/utils/columnProcessing.uspec.js +65 -0
  454. package/dist/esm/utils/csv.d.ts.map +1 -1
  455. package/dist/esm/utils/dashboard.d.ts +1 -1
  456. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  457. package/dist/esm/utils/dashboard.js +6 -59
  458. package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
  459. package/dist/esm/utils/dataFetcher.js +63 -1
  460. package/dist/esm/utils/dataProcessing.d.ts +10 -0
  461. package/dist/esm/utils/dataProcessing.d.ts.map +1 -0
  462. package/dist/esm/utils/dataProcessing.js +138 -0
  463. package/dist/esm/utils/dataProcessing.uspec.d.ts +2 -0
  464. package/dist/esm/utils/dataProcessing.uspec.d.ts.map +1 -0
  465. package/dist/esm/utils/dataProcessing.uspec.js +205 -0
  466. package/dist/esm/utils/dates.d.ts +2 -1
  467. package/dist/esm/utils/dates.d.ts.map +1 -1
  468. package/dist/esm/utils/dates.js +21 -0
  469. package/dist/esm/utils/error.d.ts +5 -0
  470. package/dist/esm/utils/error.d.ts.map +1 -0
  471. package/dist/esm/utils/error.js +8 -0
  472. package/dist/esm/utils/filterConstants.d.ts +34 -0
  473. package/dist/esm/utils/filterConstants.d.ts.map +1 -0
  474. package/dist/esm/utils/filterConstants.js +33 -0
  475. package/dist/esm/utils/filterProcessing.d.ts +7 -1
  476. package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
  477. package/dist/esm/utils/filterProcessing.js +101 -16
  478. package/dist/esm/utils/filterProcessing.uspec.d.ts +2 -0
  479. package/dist/esm/utils/filterProcessing.uspec.d.ts.map +1 -0
  480. package/dist/esm/utils/filterProcessing.uspec.js +245 -0
  481. package/dist/esm/utils/logging.d.ts.map +1 -1
  482. package/dist/esm/utils/logging.js +1 -0
  483. package/dist/esm/utils/merge.js +0 -21
  484. package/dist/esm/utils/{monacoAutocomplete.d.ts → monacoConfig.d.ts} +3 -2
  485. package/dist/esm/utils/monacoConfig.d.ts.map +1 -0
  486. package/dist/esm/utils/monacoConfig.js +319 -0
  487. package/dist/esm/utils/paginationProcessing.d.ts +5 -0
  488. package/dist/esm/utils/paginationProcessing.d.ts.map +1 -0
  489. package/dist/esm/utils/paginationProcessing.js +25 -0
  490. package/dist/esm/utils/pivotConstructor.d.ts +2 -1
  491. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  492. package/dist/esm/utils/pivotConstructor.js +16 -1
  493. package/dist/esm/utils/pivotProcessing.d.ts.map +1 -1
  494. package/dist/esm/utils/pivotProcessing.js +12 -6
  495. package/dist/esm/utils/queryConstructor.d.ts.map +1 -1
  496. package/dist/esm/utils/queryConstructor.js +4 -3
  497. package/dist/esm/utils/queryConstructor.uspec.js +21 -21
  498. package/dist/esm/utils/report.d.ts +10 -0
  499. package/dist/esm/utils/report.d.ts.map +1 -0
  500. package/dist/esm/utils/report.ispec.d.ts +2 -0
  501. package/dist/esm/utils/report.ispec.d.ts.map +1 -0
  502. package/dist/esm/utils/report.ispec.js +46 -0
  503. package/dist/esm/utils/report.js +174 -0
  504. package/dist/esm/utils/report.uspec.d.ts +2 -0
  505. package/dist/esm/utils/report.uspec.d.ts.map +1 -0
  506. package/dist/esm/utils/report.uspec.js +66 -0
  507. package/dist/esm/utils/schema.d.ts.map +1 -1
  508. package/dist/esm/utils/schema.js +35 -6
  509. package/dist/esm/utils/styles.d.ts +1 -1
  510. package/dist/esm/utils/styles.d.ts.map +1 -1
  511. package/dist/esm/utils/tableProcessing.d.ts +22 -8
  512. package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
  513. package/dist/esm/utils/tableProcessing.ispec.d.ts +2 -0
  514. package/dist/esm/utils/tableProcessing.ispec.d.ts.map +1 -0
  515. package/dist/esm/utils/tableProcessing.ispec.js +61 -0
  516. package/dist/esm/utils/tableProcessing.js +112 -33
  517. package/dist/esm/utils/textProcessing.js +3 -3
  518. package/dist/esm/utils/validation.d.ts +9 -0
  519. package/dist/esm/utils/validation.d.ts.map +1 -0
  520. package/dist/esm/utils/validation.js +20 -0
  521. package/dist/esm/utils/valueFormatter.d.ts.map +1 -1
  522. package/dist/esm/utils/valueFormatter.js +8 -4
  523. package/package.json +1 -1
  524. package/dist/cjs/utils/monacoAutocomplete.d.ts.map +0 -1
  525. package/dist/cjs/utils/monacoAutocomplete.js +0 -145
  526. package/dist/cjs/utils/queryConstructor.uspec.d.ts +0 -2
  527. package/dist/cjs/utils/queryConstructor.uspec.d.ts.map +0 -1
  528. package/dist/cjs/utils/queryConstructor.uspec.js +0 -225
  529. package/dist/esm/utils/monacoAutocomplete.d.ts.map +0 -1
  530. package/dist/esm/utils/monacoAutocomplete.js +0 -140
@@ -2,245 +2,188 @@ import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useContext, useEffect, useState } from 'react';
3
3
  import { didFiltersChange } from '../../Chart';
4
4
  import { ClientContext, CustomFieldContext, DashboardContext, } from '../../Context';
5
- import { useTheme } from '../../hooks';
6
- import { getData } from '../../utils/dataFetcher';
7
- import { mergeComparisonRange } from '../../utils/merge';
8
- import { processFilterErrorList } from '../../utils/errorProcessing';
9
- import { cleanDashboardItem } from '../../utils/dashboard';
10
- import { internalLog } from '../../utils/logging';
11
- import { MAX_COLUMN_ROWS_LIMIT } from '../../utils/constants';
12
- export default function DataLoader({ id, children, filters, }) {
13
- const [client, _] = useContext(ClientContext);
14
- const { dispatch, dashboard } = useContext(DashboardContext);
15
- // const { dashboardFilters } = useContext(DashboardFiltersContext);
5
+ import { convertInternalReportToReport, EMPTY_REPORT, fetchReport, } from '../../utils/report';
6
+ import { shouldFetchMore, DEFAULT_PAGINATION, shouldSortInMemory, } from '../../utils/paginationProcessing';
7
+ import { fetchTableByReport } from '../../utils/tableProcessing';
8
+ const constructReportFromItem = (item) => {
9
+ return {
10
+ ...EMPTY_REPORT,
11
+ id: item._id,
12
+ name: item.name,
13
+ dashboardName: item.dashboardName,
14
+ rows: [],
15
+ columns: [],
16
+ chartType: item.chartType,
17
+ dateField: item.dateField,
18
+ pivot: item.pivot,
19
+ xAxisLabel: item.xAxisLabel,
20
+ xAxisField: item.xAxisField,
21
+ xAxisFormat: item.xAxisFormat,
22
+ yAxisFields: item.yAxisFields,
23
+ order: item.order,
24
+ compareRows: item.compareRows,
25
+ filtersApplied: item.filtersApplied,
26
+ };
27
+ };
28
+ export default function DataLoader({ item, children, filters, }) {
29
+ const [client] = useContext(ClientContext);
30
+ const [dashboard, dispatch] = useContext(DashboardContext);
16
31
  const [customFields] = useContext(CustomFieldContext);
17
- const [isLoading, setIsLoading] = useState(false);
18
- const [isPaginationLoading, setIsPaginationLoading] = useState(true);
32
+ const [loading, setLoading] = useState(false);
19
33
  const [error, setError] = useState(undefined);
20
34
  const [previousPage, setPreviousPage] = useState(0);
21
- const [report, setReport] = useState(dashboard[id]);
35
+ const [report, setReport] = useState(dashboard[item._id] ?? constructReportFromItem(item));
22
36
  const [additionalProcessing, setAdditionProcessing] = useState({
23
- page: 0,
37
+ page: DEFAULT_PAGINATION,
24
38
  });
25
39
  const onPageChange = (page) => {
26
- if ((previousPage < page.currentPage &&
27
- (page.currentPage * page.rowsPerPage) % MAX_COLUMN_ROWS_LIMIT === 0) ||
28
- (previousPage > page.currentPage &&
29
- (previousPage * page.rowsPerPage) % MAX_COLUMN_ROWS_LIMIT === 0)) {
30
- getChartOptions(true, { page });
40
+ if (additionalProcessing &&
41
+ additionalProcessing.page &&
42
+ shouldFetchMore(DEFAULT_PAGINATION, page, previousPage)) {
43
+ const newPagination = { ...additionalProcessing.page, page };
44
+ const updatedProcessing = {
45
+ ...additionalProcessing,
46
+ page: newPagination,
47
+ };
48
+ setAdditionProcessing(updatedProcessing);
49
+ updateTableRows(updatedProcessing);
50
+ }
51
+ if (page > previousPage) {
52
+ setPreviousPage(page);
31
53
  }
32
- setPreviousPage(page.currentPage);
33
54
  };
34
55
  const onSortChange = (sort) => {
35
- getChartOptions(true, { sort });
36
- setPreviousPage(0);
37
- };
38
- const getChartOptions = async (useReportTask = true, processing) => {
39
- if (!didFiltersChange(dashboard[id], filters) &&
40
- !isLoading &&
41
- !dashboard[id].triggerReload &&
42
- !processing) {
43
- setIsLoading(false);
44
- setReport(dashboard[id]);
56
+ if (shouldSortInMemory(DEFAULT_PAGINATION, report.rowCount, !!report.pivot)) {
45
57
  return;
46
58
  }
47
- setIsLoading(true);
48
- try {
49
- let updatedProcessing = { ...additionalProcessing, ...processing };
50
- if (processing && processing.sort) {
51
- if (!updatedProcessing.page) {
52
- updatedProcessing.page = {};
59
+ const updatedProcessing = { page: DEFAULT_PAGINATION, sort };
60
+ fetchReportHelper(true, additionalProcessing);
61
+ updateTableRows(updatedProcessing, true);
62
+ setPreviousPage(0);
63
+ };
64
+ const updateTableRows = async (processing, resetRows = false) => {
65
+ if (!loading) {
66
+ setLoading(true);
67
+ try {
68
+ const updatedProcessing = { ...additionalProcessing, ...processing };
69
+ const paginatedRows = await fetchTableByReport(report.id, client, updatedProcessing, filters, customFields);
70
+ if (paginatedRows.error) {
71
+ throw new Error('Error fetching chart');
53
72
  }
54
- updatedProcessing.page.currentPage = 0;
55
- }
56
- // Remove extra fields on each filter so we don't confuse the backend.
57
- const minimalFilters = Object.values(filters).length
58
- ? Object.values(filters).map((filter) => {
59
- const newFilter = { ...filter };
60
- if (newFilter.filterType === 'date_range') {
61
- delete newFilter['field'];
62
- delete newFilter['options'];
63
- delete newFilter['selectedValue'];
64
- }
65
- return newFilter;
66
- })
67
- : [];
68
- const hostedBody = {
69
- metadata: {
70
- reportId: id,
71
- dashboardItemId: id,
72
- orgId: client.customerId || '*',
73
- clientId: client.publicKey,
74
- task: useReportTask ? 'report' : 'item',
75
- databaseType: client.databaseType,
76
- filters: minimalFilters,
77
- customFields,
78
- paginateTable: true,
79
- additionalProcessing: updatedProcessing,
80
- },
81
- };
82
- const cloudBody = {
83
- id: id,
84
- filters: minimalFilters,
85
- };
86
- const resp = await getData(client, 'itempost', 'omit', hostedBody, cloudBody, 'POST', 'fetch-data');
87
- processFilterErrorList(resp);
88
- if (resp && resp.name !== 'error' && !resp.errorMessage) {
89
- if (resp.compareRows) {
90
- mergeComparisonRange(resp);
73
+ let tempRows = [...report.rows, ...paginatedRows.rows];
74
+ if (resetRows) {
75
+ tempRows = paginatedRows.rows;
91
76
  }
92
- const dashboardItem = { ...resp, filtersApplied: filters };
93
- const cleanedReport = await cleanDashboardItem(dashboardItem, filters, client);
94
- dispatch({
95
- type: 'UPDATE_DASHBOARD_ITEM',
96
- id: id,
97
- data: { ...cleanedReport, triggerReload: false },
77
+ const convertedReport = convertInternalReportToReport({
78
+ ...report,
79
+ rows: tempRows,
98
80
  });
99
- setReport(cleanedReport);
81
+ setReport(convertedReport);
82
+ setAdditionProcessing(updatedProcessing);
83
+ setTimeout(() => {
84
+ setLoading(false);
85
+ }, 200);
100
86
  }
101
- else {
102
- if (useReportTask) {
103
- throw new Error(resp?.errorMessage);
104
- }
105
- setError(resp?.errorMessage);
87
+ catch (e) {
88
+ console.log(e);
89
+ setLoading(false);
106
90
  }
107
- setAdditionProcessing(updatedProcessing);
108
- setTimeout(() => {
109
- setIsLoading(false);
110
- }, 200);
111
91
  }
112
- catch (e) {
113
- if (useReportTask) {
114
- internalLog('USING ITEM AS BACKUP');
115
- getChartOptions(false, processing);
116
- }
117
- else {
118
- console.log('Error fetching chart: ', e);
119
- setError(e.message);
120
- }
92
+ };
93
+ const fetchReportHelper = async (useReportTask = true, processing) => {
94
+ if (dashboard[item._id] &&
95
+ !didFiltersChange(dashboard[item._id], filters) &&
96
+ !loading &&
97
+ // @ts-ignore
98
+ !dashboard[item._id].triggerReload) {
99
+ setLoading(false);
100
+ const convertedReport = convertInternalReportToReport(
101
+ // @ts-ignore
102
+ dashboard[item._id]);
103
+ setReport(convertedReport);
104
+ return;
121
105
  }
106
+ setLoading(true);
107
+ const { report, error } = await fetchReport(item._id, client, useReportTask, filters, processing, undefined, customFields);
108
+ dispatch({
109
+ type: 'UPDATE_DASHBOARD_ITEM',
110
+ id: item._id,
111
+ data: { ...report, triggerReload: false },
112
+ });
113
+ const convertedReport = convertInternalReportToReport(report);
114
+ setReport(convertedReport);
115
+ setAdditionProcessing(processing);
116
+ setError(error);
117
+ setLoading(false);
122
118
  };
123
119
  useEffect(() => {
124
- getChartOptions();
125
- }, [filters, id]);
120
+ fetchReportHelper(true, additionalProcessing);
121
+ }, [filters, item._id]);
126
122
  useEffect(() => {
127
- if (dashboard[id] && dashboard[id].triggerReload) {
128
- getChartOptions();
123
+ // @ts-ignore
124
+ if (dashboard[item._id] && dashboard[item._id].triggerReload) {
125
+ fetchReportHelper(true, additionalProcessing);
129
126
  }
130
- }, [dashboard[id]]);
127
+ }, [dashboard[item._id]]);
131
128
  return (_jsx(_Fragment, { children: children({
132
- isLoading,
129
+ isLoading: loading,
133
130
  error,
134
131
  onPageChange,
135
132
  onSortChange,
136
- data: report ?? undefined,
133
+ data: report,
137
134
  }) }));
138
135
  }
139
136
  // The same data-loader pattern as above, but with special logic for charts
140
137
  // At some point these may be able to get merged into one function.
141
- export const ChartDataLoader = ({ id, children, hideDateRangeFilter = false, dateBucket, additionalProcessing, filters, }) => {
142
- const { dispatch, dashboard } = useContext(DashboardContext);
138
+ export const ChartDataLoader = ({ item, children, dateBucket, additionalProcessing, filters, }) => {
139
+ const [dashboard, dispatch] = useContext(DashboardContext);
143
140
  const [initialLoad, setInitialLoad] = useState(true);
144
141
  const [loading, setLoading] = useState(false);
145
142
  const [error, setError] = useState(undefined);
146
143
  const [localDateBucket, setLocalDateBucket] = useState(undefined);
147
144
  const [localAdditionalProcessing, setLocalAdditionalProcessing] = useState();
148
- const [isComparison, setIsComparison] = useState(false);
149
- const [report, setReport] = useState(dashboard[id]);
150
- const [client, _] = useContext(ClientContext);
145
+ const [report, setReport] = useState(dashboard[item._id] ?? constructReportFromItem(item));
146
+ const [client] = useContext(ClientContext);
151
147
  const [customFields] = useContext(CustomFieldContext);
152
- const theme = useTheme();
153
- const getChartOptions = async (useReportTask = true) => {
154
- try {
155
- // Remove extra fields on each filter so we don't confuse the backend.
156
- if (!didFiltersChange(dashboard[id], filters) &&
157
- !loading &&
158
- !dashboard[id].triggerReload &&
159
- dateBucket === localDateBucket &&
160
- additionalProcessing?.last === localAdditionalProcessing?.last) {
161
- setLoading(false);
162
- setReport(dashboard[id]);
163
- return;
164
- }
165
- setLoading(true);
166
- setLocalDateBucket(dateBucket);
167
- setLocalAdditionalProcessing(additionalProcessing);
168
- const hostedBody = {
169
- metadata: {
170
- reportId: id,
171
- dashboardItemId: id,
172
- orgId: client.customerId || '*',
173
- clientId: client.publicKey,
174
- task: useReportTask ? 'report' : 'item',
175
- databaseType: client.databaseType,
176
- filters: filters,
177
- customFields,
178
- additionalProcessing,
179
- },
180
- };
181
- const cloudBody = {
182
- id: id,
183
- filters: filters,
184
- };
185
- setError(undefined);
186
- const resp = await getData(client, 'itempost', 'omit', hostedBody, cloudBody, 'POST', 'fetch-data');
187
- processFilterErrorList(resp);
188
- if (resp && resp.name !== 'error' && !resp.errorMessage) {
189
- setIsComparison(!!resp.compareRows?.length);
190
- if (resp.compareRows) {
191
- mergeComparisonRange(resp);
192
- }
193
- const dashboardItem = { ...resp, filtersApplied: filters };
194
- const cleanedReport = await cleanDashboardItem(dashboardItem, filters, client, dateBucket);
195
- setReport(cleanedReport);
196
- dispatch({
197
- type: 'UPDATE_DASHBOARD_ITEM',
198
- id: id,
199
- data: {
200
- ...cleanedReport,
201
- triggerReload: false,
202
- },
203
- });
204
- }
205
- else {
206
- if (useReportTask) {
207
- throw new Error(resp?.errorMessage);
208
- }
209
- setError(resp?.errorMessage);
210
- }
211
- setLoading(false);
212
- }
213
- catch (e) {
214
- if (useReportTask) {
215
- internalLog('USING ITEM AS BACKUP');
216
- getChartOptions(false);
217
- }
218
- else {
219
- console.log('Error fetching chart: ', e);
220
- setError(e.message);
221
- }
222
- }
223
- };
224
- useEffect(() => {
225
- if (dashboard[id] &&
226
- !didFiltersChange(dashboard[id], filters) &&
148
+ const fetchReportHelper = async (useReportTask = true) => {
149
+ const tempReport = dashboard[item._id];
150
+ if (tempReport &&
151
+ !didFiltersChange(tempReport, filters) &&
152
+ !tempReport.triggerReload &&
227
153
  dateBucket === localDateBucket &&
228
154
  additionalProcessing?.last === localAdditionalProcessing?.last) {
229
- setReport(dashboard[id]);
230
- setInitialLoad(false);
155
+ setLoading(false);
156
+ const convertedReport = convertInternalReportToReport(tempReport);
157
+ setReport(convertedReport);
231
158
  return;
232
159
  }
160
+ setLoading(true);
161
+ const { report, error } = await fetchReport(item._id, client, useReportTask, filters, additionalProcessing, dateBucket, customFields);
162
+ dispatch({
163
+ type: 'UPDATE_DASHBOARD_ITEM',
164
+ id: item._id,
165
+ data: { ...report, triggerReload: false },
166
+ });
167
+ const convertedReport = convertInternalReportToReport(report);
168
+ setReport(convertedReport);
169
+ setLocalDateBucket(dateBucket);
170
+ setLocalAdditionalProcessing(additionalProcessing);
171
+ setError(error);
172
+ setLoading(false);
173
+ };
174
+ useEffect(() => {
233
175
  setInitialLoad(false);
234
- getChartOptions();
235
- }, [filters, id, dateBucket, additionalProcessing]);
176
+ fetchReportHelper();
177
+ }, [filters, item._id, dateBucket, additionalProcessing]);
236
178
  useEffect(() => {
237
- if (dashboard[id] && dashboard[id].triggerReload) {
238
- getChartOptions();
179
+ const tempReport = dashboard[item._id];
180
+ if (tempReport && tempReport.triggerReload) {
181
+ fetchReportHelper();
239
182
  }
240
- }, [dashboard[id]]);
183
+ }, [dashboard[item._id]]);
241
184
  return children({
242
185
  isLoading: loading || initialLoad,
243
- data: report ?? undefined,
186
+ data: report,
244
187
  error,
245
188
  dateBucket,
246
189
  });
@@ -1 +1 @@
1
- {"version":3,"file":"MetricComponent.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/MetricComponent.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AASnD,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAC3C,MAAM,EACN,OAAO,EACP,KAAK,EACL,SAAS,GACV,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CA4PhC"}
1
+ {"version":3,"file":"MetricComponent.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/MetricComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAMnD,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAC3C,MAAM,EACN,OAAO,EACP,KAAK,EACL,SAAS,GACV,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAgOhC"}
@@ -1,27 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useEffect, useState } from 'react';
3
2
  import { COMPARISON_OPTIONS } from '../../DateRangePicker/dateRangePickerUtils';
4
- import { valueFormatter } from '../../utils/valueFormatter';
5
3
  import ChartError from '../Chart/ChartError';
6
4
  import ChartSkeleton from '../Chart/ChartSkeleton';
7
5
  import { useTheme } from '../../hooks';
8
- import { usePivot } from '../../hooks/useQuill';
9
6
  export default function QuillMetricComponent({ report, onClick, error, isLoading, }) {
10
7
  const theme = useTheme();
11
8
  const dateFilter = report?.filtersApplied?.find((filter) => filter.filterType == 'date_range');
12
- const [rows, setRows] = useState(report?.rows ?? []);
13
- const pivotData = usePivot(report.id);
14
- useEffect(() => {
15
- if (pivotData.data) {
16
- setRows(pivotData.data.rows);
17
- }
18
- else if (report?.rows) {
19
- setRows(report.rows);
20
- }
21
- else {
22
- setRows([]);
23
- }
24
- }, [pivotData?.data?.rows, report?.rows]);
25
9
  const primaryMetricLabel = report?.filtersApplied?.date_range?.preset?.label;
26
10
  const comparisonKey = report?.filtersApplied?.date_range?.comparisonRange?.value;
27
11
  const comparisonLabel = COMPARISON_OPTIONS.find((opt) => opt.value === comparisonKey)?.text;
@@ -30,6 +14,7 @@ export default function QuillMetricComponent({ report, onClick, error, isLoading
30
14
  boxSizing: 'content-box',
31
15
  borderRadius: 8,
32
16
  paddingBottom: isLoading ? 0 : 30,
17
+ width: '100%',
33
18
  }, children: _jsx("div", { style: {
34
19
  width: '100%',
35
20
  height: '100%',
@@ -50,7 +35,7 @@ export default function QuillMetricComponent({ report, onClick, error, isLoading
50
35
  justifyContent: 'space-between',
51
36
  boxSizing: 'content-box',
52
37
  paddingBottom: 5,
53
- }, children: [_jsx("div", { style: {
38
+ }, children: [onClick && (_jsx("div", { style: {
54
39
  fontFamily: theme.fontFamily,
55
40
  color: theme.primaryTextColor,
56
41
  boxSizing: 'content-box',
@@ -62,7 +47,7 @@ export default function QuillMetricComponent({ report, onClick, error, isLoading
62
47
  display: 'block',
63
48
  maxWidth: '100%',
64
49
  overflow: 'hidden',
65
- }, children: report?.name }), onClick && report?.name ? (_jsx("div", { style: {
50
+ }, children: report?.name })), onClick && report?.name ? (_jsx("div", { style: {
66
51
  fontFamily: theme.fontFamily,
67
52
  color: theme.primaryTextColor,
68
53
  boxSizing: 'content-box',
@@ -75,7 +60,8 @@ export default function QuillMetricComponent({ report, onClick, error, isLoading
75
60
  }, children: 'view report →' })) : null] }), isLoading ? (_jsx(ChartSkeleton, { containerStyle: {
76
61
  maxHeight: '78px',
77
62
  height: '100%',
78
- } })) : error ? (_jsx(ChartError, {})) : rows?.length === 0 || rows[0][report.xAxisField] === null ? (_jsx("div", { style: {
63
+ } })) : error ? (_jsx("div", { children: _jsx(ChartError, { errorMessage: error }) })) : report.rows?.length === 0 ||
64
+ report.rows[0][report.xAxisField] === null ? (_jsx("div", { style: {
79
65
  display: 'flex',
80
66
  flex: '1 0 auto',
81
67
  height: '100%',
@@ -112,19 +98,9 @@ export default function QuillMetricComponent({ report, onClick, error, isLoading
112
98
  gap: 4,
113
99
  alignItems: 'baseline',
114
100
  marginRight: 'auto',
115
- }, children: [_jsx("span", { children: rows.length > 0 &&
116
- valueFormatter({
117
- value: rows[0][report.xAxisField] ?? 0,
118
- field: report.xAxisField,
119
- fields: [
120
- {
121
- field: report.xAxisField,
122
- format: report.xAxisFormat,
123
- label: report.xAxisLabel,
124
- _id: report.id || 'dummy',
125
- },
126
- ],
127
- }) }), dateFilter?.comparison && (_jsx("span", { style: {
101
+ }, children: [_jsx("span", { children: (report.rows.length > 0 &&
102
+ report.rows[0][report.xAxisField]) ??
103
+ 0 }), dateFilter?.comparison && (_jsx("span", { style: {
128
104
  fontSize: 13,
129
105
  fontWeight: '500',
130
106
  fontFamily: theme?.fontFamily,
@@ -143,19 +119,9 @@ export default function QuillMetricComponent({ report, onClick, error, isLoading
143
119
  fontWeight: '500',
144
120
  fontFamily: theme?.fontFamily,
145
121
  color: theme?.secondaryTextColor,
146
- }, children: rows.length > 0 &&
147
- valueFormatter({
148
- value: rows[0][`comparison_${report.xAxisField}`] ?? 0,
149
- field: report.xAxisField,
150
- fields: [
151
- {
152
- field: report.xAxisField,
153
- format: report.xAxisFormat,
154
- label: report.xAxisLabel,
155
- _id: report.id || 'dummy',
156
- },
157
- ],
158
- }) }), _jsx("span", { style: {
122
+ }, children: (report.rows.length > 0 &&
123
+ report.rows[0][`comparison_${report.xAxisField}`]) ??
124
+ 0 }), _jsx("span", { style: {
159
125
  fontSize: 13,
160
126
  fontWeight: '500',
161
127
  fontFamily: theme?.fontFamily,
@@ -1,15 +1,12 @@
1
1
  /// <reference types="react" />
2
- import { QuillReport } from '../../Dashboard';
2
+ import { QuillReport } from '../../models/Report';
3
3
  export default function QuillTableComponent({ report, onClick, isLoading, error, rowCount, onPageChange, onSortChange, }: {
4
4
  report: QuillReport;
5
5
  onClick?: (report: QuillReport) => void;
6
6
  isLoading?: boolean;
7
7
  error?: string;
8
8
  rowCount?: number;
9
- onPageChange?: (page: {
10
- currentPage: number;
11
- rowsPerPage: number;
12
- }) => void;
9
+ onPageChange?: (page: number) => void;
13
10
  onSortChange?: (sort: {
14
11
  field: string;
15
12
  direction: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TableComponent.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/TableComponent.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,WAAW,EAAoB,MAAM,iBAAiB,CAAC;AAKhE,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,MAAM,EACN,OAAO,EACP,SAAS,EACT,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,YAAY,GACb,EAAE;IACD,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5E,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACrE,GAAG,GAAG,CAAC,OAAO,CAuId"}
1
+ {"version":3,"file":"TableComponent.d.ts","sourceRoot":"","sources":["../../../../src/components/Dashboard/TableComponent.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAIlD,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,MAAM,EACN,OAAO,EACP,SAAS,EACT,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,YAAY,GACb,EAAE;IACD,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACrE,GAAG,GAAG,CAAC,OAAO,CAwGd"}
@@ -1,48 +1,19 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useState } from 'react';
3
3
  import QuillTable from '../QuillTable';
4
- import { quillFormat } from '../../utils/valueFormatter';
5
4
  import ChartSkeleton from '../Chart/ChartSkeleton';
6
5
  import ChartError from '../Chart/ChartError';
7
6
  import { useTheme } from '../../hooks';
8
7
  import { useExport } from '../../hooks/useExport';
9
- import { usePivot } from '../../hooks/useQuill';
10
8
  export default function QuillTableComponent({ report, onClick, isLoading, error, rowCount, onPageChange, onSortChange, }) {
11
9
  const theme = useTheme();
12
10
  const [initialLoad, setInitialLoad] = useState(true);
13
11
  const { downloadCSV } = useExport(report?.id);
14
- const pivotData = usePivot(report.id);
15
- const [rows, setRows] = useState(report?.rows ?? []);
16
- const [columns, setColumns] = useState(report?.columns ?? report?.yAxisFields ?? []);
17
- useEffect(() => {
18
- if (!report.rows || !report.columns) {
19
- return;
20
- }
21
- if (report.pivot !== null && pivotData.data) {
22
- setRows(pivotData.data.rows);
23
- setColumns(pivotData.data.columns);
24
- }
25
- else {
26
- setRows(report?.rows ?? []);
27
- setColumns(report?.columns ?? report?.yAxisFields ?? []);
28
- }
29
- }, [pivotData, report]);
30
12
  useEffect(() => {
31
13
  if (!isLoading) {
32
14
  setInitialLoad(false);
33
15
  }
34
16
  }, [isLoading]);
35
- const formattedRows = rows.map((row) => {
36
- return columns.reduce((formattedRow, column) => {
37
- // Apply the format function to each field in the row
38
- const formattedValue = quillFormat({
39
- value: row[column.field],
40
- format: column.format,
41
- });
42
- formattedRow[column.field] = formattedValue;
43
- return formattedRow;
44
- }, {});
45
- });
46
17
  return (_jsxs("div", { style: { cursor: 'pointer' }, onClick: () => onClick && onClick(report), children: [_jsxs("div", { style: {
47
18
  display: 'flex',
48
19
  flexDirection: 'row',
@@ -75,10 +46,10 @@ export default function QuillTableComponent({ report, onClick, isLoading, error,
75
46
  }, children: 'view report →' })) : null] }), initialLoad ? (_jsx(ChartSkeleton, { containerStyle: {
76
47
  width: '100%',
77
48
  height: '400px',
78
- } })) : error ? (_jsx(ChartError, { containerStyle: {
49
+ } })) : error ? (_jsx("div", { style: {
79
50
  width: '100%',
80
51
  height: '400px',
81
- } })) : (_jsx(QuillTable, { isLoading: isLoading, rows: formattedRows ?? [], rowCount: rowCount, columns: columns, rowsPerPage: 10, containerStyle: {
52
+ }, children: _jsx(ChartError, { errorMessage: error }) })) : (_jsx(QuillTable, { isLoading: isLoading, rows: report.rows ?? [], rowCount: rowCount, columns: report.columns, rowsPerPage: 10, containerStyle: {
82
53
  width: '100%',
83
54
  height: '400px',
84
55
  }, downloadCSV: () => {
@@ -87,5 +58,5 @@ export default function QuillTableComponent({ report, onClick, isLoading, error,
87
58
  onPageChange && onPageChange(page);
88
59
  }, onSortChange: (sort) => {
89
60
  onSortChange && onSortChange(sort);
90
- }, currentPage: report?.page, sort: report?.sort }))] }, report?.name));
61
+ }, currentPage: report?.pagination?.page, sort: report?.sort }))] }, report?.name));
91
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"names":[],"mappings":"AACA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAahD,MAAM,WAAW,aAAc,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;IACxC,QAAQ,EAAE,KAAK,CAAC,YAAY,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC;IACpD,KAAK,EAAE,GAAG,CAAC;CACZ;AAED,QAAA,MAAM,QAAQ,sFA6Ib,CAAC;AAEF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAahD,MAAM,WAAW,aAAc,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;IACxC,QAAQ,EAAE,KAAK,CAAC,YAAY,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC;IACpD,KAAK,EAAE,GAAG,CAAC;CACZ;AAED,QAAA,MAAM,QAAQ,sFA4Ib,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -1,11 +1,10 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /* eslint-disable react/display-name */
3
2
  import React, { useRef, useState } from 'react';
4
3
  import { HoveredValueContext, SelectedValueContext } from '../../contexts';
5
4
  import { useInternalState, useSelectOnKeyDown } from '../../hooks';
6
5
  import { ArrowDownHeadIcon } from '../../assets';
7
6
  import { mergeRefs } from '../../lib';
8
- import { constructValueToNameMapping, hasValue } from '../selectUtils';
7
+ import { constructValueToNameMapping } from '../selectUtils';
9
8
  import Modal from '../Modal';
10
9
  const Dropdown = React.forwardRef((props, ref) => {
11
10
  const { defaultValue, value, onValueChange, placeholder = 'Select...', disabled = false, icon, children, className, theme, ...other } = props;
@@ -21,8 +20,7 @@ const Dropdown = React.forwardRef((props, ref) => {
21
20
  onValueChange?.(value);
22
21
  };
23
22
  const [hoveredValue, handleKeyDown] = useSelectOnKeyDown(handleValueChange, optionValues, isFocused, setIsFocused, selectedValue);
24
- const hasSelection = hasValue(selectedValue);
25
- return (_jsxs("div", { ref: mergeRefs([dropdownRef, ref]), onKeyDown: handleKeyDown, style: {
23
+ return (_jsxs("div", { className: className, ref: mergeRefs([dropdownRef, ref]), onKeyDown: handleKeyDown, style: {
26
24
  position: 'relative',
27
25
  width: '100%',
28
26
  minWidth: '10rem',
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownItem.d.ts","sourceRoot":"","sources":["../../../../src/components/Dropdown/DropdownItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAI1C,MAAM,WAAW,iBACf,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;IACzB,KAAK,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,QAAA,MAAM,YAAY,6FAsDjB,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"DropdownItem.d.ts","sourceRoot":"","sources":["../../../../src/components/Dropdown/DropdownItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAI1C,MAAM,WAAW,iBACf,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;IACzB,KAAK,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,QAAA,MAAM,YAAY,6FAkDjB,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1,15 +1,10 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- /* eslint-disable react/display-name */
3
2
  import React, { useContext } from 'react';
4
- import { HoveredValueContext, SelectedValueContext } from '../../contexts';
3
+ import { SelectedValueContext } from '../../contexts';
5
4
  const DropdownItem = React.forwardRef((props, ref) => {
6
- const { value, text, icon, className, theme, lastItem, ...other } = props;
7
- const { selectedValue, handleValueChange } = useContext(SelectedValueContext);
8
- const { hoveredValue } = useContext(HoveredValueContext);
9
- const isActive = selectedValue === value;
10
- const isHovered = hoveredValue === value;
11
- const Icon = icon ? icon : null;
12
- return (_jsx("button", { ref: ref, style: {
5
+ const { value, text, className, theme, lastItem, ...other } = props;
6
+ const { handleValueChange } = useContext(SelectedValueContext);
7
+ return (_jsx("button", { className: className, ref: ref, style: {
13
8
  display: 'flex',
14
9
  alignItems: 'center',
15
10
  justifyContent: 'start',