@semcore/d3-chart 16.5.0 → 17.0.0-prerelease.8

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 (439) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/lib/cjs/AnimatedClipPath.js +28 -41
  3. package/lib/cjs/AnimatedClipPath.js.map +1 -1
  4. package/lib/cjs/Area.js +187 -223
  5. package/lib/cjs/Area.js.map +1 -1
  6. package/lib/cjs/Axis.js +248 -327
  7. package/lib/cjs/Axis.js.map +1 -1
  8. package/lib/cjs/Bar.js +162 -185
  9. package/lib/cjs/Bar.js.map +1 -1
  10. package/lib/cjs/Bubble.js +219 -248
  11. package/lib/cjs/Bubble.js.map +1 -1
  12. package/lib/cjs/CompactHorizontalBar.js +448 -482
  13. package/lib/cjs/CompactHorizontalBar.js.map +1 -1
  14. package/lib/cjs/Donut.js +349 -396
  15. package/lib/cjs/Donut.js.map +1 -1
  16. package/lib/cjs/Dots.js +67 -86
  17. package/lib/cjs/Dots.js.map +1 -1
  18. package/lib/cjs/GroupBar.js +78 -93
  19. package/lib/cjs/GroupBar.js.map +1 -1
  20. package/lib/cjs/HorizontalBar.js +149 -167
  21. package/lib/cjs/HorizontalBar.js.map +1 -1
  22. package/lib/cjs/Hover.js +178 -207
  23. package/lib/cjs/Hover.js.map +1 -1
  24. package/lib/cjs/Line.js +182 -222
  25. package/lib/cjs/Line.js.map +1 -1
  26. package/lib/cjs/Pattern.js +124 -126
  27. package/lib/cjs/Pattern.js.map +1 -1
  28. package/lib/cjs/Plot.js +100 -126
  29. package/lib/cjs/Plot.js.map +1 -1
  30. package/lib/cjs/Radar.js +576 -681
  31. package/lib/cjs/Radar.js.map +1 -1
  32. package/lib/cjs/RadialTree.js +518 -571
  33. package/lib/cjs/RadialTree.js.map +1 -1
  34. package/lib/cjs/Reference.js +147 -178
  35. package/lib/cjs/Reference.js.map +1 -1
  36. package/lib/cjs/ResponsiveContainer.js +64 -82
  37. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  38. package/lib/cjs/ScatterPlot.js +169 -199
  39. package/lib/cjs/ScatterPlot.js.map +1 -1
  40. package/lib/cjs/StackBar.js +135 -177
  41. package/lib/cjs/StackBar.js.map +1 -1
  42. package/lib/cjs/StackedArea.js +60 -73
  43. package/lib/cjs/StackedArea.js.map +1 -1
  44. package/lib/cjs/Tooltip.js +193 -208
  45. package/lib/cjs/Tooltip.js.map +1 -1
  46. package/lib/cjs/Venn.js +182 -217
  47. package/lib/cjs/Venn.js.map +1 -1
  48. package/lib/cjs/a11y/DataAccessibilityTable.js +45 -83
  49. package/lib/cjs/a11y/DataAccessibilityTable.js.map +1 -1
  50. package/lib/cjs/a11y/PlotA11yModule.js +37 -97
  51. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  52. package/lib/cjs/a11y/PlotA11yView.js +97 -91
  53. package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
  54. package/lib/cjs/a11y/bezier.js +17 -23
  55. package/lib/cjs/a11y/bezier.js.map +1 -1
  56. package/lib/cjs/a11y/focus.js +16 -16
  57. package/lib/cjs/a11y/focus.js.map +1 -1
  58. package/lib/cjs/a11y/hints.js +72 -75
  59. package/lib/cjs/a11y/hints.js.map +1 -1
  60. package/lib/cjs/a11y/insights.js +354 -525
  61. package/lib/cjs/a11y/insights.js.map +1 -1
  62. package/lib/cjs/a11y/intl.js +5 -5
  63. package/lib/cjs/a11y/intl.js.map +1 -1
  64. package/lib/cjs/a11y/locale.js +12 -19
  65. package/lib/cjs/a11y/locale.js.map +1 -1
  66. package/lib/cjs/a11y/serialize.js +164 -203
  67. package/lib/cjs/a11y/serialize.js.map +1 -1
  68. package/lib/cjs/a11y/summarize.js +7 -6
  69. package/lib/cjs/a11y/summarize.js.map +1 -1
  70. package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js +16 -16
  71. package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
  72. package/lib/cjs/a11y/translations/module/de.json +2 -2
  73. package/lib/cjs/a11y/translations/module/en.json +2 -2
  74. package/lib/cjs/a11y/translations/module/es.json +2 -2
  75. package/lib/cjs/a11y/translations/module/fr.json +2 -2
  76. package/lib/cjs/a11y/translations/module/it.json +2 -2
  77. package/lib/cjs/a11y/translations/module/ja.json +2 -2
  78. package/lib/cjs/a11y/translations/module/ko.json +2 -2
  79. package/lib/cjs/a11y/translations/module/nl.json +2 -2
  80. package/lib/cjs/a11y/translations/module/pl.json +2 -2
  81. package/lib/cjs/a11y/translations/module/pt.json +2 -2
  82. package/lib/cjs/a11y/translations/module/sv.json +2 -2
  83. package/lib/cjs/a11y/translations/module/tr.json +2 -2
  84. package/lib/cjs/a11y/translations/module/vi.json +2 -2
  85. package/lib/cjs/a11y/translations/module/zh.json +2 -2
  86. package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js +16 -16
  87. package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  88. package/lib/cjs/color.js +1 -1
  89. package/lib/cjs/color.js.map +1 -1
  90. package/lib/cjs/component/Chart/AbstractChart.js +421 -466
  91. package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
  92. package/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
  93. package/lib/cjs/component/Chart/AreaChart.js +97 -115
  94. package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
  95. package/lib/cjs/component/Chart/AreaChart.type.js.map +1 -1
  96. package/lib/cjs/component/Chart/BarChart.js +229 -216
  97. package/lib/cjs/component/Chart/BarChart.js.map +1 -1
  98. package/lib/cjs/component/Chart/BarChart.type.js.map +1 -1
  99. package/lib/cjs/component/Chart/BubbleChart.js +114 -136
  100. package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
  101. package/lib/cjs/component/Chart/BubbleChart.type.js.map +1 -1
  102. package/lib/cjs/component/Chart/CigaretteChart.js +280 -305
  103. package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
  104. package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +76 -108
  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 +80 -95
  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 +126 -148
  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 +95 -113
  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 +84 -110
  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 +119 -143
  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 +103 -122
  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 +2 -2
  126. package/lib/cjs/component/Chart/index.js.map +1 -1
  127. package/lib/cjs/component/ChartLegend/BaseLegend.js +72 -105
  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 +58 -70
  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 +208 -221
  134. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  135. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
  136. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  137. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +63 -73
  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 +4 -4
  141. package/lib/cjs/component/ChartLegend/index.js.map +1 -1
  142. package/lib/cjs/component/Cigarette/Cigarette.js +115 -129
  143. package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
  144. package/lib/cjs/component/StackGroupBar/StackGroupBar.js +107 -137
  145. package/lib/cjs/component/StackGroupBar/StackGroupBar.js.map +1 -1
  146. package/lib/cjs/component/SvgElement.js +7 -7
  147. package/lib/cjs/component/SvgElement.js.map +1 -1
  148. package/lib/cjs/createElement.js +66 -65
  149. package/lib/cjs/createElement.js.map +1 -1
  150. package/lib/cjs/index.js +62 -62
  151. package/lib/cjs/style/axis.shadow.css +3 -0
  152. package/lib/cjs/style/plot.shadow.css +1 -3
  153. package/lib/cjs/style/plotA11yModule.shadow.css +10 -11
  154. package/lib/cjs/style/plotA11yView.shadow.css +13 -26
  155. package/lib/cjs/translations/__intergalactic-dynamic-locales.js +15 -15
  156. package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
  157. package/lib/cjs/types/Axis.d.js.map +1 -1
  158. package/lib/cjs/types/CompactHorizontalBar.d.js.map +1 -1
  159. package/lib/cjs/types/Hover.d.js.map +1 -1
  160. package/lib/cjs/types/Line.d.js.map +1 -1
  161. package/lib/cjs/types/Plot.d.js.map +1 -1
  162. package/lib/cjs/types/Radar.d.js.map +1 -1
  163. package/lib/cjs/types/ResponsiveContainer.d.js.map +1 -1
  164. package/lib/cjs/types/Tooltip.d.js.map +1 -1
  165. package/lib/cjs/types/Venn.d.js.map +1 -1
  166. package/lib/cjs/types/index.d.js +80 -80
  167. package/lib/cjs/types/index.d.js.map +1 -1
  168. package/lib/cjs/utils.js +122 -145
  169. package/lib/cjs/utils.js.map +1 -1
  170. package/lib/es6/AnimatedClipPath.js +24 -37
  171. package/lib/es6/AnimatedClipPath.js.map +1 -1
  172. package/lib/es6/Area.js +179 -215
  173. package/lib/es6/Area.js.map +1 -1
  174. package/lib/es6/Axis.js +242 -321
  175. package/lib/es6/Axis.js.map +1 -1
  176. package/lib/es6/Bar.js +154 -177
  177. package/lib/es6/Bar.js.map +1 -1
  178. package/lib/es6/Bubble.js +206 -235
  179. package/lib/es6/Bubble.js.map +1 -1
  180. package/lib/es6/CompactHorizontalBar.js +433 -467
  181. package/lib/es6/CompactHorizontalBar.js.map +1 -1
  182. package/lib/es6/Donut.js +337 -384
  183. package/lib/es6/Donut.js.map +1 -1
  184. package/lib/es6/Dots.js +60 -79
  185. package/lib/es6/Dots.js.map +1 -1
  186. package/lib/es6/GroupBar.js +74 -89
  187. package/lib/es6/GroupBar.js.map +1 -1
  188. package/lib/es6/HorizontalBar.js +141 -159
  189. package/lib/es6/HorizontalBar.js.map +1 -1
  190. package/lib/es6/Hover.js +174 -203
  191. package/lib/es6/Hover.js.map +1 -1
  192. package/lib/es6/Line.js +173 -213
  193. package/lib/es6/Line.js.map +1 -1
  194. package/lib/es6/Pattern.js +68 -74
  195. package/lib/es6/Pattern.js.map +1 -1
  196. package/lib/es6/Plot.js +95 -121
  197. package/lib/es6/Plot.js.map +1 -1
  198. package/lib/es6/Radar.js +554 -659
  199. package/lib/es6/Radar.js.map +1 -1
  200. package/lib/es6/RadialTree.js +500 -553
  201. package/lib/es6/RadialTree.js.map +1 -1
  202. package/lib/es6/Reference.js +140 -171
  203. package/lib/es6/Reference.js.map +1 -1
  204. package/lib/es6/ResponsiveContainer.js +58 -76
  205. package/lib/es6/ResponsiveContainer.js.map +1 -1
  206. package/lib/es6/ScatterPlot.js +161 -191
  207. package/lib/es6/ScatterPlot.js.map +1 -1
  208. package/lib/es6/StackBar.js +130 -172
  209. package/lib/es6/StackBar.js.map +1 -1
  210. package/lib/es6/StackedArea.js +56 -69
  211. package/lib/es6/StackedArea.js.map +1 -1
  212. package/lib/es6/Tooltip.js +183 -198
  213. package/lib/es6/Tooltip.js.map +1 -1
  214. package/lib/es6/Venn.js +169 -204
  215. package/lib/es6/Venn.js.map +1 -1
  216. package/lib/es6/a11y/DataAccessibilityTable.js +41 -80
  217. package/lib/es6/a11y/DataAccessibilityTable.js.map +1 -1
  218. package/lib/es6/a11y/PlotA11yModule.js +35 -95
  219. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  220. package/lib/es6/a11y/PlotA11yView.js +89 -84
  221. package/lib/es6/a11y/PlotA11yView.js.map +1 -1
  222. package/lib/es6/a11y/bezier.js +16 -23
  223. package/lib/es6/a11y/bezier.js.map +1 -1
  224. package/lib/es6/a11y/focus.js +15 -16
  225. package/lib/es6/a11y/focus.js.map +1 -1
  226. package/lib/es6/a11y/hints.js +67 -73
  227. package/lib/es6/a11y/hints.js.map +1 -1
  228. package/lib/es6/a11y/insights.js +353 -524
  229. package/lib/es6/a11y/insights.js.map +1 -1
  230. package/lib/es6/a11y/intl.js +4 -5
  231. package/lib/es6/a11y/intl.js.map +1 -1
  232. package/lib/es6/a11y/locale.js +11 -18
  233. package/lib/es6/a11y/locale.js.map +1 -1
  234. package/lib/es6/a11y/serialize.js +162 -203
  235. package/lib/es6/a11y/serialize.js.map +1 -1
  236. package/lib/es6/a11y/summarize.js +6 -6
  237. package/lib/es6/a11y/summarize.js.map +1 -1
  238. package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js +15 -15
  239. package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
  240. package/lib/es6/a11y/translations/module/de.json +2 -2
  241. package/lib/es6/a11y/translations/module/en.json +2 -2
  242. package/lib/es6/a11y/translations/module/es.json +2 -2
  243. package/lib/es6/a11y/translations/module/fr.json +2 -2
  244. package/lib/es6/a11y/translations/module/it.json +2 -2
  245. package/lib/es6/a11y/translations/module/ja.json +2 -2
  246. package/lib/es6/a11y/translations/module/ko.json +2 -2
  247. package/lib/es6/a11y/translations/module/nl.json +2 -2
  248. package/lib/es6/a11y/translations/module/pl.json +2 -2
  249. package/lib/es6/a11y/translations/module/pt.json +2 -2
  250. package/lib/es6/a11y/translations/module/sv.json +2 -2
  251. package/lib/es6/a11y/translations/module/tr.json +2 -2
  252. package/lib/es6/a11y/translations/module/vi.json +2 -2
  253. package/lib/es6/a11y/translations/module/zh.json +2 -2
  254. package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js +15 -15
  255. package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  256. package/lib/es6/color.js +1 -1
  257. package/lib/es6/color.js.map +1 -1
  258. package/lib/es6/component/Chart/AbstractChart.js +416 -462
  259. package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
  260. package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
  261. package/lib/es6/component/Chart/AreaChart.js +92 -111
  262. package/lib/es6/component/Chart/AreaChart.js.map +1 -1
  263. package/lib/es6/component/Chart/AreaChart.type.js.map +1 -1
  264. package/lib/es6/component/Chart/BarChart.js +225 -213
  265. package/lib/es6/component/Chart/BarChart.js.map +1 -1
  266. package/lib/es6/component/Chart/BarChart.type.js.map +1 -1
  267. package/lib/es6/component/Chart/BubbleChart.js +109 -132
  268. package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
  269. package/lib/es6/component/Chart/BubbleChart.type.js.map +1 -1
  270. package/lib/es6/component/Chart/CigaretteChart.js +276 -301
  271. package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
  272. package/lib/es6/component/Chart/CompactHorizontalBarChart.js +70 -103
  273. package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -1
  274. package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  275. package/lib/es6/component/Chart/DonutChart.js +74 -90
  276. package/lib/es6/component/Chart/DonutChart.js.map +1 -1
  277. package/lib/es6/component/Chart/DonutChart.type.js.map +1 -1
  278. package/lib/es6/component/Chart/HistogramChart.js +121 -144
  279. package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
  280. package/lib/es6/component/Chart/HistogramChart.type.js.map +1 -1
  281. package/lib/es6/component/Chart/LineChart.js +90 -109
  282. package/lib/es6/component/Chart/LineChart.js.map +1 -1
  283. package/lib/es6/component/Chart/LineChart.type.js.map +1 -1
  284. package/lib/es6/component/Chart/RadarChart.js +80 -107
  285. package/lib/es6/component/Chart/RadarChart.js.map +1 -1
  286. package/lib/es6/component/Chart/RadarChart.type.js.map +1 -1
  287. package/lib/es6/component/Chart/ScatterPlotChart.js +113 -138
  288. package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
  289. package/lib/es6/component/Chart/ScatterPlotChart.type.js.map +1 -1
  290. package/lib/es6/component/Chart/VennChart.js +97 -117
  291. package/lib/es6/component/Chart/VennChart.js.map +1 -1
  292. package/lib/es6/component/Chart/VennChart.type.js.map +1 -1
  293. package/lib/es6/component/ChartLegend/BaseLegend.js +70 -104
  294. package/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
  295. package/lib/es6/component/ChartLegend/BaseLegend.type.js.map +1 -1
  296. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +53 -65
  297. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  298. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
  299. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +198 -211
  300. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  301. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
  302. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  303. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +58 -68
  304. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  305. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
  306. package/lib/es6/component/Cigarette/Cigarette.js +108 -122
  307. package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
  308. package/lib/es6/component/StackGroupBar/StackGroupBar.js +100 -130
  309. package/lib/es6/component/StackGroupBar/StackGroupBar.js.map +1 -1
  310. package/lib/es6/component/SvgElement.js +4 -5
  311. package/lib/es6/component/SvgElement.js.map +1 -1
  312. package/lib/es6/createElement.js +55 -54
  313. package/lib/es6/createElement.js.map +1 -1
  314. package/lib/es6/style/axis.shadow.css +3 -0
  315. package/lib/es6/style/plot.shadow.css +1 -3
  316. package/lib/es6/style/plotA11yModule.shadow.css +10 -11
  317. package/lib/es6/style/plotA11yView.shadow.css +13 -26
  318. package/lib/es6/translations/__intergalactic-dynamic-locales.js +14 -14
  319. package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
  320. package/lib/es6/types/Axis.d.js.map +1 -1
  321. package/lib/es6/types/CompactHorizontalBar.d.js.map +1 -1
  322. package/lib/es6/types/Hover.d.js.map +1 -1
  323. package/lib/es6/types/Line.d.js.map +1 -1
  324. package/lib/es6/types/Plot.d.js.map +1 -1
  325. package/lib/es6/types/Radar.d.js.map +1 -1
  326. package/lib/es6/types/ResponsiveContainer.d.js.map +1 -1
  327. package/lib/es6/types/Tooltip.d.js.map +1 -1
  328. package/lib/es6/types/Venn.d.js.map +1 -1
  329. package/lib/es6/utils.js +105 -144
  330. package/lib/es6/utils.js.map +1 -1
  331. package/lib/esm/AnimatedClipPath.mjs +24 -36
  332. package/lib/esm/Area.mjs +178 -149
  333. package/lib/esm/Axis.mjs +241 -242
  334. package/lib/esm/Bar.mjs +155 -137
  335. package/lib/esm/Bubble.mjs +205 -171
  336. package/lib/esm/CompactHorizontalBar.mjs +428 -383
  337. package/lib/esm/Donut.mjs +315 -266
  338. package/lib/esm/Dots.mjs +60 -49
  339. package/lib/esm/GroupBar.mjs +71 -75
  340. package/lib/esm/HorizontalBar.mjs +142 -120
  341. package/lib/esm/Hover.mjs +173 -163
  342. package/lib/esm/Line.mjs +174 -145
  343. package/lib/esm/Pattern.mjs +67 -63
  344. package/lib/esm/Plot.mjs +98 -95
  345. package/lib/esm/Radar.mjs +550 -498
  346. package/lib/esm/RadialTree.mjs +512 -416
  347. package/lib/esm/Reference.mjs +137 -122
  348. package/lib/esm/ResponsiveContainer.mjs +58 -69
  349. package/lib/esm/ScatterPlot.mjs +163 -162
  350. package/lib/esm/StackBar.mjs +126 -147
  351. package/lib/esm/StackedArea.mjs +53 -61
  352. package/lib/esm/Tooltip.mjs +185 -175
  353. package/lib/esm/Venn.mjs +170 -170
  354. package/lib/esm/a11y/DataAccessibilityTable.mjs +46 -73
  355. package/lib/esm/a11y/PlotA11yModule.mjs +37 -80
  356. package/lib/esm/a11y/PlotA11yView.mjs +99 -74
  357. package/lib/esm/a11y/bezier.mjs +16 -23
  358. package/lib/esm/a11y/focus.mjs +15 -16
  359. package/lib/esm/a11y/hints.mjs +65 -71
  360. package/lib/esm/a11y/insights.mjs +347 -495
  361. package/lib/esm/a11y/intl.mjs +4 -5
  362. package/lib/esm/a11y/locale.mjs +12 -14
  363. package/lib/esm/a11y/serialize.mjs +139 -152
  364. package/lib/esm/a11y/summarize.mjs +3 -3
  365. package/lib/esm/a11y/translations/module/__intergalactic-dynamic-locales.mjs +1 -1
  366. package/lib/esm/a11y/translations/module/de.json.mjs +2 -4
  367. package/lib/esm/a11y/translations/module/en.json.mjs +2 -4
  368. package/lib/esm/a11y/translations/module/es.json.mjs +2 -4
  369. package/lib/esm/a11y/translations/module/fr.json.mjs +2 -4
  370. package/lib/esm/a11y/translations/module/it.json.mjs +2 -4
  371. package/lib/esm/a11y/translations/module/ja.json.mjs +2 -4
  372. package/lib/esm/a11y/translations/module/ko.json.mjs +2 -4
  373. package/lib/esm/a11y/translations/module/nl.json.mjs +2 -4
  374. package/lib/esm/a11y/translations/module/pl.json.mjs +2 -4
  375. package/lib/esm/a11y/translations/module/pt.json.mjs +2 -4
  376. package/lib/esm/a11y/translations/module/sv.json.mjs +2 -4
  377. package/lib/esm/a11y/translations/module/tr.json.mjs +2 -4
  378. package/lib/esm/a11y/translations/module/vi.json.mjs +2 -4
  379. package/lib/esm/a11y/translations/module/zh.json.mjs +2 -4
  380. package/lib/esm/a11y/translations/view/__intergalactic-dynamic-locales.mjs +1 -1
  381. package/lib/esm/color.mjs +1 -1
  382. package/lib/esm/component/Chart/AbstractChart.mjs +422 -415
  383. package/lib/esm/component/Chart/AreaChart.mjs +92 -91
  384. package/lib/esm/component/Chart/BarChart.mjs +225 -177
  385. package/lib/esm/component/Chart/BubbleChart.mjs +110 -118
  386. package/lib/esm/component/Chart/CigaretteChart.mjs +277 -268
  387. package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +70 -87
  388. package/lib/esm/component/Chart/DonutChart.mjs +74 -84
  389. package/lib/esm/component/Chart/HistogramChart.mjs +121 -117
  390. package/lib/esm/component/Chart/LineChart.mjs +90 -89
  391. package/lib/esm/component/Chart/RadarChart.mjs +81 -97
  392. package/lib/esm/component/Chart/ScatterPlotChart.mjs +113 -111
  393. package/lib/esm/component/Chart/VennChart.mjs +98 -111
  394. package/lib/esm/component/ChartLegend/BaseLegend.mjs +75 -97
  395. package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +54 -55
  396. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +194 -165
  397. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.type.mjs +1 -1
  398. package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +60 -58
  399. package/lib/esm/component/Cigarette/Cigarette.mjs +109 -99
  400. package/lib/esm/component/StackGroupBar/StackGroupBar.mjs +97 -111
  401. package/lib/esm/component/SvgElement.mjs +4 -4
  402. package/lib/esm/createElement.mjs +54 -37
  403. package/lib/esm/style/axis.shadow.css +3 -0
  404. package/lib/esm/style/plot.shadow.css +1 -3
  405. package/lib/esm/style/plotA11yModule.shadow.css +10 -11
  406. package/lib/esm/style/plotA11yView.shadow.css +13 -26
  407. package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +1 -1
  408. package/lib/esm/utils.mjs +103 -138
  409. package/lib/types/Axis.d.ts +4 -0
  410. package/lib/types/CompactHorizontalBar.d.ts +1 -1
  411. package/lib/types/Hover.d.ts +1 -1
  412. package/lib/types/Line.d.ts +1 -1
  413. package/lib/types/Plot.d.ts +1 -1
  414. package/lib/types/Radar.d.ts +1 -1
  415. package/lib/types/ResponsiveContainer.d.ts +1 -1
  416. package/lib/types/Tooltip.d.ts +1 -3
  417. package/lib/types/Venn.d.ts +1 -1
  418. package/lib/types/a11y/PlotA11yModule.d.ts +4 -11
  419. package/lib/types/a11y/PlotA11yView.d.ts +12 -1
  420. package/lib/types/a11y/translations/module/__intergalactic-dynamic-locales.d.ts +14 -14
  421. package/lib/types/component/Chart/AbstractChart.d.ts +1 -1
  422. package/lib/types/component/Chart/AbstractChart.type.d.ts +1 -1
  423. package/lib/types/component/Chart/AreaChart.type.d.ts +1 -1
  424. package/lib/types/component/Chart/BarChart.type.d.ts +1 -1
  425. package/lib/types/component/Chart/BubbleChart.type.d.ts +1 -1
  426. package/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +1 -1
  427. package/lib/types/component/Chart/DonutChart.type.d.ts +1 -1
  428. package/lib/types/component/Chart/HistogramChart.type.d.ts +1 -1
  429. package/lib/types/component/Chart/LineChart.type.d.ts +1 -1
  430. package/lib/types/component/Chart/RadarChart.type.d.ts +1 -1
  431. package/lib/types/component/Chart/ScatterPlotChart.type.d.ts +1 -1
  432. package/lib/types/component/Chart/VennChart.type.d.ts +1 -1
  433. package/lib/types/component/ChartLegend/BaseLegend.d.ts +1 -1
  434. package/lib/types/component/ChartLegend/BaseLegend.type.d.ts +1 -1
  435. package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.type.d.ts +1 -1
  436. package/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +1 -1
  437. package/lib/types/component/ChartLegend/LegendTable/LegendTable.type.d.ts +1 -1
  438. package/lib/types/utils.d.ts +10 -10
  439. package/package.json +11 -14
@@ -1 +1 @@
1
- {"version":3,"file":"ScatterPlot.js","names":["_core","require","_canUseDOM","_interopRequireDefault","_uniqueID","_d3Transition","_react","_createElement","_Pattern","_Tooltip","_utils","style","sstyled","insert","ScatterPlotRoot","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","canUseDOM","document","createElement","visible","props","tooltipProps","_ref4","clientX","clientY","_this$asProps","asProps","eventEmitter","plotId","emit","_inherits2","_createClass2","key","value","generateGetBoundingClientRect","x","undefined","y","width","height","top","right","bottom","left","animationCircle","_this$asProps2","duration","uid","r","radius","getScatterPlotRadius","selectRect","transition","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","prevProps","data","componentDidMount","handlerOnClick","index","_this2","e","stopPropagation","onClick","renderCircle","d","i","_ref2","_this$asProps3","color","scale","offset","styles","valueColor","transparent","resolveColor","patterns","_scale","_slicedToArray2","xScale","yScale","SScatterPlot","Element","SValue","Number","isNaN","cn","bindHandlerTooltip","xIndex","PatternFill","render","_this$asProps4","_scale2","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","Component","uniqueIDEnhancement","ScatterPlotTooltip","_ref","arguments[0]","_ref3","SScatterPlotTooltip","Tooltip","_objectSpread2","assignProps","ScatterPlot","_______childrenComponents","_default","exports"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { transition } from 'd3-transition';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/scatterplot.shadow.css';\nimport Tooltip from './Tooltip';\nimport { getScatterPlotRadius } from './utils';\n\nclass ScatterPlotRoot extends Component {\n static displayName = 'ScatterPlot';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter, plotId } = this.asProps;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, props, tooltipProps);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, visible);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : getScatterPlotRadius(value);\n const selectRect = transition().selection().selectAll(`[id^=${uid}]`).attr('r', 0);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode) {\n selectRect.transition().duration(duration).attr('r', radius);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.animationCircle();\n }\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n handlerOnClick(index) {\n return (e) => {\n e.stopPropagation();\n\n const { onClick } = this.asProps;\n\n if (!onClick) return;\n\n onClick(index, e);\n };\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n r,\n offset,\n styles,\n uid,\n duration,\n value,\n valueColor,\n transparent,\n resolveColor,\n patterns,\n } = this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n if (Number.isNaN(d[x]) || Number.isNaN(d[y])) {\n return null;\n }\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, this.props, { xIndex: i, index: i, patterns })}\n onMouseLeave={this.bindHandlerTooltip(false, this.props, { xIndex: i, index: i, patterns })}\n onClickCapture={this.handlerOnClick(i)}\n >\n <SScatterPlot\n aria-hidden\n id={`${uid}${i}`}\n index={i}\n render='circle'\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n {d[value] !== undefined && (\n <SValue\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n color={resolveColor(valueColor)}\n transparent={transparent}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <clipPath id={uid}>\n <rect x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </clipPath>\n </>\n );\n }\n}\n\nfunction ScatterPlotTooltip(props) {\n const SScatterPlotTooltip = Root;\n return sstyled(props.styles)(<SScatterPlotTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst ScatterPlot = createElement(ScatterPlotRoot, {\n Tooltip: [ScatterPlotTooltip, Tooltip._______childrenComponents],\n});\n\nexport default ScatterPlot;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ScatterPlot.js","names":["_core","require","_canUseDOM","_interopRequireDefault","_uniqueID","_d3Transition","_react","_createElement","_Pattern","_Tooltip","_utils","style","sstyled","insert","ScatterPlotRoot","Component","constructor","args","_defineProperty2","default","canUseDOM","document","createElement","visible","props","tooltipProps","clientX","clientY","eventEmitter","plotId","asProps","emit","generateGetBoundingClientRect","x","y","width","height","top","right","bottom","left","animationCircle","duration","uid","r","value","radius","getScatterPlotRadius","selectRect","transition","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","prevProps","data","componentDidMount","handlerOnClick","index","e","stopPropagation","onClick","renderCircle","d","i","_ref2","color","scale","offset","styles","valueColor","transparent","resolveColor","patterns","xScale","yScale","SScatterPlot","Element","SValue","Number","isNaN","cn","bindHandlerTooltip","xIndex","undefined","PatternFill","render","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","uniqueIDEnhancement","ScatterPlotTooltip","_ref","arguments[0]","_ref3","SScatterPlotTooltip","Tooltip","assignProps","ScatterPlot","_______childrenComponents","_default","exports"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { transition } from 'd3-transition';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/scatterplot.shadow.css';\nimport Tooltip from './Tooltip';\nimport { getScatterPlotRadius } from './utils';\n\nclass ScatterPlotRoot extends Component {\n static displayName = 'ScatterPlot';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter, plotId } = this.asProps;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, props, tooltipProps);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, visible);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : getScatterPlotRadius(value);\n const selectRect = transition().selection().selectAll(`[id^=${uid}]`).attr('r', 0);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode) {\n selectRect.transition().duration(duration).attr('r', radius);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.animationCircle();\n }\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n handlerOnClick(index) {\n return (e) => {\n e.stopPropagation();\n\n const { onClick } = this.asProps;\n\n if (!onClick) return;\n\n onClick(index, e);\n };\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n r,\n offset,\n styles,\n uid,\n duration,\n value,\n valueColor,\n transparent,\n resolveColor,\n patterns,\n } = this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n if (Number.isNaN(d[x]) || Number.isNaN(d[y])) {\n return null;\n }\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, this.props, { xIndex: i, index: i, patterns })}\n onMouseLeave={this.bindHandlerTooltip(false, this.props, { xIndex: i, index: i, patterns })}\n onClickCapture={this.handlerOnClick(i)}\n >\n <SScatterPlot\n aria-hidden\n id={`${uid}${i}`}\n index={i}\n render='circle'\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n {d[value] !== undefined && (\n <SValue\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n color={resolveColor(valueColor)}\n transparent={transparent}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <clipPath id={uid}>\n <rect x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </clipPath>\n </>\n );\n }\n}\n\nfunction ScatterPlotTooltip(props) {\n const SScatterPlotTooltip = Root;\n return sstyled(props.styles)(<SScatterPlotTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst ScatterPlot = createElement(ScatterPlotRoot, {\n Tooltip: [ScatterPlotTooltip, Tooltip._______childrenComponents],\n});\n\nexport default ScatterPlot;\n"],"mappings":"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","ignoreList":[]}
@@ -1,17 +1,11 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard")["default"];
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports["default"] = void 0;
9
- var _objectSpread4 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
- var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
14
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
8
+ exports.default = void 0;
15
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
10
  var _core = require("@semcore/core");
17
11
  var _getOriginChildren = _interopRequireDefault(require("@semcore/core/lib/utils/getOriginChildren"));
@@ -21,181 +15,145 @@ var _Bar = _interopRequireWildcard(require("./Bar"));
21
15
  var _createElement = _interopRequireDefault(require("./createElement"));
22
16
  var _HorizontalBar = _interopRequireWildcard(require("./HorizontalBar"));
23
17
  var _utils = require("./utils");
24
- var DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
25
- var XY0 = Symbol('XY0');
26
- var StackBarRoot = /*#__PURE__*/function (_Component) {
27
- function StackBarRoot() {
28
- var _this;
29
- (0, _classCallCheck2["default"])(this, StackBarRoot);
30
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
31
- args[_key] = arguments[_key];
32
- }
33
- _this = (0, _callSuper2["default"])(this, StackBarRoot, [].concat(args));
34
- (0, _defineProperty2["default"])(_this, "offsetBars", []);
35
- return _this;
18
+ const DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
19
+ const XY0 = Symbol('XY0');
20
+ class StackBarRoot extends _core.Component {
21
+ constructor(...args) {
22
+ super(...args);
23
+ (0, _defineProperty2.default)(this, "offsetBars", []);
36
24
  }
37
- (0, _inherits2["default"])(StackBarRoot, _Component);
38
- return (0, _createClass2["default"])(StackBarRoot, [{
39
- key: "getSeries",
40
- value: function getSeries() {
41
- var _this$asProps = this.asProps,
42
- Children = _this$asProps.Children,
43
- data = _this$asProps.data,
44
- stack = _this$asProps.stack;
45
- if (stack[DEFAULT_INSTANCE]) {
46
- var keys = _react["default"].Children.toArray((0, _getOriginChildren["default"])(Children)).reduce(function (acc, child) {
47
- if (/*#__PURE__*/_react["default"].isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {
48
- acc.push(child.props.y);
49
- }
50
- if (/*#__PURE__*/_react["default"].isValidElement(child) && child.type === StackBar.HorizontalBar && !child.props.hide) {
51
- acc.push(child.props.x);
52
- }
53
- return acc;
54
- }, []);
55
- stack.keys(keys);
56
- }
57
- return stack(data);
58
- }
59
- }, {
60
- key: "getBarProps",
61
- value: function getBarProps(_ref, index) {
62
- var _this2 = this,
63
- _this$offsetBars$seri;
64
- var y = _ref.y,
65
- _ref$hMin = _ref.hMin,
66
- hMin = _ref$hMin === void 0 ? _Bar.MIN_HEIGHT : _ref$hMin;
67
- var _this$asProps2 = this.asProps,
68
- x = _this$asProps2.x,
69
- r = _this$asProps2.r,
70
- scale = _this$asProps2.scale,
71
- maxBarSize = _this$asProps2.maxBarSize,
72
- patterns = _this$asProps2.patterns;
73
- var _scale = (0, _slicedToArray2["default"])(scale, 2),
74
- yScale = _scale[1];
75
- var seriesIndex = this.series.findIndex(function (s) {
76
- return s.key === y;
77
- });
78
- // or [] if hide bar
79
- var series = this.series[seriesIndex] || [];
80
- var rBar = series.map(function (_s, i) {
81
- return _this2.series.slice(seriesIndex + 1).some(function (bar) {
82
- return bar[i][0] !== bar[i][1];
83
- }) ? 0 : r;
84
- });
85
- this.offsetBars[seriesIndex] = (_this$offsetBars$seri = this.offsetBars[seriesIndex]) !== null && _this$offsetBars$seri !== void 0 ? _this$offsetBars$seri : [];
86
- var data = series.map(function (s) {
87
- return (0, _objectSpread4["default"])((0, _objectSpread4["default"])({}, s.data), {}, (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, y, s[1]), XY0, s[0]));
88
- });
89
- var calcOffset = function calcOffset(i) {
90
- var _d$XY, _d$XY2;
91
- var offset = _this2.offsetBars.reduce(function (offset, offsetBar) {
92
- var _offsetBar$i;
93
- return offset - ((_offsetBar$i = offsetBar[i]) !== null && _offsetBar$i !== void 0 ? _offsetBar$i : 0);
94
- }, 0);
95
- var d = data[i];
96
- var absHeight = Math.abs(yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale((_d$XY = d[XY0]) !== null && _d$XY !== void 0 ? _d$XY : 0)));
97
- var isEmptyValue = Number(d[y] - ((_d$XY2 = d[XY0]) !== null && _d$XY2 !== void 0 ? _d$XY2 : 0)) === 0;
98
- if (isEmptyValue || absHeight >= hMin) {
99
- _this2.offsetBars[seriesIndex][i] = 0;
100
- } else {
101
- var offsetValue = hMin - absHeight;
102
- _this2.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;
25
+ getSeries() {
26
+ const {
27
+ Children,
28
+ data,
29
+ stack
30
+ } = this.asProps;
31
+ if (stack[DEFAULT_INSTANCE]) {
32
+ const keys = _react.default.Children.toArray((0, _getOriginChildren.default)(Children)).reduce((acc, child) => {
33
+ if (/*#__PURE__*/_react.default.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {
34
+ acc.push(child.props.y);
103
35
  }
104
- return [0, offset];
105
- };
106
- return {
107
- data: data,
108
- hMin: hMin,
109
- y0: XY0,
110
- x: x,
111
- r: rBar,
112
- groupKey: x,
113
- offset: calcOffset,
114
- maxBarSize: maxBarSize,
115
- color: (0, _utils.getChartDefaultColorName)(index),
116
- patterns: patterns
117
- };
118
- }
119
- }, {
120
- key: "getHorizontalBarProps",
121
- value: function getHorizontalBarProps(_ref2, index) {
122
- var _this3 = this,
123
- _this$offsetBars$seri2;
124
- var x = _ref2.x,
125
- _ref2$wMin = _ref2.wMin,
126
- wMin = _ref2$wMin === void 0 ? _HorizontalBar.MIN_WIDTH : _ref2$wMin;
127
- var _this$asProps3 = this.asProps,
128
- y = _this$asProps3.y,
129
- r = _this$asProps3.r,
130
- scale = _this$asProps3.scale,
131
- maxBarSize = _this$asProps3.maxBarSize,
132
- patterns = _this$asProps3.patterns;
133
- var _scale2 = (0, _slicedToArray2["default"])(scale, 1),
134
- xScale = _scale2[0];
135
- var seriesIndex = this.series.findIndex(function (s) {
136
- return s.key === x;
137
- });
138
- var series = this.series[seriesIndex];
139
- var rBar = series.map(function (_s, i) {
140
- return _this3.series.slice(seriesIndex + 1).some(function (bar) {
141
- return bar[i][0] !== bar[i][1];
142
- }) ? 0 : r;
143
- });
144
- this.offsetBars[seriesIndex] = (_this$offsetBars$seri2 = this.offsetBars[seriesIndex]) !== null && _this$offsetBars$seri2 !== void 0 ? _this$offsetBars$seri2 : [];
145
- var data = series.map(function (s) {
146
- return (0, _objectSpread4["default"])((0, _objectSpread4["default"])({}, s.data), {}, (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, x, s[1]), XY0, s[0]));
147
- });
148
- var calcOffset = function calcOffset(i) {
149
- var _d$XY3, _d$XY4;
150
- var offset = _this3.offsetBars.reduce(function (offset, offsetBar) {
151
- var _offsetBar$i2;
152
- return offset - ((_offsetBar$i2 = offsetBar[i]) !== null && _offsetBar$i2 !== void 0 ? _offsetBar$i2 : 0);
153
- }, 0);
154
- var d = data[i];
155
- var absWidth = Math.abs(xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale((_d$XY3 = d[XY0]) !== null && _d$XY3 !== void 0 ? _d$XY3 : 0)));
156
- _this3.offsetBars[seriesIndex][i] = Number(d[x] - ((_d$XY4 = d[XY0]) !== null && _d$XY4 !== void 0 ? _d$XY4 : 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;
157
- return [offset, 0];
158
- };
159
- return {
160
- data: data,
161
- wMin: wMin,
162
- x0: XY0,
163
- y: y,
164
- r: rBar,
165
- groupKey: y,
166
- offset: calcOffset,
167
- maxBarSize: maxBarSize,
168
- color: (0, _utils.getChartDefaultColorName)(index),
169
- patterns: patterns
170
- };
171
- }
172
- }, {
173
- key: "render",
174
- value: function render() {
175
- var Element = this.Element;
176
- this.series = this.getSeries();
177
- this.asProps.dataHintsHandler.establishDataType('grouped-values');
178
- this.offsetBars = [];
179
- return /*#__PURE__*/_react["default"].createElement(Element, {
180
- "aria-hidden": true,
181
- render: "g",
182
- series: this.series
183
- });
36
+ if (/*#__PURE__*/_react.default.isValidElement(child) && child.type === StackBar.HorizontalBar && !child.props.hide) {
37
+ acc.push(child.props.x);
38
+ }
39
+ return acc;
40
+ }, []);
41
+ stack.keys(keys);
184
42
  }
185
- }]);
186
- }(_core.Component);
187
- (0, _defineProperty2["default"])(StackBarRoot, "displayName", 'StackBar');
188
- (0, _defineProperty2["default"])(StackBarRoot, "defaultProps", function () {
189
- var stack = (0, _d3Shape.stack)();
43
+ return stack(data);
44
+ }
45
+ getBarProps({
46
+ y,
47
+ hMin = _Bar.MIN_HEIGHT
48
+ }, index) {
49
+ const {
50
+ x,
51
+ r,
52
+ scale,
53
+ maxBarSize,
54
+ patterns
55
+ } = this.asProps;
56
+ const [, yScale] = scale;
57
+ const seriesIndex = this.series.findIndex(s => s.key === y);
58
+ // or [] if hide bar
59
+ const series = this.series[seriesIndex] || [];
60
+ const rBar = series.map((_s, i) => this.series.slice(seriesIndex + 1).some(bar => bar[i][0] !== bar[i][1]) ? 0 : r);
61
+ this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];
62
+ const data = series.map(s => ({
63
+ ...s.data,
64
+ [y]: s[1],
65
+ [XY0]: s[0]
66
+ }));
67
+ const calcOffset = i => {
68
+ const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);
69
+ const d = data[i];
70
+ const absHeight = Math.abs(yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)));
71
+ const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;
72
+ if (isEmptyValue || absHeight >= hMin) {
73
+ this.offsetBars[seriesIndex][i] = 0;
74
+ } else {
75
+ const offsetValue = hMin - absHeight;
76
+ this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;
77
+ }
78
+ return [0, offset];
79
+ };
80
+ return {
81
+ data,
82
+ hMin,
83
+ y0: XY0,
84
+ x,
85
+ r: rBar,
86
+ groupKey: x,
87
+ offset: calcOffset,
88
+ maxBarSize,
89
+ color: (0, _utils.getChartDefaultColorName)(index),
90
+ patterns
91
+ };
92
+ }
93
+ getHorizontalBarProps({
94
+ x,
95
+ wMin = _HorizontalBar.MIN_WIDTH
96
+ }, index) {
97
+ const {
98
+ y,
99
+ r,
100
+ scale,
101
+ maxBarSize,
102
+ patterns
103
+ } = this.asProps;
104
+ const [xScale] = scale;
105
+ const seriesIndex = this.series.findIndex(s => s.key === x);
106
+ const series = this.series[seriesIndex];
107
+ this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];
108
+ const data = series.map(s => ({
109
+ ...s.data,
110
+ [x]: s[1],
111
+ [XY0]: s[0]
112
+ }));
113
+ const calcOffset = i => {
114
+ const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);
115
+ const d = data[i];
116
+ const absWidth = Math.abs(xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)));
117
+ this.offsetBars[seriesIndex][i] = Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;
118
+ return [offset, 0];
119
+ };
120
+ return {
121
+ data,
122
+ wMin,
123
+ x0: XY0,
124
+ y,
125
+ r: 0,
126
+ groupKey: y,
127
+ offset: calcOffset,
128
+ maxBarSize,
129
+ color: (0, _utils.getChartDefaultColorName)(index),
130
+ patterns
131
+ };
132
+ }
133
+ render() {
134
+ const Element = this.Element;
135
+ this.series = this.getSeries();
136
+ this.asProps.dataHintsHandler.establishDataType('grouped-values');
137
+ this.offsetBars = [];
138
+ return /*#__PURE__*/_react.default.createElement(Element, {
139
+ "aria-hidden": true,
140
+ render: "g",
141
+ series: this.series
142
+ });
143
+ }
144
+ }
145
+ (0, _defineProperty2.default)(StackBarRoot, "displayName", 'StackBar');
146
+ (0, _defineProperty2.default)(StackBarRoot, "defaultProps", () => {
147
+ const stack = (0, _d3Shape.stack)();
190
148
  stack[DEFAULT_INSTANCE] = true;
191
149
  return {
192
- stack: stack,
150
+ stack,
193
151
  r: 2
194
152
  };
195
153
  });
196
- var StackBar = (0, _createElement["default"])(StackBarRoot, {
197
- Bar: _Bar["default"],
198
- HorizontalBar: _HorizontalBar["default"]
154
+ const StackBar = (0, _createElement.default)(StackBarRoot, {
155
+ Bar: _Bar.default,
156
+ HorizontalBar: _HorizontalBar.default
199
157
  });
200
- var _default = exports["default"] = StackBar;
158
+ var _default = exports.default = StackBar;
201
159
  //# sourceMappingURL=StackBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StackBar.js","names":["_core","require","_getOriginChildren","_interopRequireDefault","_d3Shape","_react","_Bar","_interopRequireWildcard","_createElement","_HorizontalBar","_utils","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","_inherits2","_createClass2","key","value","getSeries","_this$asProps","asProps","Children","data","stack","keys","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","StackBar","Bar","props","hide","push","y","HorizontalBar","x","getBarProps","_ref","index","_this2","_this$offsetBars$seri","_ref$hMin","hMin","MIN_HEIGHT","_this$asProps2","r","scale","maxBarSize","patterns","_scale","_slicedToArray2","yScale","seriesIndex","series","findIndex","s","rBar","map","_s","i","slice","some","bar","offsetBars","_objectSpread4","calcOffset","_d$XY","_d$XY2","offset","offsetBar","_offsetBar$i","d","absHeight","Math","abs","min","domain","isEmptyValue","Number","offsetValue","y0","groupKey","color","getChartDefaultColorName","getHorizontalBarProps","_ref2","_this3","_this$offsetBars$seri2","_ref2$wMin","wMin","MIN_WIDTH","_this$asProps3","_scale2","xScale","_d$XY3","_d$XY4","_offsetBar$i2","absWidth","max","x0","render","Element","dataHintsHandler","establishDataType","createElement","Component","d3Stack","_default","exports"],"sources":["../../src/StackBar.jsx"],"sourcesContent":["import { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport { stack as d3Stack } from 'd3-shape';\nimport React from 'react';\n\nimport Bar, { MIN_HEIGHT } from './Bar';\nimport createElement from './createElement';\nimport HorizontalBar, { MIN_WIDTH } from './HorizontalBar';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\n };\n\n offsetBars = [];\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === StackBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n stack.keys(keys);\n }\n\n return stack(data);\n }\n\n getBarProps({ y, hMin = MIN_HEIGHT }, index) {\n const { x, r, scale, maxBarSize, patterns } = this.asProps;\n const [, yScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === y);\n // or [] if hide bar\n const series = this.series[seriesIndex] || [];\n\n const rBar = series.map((_s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)),\n );\n\n const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;\n\n if (isEmptyValue || absHeight >= hMin) {\n this.offsetBars[seriesIndex][i] = 0;\n } else {\n const offsetValue = hMin - absHeight;\n this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;\n }\n\n return [0, offset];\n };\n\n return {\n data,\n hMin,\n y0: XY0,\n x,\n r: rBar,\n groupKey: x,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }, index) {\n const { y, r, scale, maxBarSize, patterns } = this.asProps;\n const [xScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === x);\n const series = this.series[seriesIndex];\n\n const rBar = series.map((_s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;\n return [offset, 0];\n };\n\n return {\n data,\n wMin,\n x0: XY0,\n y,\n r: rBar,\n groupKey: y,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n this.offsetBars = [];\n\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"StackBar.js","names":["_core","require","_getOriginChildren","_interopRequireDefault","_d3Shape","_react","_Bar","_interopRequireWildcard","_createElement","_HorizontalBar","_utils","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","Component","constructor","args","_defineProperty2","default","getSeries","Children","data","stack","asProps","keys","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","StackBar","Bar","props","hide","push","y","HorizontalBar","x","getBarProps","hMin","MIN_HEIGHT","index","r","scale","maxBarSize","patterns","yScale","seriesIndex","series","findIndex","s","key","rBar","map","_s","i","slice","some","bar","offsetBars","calcOffset","offset","offsetBar","d","absHeight","Math","abs","min","domain","isEmptyValue","Number","offsetValue","y0","groupKey","color","getChartDefaultColorName","getHorizontalBarProps","wMin","MIN_WIDTH","xScale","absWidth","max","x0","render","Element","dataHintsHandler","establishDataType","createElement","d3Stack","_default","exports"],"sources":["../../src/StackBar.jsx"],"sourcesContent":["import { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport { stack as d3Stack } from 'd3-shape';\nimport React from 'react';\n\nimport Bar, { MIN_HEIGHT } from './Bar';\nimport createElement from './createElement';\nimport HorizontalBar, { MIN_WIDTH } from './HorizontalBar';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\n };\n\n offsetBars = [];\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === StackBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n stack.keys(keys);\n }\n\n return stack(data);\n }\n\n getBarProps({ y, hMin = MIN_HEIGHT }, index) {\n const { x, r, scale, maxBarSize, patterns } = this.asProps;\n const [, yScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === y);\n // or [] if hide bar\n const series = this.series[seriesIndex] || [];\n\n const rBar = series.map((_s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)),\n );\n\n const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;\n\n if (isEmptyValue || absHeight >= hMin) {\n this.offsetBars[seriesIndex][i] = 0;\n } else {\n const offsetValue = hMin - absHeight;\n this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;\n }\n\n return [0, offset];\n };\n\n return {\n data,\n hMin,\n y0: XY0,\n x,\n r: rBar,\n groupKey: x,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }, index) {\n const { y, r, scale, maxBarSize, patterns } = this.asProps;\n const [xScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === x);\n const series = this.series[seriesIndex];\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;\n return [offset, 0];\n };\n\n return {\n data,\n wMin,\n x0: XY0,\n y,\n r: 0,\n groupKey: y,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n this.offsetBars = [];\n\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"mappings":"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","ignoreList":[]}
@@ -1,15 +1,10 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports["default"] = void 0;
8
- var _objectSpread3 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
- var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
12
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
7
+ exports.default = void 0;
13
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
14
9
  var _core = require("@semcore/core");
15
10
  var _getOriginChildren = _interopRequireDefault(require("@semcore/core/lib/utils/getOriginChildren"));
@@ -18,76 +13,68 @@ var _react = _interopRequireDefault(require("react"));
18
13
  var _Area = _interopRequireDefault(require("./Area"));
19
14
  var _createElement = _interopRequireDefault(require("./createElement"));
20
15
  var _utils = require("./utils");
21
- var DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
22
- var Y0 = Symbol('Y0');
23
- var StackedAreaRoot = /*#__PURE__*/function (_Component) {
24
- function StackedAreaRoot() {
25
- (0, _classCallCheck2["default"])(this, StackedAreaRoot);
26
- return (0, _callSuper2["default"])(this, StackedAreaRoot, arguments);
27
- }
28
- (0, _inherits2["default"])(StackedAreaRoot, _Component);
29
- return (0, _createClass2["default"])(StackedAreaRoot, [{
30
- key: "getSeries",
31
- value: function getSeries() {
32
- var _this$asProps = this.asProps,
33
- Children = _this$asProps.Children,
34
- data = _this$asProps.data,
35
- stack = _this$asProps.stack;
36
- if (stack[DEFAULT_INSTANCE]) {
37
- var keys = _react["default"].Children.toArray((0, _getOriginChildren["default"])(Children)).reduce(function (acc, child) {
38
- if (/*#__PURE__*/_react["default"].isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {
39
- acc.push(child.props.y);
40
- }
41
- return acc;
42
- }, []);
43
- stack.keys(keys.reverse());
44
- }
45
- return stack(data);
46
- }
47
- }, {
48
- key: "getAreaProps",
49
- value: function getAreaProps(_ref, index) {
50
- var y = _ref.y;
51
- var _this$asProps2 = this.asProps,
52
- x = _this$asProps2.x,
53
- patterns = _this$asProps2.patterns;
54
- // or [] if hide area
55
- var series = this.series.find(function (s) {
56
- return s.key === y;
57
- }) || [];
58
- return {
59
- color: (0, _utils.getChartDefaultColorName)(index),
60
- patterns: patterns,
61
- data: series.map(function (s) {
62
- return (0, _objectSpread3["default"])((0, _objectSpread3["default"])({}, s.data), {}, (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, y, s.data[y] === null ? null : s[1]), Y0, s[0]));
63
- }),
64
- y0: Y0,
65
- x: x
66
- };
67
- }
68
- }, {
69
- key: "render",
70
- value: function render() {
71
- var Element = this.Element;
72
- this.series = this.getSeries();
73
- return /*#__PURE__*/_react["default"].createElement(Element, {
74
- "aria-hidden": true,
75
- render: "g",
76
- series: this.series
77
- });
16
+ const DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
17
+ const Y0 = Symbol('Y0');
18
+ class StackedAreaRoot extends _core.Component {
19
+ getSeries() {
20
+ const {
21
+ Children,
22
+ data,
23
+ stack
24
+ } = this.asProps;
25
+ if (stack[DEFAULT_INSTANCE]) {
26
+ const keys = _react.default.Children.toArray((0, _getOriginChildren.default)(Children)).reduce((acc, child) => {
27
+ if (/*#__PURE__*/_react.default.isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {
28
+ acc.push(child.props.y);
29
+ }
30
+ return acc;
31
+ }, []);
32
+ stack.keys(keys.reverse());
78
33
  }
79
- }]);
80
- }(_core.Component);
81
- (0, _defineProperty2["default"])(StackedAreaRoot, "displayName", 'StackedArea');
82
- (0, _defineProperty2["default"])(StackedAreaRoot, "defaultProps", function () {
83
- var stack = (0, _d3Shape.stack)();
34
+ return stack(data);
35
+ }
36
+ getAreaProps({
37
+ y
38
+ }, index) {
39
+ const {
40
+ x,
41
+ patterns
42
+ } = this.asProps;
43
+ // or [] if hide area
44
+ const series = this.series.find(s => s.key === y) || [];
45
+ return {
46
+ color: (0, _utils.getChartDefaultColorName)(index),
47
+ patterns,
48
+ data: series.map(s => ({
49
+ ...s.data,
50
+ // if null is passed in the data, then we pass it, because d3 null leads to 0
51
+ [y]: s.data[y] === null ? null : s[1],
52
+ [Y0]: s[0]
53
+ })),
54
+ y0: Y0,
55
+ x
56
+ };
57
+ }
58
+ render() {
59
+ const Element = this.Element;
60
+ this.series = this.getSeries();
61
+ return /*#__PURE__*/_react.default.createElement(Element, {
62
+ "aria-hidden": true,
63
+ render: "g",
64
+ series: this.series
65
+ });
66
+ }
67
+ }
68
+ (0, _defineProperty2.default)(StackedAreaRoot, "displayName", 'StackedArea');
69
+ (0, _defineProperty2.default)(StackedAreaRoot, "defaultProps", () => {
70
+ const stack = (0, _d3Shape.stack)();
84
71
  stack[DEFAULT_INSTANCE] = true;
85
72
  return {
86
- stack: stack
73
+ stack
87
74
  };
88
75
  });
89
- var StackedArea = (0, _createElement["default"])(StackedAreaRoot, {
90
- Area: _Area["default"]
76
+ const StackedArea = (0, _createElement.default)(StackedAreaRoot, {
77
+ Area: _Area.default
91
78
  });
92
- var _default = exports["default"] = StackedArea;
79
+ var _default = exports.default = StackedArea;
93
80
  //# sourceMappingURL=StackedArea.js.map