@hitachivantara/uikit-react-viz 4.1.10 → 5.1.1

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 (291) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/components/LineChart/LineChart.cjs +398 -0
  3. package/dist/cjs/components/LineChart/LineChart.cjs.map +1 -0
  4. package/dist/cjs/components/LineChart/LineChart.styles.cjs +85 -0
  5. package/dist/cjs/components/LineChart/LineChart.styles.cjs.map +1 -0
  6. package/dist/cjs/hooks/useVizTheme.cjs +9 -0
  7. package/dist/cjs/hooks/useVizTheme.cjs.map +1 -0
  8. package/dist/cjs/index.cjs +8 -0
  9. package/dist/cjs/index.cjs.map +1 -0
  10. package/dist/cjs/providers/Provider.cjs +137 -0
  11. package/dist/cjs/providers/Provider.cjs.map +1 -0
  12. package/dist/cjs/utils/getAgFunc.cjs +5 -0
  13. package/dist/cjs/utils/getAgFunc.cjs.map +1 -0
  14. package/dist/cjs/utils/getAxisType.cjs +16 -0
  15. package/dist/cjs/utils/getAxisType.cjs.map +1 -0
  16. package/dist/cjs/utils/getLegendIcon.cjs +10 -0
  17. package/dist/cjs/utils/getLegendIcon.cjs.map +1 -0
  18. package/dist/esm/components/LineChart/LineChart.js +377 -0
  19. package/dist/esm/components/LineChart/LineChart.js.map +1 -0
  20. package/dist/esm/components/LineChart/LineChart.styles.js +85 -0
  21. package/dist/esm/components/LineChart/LineChart.styles.js.map +1 -0
  22. package/dist/esm/hooks/useVizTheme.js +9 -0
  23. package/dist/esm/hooks/useVizTheme.js.map +1 -0
  24. package/dist/esm/index.js +8 -0
  25. package/dist/esm/index.js.map +1 -0
  26. package/dist/esm/providers/Provider.js +118 -0
  27. package/dist/esm/providers/Provider.js.map +1 -0
  28. package/dist/esm/utils/getAgFunc.js +5 -0
  29. package/dist/esm/utils/getAgFunc.js.map +1 -0
  30. package/dist/esm/utils/getAxisType.js +16 -0
  31. package/dist/esm/utils/getAxisType.js.map +1 -0
  32. package/dist/esm/utils/getLegendIcon.js +10 -0
  33. package/dist/esm/utils/getLegendIcon.js.map +1 -0
  34. package/dist/types/index.d.ts +234 -0
  35. package/package.json +36 -48
  36. package/LICENSE.txt +0 -201
  37. package/dist/Barchart/Barchart.d.ts +0 -14
  38. package/dist/Barchart/Barchart.js +0 -214
  39. package/dist/Barchart/Barchart.js.map +0 -1
  40. package/dist/Barchart/barchartPlotlyOverrides.js +0 -47
  41. package/dist/Barchart/barchartPlotlyOverrides.js.map +0 -1
  42. package/dist/Barchart/index.d.ts +0 -2
  43. package/dist/Barchart/index.js +0 -14
  44. package/dist/Barchart/index.js.map +0 -1
  45. package/dist/Barchart/styles.js +0 -10
  46. package/dist/Barchart/styles.js.map +0 -1
  47. package/dist/Chart/Chart.d.ts +0 -44
  48. package/dist/Chart/Chart.js +0 -194
  49. package/dist/Chart/Chart.js.map +0 -1
  50. package/dist/Chart/Plot/Plot.d.ts +0 -43
  51. package/dist/Chart/Plot/Plot.js +0 -110
  52. package/dist/Chart/Plot/Plot.js.map +0 -1
  53. package/dist/Chart/Plot/index.d.ts +0 -2
  54. package/dist/Chart/Plot/index.js +0 -14
  55. package/dist/Chart/Plot/index.js.map +0 -1
  56. package/dist/Chart/Plot/styles.js +0 -10
  57. package/dist/Chart/Plot/styles.js.map +0 -1
  58. package/dist/Chart/Tooltip/MultiTooltip/MultiTooltip.js +0 -143
  59. package/dist/Chart/Tooltip/MultiTooltip/MultiTooltip.js.map +0 -1
  60. package/dist/Chart/Tooltip/MultiTooltip/index.js +0 -14
  61. package/dist/Chart/Tooltip/MultiTooltip/index.js.map +0 -1
  62. package/dist/Chart/Tooltip/MultiTooltip/styles.js +0 -49
  63. package/dist/Chart/Tooltip/MultiTooltip/styles.js.map +0 -1
  64. package/dist/Chart/Tooltip/SingleTooltip/SingleTooltip.js +0 -73
  65. package/dist/Chart/Tooltip/SingleTooltip/SingleTooltip.js.map +0 -1
  66. package/dist/Chart/Tooltip/SingleTooltip/index.js +0 -14
  67. package/dist/Chart/Tooltip/SingleTooltip/index.js.map +0 -1
  68. package/dist/Chart/Tooltip/SingleTooltip/styles.js +0 -24
  69. package/dist/Chart/Tooltip/SingleTooltip/styles.js.map +0 -1
  70. package/dist/Chart/Tooltip/Tooltip.js +0 -146
  71. package/dist/Chart/Tooltip/Tooltip.js.map +0 -1
  72. package/dist/Chart/Tooltip/index.js +0 -14
  73. package/dist/Chart/Tooltip/index.js.map +0 -1
  74. package/dist/Chart/Tooltip/styles.js +0 -16
  75. package/dist/Chart/Tooltip/styles.js.map +0 -1
  76. package/dist/Chart/chartPlotlyOverrides.js +0 -145
  77. package/dist/Chart/chartPlotlyOverrides.js.map +0 -1
  78. package/dist/Chart/index.d.ts +0 -5
  79. package/dist/Chart/index.js +0 -14
  80. package/dist/Chart/index.js.map +0 -1
  81. package/dist/Chart/styles.js +0 -36
  82. package/dist/Chart/styles.js.map +0 -1
  83. package/dist/ConfusionMatrix/ConfusionMatrix.d.ts +0 -10
  84. package/dist/ConfusionMatrix/ConfusionMatrix.js +0 -102
  85. package/dist/ConfusionMatrix/ConfusionMatrix.js.map +0 -1
  86. package/dist/ConfusionMatrix/CustomTooltip/CustomTooltip.js +0 -47
  87. package/dist/ConfusionMatrix/CustomTooltip/CustomTooltip.js.map +0 -1
  88. package/dist/ConfusionMatrix/CustomTooltip/index.js +0 -14
  89. package/dist/ConfusionMatrix/CustomTooltip/index.js.map +0 -1
  90. package/dist/ConfusionMatrix/CustomTooltip/styles.js +0 -26
  91. package/dist/ConfusionMatrix/CustomTooltip/styles.js.map +0 -1
  92. package/dist/ConfusionMatrix/confusionMatrixPlotlyOverrides.js +0 -189
  93. package/dist/ConfusionMatrix/confusionMatrixPlotlyOverrides.js.map +0 -1
  94. package/dist/ConfusionMatrix/index.d.ts +0 -2
  95. package/dist/ConfusionMatrix/index.js +0 -14
  96. package/dist/ConfusionMatrix/index.js.map +0 -1
  97. package/dist/ConfusionMatrix/styles.js +0 -10
  98. package/dist/ConfusionMatrix/styles.js.map +0 -1
  99. package/dist/Donutchart/Donutchart.d.ts +0 -10
  100. package/dist/Donutchart/Donutchart.js +0 -103
  101. package/dist/Donutchart/Donutchart.js.map +0 -1
  102. package/dist/Donutchart/donutchartPlotlyOverrides.js +0 -44
  103. package/dist/Donutchart/donutchartPlotlyOverrides.js.map +0 -1
  104. package/dist/Donutchart/index.d.ts +0 -2
  105. package/dist/Donutchart/index.js +0 -14
  106. package/dist/Donutchart/index.js.map +0 -1
  107. package/dist/Donutchart/styles.js +0 -10
  108. package/dist/Donutchart/styles.js.map +0 -1
  109. package/dist/Linechart/Linechart.d.ts +0 -14
  110. package/dist/Linechart/Linechart.js +0 -108
  111. package/dist/Linechart/Linechart.js.map +0 -1
  112. package/dist/Linechart/index.d.ts +0 -2
  113. package/dist/Linechart/index.js +0 -14
  114. package/dist/Linechart/index.js.map +0 -1
  115. package/dist/Linechart/lineChartPlotlyOverrides.js +0 -63
  116. package/dist/Linechart/lineChartPlotlyOverrides.js.map +0 -1
  117. package/dist/Linechart/styles.js +0 -10
  118. package/dist/Linechart/styles.js.map +0 -1
  119. package/dist/index.d.ts +0 -11
  120. package/dist/index.js +0 -35
  121. package/dist/index.js.map +0 -1
  122. package/dist/legacy/Barchart/Barchart.d.ts +0 -14
  123. package/dist/legacy/Barchart/Barchart.js +0 -199
  124. package/dist/legacy/Barchart/Barchart.js.map +0 -1
  125. package/dist/legacy/Barchart/barchartPlotlyOverrides.js +0 -38
  126. package/dist/legacy/Barchart/barchartPlotlyOverrides.js.map +0 -1
  127. package/dist/legacy/Barchart/index.d.ts +0 -2
  128. package/dist/legacy/Barchart/index.js +0 -2
  129. package/dist/legacy/Barchart/index.js.map +0 -1
  130. package/dist/legacy/Barchart/styles.js +0 -3
  131. package/dist/legacy/Barchart/styles.js.map +0 -1
  132. package/dist/legacy/Chart/Chart.d.ts +0 -44
  133. package/dist/legacy/Chart/Chart.js +0 -181
  134. package/dist/legacy/Chart/Chart.js.map +0 -1
  135. package/dist/legacy/Chart/Plot/Plot.d.ts +0 -43
  136. package/dist/legacy/Chart/Plot/Plot.js +0 -95
  137. package/dist/legacy/Chart/Plot/Plot.js.map +0 -1
  138. package/dist/legacy/Chart/Plot/index.d.ts +0 -2
  139. package/dist/legacy/Chart/Plot/index.js +0 -2
  140. package/dist/legacy/Chart/Plot/index.js.map +0 -1
  141. package/dist/legacy/Chart/Plot/styles.js +0 -3
  142. package/dist/legacy/Chart/Plot/styles.js.map +0 -1
  143. package/dist/legacy/Chart/Tooltip/MultiTooltip/MultiTooltip.js +0 -130
  144. package/dist/legacy/Chart/Tooltip/MultiTooltip/MultiTooltip.js.map +0 -1
  145. package/dist/legacy/Chart/Tooltip/MultiTooltip/index.js +0 -2
  146. package/dist/legacy/Chart/Tooltip/MultiTooltip/index.js.map +0 -1
  147. package/dist/legacy/Chart/Tooltip/MultiTooltip/styles.js +0 -42
  148. package/dist/legacy/Chart/Tooltip/MultiTooltip/styles.js.map +0 -1
  149. package/dist/legacy/Chart/Tooltip/SingleTooltip/SingleTooltip.js +0 -57
  150. package/dist/legacy/Chart/Tooltip/SingleTooltip/SingleTooltip.js.map +0 -1
  151. package/dist/legacy/Chart/Tooltip/SingleTooltip/index.js +0 -2
  152. package/dist/legacy/Chart/Tooltip/SingleTooltip/index.js.map +0 -1
  153. package/dist/legacy/Chart/Tooltip/SingleTooltip/styles.js +0 -17
  154. package/dist/legacy/Chart/Tooltip/SingleTooltip/styles.js.map +0 -1
  155. package/dist/legacy/Chart/Tooltip/Tooltip.js +0 -129
  156. package/dist/legacy/Chart/Tooltip/Tooltip.js.map +0 -1
  157. package/dist/legacy/Chart/Tooltip/index.js +0 -2
  158. package/dist/legacy/Chart/Tooltip/index.js.map +0 -1
  159. package/dist/legacy/Chart/Tooltip/styles.js +0 -9
  160. package/dist/legacy/Chart/Tooltip/styles.js.map +0 -1
  161. package/dist/legacy/Chart/chartPlotlyOverrides.js +0 -136
  162. package/dist/legacy/Chart/chartPlotlyOverrides.js.map +0 -1
  163. package/dist/legacy/Chart/index.d.ts +0 -5
  164. package/dist/legacy/Chart/index.js +0 -2
  165. package/dist/legacy/Chart/index.js.map +0 -1
  166. package/dist/legacy/Chart/styles.js +0 -28
  167. package/dist/legacy/Chart/styles.js.map +0 -1
  168. package/dist/legacy/ConfusionMatrix/ConfusionMatrix.d.ts +0 -10
  169. package/dist/legacy/ConfusionMatrix/ConfusionMatrix.js +0 -87
  170. package/dist/legacy/ConfusionMatrix/ConfusionMatrix.js.map +0 -1
  171. package/dist/legacy/ConfusionMatrix/CustomTooltip/CustomTooltip.js +0 -39
  172. package/dist/legacy/ConfusionMatrix/CustomTooltip/CustomTooltip.js.map +0 -1
  173. package/dist/legacy/ConfusionMatrix/CustomTooltip/index.js +0 -2
  174. package/dist/legacy/ConfusionMatrix/CustomTooltip/index.js.map +0 -1
  175. package/dist/legacy/ConfusionMatrix/CustomTooltip/styles.js +0 -19
  176. package/dist/legacy/ConfusionMatrix/CustomTooltip/styles.js.map +0 -1
  177. package/dist/legacy/ConfusionMatrix/confusionMatrixPlotlyOverrides.js +0 -181
  178. package/dist/legacy/ConfusionMatrix/confusionMatrixPlotlyOverrides.js.map +0 -1
  179. package/dist/legacy/ConfusionMatrix/index.d.ts +0 -2
  180. package/dist/legacy/ConfusionMatrix/index.js +0 -2
  181. package/dist/legacy/ConfusionMatrix/index.js.map +0 -1
  182. package/dist/legacy/ConfusionMatrix/styles.js +0 -3
  183. package/dist/legacy/ConfusionMatrix/styles.js.map +0 -1
  184. package/dist/legacy/Donutchart/Donutchart.d.ts +0 -10
  185. package/dist/legacy/Donutchart/Donutchart.js +0 -89
  186. package/dist/legacy/Donutchart/Donutchart.js.map +0 -1
  187. package/dist/legacy/Donutchart/donutchartPlotlyOverrides.js +0 -35
  188. package/dist/legacy/Donutchart/donutchartPlotlyOverrides.js.map +0 -1
  189. package/dist/legacy/Donutchart/index.d.ts +0 -2
  190. package/dist/legacy/Donutchart/index.js +0 -2
  191. package/dist/legacy/Donutchart/index.js.map +0 -1
  192. package/dist/legacy/Donutchart/styles.js +0 -3
  193. package/dist/legacy/Donutchart/styles.js.map +0 -1
  194. package/dist/legacy/Linechart/Linechart.d.ts +0 -14
  195. package/dist/legacy/Linechart/Linechart.js +0 -94
  196. package/dist/legacy/Linechart/Linechart.js.map +0 -1
  197. package/dist/legacy/Linechart/index.d.ts +0 -2
  198. package/dist/legacy/Linechart/index.js +0 -2
  199. package/dist/legacy/Linechart/index.js.map +0 -1
  200. package/dist/legacy/Linechart/lineChartPlotlyOverrides.js +0 -54
  201. package/dist/legacy/Linechart/lineChartPlotlyOverrides.js.map +0 -1
  202. package/dist/legacy/Linechart/styles.js +0 -3
  203. package/dist/legacy/Linechart/styles.js.map +0 -1
  204. package/dist/legacy/index.d.ts +0 -11
  205. package/dist/legacy/index.js +0 -6
  206. package/dist/legacy/index.js.map +0 -1
  207. package/dist/modern/Barchart/Barchart.d.ts +0 -14
  208. package/dist/modern/Barchart/Barchart.js +0 -185
  209. package/dist/modern/Barchart/Barchart.js.map +0 -1
  210. package/dist/modern/Barchart/barchartPlotlyOverrides.js +0 -36
  211. package/dist/modern/Barchart/barchartPlotlyOverrides.js.map +0 -1
  212. package/dist/modern/Barchart/index.d.ts +0 -2
  213. package/dist/modern/Barchart/index.js +0 -2
  214. package/dist/modern/Barchart/index.js.map +0 -1
  215. package/dist/modern/Barchart/styles.js +0 -3
  216. package/dist/modern/Barchart/styles.js.map +0 -1
  217. package/dist/modern/Chart/Chart.d.ts +0 -44
  218. package/dist/modern/Chart/Chart.js +0 -162
  219. package/dist/modern/Chart/Chart.js.map +0 -1
  220. package/dist/modern/Chart/Plot/Plot.d.ts +0 -43
  221. package/dist/modern/Chart/Plot/Plot.js +0 -89
  222. package/dist/modern/Chart/Plot/Plot.js.map +0 -1
  223. package/dist/modern/Chart/Plot/index.d.ts +0 -2
  224. package/dist/modern/Chart/Plot/index.js +0 -2
  225. package/dist/modern/Chart/Plot/index.js.map +0 -1
  226. package/dist/modern/Chart/Plot/styles.js +0 -3
  227. package/dist/modern/Chart/Plot/styles.js.map +0 -1
  228. package/dist/modern/Chart/Tooltip/MultiTooltip/MultiTooltip.js +0 -122
  229. package/dist/modern/Chart/Tooltip/MultiTooltip/MultiTooltip.js.map +0 -1
  230. package/dist/modern/Chart/Tooltip/MultiTooltip/index.js +0 -2
  231. package/dist/modern/Chart/Tooltip/MultiTooltip/index.js.map +0 -1
  232. package/dist/modern/Chart/Tooltip/MultiTooltip/styles.js +0 -40
  233. package/dist/modern/Chart/Tooltip/MultiTooltip/styles.js.map +0 -1
  234. package/dist/modern/Chart/Tooltip/SingleTooltip/SingleTooltip.js +0 -54
  235. package/dist/modern/Chart/Tooltip/SingleTooltip/SingleTooltip.js.map +0 -1
  236. package/dist/modern/Chart/Tooltip/SingleTooltip/index.js +0 -2
  237. package/dist/modern/Chart/Tooltip/SingleTooltip/index.js.map +0 -1
  238. package/dist/modern/Chart/Tooltip/SingleTooltip/styles.js +0 -15
  239. package/dist/modern/Chart/Tooltip/SingleTooltip/styles.js.map +0 -1
  240. package/dist/modern/Chart/Tooltip/Tooltip.js +0 -129
  241. package/dist/modern/Chart/Tooltip/Tooltip.js.map +0 -1
  242. package/dist/modern/Chart/Tooltip/index.js +0 -2
  243. package/dist/modern/Chart/Tooltip/index.js.map +0 -1
  244. package/dist/modern/Chart/Tooltip/styles.js +0 -9
  245. package/dist/modern/Chart/Tooltip/styles.js.map +0 -1
  246. package/dist/modern/Chart/chartPlotlyOverrides.js +0 -126
  247. package/dist/modern/Chart/chartPlotlyOverrides.js.map +0 -1
  248. package/dist/modern/Chart/index.d.ts +0 -5
  249. package/dist/modern/Chart/index.js +0 -2
  250. package/dist/modern/Chart/index.js.map +0 -1
  251. package/dist/modern/Chart/styles.js +0 -19
  252. package/dist/modern/Chart/styles.js.map +0 -1
  253. package/dist/modern/ConfusionMatrix/ConfusionMatrix.d.ts +0 -10
  254. package/dist/modern/ConfusionMatrix/ConfusionMatrix.js +0 -76
  255. package/dist/modern/ConfusionMatrix/ConfusionMatrix.js.map +0 -1
  256. package/dist/modern/ConfusionMatrix/CustomTooltip/CustomTooltip.js +0 -37
  257. package/dist/modern/ConfusionMatrix/CustomTooltip/CustomTooltip.js.map +0 -1
  258. package/dist/modern/ConfusionMatrix/CustomTooltip/index.js +0 -2
  259. package/dist/modern/ConfusionMatrix/CustomTooltip/index.js.map +0 -1
  260. package/dist/modern/ConfusionMatrix/CustomTooltip/styles.js +0 -17
  261. package/dist/modern/ConfusionMatrix/CustomTooltip/styles.js.map +0 -1
  262. package/dist/modern/ConfusionMatrix/confusionMatrixPlotlyOverrides.js +0 -154
  263. package/dist/modern/ConfusionMatrix/confusionMatrixPlotlyOverrides.js.map +0 -1
  264. package/dist/modern/ConfusionMatrix/index.d.ts +0 -2
  265. package/dist/modern/ConfusionMatrix/index.js +0 -2
  266. package/dist/modern/ConfusionMatrix/index.js.map +0 -1
  267. package/dist/modern/ConfusionMatrix/styles.js +0 -3
  268. package/dist/modern/ConfusionMatrix/styles.js.map +0 -1
  269. package/dist/modern/Donutchart/Donutchart.d.ts +0 -10
  270. package/dist/modern/Donutchart/Donutchart.js +0 -78
  271. package/dist/modern/Donutchart/Donutchart.js.map +0 -1
  272. package/dist/modern/Donutchart/donutchartPlotlyOverrides.js +0 -33
  273. package/dist/modern/Donutchart/donutchartPlotlyOverrides.js.map +0 -1
  274. package/dist/modern/Donutchart/index.d.ts +0 -2
  275. package/dist/modern/Donutchart/index.js +0 -2
  276. package/dist/modern/Donutchart/index.js.map +0 -1
  277. package/dist/modern/Donutchart/styles.js +0 -3
  278. package/dist/modern/Donutchart/styles.js.map +0 -1
  279. package/dist/modern/Linechart/Linechart.d.ts +0 -14
  280. package/dist/modern/Linechart/Linechart.js +0 -82
  281. package/dist/modern/Linechart/Linechart.js.map +0 -1
  282. package/dist/modern/Linechart/index.d.ts +0 -2
  283. package/dist/modern/Linechart/index.js +0 -2
  284. package/dist/modern/Linechart/index.js.map +0 -1
  285. package/dist/modern/Linechart/lineChartPlotlyOverrides.js +0 -50
  286. package/dist/modern/Linechart/lineChartPlotlyOverrides.js.map +0 -1
  287. package/dist/modern/Linechart/styles.js +0 -3
  288. package/dist/modern/Linechart/styles.js.map +0 -1
  289. package/dist/modern/index.d.ts +0 -11
  290. package/dist/modern/index.js +0 -6
  291. package/dist/modern/index.js.map +0 -1
@@ -1,54 +0,0 @@
1
- import "core-js/modules/es.object.to-string.js";
2
- import "core-js/modules/web.dom-collections.for-each.js";
3
- import clone from "lodash/cloneDeep";
4
- var setterIfNil = function setterIfNil(object, property, value) {
5
- var _object$property;
6
- // eslint-disable-next-line no-param-reassign
7
- object[property] = (_object$property = object[property]) !== null && _object$property !== void 0 ? _object$property : value;
8
- };
9
-
10
- /**
11
- * Auxiliary functions to set the data in order to follow the DS guideline.
12
- *
13
- */
14
- export var applyDataDefaults = function applyDataDefaults(inputData, type) {
15
- var data = inputData;
16
- data.forEach(function (trace) {
17
- setterIfNil(trace, "hoverinfo", "none");
18
- setterIfNil(trace, "mode", "lines");
19
- switch (type) {
20
- case "area":
21
- setterIfNil(trace, "fill", "tonexty");
22
- setterIfNil(trace, "type", "scatter");
23
- break;
24
- case "line":
25
- setterIfNil(trace, "type", "line");
26
- break;
27
- case "stack":
28
- setterIfNil(trace, "fill", "tonexty");
29
- setterIfNil(trace, "type", "scatter");
30
- setterIfNil(trace, "stackgroup", "one");
31
- break;
32
- default:
33
- setterIfNil(trace, "type", "line");
34
- }
35
- });
36
- return data;
37
- };
38
- export var applyLayoutDefaults = function applyLayoutDefaults() {
39
- var inputLayout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
40
- var rangeSlider = arguments.length > 1 ? arguments[1] : undefined;
41
- var layout = clone(inputLayout);
42
- setterIfNil(layout, "xaxis", {});
43
- setterIfNil(layout.xaxis, "showgrid", true);
44
- setterIfNil(layout.xaxis, "showline", true);
45
- setterIfNil(layout, "yaxis", {});
46
- setterIfNil(layout.yaxis, "showline", false);
47
- if (rangeSlider) {
48
- setterIfNil(layout.xaxis, "rangeslider", {
49
- visible: true
50
- });
51
- }
52
- return layout;
53
- };
54
- //# sourceMappingURL=lineChartPlotlyOverrides.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lineChartPlotlyOverrides.js","names":["clone","setterIfNil","object","property","value","applyDataDefaults","inputData","type","data","forEach","trace","applyLayoutDefaults","inputLayout","rangeSlider","layout","xaxis","yaxis","visible"],"sources":["../../../src/Linechart/lineChartPlotlyOverrides.js"],"sourcesContent":["import clone from \"lodash/cloneDeep\";\n\nconst setterIfNil = (object, property, value) => {\n // eslint-disable-next-line no-param-reassign\n object[property] = object[property] ?? value;\n};\n\n/**\n * Auxiliary functions to set the data in order to follow the DS guideline.\n *\n */\nexport const applyDataDefaults = (inputData, type) => {\n const data = inputData;\n\n data.forEach((trace) => {\n setterIfNil(trace, \"hoverinfo\", \"none\");\n setterIfNil(trace, \"mode\", \"lines\");\n\n switch (type) {\n case \"area\":\n setterIfNil(trace, \"fill\", \"tonexty\");\n setterIfNil(trace, \"type\", \"scatter\");\n break;\n case \"line\":\n setterIfNil(trace, \"type\", \"line\");\n break;\n case \"stack\":\n setterIfNil(trace, \"fill\", \"tonexty\");\n setterIfNil(trace, \"type\", \"scatter\");\n setterIfNil(trace, \"stackgroup\", \"one\");\n break;\n default:\n setterIfNil(trace, \"type\", \"line\");\n }\n });\n\n return data;\n};\n\nexport const applyLayoutDefaults = (inputLayout = {}, rangeSlider) => {\n const layout = clone(inputLayout);\n\n setterIfNil(layout, \"xaxis\", {});\n setterIfNil(layout.xaxis, \"showgrid\", true);\n setterIfNil(layout.xaxis, \"showline\", true);\n\n setterIfNil(layout, \"yaxis\", {});\n setterIfNil(layout.yaxis, \"showline\", false);\n\n if (rangeSlider) {\n setterIfNil(layout.xaxis, \"rangeslider\", {\n visible: true,\n });\n }\n\n return layout;\n};\n"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,kBAAkB;AAEpC,IAAMC,WAAW,GAAG,SAAdA,WAAW,CAAIC,MAAM,EAAEC,QAAQ,EAAEC,KAAK,EAAK;EAAA;EAC/C;EACAF,MAAM,CAACC,QAAQ,CAAC,uBAAGD,MAAM,CAACC,QAAQ,CAAC,+DAAIC,KAAK;AAC9C,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiB,CAAIC,SAAS,EAAEC,IAAI,EAAK;EACpD,IAAMC,IAAI,GAAGF,SAAS;EAEtBE,IAAI,CAACC,OAAO,CAAC,UAACC,KAAK,EAAK;IACtBT,WAAW,CAACS,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC;IACvCT,WAAW,CAACS,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC;IAEnC,QAAQH,IAAI;MACV,KAAK,MAAM;QACTN,WAAW,CAACS,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC;QACrCT,WAAW,CAACS,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC;QACrC;MACF,KAAK,MAAM;QACTT,WAAW,CAACS,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;QAClC;MACF,KAAK,OAAO;QACVT,WAAW,CAACS,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC;QACrCT,WAAW,CAACS,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC;QACrCT,WAAW,CAACS,KAAK,EAAE,YAAY,EAAE,KAAK,CAAC;QACvC;MACF;QACET,WAAW,CAACS,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IAAC;EAEzC,CAAC,CAAC;EAEF,OAAOF,IAAI;AACb,CAAC;AAED,OAAO,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAmB,GAAsC;EAAA,IAAlCC,WAAW,uEAAG,CAAC,CAAC;EAAA,IAAEC,WAAW;EAC/D,IAAMC,MAAM,GAAGd,KAAK,CAACY,WAAW,CAAC;EAEjCX,WAAW,CAACa,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;EAChCb,WAAW,CAACa,MAAM,CAACC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC;EAC3Cd,WAAW,CAACa,MAAM,CAACC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC;EAE3Cd,WAAW,CAACa,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;EAChCb,WAAW,CAACa,MAAM,CAACE,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC;EAE5C,IAAIH,WAAW,EAAE;IACfZ,WAAW,CAACa,MAAM,CAACC,KAAK,EAAE,aAAa,EAAE;MACvCE,OAAO,EAAE;IACX,CAAC,CAAC;EACJ;EAEA,OAAOH,MAAM;AACf,CAAC"}
@@ -1,3 +0,0 @@
1
- var styles = {};
2
- export default styles;
3
- //# sourceMappingURL=styles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.js","names":["styles"],"sources":["../../../src/Linechart/styles.js"],"sourcesContent":["const styles = {};\n\nexport default styles;\n"],"mappings":"AAAA,IAAMA,MAAM,GAAG,CAAC,CAAC;AAEjB,eAAeA,MAAM"}
@@ -1,11 +0,0 @@
1
- export { default as HvBarchart } from "./Barchart";
2
- export * from "./Barchart";
3
-
4
- export { default as HvDonutchart } from "./Donutchart";
5
- export * from "./Donutchart";
6
-
7
- export { default as HvLinechart } from "./Linechart";
8
- export * from "./Linechart";
9
-
10
- export { default as HvConfusionMatrix} from "./ConfusionMatrix";
11
- export * from "./ConfusionMatrix";
@@ -1,6 +0,0 @@
1
- // components
2
- export { default as HvBarchart } from "./Barchart";
3
- export { default as HvDonutchart } from "./Donutchart";
4
- export { default as HvLinechart } from "./Linechart";
5
- export { default as HvConfusionMatrix } from "./ConfusionMatrix";
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["default","HvBarchart","HvDonutchart","HvLinechart","HvConfusionMatrix"],"sources":["../../src/index.js"],"sourcesContent":["// components\nexport { default as HvBarchart } from \"./Barchart\";\nexport { default as HvDonutchart } from \"./Donutchart\";\nexport { default as HvLinechart } from \"./Linechart\";\nexport { default as HvConfusionMatrix } from \"./ConfusionMatrix\";\n"],"mappings":"AAAA;AACA,SAASA,OAAO,IAAIC,UAAU,QAAQ,YAAY;AAClD,SAASD,OAAO,IAAIE,YAAY,QAAQ,cAAc;AACtD,SAASF,OAAO,IAAIG,WAAW,QAAQ,aAAa;AACpD,SAASH,OAAO,IAAII,iBAAiB,QAAQ,mBAAmB"}
@@ -1,14 +0,0 @@
1
- import { HvChartProps } from "../Chart";
2
-
3
- export interface HvBarchartProps extends HvChartProps {
4
- /**
5
- * Sets if the chart is stack.
6
- */
7
- stack?: boolean;
8
- /**
9
- * Sets if the chart is horizontal.
10
- */
11
- horizontal?: boolean;
12
- }
13
-
14
- export default function HvBarchart(props: HvBarchartProps): JSX.Element | null;
@@ -1,185 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- const _excluded = ["id", "classes", "data", "layout", "config", "tooltipType", "stack", "horizontal"];
4
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
- import React, { useMemo, useEffect, useState, useCallback, useRef } from "react";
7
- import PropTypes from "prop-types";
8
- import { withStyles } from "@mui/styles";
9
- import Chart from "../Chart";
10
- import { applyLayoutDefaults, applyDataDefaults } from "./barchartPlotlyOverrides";
11
- import styles from "./styles";
12
- import { jsx as _jsx } from "react/jsx-runtime";
13
- const MARGIN = 50;
14
- const MAX_BAR_WIDTH = 90;
15
- const MIN_BAR_WIDTH = 3;
16
- const MIN_WIDTH = 75;
17
-
18
- /**
19
- * A Bar chart is a chart or graph that presents categorical data with rectangular bars.
20
- *
21
- * Our implementation leverages the Plotly charting library. If you have a specific case
22
- * that we don't cover, the Plotly [documentation](https://plotly.com/javascript/) is a good starting point.
23
- */
24
- const Barchart = _ref => {
25
- let {
26
- id,
27
- classes,
28
- data,
29
- layout,
30
- config,
31
- tooltipType = "multiple",
32
- stack = false,
33
- horizontal = false
34
- } = _ref,
35
- others = _objectWithoutProperties(_ref, _excluded);
36
- /* Values derived from props */
37
-
38
- const dataWithDefaults = useMemo(() => applyDataDefaults(data, horizontal), [data, horizontal]);
39
- const chartLayout = useMemo(() => applyLayoutDefaults(layout, stack, horizontal), [layout, stack, horizontal]);
40
-
41
- /* State */
42
-
43
- const [chartData, setChartData] = useState(dataWithDefaults);
44
-
45
- /* Effects */
46
-
47
- const firstRender = useRef(true);
48
- useEffect(() => {
49
- // only setChartData when prop value changes
50
- // not needed on first render because the
51
- // initial state is already properly set
52
- if (!firstRender.current) {
53
- setChartData(dataWithDefaults);
54
- }
55
- firstRender.current = false;
56
- }, [dataWithDefaults]);
57
-
58
- /**
59
- * Used to force the max width of each bar with 90px.
60
- *
61
- * (this is effectively more an effect than a callback)
62
- */
63
- const recalculateBarWidth = useCallback(ref => {
64
- // use the data and layout info directly from the plotly ref
65
- // as it's always the most uptodate version.
66
- const plotData = ref.current.props.data;
67
- const plotLayout = ref.current.props.layout;
68
- if (plotData.length > 0) {
69
- const {
70
- barmode,
71
- bargap,
72
- bargroupgap
73
- } = plotLayout;
74
- const isStack = barmode === "stack";
75
- const numberOfBarsByGroup = isStack ? 1 : plotData.length;
76
- const numberOfGroup = plotData[0].x.length;
77
- const {
78
- width: boundingRect
79
- } = ref.current.el.getBoundingClientRect();
80
- const width = boundingRect < MIN_WIDTH ? MIN_WIDTH : boundingRect;
81
- const plotWidth = width - MARGIN;
82
- const groupWidth = plotWidth / numberOfGroup;
83
- const colWidth = groupWidth * (1 - bargap) - groupWidth * (1 - bargap) * bargroupgap;
84
- const calculatedBarWidth = colWidth / numberOfBarsByGroup;
85
- const greaterThan90 = calculatedBarWidth > MAX_BAR_WIDTH;
86
- const lessThan3 = calculatedBarWidth < MIN_BAR_WIDTH;
87
- const isAlreadyGreaterThan90 = plotData[0].width !== undefined;
88
- if (greaterThan90 && !isAlreadyGreaterThan90) {
89
- const newWidth = MAX_BAR_WIDTH / plotWidth * numberOfGroup;
90
- const newData = plotData.map(subData => {
91
- return _objectSpread(_objectSpread({}, subData), {}, {
92
- width: newWidth
93
- });
94
- });
95
- setChartData(newData);
96
- }
97
- if (lessThan3 && !isAlreadyGreaterThan90) {
98
- const newWidth = MIN_BAR_WIDTH / plotWidth * numberOfGroup;
99
- const newData = plotData.map(subData => {
100
- return _objectSpread(_objectSpread({}, subData), {}, {
101
- width: newWidth
102
- });
103
- });
104
- setChartData(newData);
105
- }
106
- if (!greaterThan90 && isAlreadyGreaterThan90) {
107
- const newData = plotData.map(subData => {
108
- return _objectSpread(_objectSpread({}, subData), {}, {
109
- width: undefined
110
- });
111
- });
112
- setChartData(newData);
113
- }
114
- }
115
- }, []);
116
- return /*#__PURE__*/_jsx(Chart, _objectSpread({
117
- id: id,
118
- classes: classes,
119
- data: chartData,
120
- layout: chartLayout,
121
- config: config,
122
- tooltipType: tooltipType,
123
- afterPlot: recalculateBarWidth
124
- }, others));
125
- };
126
- process.env.NODE_ENV !== "production" ? Barchart.propTypes = {
127
- /**
128
- * An Id passed on to the component
129
- */
130
- id: PropTypes.string,
131
- /**
132
- * A Jss Object used to override or extend the styles applied.
133
- */
134
- classes: PropTypes.shape({
135
- root: PropTypes.string
136
- }),
137
- /**
138
- * Plotly data object (see https://plot.ly/javascript/reference/).
139
- */
140
- data: PropTypes.arrayOf(PropTypes.instanceOf(Object)).isRequired,
141
- /**
142
- * Plotly layout object (see https://plot.ly/javascript/reference/#layout).
143
- */
144
- layout: PropTypes.instanceOf(Object),
145
- /**
146
- * Plotly config object (see https://plot.ly/javascript/configuration-options/).
147
- */
148
- config: PropTypes.instanceOf(Object),
149
- /**
150
- * Defines if should use a single or multiline tooltip.
151
- */
152
- tooltipType: PropTypes.oneOf(["single", "multiple"]),
153
- /**
154
- * Custom tooltip element to be displayed
155
- */
156
- tooltip: PropTypes.func,
157
- /**
158
- * Function to be called after plot render.
159
- */
160
- afterPlot: PropTypes.func,
161
- /**
162
- * Defines the X axis title.
163
- */
164
- xAxisTitle: PropTypes.string,
165
- /**
166
- * Defines the Y axis title.
167
- */
168
- yAxisTitle: PropTypes.string,
169
- /**
170
- * Defines the chart subtitle.
171
- */
172
- subtitle: PropTypes.string,
173
- /**
174
- * Sets is the chart is stack.
175
- */
176
- stack: PropTypes.bool,
177
- /**
178
- * Sets is the chart is horizontal.
179
- */
180
- horizontal: PropTypes.bool
181
- } : void 0;
182
- export default withStyles(styles, {
183
- name: "HvBarchart"
184
- })(Barchart);
185
- //# sourceMappingURL=Barchart.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Barchart.js","names":["React","useMemo","useEffect","useState","useCallback","useRef","PropTypes","withStyles","Chart","applyLayoutDefaults","applyDataDefaults","styles","MARGIN","MAX_BAR_WIDTH","MIN_BAR_WIDTH","MIN_WIDTH","Barchart","id","classes","data","layout","config","tooltipType","stack","horizontal","others","dataWithDefaults","chartLayout","chartData","setChartData","firstRender","current","recalculateBarWidth","ref","plotData","props","plotLayout","length","barmode","bargap","bargroupgap","isStack","numberOfBarsByGroup","numberOfGroup","x","width","boundingRect","el","getBoundingClientRect","plotWidth","groupWidth","colWidth","calculatedBarWidth","greaterThan90","lessThan3","isAlreadyGreaterThan90","undefined","newWidth","newData","map","subData","propTypes","string","shape","root","arrayOf","instanceOf","Object","isRequired","oneOf","tooltip","func","afterPlot","xAxisTitle","yAxisTitle","subtitle","bool","name"],"sources":["../../../src/Barchart/Barchart.js"],"sourcesContent":["import React, { useMemo, useEffect, useState, useCallback, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { withStyles } from \"@mui/styles\";\nimport Chart from \"../Chart\";\nimport { applyLayoutDefaults, applyDataDefaults } from \"./barchartPlotlyOverrides\";\nimport styles from \"./styles\";\n\nconst MARGIN = 50;\nconst MAX_BAR_WIDTH = 90;\nconst MIN_BAR_WIDTH = 3;\nconst MIN_WIDTH = 75;\n\n/**\n * A Bar chart is a chart or graph that presents categorical data with rectangular bars.\n *\n * Our implementation leverages the Plotly charting library. If you have a specific case\n * that we don't cover, the Plotly [documentation](https://plotly.com/javascript/) is a good starting point.\n */\nconst Barchart = ({\n id,\n classes,\n data,\n layout,\n config,\n tooltipType = \"multiple\",\n stack = false,\n horizontal = false,\n ...others\n}) => {\n /* Values derived from props */\n\n const dataWithDefaults = useMemo(() => applyDataDefaults(data, horizontal), [data, horizontal]);\n const chartLayout = useMemo(\n () => applyLayoutDefaults(layout, stack, horizontal),\n [layout, stack, horizontal]\n );\n\n /* State */\n\n const [chartData, setChartData] = useState(dataWithDefaults);\n\n /* Effects */\n\n const firstRender = useRef(true);\n useEffect(() => {\n // only setChartData when prop value changes\n // not needed on first render because the\n // initial state is already properly set\n if (!firstRender.current) {\n setChartData(dataWithDefaults);\n }\n\n firstRender.current = false;\n }, [dataWithDefaults]);\n\n /**\n * Used to force the max width of each bar with 90px.\n *\n * (this is effectively more an effect than a callback)\n */\n const recalculateBarWidth = useCallback((ref) => {\n // use the data and layout info directly from the plotly ref\n // as it's always the most uptodate version.\n const plotData = ref.current.props.data;\n const plotLayout = ref.current.props.layout;\n\n if (plotData.length > 0) {\n const { barmode, bargap, bargroupgap } = plotLayout;\n\n const isStack = barmode === \"stack\";\n const numberOfBarsByGroup = isStack ? 1 : plotData.length;\n const numberOfGroup = plotData[0].x.length;\n\n const { width: boundingRect } = ref.current.el.getBoundingClientRect();\n const width = boundingRect < MIN_WIDTH ? MIN_WIDTH : boundingRect;\n const plotWidth = width - MARGIN;\n const groupWidth = plotWidth / numberOfGroup;\n const colWidth = groupWidth * (1 - bargap) - groupWidth * (1 - bargap) * bargroupgap;\n\n const calculatedBarWidth = colWidth / numberOfBarsByGroup;\n const greaterThan90 = calculatedBarWidth > MAX_BAR_WIDTH;\n const lessThan3 = calculatedBarWidth < MIN_BAR_WIDTH;\n const isAlreadyGreaterThan90 = plotData[0].width !== undefined;\n\n if (greaterThan90 && !isAlreadyGreaterThan90) {\n const newWidth = (MAX_BAR_WIDTH / plotWidth) * numberOfGroup;\n\n const newData = plotData.map((subData) => {\n return { ...subData, width: newWidth };\n });\n\n setChartData(newData);\n }\n\n if (lessThan3 && !isAlreadyGreaterThan90) {\n const newWidth = (MIN_BAR_WIDTH / plotWidth) * numberOfGroup;\n\n const newData = plotData.map((subData) => {\n return { ...subData, width: newWidth };\n });\n\n setChartData(newData);\n }\n\n if (!greaterThan90 && isAlreadyGreaterThan90) {\n const newData = plotData.map((subData) => {\n return { ...subData, width: undefined };\n });\n\n setChartData(newData);\n }\n }\n }, []);\n\n return (\n <Chart\n id={id}\n classes={classes}\n data={chartData}\n layout={chartLayout}\n config={config}\n tooltipType={tooltipType}\n afterPlot={recalculateBarWidth}\n {...others}\n />\n );\n};\nBarchart.propTypes = {\n /**\n * An Id passed on to the component\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n root: PropTypes.string,\n }),\n /**\n * Plotly data object (see https://plot.ly/javascript/reference/).\n */\n data: PropTypes.arrayOf(PropTypes.instanceOf(Object)).isRequired,\n /**\n * Plotly layout object (see https://plot.ly/javascript/reference/#layout).\n */\n layout: PropTypes.instanceOf(Object),\n /**\n * Plotly config object (see https://plot.ly/javascript/configuration-options/).\n */\n config: PropTypes.instanceOf(Object),\n /**\n * Defines if should use a single or multiline tooltip.\n */\n tooltipType: PropTypes.oneOf([\"single\", \"multiple\"]),\n /**\n * Custom tooltip element to be displayed\n */\n tooltip: PropTypes.func,\n /**\n * Function to be called after plot render.\n */\n afterPlot: PropTypes.func,\n /**\n * Defines the X axis title.\n */\n xAxisTitle: PropTypes.string,\n /**\n * Defines the Y axis title.\n */\n yAxisTitle: PropTypes.string,\n /**\n * Defines the chart subtitle.\n */\n subtitle: PropTypes.string,\n /**\n * Sets is the chart is stack.\n */\n stack: PropTypes.bool,\n /**\n * Sets is the chart is horizontal.\n */\n horizontal: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvBarchart\" })(Barchart);\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,WAAW,EAAEC,MAAM,QAAQ,OAAO;AAChF,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,UAAU,QAAQ,aAAa;AACxC,OAAOC,KAAK,MAAM,UAAU;AAC5B,SAASC,mBAAmB,EAAEC,iBAAiB,QAAQ,2BAA2B;AAClF,OAAOC,MAAM,MAAM,UAAU;AAAC;AAE9B,MAAMC,MAAM,GAAG,EAAE;AACjB,MAAMC,aAAa,GAAG,EAAE;AACxB,MAAMC,aAAa,GAAG,CAAC;AACvB,MAAMC,SAAS,GAAG,EAAE;;AAEpB;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,QAAQ,GAAG,QAUX;EAAA,IAVY;MAChBC,EAAE;MACFC,OAAO;MACPC,IAAI;MACJC,MAAM;MACNC,MAAM;MACNC,WAAW,GAAG,UAAU;MACxBC,KAAK,GAAG,KAAK;MACbC,UAAU,GAAG;IAEf,CAAC;IADIC,MAAM;EAET;;EAEA,MAAMC,gBAAgB,GAAGzB,OAAO,CAAC,MAAMS,iBAAiB,CAACS,IAAI,EAAEK,UAAU,CAAC,EAAE,CAACL,IAAI,EAAEK,UAAU,CAAC,CAAC;EAC/F,MAAMG,WAAW,GAAG1B,OAAO,CACzB,MAAMQ,mBAAmB,CAACW,MAAM,EAAEG,KAAK,EAAEC,UAAU,CAAC,EACpD,CAACJ,MAAM,EAAEG,KAAK,EAAEC,UAAU,CAAC,CAC5B;;EAED;;EAEA,MAAM,CAACI,SAAS,EAAEC,YAAY,CAAC,GAAG1B,QAAQ,CAACuB,gBAAgB,CAAC;;EAE5D;;EAEA,MAAMI,WAAW,GAAGzB,MAAM,CAAC,IAAI,CAAC;EAChCH,SAAS,CAAC,MAAM;IACd;IACA;IACA;IACA,IAAI,CAAC4B,WAAW,CAACC,OAAO,EAAE;MACxBF,YAAY,CAACH,gBAAgB,CAAC;IAChC;IAEAI,WAAW,CAACC,OAAO,GAAG,KAAK;EAC7B,CAAC,EAAE,CAACL,gBAAgB,CAAC,CAAC;;EAEtB;AACF;AACA;AACA;AACA;EACE,MAAMM,mBAAmB,GAAG5B,WAAW,CAAE6B,GAAG,IAAK;IAC/C;IACA;IACA,MAAMC,QAAQ,GAAGD,GAAG,CAACF,OAAO,CAACI,KAAK,CAAChB,IAAI;IACvC,MAAMiB,UAAU,GAAGH,GAAG,CAACF,OAAO,CAACI,KAAK,CAACf,MAAM;IAE3C,IAAIc,QAAQ,CAACG,MAAM,GAAG,CAAC,EAAE;MACvB,MAAM;QAAEC,OAAO;QAAEC,MAAM;QAAEC;MAAY,CAAC,GAAGJ,UAAU;MAEnD,MAAMK,OAAO,GAAGH,OAAO,KAAK,OAAO;MACnC,MAAMI,mBAAmB,GAAGD,OAAO,GAAG,CAAC,GAAGP,QAAQ,CAACG,MAAM;MACzD,MAAMM,aAAa,GAAGT,QAAQ,CAAC,CAAC,CAAC,CAACU,CAAC,CAACP,MAAM;MAE1C,MAAM;QAAEQ,KAAK,EAAEC;MAAa,CAAC,GAAGb,GAAG,CAACF,OAAO,CAACgB,EAAE,CAACC,qBAAqB,EAAE;MACtE,MAAMH,KAAK,GAAGC,YAAY,GAAG/B,SAAS,GAAGA,SAAS,GAAG+B,YAAY;MACjE,MAAMG,SAAS,GAAGJ,KAAK,GAAGjC,MAAM;MAChC,MAAMsC,UAAU,GAAGD,SAAS,GAAGN,aAAa;MAC5C,MAAMQ,QAAQ,GAAGD,UAAU,IAAI,CAAC,GAAGX,MAAM,CAAC,GAAGW,UAAU,IAAI,CAAC,GAAGX,MAAM,CAAC,GAAGC,WAAW;MAEpF,MAAMY,kBAAkB,GAAGD,QAAQ,GAAGT,mBAAmB;MACzD,MAAMW,aAAa,GAAGD,kBAAkB,GAAGvC,aAAa;MACxD,MAAMyC,SAAS,GAAGF,kBAAkB,GAAGtC,aAAa;MACpD,MAAMyC,sBAAsB,GAAGrB,QAAQ,CAAC,CAAC,CAAC,CAACW,KAAK,KAAKW,SAAS;MAE9D,IAAIH,aAAa,IAAI,CAACE,sBAAsB,EAAE;QAC5C,MAAME,QAAQ,GAAI5C,aAAa,GAAGoC,SAAS,GAAIN,aAAa;QAE5D,MAAMe,OAAO,GAAGxB,QAAQ,CAACyB,GAAG,CAAEC,OAAO,IAAK;UACxC,uCAAYA,OAAO;YAAEf,KAAK,EAAEY;UAAQ;QACtC,CAAC,CAAC;QAEF5B,YAAY,CAAC6B,OAAO,CAAC;MACvB;MAEA,IAAIJ,SAAS,IAAI,CAACC,sBAAsB,EAAE;QACxC,MAAME,QAAQ,GAAI3C,aAAa,GAAGmC,SAAS,GAAIN,aAAa;QAE5D,MAAMe,OAAO,GAAGxB,QAAQ,CAACyB,GAAG,CAAEC,OAAO,IAAK;UACxC,uCAAYA,OAAO;YAAEf,KAAK,EAAEY;UAAQ;QACtC,CAAC,CAAC;QAEF5B,YAAY,CAAC6B,OAAO,CAAC;MACvB;MAEA,IAAI,CAACL,aAAa,IAAIE,sBAAsB,EAAE;QAC5C,MAAMG,OAAO,GAAGxB,QAAQ,CAACyB,GAAG,CAAEC,OAAO,IAAK;UACxC,uCAAYA,OAAO;YAAEf,KAAK,EAAEW;UAAS;QACvC,CAAC,CAAC;QAEF3B,YAAY,CAAC6B,OAAO,CAAC;MACvB;IACF;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE,KAAC,KAAK;IACJ,EAAE,EAAEzC,EAAG;IACP,OAAO,EAAEC,OAAQ;IACjB,IAAI,EAAEU,SAAU;IAChB,MAAM,EAAED,WAAY;IACpB,MAAM,EAAEN,MAAO;IACf,WAAW,EAAEC,WAAY;IACzB,SAAS,EAAEU;EAAoB,GAC3BP,MAAM,EACV;AAEN,CAAC;AACD,wCAAAT,QAAQ,CAAC6C,SAAS,GAAG;EACnB;AACF;AACA;EACE5C,EAAE,EAAEX,SAAS,CAACwD,MAAM;EACpB;AACF;AACA;EACE5C,OAAO,EAAEZ,SAAS,CAACyD,KAAK,CAAC;IACvBC,IAAI,EAAE1D,SAAS,CAACwD;EAClB,CAAC,CAAC;EACF;AACF;AACA;EACE3C,IAAI,EAAEb,SAAS,CAAC2D,OAAO,CAAC3D,SAAS,CAAC4D,UAAU,CAACC,MAAM,CAAC,CAAC,CAACC,UAAU;EAChE;AACF;AACA;EACEhD,MAAM,EAAEd,SAAS,CAAC4D,UAAU,CAACC,MAAM,CAAC;EACpC;AACF;AACA;EACE9C,MAAM,EAAEf,SAAS,CAAC4D,UAAU,CAACC,MAAM,CAAC;EACpC;AACF;AACA;EACE7C,WAAW,EAAEhB,SAAS,CAAC+D,KAAK,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;EACpD;AACF;AACA;EACEC,OAAO,EAAEhE,SAAS,CAACiE,IAAI;EACvB;AACF;AACA;EACEC,SAAS,EAAElE,SAAS,CAACiE,IAAI;EACzB;AACF;AACA;EACEE,UAAU,EAAEnE,SAAS,CAACwD,MAAM;EAC5B;AACF;AACA;EACEY,UAAU,EAAEpE,SAAS,CAACwD,MAAM;EAC5B;AACF;AACA;EACEa,QAAQ,EAAErE,SAAS,CAACwD,MAAM;EAC1B;AACF;AACA;EACEvC,KAAK,EAAEjB,SAAS,CAACsE,IAAI;EACrB;AACF;AACA;EACEpD,UAAU,EAAElB,SAAS,CAACsE;AACxB,CAAC;AAED,eAAerE,UAAU,CAACI,MAAM,EAAE;EAAEkE,IAAI,EAAE;AAAa,CAAC,CAAC,CAAC7D,QAAQ,CAAC"}
@@ -1,36 +0,0 @@
1
- import clone from "lodash/cloneDeep";
2
- const setterIfNil = (object, property, value) => {
3
- var _object$property;
4
- // eslint-disable-next-line no-param-reassign
5
- object[property] = (_object$property = object[property]) !== null && _object$property !== void 0 ? _object$property : value;
6
- };
7
-
8
- /**
9
- * Auxiliary functions to set the layout in order to follow the DS guideline.
10
- */
11
- export const applyLayoutDefaults = (inputLayout, stack, isHorizontal) => {
12
- const layout = inputLayout === undefined ? {} : clone(inputLayout);
13
- setterIfNil(layout, "bargap", 0.25);
14
- setterIfNil(layout, "bargroupgap", 0.25);
15
- setterIfNil(layout, "hovermode", "closest");
16
- if (stack) setterIfNil(layout, "barmode", "stack");
17
- setterIfNil(layout, "yaxis", {});
18
- setterIfNil(layout, "xaxis", {});
19
- if (isHorizontal) {
20
- setterIfNil(layout.yaxis, "showline", true);
21
- setterIfNil(layout.xaxis, "showline", false);
22
- } else {
23
- setterIfNil(layout.yaxis, "showline", false);
24
- }
25
- return layout;
26
- };
27
- export const applyDataDefaults = (inputData, isHorizontal) => {
28
- const data = inputData;
29
- data.forEach(trace => {
30
- setterIfNil(trace, "type", "bar");
31
- setterIfNil(trace, "hoverinfo", "none");
32
- if (isHorizontal) setterIfNil(trace, "orientation", "h");
33
- });
34
- return data;
35
- };
36
- //# sourceMappingURL=barchartPlotlyOverrides.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"barchartPlotlyOverrides.js","names":["clone","setterIfNil","object","property","value","applyLayoutDefaults","inputLayout","stack","isHorizontal","layout","undefined","yaxis","xaxis","applyDataDefaults","inputData","data","forEach","trace"],"sources":["../../../src/Barchart/barchartPlotlyOverrides.js"],"sourcesContent":["import clone from \"lodash/cloneDeep\";\n\nconst setterIfNil = (object, property, value) => {\n // eslint-disable-next-line no-param-reassign\n object[property] = object[property] ?? value;\n};\n\n/**\n * Auxiliary functions to set the layout in order to follow the DS guideline.\n */\nexport const applyLayoutDefaults = (inputLayout, stack, isHorizontal) => {\n const layout = inputLayout === undefined ? {} : clone(inputLayout);\n setterIfNil(layout, \"bargap\", 0.25);\n setterIfNil(layout, \"bargroupgap\", 0.25);\n setterIfNil(layout, \"hovermode\", \"closest\");\n if (stack) setterIfNil(layout, \"barmode\", \"stack\");\n\n setterIfNil(layout, \"yaxis\", {});\n setterIfNil(layout, \"xaxis\", {});\n\n if (isHorizontal) {\n setterIfNil(layout.yaxis, \"showline\", true);\n setterIfNil(layout.xaxis, \"showline\", false);\n } else {\n setterIfNil(layout.yaxis, \"showline\", false);\n }\n\n return layout;\n};\n\nexport const applyDataDefaults = (inputData, isHorizontal) => {\n const data = inputData;\n\n data.forEach((trace) => {\n setterIfNil(trace, \"type\", \"bar\");\n setterIfNil(trace, \"hoverinfo\", \"none\");\n if (isHorizontal) setterIfNil(trace, \"orientation\", \"h\");\n });\n\n return data;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,kBAAkB;AAEpC,MAAMC,WAAW,GAAG,CAACC,MAAM,EAAEC,QAAQ,EAAEC,KAAK,KAAK;EAAA;EAC/C;EACAF,MAAM,CAACC,QAAQ,CAAC,uBAAGD,MAAM,CAACC,QAAQ,CAAC,+DAAIC,KAAK;AAC9C,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,mBAAmB,GAAG,CAACC,WAAW,EAAEC,KAAK,EAAEC,YAAY,KAAK;EACvE,MAAMC,MAAM,GAAGH,WAAW,KAAKI,SAAS,GAAG,CAAC,CAAC,GAAGV,KAAK,CAACM,WAAW,CAAC;EAClEL,WAAW,CAACQ,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC;EACnCR,WAAW,CAACQ,MAAM,EAAE,aAAa,EAAE,IAAI,CAAC;EACxCR,WAAW,CAACQ,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC;EAC3C,IAAIF,KAAK,EAAEN,WAAW,CAACQ,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC;EAElDR,WAAW,CAACQ,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;EAChCR,WAAW,CAACQ,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;EAEhC,IAAID,YAAY,EAAE;IAChBP,WAAW,CAACQ,MAAM,CAACE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC;IAC3CV,WAAW,CAACQ,MAAM,CAACG,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC;EAC9C,CAAC,MAAM;IACLX,WAAW,CAACQ,MAAM,CAACE,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC;EAC9C;EAEA,OAAOF,MAAM;AACf,CAAC;AAED,OAAO,MAAMI,iBAAiB,GAAG,CAACC,SAAS,EAAEN,YAAY,KAAK;EAC5D,MAAMO,IAAI,GAAGD,SAAS;EAEtBC,IAAI,CAACC,OAAO,CAAEC,KAAK,IAAK;IACtBhB,WAAW,CAACgB,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC;IACjChB,WAAW,CAACgB,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC;IACvC,IAAIT,YAAY,EAAEP,WAAW,CAACgB,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC;EAC1D,CAAC,CAAC;EAEF,OAAOF,IAAI;AACb,CAAC"}
@@ -1,2 +0,0 @@
1
- export { default } from "./Barchart";
2
- export * from "./Barchart";
@@ -1,2 +0,0 @@
1
- export { default } from "./Barchart";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["default"],"sources":["../../../src/Barchart/index.js"],"sourcesContent":["export { default } from \"./Barchart\";\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,YAAY"}
@@ -1,3 +0,0 @@
1
- const styles = {};
2
- export default styles;
3
- //# sourceMappingURL=styles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.js","names":["styles"],"sources":["../../../src/Barchart/styles.js"],"sourcesContent":["const styles = {};\n\nexport default styles;\n"],"mappings":"AAAA,MAAMA,MAAM,GAAG,CAAC,CAAC;AAEjB,eAAeA,MAAM"}
@@ -1,44 +0,0 @@
1
- import { StandardProps } from "@mui/material";
2
- import { HvPlotProps } from "./Plot";
3
-
4
- export type HvChartClassKey = "root";
5
-
6
- export type TooltipElementObject = {
7
- color: string;
8
- name: string;
9
- value: number | string;
10
- };
11
-
12
- export type TooltipDataObject = {
13
- title: string;
14
- elements: TooltipElementObject[];
15
- };
16
-
17
- export interface HvChartProps extends StandardProps<HvPlotProps, HvChartClassKey> {
18
- /**
19
- * An Id passed on to the component
20
- */
21
- id?: string;
22
- /**
23
- * Defines if should use a single or multiline tooltip.
24
- */
25
- tooltipType?: "single" | "multiple";
26
- /**
27
- * Custom tooltip element to be displayed
28
- */
29
- tooltip?: (data: TooltipDataObject) => JSX.Element;
30
- /**
31
- * Defines the X axis title.
32
- */
33
- xAxisTitle?: string;
34
- /**
35
- * Defines the Y axis title.
36
- */
37
- yAxisTitle?: string;
38
- /**
39
- * Defines the chart subtitle.
40
- */
41
- subtitle?: string;
42
- }
43
-
44
- export default function HvChart(props: HvChartProps): JSX.Element | null;
@@ -1,162 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- const _excluded = ["id", "classes", "data", "layout", "config", "tooltipType", "tooltip", "afterPlot", "xAxisTitle", "yAxisTitle"];
4
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
- import React, { useState, useMemo, useCallback } from "react";
7
- import PropTypes from "prop-types";
8
- import isNil from "lodash/isNil";
9
- import { withStyles, useTheme } from "@mui/styles";
10
- import Tooltip from "./Tooltip";
11
- import { applyLayoutDefaults, applyConfigDefaults } from "./chartPlotlyOverrides";
12
- import Plot from "./Plot";
13
- import styles from "./styles";
14
- import { jsx as _jsx } from "react/jsx-runtime";
15
- import { Fragment as _Fragment } from "react/jsx-runtime";
16
- import { jsxs as _jsxs } from "react/jsx-runtime";
17
- const Chart = _ref => {
18
- let {
19
- id,
20
- classes,
21
- data,
22
- layout,
23
- config,
24
- tooltipType = "multiple",
25
- tooltip,
26
- afterPlot,
27
- xAxisTitle,
28
- yAxisTitle
29
- } = _ref,
30
- others = _objectWithoutProperties(_ref, _excluded);
31
- const theme = useTheme();
32
-
33
- /* Values derived from props */
34
-
35
- // Check if the barchart is horizontal or vertical.
36
- const isHorizontal = useMemo(() => {
37
- var _data$;
38
- return !isNil((_data$ = data[0]) === null || _data$ === void 0 ? void 0 : _data$.orientation) ? data[0].orientation.toUpperCase() === "H" : false;
39
- }, [data]);
40
- const chartLayout = useMemo(() => applyLayoutDefaults(layout, theme, isHorizontal, xAxisTitle, yAxisTitle), [isHorizontal, layout, theme, xAxisTitle, yAxisTitle]);
41
- const chartConfig = useMemo(() => applyConfigDefaults(config), [config]);
42
- const useSingle = tooltipType === "single";
43
-
44
- /* State */
45
-
46
- const [isHover, setIsHover] = useState(false);
47
- const [coordinates, setCoordinates] = useState({
48
- x: 0,
49
- y: 0
50
- });
51
- const [dataTooltip, setDataTooltip] = useState();
52
-
53
- /* Callbacks */
54
-
55
- // Extract data from the plotly onHover event to be used to create the tooltip.
56
- const onHover = useCallback(event => {
57
- const {
58
- points
59
- } = event;
60
- const dataFromPoints = {
61
- title: "",
62
- elements: []
63
- };
64
- points.forEach((p, i) => {
65
- var _fData$marker, _fData$line, _fData$labels, _p$y;
66
- const fData = p.fullData;
67
- const pNumber = p.pointNumber;
68
- if (i === 0) dataFromPoints.title = isHorizontal ? p.y : p.x || fData.name;
69
- dataFromPoints.elements.push({
70
- color: ((_fData$marker = fData.marker) === null || _fData$marker === void 0 ? void 0 : _fData$marker.color) || ((_fData$line = fData.line) === null || _fData$line === void 0 ? void 0 : _fData$line.color) || p.color,
71
- name: ((_fData$labels = fData.labels) === null || _fData$labels === void 0 ? void 0 : _fData$labels[pNumber]) || fData.name,
72
- value: isHorizontal ? p.x : (_p$y = p.y) !== null && _p$y !== void 0 ? _p$y : p.value,
73
- zValue: p.z
74
- });
75
- });
76
- setDataTooltip(dataFromPoints);
77
- setIsHover(true);
78
- }, [isHorizontal]);
79
- const onUnHover = useCallback(() => {
80
- setIsHover(false);
81
- }, []);
82
- const onMouseMove = useCallback(event => {
83
- setCoordinates({
84
- x: event.clientX,
85
- y: event.clientY
86
- });
87
- }, []);
88
- return /*#__PURE__*/_jsxs(_Fragment, {
89
- children: [isHover && /*#__PURE__*/_jsx(Tooltip, {
90
- coordinates: coordinates,
91
- data: dataTooltip,
92
- useSingle: useSingle,
93
- tooltip: tooltip
94
- }), /*#__PURE__*/_jsx("div", {
95
- id: id,
96
- className: classes.root,
97
- children: /*#__PURE__*/_jsx("div", {
98
- onMouseMove: onMouseMove,
99
- children: /*#__PURE__*/_jsx(Plot, _objectSpread({
100
- data: data,
101
- layout: chartLayout,
102
- config: chartConfig,
103
- onHover: onHover,
104
- onUnHover: onUnHover,
105
- afterPlot: afterPlot
106
- }, others))
107
- })
108
- })]
109
- });
110
- };
111
- process.env.NODE_ENV !== "production" ? Chart.propTypes = {
112
- /**
113
- * An Id passed on to the component
114
- */
115
- id: PropTypes.string,
116
- /**
117
- * A Jss Object used to override or extend the styles applied.
118
- */
119
- classes: PropTypes.shape({
120
- root: PropTypes.string
121
- }),
122
- /**
123
- * Plotly data object (see https://plot.ly/javascript/reference/).
124
- */
125
- data: PropTypes.arrayOf(PropTypes.instanceOf(Object)).isRequired,
126
- /**
127
- * Plotly layout object (see https://plot.ly/javascript/reference/#layout).
128
- */
129
- layout: PropTypes.instanceOf(Object).isRequired,
130
- /**
131
- * Plotly config object (see https://plot.ly/javascript/configuration-options/).
132
- */
133
- config: PropTypes.instanceOf(Object),
134
- /**
135
- * Defines if should use a single or multiline tooltip.
136
- */
137
- tooltipType: PropTypes.oneOf(["single", "multiple"]),
138
- /**
139
- * Custom tooltip element to be displayed
140
- */
141
- tooltip: PropTypes.func,
142
- /**
143
- * Function to be called after plot render.
144
- */
145
- afterPlot: PropTypes.func,
146
- /**
147
- * Defines the X axis title.
148
- */
149
- xAxisTitle: PropTypes.string,
150
- /**
151
- * Defines the Y axis title.
152
- */
153
- yAxisTitle: PropTypes.string,
154
- /**
155
- * Defines the chart subtitle.
156
- */
157
- subtitle: PropTypes.string
158
- } : void 0;
159
- export default withStyles(styles, {
160
- name: "HvChart"
161
- })(Chart);
162
- //# sourceMappingURL=Chart.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Chart.js","names":["React","useState","useMemo","useCallback","PropTypes","isNil","withStyles","useTheme","Tooltip","applyLayoutDefaults","applyConfigDefaults","Plot","styles","Chart","id","classes","data","layout","config","tooltipType","tooltip","afterPlot","xAxisTitle","yAxisTitle","others","theme","isHorizontal","orientation","toUpperCase","chartLayout","chartConfig","useSingle","isHover","setIsHover","coordinates","setCoordinates","x","y","dataTooltip","setDataTooltip","onHover","event","points","dataFromPoints","title","elements","forEach","p","i","fData","fullData","pNumber","pointNumber","name","push","color","marker","line","labels","value","zValue","z","onUnHover","onMouseMove","clientX","clientY","root","propTypes","string","shape","arrayOf","instanceOf","Object","isRequired","oneOf","func","subtitle"],"sources":["../../../src/Chart/Chart.js"],"sourcesContent":["import React, { useState, useMemo, useCallback } from \"react\";\nimport PropTypes from \"prop-types\";\nimport isNil from \"lodash/isNil\";\nimport { withStyles, useTheme } from \"@mui/styles\";\n\nimport Tooltip from \"./Tooltip\";\nimport { applyLayoutDefaults, applyConfigDefaults } from \"./chartPlotlyOverrides\";\n\nimport Plot from \"./Plot\";\nimport styles from \"./styles\";\n\nconst Chart = ({\n id,\n classes,\n data,\n layout,\n config,\n tooltipType = \"multiple\",\n tooltip,\n afterPlot,\n xAxisTitle,\n yAxisTitle,\n ...others\n}) => {\n const theme = useTheme();\n\n /* Values derived from props */\n\n // Check if the barchart is horizontal or vertical.\n const isHorizontal = useMemo(\n () => (!isNil(data[0]?.orientation) ? data[0].orientation.toUpperCase() === \"H\" : false),\n [data]\n );\n\n const chartLayout = useMemo(\n () => applyLayoutDefaults(layout, theme, isHorizontal, xAxisTitle, yAxisTitle),\n [isHorizontal, layout, theme, xAxisTitle, yAxisTitle]\n );\n\n const chartConfig = useMemo(() => applyConfigDefaults(config), [config]);\n\n const useSingle = tooltipType === \"single\";\n\n /* State */\n\n const [isHover, setIsHover] = useState(false);\n const [coordinates, setCoordinates] = useState({ x: 0, y: 0 });\n const [dataTooltip, setDataTooltip] = useState();\n\n /* Callbacks */\n\n // Extract data from the plotly onHover event to be used to create the tooltip.\n const onHover = useCallback(\n (event) => {\n const { points } = event;\n\n const dataFromPoints = {\n title: \"\",\n elements: [],\n };\n\n points.forEach((p, i) => {\n const fData = p.fullData;\n const pNumber = p.pointNumber;\n\n if (i === 0) dataFromPoints.title = isHorizontal ? p.y : p.x || fData.name;\n\n dataFromPoints.elements.push({\n color: fData.marker?.color || fData.line?.color || p.color,\n name: fData.labels?.[pNumber] || fData.name,\n value: isHorizontal ? p.x : p.y ?? p.value,\n zValue: p.z,\n });\n });\n\n setDataTooltip(dataFromPoints);\n setIsHover(true);\n },\n [isHorizontal]\n );\n\n const onUnHover = useCallback(() => {\n setIsHover(false);\n }, []);\n\n const onMouseMove = useCallback((event) => {\n setCoordinates({\n x: event.clientX,\n y: event.clientY,\n });\n }, []);\n\n return (\n <>\n {isHover && (\n <Tooltip\n coordinates={coordinates}\n data={dataTooltip}\n useSingle={useSingle}\n tooltip={tooltip}\n />\n )}\n <div id={id} className={classes.root}>\n <div onMouseMove={onMouseMove}>\n <Plot\n data={data}\n layout={chartLayout}\n config={chartConfig}\n onHover={onHover}\n onUnHover={onUnHover}\n afterPlot={afterPlot}\n {...others}\n />\n </div>\n </div>\n </>\n );\n};\n\nChart.propTypes = {\n /**\n * An Id passed on to the component\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n root: PropTypes.string,\n }),\n\n /**\n * Plotly data object (see https://plot.ly/javascript/reference/).\n */\n data: PropTypes.arrayOf(PropTypes.instanceOf(Object)).isRequired,\n /**\n * Plotly layout object (see https://plot.ly/javascript/reference/#layout).\n */\n layout: PropTypes.instanceOf(Object).isRequired,\n /**\n * Plotly config object (see https://plot.ly/javascript/configuration-options/).\n */\n config: PropTypes.instanceOf(Object),\n /**\n * Defines if should use a single or multiline tooltip.\n */\n tooltipType: PropTypes.oneOf([\"single\", \"multiple\"]),\n /**\n * Custom tooltip element to be displayed\n */\n tooltip: PropTypes.func,\n /**\n * Function to be called after plot render.\n */\n afterPlot: PropTypes.func,\n /**\n * Defines the X axis title.\n */\n xAxisTitle: PropTypes.string,\n /**\n * Defines the Y axis title.\n */\n yAxisTitle: PropTypes.string,\n /**\n * Defines the chart subtitle.\n */\n subtitle: PropTypes.string,\n};\n\nexport default withStyles(styles, { name: \"HvChart\" })(Chart);\n"],"mappings":"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"}