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

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 +15 -11
  2. package/lib/cjs/AnimatedClipPath.js.map +1 -1
  3. package/lib/cjs/Area.js +48 -71
  4. package/lib/cjs/Area.js.map +1 -1
  5. package/lib/cjs/Axis.js +108 -170
  6. package/lib/cjs/Axis.js.map +1 -1
  7. package/lib/cjs/Bar.js +34 -29
  8. package/lib/cjs/Bar.js.map +1 -1
  9. package/lib/cjs/Bubble.js +137 -211
  10. package/lib/cjs/Bubble.js.map +1 -1
  11. package/lib/cjs/CompactHorizontalBar.js +82 -92
  12. package/lib/cjs/CompactHorizontalBar.js.map +1 -1
  13. package/lib/cjs/Donut.js +139 -154
  14. package/lib/cjs/Donut.js.map +1 -1
  15. package/lib/cjs/Dots.js +38 -55
  16. package/lib/cjs/Dots.js.map +1 -1
  17. package/lib/cjs/GroupBar.js +18 -15
  18. package/lib/cjs/GroupBar.js.map +1 -1
  19. package/lib/cjs/HorizontalBar.js +34 -29
  20. package/lib/cjs/HorizontalBar.js.map +1 -1
  21. package/lib/cjs/Hover.js +45 -52
  22. package/lib/cjs/Hover.js.map +1 -1
  23. package/lib/cjs/Line.js +41 -63
  24. package/lib/cjs/Line.js.map +1 -1
  25. package/lib/cjs/Pattern.js +12 -16
  26. package/lib/cjs/Pattern.js.map +1 -1
  27. package/lib/cjs/Plot.js +36 -29
  28. package/lib/cjs/Plot.js.map +1 -1
  29. package/lib/cjs/Radar.js +261 -281
  30. package/lib/cjs/Radar.js.map +1 -1
  31. package/lib/cjs/RadialTree.js +154 -169
  32. package/lib/cjs/RadialTree.js.map +1 -1
  33. package/lib/cjs/Reference.js +51 -45
  34. package/lib/cjs/Reference.js.map +1 -1
  35. package/lib/cjs/ResponsiveContainer.js +25 -20
  36. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  37. package/lib/cjs/ScatterPlot.js +61 -71
  38. package/lib/cjs/ScatterPlot.js.map +1 -1
  39. package/lib/cjs/StackBar.js +31 -20
  40. package/lib/cjs/StackBar.js.map +1 -1
  41. package/lib/cjs/StackedArea.js +16 -12
  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 +52 -77
  46. package/lib/cjs/Venn.js.map +1 -1
  47. package/lib/cjs/a11y/DataAccessibilityTable.js +3 -2
  48. package/lib/cjs/a11y/DataAccessibilityTable.js.map +1 -1
  49. package/lib/cjs/a11y/PlotA11yModule.js +86 -43
  50. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  51. package/lib/cjs/a11y/PlotA11yView.js +19 -44
  52. package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
  53. package/lib/cjs/a11y/bezier.js +2 -1
  54. package/lib/cjs/a11y/bezier.js.map +1 -1
  55. package/lib/cjs/a11y/focus.js +6 -5
  56. package/lib/cjs/a11y/focus.js.map +1 -1
  57. package/lib/cjs/a11y/hints.js +9 -6
  58. package/lib/cjs/a11y/hints.js.map +1 -1
  59. package/lib/cjs/a11y/insights.js +64 -63
  60. package/lib/cjs/a11y/insights.js.map +1 -1
  61. package/lib/cjs/a11y/intl.js +2 -1
  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 +17 -15
  66. package/lib/cjs/a11y/serialize.js.map +1 -1
  67. package/lib/cjs/a11y/summarize.js +2 -1
  68. package/lib/cjs/a11y/summarize.js.map +1 -1
  69. package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js +5 -4
  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 +5 -4
  86. package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  87. package/lib/cjs/color.js +3 -2
  88. package/lib/cjs/color.js.map +1 -1
  89. package/lib/cjs/component/Chart/AbstractChart.js +83 -157
  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 +51 -24
  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 +69 -85
  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 +27 -31
  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 +147 -340
  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 +15 -11
  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 +22 -16
  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 +44 -16
  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 +48 -22
  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 +19 -15
  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 +21 -16
  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 +19 -16
  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 +8 -7
  126. package/lib/cjs/component/Chart/index.js.map +1 -1
  127. package/lib/cjs/component/ChartLegend/BaseLegend.js +23 -45
  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 +24 -19
  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 +83 -108
  134. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  135. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js +2 -1
  136. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  137. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +23 -18
  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 +2 -1
  141. package/lib/cjs/component/ChartLegend/index.js.map +1 -1
  142. package/lib/cjs/component/Cigarette/Cigarette.js +20 -16
  143. package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
  144. package/lib/cjs/component/StackGroupBar/StackGroupBar.js +24 -19
  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/createElement.d.js.map +1 -1
  148. package/lib/cjs/createElement.js +12 -10
  149. package/lib/cjs/createElement.js.map +1 -1
  150. package/lib/cjs/index.js +2 -9
  151. package/lib/cjs/index.js.map +1 -1
  152. package/lib/cjs/style/axis.shadow.css +1 -39
  153. package/lib/cjs/style/bubble.shadow.css +0 -8
  154. package/lib/cjs/style/hover.shadow.css +2 -2
  155. package/lib/cjs/style/plot.shadow.css +6 -8
  156. package/lib/cjs/style/plotA11yModule.shadow.css +11 -10
  157. package/lib/cjs/style/plotA11yView.shadow.css +26 -13
  158. package/lib/cjs/translations/__intergalactic-dynamic-locales.js +5 -4
  159. package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
  160. package/lib/cjs/translations/de.json +0 -1
  161. package/lib/cjs/translations/es.json +0 -1
  162. package/lib/cjs/translations/fr.json +0 -1
  163. package/lib/cjs/translations/it.json +0 -1
  164. package/lib/cjs/translations/ja.json +0 -1
  165. package/lib/cjs/translations/ko.json +0 -1
  166. package/lib/cjs/translations/nl.json +0 -1
  167. package/lib/cjs/translations/pl.json +0 -1
  168. package/lib/cjs/translations/pt.json +0 -1
  169. package/lib/cjs/translations/sv.json +0 -1
  170. package/lib/cjs/translations/tr.json +1 -2
  171. package/lib/cjs/translations/vi.json +0 -1
  172. package/lib/cjs/translations/zh.json +0 -1
  173. package/lib/cjs/types/Area.d.js.map +1 -1
  174. package/lib/cjs/types/Axis.d.js.map +1 -1
  175. package/lib/cjs/types/Bar.d.js.map +1 -1
  176. package/lib/cjs/types/Bubble.d.js.map +1 -1
  177. package/lib/cjs/types/ClipPath.d.js.map +1 -1
  178. package/lib/cjs/types/CompactHorizontalBar.d.js.map +1 -1
  179. package/lib/cjs/types/Donut.d.js.map +1 -1
  180. package/lib/cjs/types/GroupBar.d.js.map +1 -1
  181. package/lib/cjs/types/HorizontalBar.d.js.map +1 -1
  182. package/lib/cjs/types/Hover.d.js.map +1 -1
  183. package/lib/cjs/types/Line.d.js.map +1 -1
  184. package/lib/cjs/types/Plot.d.js.map +1 -1
  185. package/lib/cjs/types/Radar.d.js.map +1 -1
  186. package/lib/cjs/types/Reference.d.js.map +1 -1
  187. package/lib/cjs/types/ResponsiveContainer.d.js.map +1 -1
  188. package/lib/cjs/types/ScatterPlot.d.js.map +1 -1
  189. package/lib/cjs/types/StackBar.d.js.map +1 -1
  190. package/lib/cjs/types/StackedArea.d.js.map +1 -1
  191. package/lib/cjs/types/Tooltip.d.js.map +1 -1
  192. package/lib/cjs/types/Venn.d.js.map +1 -1
  193. package/lib/cjs/types/context.d.js.map +1 -1
  194. package/lib/cjs/types/index.d.js +2 -14
  195. package/lib/cjs/types/index.d.js.map +1 -1
  196. package/lib/cjs/utils.js +55 -36
  197. package/lib/cjs/utils.js.map +1 -1
  198. package/lib/es6/AnimatedClipPath.js +11 -9
  199. package/lib/es6/AnimatedClipPath.js.map +1 -1
  200. package/lib/es6/Area.js +45 -70
  201. package/lib/es6/Area.js.map +1 -1
  202. package/lib/es6/Axis.js +104 -168
  203. package/lib/es6/Axis.js.map +1 -1
  204. package/lib/es6/Bar.js +29 -27
  205. package/lib/es6/Bar.js.map +1 -1
  206. package/lib/es6/Bubble.js +135 -211
  207. package/lib/es6/Bubble.js.map +1 -1
  208. package/lib/es6/CompactHorizontalBar.js +77 -89
  209. package/lib/es6/CompactHorizontalBar.js.map +1 -1
  210. package/lib/es6/Donut.js +137 -154
  211. package/lib/es6/Donut.js.map +1 -1
  212. package/lib/es6/Dots.js +36 -55
  213. package/lib/es6/Dots.js.map +1 -1
  214. package/lib/es6/GroupBar.js +15 -13
  215. package/lib/es6/GroupBar.js.map +1 -1
  216. package/lib/es6/HorizontalBar.js +29 -27
  217. package/lib/es6/HorizontalBar.js.map +1 -1
  218. package/lib/es6/Hover.js +41 -51
  219. package/lib/es6/Hover.js.map +1 -1
  220. package/lib/es6/Line.js +37 -61
  221. package/lib/es6/Line.js.map +1 -1
  222. package/lib/es6/Pattern.js +3 -7
  223. package/lib/es6/Pattern.js.map +1 -1
  224. package/lib/es6/Plot.js +32 -28
  225. package/lib/es6/Plot.js.map +1 -1
  226. package/lib/es6/Radar.js +257 -279
  227. package/lib/es6/Radar.js.map +1 -1
  228. package/lib/es6/RadialTree.js +151 -168
  229. package/lib/es6/RadialTree.js.map +1 -1
  230. package/lib/es6/Reference.js +45 -43
  231. package/lib/es6/Reference.js.map +1 -1
  232. package/lib/es6/ResponsiveContainer.js +19 -16
  233. package/lib/es6/ResponsiveContainer.js.map +1 -1
  234. package/lib/es6/ScatterPlot.js +59 -71
  235. package/lib/es6/ScatterPlot.js.map +1 -1
  236. package/lib/es6/StackBar.js +27 -17
  237. package/lib/es6/StackBar.js.map +1 -1
  238. package/lib/es6/StackedArea.js +13 -10
  239. package/lib/es6/StackedArea.js.map +1 -1
  240. package/lib/es6/Tooltip.js +65 -68
  241. package/lib/es6/Tooltip.js.map +1 -1
  242. package/lib/es6/Venn.js +48 -75
  243. package/lib/es6/Venn.js.map +1 -1
  244. package/lib/es6/a11y/DataAccessibilityTable.js.map +1 -1
  245. package/lib/es6/a11y/PlotA11yModule.js +86 -43
  246. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  247. package/lib/es6/a11y/PlotA11yView.js +16 -43
  248. package/lib/es6/a11y/PlotA11yView.js.map +1 -1
  249. package/lib/es6/a11y/bezier.js.map +1 -1
  250. package/lib/es6/a11y/focus.js +4 -4
  251. package/lib/es6/a11y/focus.js.map +1 -1
  252. package/lib/es6/a11y/hints.js +2 -2
  253. package/lib/es6/a11y/hints.js.map +1 -1
  254. package/lib/es6/a11y/insights.js +61 -61
  255. package/lib/es6/a11y/insights.js.map +1 -1
  256. package/lib/es6/a11y/intl.js.map +1 -1
  257. package/lib/es6/a11y/locale.js +2 -3
  258. package/lib/es6/a11y/locale.js.map +1 -1
  259. package/lib/es6/a11y/serialize.js +13 -14
  260. package/lib/es6/a11y/serialize.js.map +1 -1
  261. package/lib/es6/a11y/summarize.js.map +1 -1
  262. package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js +2 -2
  263. package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
  264. package/lib/es6/a11y/translations/module/de.json +2 -2
  265. package/lib/es6/a11y/translations/module/en.json +2 -2
  266. package/lib/es6/a11y/translations/module/es.json +2 -2
  267. package/lib/es6/a11y/translations/module/fr.json +2 -2
  268. package/lib/es6/a11y/translations/module/it.json +2 -2
  269. package/lib/es6/a11y/translations/module/ja.json +2 -2
  270. package/lib/es6/a11y/translations/module/ko.json +2 -2
  271. package/lib/es6/a11y/translations/module/nl.json +2 -2
  272. package/lib/es6/a11y/translations/module/pl.json +2 -2
  273. package/lib/es6/a11y/translations/module/pt.json +2 -2
  274. package/lib/es6/a11y/translations/module/sv.json +2 -2
  275. package/lib/es6/a11y/translations/module/tr.json +2 -2
  276. package/lib/es6/a11y/translations/module/vi.json +2 -2
  277. package/lib/es6/a11y/translations/module/zh.json +2 -2
  278. package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js +2 -2
  279. package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  280. package/lib/es6/color.js +1 -1
  281. package/lib/es6/color.js.map +1 -1
  282. package/lib/es6/component/Chart/AbstractChart.js +80 -159
  283. package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
  284. package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
  285. package/lib/es6/component/Chart/AreaChart.js +48 -23
  286. package/lib/es6/component/Chart/AreaChart.js.map +1 -1
  287. package/lib/es6/component/Chart/AreaChart.type.js.map +1 -1
  288. package/lib/es6/component/Chart/BarChart.js +67 -84
  289. package/lib/es6/component/Chart/BarChart.js.map +1 -1
  290. package/lib/es6/component/Chart/BarChart.type.js.map +1 -1
  291. package/lib/es6/component/Chart/BubbleChart.js +24 -30
  292. package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
  293. package/lib/es6/component/Chart/BubbleChart.type.js.map +1 -1
  294. package/lib/es6/component/Chart/CigaretteChart.js +144 -341
  295. package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
  296. package/lib/es6/component/Chart/CigaretteChart.type.js.map +1 -1
  297. package/lib/es6/component/Chart/CompactHorizontalBarChart.js +12 -9
  298. package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -1
  299. package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  300. package/lib/es6/component/Chart/DonutChart.js +18 -14
  301. package/lib/es6/component/Chart/DonutChart.js.map +1 -1
  302. package/lib/es6/component/Chart/DonutChart.type.js.map +1 -1
  303. package/lib/es6/component/Chart/HistogramChart.js +41 -15
  304. package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
  305. package/lib/es6/component/Chart/HistogramChart.type.js.map +1 -1
  306. package/lib/es6/component/Chart/LineChart.js +45 -20
  307. package/lib/es6/component/Chart/LineChart.js.map +1 -1
  308. package/lib/es6/component/Chart/LineChart.type.js.map +1 -1
  309. package/lib/es6/component/Chart/RadarChart.js +16 -13
  310. package/lib/es6/component/Chart/RadarChart.js.map +1 -1
  311. package/lib/es6/component/Chart/RadarChart.type.js.map +1 -1
  312. package/lib/es6/component/Chart/ScatterPlotChart.js +18 -15
  313. package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
  314. package/lib/es6/component/Chart/ScatterPlotChart.type.js.map +1 -1
  315. package/lib/es6/component/Chart/VennChart.js +16 -14
  316. package/lib/es6/component/Chart/VennChart.js.map +1 -1
  317. package/lib/es6/component/Chart/VennChart.type.js.map +1 -1
  318. package/lib/es6/component/Chart/index.js +6 -6
  319. package/lib/es6/component/Chart/index.js.map +1 -1
  320. package/lib/es6/component/ChartLegend/BaseLegend.js +20 -43
  321. package/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
  322. package/lib/es6/component/ChartLegend/BaseLegend.type.js.map +1 -1
  323. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +19 -17
  324. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  325. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
  326. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +74 -102
  327. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  328. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  329. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +17 -15
  330. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  331. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
  332. package/lib/es6/component/ChartLegend/index.js.map +1 -1
  333. package/lib/es6/component/Cigarette/Cigarette.js +17 -14
  334. package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
  335. package/lib/es6/component/StackGroupBar/StackGroupBar.js +21 -17
  336. package/lib/es6/component/StackGroupBar/StackGroupBar.js.map +1 -1
  337. package/lib/es6/component/StackGroupBar/StackGroupBar.type.js.map +1 -1
  338. package/lib/es6/createElement.d.js.map +1 -1
  339. package/lib/es6/createElement.js +7 -7
  340. package/lib/es6/createElement.js.map +1 -1
  341. package/lib/es6/index.js +0 -1
  342. package/lib/es6/index.js.map +1 -1
  343. package/lib/es6/style/axis.shadow.css +1 -39
  344. package/lib/es6/style/bubble.shadow.css +0 -8
  345. package/lib/es6/style/hover.shadow.css +2 -2
  346. package/lib/es6/style/plot.shadow.css +6 -8
  347. package/lib/es6/style/plotA11yModule.shadow.css +11 -10
  348. package/lib/es6/style/plotA11yView.shadow.css +26 -13
  349. package/lib/es6/translations/__intergalactic-dynamic-locales.js +2 -2
  350. package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
  351. package/lib/es6/translations/de.json +0 -1
  352. package/lib/es6/translations/es.json +0 -1
  353. package/lib/es6/translations/fr.json +0 -1
  354. package/lib/es6/translations/it.json +0 -1
  355. package/lib/es6/translations/ja.json +0 -1
  356. package/lib/es6/translations/ko.json +0 -1
  357. package/lib/es6/translations/nl.json +0 -1
  358. package/lib/es6/translations/pl.json +0 -1
  359. package/lib/es6/translations/pt.json +0 -1
  360. package/lib/es6/translations/sv.json +0 -1
  361. package/lib/es6/translations/tr.json +1 -2
  362. package/lib/es6/translations/vi.json +0 -1
  363. package/lib/es6/translations/zh.json +0 -1
  364. package/lib/es6/types/Area.d.js.map +1 -1
  365. package/lib/es6/types/Axis.d.js.map +1 -1
  366. package/lib/es6/types/Bar.d.js.map +1 -1
  367. package/lib/es6/types/Bubble.d.js.map +1 -1
  368. package/lib/es6/types/ClipPath.d.js.map +1 -1
  369. package/lib/es6/types/CompactHorizontalBar.d.js.map +1 -1
  370. package/lib/es6/types/Donut.d.js.map +1 -1
  371. package/lib/es6/types/GroupBar.d.js.map +1 -1
  372. package/lib/es6/types/HorizontalBar.d.js.map +1 -1
  373. package/lib/es6/types/Hover.d.js.map +1 -1
  374. package/lib/es6/types/Line.d.js.map +1 -1
  375. package/lib/es6/types/Plot.d.js.map +1 -1
  376. package/lib/es6/types/Radar.d.js.map +1 -1
  377. package/lib/es6/types/Reference.d.js.map +1 -1
  378. package/lib/es6/types/ResponsiveContainer.d.js.map +1 -1
  379. package/lib/es6/types/ScatterPlot.d.js.map +1 -1
  380. package/lib/es6/types/StackBar.d.js.map +1 -1
  381. package/lib/es6/types/StackedArea.d.js.map +1 -1
  382. package/lib/es6/types/Tooltip.d.js.map +1 -1
  383. package/lib/es6/types/Venn.d.js.map +1 -1
  384. package/lib/es6/types/context.d.js.map +1 -1
  385. package/lib/es6/types/index.d.js +0 -2
  386. package/lib/es6/types/index.d.js.map +1 -1
  387. package/lib/es6/utils.js +16 -16
  388. package/lib/es6/utils.js.map +1 -1
  389. package/lib/esm/AnimatedClipPath.mjs +16 -9
  390. package/lib/esm/Area.mjs +36 -51
  391. package/lib/esm/Axis.mjs +86 -143
  392. package/lib/esm/Bar.mjs +34 -31
  393. package/lib/esm/Bubble.mjs +106 -154
  394. package/lib/esm/CompactHorizontalBar.mjs +80 -88
  395. package/lib/esm/Donut.mjs +75 -87
  396. package/lib/esm/Dots.mjs +34 -50
  397. package/lib/esm/GroupBar.mjs +14 -12
  398. package/lib/esm/HorizontalBar.mjs +34 -31
  399. package/lib/esm/Hover.mjs +50 -53
  400. package/lib/esm/Line.mjs +31 -45
  401. package/lib/esm/Pattern.mjs +2 -4
  402. package/lib/esm/Plot.mjs +35 -30
  403. package/lib/esm/Radar.mjs +175 -188
  404. package/lib/esm/RadialTree.mjs +111 -105
  405. package/lib/esm/Reference.mjs +40 -37
  406. package/lib/esm/ResponsiveContainer.mjs +21 -18
  407. package/lib/esm/ScatterPlot.mjs +40 -49
  408. package/lib/esm/StackBar.mjs +28 -18
  409. package/lib/esm/StackedArea.mjs +16 -13
  410. package/lib/esm/Tooltip.mjs +59 -56
  411. package/lib/esm/Venn.mjs +47 -67
  412. package/lib/esm/a11y/DataAccessibilityTable.mjs +2 -2
  413. package/lib/esm/a11y/PlotA11yModule.mjs +74 -35
  414. package/lib/esm/a11y/PlotA11yView.mjs +17 -41
  415. package/lib/esm/a11y/focus.mjs +4 -4
  416. package/lib/esm/a11y/hints.mjs +2 -2
  417. package/lib/esm/a11y/insights.mjs +76 -76
  418. package/lib/esm/a11y/locale.mjs +2 -2
  419. package/lib/esm/a11y/serialize.mjs +12 -12
  420. package/lib/esm/a11y/translations/module/__intergalactic-dynamic-locales.mjs +2 -2
  421. package/lib/esm/a11y/translations/module/de.json.mjs +4 -2
  422. package/lib/esm/a11y/translations/module/en.json.mjs +4 -2
  423. package/lib/esm/a11y/translations/module/es.json.mjs +4 -2
  424. package/lib/esm/a11y/translations/module/fr.json.mjs +4 -2
  425. package/lib/esm/a11y/translations/module/it.json.mjs +4 -2
  426. package/lib/esm/a11y/translations/module/ja.json.mjs +4 -2
  427. package/lib/esm/a11y/translations/module/ko.json.mjs +4 -2
  428. package/lib/esm/a11y/translations/module/nl.json.mjs +4 -2
  429. package/lib/esm/a11y/translations/module/pl.json.mjs +4 -2
  430. package/lib/esm/a11y/translations/module/pt.json.mjs +4 -2
  431. package/lib/esm/a11y/translations/module/sv.json.mjs +4 -2
  432. package/lib/esm/a11y/translations/module/tr.json.mjs +4 -2
  433. package/lib/esm/a11y/translations/module/vi.json.mjs +4 -2
  434. package/lib/esm/a11y/translations/module/zh.json.mjs +4 -2
  435. package/lib/esm/a11y/translations/view/__intergalactic-dynamic-locales.mjs +2 -2
  436. package/lib/esm/component/Chart/AbstractChart.mjs +65 -141
  437. package/lib/esm/component/Chart/AreaChart.mjs +51 -27
  438. package/lib/esm/component/Chart/BarChart.mjs +51 -64
  439. package/lib/esm/component/Chart/BubbleChart.mjs +25 -30
  440. package/lib/esm/component/Chart/CigaretteChart.mjs +119 -298
  441. package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +15 -13
  442. package/lib/esm/component/Chart/DonutChart.mjs +19 -16
  443. package/lib/esm/component/Chart/HistogramChart.mjs +46 -22
  444. package/lib/esm/component/Chart/LineChart.mjs +46 -23
  445. package/lib/esm/component/Chart/RadarChart.mjs +18 -16
  446. package/lib/esm/component/Chart/ScatterPlotChart.mjs +21 -18
  447. package/lib/esm/component/Chart/VennChart.mjs +19 -16
  448. package/lib/esm/component/Chart/index.mjs +6 -6
  449. package/lib/esm/component/ChartLegend/BaseLegend.mjs +22 -45
  450. package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +22 -19
  451. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +75 -88
  452. package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +25 -22
  453. package/lib/esm/component/ChartLegend/index.mjs +0 -2
  454. package/lib/esm/component/Cigarette/Cigarette.mjs +19 -16
  455. package/lib/esm/component/StackGroupBar/StackGroupBar.mjs +22 -18
  456. package/lib/esm/createElement.mjs +10 -8
  457. package/lib/esm/index.mjs +0 -3
  458. package/lib/esm/style/axis.shadow.css +1 -39
  459. package/lib/esm/style/bubble.shadow.css +0 -8
  460. package/lib/esm/style/hover.shadow.css +2 -2
  461. package/lib/esm/style/plot.shadow.css +6 -8
  462. package/lib/esm/style/plotA11yModule.shadow.css +11 -10
  463. package/lib/esm/style/plotA11yView.shadow.css +26 -13
  464. package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +2 -2
  465. package/lib/esm/translations/es.json.mjs +0 -1
  466. package/lib/esm/translations/fr.json.mjs +0 -1
  467. package/lib/esm/translations/it.json.mjs +0 -1
  468. package/lib/esm/translations/ja.json.mjs +0 -1
  469. package/lib/esm/translations/ko.json.mjs +0 -1
  470. package/lib/esm/translations/nl.json.mjs +0 -1
  471. package/lib/esm/translations/pl.json.mjs +0 -1
  472. package/lib/esm/translations/pt.json.mjs +0 -1
  473. package/lib/esm/translations/sv.json.mjs +0 -1
  474. package/lib/esm/translations/tr.json.mjs +1 -2
  475. package/lib/esm/translations/vi.json.mjs +0 -1
  476. package/lib/esm/translations/zh.json.mjs +0 -1
  477. package/lib/esm/utils.mjs +11 -11
  478. package/lib/types/Area.d.ts +6 -9
  479. package/lib/types/Axis.d.ts +3 -10
  480. package/lib/types/Bar.d.ts +6 -7
  481. package/lib/types/Bubble.d.ts +5 -21
  482. package/lib/types/ClipPath.d.ts +3 -4
  483. package/lib/types/CompactHorizontalBar.d.ts +8 -7
  484. package/lib/types/Donut.d.ts +5 -8
  485. package/lib/types/GroupBar.d.ts +6 -6
  486. package/lib/types/HorizontalBar.d.ts +6 -7
  487. package/lib/types/Hover.d.ts +8 -8
  488. package/lib/types/Line.d.ts +6 -9
  489. package/lib/types/Pattern.d.ts +51 -51
  490. package/lib/types/Plot.d.ts +9 -11
  491. package/lib/types/Radar.d.ts +7 -10
  492. package/lib/types/RadialTree.d.ts +54 -10
  493. package/lib/types/Reference.d.ts +5 -6
  494. package/lib/types/ResponsiveContainer.d.ts +4 -5
  495. package/lib/types/ScatterPlot.d.ts +5 -8
  496. package/lib/types/StackBar.d.ts +6 -7
  497. package/lib/types/StackedArea.d.ts +5 -6
  498. package/lib/types/Tooltip.d.ts +12 -12
  499. package/lib/types/Venn.d.ts +6 -7
  500. package/lib/types/a11y/DataAccessibilityTable.d.ts +2 -2
  501. package/lib/types/a11y/PlotA11yModule.d.ts +11 -4
  502. package/lib/types/a11y/PlotA11yView.d.ts +2 -13
  503. package/lib/types/a11y/hints.d.ts +5 -5
  504. package/lib/types/a11y/insights.d.ts +1 -1
  505. package/lib/types/a11y/intl.d.ts +1 -1
  506. package/lib/types/a11y/serialize.d.ts +7 -7
  507. package/lib/types/a11y/summarize.d.ts +2 -2
  508. package/lib/types/a11y/translations/module/__intergalactic-dynamic-locales.d.ts +14 -14
  509. package/lib/types/component/Chart/AbstractChart.d.ts +13 -20
  510. package/lib/types/component/Chart/AbstractChart.type.d.ts +25 -39
  511. package/lib/types/component/Chart/AreaChart.d.ts +1 -1
  512. package/lib/types/component/Chart/AreaChart.type.d.ts +7 -17
  513. package/lib/types/component/Chart/BarChart.d.ts +1 -1
  514. package/lib/types/component/Chart/BarChart.type.d.ts +9 -14
  515. package/lib/types/component/Chart/BubbleChart.d.ts +1 -1
  516. package/lib/types/component/Chart/BubbleChart.type.d.ts +5 -10
  517. package/lib/types/component/Chart/CigaretteChart.d.ts +1 -1
  518. package/lib/types/component/Chart/CigaretteChart.type.d.ts +8 -18
  519. package/lib/types/component/Chart/CompactHorizontalBarChart.d.ts +1 -1
  520. package/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +6 -10
  521. package/lib/types/component/Chart/DonutChart.d.ts +1 -1
  522. package/lib/types/component/Chart/DonutChart.type.d.ts +7 -16
  523. package/lib/types/component/Chart/HistogramChart.d.ts +1 -1
  524. package/lib/types/component/Chart/HistogramChart.type.d.ts +4 -7
  525. package/lib/types/component/Chart/LineChart.d.ts +1 -1
  526. package/lib/types/component/Chart/LineChart.type.d.ts +7 -16
  527. package/lib/types/component/Chart/RadarChart.d.ts +1 -1
  528. package/lib/types/component/Chart/RadarChart.type.d.ts +5 -7
  529. package/lib/types/component/Chart/ScatterPlotChart.d.ts +1 -1
  530. package/lib/types/component/Chart/ScatterPlotChart.type.d.ts +6 -12
  531. package/lib/types/component/Chart/VennChart.d.ts +1 -1
  532. package/lib/types/component/Chart/VennChart.type.d.ts +6 -12
  533. package/lib/types/component/ChartLegend/BaseLegend.d.ts +6 -8
  534. package/lib/types/component/ChartLegend/BaseLegend.type.d.ts +5 -4
  535. package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.d.ts +1 -1
  536. package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.type.d.ts +5 -4
  537. package/lib/types/component/ChartLegend/LegendItem/LegendItem.d.ts +1 -1
  538. package/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +10 -17
  539. package/lib/types/component/ChartLegend/LegendTable/LegendTable.d.ts +1 -1
  540. package/lib/types/component/ChartLegend/LegendTable/LegendTable.type.d.ts +5 -5
  541. package/lib/types/component/StackGroupBar/StackGroupBar.d.ts +1 -1
  542. package/lib/types/component/StackGroupBar/StackGroupBar.type.d.ts +4 -3
  543. package/lib/types/index.d.ts +1 -3
  544. package/lib/types/translations/__intergalactic-dynamic-locales.d.ts +0 -12
  545. package/lib/types/utils.d.ts +17 -17
  546. package/package.json +10 -10
  547. package/lib/cjs/component/SvgElement.js +0 -21
  548. package/lib/cjs/component/SvgElement.js.map +0 -1
  549. package/lib/cjs/style/abstract-chart.shadow.css +0 -12
  550. package/lib/es6/component/SvgElement.js +0 -14
  551. package/lib/es6/component/SvgElement.js.map +0 -1
  552. package/lib/es6/style/abstract-chart.shadow.css +0 -12
  553. package/lib/esm/component/SvgElement.mjs +0 -14
  554. package/lib/esm/style/abstract-chart.shadow.css +0 -12
  555. package/lib/types/component/SvgElement.d.ts +0 -10
@@ -1,64 +1,52 @@
1
1
  import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
- import _readOnlyError from "@babel/runtime/helpers/readOnlyError";
3
2
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
4
3
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
5
4
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
6
5
  import _createClass from "@babel/runtime/helpers/createClass";
7
- import _callSuper from "@babel/runtime/helpers/callSuper";
6
+ import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
8
7
  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";
12
10
  import { assignProps as _assignProps } from "@semcore/core";
13
- import { Flex, Box } from '@semcore/base-components';
14
- import { Component, Root, sstyled } from '@semcore/core';
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
-
22
- // @ts-ignore
23
- import { Plot, XAxis, YAxis } from '../..';
24
11
  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
12
  import { interpolateValue } from '../../utils';
13
+ import React from 'react';
14
+ import { Component, Root, sstyled } from '@semcore/core';
15
+ import { callAllEventHandlers } from '@semcore/utils/lib/assignProps';
34
16
  import ChartLegend, { ChartLegendTable } from '../ChartLegend';
35
- export var NOT_A_VALUE = 'n/a';
17
+ import { Flex } from '@semcore/flex-box';
18
+ // @ts-ignore
19
+ import { Plot, XAxis, YAxis } from '../..';
20
+ import { Text } from '@semcore/typography';
21
+ import { extractAriaProps } from '@semcore/utils/lib/ariaProps';
36
22
  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
+
37
29
  function AbstractChart(props) {
38
30
  var _this;
39
31
  _classCallCheck(this, AbstractChart);
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 = {
32
+ _this = _super.call(this, props);
33
+ _defineProperty(_assertThisInitialized(_this), "plotPadding", 6);
34
+ _defineProperty(_assertThisInitialized(_this), "dataHints", makeDataHintsContainer());
35
+ _defineProperty(_assertThisInitialized(_this), "state", {
54
36
  dataDefinitions: _this.getDefaultDataDefinitions(),
55
37
  highlightedLine: -1,
56
38
  withTrend: false
57
- };
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));
58
47
  return _this;
59
48
  }
60
- _inherits(AbstractChart, _Component);
61
- return _createClass(AbstractChart, [{
49
+ _createClass(AbstractChart, [{
62
50
  key: "componentDidUpdate",
63
51
  value: function componentDidUpdate(prevProps) {
64
52
  if (prevProps.data !== this.props.data || prevProps.legendProps !== this.props.legendProps) {
@@ -76,7 +64,7 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
76
64
  legendProps = _this$props.legendProps;
77
65
  return this.dataKeys.map(function (key, index) {
78
66
  var _legendProps$legendMa, _legendData$label, _legendData$icon, _legendData$defaultCh;
79
- var legendData = legendProps === null || legendProps === void 0 || (_legendProps$legendMa = legendProps.legendMap) === null || _legendProps$legendMa === void 0 ? void 0 : _legendProps$legendMa[key];
67
+ var legendData = legendProps === null || legendProps === void 0 ? void 0 : (_legendProps$legendMa = legendProps.legendMap) === null || _legendProps$legendMa === void 0 ? void 0 : _legendProps$legendMa[key];
80
68
  var dataDefinition = {
81
69
  id: key,
82
70
  label: (_legendData$label = legendData === null || legendData === void 0 ? void 0 : legendData.label) !== null && _legendData$label !== void 0 ? _legendData$label : key,
@@ -95,6 +83,7 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
95
83
  if (legendData && 'columns' in legendData) {
96
84
  dataDefinition.columns = legendData.columns || [];
97
85
  } else if (!Array.isArray(data)) {
86
+ var _value;
98
87
  var value = undefined;
99
88
  var dataValue = data[key];
100
89
  if (data instanceof Map) {
@@ -112,11 +101,11 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
112
101
  var percent = value !== undefined ? (value / total * 100).toFixed(2) : undefined;
113
102
  dataDefinition.columns = [/*#__PURE__*/React.createElement(Text, {
114
103
  key: "".concat(key, "_percent"),
115
- use: "secondary"
104
+ use: 'secondary'
116
105
  }, percent !== undefined ? "".concat(percent, "%") : ''), /*#__PURE__*/React.createElement(Text, {
117
106
  key: "".concat(key, "_value"),
118
107
  use: value ? 'primary' : 'secondary'
119
- }, value !== null && value !== void 0 ? value : NOT_A_VALUE)];
108
+ }, (_value = value) !== null && _value !== void 0 ? _value : 'n/a')];
120
109
  }
121
110
  return dataDefinition;
122
111
  });
@@ -186,10 +175,10 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
186
175
  if (!groupKey && typeof item === 'number') {
187
176
  result.add(item);
188
177
  } else {
189
- Object.entries(item).forEach(function (_ref5) {
190
- var _ref6 = _slicedToArray(_ref5, 2),
191
- key = _ref6[0],
192
- value = _ref6[1];
178
+ Object.entries(item).forEach(function (_ref3) {
179
+ var _ref4 = _slicedToArray(_ref3, 2),
180
+ key = _ref4[0],
181
+ value = _ref4[1];
193
182
  if (key !== groupKey && typeof value === 'number') {
194
183
  result.add(value);
195
184
  }
@@ -215,10 +204,10 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
215
204
  return _max;
216
205
  }
217
206
  var max = data.reduce(function (max, item) {
218
- var barSum = Object.entries(item).reduce(function (sum, _ref7) {
219
- var _ref8 = _slicedToArray(_ref7, 2),
220
- key = _ref8[0],
221
- val = _ref8[1];
207
+ var barSum = Object.entries(item).reduce(function (sum, _ref5) {
208
+ var _ref6 = _slicedToArray(_ref5, 2),
209
+ key = _ref6[0],
210
+ val = _ref6[1];
222
211
  if (key === groupKey) {
223
212
  return sum;
224
213
  }
@@ -241,26 +230,16 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
241
230
  key: "totalValue",
242
231
  value: function totalValue(data) {
243
232
  var dataDefinitions = this.state.dataDefinitions;
244
- var allNotAValue = true;
245
233
  var total = dataDefinitions.reduce(function (sum, legendItem) {
246
234
  var item = data[legendItem.id];
247
- if (item === null) {
248
- allNotAValue = false;
249
- return sum;
250
- }
251
235
  if (typeof item === 'number') {
252
- allNotAValue = false;
253
236
  return sum + item;
254
237
  }
255
238
  if (item instanceof Date && !Number.isNaN(item.getMilliseconds())) {
256
- allNotAValue = false;
257
239
  return sum + item.getMilliseconds();
258
240
  }
259
241
  return sum;
260
242
  }, 0);
261
- if (allNotAValue) {
262
- return Number.NaN;
263
- }
264
243
  return total;
265
244
  }
266
245
  }, {
@@ -328,7 +307,7 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
328
307
  return tooltipValueFormatter(value);
329
308
  }
330
309
  if (value === undefined || value === interpolateValue) {
331
- return NOT_A_VALUE;
310
+ return 'n/a';
332
311
  }
333
312
  if (value === null) {
334
313
  return '0';
@@ -354,9 +333,9 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
354
333
  direction = _this$asProps5.direction,
355
334
  showLegend = _this$asProps5.showLegend,
356
335
  patterns = _this$asProps5.patterns;
357
- if (
336
+ if (!showLegend ||
358
337
  // we hide Legend for one item on chart except not manually set to show.
359
- showLegend === undefined && this.dataKeys.length === 1 || showLegend === false) {
338
+ this.dataKeys.length === 1 && showLegend === true) {
360
339
  return null;
361
340
  }
362
341
  var _this$state = this.state,
@@ -364,17 +343,17 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
364
343
  withTrend = _this$state.withTrend;
365
344
  var lProps = _objectSpread(_objectSpread({}, this.defaultLegendProps()), legendProps);
366
345
  var commonLegendProps = {
367
- 'dataHints': this.dataHints,
368
- 'items': dataDefinitions,
369
- 'size': lProps.size,
370
- 'shape': lProps.shape,
371
- 'w': lProps.w,
372
- 'h': lProps.h,
346
+ dataHints: this.dataHints,
347
+ items: dataDefinitions,
348
+ size: lProps.size,
349
+ shape: lProps.shape,
350
+ w: lProps.w,
351
+ h: lProps.h,
373
352
  patterns: patterns,
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),
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),
378
357
  'aria-label': this.getLegendAriaLabel()
379
358
  };
380
359
  if (lProps.legendType === 'Table') {
@@ -400,114 +379,55 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
400
379
  showYAxis = _this$asProps6.showYAxis,
401
380
  data = _this$asProps6.data,
402
381
  axisXValueFormatter = _this$asProps6.axisXValueFormatter,
403
- axisYValueFormatter = _this$asProps6.axisYValueFormatter,
404
- multilineXTicks = _this$asProps6.multilineXTicks,
405
- multilineYTicks = _this$asProps6.multilineYTicks;
382
+ axisYValueFormatter = _this$asProps6.axisYValueFormatter;
406
383
  if (!Array.isArray(data)) {
407
384
  return null;
408
385
  }
409
386
  var xTicks = this.xTicks;
410
387
  var yTicks = this.yTicks;
411
- var childrenX = axisXValueFormatter ? function (_ref9) {
412
- var value = _ref9.value;
388
+ var childrenX = axisXValueFormatter ? function (_ref7) {
389
+ var value = _ref7.value;
413
390
  return {
414
391
  children: axisXValueFormatter(value)
415
392
  };
416
393
  } : undefined;
417
- var childrenY = axisYValueFormatter ? function (_ref0) {
418
- var value = _ref0.value;
394
+ var childrenY = axisYValueFormatter ? function (_ref8) {
395
+ var value = _ref8.value;
419
396
  return {
420
397
  children: axisYValueFormatter(value)
421
398
  };
422
399
  } : undefined;
423
400
  return /*#__PURE__*/React.createElement(React.Fragment, null, showYAxis && /*#__PURE__*/React.createElement(YAxis, null, yTicks ? /*#__PURE__*/React.createElement(YAxis.Ticks, {
424
- multiline: multilineYTicks,
425
401
  ticks: yTicks
426
- }, childrenY) : /*#__PURE__*/React.createElement(YAxis.Ticks, {
427
- multiline: multilineYTicks
428
- }, childrenY), invertAxis !== true && (yTicks ? /*#__PURE__*/React.createElement(YAxis.Grid, {
402
+ }, childrenY) : /*#__PURE__*/React.createElement(YAxis.Ticks, null, childrenY), invertAxis !== true && (yTicks ? /*#__PURE__*/React.createElement(YAxis.Grid, {
429
403
  ticks: yTicks
430
404
  }) : /*#__PURE__*/React.createElement(YAxis.Grid, null))), showXAxis && /*#__PURE__*/React.createElement(XAxis, null, xTicks ? /*#__PURE__*/React.createElement(XAxis.Ticks, {
431
- multiline: multilineXTicks,
432
405
  ticks: xTicks
433
- }, childrenX) : /*#__PURE__*/React.createElement(XAxis.Ticks, {
434
- multiline: multilineXTicks
435
- }, childrenX), invertAxis === true && (xTicks ? /*#__PURE__*/React.createElement(XAxis.Grid, {
406
+ }, childrenX) : /*#__PURE__*/React.createElement(XAxis.Ticks, null, childrenX), invertAxis === true && (xTicks ? /*#__PURE__*/React.createElement(XAxis.Grid, {
436
407
  ticks: xTicks
437
408
  }) : /*#__PURE__*/React.createElement(XAxis.Grid, null))));
438
409
  }
439
- }, {
440
- key: "getTooltipChildren",
441
- value: function getTooltipChildren(options) {
442
- var _ref = this.asProps,
443
- _ref3,
444
- _dataItem,
445
- _this3 = this;
446
- var STooltipChildrenWrapper = Box;
447
- var Tooltip = options.Tooltip,
448
- dataItem = options.dataItem;
449
- var _this$asProps7 = this.asProps,
450
- styles = _this$asProps7.styles,
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
410
  }, {
489
411
  key: "render",
490
412
  value: function render() {
491
- var _ref2 = this.asProps,
492
- _ref4;
413
+ var _ref = this.asProps,
414
+ _ref2;
493
415
  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;
416
+ var _this$asProps7 = this.asProps,
417
+ 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;
504
424
  var _extractAriaProps = extractAriaProps(this.asProps),
505
425
  extractedAriaProps = _extractAriaProps.extractedAriaProps;
506
- return _ref4 = sstyled(styles), /*#__PURE__*/React.createElement(SChart, _ref4.cn("SChart", _objectSpread({}, _assignProps2({
426
+ return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SChart, _ref2.cn("SChart", _objectSpread({}, _assignProps({
507
427
  "gap": 5,
508
- "__excludeProps": ['data', 'eventEmitter'],
428
+ "__excludeProps": ['data'],
509
429
  "role": 'group'
510
- }, _ref2))), this.renderLegend(), /*#__PURE__*/React.createElement(Plot, _ref4.cn("Plot", _objectSpread({
430
+ }, _ref))), this.renderLegend(), /*#__PURE__*/React.createElement(Plot, _ref2.cn("Plot", _objectSpread({
511
431
  "data": data,
512
432
  "scale": [this.xScale, this.yScale],
513
433
  "width": plotWidth,
@@ -515,17 +435,18 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
515
435
  "dataHints": this.dataHints,
516
436
  "a11yAltTextConfig": a11yAltTextConfig,
517
437
  "patterns": patterns,
518
- "duration": duration,
519
- "eventEmitter": eventEmitter
520
- }, extractedAriaProps)), this.renderAxis(), !showTooltip ? null : this.renderTooltip(), this.renderChart()));
438
+ "duration": duration
439
+ }, extractedAriaProps)), this.renderAxis(), this.renderTooltip(), this.renderChart()));
521
440
  }
522
441
  }]);
442
+ return AbstractChart;
523
443
  }(Component);
524
- _defineProperty(AbstractChart, "style", style);
444
+ _defineProperty(AbstractChart, "style", {});
525
445
  _defineProperty(AbstractChart, "defaultProps", {
526
446
  direction: 'column',
527
447
  showXAxis: true,
528
448
  showYAxis: true,
529
- showTooltip: true
449
+ showTooltip: true,
450
+ showLegend: true
530
451
  });
531
452
  //# sourceMappingURL=AbstractChart.js.map
@@ -1 +1 @@
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
+ {"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":"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"}
@@ -1 +1 @@
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":[]}
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":""}