@semcore/d3-chart 3.61.0-prerelease.4 → 3.61.0-prerelease.5

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 (555) hide show
  1. package/lib/cjs/AnimatedClipPath.js +11 -15
  2. package/lib/cjs/AnimatedClipPath.js.map +1 -1
  3. package/lib/cjs/Area.js +71 -48
  4. package/lib/cjs/Area.js.map +1 -1
  5. package/lib/cjs/Axis.js +170 -108
  6. package/lib/cjs/Axis.js.map +1 -1
  7. package/lib/cjs/Bar.js +29 -34
  8. package/lib/cjs/Bar.js.map +1 -1
  9. package/lib/cjs/Bubble.js +211 -137
  10. package/lib/cjs/Bubble.js.map +1 -1
  11. package/lib/cjs/CompactHorizontalBar.js +92 -82
  12. package/lib/cjs/CompactHorizontalBar.js.map +1 -1
  13. package/lib/cjs/Donut.js +154 -139
  14. package/lib/cjs/Donut.js.map +1 -1
  15. package/lib/cjs/Dots.js +55 -38
  16. package/lib/cjs/Dots.js.map +1 -1
  17. package/lib/cjs/GroupBar.js +15 -18
  18. package/lib/cjs/GroupBar.js.map +1 -1
  19. package/lib/cjs/HorizontalBar.js +29 -34
  20. package/lib/cjs/HorizontalBar.js.map +1 -1
  21. package/lib/cjs/Hover.js +52 -45
  22. package/lib/cjs/Hover.js.map +1 -1
  23. package/lib/cjs/Line.js +63 -41
  24. package/lib/cjs/Line.js.map +1 -1
  25. package/lib/cjs/Pattern.js +16 -12
  26. package/lib/cjs/Pattern.js.map +1 -1
  27. package/lib/cjs/Plot.js +29 -36
  28. package/lib/cjs/Plot.js.map +1 -1
  29. package/lib/cjs/Radar.js +281 -261
  30. package/lib/cjs/Radar.js.map +1 -1
  31. package/lib/cjs/RadialTree.js +169 -154
  32. package/lib/cjs/RadialTree.js.map +1 -1
  33. package/lib/cjs/Reference.js +45 -51
  34. package/lib/cjs/Reference.js.map +1 -1
  35. package/lib/cjs/ResponsiveContainer.js +20 -25
  36. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  37. package/lib/cjs/ScatterPlot.js +71 -61
  38. package/lib/cjs/ScatterPlot.js.map +1 -1
  39. package/lib/cjs/StackBar.js +20 -31
  40. package/lib/cjs/StackBar.js.map +1 -1
  41. package/lib/cjs/StackedArea.js +12 -16
  42. package/lib/cjs/StackedArea.js.map +1 -1
  43. package/lib/cjs/Tooltip.js +73 -73
  44. package/lib/cjs/Tooltip.js.map +1 -1
  45. package/lib/cjs/Venn.js +77 -52
  46. package/lib/cjs/Venn.js.map +1 -1
  47. package/lib/cjs/a11y/DataAccessibilityTable.js +2 -3
  48. package/lib/cjs/a11y/DataAccessibilityTable.js.map +1 -1
  49. package/lib/cjs/a11y/PlotA11yModule.js +43 -86
  50. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  51. package/lib/cjs/a11y/PlotA11yView.js +44 -19
  52. package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
  53. package/lib/cjs/a11y/bezier.js +1 -2
  54. package/lib/cjs/a11y/bezier.js.map +1 -1
  55. package/lib/cjs/a11y/focus.js +5 -6
  56. package/lib/cjs/a11y/focus.js.map +1 -1
  57. package/lib/cjs/a11y/hints.js +6 -9
  58. package/lib/cjs/a11y/hints.js.map +1 -1
  59. package/lib/cjs/a11y/insights.js +63 -64
  60. package/lib/cjs/a11y/insights.js.map +1 -1
  61. package/lib/cjs/a11y/intl.js +1 -2
  62. package/lib/cjs/a11y/intl.js.map +1 -1
  63. package/lib/cjs/a11y/locale.js +5 -5
  64. package/lib/cjs/a11y/locale.js.map +1 -1
  65. package/lib/cjs/a11y/serialize.js +15 -17
  66. package/lib/cjs/a11y/serialize.js.map +1 -1
  67. package/lib/cjs/a11y/summarize.js +1 -2
  68. package/lib/cjs/a11y/summarize.js.map +1 -1
  69. package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js +4 -5
  70. package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
  71. package/lib/cjs/a11y/translations/module/de.json +2 -2
  72. package/lib/cjs/a11y/translations/module/en.json +2 -2
  73. package/lib/cjs/a11y/translations/module/es.json +2 -2
  74. package/lib/cjs/a11y/translations/module/fr.json +2 -2
  75. package/lib/cjs/a11y/translations/module/it.json +2 -2
  76. package/lib/cjs/a11y/translations/module/ja.json +2 -2
  77. package/lib/cjs/a11y/translations/module/ko.json +2 -2
  78. package/lib/cjs/a11y/translations/module/nl.json +2 -2
  79. package/lib/cjs/a11y/translations/module/pl.json +2 -2
  80. package/lib/cjs/a11y/translations/module/pt.json +2 -2
  81. package/lib/cjs/a11y/translations/module/sv.json +2 -2
  82. package/lib/cjs/a11y/translations/module/tr.json +2 -2
  83. package/lib/cjs/a11y/translations/module/vi.json +2 -2
  84. package/lib/cjs/a11y/translations/module/zh.json +2 -2
  85. package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js +4 -5
  86. package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  87. package/lib/cjs/color.js +2 -3
  88. package/lib/cjs/color.js.map +1 -1
  89. package/lib/cjs/component/Chart/AbstractChart.js +157 -83
  90. package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
  91. package/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
  92. package/lib/cjs/component/Chart/AreaChart.js +24 -51
  93. package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
  94. package/lib/cjs/component/Chart/AreaChart.type.js.map +1 -1
  95. package/lib/cjs/component/Chart/BarChart.js +85 -69
  96. package/lib/cjs/component/Chart/BarChart.js.map +1 -1
  97. package/lib/cjs/component/Chart/BarChart.type.js.map +1 -1
  98. package/lib/cjs/component/Chart/BubbleChart.js +31 -27
  99. package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
  100. package/lib/cjs/component/Chart/BubbleChart.type.js.map +1 -1
  101. package/lib/cjs/component/Chart/CigaretteChart.js +340 -147
  102. package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
  103. package/lib/cjs/component/Chart/CigaretteChart.type.js.map +1 -1
  104. package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +11 -15
  105. package/lib/cjs/component/Chart/CompactHorizontalBarChart.js.map +1 -1
  106. package/lib/cjs/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  107. package/lib/cjs/component/Chart/DonutChart.js +16 -22
  108. package/lib/cjs/component/Chart/DonutChart.js.map +1 -1
  109. package/lib/cjs/component/Chart/DonutChart.type.js.map +1 -1
  110. package/lib/cjs/component/Chart/HistogramChart.js +16 -44
  111. package/lib/cjs/component/Chart/HistogramChart.js.map +1 -1
  112. package/lib/cjs/component/Chart/HistogramChart.type.js.map +1 -1
  113. package/lib/cjs/component/Chart/LineChart.js +22 -48
  114. package/lib/cjs/component/Chart/LineChart.js.map +1 -1
  115. package/lib/cjs/component/Chart/LineChart.type.js.map +1 -1
  116. package/lib/cjs/component/Chart/RadarChart.js +15 -19
  117. package/lib/cjs/component/Chart/RadarChart.js.map +1 -1
  118. package/lib/cjs/component/Chart/RadarChart.type.js.map +1 -1
  119. package/lib/cjs/component/Chart/ScatterPlotChart.js +16 -21
  120. package/lib/cjs/component/Chart/ScatterPlotChart.js.map +1 -1
  121. package/lib/cjs/component/Chart/ScatterPlotChart.type.js.map +1 -1
  122. package/lib/cjs/component/Chart/VennChart.js +16 -19
  123. package/lib/cjs/component/Chart/VennChart.js.map +1 -1
  124. package/lib/cjs/component/Chart/VennChart.type.js.map +1 -1
  125. package/lib/cjs/component/Chart/index.js +7 -8
  126. package/lib/cjs/component/Chart/index.js.map +1 -1
  127. package/lib/cjs/component/ChartLegend/BaseLegend.js +45 -23
  128. package/lib/cjs/component/ChartLegend/BaseLegend.js.map +1 -1
  129. package/lib/cjs/component/ChartLegend/BaseLegend.type.js.map +1 -1
  130. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +19 -24
  131. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  132. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
  133. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +108 -83
  134. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  135. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js +1 -2
  136. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  137. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +18 -23
  138. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  139. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
  140. package/lib/cjs/component/ChartLegend/index.js +1 -2
  141. package/lib/cjs/component/ChartLegend/index.js.map +1 -1
  142. package/lib/cjs/component/Cigarette/Cigarette.js +16 -20
  143. package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
  144. package/lib/cjs/component/StackGroupBar/StackGroupBar.js +19 -24
  145. package/lib/cjs/component/StackGroupBar/StackGroupBar.js.map +1 -1
  146. package/lib/cjs/component/StackGroupBar/StackGroupBar.type.js.map +1 -1
  147. package/lib/cjs/component/SvgElement.js +21 -0
  148. package/lib/cjs/component/SvgElement.js.map +1 -0
  149. package/lib/cjs/createElement.d.js.map +1 -1
  150. package/lib/cjs/createElement.js +10 -12
  151. package/lib/cjs/createElement.js.map +1 -1
  152. package/lib/cjs/index.js +9 -2
  153. package/lib/cjs/index.js.map +1 -1
  154. package/lib/cjs/style/abstract-chart.shadow.css +12 -0
  155. package/lib/cjs/style/axis.shadow.css +39 -1
  156. package/lib/cjs/style/bubble.shadow.css +8 -0
  157. package/lib/cjs/style/hover.shadow.css +2 -2
  158. package/lib/cjs/style/plot.shadow.css +8 -6
  159. package/lib/cjs/style/plotA11yModule.shadow.css +10 -11
  160. package/lib/cjs/style/plotA11yView.shadow.css +13 -26
  161. package/lib/cjs/translations/__intergalactic-dynamic-locales.js +4 -5
  162. package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
  163. package/lib/cjs/translations/de.json +1 -0
  164. package/lib/cjs/translations/es.json +1 -0
  165. package/lib/cjs/translations/fr.json +1 -0
  166. package/lib/cjs/translations/it.json +1 -0
  167. package/lib/cjs/translations/ja.json +1 -0
  168. package/lib/cjs/translations/ko.json +1 -0
  169. package/lib/cjs/translations/nl.json +1 -0
  170. package/lib/cjs/translations/pl.json +1 -0
  171. package/lib/cjs/translations/pt.json +1 -0
  172. package/lib/cjs/translations/sv.json +1 -0
  173. package/lib/cjs/translations/tr.json +2 -1
  174. package/lib/cjs/translations/vi.json +1 -0
  175. package/lib/cjs/translations/zh.json +1 -0
  176. package/lib/cjs/types/Area.d.js.map +1 -1
  177. package/lib/cjs/types/Axis.d.js.map +1 -1
  178. package/lib/cjs/types/Bar.d.js.map +1 -1
  179. package/lib/cjs/types/Bubble.d.js.map +1 -1
  180. package/lib/cjs/types/ClipPath.d.js.map +1 -1
  181. package/lib/cjs/types/CompactHorizontalBar.d.js.map +1 -1
  182. package/lib/cjs/types/Donut.d.js.map +1 -1
  183. package/lib/cjs/types/GroupBar.d.js.map +1 -1
  184. package/lib/cjs/types/HorizontalBar.d.js.map +1 -1
  185. package/lib/cjs/types/Hover.d.js.map +1 -1
  186. package/lib/cjs/types/Line.d.js.map +1 -1
  187. package/lib/cjs/types/Plot.d.js.map +1 -1
  188. package/lib/cjs/types/Radar.d.js.map +1 -1
  189. package/lib/cjs/types/Reference.d.js.map +1 -1
  190. package/lib/cjs/types/ResponsiveContainer.d.js.map +1 -1
  191. package/lib/cjs/types/ScatterPlot.d.js.map +1 -1
  192. package/lib/cjs/types/StackBar.d.js.map +1 -1
  193. package/lib/cjs/types/StackedArea.d.js.map +1 -1
  194. package/lib/cjs/types/Tooltip.d.js.map +1 -1
  195. package/lib/cjs/types/Venn.d.js.map +1 -1
  196. package/lib/cjs/types/context.d.js.map +1 -1
  197. package/lib/cjs/types/index.d.js +14 -2
  198. package/lib/cjs/types/index.d.js.map +1 -1
  199. package/lib/cjs/utils.js +36 -55
  200. package/lib/cjs/utils.js.map +1 -1
  201. package/lib/es6/AnimatedClipPath.js +9 -11
  202. package/lib/es6/AnimatedClipPath.js.map +1 -1
  203. package/lib/es6/Area.js +70 -45
  204. package/lib/es6/Area.js.map +1 -1
  205. package/lib/es6/Axis.js +168 -104
  206. package/lib/es6/Axis.js.map +1 -1
  207. package/lib/es6/Bar.js +27 -29
  208. package/lib/es6/Bar.js.map +1 -1
  209. package/lib/es6/Bubble.js +211 -135
  210. package/lib/es6/Bubble.js.map +1 -1
  211. package/lib/es6/CompactHorizontalBar.js +89 -77
  212. package/lib/es6/CompactHorizontalBar.js.map +1 -1
  213. package/lib/es6/Donut.js +154 -137
  214. package/lib/es6/Donut.js.map +1 -1
  215. package/lib/es6/Dots.js +55 -36
  216. package/lib/es6/Dots.js.map +1 -1
  217. package/lib/es6/GroupBar.js +13 -15
  218. package/lib/es6/GroupBar.js.map +1 -1
  219. package/lib/es6/HorizontalBar.js +27 -29
  220. package/lib/es6/HorizontalBar.js.map +1 -1
  221. package/lib/es6/Hover.js +51 -41
  222. package/lib/es6/Hover.js.map +1 -1
  223. package/lib/es6/Line.js +61 -37
  224. package/lib/es6/Line.js.map +1 -1
  225. package/lib/es6/Pattern.js +7 -3
  226. package/lib/es6/Pattern.js.map +1 -1
  227. package/lib/es6/Plot.js +28 -32
  228. package/lib/es6/Plot.js.map +1 -1
  229. package/lib/es6/Radar.js +279 -257
  230. package/lib/es6/Radar.js.map +1 -1
  231. package/lib/es6/RadialTree.js +168 -151
  232. package/lib/es6/RadialTree.js.map +1 -1
  233. package/lib/es6/Reference.js +43 -45
  234. package/lib/es6/Reference.js.map +1 -1
  235. package/lib/es6/ResponsiveContainer.js +16 -19
  236. package/lib/es6/ResponsiveContainer.js.map +1 -1
  237. package/lib/es6/ScatterPlot.js +71 -59
  238. package/lib/es6/ScatterPlot.js.map +1 -1
  239. package/lib/es6/StackBar.js +17 -27
  240. package/lib/es6/StackBar.js.map +1 -1
  241. package/lib/es6/StackedArea.js +10 -13
  242. package/lib/es6/StackedArea.js.map +1 -1
  243. package/lib/es6/Tooltip.js +68 -65
  244. package/lib/es6/Tooltip.js.map +1 -1
  245. package/lib/es6/Venn.js +75 -48
  246. package/lib/es6/Venn.js.map +1 -1
  247. package/lib/es6/a11y/DataAccessibilityTable.js.map +1 -1
  248. package/lib/es6/a11y/PlotA11yModule.js +43 -86
  249. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  250. package/lib/es6/a11y/PlotA11yView.js +43 -16
  251. package/lib/es6/a11y/PlotA11yView.js.map +1 -1
  252. package/lib/es6/a11y/bezier.js.map +1 -1
  253. package/lib/es6/a11y/focus.js +4 -4
  254. package/lib/es6/a11y/focus.js.map +1 -1
  255. package/lib/es6/a11y/hints.js +2 -2
  256. package/lib/es6/a11y/hints.js.map +1 -1
  257. package/lib/es6/a11y/insights.js +61 -61
  258. package/lib/es6/a11y/insights.js.map +1 -1
  259. package/lib/es6/a11y/intl.js.map +1 -1
  260. package/lib/es6/a11y/locale.js +3 -2
  261. package/lib/es6/a11y/locale.js.map +1 -1
  262. package/lib/es6/a11y/serialize.js +14 -13
  263. package/lib/es6/a11y/serialize.js.map +1 -1
  264. package/lib/es6/a11y/summarize.js.map +1 -1
  265. package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js +2 -2
  266. package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
  267. package/lib/es6/a11y/translations/module/de.json +2 -2
  268. package/lib/es6/a11y/translations/module/en.json +2 -2
  269. package/lib/es6/a11y/translations/module/es.json +2 -2
  270. package/lib/es6/a11y/translations/module/fr.json +2 -2
  271. package/lib/es6/a11y/translations/module/it.json +2 -2
  272. package/lib/es6/a11y/translations/module/ja.json +2 -2
  273. package/lib/es6/a11y/translations/module/ko.json +2 -2
  274. package/lib/es6/a11y/translations/module/nl.json +2 -2
  275. package/lib/es6/a11y/translations/module/pl.json +2 -2
  276. package/lib/es6/a11y/translations/module/pt.json +2 -2
  277. package/lib/es6/a11y/translations/module/sv.json +2 -2
  278. package/lib/es6/a11y/translations/module/tr.json +2 -2
  279. package/lib/es6/a11y/translations/module/vi.json +2 -2
  280. package/lib/es6/a11y/translations/module/zh.json +2 -2
  281. package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js +2 -2
  282. package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  283. package/lib/es6/color.js +1 -1
  284. package/lib/es6/color.js.map +1 -1
  285. package/lib/es6/component/Chart/AbstractChart.js +159 -80
  286. package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
  287. package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
  288. package/lib/es6/component/Chart/AreaChart.js +23 -48
  289. package/lib/es6/component/Chart/AreaChart.js.map +1 -1
  290. package/lib/es6/component/Chart/AreaChart.type.js.map +1 -1
  291. package/lib/es6/component/Chart/BarChart.js +84 -67
  292. package/lib/es6/component/Chart/BarChart.js.map +1 -1
  293. package/lib/es6/component/Chart/BarChart.type.js.map +1 -1
  294. package/lib/es6/component/Chart/BubbleChart.js +30 -24
  295. package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
  296. package/lib/es6/component/Chart/BubbleChart.type.js.map +1 -1
  297. package/lib/es6/component/Chart/CigaretteChart.js +341 -144
  298. package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
  299. package/lib/es6/component/Chart/CigaretteChart.type.js.map +1 -1
  300. package/lib/es6/component/Chart/CompactHorizontalBarChart.js +9 -12
  301. package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -1
  302. package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  303. package/lib/es6/component/Chart/DonutChart.js +14 -18
  304. package/lib/es6/component/Chart/DonutChart.js.map +1 -1
  305. package/lib/es6/component/Chart/DonutChart.type.js.map +1 -1
  306. package/lib/es6/component/Chart/HistogramChart.js +15 -41
  307. package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
  308. package/lib/es6/component/Chart/HistogramChart.type.js.map +1 -1
  309. package/lib/es6/component/Chart/LineChart.js +20 -45
  310. package/lib/es6/component/Chart/LineChart.js.map +1 -1
  311. package/lib/es6/component/Chart/LineChart.type.js.map +1 -1
  312. package/lib/es6/component/Chart/RadarChart.js +13 -16
  313. package/lib/es6/component/Chart/RadarChart.js.map +1 -1
  314. package/lib/es6/component/Chart/RadarChart.type.js.map +1 -1
  315. package/lib/es6/component/Chart/ScatterPlotChart.js +15 -18
  316. package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
  317. package/lib/es6/component/Chart/ScatterPlotChart.type.js.map +1 -1
  318. package/lib/es6/component/Chart/VennChart.js +14 -16
  319. package/lib/es6/component/Chart/VennChart.js.map +1 -1
  320. package/lib/es6/component/Chart/VennChart.type.js.map +1 -1
  321. package/lib/es6/component/Chart/index.js +6 -6
  322. package/lib/es6/component/Chart/index.js.map +1 -1
  323. package/lib/es6/component/ChartLegend/BaseLegend.js +43 -20
  324. package/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
  325. package/lib/es6/component/ChartLegend/BaseLegend.type.js.map +1 -1
  326. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +17 -19
  327. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  328. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
  329. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +102 -74
  330. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  331. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  332. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +15 -17
  333. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  334. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
  335. package/lib/es6/component/ChartLegend/index.js.map +1 -1
  336. package/lib/es6/component/Cigarette/Cigarette.js +14 -17
  337. package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
  338. package/lib/es6/component/StackGroupBar/StackGroupBar.js +17 -21
  339. package/lib/es6/component/StackGroupBar/StackGroupBar.js.map +1 -1
  340. package/lib/es6/component/StackGroupBar/StackGroupBar.type.js.map +1 -1
  341. package/lib/es6/component/SvgElement.js +14 -0
  342. package/lib/es6/component/SvgElement.js.map +1 -0
  343. package/lib/es6/createElement.d.js.map +1 -1
  344. package/lib/es6/createElement.js +7 -7
  345. package/lib/es6/createElement.js.map +1 -1
  346. package/lib/es6/index.js +1 -0
  347. package/lib/es6/index.js.map +1 -1
  348. package/lib/es6/style/abstract-chart.shadow.css +12 -0
  349. package/lib/es6/style/axis.shadow.css +39 -1
  350. package/lib/es6/style/bubble.shadow.css +8 -0
  351. package/lib/es6/style/hover.shadow.css +2 -2
  352. package/lib/es6/style/plot.shadow.css +8 -6
  353. package/lib/es6/style/plotA11yModule.shadow.css +10 -11
  354. package/lib/es6/style/plotA11yView.shadow.css +13 -26
  355. package/lib/es6/translations/__intergalactic-dynamic-locales.js +2 -2
  356. package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
  357. package/lib/es6/translations/de.json +1 -0
  358. package/lib/es6/translations/es.json +1 -0
  359. package/lib/es6/translations/fr.json +1 -0
  360. package/lib/es6/translations/it.json +1 -0
  361. package/lib/es6/translations/ja.json +1 -0
  362. package/lib/es6/translations/ko.json +1 -0
  363. package/lib/es6/translations/nl.json +1 -0
  364. package/lib/es6/translations/pl.json +1 -0
  365. package/lib/es6/translations/pt.json +1 -0
  366. package/lib/es6/translations/sv.json +1 -0
  367. package/lib/es6/translations/tr.json +2 -1
  368. package/lib/es6/translations/vi.json +1 -0
  369. package/lib/es6/translations/zh.json +1 -0
  370. package/lib/es6/types/Area.d.js.map +1 -1
  371. package/lib/es6/types/Axis.d.js.map +1 -1
  372. package/lib/es6/types/Bar.d.js.map +1 -1
  373. package/lib/es6/types/Bubble.d.js.map +1 -1
  374. package/lib/es6/types/ClipPath.d.js.map +1 -1
  375. package/lib/es6/types/CompactHorizontalBar.d.js.map +1 -1
  376. package/lib/es6/types/Donut.d.js.map +1 -1
  377. package/lib/es6/types/GroupBar.d.js.map +1 -1
  378. package/lib/es6/types/HorizontalBar.d.js.map +1 -1
  379. package/lib/es6/types/Hover.d.js.map +1 -1
  380. package/lib/es6/types/Line.d.js.map +1 -1
  381. package/lib/es6/types/Plot.d.js.map +1 -1
  382. package/lib/es6/types/Radar.d.js.map +1 -1
  383. package/lib/es6/types/Reference.d.js.map +1 -1
  384. package/lib/es6/types/ResponsiveContainer.d.js.map +1 -1
  385. package/lib/es6/types/ScatterPlot.d.js.map +1 -1
  386. package/lib/es6/types/StackBar.d.js.map +1 -1
  387. package/lib/es6/types/StackedArea.d.js.map +1 -1
  388. package/lib/es6/types/Tooltip.d.js.map +1 -1
  389. package/lib/es6/types/Venn.d.js.map +1 -1
  390. package/lib/es6/types/context.d.js.map +1 -1
  391. package/lib/es6/types/index.d.js +2 -0
  392. package/lib/es6/types/index.d.js.map +1 -1
  393. package/lib/es6/utils.js +16 -16
  394. package/lib/es6/utils.js.map +1 -1
  395. package/lib/esm/AnimatedClipPath.mjs +9 -16
  396. package/lib/esm/Area.mjs +51 -36
  397. package/lib/esm/Axis.mjs +143 -86
  398. package/lib/esm/Bar.mjs +31 -34
  399. package/lib/esm/Bubble.mjs +154 -106
  400. package/lib/esm/CompactHorizontalBar.mjs +88 -80
  401. package/lib/esm/Donut.mjs +87 -75
  402. package/lib/esm/Dots.mjs +50 -34
  403. package/lib/esm/GroupBar.mjs +12 -14
  404. package/lib/esm/HorizontalBar.mjs +31 -34
  405. package/lib/esm/Hover.mjs +53 -50
  406. package/lib/esm/Line.mjs +45 -31
  407. package/lib/esm/Pattern.mjs +4 -2
  408. package/lib/esm/Plot.mjs +30 -35
  409. package/lib/esm/Radar.mjs +188 -175
  410. package/lib/esm/RadialTree.mjs +105 -111
  411. package/lib/esm/Reference.mjs +37 -40
  412. package/lib/esm/ResponsiveContainer.mjs +18 -21
  413. package/lib/esm/ScatterPlot.mjs +49 -40
  414. package/lib/esm/StackBar.mjs +18 -28
  415. package/lib/esm/StackedArea.mjs +13 -16
  416. package/lib/esm/Tooltip.mjs +56 -59
  417. package/lib/esm/Venn.mjs +67 -47
  418. package/lib/esm/a11y/DataAccessibilityTable.mjs +2 -2
  419. package/lib/esm/a11y/PlotA11yModule.mjs +35 -74
  420. package/lib/esm/a11y/PlotA11yView.mjs +41 -17
  421. package/lib/esm/a11y/focus.mjs +4 -4
  422. package/lib/esm/a11y/hints.mjs +2 -2
  423. package/lib/esm/a11y/insights.mjs +76 -76
  424. package/lib/esm/a11y/locale.mjs +2 -2
  425. package/lib/esm/a11y/serialize.mjs +12 -12
  426. package/lib/esm/a11y/translations/module/__intergalactic-dynamic-locales.mjs +2 -2
  427. package/lib/esm/a11y/translations/module/de.json.mjs +2 -4
  428. package/lib/esm/a11y/translations/module/en.json.mjs +2 -4
  429. package/lib/esm/a11y/translations/module/es.json.mjs +2 -4
  430. package/lib/esm/a11y/translations/module/fr.json.mjs +2 -4
  431. package/lib/esm/a11y/translations/module/it.json.mjs +2 -4
  432. package/lib/esm/a11y/translations/module/ja.json.mjs +2 -4
  433. package/lib/esm/a11y/translations/module/ko.json.mjs +2 -4
  434. package/lib/esm/a11y/translations/module/nl.json.mjs +2 -4
  435. package/lib/esm/a11y/translations/module/pl.json.mjs +2 -4
  436. package/lib/esm/a11y/translations/module/pt.json.mjs +2 -4
  437. package/lib/esm/a11y/translations/module/sv.json.mjs +2 -4
  438. package/lib/esm/a11y/translations/module/tr.json.mjs +2 -4
  439. package/lib/esm/a11y/translations/module/vi.json.mjs +2 -4
  440. package/lib/esm/a11y/translations/module/zh.json.mjs +2 -4
  441. package/lib/esm/a11y/translations/view/__intergalactic-dynamic-locales.mjs +2 -2
  442. package/lib/esm/component/Chart/AbstractChart.mjs +141 -65
  443. package/lib/esm/component/Chart/AreaChart.mjs +27 -51
  444. package/lib/esm/component/Chart/BarChart.mjs +64 -51
  445. package/lib/esm/component/Chart/BubbleChart.mjs +30 -25
  446. package/lib/esm/component/Chart/CigaretteChart.mjs +298 -119
  447. package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +13 -15
  448. package/lib/esm/component/Chart/DonutChart.mjs +16 -19
  449. package/lib/esm/component/Chart/HistogramChart.mjs +22 -46
  450. package/lib/esm/component/Chart/LineChart.mjs +23 -46
  451. package/lib/esm/component/Chart/RadarChart.mjs +16 -18
  452. package/lib/esm/component/Chart/ScatterPlotChart.mjs +18 -21
  453. package/lib/esm/component/Chart/VennChart.mjs +16 -19
  454. package/lib/esm/component/Chart/index.mjs +6 -6
  455. package/lib/esm/component/ChartLegend/BaseLegend.mjs +45 -22
  456. package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +19 -22
  457. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +88 -75
  458. package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +22 -25
  459. package/lib/esm/component/ChartLegend/index.mjs +2 -0
  460. package/lib/esm/component/Cigarette/Cigarette.mjs +16 -19
  461. package/lib/esm/component/StackGroupBar/StackGroupBar.mjs +18 -22
  462. package/lib/esm/component/SvgElement.mjs +14 -0
  463. package/lib/esm/createElement.mjs +8 -10
  464. package/lib/esm/index.mjs +3 -0
  465. package/lib/esm/style/abstract-chart.shadow.css +12 -0
  466. package/lib/esm/style/axis.shadow.css +39 -1
  467. package/lib/esm/style/bubble.shadow.css +8 -0
  468. package/lib/esm/style/hover.shadow.css +2 -2
  469. package/lib/esm/style/plot.shadow.css +8 -6
  470. package/lib/esm/style/plotA11yModule.shadow.css +10 -11
  471. package/lib/esm/style/plotA11yView.shadow.css +13 -26
  472. package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +2 -2
  473. package/lib/esm/translations/es.json.mjs +1 -0
  474. package/lib/esm/translations/fr.json.mjs +1 -0
  475. package/lib/esm/translations/it.json.mjs +1 -0
  476. package/lib/esm/translations/ja.json.mjs +1 -0
  477. package/lib/esm/translations/ko.json.mjs +1 -0
  478. package/lib/esm/translations/nl.json.mjs +1 -0
  479. package/lib/esm/translations/pl.json.mjs +1 -0
  480. package/lib/esm/translations/pt.json.mjs +1 -0
  481. package/lib/esm/translations/sv.json.mjs +1 -0
  482. package/lib/esm/translations/tr.json.mjs +2 -1
  483. package/lib/esm/translations/vi.json.mjs +1 -0
  484. package/lib/esm/translations/zh.json.mjs +1 -0
  485. package/lib/esm/utils.mjs +11 -11
  486. package/lib/types/Area.d.ts +9 -6
  487. package/lib/types/Axis.d.ts +10 -3
  488. package/lib/types/Bar.d.ts +7 -6
  489. package/lib/types/Bubble.d.ts +21 -5
  490. package/lib/types/ClipPath.d.ts +4 -3
  491. package/lib/types/CompactHorizontalBar.d.ts +7 -8
  492. package/lib/types/Donut.d.ts +8 -5
  493. package/lib/types/GroupBar.d.ts +6 -6
  494. package/lib/types/HorizontalBar.d.ts +7 -6
  495. package/lib/types/Hover.d.ts +8 -8
  496. package/lib/types/Line.d.ts +9 -6
  497. package/lib/types/Pattern.d.ts +51 -51
  498. package/lib/types/Plot.d.ts +11 -9
  499. package/lib/types/Radar.d.ts +10 -7
  500. package/lib/types/RadialTree.d.ts +10 -54
  501. package/lib/types/Reference.d.ts +6 -5
  502. package/lib/types/ResponsiveContainer.d.ts +5 -4
  503. package/lib/types/ScatterPlot.d.ts +8 -5
  504. package/lib/types/StackBar.d.ts +7 -6
  505. package/lib/types/StackedArea.d.ts +6 -5
  506. package/lib/types/Tooltip.d.ts +12 -12
  507. package/lib/types/Venn.d.ts +7 -6
  508. package/lib/types/a11y/DataAccessibilityTable.d.ts +2 -2
  509. package/lib/types/a11y/PlotA11yModule.d.ts +4 -11
  510. package/lib/types/a11y/PlotA11yView.d.ts +13 -2
  511. package/lib/types/a11y/hints.d.ts +5 -5
  512. package/lib/types/a11y/insights.d.ts +1 -1
  513. package/lib/types/a11y/intl.d.ts +1 -1
  514. package/lib/types/a11y/serialize.d.ts +7 -7
  515. package/lib/types/a11y/summarize.d.ts +2 -2
  516. package/lib/types/a11y/translations/module/__intergalactic-dynamic-locales.d.ts +14 -14
  517. package/lib/types/component/Chart/AbstractChart.d.ts +20 -13
  518. package/lib/types/component/Chart/AbstractChart.type.d.ts +39 -25
  519. package/lib/types/component/Chart/AreaChart.d.ts +1 -1
  520. package/lib/types/component/Chart/AreaChart.type.d.ts +17 -7
  521. package/lib/types/component/Chart/BarChart.d.ts +1 -1
  522. package/lib/types/component/Chart/BarChart.type.d.ts +14 -9
  523. package/lib/types/component/Chart/BubbleChart.d.ts +1 -1
  524. package/lib/types/component/Chart/BubbleChart.type.d.ts +10 -5
  525. package/lib/types/component/Chart/CigaretteChart.d.ts +1 -1
  526. package/lib/types/component/Chart/CigaretteChart.type.d.ts +18 -8
  527. package/lib/types/component/Chart/CompactHorizontalBarChart.d.ts +1 -1
  528. package/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +10 -6
  529. package/lib/types/component/Chart/DonutChart.d.ts +1 -1
  530. package/lib/types/component/Chart/DonutChart.type.d.ts +16 -7
  531. package/lib/types/component/Chart/HistogramChart.d.ts +1 -1
  532. package/lib/types/component/Chart/HistogramChart.type.d.ts +7 -4
  533. package/lib/types/component/Chart/LineChart.d.ts +1 -1
  534. package/lib/types/component/Chart/LineChart.type.d.ts +16 -7
  535. package/lib/types/component/Chart/RadarChart.d.ts +1 -1
  536. package/lib/types/component/Chart/RadarChart.type.d.ts +7 -5
  537. package/lib/types/component/Chart/ScatterPlotChart.d.ts +1 -1
  538. package/lib/types/component/Chart/ScatterPlotChart.type.d.ts +12 -6
  539. package/lib/types/component/Chart/VennChart.d.ts +1 -1
  540. package/lib/types/component/Chart/VennChart.type.d.ts +12 -6
  541. package/lib/types/component/ChartLegend/BaseLegend.d.ts +8 -6
  542. package/lib/types/component/ChartLegend/BaseLegend.type.d.ts +4 -5
  543. package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.d.ts +1 -1
  544. package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.type.d.ts +4 -5
  545. package/lib/types/component/ChartLegend/LegendItem/LegendItem.d.ts +1 -1
  546. package/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +17 -10
  547. package/lib/types/component/ChartLegend/LegendTable/LegendTable.d.ts +1 -1
  548. package/lib/types/component/ChartLegend/LegendTable/LegendTable.type.d.ts +5 -5
  549. package/lib/types/component/StackGroupBar/StackGroupBar.d.ts +1 -1
  550. package/lib/types/component/StackGroupBar/StackGroupBar.type.d.ts +3 -4
  551. package/lib/types/component/SvgElement.d.ts +10 -0
  552. package/lib/types/index.d.ts +3 -1
  553. package/lib/types/translations/__intergalactic-dynamic-locales.d.ts +12 -0
  554. package/lib/types/utils.d.ts +17 -17
  555. package/package.json +10 -10
@@ -1,52 +1,64 @@
1
1
  import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
+ import _readOnlyError from "@babel/runtime/helpers/readOnlyError";
2
3
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
4
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
5
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
5
6
  import _createClass from "@babel/runtime/helpers/createClass";
6
- import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
7
+ import _callSuper from "@babel/runtime/helpers/callSuper";
7
8
  import _inherits from "@babel/runtime/helpers/inherits";
8
- import _createSuper from "@babel/runtime/helpers/createSuper";
9
9
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
10
+ import { sstyled as _sstyled } from "@semcore/core";
11
+ import { assignProps as _assignProps2 } from "@semcore/core";
10
12
  import { assignProps as _assignProps } from "@semcore/core";
11
- import { makeDataHintsContainer } from '../../a11y/hints';
12
- import { interpolateValue } from '../../utils';
13
- import React from 'react';
13
+ import { Flex, Box } from '@semcore/base-components';
14
14
  import { Component, Root, sstyled } from '@semcore/core';
15
- import { callAllEventHandlers } from '@semcore/utils/lib/assignProps';
16
- import ChartLegend, { ChartLegendTable } from '../ChartLegend';
17
- import { Flex } from '@semcore/flex-box';
15
+ import { extractAriaProps } from '@semcore/core/lib/utils/ariaProps';
16
+ import { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';
17
+ import { Text } from '@semcore/typography';
18
+ import React, { Fragment } from 'react';
19
+
20
+ // @ts-ignore
21
+
18
22
  // @ts-ignore
19
23
  import { Plot, XAxis, YAxis } from '../..';
20
- import { Text } from '@semcore/typography';
21
- import { extractAriaProps } from '@semcore/utils/lib/ariaProps';
24
+ import { makeDataHintsContainer } from '../../a11y/hints';
25
+ /*!__reshadow-styles__:"../../style/abstract-chart.shadow.css"*/
26
+ var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___STooltipChildrenWrapper_q3xi3_gg_{display:grid;grid-column-gap:var(--intergalactic-spacing-2x, 8px);-moz-column-gap:var(--intergalactic-spacing-2x, 8px);column-gap:var(--intergalactic-spacing-2x, 8px)}.___STooltipChildrenWrapper_q3xi3_gg_._columnsCount_2_q3xi3_gg_{grid-template-columns:auto minmax(28px,max-content)}.___STooltipChildrenWrapper_q3xi3_gg_._columnsCount_3_q3xi3_gg_{grid-template-columns:auto minmax(28px,max-content) minmax(28px,max-content)}", /*__inner_css_end__*/"q3xi3_gg_"),
27
+ /*__reshadow_css_end__*/
28
+ {
29
+ "__STooltipChildrenWrapper": "___STooltipChildrenWrapper_q3xi3_gg_",
30
+ "_columnsCount_2": "_columnsCount_2_q3xi3_gg_",
31
+ "_columnsCount_3": "_columnsCount_3_q3xi3_gg_"
32
+ });
33
+ import { interpolateValue } from '../../utils';
34
+ import ChartLegend, { ChartLegendTable } from '../ChartLegend';
35
+ export var NOT_A_VALUE = 'n/a';
22
36
  export var AbstractChart = /*#__PURE__*/function (_Component) {
23
- _inherits(AbstractChart, _Component);
24
- var _super = _createSuper(AbstractChart);
25
- /**
26
- * Padding from the end's of chart to the container (except axis sides)
27
- */
28
-
29
37
  function AbstractChart(props) {
30
38
  var _this;
31
39
  _classCallCheck(this, AbstractChart);
32
- _this = _super.call(this, props);
33
- _defineProperty(_assertThisInitialized(_this), "plotPadding", 6);
34
- _defineProperty(_assertThisInitialized(_this), "dataHints", makeDataHintsContainer());
35
- _defineProperty(_assertThisInitialized(_this), "state", {
40
+ _this = _callSuper(this, AbstractChart, [props]);
41
+ /**
42
+ * Padding from the end's of chart to the container (except axis sides)
43
+ */
44
+ _defineProperty(_this, "plotPadding", 6);
45
+ _defineProperty(_this, "dataHints", makeDataHintsContainer());
46
+ _this.setHighlightedLine = _this.setHighlightedLine.bind(_this);
47
+ _this.handleChangeVisible = _this.handleChangeVisible.bind(_this);
48
+ _this.handleMouseEnter = _this.handleMouseEnter.bind(_this);
49
+ _this.handleMouseLeave = _this.handleMouseLeave.bind(_this);
50
+ _this.resolveColor = _this.resolveColor.bind(_this);
51
+ _this.tooltipValueFormatter = _this.tooltipValueFormatter.bind(_this);
52
+ _this.handleWithTrendChange = _this.handleWithTrendChange.bind(_this);
53
+ _this.state = {
36
54
  dataDefinitions: _this.getDefaultDataDefinitions(),
37
55
  highlightedLine: -1,
38
56
  withTrend: false
39
- });
40
- _this.setHighlightedLine = _this.setHighlightedLine.bind(_assertThisInitialized(_this));
41
- _this.handleChangeVisible = _this.handleChangeVisible.bind(_assertThisInitialized(_this));
42
- _this.handleMouseEnter = _this.handleMouseEnter.bind(_assertThisInitialized(_this));
43
- _this.handleMouseLeave = _this.handleMouseLeave.bind(_assertThisInitialized(_this));
44
- _this.resolveColor = _this.resolveColor.bind(_assertThisInitialized(_this));
45
- _this.tooltipValueFormatter = _this.tooltipValueFormatter.bind(_assertThisInitialized(_this));
46
- _this.handleWithTrendChange = _this.handleWithTrendChange.bind(_assertThisInitialized(_this));
57
+ };
47
58
  return _this;
48
59
  }
49
- _createClass(AbstractChart, [{
60
+ _inherits(AbstractChart, _Component);
61
+ return _createClass(AbstractChart, [{
50
62
  key: "componentDidUpdate",
51
63
  value: function componentDidUpdate(prevProps) {
52
64
  if (prevProps.data !== this.props.data || prevProps.legendProps !== this.props.legendProps) {
@@ -64,7 +76,7 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
64
76
  legendProps = _this$props.legendProps;
65
77
  return this.dataKeys.map(function (key, index) {
66
78
  var _legendProps$legendMa, _legendData$label, _legendData$icon, _legendData$defaultCh;
67
- var legendData = legendProps === null || legendProps === void 0 ? void 0 : (_legendProps$legendMa = legendProps.legendMap) === null || _legendProps$legendMa === void 0 ? void 0 : _legendProps$legendMa[key];
79
+ var legendData = legendProps === null || legendProps === void 0 || (_legendProps$legendMa = legendProps.legendMap) === null || _legendProps$legendMa === void 0 ? void 0 : _legendProps$legendMa[key];
68
80
  var dataDefinition = {
69
81
  id: key,
70
82
  label: (_legendData$label = legendData === null || legendData === void 0 ? void 0 : legendData.label) !== null && _legendData$label !== void 0 ? _legendData$label : key,
@@ -83,7 +95,6 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
83
95
  if (legendData && 'columns' in legendData) {
84
96
  dataDefinition.columns = legendData.columns || [];
85
97
  } else if (!Array.isArray(data)) {
86
- var _value;
87
98
  var value = undefined;
88
99
  var dataValue = data[key];
89
100
  if (data instanceof Map) {
@@ -101,11 +112,11 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
101
112
  var percent = value !== undefined ? (value / total * 100).toFixed(2) : undefined;
102
113
  dataDefinition.columns = [/*#__PURE__*/React.createElement(Text, {
103
114
  key: "".concat(key, "_percent"),
104
- use: 'secondary'
115
+ use: "secondary"
105
116
  }, percent !== undefined ? "".concat(percent, "%") : ''), /*#__PURE__*/React.createElement(Text, {
106
117
  key: "".concat(key, "_value"),
107
118
  use: value ? 'primary' : 'secondary'
108
- }, (_value = value) !== null && _value !== void 0 ? _value : 'n/a')];
119
+ }, value !== null && value !== void 0 ? value : NOT_A_VALUE)];
109
120
  }
110
121
  return dataDefinition;
111
122
  });
@@ -175,10 +186,10 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
175
186
  if (!groupKey && typeof item === 'number') {
176
187
  result.add(item);
177
188
  } else {
178
- Object.entries(item).forEach(function (_ref3) {
179
- var _ref4 = _slicedToArray(_ref3, 2),
180
- key = _ref4[0],
181
- value = _ref4[1];
189
+ Object.entries(item).forEach(function (_ref5) {
190
+ var _ref6 = _slicedToArray(_ref5, 2),
191
+ key = _ref6[0],
192
+ value = _ref6[1];
182
193
  if (key !== groupKey && typeof value === 'number') {
183
194
  result.add(value);
184
195
  }
@@ -204,10 +215,10 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
204
215
  return _max;
205
216
  }
206
217
  var max = data.reduce(function (max, item) {
207
- var barSum = Object.entries(item).reduce(function (sum, _ref5) {
208
- var _ref6 = _slicedToArray(_ref5, 2),
209
- key = _ref6[0],
210
- val = _ref6[1];
218
+ var barSum = Object.entries(item).reduce(function (sum, _ref7) {
219
+ var _ref8 = _slicedToArray(_ref7, 2),
220
+ key = _ref8[0],
221
+ val = _ref8[1];
211
222
  if (key === groupKey) {
212
223
  return sum;
213
224
  }
@@ -230,16 +241,26 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
230
241
  key: "totalValue",
231
242
  value: function totalValue(data) {
232
243
  var dataDefinitions = this.state.dataDefinitions;
244
+ var allNotAValue = true;
233
245
  var total = dataDefinitions.reduce(function (sum, legendItem) {
234
246
  var item = data[legendItem.id];
247
+ if (item === null) {
248
+ allNotAValue = false;
249
+ return sum;
250
+ }
235
251
  if (typeof item === 'number') {
252
+ allNotAValue = false;
236
253
  return sum + item;
237
254
  }
238
255
  if (item instanceof Date && !Number.isNaN(item.getMilliseconds())) {
256
+ allNotAValue = false;
239
257
  return sum + item.getMilliseconds();
240
258
  }
241
259
  return sum;
242
260
  }, 0);
261
+ if (allNotAValue) {
262
+ return Number.NaN;
263
+ }
243
264
  return total;
244
265
  }
245
266
  }, {
@@ -307,7 +328,7 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
307
328
  return tooltipValueFormatter(value);
308
329
  }
309
330
  if (value === undefined || value === interpolateValue) {
310
- return 'n/a';
331
+ return NOT_A_VALUE;
311
332
  }
312
333
  if (value === null) {
313
334
  return '0';
@@ -333,9 +354,9 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
333
354
  direction = _this$asProps5.direction,
334
355
  showLegend = _this$asProps5.showLegend,
335
356
  patterns = _this$asProps5.patterns;
336
- if (!showLegend ||
357
+ if (
337
358
  // we hide Legend for one item on chart except not manually set to show.
338
- this.dataKeys.length === 1 && showLegend === true) {
359
+ showLegend === undefined && this.dataKeys.length === 1 || showLegend === false) {
339
360
  return null;
340
361
  }
341
362
  var _this$state = this.state,
@@ -343,17 +364,17 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
343
364
  withTrend = _this$state.withTrend;
344
365
  var lProps = _objectSpread(_objectSpread({}, this.defaultLegendProps()), legendProps);
345
366
  var commonLegendProps = {
346
- dataHints: this.dataHints,
347
- items: dataDefinitions,
348
- size: lProps.size,
349
- shape: lProps.shape,
350
- w: lProps.w,
351
- h: lProps.h,
367
+ 'dataHints': this.dataHints,
368
+ 'items': dataDefinitions,
369
+ 'size': lProps.size,
370
+ 'shape': lProps.shape,
371
+ 'w': lProps.w,
372
+ 'h': lProps.h,
352
373
  patterns: patterns,
353
- direction: (_lProps$direction = lProps.direction) !== null && _lProps$direction !== void 0 ? _lProps$direction : direction === 'row' || direction === 'row-reverse' ? 'column' : 'row',
354
- onChangeVisibleItem: lProps.disableSelectItems ? undefined : callAllEventHandlers(lProps.onChangeVisibleItem, this.handleChangeVisible),
355
- onMouseEnterItem: lProps.disableHoverItems ? undefined : callAllEventHandlers(lProps.onMouseEnterItem, this.handleMouseEnter),
356
- onMouseLeaveItem: lProps.disableHoverItems ? undefined : callAllEventHandlers(lProps.onMouseLeaveItem, this.handleMouseLeave),
374
+ 'direction': (_lProps$direction = lProps.direction) !== null && _lProps$direction !== void 0 ? _lProps$direction : direction === 'row' || direction === 'row-reverse' ? 'column' : 'row',
375
+ 'onChangeVisibleItem': lProps.disableSelectItems ? undefined : callAllEventHandlers(lProps.onChangeVisibleItem, this.handleChangeVisible),
376
+ 'onMouseEnterItem': lProps.disableHoverItems ? undefined : callAllEventHandlers(lProps.onMouseEnterItem, this.handleMouseEnter),
377
+ 'onMouseLeaveItem': lProps.disableHoverItems ? undefined : callAllEventHandlers(lProps.onMouseLeaveItem, this.handleMouseLeave),
357
378
  'aria-label': this.getLegendAriaLabel()
358
379
  };
359
380
  if (lProps.legendType === 'Table') {
@@ -379,55 +400,114 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
379
400
  showYAxis = _this$asProps6.showYAxis,
380
401
  data = _this$asProps6.data,
381
402
  axisXValueFormatter = _this$asProps6.axisXValueFormatter,
382
- axisYValueFormatter = _this$asProps6.axisYValueFormatter;
403
+ axisYValueFormatter = _this$asProps6.axisYValueFormatter,
404
+ multilineXTicks = _this$asProps6.multilineXTicks,
405
+ multilineYTicks = _this$asProps6.multilineYTicks;
383
406
  if (!Array.isArray(data)) {
384
407
  return null;
385
408
  }
386
409
  var xTicks = this.xTicks;
387
410
  var yTicks = this.yTicks;
388
- var childrenX = axisXValueFormatter ? function (_ref7) {
389
- var value = _ref7.value;
411
+ var childrenX = axisXValueFormatter ? function (_ref9) {
412
+ var value = _ref9.value;
390
413
  return {
391
414
  children: axisXValueFormatter(value)
392
415
  };
393
416
  } : undefined;
394
- var childrenY = axisYValueFormatter ? function (_ref8) {
395
- var value = _ref8.value;
417
+ var childrenY = axisYValueFormatter ? function (_ref0) {
418
+ var value = _ref0.value;
396
419
  return {
397
420
  children: axisYValueFormatter(value)
398
421
  };
399
422
  } : undefined;
400
423
  return /*#__PURE__*/React.createElement(React.Fragment, null, showYAxis && /*#__PURE__*/React.createElement(YAxis, null, yTicks ? /*#__PURE__*/React.createElement(YAxis.Ticks, {
424
+ multiline: multilineYTicks,
401
425
  ticks: yTicks
402
- }, childrenY) : /*#__PURE__*/React.createElement(YAxis.Ticks, null, childrenY), invertAxis !== true && (yTicks ? /*#__PURE__*/React.createElement(YAxis.Grid, {
426
+ }, childrenY) : /*#__PURE__*/React.createElement(YAxis.Ticks, {
427
+ multiline: multilineYTicks
428
+ }, childrenY), invertAxis !== true && (yTicks ? /*#__PURE__*/React.createElement(YAxis.Grid, {
403
429
  ticks: yTicks
404
430
  }) : /*#__PURE__*/React.createElement(YAxis.Grid, null))), showXAxis && /*#__PURE__*/React.createElement(XAxis, null, xTicks ? /*#__PURE__*/React.createElement(XAxis.Ticks, {
431
+ multiline: multilineXTicks,
405
432
  ticks: xTicks
406
- }, childrenX) : /*#__PURE__*/React.createElement(XAxis.Ticks, null, childrenX), invertAxis === true && (xTicks ? /*#__PURE__*/React.createElement(XAxis.Grid, {
433
+ }, childrenX) : /*#__PURE__*/React.createElement(XAxis.Ticks, {
434
+ multiline: multilineXTicks
435
+ }, childrenX), invertAxis === true && (xTicks ? /*#__PURE__*/React.createElement(XAxis.Grid, {
407
436
  ticks: xTicks
408
437
  }) : /*#__PURE__*/React.createElement(XAxis.Grid, null))));
409
438
  }
410
439
  }, {
411
- key: "render",
412
- value: function render() {
440
+ key: "getTooltipChildren",
441
+ value: function getTooltipChildren(options) {
413
442
  var _ref = this.asProps,
414
- _ref2;
415
- var SChart = Flex;
443
+ _ref3,
444
+ _dataItem,
445
+ _this3 = this;
446
+ var STooltipChildrenWrapper = Box;
447
+ var Tooltip = options.Tooltip,
448
+ dataItem = options.dataItem;
416
449
  var _this$asProps7 = this.asProps,
417
450
  styles = _this$asProps7.styles,
418
- plotWidth = _this$asProps7.plotWidth,
419
- plotHeight = _this$asProps7.plotHeight,
420
- data = _this$asProps7.data,
421
- patterns = _this$asProps7.patterns,
422
- a11yAltTextConfig = _this$asProps7.a11yAltTextConfig,
423
- duration = _this$asProps7.duration;
451
+ groupKey = _this$asProps7.groupKey;
452
+ var dataDefinitions = this.state.dataDefinitions;
453
+ var title = (_dataItem = dataItem[groupKey]) === null || _dataItem === void 0 ? void 0 : _dataItem.toString();
454
+ return _ref3 = sstyled(styles), /*#__PURE__*/React.createElement(Flex, _ref3.cn("Flex", {
455
+ "direction": 'column'
456
+ }), title && /*#__PURE__*/React.createElement(Tooltip.Title, null, title), /*#__PURE__*/React.createElement(STooltipChildrenWrapper, _ref3.cn("STooltipChildrenWrapper", _objectSpread({}, _assignProps({
457
+ "columnsCount": '2',
458
+ "__excludeProps": ['data']
459
+ }, _ref))), dataDefinitions.map(function (item) {
460
+ return item.checked && /*#__PURE__*/React.createElement(Fragment, {
461
+ key: item.id
462
+ }, /*#__PURE__*/React.createElement(Tooltip.Dot, {
463
+ mr: 2,
464
+ color: item.color
465
+ }, item.label), /*#__PURE__*/React.createElement(Text, {
466
+ textAlign: "end",
467
+ bold: true
468
+ }, _this3.tooltipValueFormatter(dataItem[item.id])));
469
+ }), this.renderTooltipTotalLine(dataItem)));
470
+ }
471
+ }, {
472
+ key: "renderTooltipTotalLine",
473
+ value: function renderTooltipTotalLine(dataItem) {
474
+ var showTotalInTooltip = this.asProps.showTotalInTooltip;
475
+ if (!showTotalInTooltip) {
476
+ return null;
477
+ }
478
+ var total = this.totalValue(dataItem);
479
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Box, {
480
+ mt: 2,
481
+ mr: 2
482
+ }, "Total"), /*#__PURE__*/React.createElement(Text, {
483
+ mt: 2,
484
+ textAlign: "end",
485
+ bold: true
486
+ }, Number.isNaN(total) ? NOT_A_VALUE : total));
487
+ }
488
+ }, {
489
+ key: "render",
490
+ value: function render() {
491
+ var _ref2 = this.asProps,
492
+ _ref4;
493
+ var SChart = Flex;
494
+ var _this$asProps8 = this.asProps,
495
+ styles = _this$asProps8.styles,
496
+ plotWidth = _this$asProps8.plotWidth,
497
+ plotHeight = _this$asProps8.plotHeight,
498
+ data = _this$asProps8.data,
499
+ patterns = _this$asProps8.patterns,
500
+ a11yAltTextConfig = _this$asProps8.a11yAltTextConfig,
501
+ duration = _this$asProps8.duration,
502
+ eventEmitter = _this$asProps8.eventEmitter,
503
+ showTooltip = _this$asProps8.showTooltip;
424
504
  var _extractAriaProps = extractAriaProps(this.asProps),
425
505
  extractedAriaProps = _extractAriaProps.extractedAriaProps;
426
- return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SChart, _ref2.cn("SChart", _objectSpread({}, _assignProps({
506
+ return _ref4 = sstyled(styles), /*#__PURE__*/React.createElement(SChart, _ref4.cn("SChart", _objectSpread({}, _assignProps2({
427
507
  "gap": 5,
428
- "__excludeProps": ['data'],
508
+ "__excludeProps": ['data', 'eventEmitter'],
429
509
  "role": 'group'
430
- }, _ref))), this.renderLegend(), /*#__PURE__*/React.createElement(Plot, _ref2.cn("Plot", _objectSpread({
510
+ }, _ref2))), this.renderLegend(), /*#__PURE__*/React.createElement(Plot, _ref4.cn("Plot", _objectSpread({
431
511
  "data": data,
432
512
  "scale": [this.xScale, this.yScale],
433
513
  "width": plotWidth,
@@ -435,18 +515,17 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
435
515
  "dataHints": this.dataHints,
436
516
  "a11yAltTextConfig": a11yAltTextConfig,
437
517
  "patterns": patterns,
438
- "duration": duration
439
- }, extractedAriaProps)), this.renderAxis(), this.renderTooltip(), this.renderChart()));
518
+ "duration": duration,
519
+ "eventEmitter": eventEmitter
520
+ }, extractedAriaProps)), this.renderAxis(), !showTooltip ? null : this.renderTooltip(), this.renderChart()));
440
521
  }
441
522
  }]);
442
- return AbstractChart;
443
523
  }(Component);
444
- _defineProperty(AbstractChart, "style", {});
524
+ _defineProperty(AbstractChart, "style", style);
445
525
  _defineProperty(AbstractChart, "defaultProps", {
446
526
  direction: 'column',
447
527
  showXAxis: true,
448
528
  showYAxis: true,
449
- showTooltip: true,
450
- showLegend: true
529
+ showTooltip: true
451
530
  });
452
531
  //# sourceMappingURL=AbstractChart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractChart.js","names":["makeDataHintsContainer","interpolateValue","React","Component","Root","sstyled","callAllEventHandlers","ChartLegend","ChartLegendTable","Flex","Plot","XAxis","YAxis","Text","extractAriaProps","AbstractChart","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","dataDefinitions","getDefaultDataDefinitions","highlightedLine","withTrend","setHighlightedLine","bind","handleChangeVisible","handleMouseEnter","handleMouseLeave","resolveColor","tooltipValueFormatter","handleWithTrendChange","_createClass","key","value","componentDidUpdate","prevProps","data","legendProps","setState","_this2","_this$props","dataKeys","map","index","_legendProps$legendMa","_legendData$label","_legendData$icon","_legendData$defaultCh","legendData","legendMap","dataDefinition","id","label","icon","undefined","checked","defaultChecked","color","columns","additionalInfo","count","Array","isArray","_value","dataValue","Map","get","Number","total","Object","values","reduce","sum","i","percent","toFixed","createElement","concat","use","_this$props2","groupKey","keys","filter","_this$asProps","asProps","invertAxis","xTicksCount","yTicksCount","scale","xScale","ticks","_this$asProps2","yScale","_this$asProps3","flatValues","result","item","add","entries","forEach","_ref3","_ref4","_slicedToArray","Set","_this$asProps4","max","val","barSum","_ref5","_ref6","Date","isNaN","getMilliseconds","totalValue","state","legendItem","getValueScale","Math","apply","_toConsumableArray","min","avg","round","log10","valueScale","pow","isVisible","prevState","findIndex","line","_this$props$colorMap$","_this$props$colorMap","colorMap","toDateString","toString","defaultLegendProps","legendType","renderLegend","_lProps$direction","_this$asProps5","direction","showLegend","patterns","length","_this$state","lProps","_objectSpread","commonLegendProps","dataHints","items","size","shape","w","h","onChangeVisibleItem","disableSelectItems","onMouseEnterItem","disableHoverItems","onMouseLeaveItem","getLegendAriaLabel","flexLegendProps","trendLabel","trendIsVisible","onTrendIsVisibleChange","renderAxis","_this$asProps6","showXAxis","showYAxis","axisXValueFormatter","axisYValueFormatter","xTicks","yTicks","childrenX","_ref7","children","childrenY","_ref8","Fragment","Ticks","Grid","render","_ref","_ref2","SChart","_this$asProps7","styles","plotWidth","plotHeight","a11yAltTextConfig","duration","_extractAriaProps","extractedAriaProps","cn","_assignProps","renderTooltip","renderChart","showTooltip"],"sources":["../../../../src/component/Chart/AbstractChart.tsx"],"sourcesContent":["import { makeDataHintsContainer } from '../../a11y/hints';\nimport { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport { interpolateValue } from '../../utils';\nimport React from 'react';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport { BaseChartProps, BaseLegendProps, ListData, ObjectData } from './AbstractChart.type';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport ChartLegend, { ChartLegendTable } from '../ChartLegend';\nimport { Flex } from '@semcore/flex-box';\n// @ts-ignore\nimport { Plot, XAxis, YAxis } from '../..';\nimport { Text } from '@semcore/typography';\nimport { LegendFlexProps } from '../ChartLegend/LegendFlex/LegendFlex.type';\nimport { LegendTableProps } from '../ChartLegend/LegendTable/LegendTable.type';\nimport { extractAriaProps } from '@semcore/utils/lib/ariaProps';\n\ntype ChartState = {\n dataDefinitions: Array<LegendItem & { columns: React.ReactNode[] }>;\n highlightedLine: number;\n withTrend: boolean;\n};\n\nexport abstract class AbstractChart<\n D extends ListData | ObjectData,\n T extends BaseChartProps<D>,\n E extends readonly ((...args: any[]) => any)[] = [],\n> extends Component<T, {}, ChartState, E> {\n public static style = {};\n public static defaultProps: Partial<BaseChartProps<any>> = {\n direction: 'column',\n showXAxis: true,\n showYAxis: true,\n showTooltip: true,\n showLegend: true,\n };\n\n /**\n * Padding from the end's of chart to the container (except axis sides)\n */\n protected plotPadding = 6;\n\n protected dataHints = makeDataHintsContainer();\n\n public state: ChartState = {\n dataDefinitions: this.getDefaultDataDefinitions(),\n highlightedLine: -1,\n withTrend: false,\n };\n\n constructor(props: T) {\n super(props);\n\n this.setHighlightedLine = this.setHighlightedLine.bind(this);\n this.handleChangeVisible = this.handleChangeVisible.bind(this);\n this.handleMouseEnter = this.handleMouseEnter.bind(this);\n this.handleMouseLeave = this.handleMouseLeave.bind(this);\n this.resolveColor = this.resolveColor.bind(this);\n this.tooltipValueFormatter = this.tooltipValueFormatter.bind(this);\n this.handleWithTrendChange = this.handleWithTrendChange.bind(this);\n }\n\n public componentDidUpdate(prevProps: T) {\n if (prevProps.data !== this.props.data || prevProps.legendProps !== this.props.legendProps) {\n this.setState({ dataDefinitions: this.getDefaultDataDefinitions() });\n }\n }\n\n protected getDefaultDataDefinitions(): Array<LegendItem & { columns: React.ReactNode[] }> {\n const { data, legendProps } = this.props;\n\n return this.dataKeys.map((key, index) => {\n const legendData = legendProps?.legendMap?.[key];\n\n const dataDefinition: LegendItem & { columns: React.ReactNode[] } = {\n id: key,\n label: legendData?.label ?? key,\n icon: legendData?.icon ?? undefined,\n checked: legendData?.defaultChecked ?? true,\n color: this.resolveColor(key, index),\n columns: [],\n };\n\n if (legendData?.additionalInfo || legendData?.count) {\n dataDefinition.additionalInfo = legendData.additionalInfo\n ? { label: legendData.additionalInfo }\n : legendData.count\n ? { count: legendData.count }\n : undefined;\n }\n\n if (legendData && 'columns' in legendData) {\n dataDefinition.columns = legendData.columns || [];\n } else if (!Array.isArray(data)) {\n let value: number | undefined = undefined;\n let dataValue = data[key];\n\n if (data instanceof Map) {\n dataValue = data.get(key);\n }\n\n if (dataValue !== interpolateValue) {\n value = Number(dataValue);\n }\n\n const total = Object.values(data).reduce<number>((sum, i) => {\n if (i !== interpolateValue) {\n return sum + Number(i);\n }\n\n return sum;\n }, 0);\n const percent = value !== undefined ? ((value / total) * 100).toFixed(2) : undefined;\n\n dataDefinition.columns = [\n <Text key={`${key}_percent`} use={'secondary'}>\n {percent !== undefined ? `${percent}%` : ''}\n </Text>,\n <Text key={`${key}_value`} use={value ? 'primary' : 'secondary'}>\n {value ?? 'n/a'}\n </Text>,\n ];\n }\n\n return dataDefinition;\n });\n }\n\n protected abstract get xScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n protected abstract get yScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n\n protected abstract getLegendAriaLabel(): string;\n protected abstract renderChart(): React.ReactNode;\n protected abstract renderTooltip(): React.ReactNode;\n\n protected get dataKeys(): string[] {\n const { data, groupKey } = this.props;\n\n let dataKeys: string[];\n\n if (Array.isArray(data) && groupKey) {\n dataKeys = Object.keys(data[0]).filter((key) => key !== groupKey);\n } else {\n dataKeys = Object.keys(data);\n }\n\n return dataKeys;\n }\n\n protected get xTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.xScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && yTicksCount) {\n return scale.ticks(yTicksCount);\n } else if (xTicksCount) {\n return scale.ticks(xTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get yTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.yScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && xTicksCount) {\n return scale.ticks(xTicksCount);\n } else if (yTicksCount) {\n return scale.ticks(yTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get flatValues(): Set<number> {\n const { data, groupKey } = this.asProps;\n const values: any[] = Array.isArray(data) ? data : Object.values(data);\n\n const flatValues = values.reduce<Set<number>>((result, item) => {\n if (!groupKey && typeof item === 'number') {\n result.add(item);\n } else {\n Object.entries(item).forEach(([key, value]) => {\n if (key !== groupKey && typeof value === 'number') {\n result.add(value);\n }\n });\n }\n\n return result;\n }, new Set());\n\n return flatValues;\n }\n\n protected get maxStackedValue(): number {\n const { data, groupKey } = this.asProps;\n\n if (!Array.isArray(data)) {\n const max = Object.values(data).reduce<number>((sum, val) => {\n if (typeof val === 'number') {\n sum = sum + val;\n }\n\n return sum;\n }, 0);\n\n return max;\n }\n\n const max = data.reduce((max, item) => {\n const barSum = Object.entries(item).reduce<number>((sum, [key, val]) => {\n if (key === groupKey) {\n return sum;\n }\n\n if (typeof val === 'number') {\n return sum + val;\n }\n\n if (val instanceof Date && !Number.isNaN(val.getMilliseconds())) {\n return sum + val.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n if (barSum > max) {\n max = barSum;\n }\n\n return max;\n }, 0);\n\n return max;\n }\n\n protected totalValue(data: ObjectData): number {\n const { dataDefinitions } = this.state;\n\n const total = dataDefinitions.reduce((sum, legendItem) => {\n const item = data[legendItem.id];\n\n if (typeof item === 'number') {\n return sum + item;\n }\n\n if (item instanceof Date && !Number.isNaN(item.getMilliseconds())) {\n return sum + item.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n return total;\n }\n\n protected getValueScale(values: number[]): number {\n const max = Math.max(...values);\n const min = Math.min(...values);\n\n const avg = (max + min) / 2;\n const count = Math.round(Math.log10(avg));\n\n const valueScale = 100 / 10 ** count;\n\n return valueScale;\n }\n\n protected setHighlightedLine(index: number) {\n this.setState({ highlightedLine: index });\n }\n\n protected handleChangeVisible(id: string, isVisible: boolean) {\n this.setState((prevState) => {\n const dataDefinitions = prevState.dataDefinitions.map((item) => {\n if (item.id === id) {\n item.checked = isVisible;\n }\n\n return item;\n });\n\n return { dataDefinitions };\n });\n }\n\n protected handleWithTrendChange(isVisible: boolean) {\n this.setState({ withTrend: isVisible });\n }\n\n protected handleMouseEnter(id: string) {\n this.setHighlightedLine(this.state.dataDefinitions.findIndex((line) => line.id === id));\n }\n\n protected handleMouseLeave() {\n this.setHighlightedLine(-1);\n }\n\n protected resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `chart-palette-order-${index + 1}`;\n }\n\n protected tooltipValueFormatter(\n value?: string | number | typeof interpolateValue | Date,\n ): string {\n const { tooltipValueFormatter } = this.asProps;\n\n if (tooltipValueFormatter) {\n return tooltipValueFormatter(value);\n }\n\n if (value === undefined || value === interpolateValue) {\n return 'n/a';\n }\n\n if (value === null) {\n return '0';\n }\n\n if (value instanceof Date) {\n return value.toDateString();\n }\n\n return value.toString();\n }\n\n protected defaultLegendProps(): Partial<BaseLegendProps> {\n return {\n legendType: 'Flex',\n };\n }\n\n protected renderLegend() {\n const { legendProps, direction, showLegend, patterns } = this.asProps;\n\n if (\n !showLegend ||\n // we hide Legend for one item on chart except not manually set to show.\n (this.dataKeys.length === 1 && showLegend === true)\n ) {\n return null;\n }\n\n const { dataDefinitions, withTrend } = this.state;\n const lProps = {\n ...this.defaultLegendProps(),\n ...legendProps,\n };\n\n const commonLegendProps: LegendFlexProps | LegendTableProps = {\n dataHints: this.dataHints,\n items: dataDefinitions,\n size: lProps.size,\n shape: lProps.shape,\n w: lProps.w,\n h: lProps.h,\n patterns,\n direction:\n lProps.direction ?? (direction === 'row' || direction === 'row-reverse' ? 'column' : 'row'),\n onChangeVisibleItem: lProps.disableSelectItems\n ? undefined\n : callAllEventHandlers(lProps.onChangeVisibleItem, this.handleChangeVisible),\n onMouseEnterItem: lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseEnterItem, this.handleMouseEnter),\n onMouseLeaveItem: lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseLeaveItem, this.handleMouseLeave),\n 'aria-label': this.getLegendAriaLabel(),\n };\n\n if (lProps.legendType === 'Table') {\n return <ChartLegendTable {...(commonLegendProps as LegendTableProps)} />;\n }\n\n if ('withTrend' in lProps) {\n const flexLegendProps = {\n ...commonLegendProps,\n withTrend: true,\n trendLabel: lProps.trendLabel,\n trendIsVisible: withTrend,\n onTrendIsVisibleChange: this.handleWithTrendChange,\n };\n\n return <ChartLegend {...(flexLegendProps as LegendFlexProps)} />;\n }\n\n return <ChartLegend {...(commonLegendProps as LegendFlexProps)} />;\n }\n\n protected renderAxis(): React.ReactNode {\n const { invertAxis, showXAxis, showYAxis, data, axisXValueFormatter, axisYValueFormatter } =\n this.asProps;\n\n if (!Array.isArray(data)) {\n return null;\n }\n\n const xTicks = this.xTicks;\n const yTicks = this.yTicks;\n\n const childrenX = axisXValueFormatter\n ? ({ value }: any) => ({ children: axisXValueFormatter(value) })\n : undefined;\n const childrenY = axisYValueFormatter\n ? ({ value }: any) => ({ children: axisYValueFormatter(value) })\n : undefined;\n\n return (\n <>\n {showYAxis && (\n <YAxis>\n {yTicks ? (\n <YAxis.Ticks ticks={yTicks}>{childrenY}</YAxis.Ticks>\n ) : (\n <YAxis.Ticks>{childrenY}</YAxis.Ticks>\n )}\n {invertAxis !== true && (yTicks ? <YAxis.Grid ticks={yTicks} /> : <YAxis.Grid />)}\n </YAxis>\n )}\n\n {showXAxis && (\n <XAxis>\n {xTicks ? (\n <XAxis.Ticks ticks={xTicks}>{childrenX}</XAxis.Ticks>\n ) : (\n <XAxis.Ticks>{childrenX}</XAxis.Ticks>\n )}\n {invertAxis === true && (xTicks ? <XAxis.Grid ticks={xTicks} /> : <XAxis.Grid />)}\n </XAxis>\n )}\n </>\n );\n }\n\n public render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, a11yAltTextConfig, duration } =\n this.asProps;\n\n const { extractedAriaProps } = extractAriaProps(this.asProps);\n\n return sstyled(styles)(\n <SChart render={Flex} gap={5} __excludeProps={['data']} role={'group'}>\n {this.renderLegend()}\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n a11yAltTextConfig={a11yAltTextConfig}\n patterns={patterns}\n duration={duration}\n {...extractedAriaProps}\n >\n {this.renderAxis()}\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </SChart>,\n );\n }\n}\n"],"mappings":";;;;;;;;;;AAAA,SAASA,sBAAsB,QAAQ,kBAAkB;AAGzD,SAASC,gBAAgB,QAAQ,aAAa;AAC9C,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,EAAEC,IAAI,EAAEC,OAAO,QAAQ,eAAe;AAExD,SAASC,oBAAoB,QAAQ,gCAAgC;AACrE,OAAOC,WAAW,IAAIC,gBAAgB,QAAQ,gBAAgB;AAC9D,SAASC,IAAI,QAAQ,mBAAmB;AACxC;AACA,SAASC,IAAI,EAAEC,KAAK,EAAEC,KAAK,QAAQ,OAAO;AAC1C,SAASC,IAAI,QAAQ,qBAAqB;AAG1C,SAASC,gBAAgB,QAAQ,8BAA8B;AAQ/D,WAAsBC,aAAa,0BAAAC,UAAA;EAAAC,SAAA,CAAAF,aAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,aAAA;EAcjC;AACF;AACA;;EAWE,SAAAA,cAAYK,KAAQ,EAAE;IAAA,IAAAC,KAAA;IAAAC,eAAA,OAAAP,aAAA;IACpBM,KAAA,GAAAH,MAAA,CAAAK,IAAA,OAAMH,KAAK;IAAEI,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,kBAXS,CAAC;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,gBAEHrB,sBAAsB,EAAE;IAAAwB,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,YAEnB;MACzBK,eAAe,EAAEL,KAAA,CAAKM,yBAAyB,EAAE;MACjDC,eAAe,EAAE,CAAC,CAAC;MACnBC,SAAS,EAAE;IACb,CAAC;IAKCR,KAAA,CAAKS,kBAAkB,GAAGT,KAAA,CAAKS,kBAAkB,CAACC,IAAI,CAAAN,sBAAA,CAAAJ,KAAA,EAAM;IAC5DA,KAAA,CAAKW,mBAAmB,GAAGX,KAAA,CAAKW,mBAAmB,CAACD,IAAI,CAAAN,sBAAA,CAAAJ,KAAA,EAAM;IAC9DA,KAAA,CAAKY,gBAAgB,GAAGZ,KAAA,CAAKY,gBAAgB,CAACF,IAAI,CAAAN,sBAAA,CAAAJ,KAAA,EAAM;IACxDA,KAAA,CAAKa,gBAAgB,GAAGb,KAAA,CAAKa,gBAAgB,CAACH,IAAI,CAAAN,sBAAA,CAAAJ,KAAA,EAAM;IACxDA,KAAA,CAAKc,YAAY,GAAGd,KAAA,CAAKc,YAAY,CAACJ,IAAI,CAAAN,sBAAA,CAAAJ,KAAA,EAAM;IAChDA,KAAA,CAAKe,qBAAqB,GAAGf,KAAA,CAAKe,qBAAqB,CAACL,IAAI,CAAAN,sBAAA,CAAAJ,KAAA,EAAM;IAClEA,KAAA,CAAKgB,qBAAqB,GAAGhB,KAAA,CAAKgB,qBAAqB,CAACN,IAAI,CAAAN,sBAAA,CAAAJ,KAAA,EAAM;IAAC,OAAAA,KAAA;EACrE;EAACiB,YAAA,CAAAvB,aAAA;IAAAwB,GAAA;IAAAC,KAAA,EAED,SAAAC,mBAA0BC,SAAY,EAAE;MACtC,IAAIA,SAAS,CAACC,IAAI,KAAK,IAAI,CAACvB,KAAK,CAACuB,IAAI,IAAID,SAAS,CAACE,WAAW,KAAK,IAAI,CAACxB,KAAK,CAACwB,WAAW,EAAE;QAC1F,IAAI,CAACC,QAAQ,CAAC;UAAEnB,eAAe,EAAE,IAAI,CAACC,yBAAyB;QAAG,CAAC,CAAC;MACtE;IACF;EAAC;IAAAY,GAAA;IAAAC,KAAA,EAED,SAAAb,0BAAA,EAA0F;MAAA,IAAAmB,MAAA;MACxF,IAAAC,WAAA,GAA8B,IAAI,CAAC3B,KAAK;QAAhCuB,IAAI,GAAAI,WAAA,CAAJJ,IAAI;QAAEC,WAAW,GAAAG,WAAA,CAAXH,WAAW;MAEzB,OAAO,IAAI,CAACI,QAAQ,CAACC,GAAG,CAAC,UAACV,GAAG,EAAEW,KAAK,EAAK;QAAA,IAAAC,qBAAA,EAAAC,iBAAA,EAAAC,gBAAA,EAAAC,qBAAA;QACvC,IAAMC,UAAU,GAAGX,WAAW,aAAXA,WAAW,wBAAAO,qBAAA,GAAXP,WAAW,CAAEY,SAAS,cAAAL,qBAAA,uBAAtBA,qBAAA,CAAyBZ,GAAG,CAAC;QAEhD,IAAMkB,cAA2D,GAAG;UAClEC,EAAE,EAAEnB,GAAG;UACPoB,KAAK,GAAAP,iBAAA,GAAEG,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEI,KAAK,cAAAP,iBAAA,cAAAA,iBAAA,GAAIb,GAAG;UAC/BqB,IAAI,GAAAP,gBAAA,GAAEE,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEK,IAAI,cAAAP,gBAAA,cAAAA,gBAAA,GAAIQ,SAAS;UACnCC,OAAO,GAAAR,qBAAA,GAAEC,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEQ,cAAc,cAAAT,qBAAA,cAAAA,qBAAA,GAAI,IAAI;UAC3CU,KAAK,EAAElB,MAAI,CAACX,YAAY,CAACI,GAAG,EAAEW,KAAK,CAAC;UACpCe,OAAO,EAAE;QACX,CAAC;QAED,IAAIV,UAAU,aAAVA,UAAU,eAAVA,UAAU,CAAEW,cAAc,IAAIX,UAAU,aAAVA,UAAU,eAAVA,UAAU,CAAEY,KAAK,EAAE;UACnDV,cAAc,CAACS,cAAc,GAAGX,UAAU,CAACW,cAAc,GACrD;YAAEP,KAAK,EAAEJ,UAAU,CAACW;UAAe,CAAC,GACpCX,UAAU,CAACY,KAAK,GAChB;YAAEA,KAAK,EAAEZ,UAAU,CAACY;UAAM,CAAC,GAC3BN,SAAS;QACf;QAEA,IAAIN,UAAU,IAAI,SAAS,IAAIA,UAAU,EAAE;UACzCE,cAAc,CAACQ,OAAO,GAAGV,UAAU,CAACU,OAAO,IAAI,EAAE;QACnD,CAAC,MAAM,IAAI,CAACG,KAAK,CAACC,OAAO,CAAC1B,IAAI,CAAC,EAAE;UAAA,IAAA2B,MAAA;UAC/B,IAAI9B,KAAyB,GAAGqB,SAAS;UACzC,IAAIU,SAAS,GAAG5B,IAAI,CAACJ,GAAG,CAAC;UAEzB,IAAII,IAAI,YAAY6B,GAAG,EAAE;YACvBD,SAAS,GAAG5B,IAAI,CAAC8B,GAAG,CAAClC,GAAG,CAAC;UAC3B;UAEA,IAAIgC,SAAS,KAAKtE,gBAAgB,EAAE;YAClCuC,KAAK,GAAGkC,MAAM,CAACH,SAAS,CAAC;UAC3B;UAEA,IAAMI,KAAK,GAAGC,MAAM,CAACC,MAAM,CAAClC,IAAI,CAAC,CAACmC,MAAM,CAAS,UAACC,GAAG,EAAEC,CAAC,EAAK;YAC3D,IAAIA,CAAC,KAAK/E,gBAAgB,EAAE;cAC1B,OAAO8E,GAAG,GAAGL,MAAM,CAACM,CAAC,CAAC;YACxB;YAEA,OAAOD,GAAG;UACZ,CAAC,EAAE,CAAC,CAAC;UACL,IAAME,OAAO,GAAGzC,KAAK,KAAKqB,SAAS,GAAG,CAAErB,KAAK,GAAGmC,KAAK,GAAI,GAAG,EAAEO,OAAO,CAAC,CAAC,CAAC,GAAGrB,SAAS;UAEpFJ,cAAc,CAACQ,OAAO,GAAG,cACvB/D,KAAA,CAAAiF,aAAA,CAACtE,IAAI;YAAC0B,GAAG,KAAA6C,MAAA,CAAK7C,GAAG,aAAW;YAAC8C,GAAG,EAAE;UAAY,GAC3CJ,OAAO,KAAKpB,SAAS,MAAAuB,MAAA,CAAMH,OAAO,SAAM,EAAE,CACtC,eACP/E,KAAA,CAAAiF,aAAA,CAACtE,IAAI;YAAC0B,GAAG,KAAA6C,MAAA,CAAK7C,GAAG,WAAS;YAAC8C,GAAG,EAAE7C,KAAK,GAAG,SAAS,GAAG;UAAY,IAAA8B,MAAA,GAC7D9B,KAAK,cAAA8B,MAAA,cAAAA,MAAA,GAAI,KAAK,CACV,CACR;QACH;QAEA,OAAOb,cAAc;MACvB,CAAC,CAAC;IACJ;EAAC;IAAAlB,GAAA;IAAAkC,GAAA,EASD,SAAAA,IAAA,EAAmC;MACjC,IAAAa,YAAA,GAA2B,IAAI,CAAClE,KAAK;QAA7BuB,IAAI,GAAA2C,YAAA,CAAJ3C,IAAI;QAAE4C,QAAQ,GAAAD,YAAA,CAARC,QAAQ;MAEtB,IAAIvC,QAAkB;MAEtB,IAAIoB,KAAK,CAACC,OAAO,CAAC1B,IAAI,CAAC,IAAI4C,QAAQ,EAAE;QACnCvC,QAAQ,GAAG4B,MAAM,CAACY,IAAI,CAAC7C,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC8C,MAAM,CAAC,UAAClD,GAAG;UAAA,OAAKA,GAAG,KAAKgD,QAAQ;QAAA,EAAC;MACnE,CAAC,MAAM;QACLvC,QAAQ,GAAG4B,MAAM,CAACY,IAAI,CAAC7C,IAAI,CAAC;MAC9B;MAEA,OAAOK,QAAQ;IACjB;EAAC;IAAAT,GAAA;IAAAkC,GAAA,EAED,SAAAA,IAAA,EAAsD;MACpD,IAAAiB,aAAA,GAAuD,IAAI,CAACC,OAAO;QAA3DhD,IAAI,GAAA+C,aAAA,CAAJ/C,IAAI;QAAEiD,UAAU,GAAAF,aAAA,CAAVE,UAAU;QAAEC,WAAW,GAAAH,aAAA,CAAXG,WAAW;QAAEC,WAAW,GAAAJ,aAAA,CAAXI,WAAW;MAElD,IAAMC,KAAK,GAAG,IAAI,CAACC,MAAM;MAEzB,IAAI5B,KAAK,CAACC,OAAO,CAAC1B,IAAI,CAAC,IAAI,OAAO,IAAIoD,KAAK,EAAE;QAC3C,IAAIH,UAAU,IAAIE,WAAW,EAAE;UAC7B,OAAOC,KAAK,CAACE,KAAK,CAACH,WAAW,CAAC;QACjC,CAAC,MAAM,IAAID,WAAW,EAAE;UACtB,OAAOE,KAAK,CAACE,KAAK,CAACJ,WAAW,CAAC;QACjC;QAEA,OAAOhC,SAAS;MAClB;MAEA,OAAOA,SAAS;IAClB;EAAC;IAAAtB,GAAA;IAAAkC,GAAA,EAED,SAAAA,IAAA,EAAsD;MACpD,IAAAyB,cAAA,GAAuD,IAAI,CAACP,OAAO;QAA3DhD,IAAI,GAAAuD,cAAA,CAAJvD,IAAI;QAAEiD,UAAU,GAAAM,cAAA,CAAVN,UAAU;QAAEC,WAAW,GAAAK,cAAA,CAAXL,WAAW;QAAEC,WAAW,GAAAI,cAAA,CAAXJ,WAAW;MAElD,IAAMC,KAAK,GAAG,IAAI,CAACI,MAAM;MAEzB,IAAI/B,KAAK,CAACC,OAAO,CAAC1B,IAAI,CAAC,IAAI,OAAO,IAAIoD,KAAK,EAAE;QAC3C,IAAIH,UAAU,IAAIC,WAAW,EAAE;UAC7B,OAAOE,KAAK,CAACE,KAAK,CAACJ,WAAW,CAAC;QACjC,CAAC,MAAM,IAAIC,WAAW,EAAE;UACtB,OAAOC,KAAK,CAACE,KAAK,CAACH,WAAW,CAAC;QACjC;QAEA,OAAOjC,SAAS;MAClB;MAEA,OAAOA,SAAS;IAClB;EAAC;IAAAtB,GAAA;IAAAkC,GAAA,EAED,SAAAA,IAAA,EAAwC;MACtC,IAAA2B,cAAA,GAA2B,IAAI,CAACT,OAAO;QAA/BhD,IAAI,GAAAyD,cAAA,CAAJzD,IAAI;QAAE4C,QAAQ,GAAAa,cAAA,CAARb,QAAQ;MACtB,IAAMV,MAAa,GAAGT,KAAK,CAACC,OAAO,CAAC1B,IAAI,CAAC,GAAGA,IAAI,GAAGiC,MAAM,CAACC,MAAM,CAAClC,IAAI,CAAC;MAEtE,IAAM0D,UAAU,GAAGxB,MAAM,CAACC,MAAM,CAAc,UAACwB,MAAM,EAAEC,IAAI,EAAK;QAC9D,IAAI,CAAChB,QAAQ,IAAI,OAAOgB,IAAI,KAAK,QAAQ,EAAE;UACzCD,MAAM,CAACE,GAAG,CAACD,IAAI,CAAC;QAClB,CAAC,MAAM;UACL3B,MAAM,CAAC6B,OAAO,CAACF,IAAI,CAAC,CAACG,OAAO,CAAC,UAAAC,KAAA,EAAkB;YAAA,IAAAC,KAAA,GAAAC,cAAA,CAAAF,KAAA;cAAhBpE,GAAG,GAAAqE,KAAA;cAAEpE,KAAK,GAAAoE,KAAA;YACvC,IAAIrE,GAAG,KAAKgD,QAAQ,IAAI,OAAO/C,KAAK,KAAK,QAAQ,EAAE;cACjD8D,MAAM,CAACE,GAAG,CAAChE,KAAK,CAAC;YACnB;UACF,CAAC,CAAC;QACJ;QAEA,OAAO8D,MAAM;MACf,CAAC,EAAE,IAAIQ,GAAG,EAAE,CAAC;MAEb,OAAOT,UAAU;IACnB;EAAC;IAAA9D,GAAA;IAAAkC,GAAA,EAED,SAAAA,IAAA,EAAwC;MACtC,IAAAsC,cAAA,GAA2B,IAAI,CAACpB,OAAO;QAA/BhD,IAAI,GAAAoE,cAAA,CAAJpE,IAAI;QAAE4C,QAAQ,GAAAwB,cAAA,CAARxB,QAAQ;MAEtB,IAAI,CAACnB,KAAK,CAACC,OAAO,CAAC1B,IAAI,CAAC,EAAE;QACxB,IAAMqE,IAAG,GAAGpC,MAAM,CAACC,MAAM,CAAClC,IAAI,CAAC,CAACmC,MAAM,CAAS,UAACC,GAAG,EAAEkC,GAAG,EAAK;UAC3D,IAAI,OAAOA,GAAG,KAAK,QAAQ,EAAE;YAC3BlC,GAAG,GAAGA,GAAG,GAAGkC,GAAG;UACjB;UAEA,OAAOlC,GAAG;QACZ,CAAC,EAAE,CAAC,CAAC;QAEL,OAAOiC,IAAG;MACZ;MAEA,IAAMA,GAAG,GAAGrE,IAAI,CAACmC,MAAM,CAAC,UAACkC,GAAG,EAAET,IAAI,EAAK;QACrC,IAAMW,MAAM,GAAGtC,MAAM,CAAC6B,OAAO,CAACF,IAAI,CAAC,CAACzB,MAAM,CAAS,UAACC,GAAG,EAAAoC,KAAA,EAAiB;UAAA,IAAAC,KAAA,GAAAP,cAAA,CAAAM,KAAA;YAAd5E,GAAG,GAAA6E,KAAA;YAAEH,GAAG,GAAAG,KAAA;UAChE,IAAI7E,GAAG,KAAKgD,QAAQ,EAAE;YACpB,OAAOR,GAAG;UACZ;UAEA,IAAI,OAAOkC,GAAG,KAAK,QAAQ,EAAE;YAC3B,OAAOlC,GAAG,GAAGkC,GAAG;UAClB;UAEA,IAAIA,GAAG,YAAYI,IAAI,IAAI,CAAC3C,MAAM,CAAC4C,KAAK,CAACL,GAAG,CAACM,eAAe,EAAE,CAAC,EAAE;YAC/D,OAAOxC,GAAG,GAAGkC,GAAG,CAACM,eAAe,EAAE;UACpC;UAEA,OAAOxC,GAAG;QACZ,CAAC,EAAE,CAAC,CAAC;QAEL,IAAImC,MAAM,GAAGF,GAAG,EAAE;UAChBA,GAAG,GAAGE,MAAM;QACd;QAEA,OAAOF,GAAG;MACZ,CAAC,EAAE,CAAC,CAAC;MAEL,OAAOA,GAAG;IACZ;EAAC;IAAAzE,GAAA;IAAAC,KAAA,EAED,SAAAgF,WAAqB7E,IAAgB,EAAU;MAC7C,IAAQjB,eAAe,GAAK,IAAI,CAAC+F,KAAK,CAA9B/F,eAAe;MAEvB,IAAMiD,KAAK,GAAGjD,eAAe,CAACoD,MAAM,CAAC,UAACC,GAAG,EAAE2C,UAAU,EAAK;QACxD,IAAMnB,IAAI,GAAG5D,IAAI,CAAC+E,UAAU,CAAChE,EAAE,CAAC;QAEhC,IAAI,OAAO6C,IAAI,KAAK,QAAQ,EAAE;UAC5B,OAAOxB,GAAG,GAAGwB,IAAI;QACnB;QAEA,IAAIA,IAAI,YAAYc,IAAI,IAAI,CAAC3C,MAAM,CAAC4C,KAAK,CAACf,IAAI,CAACgB,eAAe,EAAE,CAAC,EAAE;UACjE,OAAOxC,GAAG,GAAGwB,IAAI,CAACgB,eAAe,EAAE;QACrC;QAEA,OAAOxC,GAAG;MACZ,CAAC,EAAE,CAAC,CAAC;MAEL,OAAOJ,KAAK;IACd;EAAC;IAAApC,GAAA;IAAAC,KAAA,EAED,SAAAmF,cAAwB9C,MAAgB,EAAU;MAChD,IAAMmC,GAAG,GAAGY,IAAI,CAACZ,GAAG,CAAAa,KAAA,CAARD,IAAI,EAAAE,kBAAA,CAAQjD,MAAM,EAAC;MAC/B,IAAMkD,GAAG,GAAGH,IAAI,CAACG,GAAG,CAAAF,KAAA,CAARD,IAAI,EAAAE,kBAAA,CAAQjD,MAAM,EAAC;MAE/B,IAAMmD,GAAG,GAAG,CAAChB,GAAG,GAAGe,GAAG,IAAI,CAAC;MAC3B,IAAM5D,KAAK,GAAGyD,IAAI,CAACK,KAAK,CAACL,IAAI,CAACM,KAAK,CAACF,GAAG,CAAC,CAAC;MAEzC,IAAMG,UAAU,GAAG,GAAG,GAAAP,IAAA,CAAAQ,GAAA,CAAG,EAAE,EAAIjE,KAAK;MAEpC,OAAOgE,UAAU;IACnB;EAAC;IAAA5F,GAAA;IAAAC,KAAA,EAED,SAAAV,mBAA6BoB,KAAa,EAAE;MAC1C,IAAI,CAACL,QAAQ,CAAC;QAAEjB,eAAe,EAAEsB;MAAM,CAAC,CAAC;IAC3C;EAAC;IAAAX,GAAA;IAAAC,KAAA,EAED,SAAAR,oBAA8B0B,EAAU,EAAE2E,SAAkB,EAAE;MAC5D,IAAI,CAACxF,QAAQ,CAAC,UAACyF,SAAS,EAAK;QAC3B,IAAM5G,eAAe,GAAG4G,SAAS,CAAC5G,eAAe,CAACuB,GAAG,CAAC,UAACsD,IAAI,EAAK;UAC9D,IAAIA,IAAI,CAAC7C,EAAE,KAAKA,EAAE,EAAE;YAClB6C,IAAI,CAACzC,OAAO,GAAGuE,SAAS;UAC1B;UAEA,OAAO9B,IAAI;QACb,CAAC,CAAC;QAEF,OAAO;UAAE7E,eAAe,EAAfA;QAAgB,CAAC;MAC5B,CAAC,CAAC;IACJ;EAAC;IAAAa,GAAA;IAAAC,KAAA,EAED,SAAAH,sBAAgCgG,SAAkB,EAAE;MAClD,IAAI,CAACxF,QAAQ,CAAC;QAAEhB,SAAS,EAAEwG;MAAU,CAAC,CAAC;IACzC;EAAC;IAAA9F,GAAA;IAAAC,KAAA,EAED,SAAAP,iBAA2ByB,EAAU,EAAE;MACrC,IAAI,CAAC5B,kBAAkB,CAAC,IAAI,CAAC2F,KAAK,CAAC/F,eAAe,CAAC6G,SAAS,CAAC,UAACC,IAAI;QAAA,OAAKA,IAAI,CAAC9E,EAAE,KAAKA,EAAE;MAAA,EAAC,CAAC;IACzF;EAAC;IAAAnB,GAAA;IAAAC,KAAA,EAED,SAAAN,iBAAA,EAA6B;MAC3B,IAAI,CAACJ,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAC7B;EAAC;IAAAS,GAAA;IAAAC,KAAA,EAED,SAAAL,aAAuBuB,EAAU,EAAER,KAAa,EAAE;MAAA,IAAAuF,qBAAA,EAAAC,oBAAA;MAChD,QAAAD,qBAAA,IAAAC,oBAAA,GAAO,IAAI,CAACtH,KAAK,CAACuH,QAAQ,cAAAD,oBAAA,uBAAnBA,oBAAA,CAAsBhF,EAAE,CAAC,cAAA+E,qBAAA,cAAAA,qBAAA,0BAAArD,MAAA,CAA2BlC,KAAK,GAAG,CAAC;IACtE;EAAC;IAAAX,GAAA;IAAAC,KAAA,EAED,SAAAJ,sBACEI,KAAwD,EAChD;MACR,IAAQJ,qBAAqB,GAAK,IAAI,CAACuD,OAAO,CAAtCvD,qBAAqB;MAE7B,IAAIA,qBAAqB,EAAE;QACzB,OAAOA,qBAAqB,CAACI,KAAK,CAAC;MACrC;MAEA,IAAIA,KAAK,KAAKqB,SAAS,IAAIrB,KAAK,KAAKvC,gBAAgB,EAAE;QACrD,OAAO,KAAK;MACd;MAEA,IAAIuC,KAAK,KAAK,IAAI,EAAE;QAClB,OAAO,GAAG;MACZ;MAEA,IAAIA,KAAK,YAAY6E,IAAI,EAAE;QACzB,OAAO7E,KAAK,CAACoG,YAAY,EAAE;MAC7B;MAEA,OAAOpG,KAAK,CAACqG,QAAQ,EAAE;IACzB;EAAC;IAAAtG,GAAA;IAAAC,KAAA,EAED,SAAAsG,mBAAA,EAAyD;MACvD,OAAO;QACLC,UAAU,EAAE;MACd,CAAC;IACH;EAAC;IAAAxG,GAAA;IAAAC,KAAA,EAED,SAAAwG,aAAA,EAAyB;MAAA,IAAAC,iBAAA;MACvB,IAAAC,cAAA,GAAyD,IAAI,CAACvD,OAAO;QAA7D/C,WAAW,GAAAsG,cAAA,CAAXtG,WAAW;QAAEuG,SAAS,GAAAD,cAAA,CAATC,SAAS;QAAEC,UAAU,GAAAF,cAAA,CAAVE,UAAU;QAAEC,QAAQ,GAAAH,cAAA,CAARG,QAAQ;MAEpD,IACE,CAACD,UAAU;MACX;MACC,IAAI,CAACpG,QAAQ,CAACsG,MAAM,KAAK,CAAC,IAAIF,UAAU,KAAK,IAAK,EACnD;QACA,OAAO,IAAI;MACb;MAEA,IAAAG,WAAA,GAAuC,IAAI,CAAC9B,KAAK;QAAzC/F,eAAe,GAAA6H,WAAA,CAAf7H,eAAe;QAAEG,SAAS,GAAA0H,WAAA,CAAT1H,SAAS;MAClC,IAAM2H,MAAM,GAAAC,aAAA,CAAAA,aAAA,KACP,IAAI,CAACX,kBAAkB,EAAE,GACzBlG,WAAW,CACf;MAED,IAAM8G,iBAAqD,GAAG;QAC5DC,SAAS,EAAE,IAAI,CAACA,SAAS;QACzBC,KAAK,EAAElI,eAAe;QACtBmI,IAAI,EAAEL,MAAM,CAACK,IAAI;QACjBC,KAAK,EAAEN,MAAM,CAACM,KAAK;QACnBC,CAAC,EAAEP,MAAM,CAACO,CAAC;QACXC,CAAC,EAAER,MAAM,CAACQ,CAAC;QACXX,QAAQ,EAARA,QAAQ;QACRF,SAAS,GAAAF,iBAAA,GACPO,MAAM,CAACL,SAAS,cAAAF,iBAAA,cAAAA,iBAAA,GAAKE,SAAS,KAAK,KAAK,IAAIA,SAAS,KAAK,aAAa,GAAG,QAAQ,GAAG,KAAM;QAC7Fc,mBAAmB,EAAET,MAAM,CAACU,kBAAkB,GAC1CrG,SAAS,GACTvD,oBAAoB,CAACkJ,MAAM,CAACS,mBAAmB,EAAE,IAAI,CAACjI,mBAAmB,CAAC;QAC9EmI,gBAAgB,EAAEX,MAAM,CAACY,iBAAiB,GACtCvG,SAAS,GACTvD,oBAAoB,CAACkJ,MAAM,CAACW,gBAAgB,EAAE,IAAI,CAAClI,gBAAgB,CAAC;QACxEoI,gBAAgB,EAAEb,MAAM,CAACY,iBAAiB,GACtCvG,SAAS,GACTvD,oBAAoB,CAACkJ,MAAM,CAACa,gBAAgB,EAAE,IAAI,CAACnI,gBAAgB,CAAC;QACxE,YAAY,EAAE,IAAI,CAACoI,kBAAkB;MACvC,CAAC;MAED,IAAId,MAAM,CAACT,UAAU,KAAK,OAAO,EAAE;QACjC,oBAAO7I,KAAA,CAAAiF,aAAA,CAAC3E,gBAAgB,EAAMkJ,iBAAiB,CAAyB;MAC1E;MAEA,IAAI,WAAW,IAAIF,MAAM,EAAE;QACzB,IAAMe,eAAe,GAAAd,aAAA,CAAAA,aAAA,KAChBC,iBAAiB;UACpB7H,SAAS,EAAE,IAAI;UACf2I,UAAU,EAAEhB,MAAM,CAACgB,UAAU;UAC7BC,cAAc,EAAE5I,SAAS;UACzB6I,sBAAsB,EAAE,IAAI,CAACrI;QAAqB,EACnD;QAED,oBAAOnC,KAAA,CAAAiF,aAAA,CAAC5E,WAAW,EAAMgK,eAAe,CAAwB;MAClE;MAEA,oBAAOrK,KAAA,CAAAiF,aAAA,CAAC5E,WAAW,EAAMmJ,iBAAiB,CAAwB;IACpE;EAAC;IAAAnH,GAAA;IAAAC,KAAA,EAED,SAAAmI,WAAA,EAAwC;MACtC,IAAAC,cAAA,GACE,IAAI,CAACjF,OAAO;QADNC,UAAU,GAAAgF,cAAA,CAAVhF,UAAU;QAAEiF,SAAS,GAAAD,cAAA,CAATC,SAAS;QAAEC,SAAS,GAAAF,cAAA,CAATE,SAAS;QAAEnI,IAAI,GAAAiI,cAAA,CAAJjI,IAAI;QAAEoI,mBAAmB,GAAAH,cAAA,CAAnBG,mBAAmB;QAAEC,mBAAmB,GAAAJ,cAAA,CAAnBI,mBAAmB;MAGxF,IAAI,CAAC5G,KAAK,CAACC,OAAO,CAAC1B,IAAI,CAAC,EAAE;QACxB,OAAO,IAAI;MACb;MAEA,IAAMsI,MAAM,GAAG,IAAI,CAACA,MAAM;MAC1B,IAAMC,MAAM,GAAG,IAAI,CAACA,MAAM;MAE1B,IAAMC,SAAS,GAAGJ,mBAAmB,GACjC,UAAAK,KAAA;QAAA,IAAG5I,KAAK,GAAA4I,KAAA,CAAL5I,KAAK;QAAA,OAAa;UAAE6I,QAAQ,EAAEN,mBAAmB,CAACvI,KAAK;QAAE,CAAC;MAAA,CAAC,GAC9DqB,SAAS;MACb,IAAMyH,SAAS,GAAGN,mBAAmB,GACjC,UAAAO,KAAA;QAAA,IAAG/I,KAAK,GAAA+I,KAAA,CAAL/I,KAAK;QAAA,OAAa;UAAE6I,QAAQ,EAAEL,mBAAmB,CAACxI,KAAK;QAAE,CAAC;MAAA,CAAC,GAC9DqB,SAAS;MAEb,oBACE3D,KAAA,CAAAiF,aAAA,CAAAjF,KAAA,CAAAsL,QAAA,QACGV,SAAS,iBACR5K,KAAA,CAAAiF,aAAA,CAACvE,KAAK,QACHsK,MAAM,gBACLhL,KAAA,CAAAiF,aAAA,CAACvE,KAAK,CAAC6K,KAAK;QAACxF,KAAK,EAAEiF;MAAO,GAAEI,SAAS,CAAe,gBAErDpL,KAAA,CAAAiF,aAAA,CAACvE,KAAK,CAAC6K,KAAK,QAAEH,SAAS,CACxB,EACA1F,UAAU,KAAK,IAAI,KAAKsF,MAAM,gBAAGhL,KAAA,CAAAiF,aAAA,CAACvE,KAAK,CAAC8K,IAAI;QAACzF,KAAK,EAAEiF;MAAO,EAAG,gBAAGhL,KAAA,CAAAiF,aAAA,CAACvE,KAAK,CAAC8K,IAAI,OAAG,CAAC,CAEpF,EAEAb,SAAS,iBACR3K,KAAA,CAAAiF,aAAA,CAACxE,KAAK,QACHsK,MAAM,gBACL/K,KAAA,CAAAiF,aAAA,CAACxE,KAAK,CAAC8K,KAAK;QAACxF,KAAK,EAAEgF;MAAO,GAAEE,SAAS,CAAe,gBAErDjL,KAAA,CAAAiF,aAAA,CAACxE,KAAK,CAAC8K,KAAK,QAAEN,SAAS,CACxB,EACAvF,UAAU,KAAK,IAAI,KAAKqF,MAAM,gBAAG/K,KAAA,CAAAiF,aAAA,CAACxE,KAAK,CAAC+K,IAAI;QAACzF,KAAK,EAAEgF;MAAO,EAAG,gBAAG/K,KAAA,CAAAiF,aAAA,CAACxE,KAAK,CAAC+K,IAAI,OAAG,CAAC,CAEpF,CACA;IAEP;EAAC;IAAAnJ,GAAA;IAAAC,KAAA,EAED,SAAAmJ,OAAA,EAAgB;MAAA,IAAAC,IAAA,QAAAjG,OAAA;QAAAkG,KAAA;MACd,IAAMC,MAAM,GAOMrL,IAAI;MANtB,IAAAsL,cAAA,GACE,IAAI,CAACpG,OAAO;QADNqG,MAAM,GAAAD,cAAA,CAANC,MAAM;QAAEC,SAAS,GAAAF,cAAA,CAATE,SAAS;QAAEC,UAAU,GAAAH,cAAA,CAAVG,UAAU;QAAEvJ,IAAI,GAAAoJ,cAAA,CAAJpJ,IAAI;QAAE0G,QAAQ,GAAA0C,cAAA,CAAR1C,QAAQ;QAAE8C,iBAAiB,GAAAJ,cAAA,CAAjBI,iBAAiB;QAAEC,QAAQ,GAAAL,cAAA,CAARK,QAAQ;MAGlF,IAAAC,iBAAA,GAA+BvL,gBAAgB,CAAC,IAAI,CAAC6E,OAAO,CAAC;QAArD2G,kBAAkB,GAAAD,iBAAA,CAAlBC,kBAAkB;MAE1B,OAAAT,KAAA,GAAOxL,OAAO,CAAC2L,MAAM,CAAC,eACpB9L,KAAA,CAAAiF,aAAA,CAAC2G,MAAM,EAAAD,KAAA,CAAAU,EAAA,WAAA9C,aAAA,KAAA+C,YAAA;QAAA,OAAoB,CAAC;QAAA,kBAAkB,CAAC,MAAM,CAAC;QAAA,QAAQ;MAAO,GAAAZ,IAAA,KAClE,IAAI,CAAC5C,YAAY,EAAE,eACpB9I,KAAA,CAAAiF,aAAA,CAACzE,IAAI,EAAAmL,KAAA,CAAAU,EAAA,SAAA9C,aAAA;QAAA,QACG9G,IAAI;QAAA,SACH,CAAC,IAAI,CAACqD,MAAM,EAAE,IAAI,CAACG,MAAM,CAAC;QAAA,SAC1B8F,SAAS;QAAA,UACRC,UAAU;QAAA,aACP,IAAI,CAACvC,SAAS;QAAA,qBACNwC,iBAAiB;QAAA,YAC1B9C,QAAQ;QAAA,YACR+C;MAAQ,GACdE,kBAAkB,IAErB,IAAI,CAAC3B,UAAU,EAAE,EACjB,IAAI,CAAC8B,aAAa,EAAE,EACpB,IAAI,CAACC,WAAW,EAAE,CACd,CACA;IAEb;EAAC;EAAA,OAAA3L,aAAA;AAAA,EA/bOZ,SAAS;AAgclBqB,eAAA,CApcqBT,aAAa,WAKX,CAAC,CAAC;AAAAS,eAAA,CALJT,aAAa,kBAM0B;EACzDoI,SAAS,EAAE,QAAQ;EACnB0B,SAAS,EAAE,IAAI;EACfC,SAAS,EAAE,IAAI;EACf6B,WAAW,EAAE,IAAI;EACjBvD,UAAU,EAAE;AACd,CAAC"}
1
+ {"version":3,"file":"AbstractChart.js","names":["Flex","Box","Component","Root","sstyled","extractAriaProps","callAllEventHandlers","Text","React","Fragment","Plot","XAxis","YAxis","makeDataHintsContainer","style","_sstyled","insert","interpolateValue","ChartLegend","ChartLegendTable","NOT_A_VALUE","AbstractChart","_Component","props","_this","_classCallCheck","_callSuper","_defineProperty","setHighlightedLine","bind","handleChangeVisible","handleMouseEnter","handleMouseLeave","resolveColor","tooltipValueFormatter","handleWithTrendChange","state","dataDefinitions","getDefaultDataDefinitions","highlightedLine","withTrend","_inherits","_createClass","key","value","componentDidUpdate","prevProps","data","legendProps","setState","_this2","_this$props","dataKeys","map","index","_legendProps$legendMa","_legendData$label","_legendData$icon","_legendData$defaultCh","legendData","legendMap","dataDefinition","id","label","icon","undefined","checked","defaultChecked","color","columns","additionalInfo","count","Array","isArray","dataValue","Map","get","Number","total","Object","values","reduce","sum","i","percent","toFixed","createElement","concat","use","_this$props2","groupKey","keys","filter","_this$asProps","asProps","invertAxis","xTicksCount","yTicksCount","scale","xScale","ticks","_this$asProps2","yScale","_this$asProps3","flatValues","result","item","add","entries","forEach","_ref5","_ref6","_slicedToArray","Set","_this$asProps4","max","val","barSum","_ref7","_ref8","Date","isNaN","getMilliseconds","totalValue","allNotAValue","legendItem","NaN","getValueScale","Math","apply","_toConsumableArray","min","avg","round","log10","valueScale","pow","isVisible","prevState","findIndex","line","_this$props$colorMap$","_this$props$colorMap","colorMap","toDateString","toString","defaultLegendProps","legendType","renderLegend","_lProps$direction","_this$asProps5","direction","showLegend","patterns","length","_this$state","lProps","_objectSpread","commonLegendProps","dataHints","size","shape","w","h","disableSelectItems","onChangeVisibleItem","disableHoverItems","onMouseEnterItem","onMouseLeaveItem","getLegendAriaLabel","flexLegendProps","trendLabel","trendIsVisible","onTrendIsVisibleChange","renderAxis","_this$asProps6","showXAxis","showYAxis","axisXValueFormatter","axisYValueFormatter","multilineXTicks","multilineYTicks","xTicks","yTicks","childrenX","_ref9","children","childrenY","_ref0","Ticks","multiline","Grid","getTooltipChildren","options","_ref","_ref3","_dataItem","_this3","STooltipChildrenWrapper","Tooltip","dataItem","_this$asProps7","styles","title","cn","Title","_assignProps","Dot","mr","textAlign","bold","renderTooltipTotalLine","showTotalInTooltip","mt","render","_ref2","_ref4","SChart","_this$asProps8","plotWidth","plotHeight","a11yAltTextConfig","duration","eventEmitter","showTooltip","_extractAriaProps","extractedAriaProps","_assignProps2","renderTooltip","renderChart"],"sources":["../../../../src/component/Chart/AbstractChart.tsx"],"sourcesContent":["import { Flex, Box } from '@semcore/base-components';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport { extractAriaProps } from '@semcore/core/lib/utils/ariaProps';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport { Text } from '@semcore/typography';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport React, { Fragment } from 'react';\n\nimport type { BaseChartProps, BaseLegendProps, ListData, ObjectData } from './AbstractChart.type';\n// @ts-ignore\nimport type { HoverLine, HoverRect } from '../..';\n// @ts-ignore\nimport { Plot, XAxis, YAxis } from '../..';\nimport { makeDataHintsContainer } from '../../a11y/hints';\nimport style from '../../style/abstract-chart.shadow.css';\nimport { interpolateValue } from '../../utils';\nimport ChartLegend, { ChartLegendTable } from '../ChartLegend';\nimport type { LegendFlexProps } from '../ChartLegend/LegendFlex/LegendFlex.type';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport type { LegendTableProps } from '../ChartLegend/LegendTable/LegendTable.type';\n\nexport type ChartState = {\n dataDefinitions: Array<LegendItem & { columns: React.ReactNode[] }>;\n highlightedLine: number;\n withTrend: boolean;\n};\n\nexport const NOT_A_VALUE = 'n/a';\n\nexport abstract class AbstractChart<\n Data extends ListData | ObjectData,\n Props extends BaseChartProps<Data>,\n Enhancers extends readonly ((...args: any[]) => any)[] = [],\n DefaultProps = {},\n State extends ChartState = ChartState,\n> extends Component<Props, Enhancers, Readonly<{}>, DefaultProps, State> {\n public static style = style;\n public static defaultProps: Partial<BaseChartProps<any>> = {\n direction: 'column',\n showXAxis: true,\n showYAxis: true,\n showTooltip: true,\n };\n\n /**\n * Padding from the end's of chart to the container (except axis sides)\n */\n protected plotPadding = 6;\n\n protected dataHints = makeDataHintsContainer();\n\n constructor(props: Props) {\n super(props);\n\n this.setHighlightedLine = this.setHighlightedLine.bind(this);\n this.handleChangeVisible = this.handleChangeVisible.bind(this);\n this.handleMouseEnter = this.handleMouseEnter.bind(this);\n this.handleMouseLeave = this.handleMouseLeave.bind(this);\n this.resolveColor = this.resolveColor.bind(this);\n this.tooltipValueFormatter = this.tooltipValueFormatter.bind(this);\n this.handleWithTrendChange = this.handleWithTrendChange.bind(this);\n\n this.state = {\n dataDefinitions: this.getDefaultDataDefinitions(),\n highlightedLine: -1,\n withTrend: false,\n } as State;\n }\n\n public componentDidUpdate(prevProps: Props) {\n if (prevProps.data !== this.props.data || prevProps.legendProps !== this.props.legendProps) {\n this.setState({ dataDefinitions: this.getDefaultDataDefinitions() });\n }\n }\n\n protected getDefaultDataDefinitions(): Array<LegendItem & { columns: React.ReactNode[] }> {\n const { data, legendProps } = this.props;\n\n return this.dataKeys.map((key, index) => {\n const legendData = legendProps?.legendMap?.[key];\n\n const dataDefinition: LegendItem & { columns: React.ReactNode[] } = {\n id: key,\n label: legendData?.label ?? key,\n icon: legendData?.icon ?? undefined,\n checked: legendData?.defaultChecked ?? true,\n color: this.resolveColor(key, index),\n columns: [],\n };\n\n if (legendData?.additionalInfo || legendData?.count) {\n dataDefinition.additionalInfo = legendData.additionalInfo\n ? { label: legendData.additionalInfo }\n : legendData.count\n ? { count: legendData.count }\n : undefined;\n }\n\n if (legendData && 'columns' in legendData) {\n dataDefinition.columns = legendData.columns || [];\n } else if (!Array.isArray(data)) {\n let value: number | undefined = undefined;\n let dataValue = data[key];\n\n if (data instanceof Map) {\n dataValue = data.get(key);\n }\n\n if (dataValue !== interpolateValue) {\n value = Number(dataValue);\n }\n\n const total = Object.values(data).reduce<number>((sum, i) => {\n if (i !== interpolateValue) {\n return sum + Number(i);\n }\n\n return sum;\n }, 0);\n const percent = value !== undefined ? ((value / total) * 100).toFixed(2) : undefined;\n\n dataDefinition.columns = [\n <Text key={`${key}_percent`} use='secondary'>\n {percent !== undefined ? `${percent}%` : ''}\n </Text>,\n <Text key={`${key}_value`} use={value ? 'primary' : 'secondary'}>\n {value ?? NOT_A_VALUE}\n </Text>,\n ];\n }\n\n return dataDefinition;\n });\n }\n\n protected abstract get xScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n protected abstract get yScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n\n protected abstract getLegendAriaLabel(): string;\n protected abstract renderChart(): React.ReactNode;\n protected abstract renderTooltip(): React.ReactNode;\n\n protected get dataKeys(): string[] {\n const { data, groupKey } = this.props;\n\n let dataKeys: string[];\n\n if (Array.isArray(data) && groupKey) {\n dataKeys = Object.keys(data[0]).filter((key) => key !== groupKey);\n } else {\n dataKeys = Object.keys(data);\n }\n\n return dataKeys;\n }\n\n protected get xTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.xScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && yTicksCount) {\n return scale.ticks(yTicksCount);\n } else if (xTicksCount) {\n return scale.ticks(xTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get yTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.yScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && xTicksCount) {\n return scale.ticks(xTicksCount);\n } else if (yTicksCount) {\n return scale.ticks(yTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get flatValues(): Set<number> {\n const { data, groupKey } = this.asProps;\n const values: any[] = Array.isArray(data) ? data : Object.values(data);\n\n const flatValues = values.reduce<Set<number>>((result, item) => {\n if (!groupKey && typeof item === 'number') {\n result.add(item);\n } else {\n Object.entries(item).forEach(([key, value]) => {\n if (key !== groupKey && typeof value === 'number') {\n result.add(value);\n }\n });\n }\n\n return result;\n }, new Set());\n\n return flatValues;\n }\n\n protected get maxStackedValue(): number {\n const { data, groupKey } = this.asProps;\n\n if (!Array.isArray(data)) {\n const max = Object.values(data).reduce<number>((sum, val) => {\n if (typeof val === 'number') {\n sum = sum + val;\n }\n\n return sum;\n }, 0);\n\n return max;\n }\n\n const max = data.reduce((max, item) => {\n const barSum = Object.entries(item).reduce<number>((sum, [key, val]) => {\n if (key === groupKey) {\n return sum;\n }\n\n if (typeof val === 'number') {\n return sum + val;\n }\n\n if (val instanceof Date && !Number.isNaN(val.getMilliseconds())) {\n return sum + val.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n if (barSum > max) {\n max = barSum;\n }\n\n return max;\n }, 0);\n\n return max;\n }\n\n protected totalValue(data: ObjectData): number {\n const { dataDefinitions } = this.state;\n\n let allNotAValue = true;\n\n const total = dataDefinitions.reduce((sum, legendItem) => {\n const item = data[legendItem.id];\n\n if (item === null) {\n allNotAValue = false;\n return sum;\n }\n\n if (typeof item === 'number') {\n allNotAValue = false;\n return sum + item;\n }\n\n if (item instanceof Date && !Number.isNaN(item.getMilliseconds())) {\n allNotAValue = false;\n return sum + item.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n if (allNotAValue) {\n return Number.NaN;\n }\n\n return total;\n }\n\n protected getValueScale(values: number[]): number {\n const max = Math.max(...values);\n const min = Math.min(...values);\n\n const avg = (max + min) / 2;\n const count = Math.round(Math.log10(avg));\n\n const valueScale = 100 / 10 ** count;\n\n return valueScale;\n }\n\n protected setHighlightedLine(index: number) {\n this.setState({ highlightedLine: index });\n }\n\n protected handleChangeVisible(id: string, isVisible: boolean) {\n this.setState((prevState) => {\n const dataDefinitions = prevState.dataDefinitions.map((item) => {\n if (item.id === id) {\n item.checked = isVisible;\n }\n\n return item;\n });\n\n return { dataDefinitions };\n });\n }\n\n protected handleWithTrendChange(isVisible: boolean) {\n this.setState({ withTrend: isVisible });\n }\n\n protected handleMouseEnter(id: string) {\n this.setHighlightedLine(this.state.dataDefinitions.findIndex((line) => line.id === id));\n }\n\n protected handleMouseLeave() {\n this.setHighlightedLine(-1);\n }\n\n protected resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `chart-palette-order-${index + 1}`;\n }\n\n protected tooltipValueFormatter(\n value?: string | number | typeof interpolateValue | Date,\n ): string {\n const { tooltipValueFormatter } = this.asProps;\n\n if (tooltipValueFormatter) {\n return tooltipValueFormatter(value);\n }\n\n if (value === undefined || value === interpolateValue) {\n return NOT_A_VALUE;\n }\n\n if (value === null) {\n return '0';\n }\n\n if (value instanceof Date) {\n return value.toDateString();\n }\n\n return value.toString();\n }\n\n protected defaultLegendProps(): Partial<BaseLegendProps> {\n return {\n legendType: 'Flex',\n };\n }\n\n protected renderLegend() {\n const { legendProps, direction, showLegend, patterns } = this.asProps;\n\n if (\n // we hide Legend for one item on chart except not manually set to show.\n showLegend === undefined && this.dataKeys.length === 1 ||\n showLegend === false\n ) {\n return null;\n }\n\n const { dataDefinitions, withTrend } = this.state;\n const lProps = {\n ...this.defaultLegendProps(),\n ...legendProps,\n };\n\n const commonLegendProps: LegendFlexProps | LegendTableProps = {\n 'dataHints': this.dataHints,\n 'items': dataDefinitions,\n 'size': lProps.size,\n 'shape': lProps.shape,\n 'w': lProps.w,\n 'h': lProps.h,\n patterns,\n 'direction':\n lProps.direction ?? (direction === 'row' || direction === 'row-reverse' ? 'column' : 'row'),\n 'onChangeVisibleItem': lProps.disableSelectItems\n ? undefined\n : callAllEventHandlers(lProps.onChangeVisibleItem, this.handleChangeVisible),\n 'onMouseEnterItem': lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseEnterItem, this.handleMouseEnter),\n 'onMouseLeaveItem': lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseLeaveItem, this.handleMouseLeave),\n 'aria-label': this.getLegendAriaLabel(),\n };\n\n if (lProps.legendType === 'Table') {\n return <ChartLegendTable {...(commonLegendProps as LegendTableProps)} />;\n }\n\n if ('withTrend' in lProps) {\n const flexLegendProps = {\n ...commonLegendProps,\n withTrend: true,\n trendLabel: lProps.trendLabel,\n trendIsVisible: withTrend,\n onTrendIsVisibleChange: this.handleWithTrendChange,\n };\n\n return <ChartLegend {...(flexLegendProps as LegendFlexProps)} />;\n }\n\n return <ChartLegend {...(commonLegendProps as LegendFlexProps)} />;\n }\n\n protected renderAxis(): React.ReactNode {\n const {\n invertAxis,\n showXAxis,\n showYAxis,\n data,\n axisXValueFormatter,\n axisYValueFormatter,\n multilineXTicks,\n multilineYTicks,\n } = this.asProps;\n\n if (!Array.isArray(data)) {\n return null;\n }\n\n const xTicks = this.xTicks;\n const yTicks = this.yTicks;\n\n const childrenX = axisXValueFormatter\n ? ({ value }: any) => ({ children: axisXValueFormatter(value) })\n : undefined;\n const childrenY = axisYValueFormatter\n ? ({ value }: any) => ({ children: axisYValueFormatter(value) })\n : undefined;\n\n return (\n <>\n {showYAxis && (\n <YAxis>\n {yTicks\n ? (\n <YAxis.Ticks multiline={multilineYTicks} ticks={yTicks}>{childrenY}</YAxis.Ticks>\n )\n : (\n <YAxis.Ticks multiline={multilineYTicks}>{childrenY}</YAxis.Ticks>\n )}\n {invertAxis !== true && (yTicks ? <YAxis.Grid ticks={yTicks} /> : <YAxis.Grid />)}\n </YAxis>\n )}\n\n {showXAxis && (\n <XAxis>\n {xTicks\n ? (\n <XAxis.Ticks multiline={multilineXTicks} ticks={xTicks}>{childrenX}</XAxis.Ticks>\n )\n : (\n <XAxis.Ticks multiline={multilineXTicks}>{childrenX}</XAxis.Ticks>\n )}\n {invertAxis === true && (xTicks ? <XAxis.Grid ticks={xTicks} /> : <XAxis.Grid />)}\n </XAxis>\n )}\n </>\n );\n }\n\n protected getTooltipChildren<D extends ObjectData>(options: {\n Tooltip: typeof HoverLine['Tooltip'] | typeof HoverRect['Tooltip'];\n dataItem: D;\n }) {\n const STooltipChildrenWrapper = Root;\n const { Tooltip, dataItem } = options;\n\n const { styles, groupKey } = this.asProps;\n const { dataDefinitions } = this.state;\n const title = dataItem[groupKey as keyof D]?.toString();\n\n return sstyled(styles)(\n <Flex direction='column'>\n { title && <Tooltip.Title>{title}</Tooltip.Title> }\n\n <STooltipChildrenWrapper\n render={Box}\n columnsCount='2'\n __excludeProps={['data']}\n >\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Fragment key={item.id}>\n <Tooltip.Dot mr={2} color={item.color}>\n {item.label}\n </Tooltip.Dot>\n <Text textAlign='end' bold>{this.tooltipValueFormatter(dataItem[item.id] as string)}</Text>\n </Fragment>\n )\n );\n })}\n\n {this.renderTooltipTotalLine(dataItem)}\n </STooltipChildrenWrapper>\n </Flex>,\n );\n }\n\n protected renderTooltipTotalLine<D extends ObjectData>(dataItem: D) {\n const { showTotalInTooltip } = this.asProps;\n\n if (!showTotalInTooltip) {\n return null;\n }\n\n const total = this.totalValue(dataItem);\n\n return (\n <>\n <Box mt={2} mr={2}>Total</Box>\n <Text mt={2} textAlign='end' bold>{Number.isNaN(total) ? NOT_A_VALUE : total}</Text>\n </>\n );\n }\n\n public render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, a11yAltTextConfig, duration, eventEmitter, showTooltip } =\n this.asProps;\n\n const { extractedAriaProps } = extractAriaProps(this.asProps);\n\n return sstyled(styles)(\n <SChart render={Flex} gap={5} __excludeProps={['data', 'eventEmitter']} role='group'>\n {this.renderLegend()}\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n a11yAltTextConfig={a11yAltTextConfig}\n patterns={patterns}\n duration={duration}\n eventEmitter={eventEmitter}\n {...extractedAriaProps}\n >\n {this.renderAxis()}\n {!showTooltip ? null : this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </SChart>,\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractChart.type.js","names":[],"sources":["../../../../src/component/Chart/AbstractChart.type.ts"],"sourcesContent":["import React from 'react';\nimport { FlexProps } from '@semcore/flex-box';\nimport { LegendItemKey } from '../ChartLegend/LegendItem/LegendItem.type';\nimport Icon from '@semcore/icon';\nimport { BaseChartLegendProps } from '../ChartLegend/BaseLegend.type';\nimport { TrendProps } from '../ChartLegend/LegendFlex/LegendFlex.type';\nimport { PatternsConfig } from '../../Pattern';\n// @ts-ignore\nimport { PlotSummarizerConfig } from '../../Plot';\nimport { Intergalactic } from '@semcore/utils/lib/core';\n\nexport type BaseLegendProps = BaseChartLegendProps & {\n /**\n * Disable hover (for transition items legend of each not hovered)\n */\n disableHoverItems?: boolean;\n /**\n * Disable selectable of data items by checkboxes in Legend\n */\n disableSelectItems?: boolean;\n} & (\n | (TrendProps & {\n /**\n * How to render Legend - Flex view. Just list of legend items\n */\n legendType?: never | 'Flex';\n /**\n * Config for Legend items\n */\n legendMap?: LegendDataMap<'Flex'>;\n })\n | {\n /**\n * How to render Legend - Table view. Table of legend items with some additional information in columns\n */\n legendType: 'Table';\n /**\n * Config for Legend items\n */\n legendMap?: LegendDataMap<'Table'>;\n }\n );\n\nexport type ObjectData = Record<string, unknown>;\nexport type ListData = ObjectData[];\n\n/**\n * Chart, Legend must have an accessible names (aria-name).\n * It should describe chart or legend content.\n */\nexport type AriaNameProps = Intergalactic.RequireAtLeastOne<{\n 'aria-label'?: string;\n 'aria-labelledby'?: string;\n title?: string;\n}>;\n\nexport type BaseChartProps<T extends ListData | ObjectData> = FlexProps &\n AriaNameProps & {\n /**\n * Chart data. For all charts except Donut(Pie), Radar and Venn should be an Array\n */\n data: T;\n /**\n * Width of plot\n */\n plotWidth: number;\n /**\n * Height of plot\n */\n plotHeight: number;\n\n /** Enables charts patterns that enhances charts accessibility */\n patterns?: PatternsConfig;\n /**\n * Margin (for Y axis points) from left side of chart container to Y axis\n */\n marginY?: number;\n /**\n * Margin (for X axis points) from bottom of chart container to X axis\n */\n marginX?: number;\n /**\n * invert axis and show horizontal charts (only for Bars!)\n */\n invertAxis?: boolean;\n\n /**\n * Show X axis\n * @default true (for charts with axis: Area, Line, Bar, ScatterPlot, ...)\n */\n showXAxis?: boolean;\n /**\n * Show Y axis\n * @default true (for charts with axis: Area, Line, Bar, ScatterPlot, ...)\n */\n showYAxis?: boolean;\n /**\n * Map with colors for data items\n */\n colorMap?: Record<string, string>;\n /**\n * Show tooltip's.\n * @default true\n */\n showTooltip?: boolean;\n /**\n * Show sum of values for selected point in tooltip\n */\n showTotalInTooltip?: boolean;\n /**\n * Scale for xAxis (see more in d3-scale)\n */\n xScale?: unknown;\n /**\n * Scale for yAxis (see more in d3-scale)\n */\n yScale?: unknown;\n /**\n * Count of ticks for X axis\n */\n xTicksCount?: number;\n /**\n * Count of ticks for Y axis\n */\n yTicksCount?: number;\n /**\n * Group key for all array-based charts (for get keys of items for legend except that group key)\n */\n groupKey?: string;\n /**\n * function for format axis item text\n */\n axisXValueFormatter?: (value: unknown) => string;\n axisYValueFormatter?: (value: unknown) => string;\n /**\n * Function for format text for tooltip\n */\n tooltipValueFormatter?: (value?: unknown) => string;\n /**\n * Config for a11y summary\n */\n a11yAltTextConfig?: PlotSummarizerConfig;\n\n /**\n * Animations duration, set 0 to disable animations\n */\n duration?: number;\n } /**\n * By default, we show the Legend for all charts with more the one data item.\n * For hide the Legend, you should set showLegend prop to `false`.\n */ & (\n | {\n /**\n * Don't show legend\n */\n showLegend?: false;\n legendProps?: never;\n }\n | {\n /**\n * By default (if showLegend don't set), for one data item on chart,\n * Legend component will be hide, and show for more then 1 data item.\n * If set `true` - Legend component will show always.\n */\n showLegend?: true;\n /**\n * Props for Legend\n */\n legendProps?: Partial<BaseLegendProps>;\n }\n );\n\ntype LegendDataMap<T extends 'Flex' | 'Table'> = Record<\n LegendItemKey,\n {\n /**\n * Custom label for legend item (by default use keys from data item object)\n */\n label?: string;\n /**\n * Additional text after label\n */\n additionalInfo?: string;\n /**\n * Count after label\n */\n count?: number;\n /**\n * Custom Icon\n */\n icon?: typeof Icon;\n /**\n * Flag for uncheck some items by default\n */\n defaultChecked?: boolean;\n } & (T extends 'Table' ? { columns?: React.ReactNode[] } : { columns?: never })\n>;\n"],"mappings":""}
1
+ {"version":3,"file":"AbstractChart.type.js","names":[],"sources":["../../../../src/component/Chart/AbstractChart.type.ts"],"sourcesContent":["import type { FlexProps } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\nimport type Icon from '@semcore/icon';\nimport type React from 'react';\n\nimport type { PatternsConfig } from '../../Pattern';\n// @ts-ignore\nimport type { PlotSummarizerConfig } from '../../Plot';\nimport type { PlotEventEmitter } from '../../utils';\nimport type { BaseChartLegendProps } from '../ChartLegend/BaseLegend.type';\nimport type { TrendProps } from '../ChartLegend/LegendFlex/LegendFlex.type';\nimport type { LegendItemKey } from '../ChartLegend/LegendItem/LegendItem.type';\n\nexport type BaseLegendProps = BaseChartLegendProps & {\n /**\n * Disable hover (for transition items legend of each not hovered)\n */\n disableHoverItems?: boolean;\n /**\n * Disable selectable of data items by checkboxes in Legend\n */\n disableSelectItems?: boolean;\n} & (\n | (TrendProps & {\n /**\n * How to render Legend - Flex view. Just list of legend items\n */\n legendType?: never | 'Flex';\n /**\n * Config for Legend items\n */\n legendMap?: LegendDataMap<'Flex'>;\n })\n | {\n /**\n * How to render Legend - Table view. Table of legend items with some additional information in columns\n */\n legendType: 'Table';\n /**\n * Config for Legend items\n */\n legendMap?: LegendDataMap<'Table'>;\n }\n );\n\nexport type ObjectData = Record<string, unknown>;\nexport type ListData = ObjectData[];\n\n/**\n * Chart, Legend must have an accessible names (aria-name).\n * It should describe chart or legend content.\n */\nexport type AriaNameProps = Intergalactic.RequireAtLeastOne<{\n 'aria-label'?: string;\n 'aria-labelledby'?: string;\n 'title'?: string;\n}>;\n\nexport type BaseChartProps<T extends ListData | ObjectData> = FlexProps & {\n /**\n * Chart data. For all charts except Donut(Pie), Radar and Venn should be an Array\n */\n data: T;\n /**\n * Width of plot\n */\n plotWidth: number;\n /**\n * Height of plot\n */\n plotHeight: number;\n\n /** Enables charts patterns that enhances charts accessibility */\n patterns?: PatternsConfig;\n /**\n * Margin (for Y axis points) from left side of chart container to Y axis\n */\n marginY?: number;\n /**\n * Margin (for X axis points) from bottom of chart container to X axis\n */\n marginX?: number;\n /**\n * invert axis and show horizontal charts (only for Bars!)\n */\n invertAxis?: boolean;\n\n /**\n * Show X axis\n * @default true (for charts with axis: Area, Line, Bar, ScatterPlot, ...)\n */\n showXAxis?: boolean;\n /**\n * Show Y axis\n * @default true (for charts with axis: Area, Line, Bar, ScatterPlot, ...)\n */\n showYAxis?: boolean;\n /**\n * Map with colors for data items\n */\n colorMap?: Record<string, string>;\n /**\n * Show tooltip's.\n * @default true\n */\n showTooltip?: boolean;\n /**\n * Show sum of values for selected point in tooltip\n */\n showTotalInTooltip?: boolean;\n /**\n * Scale for xAxis (see more in d3-scale)\n */\n xScale?: unknown;\n /**\n * Scale for yAxis (see more in d3-scale)\n */\n yScale?: unknown;\n /**\n * Count of ticks for X axis\n */\n xTicksCount?: number;\n /**\n * Count of ticks for Y axis\n */\n yTicksCount?: number;\n /** Enables multiline tick labels for X axis, applicable only for band scales */\n multilineXTicks?: boolean;\n /** Enables multiline tick labels for Y axis, applicable only for band scales */\n multilineYTicks?: boolean;\n /**\n * Group key for all array-based charts (for get keys of items for legend except that group key)\n */\n groupKey?: string;\n /**\n * function for format axis item text\n */\n axisXValueFormatter?: (value: unknown) => string;\n axisYValueFormatter?: (value: unknown) => string;\n /**\n * Function for format text for tooltip\n */\n tooltipValueFormatter?: (value?: unknown) => string;\n /**\n * Custom event emitter. Could be useful to handle event on few charts at the same time.\n */\n eventEmitter?: InstanceType<typeof PlotEventEmitter>;\n /**\n * Config for a11y summary\n */\n a11yAltTextConfig?: PlotSummarizerConfig;\n\n /**\n * Animations duration, set 0 to disable animations\n */\n duration?: number;\n /**\n * Flag to show/hide legend\n */\n showLegend?: boolean;\n /**\n * Props for Legend\n */\n legendProps?: Partial<BaseLegendProps>;\n} & (\n | {\n /**\n * Don't show legend\n */\n showLegend?: false;\n legendProps?: never;\n }\n | {\n /**\n * By default (if showLegend don't set), for one data item on chart,\n * Legend component will be hide, and show for more then 1 data item.\n * If set `true` - Legend component will show always.\n */\n showLegend?: true;\n /**\n * Props for Legend\n */\n legendProps?: Partial<BaseLegendProps>;\n }\n );\n\ntype LegendDataMap<T extends 'Flex' | 'Table'> = Record<\n LegendItemKey,\n {\n /**\n * Custom label for legend item (by default use keys from data item object)\n */\n label?: string;\n /**\n * Additional text after label\n */\n additionalInfo?: string;\n /**\n * Count after label\n */\n count?: number;\n /**\n * Custom Icon\n */\n icon?: typeof Icon;\n /**\n * Flag for uncheck some items by default\n */\n defaultChecked?: boolean;\n } & (T extends 'Table' ? { columns?: React.ReactNode[] } : { columns?: never })\n>;\n"],"mappings":"","ignoreList":[]}