@quillsql/react 2.13.47 → 2.13.49

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 (298) hide show
  1. package/dist/cjs/Chart.d.ts +2 -2
  2. package/dist/cjs/Chart.d.ts.map +1 -1
  3. package/dist/cjs/Chart.js +56 -49
  4. package/dist/cjs/ChartBuilder.d.ts +3 -2
  5. package/dist/cjs/ChartBuilder.d.ts.map +1 -1
  6. package/dist/cjs/ChartBuilder.js +172 -138
  7. package/dist/cjs/ChartEditor.d.ts +2 -2
  8. package/dist/cjs/ChartEditor.d.ts.map +1 -1
  9. package/dist/cjs/ChartEditor.js +5 -2
  10. package/dist/cjs/Context.d.ts +121 -41
  11. package/dist/cjs/Context.d.ts.map +1 -1
  12. package/dist/cjs/Context.js +449 -261
  13. package/dist/cjs/Dashboard.d.ts.map +1 -1
  14. package/dist/cjs/Dashboard.js +26 -25
  15. package/dist/cjs/DateRangePicker/QuillDateRangePicker.js +0 -3
  16. package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts +24 -10
  17. package/dist/cjs/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
  18. package/dist/cjs/DateRangePicker/dateRangePickerUtils.js +472 -96
  19. package/dist/cjs/QuillProvider.d.ts +3 -1
  20. package/dist/cjs/QuillProvider.d.ts.map +1 -1
  21. package/dist/cjs/QuillProvider.js +2 -2
  22. package/dist/cjs/ReportBuilder.d.ts.map +1 -1
  23. package/dist/cjs/ReportBuilder.js +25 -14
  24. package/dist/cjs/SQLEditor.d.ts +1 -1
  25. package/dist/cjs/SQLEditor.d.ts.map +1 -1
  26. package/dist/cjs/SQLEditor.js +51 -16
  27. package/dist/cjs/Table.d.ts.map +1 -1
  28. package/dist/cjs/Table.js +85 -14
  29. package/dist/cjs/assets/ExclamationFilledIcon.d.ts.map +1 -1
  30. package/dist/cjs/components/Chart/BarChart.d.ts.map +1 -1
  31. package/dist/cjs/components/Chart/BarChart.js +2 -1
  32. package/dist/cjs/components/Chart/CustomReferenceLine.d.ts +1 -1
  33. package/dist/cjs/components/Chart/CustomReferenceLine.d.ts.map +1 -1
  34. package/dist/cjs/components/Chart/CustomReferenceLine.js +7 -6
  35. package/dist/cjs/components/Chart/GaugeChart.d.ts +1 -1
  36. package/dist/cjs/components/Chart/GaugeChart.d.ts.map +1 -1
  37. package/dist/cjs/components/Chart/GaugeChart.js +63 -36
  38. package/dist/cjs/components/Chart/InternalChart.d.ts.map +1 -1
  39. package/dist/cjs/components/Chart/InternalChart.js +30 -33
  40. package/dist/cjs/components/Chart/LineChart.d.ts.map +1 -1
  41. package/dist/cjs/components/Chart/LineChart.js +3 -1
  42. package/dist/cjs/components/Chart/MapChart.d.ts +3 -3
  43. package/dist/cjs/components/Chart/MapChart.d.ts.map +1 -1
  44. package/dist/cjs/components/Chart/MapChart.js +62 -34
  45. package/dist/cjs/components/Chart/PieChart.d.ts +3 -1
  46. package/dist/cjs/components/Chart/PieChart.d.ts.map +1 -1
  47. package/dist/cjs/components/Chart/PieChart.js +80 -39
  48. package/dist/cjs/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  49. package/dist/cjs/components/Dashboard/DashboardFilter.js +4 -20
  50. package/dist/cjs/components/Dashboard/DashboardTemplate.d.ts.map +1 -1
  51. package/dist/cjs/components/Dashboard/DashboardTemplate.js +2 -1
  52. package/dist/cjs/components/Dashboard/DataLoader.d.ts +4 -4
  53. package/dist/cjs/components/Dashboard/DataLoader.d.ts.map +1 -1
  54. package/dist/cjs/components/Dashboard/DataLoader.js +101 -65
  55. package/dist/cjs/components/Dashboard/MetricComponent.d.ts.map +1 -1
  56. package/dist/cjs/components/Dashboard/MetricComponent.js +2 -2
  57. package/dist/cjs/components/Dashboard/util.d.ts +1 -1
  58. package/dist/cjs/components/Dashboard/util.d.ts.map +1 -1
  59. package/dist/cjs/components/Dashboard/util.js +7 -6
  60. package/dist/cjs/components/QuillMultiSelectSectionList.d.ts.map +1 -1
  61. package/dist/cjs/components/QuillMultiSelectSectionList.js +32 -22
  62. package/dist/cjs/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  63. package/dist/cjs/components/QuillMultiSelectWithCombo.js +186 -159
  64. package/dist/cjs/components/QuillSelect.d.ts.map +1 -1
  65. package/dist/cjs/components/QuillSelect.js +83 -75
  66. package/dist/cjs/components/QuillSelectWithCombo.d.ts.map +1 -1
  67. package/dist/cjs/components/QuillSelectWithCombo.js +18 -11
  68. package/dist/cjs/components/QuillTable.d.ts.map +1 -1
  69. package/dist/cjs/components/QuillTable.js +59 -61
  70. package/dist/cjs/components/ReportBuilder/FilterStack.d.ts +2 -1
  71. package/dist/cjs/components/ReportBuilder/FilterStack.d.ts.map +1 -1
  72. package/dist/cjs/components/ReportBuilder/FilterStack.js +3 -4
  73. package/dist/cjs/components/ReportBuilder/ui.d.ts +2 -2
  74. package/dist/cjs/components/ReportBuilder/ui.d.ts.map +1 -1
  75. package/dist/cjs/components/ReportBuilder/ui.js +4 -7
  76. package/dist/cjs/components/UiComponents.d.ts +1 -1
  77. package/dist/cjs/hooks/useAskQuill.d.ts.map +1 -1
  78. package/dist/cjs/hooks/useAskQuill.js +5 -1
  79. package/dist/cjs/hooks/useDashboard.d.ts +2 -2
  80. package/dist/cjs/hooks/useDashboard.d.ts.map +1 -1
  81. package/dist/cjs/hooks/useDashboard.js +160 -69
  82. package/dist/cjs/hooks/useExport.d.ts.map +1 -1
  83. package/dist/cjs/hooks/useExport.js +29 -15
  84. package/dist/cjs/hooks/useOnClickOutside.d.ts.map +1 -1
  85. package/dist/cjs/hooks/useQuill.d.ts +1 -0
  86. package/dist/cjs/hooks/useQuill.d.ts.map +1 -1
  87. package/dist/cjs/hooks/useQuill.js +22 -12
  88. package/dist/cjs/hooks/useReport.d.ts +2 -2
  89. package/dist/cjs/hooks/useReport.d.ts.map +1 -1
  90. package/dist/cjs/hooks/useReport.js +3 -4
  91. package/dist/cjs/hooks/useVirtualTables.d.ts.map +1 -1
  92. package/dist/cjs/hooks/useVirtualTables.js +16 -22
  93. package/dist/cjs/index.d.ts +2 -2
  94. package/dist/cjs/index.d.ts.map +1 -1
  95. package/dist/cjs/index.js +2 -1
  96. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts +2 -1
  97. package/dist/cjs/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  98. package/dist/cjs/internals/ReportBuilder/PivotModal.js +19 -7
  99. package/dist/cjs/models/Client.d.ts +0 -1
  100. package/dist/cjs/models/Client.d.ts.map +1 -1
  101. package/dist/cjs/models/Data.d.ts +20 -0
  102. package/dist/cjs/models/Data.d.ts.map +1 -0
  103. package/dist/cjs/models/Data.js +2 -0
  104. package/dist/cjs/models/Filter.d.ts +42 -4
  105. package/dist/cjs/models/Filter.d.ts.map +1 -1
  106. package/dist/cjs/models/Pivot.d.ts.map +1 -1
  107. package/dist/cjs/utils/astProcessing.d.ts +3 -2
  108. package/dist/cjs/utils/astProcessing.d.ts.map +1 -1
  109. package/dist/cjs/utils/astProcessing.js +28 -37
  110. package/dist/cjs/utils/client.d.ts +3 -2
  111. package/dist/cjs/utils/client.d.ts.map +1 -1
  112. package/dist/cjs/utils/client.js +38 -39
  113. package/dist/cjs/utils/columnProcessing.d.ts.map +1 -1
  114. package/dist/cjs/utils/columnProcessing.js +14 -3
  115. package/dist/cjs/utils/constants.d.ts +1 -0
  116. package/dist/cjs/utils/constants.d.ts.map +1 -1
  117. package/dist/cjs/utils/constants.js +2 -1
  118. package/dist/cjs/utils/dashboard.d.ts +3 -2
  119. package/dist/cjs/utils/dashboard.d.ts.map +1 -1
  120. package/dist/cjs/utils/dashboard.js +30 -12
  121. package/dist/cjs/utils/dataFetcher.d.ts +8 -5
  122. package/dist/cjs/utils/dataFetcher.d.ts.map +1 -1
  123. package/dist/cjs/utils/dataFetcher.js +189 -65
  124. package/dist/cjs/utils/filterProcessing.d.ts +2 -1
  125. package/dist/cjs/utils/filterProcessing.d.ts.map +1 -1
  126. package/dist/cjs/utils/filterProcessing.js +24 -38
  127. package/dist/cjs/utils/getDomain.d.ts.map +1 -1
  128. package/dist/cjs/utils/paginationProcessing.d.ts +1 -0
  129. package/dist/cjs/utils/paginationProcessing.d.ts.map +1 -1
  130. package/dist/cjs/utils/paginationProcessing.js +6 -1
  131. package/dist/cjs/utils/pivotConstructor.d.ts +2 -1
  132. package/dist/cjs/utils/pivotConstructor.d.ts.map +1 -1
  133. package/dist/cjs/utils/pivotConstructor.js +15 -9
  134. package/dist/cjs/utils/pivotProcessing.d.ts.map +1 -1
  135. package/dist/cjs/utils/pivotProcessing.js +3 -5
  136. package/dist/cjs/utils/queryConstructor.js +1 -1
  137. package/dist/cjs/utils/report.d.ts +10 -7
  138. package/dist/cjs/utils/report.d.ts.map +1 -1
  139. package/dist/cjs/utils/report.js +52 -60
  140. package/dist/cjs/utils/schema.d.ts +4 -3
  141. package/dist/cjs/utils/schema.d.ts.map +1 -1
  142. package/dist/cjs/utils/schema.js +30 -44
  143. package/dist/cjs/utils/tableProcessing.d.ts +16 -10
  144. package/dist/cjs/utils/tableProcessing.d.ts.map +1 -1
  145. package/dist/cjs/utils/tableProcessing.js +92 -90
  146. package/dist/cjs/utils/textProcessing.d.ts.map +1 -1
  147. package/dist/cjs/utils/textProcessing.js +2 -1
  148. package/dist/cjs/utils/ui.d.ts.map +1 -1
  149. package/dist/esm/Chart.d.ts +2 -2
  150. package/dist/esm/Chart.d.ts.map +1 -1
  151. package/dist/esm/Chart.js +60 -53
  152. package/dist/esm/ChartBuilder.d.ts +3 -2
  153. package/dist/esm/ChartBuilder.d.ts.map +1 -1
  154. package/dist/esm/ChartBuilder.js +173 -139
  155. package/dist/esm/ChartEditor.d.ts +2 -2
  156. package/dist/esm/ChartEditor.d.ts.map +1 -1
  157. package/dist/esm/ChartEditor.js +6 -3
  158. package/dist/esm/Context.d.ts +121 -41
  159. package/dist/esm/Context.d.ts.map +1 -1
  160. package/dist/esm/Context.js +450 -262
  161. package/dist/esm/Dashboard.d.ts.map +1 -1
  162. package/dist/esm/Dashboard.js +28 -27
  163. package/dist/esm/DateRangePicker/QuillDateRangePicker.js +0 -3
  164. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts +24 -10
  165. package/dist/esm/DateRangePicker/dateRangePickerUtils.d.ts.map +1 -1
  166. package/dist/esm/DateRangePicker/dateRangePickerUtils.js +471 -95
  167. package/dist/esm/QuillProvider.d.ts +3 -1
  168. package/dist/esm/QuillProvider.d.ts.map +1 -1
  169. package/dist/esm/QuillProvider.js +2 -2
  170. package/dist/esm/ReportBuilder.d.ts.map +1 -1
  171. package/dist/esm/ReportBuilder.js +28 -17
  172. package/dist/esm/SQLEditor.d.ts +1 -1
  173. package/dist/esm/SQLEditor.d.ts.map +1 -1
  174. package/dist/esm/SQLEditor.js +54 -19
  175. package/dist/esm/Table.d.ts.map +1 -1
  176. package/dist/esm/Table.js +88 -17
  177. package/dist/esm/assets/ExclamationFilledIcon.d.ts.map +1 -1
  178. package/dist/esm/components/Chart/BarChart.d.ts.map +1 -1
  179. package/dist/esm/components/Chart/BarChart.js +2 -1
  180. package/dist/esm/components/Chart/CustomReferenceLine.d.ts +1 -1
  181. package/dist/esm/components/Chart/CustomReferenceLine.d.ts.map +1 -1
  182. package/dist/esm/components/Chart/CustomReferenceLine.js +8 -7
  183. package/dist/esm/components/Chart/GaugeChart.d.ts +1 -1
  184. package/dist/esm/components/Chart/GaugeChart.d.ts.map +1 -1
  185. package/dist/esm/components/Chart/GaugeChart.js +65 -38
  186. package/dist/esm/components/Chart/InternalChart.d.ts.map +1 -1
  187. package/dist/esm/components/Chart/InternalChart.js +32 -35
  188. package/dist/esm/components/Chart/LineChart.d.ts.map +1 -1
  189. package/dist/esm/components/Chart/LineChart.js +3 -1
  190. package/dist/esm/components/Chart/MapChart.d.ts +3 -3
  191. package/dist/esm/components/Chart/MapChart.d.ts.map +1 -1
  192. package/dist/esm/components/Chart/MapChart.js +67 -39
  193. package/dist/esm/components/Chart/PieChart.d.ts +3 -1
  194. package/dist/esm/components/Chart/PieChart.d.ts.map +1 -1
  195. package/dist/esm/components/Chart/PieChart.js +80 -39
  196. package/dist/esm/components/Dashboard/DashboardFilter.d.ts.map +1 -1
  197. package/dist/esm/components/Dashboard/DashboardFilter.js +5 -21
  198. package/dist/esm/components/Dashboard/DashboardSection.js +2 -2
  199. package/dist/esm/components/Dashboard/DashboardTemplate.d.ts.map +1 -1
  200. package/dist/esm/components/Dashboard/DashboardTemplate.js +3 -2
  201. package/dist/esm/components/Dashboard/DataLoader.d.ts +4 -4
  202. package/dist/esm/components/Dashboard/DataLoader.d.ts.map +1 -1
  203. package/dist/esm/components/Dashboard/DataLoader.js +102 -66
  204. package/dist/esm/components/Dashboard/MetricComponent.d.ts.map +1 -1
  205. package/dist/esm/components/Dashboard/MetricComponent.js +2 -2
  206. package/dist/esm/components/Dashboard/util.d.ts +1 -1
  207. package/dist/esm/components/Dashboard/util.d.ts.map +1 -1
  208. package/dist/esm/components/Dashboard/util.js +8 -7
  209. package/dist/esm/components/QuillMultiSelectSectionList.d.ts.map +1 -1
  210. package/dist/esm/components/QuillMultiSelectSectionList.js +32 -22
  211. package/dist/esm/components/QuillMultiSelectWithCombo.d.ts.map +1 -1
  212. package/dist/esm/components/QuillMultiSelectWithCombo.js +187 -160
  213. package/dist/esm/components/QuillSelect.d.ts.map +1 -1
  214. package/dist/esm/components/QuillSelect.js +85 -77
  215. package/dist/esm/components/QuillSelectWithCombo.d.ts.map +1 -1
  216. package/dist/esm/components/QuillSelectWithCombo.js +18 -11
  217. package/dist/esm/components/QuillTable.d.ts.map +1 -1
  218. package/dist/esm/components/QuillTable.js +59 -61
  219. package/dist/esm/components/ReportBuilder/FilterStack.d.ts +2 -1
  220. package/dist/esm/components/ReportBuilder/FilterStack.d.ts.map +1 -1
  221. package/dist/esm/components/ReportBuilder/FilterStack.js +3 -4
  222. package/dist/esm/components/ReportBuilder/ui.d.ts +2 -2
  223. package/dist/esm/components/ReportBuilder/ui.d.ts.map +1 -1
  224. package/dist/esm/components/ReportBuilder/ui.js +4 -7
  225. package/dist/esm/components/UiComponents.d.ts +1 -1
  226. package/dist/esm/hooks/useAskQuill.d.ts.map +1 -1
  227. package/dist/esm/hooks/useAskQuill.js +6 -2
  228. package/dist/esm/hooks/useDashboard.d.ts +2 -2
  229. package/dist/esm/hooks/useDashboard.d.ts.map +1 -1
  230. package/dist/esm/hooks/useDashboard.js +162 -71
  231. package/dist/esm/hooks/useExport.d.ts.map +1 -1
  232. package/dist/esm/hooks/useExport.js +31 -17
  233. package/dist/esm/hooks/useOnClickOutside.d.ts.map +1 -1
  234. package/dist/esm/hooks/useQuill.d.ts +1 -0
  235. package/dist/esm/hooks/useQuill.d.ts.map +1 -1
  236. package/dist/esm/hooks/useQuill.js +23 -13
  237. package/dist/esm/hooks/useReport.d.ts +2 -2
  238. package/dist/esm/hooks/useReport.d.ts.map +1 -1
  239. package/dist/esm/hooks/useReport.js +4 -5
  240. package/dist/esm/hooks/useVirtualTables.d.ts.map +1 -1
  241. package/dist/esm/hooks/useVirtualTables.js +17 -23
  242. package/dist/esm/index.d.ts +2 -2
  243. package/dist/esm/index.d.ts.map +1 -1
  244. package/dist/esm/index.js +1 -1
  245. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts +2 -1
  246. package/dist/esm/internals/ReportBuilder/PivotModal.d.ts.map +1 -1
  247. package/dist/esm/internals/ReportBuilder/PivotModal.js +20 -8
  248. package/dist/esm/models/Client.d.ts +0 -1
  249. package/dist/esm/models/Client.d.ts.map +1 -1
  250. package/dist/esm/models/Data.d.ts +20 -0
  251. package/dist/esm/models/Data.d.ts.map +1 -0
  252. package/dist/esm/models/Data.js +1 -0
  253. package/dist/esm/models/Filter.d.ts +42 -4
  254. package/dist/esm/models/Filter.d.ts.map +1 -1
  255. package/dist/esm/models/Pivot.d.ts.map +1 -1
  256. package/dist/esm/utils/astProcessing.d.ts +3 -2
  257. package/dist/esm/utils/astProcessing.d.ts.map +1 -1
  258. package/dist/esm/utils/astProcessing.js +28 -37
  259. package/dist/esm/utils/client.d.ts +3 -2
  260. package/dist/esm/utils/client.d.ts.map +1 -1
  261. package/dist/esm/utils/client.js +38 -39
  262. package/dist/esm/utils/columnProcessing.d.ts.map +1 -1
  263. package/dist/esm/utils/columnProcessing.js +14 -3
  264. package/dist/esm/utils/constants.d.ts +1 -0
  265. package/dist/esm/utils/constants.d.ts.map +1 -1
  266. package/dist/esm/utils/constants.js +1 -0
  267. package/dist/esm/utils/dashboard.d.ts +3 -2
  268. package/dist/esm/utils/dashboard.d.ts.map +1 -1
  269. package/dist/esm/utils/dashboard.js +31 -13
  270. package/dist/esm/utils/dataFetcher.d.ts +8 -5
  271. package/dist/esm/utils/dataFetcher.d.ts.map +1 -1
  272. package/dist/esm/utils/dataFetcher.js +187 -65
  273. package/dist/esm/utils/filterProcessing.d.ts +2 -1
  274. package/dist/esm/utils/filterProcessing.d.ts.map +1 -1
  275. package/dist/esm/utils/filterProcessing.js +25 -39
  276. package/dist/esm/utils/getDomain.d.ts.map +1 -1
  277. package/dist/esm/utils/paginationProcessing.d.ts +1 -0
  278. package/dist/esm/utils/paginationProcessing.d.ts.map +1 -1
  279. package/dist/esm/utils/paginationProcessing.js +5 -0
  280. package/dist/esm/utils/pivotConstructor.d.ts +2 -1
  281. package/dist/esm/utils/pivotConstructor.d.ts.map +1 -1
  282. package/dist/esm/utils/pivotConstructor.js +16 -10
  283. package/dist/esm/utils/pivotProcessing.d.ts.map +1 -1
  284. package/dist/esm/utils/pivotProcessing.js +5 -7
  285. package/dist/esm/utils/queryConstructor.js +1 -1
  286. package/dist/esm/utils/report.d.ts +10 -7
  287. package/dist/esm/utils/report.d.ts.map +1 -1
  288. package/dist/esm/utils/report.js +53 -61
  289. package/dist/esm/utils/schema.d.ts +4 -3
  290. package/dist/esm/utils/schema.d.ts.map +1 -1
  291. package/dist/esm/utils/schema.js +30 -44
  292. package/dist/esm/utils/tableProcessing.d.ts +16 -10
  293. package/dist/esm/utils/tableProcessing.d.ts.map +1 -1
  294. package/dist/esm/utils/tableProcessing.js +94 -92
  295. package/dist/esm/utils/textProcessing.d.ts.map +1 -1
  296. package/dist/esm/utils/textProcessing.js +2 -1
  297. package/dist/esm/utils/ui.d.ts.map +1 -1
  298. package/package.json +2 -1
package/dist/esm/Table.js CHANGED
@@ -1,11 +1,13 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useContext, useMemo, useState, } from 'react';
3
- import { ClientContext, DashboardContext, DashboardFiltersContext, ReportFiltersContext, ReportsContext, } from './Context';
2
+ import { useContext, useEffect, useMemo, useState, } from 'react';
3
+ import { ClientContext, DashboardContext, DashboardFiltersContext, ReportFiltersContext, ReportsContext, SchemaDataContext, } from './Context';
4
4
  import QuillTable from './components/QuillTable';
5
5
  import { convertCustomFilter, FilterType } from './models/Filter';
6
- import { DEFAULT_PAGINATION, } from './utils/paginationProcessing';
6
+ import { DEFAULT_PAGINATION } from './utils/paginationProcessing';
7
7
  import DataLoader from './components/Dashboard/DataLoader';
8
8
  import QuillTableComponent from './components/Dashboard/TableComponent';
9
+ import { formatRowsFromReport } from './utils/report';
10
+ import { useAllReports } from './hooks/useDashboard';
9
11
  /**
10
12
  * ### Quill Table
11
13
  *
@@ -40,16 +42,16 @@ import QuillTableComponent from './components/Dashboard/TableComponent';
40
42
  const Table = ({ TableComponent = QuillTableComponent, ...props }) => {
41
43
  const data = props;
42
44
  const [dashboard] = useContext(DashboardContext);
43
- const { dashboardFilters } = useContext(DashboardFiltersContext);
44
- const [client] = useContext(ClientContext);
45
- const { reports,
46
- // reportsDispatch,
47
- // fetchIndividualReport
48
- } = useContext(ReportsContext);
49
- const report = useMemo(() => reports[props.reportId ?? ''], [reports, props.reportId]);
50
- const {
51
- // reportFiltersDispatch,
52
- reportFilters } = useContext(ReportFiltersContext);
45
+ const { dashboardFilters, dashboardCustomFilters } = useContext(DashboardFiltersContext);
46
+ const [client, clientLoading] = useContext(ClientContext);
47
+ const [schemaData] = useContext(SchemaDataContext);
48
+ const { allReportsById } = useAllReports();
49
+ const [loading, setLoading] = useState(false);
50
+ const report = useMemo(() => {
51
+ return props.reportId ? allReportsById[props.reportId] : null;
52
+ }, [allReportsById[props.reportId ?? '']]);
53
+ const { reportFilters, customReportFilters, reportFiltersDispatch } = useContext(ReportFiltersContext);
54
+ const { reports, fetchIndividualReport, reportsDispatch } = useContext(ReportsContext);
53
55
  const specificReportFilters = useMemo(() => {
54
56
  return Object.values(reportFilters[props.reportId ?? ''] ??
55
57
  (dashboard[report?.dashboardName ?? '']?.[report?.id ?? '']
@@ -61,17 +63,86 @@ const Table = ({ TableComponent = QuillTableComponent, ...props }) => {
61
63
  // return specificReportFilters.find((f) => f.filterType === 'date_range');
62
64
  // }, [specificReportFilters]);
63
65
  const userFilters = useMemo(() => {
64
- return props.filters?.filter((f) => f.filterType !== FilterType.Date);
66
+ return (props.filters
67
+ ?.filter((f) => f.filterType !== FilterType.Date)
68
+ ?.map(convertCustomFilter) ?? []).concat(customReportFilters[props.reportId ?? ''] ??
69
+ dashboardCustomFilters[report?.dashboardName ?? ''] ??
70
+ []);
65
71
  }, [props.filters]);
72
+ const fetchReportHelper = async () => {
73
+ if (!client || !props.reportId) {
74
+ return;
75
+ }
76
+ setLoading(true);
77
+ try {
78
+ await fetchIndividualReport({
79
+ reportId: props.reportId,
80
+ initiator: 'Table',
81
+ fetchRows: false,
82
+ dashboardFilters: specificReportFilters,
83
+ customFilters: customReportFilters[props.reportId] ??
84
+ dashboardCustomFilters[report?.dashboardName ?? ''],
85
+ // dateBucket,
86
+ customFields: schemaData.customFields,
87
+ });
88
+ }
89
+ catch (error) {
90
+ console.log('Error fetching chart: ' + error);
91
+ }
92
+ finally {
93
+ setLoading(false);
94
+ }
95
+ };
96
+ // TODO: move this into a hook for all report scope operations
97
+ useEffect(() => {
98
+ if (props.reportId === undefined ||
99
+ props.reportId === '' ||
100
+ clientLoading) {
101
+ return;
102
+ }
103
+ if (report) {
104
+ if (dashboardFilters[report.dashboardName]) {
105
+ reportFiltersDispatch({
106
+ type: 'ADD_REPORT_FILTERS',
107
+ id: props.reportId,
108
+ data: Object.values(dashboardFilters[report.dashboardName] ?? {}).map((f) => ({
109
+ filter: f.filter,
110
+ loading: false,
111
+ })),
112
+ });
113
+ }
114
+ reportsDispatch({
115
+ type: 'ADD_REPORT',
116
+ id: props.reportId,
117
+ data: report,
118
+ });
119
+ setLoading(false);
120
+ }
121
+ else if (!reports[props.reportId]) {
122
+ fetchReportHelper();
123
+ return;
124
+ }
125
+ setLoading(false);
126
+ }, [
127
+ !!report,
128
+ dashboardFilters,
129
+ clientLoading,
130
+ !reports[props.reportId ?? ''],
131
+ ]);
66
132
  const [page, setPage] = useState(0);
67
133
  if ('rows' in data && 'columns' in data) {
68
- return (_jsx(QuillTable, { hideCSVDownloadButton: data.hideCSVDownloadButton, columns: data.columns, rows: data.rows, className: data.className, containerStyle: data.containerStyle, LoadingComponent: data.LoadingComponent, isLoading: data.isLoading, downloadCSV: data.downloadCSV, currentPage: page, onPageChange: setPage }));
134
+ return (_jsx(QuillTable, { hideCSVDownloadButton: data.hideCSVDownloadButton, columns: data.columns, rows: data.rows, className: data.className, containerStyle: data.containerStyle, LoadingComponent: data.LoadingComponent, isLoading: data.isLoading || loading, downloadCSV: data.downloadCSV, currentPage: page, onPageChange: setPage }));
69
135
  }
70
136
  if (!client || !report) {
71
137
  return null;
72
138
  }
73
- return (_jsx(DataLoader, { item: report, filters: specificReportFilters, userFilters: userFilters?.map(convertCustomFilter), additionalProcessing: {
139
+ return (_jsx(DataLoader, { item: report, filters: specificReportFilters, userFilters: userFilters, additionalProcessing: {
74
140
  page: DEFAULT_PAGINATION,
75
- }, children: ({ isLoading, error, onPageChange, onSortChange, data, rowCount, rowCountIsLoading, }) => _jsx(TableComponent, { report: data, isLoading: isLoading, error: error, rowCount: rowCount ?? data?.rowCount ?? data?.rows?.length ?? 0, rowCountIsLoading: rowCountIsLoading, onPageChange: (page) => onPageChange(page), onSortChange: (sort) => onSortChange(sort), hideName: true }) }));
141
+ }, children: ({ isLoading, error, onPageChange, onSortChange, data, rowCount, rowCountIsLoading, }) => (_jsx(TableComponent, { report: {
142
+ ...data,
143
+ rows: ['table', 'metric'].includes(data.chartType)
144
+ ? data.rows
145
+ : formatRowsFromReport(data),
146
+ }, isLoading: isLoading, error: error, rowCount: rowCount ?? data?.rowCount ?? data?.rows?.length ?? 0, rowCountIsLoading: rowCountIsLoading, onPageChange: (page) => onPageChange(page), onSortChange: (sort) => onSortChange(sort), hideName: true })) }));
76
147
  };
77
148
  export default Table;
@@ -1 +1 @@
1
- {"version":3,"file":"ExclamationFilledIcon.d.ts","sourceRoot":"","sources":["../../../src/assets/ExclamationFilledIcon.tsx"],"names":[],"mappings":"AAGA,QAAA,MAAM,qBAAqB;;6CAa1B,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"ExclamationFilledIcon.d.ts","sourceRoot":"","sources":["../../../src/assets/ExclamationFilledIcon.tsx"],"names":[],"mappings":"AAEA,QAAA,MAAM,qBAAqB;;6CAa1B,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"BarChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/BarChart.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAC/B,MAAM,EACN,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,SAAS,EACT,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,EACzB,mBAAmB,EACnB,UAAU,EACV,cAAc,GACf,EAAE;IACD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,cAAc,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAC,EAAE,CAAC;CACrD,2CAiNA"}
1
+ {"version":3,"file":"BarChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/BarChart.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAC/B,MAAM,EACN,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,SAAS,EACT,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,EACzB,mBAAmB,EACnB,UAAU,EACV,cAAc,GACf,EAAE;IACD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;CACvD,2CA8NA"}
@@ -96,5 +96,6 @@ export default function BarChart({ colors, colorMap, yAxisFields, data, containe
96
96
  selectColor(elem, colors.length >= yAxisFields.length / (comparison ? 2 : 1)
97
97
  ? colors
98
98
  : generateArrayFromColor(colors.slice(0, 2), yAxisFields.length), yAxisFields.findIndex((field) => field.field === elem.field?.replace('comparison_', ''))), isAnimationActive: isAnimationActive }, elem.field));
99
- }), referenceLines && (referenceLines.map(({ label, query }) => (_jsx(Customized, { component: (props) => _jsx(CustomReferenceLine, { ...props, referenceLine: query, label: label }) }, label))))] }) }) }));
99
+ }), referenceLines &&
100
+ referenceLines.map(({ label, query }) => (_jsx(Customized, { component: (props) => (_jsx(CustomReferenceLine, { ...props, referenceLine: query, label: label })) }, label)))] }) }) }));
100
101
  }
@@ -1,2 +1,2 @@
1
- export default function CustomReferenceLine({ xAxisMap, yAxisMap, referenceLine, label, color }: any): import("react/jsx-runtime").JSX.Element | null;
1
+ export default function CustomReferenceLine({ xAxisMap, yAxisMap, referenceLine, label, color, }: any): import("react/jsx-runtime").JSX.Element | null;
2
2
  //# sourceMappingURL=CustomReferenceLine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CustomReferenceLine.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/CustomReferenceLine.tsx"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,GAAG,kDAwEnG"}
1
+ {"version":3,"file":"CustomReferenceLine.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/CustomReferenceLine.tsx"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,KAAK,EACL,KAAK,GACN,EAAE,GAAG,kDA6EL"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { REFERENCE_LINE } from "../../utils/constants";
3
- export default function CustomReferenceLine({ xAxisMap, yAxisMap, referenceLine, label, color }) {
2
+ import { REFERENCE_LINE } from '../../utils/constants';
3
+ export default function CustomReferenceLine({ xAxisMap, yAxisMap, referenceLine, label, color, }) {
4
4
  const xAxisKey = Object.keys(xAxisMap)[0];
5
5
  const yAxisKey = Object.keys(yAxisMap)[0];
6
6
  if (!xAxisKey || !yAxisKey)
@@ -11,13 +11,14 @@ export default function CustomReferenceLine({ xAxisMap, yAxisMap, referenceLine,
11
11
  const y1 = yScale(referenceLine[0]);
12
12
  const y2 = yScale(referenceLine[1]);
13
13
  const textY = yScale(referenceLine[referenceLine.length - 1]) - 5;
14
- return (_jsxs(_Fragment, { children: [referenceLine.length === 2 &&
15
- _jsx("line", { x1: xMin, y1: y1, x2: xMax, y2: y2, stroke: color || "gray", strokeDasharray: "5 5", strokeWidth: 1, pointerEvents: "none" }), referenceLine.length > 2 &&
14
+ return (_jsxs(_Fragment, { children: [referenceLine.length === 2 && (_jsx("line", { x1: xMin, y1: y1, x2: xMax, y2: y2, stroke: color || 'gray', strokeDasharray: "5 5", strokeWidth: 1, pointerEvents: "none" })), referenceLine.length > 2 &&
16
15
  referenceLine.slice(1).map((point, index) => {
17
16
  const x1 = xMin + (xMax - xMin) * (index / (referenceLine.length - 1));
18
17
  const x2 = xMin + (xMax - xMin) * ((index + 1) / (referenceLine.length - 1));
19
- return (_jsx("line", { x1: x1, y1: yScale(referenceLine[index]), x2: x2, y2: yScale(point), stroke: color || "gray", strokeDasharray: "5 5", strokeWidth: 1, pointerEvents: "none" }, index));
20
- }), _jsxs("text", { x: xMax - 5, y: textY, fontSize: "12", fill: color || "gray",
18
+ return (_jsx("line", { x1: x1, y1: yScale(referenceLine[index]), x2: x2, y2: yScale(point), stroke: color || 'gray', strokeDasharray: "5 5", strokeWidth: 1, pointerEvents: "none" }, index));
19
+ }), _jsxs("text", { x: xMax - 5, y: textY, fontSize: "12", fill: color || 'gray',
21
20
  // stroke="white"
22
- strokeWidth: 0.4, strokeLinejoin: "round", paintOrder: "stroke fill", fontWeight: "light", textAnchor: "end", z: 10000, children: [label === REFERENCE_LINE ? '' : label, " ", referenceLine.length > 2 ? '' : `(${referenceLine[0] === referenceLine[1] ? referenceLine[0] : referenceLine.join(", ")})`] })] }));
21
+ strokeWidth: 0.4, strokeLinejoin: "round", paintOrder: "stroke fill", fontWeight: "light", textAnchor: "end", z: 10000, children: [label === REFERENCE_LINE ? '' : label, ' ', referenceLine.length > 2
22
+ ? ''
23
+ : `(${referenceLine[0] === referenceLine[1] ? referenceLine[0] : referenceLine.join(', ')})`] })] }));
23
24
  }
@@ -1,5 +1,5 @@
1
1
  import 'd3-transition';
2
- import { AxisFormat } from "../../Dashboard";
2
+ import { AxisFormat } from '../../Dashboard';
3
3
  export default function GaugeChart({ data, xAxisField, xAxisFormat, containerStyle, colors, isAnimationActive, }: {
4
4
  data: any[];
5
5
  xAxisField: string;
@@ -1 +1 @@
1
- {"version":3,"file":"GaugeChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/GaugeChart.tsx"],"names":[],"mappings":"AAOA,OAAO,eAAe,CAAC;AAGvB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,IAAI,EACJ,UAAU,EACV,WAAW,EACX,cAAc,EACd,MAAM,EACN,iBAAwB,GACzB,EAAE;IACD,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,2CAeA"}
1
+ {"version":3,"file":"GaugeChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/GaugeChart.tsx"],"names":[],"mappings":"AAOA,OAAO,eAAe,CAAC;AAGvB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,IAAI,EACJ,UAAU,EACV,WAAW,EACX,cAAc,EACd,MAAM,EACN,iBAAwB,GACzB,EAAE;IACD,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,2CAiBA"}
@@ -1,19 +1,19 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useEffect, useRef, useState } from "react";
2
+ import { useEffect, useRef, useState } from 'react';
3
3
  // import { arc } from 'd3-shape';
4
4
  // import { interpolate } from 'd3-interpolate';
5
5
  // import { select } from 'd3-selection';
6
6
  // These two are just for type checking
7
7
  import 'd3-transition';
8
- import { axisFormatter } from "../../utils/axisFormatter";
8
+ import { axisFormatter } from '../../utils/axisFormatter';
9
9
  export default function GaugeChart({ data, xAxisField, xAxisFormat, containerStyle, colors, isAnimationActive = true, }) {
10
- const percentage = parseFloat(data[0][xAxisField]) || 0;
10
+ const percentage = parseFloat(data[0]?.[xAxisField]) || 0;
11
11
  const normalizedPercentage = ['whole_number', 'two_decimal_places'].includes(xAxisFormat)
12
12
  ? Math.max(Math.min(percentage / 100, 1), 0)
13
13
  : Math.max(Math.min(percentage, 1), 0);
14
14
  return (_jsx(D3Gauge, { percentage: normalizedPercentage, xAxisFormat: xAxisFormat, containerStyle: { ...containerStyle }, colors: colors, isAnimationActive: isAnimationActive }));
15
15
  }
16
- function D3Gauge({ percentage, containerStyle, xAxisFormat, colors, isAnimationActive }) {
16
+ function D3Gauge({ percentage, containerStyle, xAxisFormat, colors, isAnimationActive, }) {
17
17
  const containerRef = useRef(null);
18
18
  const svgRef = useRef(null);
19
19
  const gaugeGroupRef = useRef(null);
@@ -32,13 +32,13 @@ function D3Gauge({ percentage, containerStyle, xAxisFormat, colors, isAnimationA
32
32
  useEffect(() => {
33
33
  import('d3-shape').then(({ arc }) => {
34
34
  setArc(() => arc);
35
- }).catch(err => console.error('Failed to load d3-shape:', err));
35
+ });
36
36
  import('d3-interpolate').then(({ interpolate }) => {
37
37
  setInterpolate(() => interpolate);
38
- }).catch(err => console.error('Failed to load d3-interpolate:', err));
38
+ });
39
39
  import('d3-selection').then(({ select }) => {
40
40
  setSelect(() => select);
41
- }).catch(err => console.error('Failed to load d3-selection:', err));
41
+ });
42
42
  }, []);
43
43
  // --- Initialization ---
44
44
  useEffect(() => {
@@ -61,16 +61,19 @@ function D3Gauge({ percentage, containerStyle, xAxisFormat, colors, isAnimationA
61
61
  gaugeGroupRef.current.append('path').attr('class', `arc-seg seg${i}`);
62
62
  }
63
63
  // Create needle outline and needle.
64
- needleOutlineRef.current = gaugeGroupRef.current.append('line')
64
+ needleOutlineRef.current = gaugeGroupRef.current
65
+ .append('line')
65
66
  .attr('stroke', 'white')
66
67
  .attr('stroke-width', 8)
67
68
  .attr('stroke-linecap', 'round');
68
- needleRef.current = gaugeGroupRef.current.append('line')
69
+ needleRef.current = gaugeGroupRef.current
70
+ .append('line')
69
71
  .attr('stroke', 'black')
70
72
  .attr('stroke-width', 4)
71
73
  .attr('stroke-linecap', 'round');
72
74
  // Create text label.
73
- textRef.current = gaugeGroupRef.current.append('text')
75
+ textRef.current = gaugeGroupRef.current
76
+ .append('text')
74
77
  .attr('class', 'gauge-label')
75
78
  .attr('text-anchor', 'middle')
76
79
  .attr('fill', '#000')
@@ -107,21 +110,31 @@ function D3Gauge({ percentage, containerStyle, xAxisFormat, colors, isAnimationA
107
110
  // Vertical offset to visually center the 270° arc.
108
111
  const verticalOffset = gaugeHeight * 0.05;
109
112
  // Update viewBox so our internal coordinates scale.
110
- svgRef.current
111
- .attr('viewBox', `0 0 ${gaugeWidth} ${gaugeHeight}`);
113
+ svgRef.current.attr('viewBox', `0 0 ${gaugeWidth} ${gaugeHeight}`);
112
114
  // Center the gauge group.
113
115
  gaugeGroupRef.current.attr('transform', `translate(${gaugeWidth / 2}, ${gaugeHeight / 2 + verticalOffset})`);
114
116
  // Draw the arc segments.
115
117
  const segments = [
116
- { start: startAngle, end: startAngle + totalAngle / 3, color: colors[1] || 'red' },
117
- { start: startAngle + totalAngle / 3, end: startAngle + (2 * totalAngle) / 3, color: colors[3] || 'yellow' },
118
- { start: startAngle + (2 * totalAngle) / 3, end: startAngle + totalAngle, color: colors[2] || 'green' },
118
+ {
119
+ start: startAngle,
120
+ end: startAngle + totalAngle / 3,
121
+ color: colors[1] || 'red',
122
+ },
123
+ {
124
+ start: startAngle + totalAngle / 3,
125
+ end: startAngle + (2 * totalAngle) / 3,
126
+ color: colors[3] || 'yellow',
127
+ },
128
+ {
129
+ start: startAngle + (2 * totalAngle) / 3,
130
+ end: startAngle + totalAngle,
131
+ color: colors[2] || 'green',
132
+ },
119
133
  ];
120
- const arcGenerator = arc()
121
- .innerRadius(innerRadius)
122
- .outerRadius(radius);
134
+ const arcGenerator = arc().innerRadius(innerRadius).outerRadius(radius);
123
135
  segments.forEach((seg, i) => {
124
- gaugeGroupRef.current?.select(`.arc-seg.seg${i}`)
136
+ gaugeGroupRef.current
137
+ ?.select(`.arc-seg.seg${i}`)
125
138
  .attr('d', arcGenerator({
126
139
  innerRadius,
127
140
  outerRadius: radius,
@@ -144,47 +157,53 @@ function D3Gauge({ percentage, containerStyle, xAxisFormat, colors, isAnimationA
144
157
  const newAngle = startAngle + totalAngle * percentage - Math.PI / 2;
145
158
  const endpoints = calcEndpoints(newAngle);
146
159
  // Update text font-size relative to radius.
147
- textRef.current.attr('font-size', radius / 3)
160
+ textRef.current
161
+ .attr('font-size', radius / 3)
148
162
  // Position text below the gauge center.
149
163
  .attr('y', radius * 0.1);
150
164
  if (isAnimationActive) {
151
165
  const prevAngle = startAngle + totalAngle * previousPercentageRef.current - Math.PI / 2;
152
166
  const angleInterpolator = interpolate(prevAngle, newAngle);
153
167
  const textInterpolator = interpolate(previousPercentageRef.current, percentage);
154
- needleRef.current.interrupt()
168
+ needleRef.current
169
+ .interrupt()
155
170
  .transition()
156
171
  .duration(1000)
157
- .tween("needle", function () {
172
+ .tween('needle', function () {
158
173
  return function (t) {
159
174
  const currentAngle = angleInterpolator(t);
160
175
  const { x1, y1, x2, y2 } = calcEndpoints(currentAngle);
161
- needleRef.current
162
- .attr("x1", x1)
163
- .attr("y1", y1)
164
- .attr("x2", x2)
165
- .attr("y2", y2);
166
- needleOutlineRef.current
167
- .attr("x1", x1)
168
- .attr("y1", y1)
169
- .attr("x2", x2)
170
- .attr("y2", y2);
176
+ needleRef
177
+ .current.attr('x1', x1)
178
+ .attr('y1', y1)
179
+ .attr('x2', x2)
180
+ .attr('y2', y2);
181
+ needleOutlineRef
182
+ .current.attr('x1', x1)
183
+ .attr('y1', y1)
184
+ .attr('x2', x2)
185
+ .attr('y2', y2);
171
186
  const currentPercentage = textInterpolator(t);
172
187
  const percentText = axisFormatter({
173
- value: xAxisFormat === 'percent' ? currentPercentage : currentPercentage * 100,
188
+ value: xAxisFormat === 'percent'
189
+ ? currentPercentage
190
+ : currentPercentage * 100,
174
191
  field: 'amount',
175
- fields: [{ field: 'amount', format: xAxisFormat }]
192
+ fields: [{ field: 'amount', format: xAxisFormat }],
176
193
  }) + (xAxisFormat === 'percent' ? '' : '%');
177
194
  textRef.current?.text(percentText);
178
195
  };
179
196
  });
180
197
  }
181
198
  else {
182
- needleRef.current.interrupt()
199
+ needleRef.current
200
+ .interrupt()
183
201
  .attr('x1', endpoints.x1)
184
202
  .attr('y1', endpoints.y1)
185
203
  .attr('x2', endpoints.x2)
186
204
  .attr('y2', endpoints.y2);
187
- needleOutlineRef.current.interrupt()
205
+ needleOutlineRef.current
206
+ .interrupt()
188
207
  .attr('x1', endpoints.x1)
189
208
  .attr('y1', endpoints.y1)
190
209
  .attr('x2', endpoints.x2)
@@ -192,13 +211,21 @@ function D3Gauge({ percentage, containerStyle, xAxisFormat, colors, isAnimationA
192
211
  const percentText = axisFormatter({
193
212
  value: xAxisFormat === 'percent' ? percentage : percentage * 100,
194
213
  field: 'amount',
195
- fields: [{ field: 'amount', format: xAxisFormat }]
214
+ fields: [{ field: 'amount', format: xAxisFormat }],
196
215
  }) + (xAxisFormat === 'percent' ? '' : '%');
197
216
  textRef.current.text(percentText);
198
217
  }
199
218
  previousPercentageRef.current = percentage;
200
219
  firstMountRef.current = false;
201
- }, [percentage, colors, isAnimationActive, xAxisFormat, select, arc, interpolate]);
220
+ }, [
221
+ percentage,
222
+ colors,
223
+ isAnimationActive,
224
+ xAxisFormat,
225
+ select,
226
+ arc,
227
+ interpolate,
228
+ ]);
202
229
  // Use ResizeObserver to trigger updates on container size changes.
203
230
  useEffect(() => {
204
231
  if (!containerRef.current)
@@ -1 +1 @@
1
- {"version":3,"file":"InternalChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/InternalChart.tsx"],"names":[],"mappings":"AA4BA,OAAO,EAAgB,UAAU,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,WAAW,EAAkB,MAAM,qBAAqB,CAAC;AAOlE,wBAAgB,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,WAiH5D;AAyFD,MAAM,MAAM,YAAY,GAAG;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,sBAAsB,CAAC,EAAE,MAAM,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,MAAM,EACN,MAAM,EACN,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,2BAAmC,EACnC,yBAAgC,EAChC,wBAAgC,EAChC,sBAAgC,EAChC,sBAAsB,EACtB,mBAAmB,EACnB,mBAA2B,EAC3B,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,gBAAuC,EACvC,eAAsC,EACtC,oBAAyD,EACzD,wBAA+C,EAC/C,eAAsC,EACtC,OAAO,EACP,uBAAuB,EACvB,mBAAmB,EACnB,OAAO,EACP,KAAK,EACL,OAAO,EACP,oBAAoB,EACpB,aAAa,GACd,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG;IAChC,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uBAAuB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC7D,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,2CAudA"}
1
+ {"version":3,"file":"InternalChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/InternalChart.tsx"],"names":[],"mappings":"AAmCA,OAAO,EAAgB,UAAU,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,WAAW,EAAkB,MAAM,qBAAqB,CAAC;AAQlE,wBAAgB,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,WAiH5D;AAyFD,MAAM,MAAM,YAAY,GAAG;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,sBAAsB,CAAC,EAAE,MAAM,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,MAAM,EACN,MAAM,EACN,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,2BAAmC,EACnC,yBAAgC,EAChC,wBAAgC,EAChC,sBAAgC,EAChC,sBAAsB,EACtB,mBAAmB,EACnB,mBAA2B,EAC3B,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,gBAAuC,EACvC,eAA+C,EAC/C,oBAAyD,EACzD,wBAA+C,EAC/C,eAAsC,EACtC,OAAO,EACP,uBAAuB,EACvB,mBAAmB,EACnB,OAAO,EACP,KAAK,EACL,OAAO,EACP,oBAAoB,EACpB,aAAa,GACd,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG;IAChC,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uBAAuB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC7D,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,2CA+dA"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useState, useEffect, useContext, useMemo, useRef, useLayoutEffect } from 'react';
2
+ import { useState, useEffect, useContext, useMemo, useRef, useLayoutEffect, } from 'react';
3
3
  import { differenceInHours } from 'date-fns';
4
4
  import { DashboardConfigContext, ReportFiltersContext, ThemeContext, } from '../../Context';
5
5
  import { QuillLoadingSkeleton } from '../../components/Chart/ChartSkeleton';
@@ -9,13 +9,13 @@ import {
9
9
  DashboardFilterType as DashboardFilterVariant, FilterType, } from '../../models/Filter';
10
10
  import { applyCustomFilterToDashDateFilter } from '../../utils/filterProcessing';
11
11
  import { DashboardFilter } from '../../components/Dashboard/DashboardFilter';
12
- import { QuillSelectComponent } from '../../components/QuillSelect';
13
12
  import { QuillDateRangePicker } from '../../DateRangePicker/QuillDateRangePicker';
14
13
  import QuillMetricComponent from '../../components/Dashboard/MetricComponent';
15
- import { COMPARISON_RANGE, defaultOptionsV2, getRangeFromPresetOptions, PRIMARY_RANGE, } from '../../DateRangePicker/dateRangePickerUtils';
14
+ import { COMPARISON_RANGE, convertPresetOptionsToSelectableList, defaultOptionsV2, getRangeFromPresetOptions, } from '../../DateRangePicker/dateRangePickerUtils';
16
15
  import { ChartDisplay } from '../../Chart';
17
16
  import { TEMP_REPORT_ID } from '../../models/Report';
18
17
  import { QuillMultiSelectComponentWithCombo } from '../QuillMultiSelectWithCombo';
18
+ import { QuillSelectComponentWithCombo } from '../QuillSelectWithCombo';
19
19
  function areDatesNearby(date1, date2) {
20
20
  return Math.abs(differenceInHours(date1, date2)) < 24;
21
21
  }
@@ -160,7 +160,7 @@ const TogglePrimitive = ({ value, onClick, style, disabled, }) => {
160
160
  color: '#607D8B',
161
161
  } }))] }));
162
162
  };
163
- export default function InternalChart({ report, colors, className, containerStyle, isAnimationActive, hideXAxis, hideYAxis, hideCartesianGrid, hideHorizontalCartesianGrid = false, hideVerticalCartesianGrid = true, hideSubsequentXAxisTicks = false, cartesianGridLineStyle = 'solid', cartesianGridLineColor, comparisonLineStyle, hideDateRangeFilter = false, filtersEnabled, setFiltersEnabled, mapColorsToFields, LoadingComponent = QuillLoadingSkeleton, SelectComponent = QuillSelectComponent, MultiSelectComponent = QuillMultiSelectComponentWithCombo, DateRangePickerComponent = QuillDateRangePicker, MetricComponent = QuillMetricComponent, filters, onDashboardFilterChange, onClickChartElement, loading, error, isAdmin, filterToggleDisabled, layoutChanged, }) {
163
+ export default function InternalChart({ report, colors, className, containerStyle, isAnimationActive, hideXAxis, hideYAxis, hideCartesianGrid, hideHorizontalCartesianGrid = false, hideVerticalCartesianGrid = true, hideSubsequentXAxisTicks = false, cartesianGridLineStyle = 'solid', cartesianGridLineColor, comparisonLineStyle, hideDateRangeFilter = false, filtersEnabled, setFiltersEnabled, mapColorsToFields, LoadingComponent = QuillLoadingSkeleton, SelectComponent = QuillSelectComponentWithCombo, MultiSelectComponent = QuillMultiSelectComponentWithCombo, DateRangePickerComponent = QuillDateRangePicker, MetricComponent = QuillMetricComponent, filters, onDashboardFilterChange, onClickChartElement, loading, error, isAdmin, filterToggleDisabled, layoutChanged, }) {
164
164
  const { reportFilters } = useContext(ReportFiltersContext);
165
165
  const { dashboardConfig } = useContext(DashboardConfigContext);
166
166
  const currentReportFilters = useMemo(() => {
@@ -184,28 +184,12 @@ export default function InternalChart({ report, colors, className, containerStyl
184
184
  });
185
185
  }, [reportFilters, report?.id]);
186
186
  const reportDateFilter = useMemo(() => {
187
- return Object.values(reportFilters[report?.id ?? TEMP_REPORT_ID] ?? {}).find((f) => f.filter.filterType === 'date_range')?.filter;
187
+ return Object.values(reportFilters[report?.id ?? TEMP_REPORT_ID] ?? {}).find((f) => f.filter.filterType === 'date_range')
188
+ ?.filter;
188
189
  }, [reportFilters, report?.id]);
189
190
  const presetOptions = useMemo(() => {
190
191
  return reportDateFilter
191
- ? (reportDateFilter.presetRanges?.map((elem) => {
192
- if (!elem.isStatic) {
193
- return {
194
- label: elem.label,
195
- value: elem.value,
196
- startDate: PRIMARY_RANGE[elem.value]?.startDate ??
197
- PRIMARY_RANGE['LAST_30_DAYS'].startDate,
198
- endDate: PRIMARY_RANGE[elem.value]?.endDate ??
199
- PRIMARY_RANGE['LAST_30_DAYS'].endDate,
200
- };
201
- }
202
- return {
203
- label: elem.label,
204
- value: elem.value,
205
- startDate: new Date(elem.startDate),
206
- endDate: new Date(elem.endDate),
207
- };
208
- }) ?? defaultOptionsV2)
192
+ ? convertPresetOptionsToSelectableList(reportDateFilter.presetOptions ?? [], reportDateFilter.defaultPresetRanges ?? [])
209
193
  : defaultOptionsV2;
210
194
  }, [reportDateFilter]);
211
195
  // const userFilters = useMemo(() => {
@@ -221,10 +205,7 @@ export default function InternalChart({ report, colors, className, containerStyl
221
205
  useEffect(() => {
222
206
  if (reportDateFilter) {
223
207
  // Filter for custom date filter that applies to the report's dateField
224
- const customDateFilter = filters?.find((f) => f.filterType === FilterType.Date
225
- // FIXME: this is the correct way to do it but the demo has a hardcoded filter field
226
- // && f.field === report?.dateField?.field && f.table === report?.dateField?.table,
227
- );
208
+ const customDateFilter = filters?.find((f) => f.filterType === FilterType.Date);
228
209
  if (!customDateFilter) {
229
210
  return;
230
211
  }
@@ -343,8 +324,8 @@ export default function InternalChart({ report, colors, className, containerStyl
343
324
  const handleResize = () => {
344
325
  measureItems();
345
326
  };
346
- window.addEventListener("resize", handleResize);
347
- return () => window.removeEventListener("resize", handleResize);
327
+ window.addEventListener('resize', handleResize);
328
+ return () => window.removeEventListener('resize', handleResize);
348
329
  }, [currentReportFilters, filtersEnabled, layoutChanged]);
349
330
  if (error) {
350
331
  return (_jsx("div", { style: containerStyle, className: className, children: _jsx(ChartError, { errorMessage: error }) }));
@@ -402,7 +383,9 @@ export default function InternalChart({ report, colors, className, containerStyl
402
383
  // If filters are expanded, show all filters, otherwise show only the first row
403
384
  maxHeight: filtersExpanded ? undefined : 108,
404
385
  minWidth: 500,
405
- paddingBottom: !filtersExpanded && filtersOverflowing && filtersEnabled ? 116 : 0,
386
+ paddingBottom: !filtersExpanded && filtersOverflowing && filtersEnabled
387
+ ? 116
388
+ : 0,
406
389
  position: 'relative',
407
390
  }, children: [filtersEnabled &&
408
391
  currentReportFilters.map((filter, index) => (_jsx(DashboardFilter, { filter: {
@@ -413,7 +396,9 @@ export default function InternalChart({ report, colors, className, containerStyl
413
396
  ...filterValues[filter.filter.label],
414
397
  }, isLoading: filter.loading, onChangeFilter: updateFilter, theme: theme, SelectComponent: SelectComponent, MultiSelectComponent: MultiSelectComponent, DateRangePickerComponent: DateRangePickerComponent, disabled: !filtersEnabled, containerStyle: {
415
398
  // display: !filtersExpanded && visibleFilters[index] ? 'none' : 'inline',
416
- visibility: !filtersExpanded && visibleFilters[index] ? 'hidden' : 'visible',
399
+ visibility: !filtersExpanded && visibleFilters[index]
400
+ ? 'hidden'
401
+ : 'visible',
417
402
  } }, index))), filtersOverflowing && filtersEnabled && (_jsx("div", { style: {
418
403
  width: '100%',
419
404
  position: filtersExpanded ? 'static' : 'absolute',
@@ -462,9 +447,21 @@ export default function InternalChart({ report, colors, className, containerStyl
462
447
  display: 'flex',
463
448
  }, children: _jsx(MetricComponent, { error: error, isLoading: loading, report: report, children: report?.rows?.[0]?.[report.xAxisField] }) })), report.chartType !== 'table' && report.chartType !== 'metric' && (_jsx(ChartDisplay, { config: report, containerStyle: {
464
449
  minHeight: 300,
465
- width: ['US map', 'World map'].includes(report.chartType) ? '70%' : ['gauge'].includes(report.chartType) ? undefined : '100%',
466
- height: ['US map', 'World map'].includes(report.chartType) ? 'fit-content' : ['gauge'].includes(report.chartType) ? 500 : undefined,
467
- marginLeft: ['gauge'].includes(report.chartType) ? 'undefined' : 'auto',
468
- marginRight: ['gauge'].includes(report.chartType) ? 'undefined' : 'auto',
450
+ width: ['US map', 'World map'].includes(report.chartType)
451
+ ? '70%'
452
+ : ['gauge'].includes(report.chartType)
453
+ ? undefined
454
+ : '100%',
455
+ height: ['US map', 'World map'].includes(report.chartType)
456
+ ? 'fit-content'
457
+ : ['gauge'].includes(report.chartType)
458
+ ? 500
459
+ : undefined,
460
+ marginLeft: ['gauge'].includes(report.chartType)
461
+ ? 'undefined'
462
+ : 'auto',
463
+ marginRight: ['gauge'].includes(report.chartType)
464
+ ? 'undefined'
465
+ : 'auto',
469
466
  }, reportId: report.id, colors: colors, className: className, hideXAxis: hideXAxis, hideYAxis: hideYAxis, hideCartesianGrid: hideCartesianGrid, hideHorizontalCartesianGrid: hideHorizontalCartesianGrid, hideVerticalCartesianGrid: hideVerticalCartesianGrid, hideSubsequentXAxisTicks: hideSubsequentXAxisTicks, cartesianGridLineStyle: cartesianGridLineStyle, cartesianGridLineColor: cartesianGridLineColor, hideDateRangeFilter: hideDateRangeFilter, comparisonLineStyle: comparisonLineStyle, isAnimationActive: isAnimationActive, loading: loading, scrollable: true, colorMap: colorMap, LoadingComponent: LoadingComponent, onClickChartElement: onClickChartElement, referenceLines: report.referenceLineYValues }))] }))] }));
470
467
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LineChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/LineChart.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AA4B7C,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,MAAM,EACN,QAAa,EACb,WAAW,EACX,IAAI,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,EACzB,2BAAmC,EACnC,yBAAgC,EAChC,wBAAgC,EAChC,sBAAgC,EAChC,mBAA6B,EAC7B,sBAAsB,EACtB,mBAA8B,EAC9B,UAAU,EACV,cAAc,GACf,EAAE;IACD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,GAAG,CAAC;IAChB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;IACnC,wBAAwB,EAAE,OAAO,CAAC;IAClC,sBAAsB,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC3C,mBAAmB,EAAE,OAAO,GAAG,QAAQ,CAAC;IACxC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,cAAc,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAC,EAAE,CAAC;CACrD,2CAyRA"}
1
+ {"version":3,"file":"LineChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/LineChart.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AA4B7C,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,MAAM,EACN,QAAa,EACb,WAAW,EACX,IAAI,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,iBAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,iBAAyB,EACzB,2BAAmC,EACnC,yBAAgC,EAChC,wBAAgC,EAChC,sBAAgC,EAChC,mBAA6B,EAC7B,sBAAsB,EACtB,mBAA8B,EAC9B,UAAU,EACV,cAAc,GACf,EAAE;IACD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,GAAG,CAAC;IAChB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;IACnC,wBAAwB,EAAE,OAAO,CAAC;IAClC,sBAAsB,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC3C,mBAAmB,EAAE,OAAO,GAAG,QAAQ,CAAC;IACxC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;CACvD,2CAySA"}
@@ -160,7 +160,9 @@ export default function LineChart({ colors, colorMap = {}, yAxisFields, data, co
160
160
  const gradientStop = getCustomColor(index, elem.field, 'stop') ?? '#00000000';
161
161
  const uniqueId = `gradient_${hashCode(gradientStart)}_${hashCode(gradientStop)}`;
162
162
  return (_jsx("defs", { children: _jsxs("linearGradient", { id: uniqueId, x1: "0", y1: "0", x2: "0", y2: "1", children: [_jsx("stop", { offset: "5%", stopColor: gradientStart, stopOpacity: 0.4 }), _jsx("stop", { offset: "95%", stopColor: gradientStop, stopOpacity: 0 })] }) }, `defs_${uniqueId}_${index}`));
163
- }), referenceLines && Array.isArray(referenceLines) && (referenceLines.map(({ label, query }) => (_jsx(Customized, { component: (props) => _jsx(CustomReferenceLine, { ...props, referenceLine: query, label: label }) }, label)))), yAxisFields &&
163
+ }), referenceLines &&
164
+ Array.isArray(referenceLines) &&
165
+ referenceLines.map(({ label, query }) => (_jsx(Customized, { component: (props) => (_jsx(CustomReferenceLine, { ...props, referenceLine: query, label: label })) }, label))), yAxisFields &&
164
166
  yAxisFields.map((elem, index) => {
165
167
  const gradientStart = hashCode(getCustomColor(index, elem.field, 'start') ??
166
168
  getCustomColor(index, elem.field) ??
@@ -1,6 +1,6 @@
1
- import { QuillTheme } from "../../QuillProvider";
2
- import { AxisFormat } from "../../Dashboard";
3
- import { ColorMapType } from "../../Chart";
1
+ import { QuillTheme } from '../../QuillProvider';
2
+ import { AxisFormat } from '../../Dashboard';
3
+ import { ColorMapType } from '../../Chart';
4
4
  export declare function USMap({ theme, data, xAxisField, xAxisFormat, yAxisFields, onClickChartElement, colors, colorMap, className, containerStyle, }: {
5
5
  theme: QuillTheme | null;
6
6
  data: any[];
@@ -1 +1 @@
1
- {"version":3,"file":"MapChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/MapChart.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAuT3C,wBAAgB,KAAK,CAAC,EACpB,KAAK,EACL,IAAI,EACJ,UAAU,EACV,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,MAAM,EACN,QAAQ,EACR,SAAS,EACT,cAAc,GACf,EAAE;IACD,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IACzB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,WAAW,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,CAAC;KAAE,EAAE,CAAC;IACrE,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC1C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACtC,2CAgKA;AAED,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,IAAI,EACJ,UAAU,EACV,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,MAAM,EACN,QAAQ,EACR,SAAS,EACT,cAAc,GACf,EAAE;IACD,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IACzB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,WAAW,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,CAAC;KAAE,EAAE,CAAC;IACrE,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC1C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACtC,2CAiKA"}
1
+ {"version":3,"file":"MapChart.d.ts","sourceRoot":"","sources":["../../../../src/components/Chart/MapChart.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AA+T3C,wBAAgB,KAAK,CAAC,EACpB,KAAK,EACL,IAAI,EACJ,UAAU,EACV,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,MAAM,EACN,QAAQ,EACR,SAAS,EACT,cAAc,GACf,EAAE;IACD,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IACzB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,WAAW,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,CAAA;KAAE,EAAE,CAAC;IACpE,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC1C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACtC,2CAsLA;AAED,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,IAAI,EACJ,UAAU,EACV,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,MAAM,EACN,QAAQ,EACR,SAAS,EACT,cAAc,GACf,EAAE;IACD,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IACzB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,WAAW,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,CAAA;KAAE,EAAE,CAAC;IACpE,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC1C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACtC,2CAuLA"}