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

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 +9 -12
@@ -1 +1 @@
1
- {"version":3,"file":"Axis.js","names":["Component","sstyled","React","useState","useEffect","createElement","style","_sstyled","insert","scaleOfBandwidth","CUSTOM_0","Symbol","CUSTOM_1","MAP_INDEX_SCALE_SYMBOL","MAP_POSITION_REVERT","top","right","bottom","left","MAP_POSITION_AXIS","_defineProperty","_ref5","_ref6","_slicedToArray","xScale","yScale","xRange","range","yRange","x1","y1","x2","y2","_ref7","_ref8","_ref9","_ref0","_ref1","_ref10","_ref11","pos","_ref12","_ref13","_ref14","MAP_POSITION_TICK","_ref15","value","_ref16","x","y","_ref17","_ref18","_ref19","_ref20","_ref21","_ref22","_ref23","_ref24","_ref25","_ref26","MAP_POSITION_GRID","_","_ref27","_ref28","_ref29","_ref30","OFFSET_TITLE","MAP_POSITION_TITlE","_ref31","_ref32","_ref33","_ref34","_ref35","_ref36","height","_ref37","_ref38","_ref39","_ref40","width","_ref41","_ref42","renderValue","Date","toLocaleDateString","splitTextByWidth","root","text","maxWidth","words","split","filter","word","length","lines","currentLine","i","testLine","concat","trim","testWidth","measureTextWidth","push","rootRef","fontSize","arguments","undefined","textEl","document","createElementNS","setAttribute","textContent","appendChild","getComputedTextLength","removeChild","AxisRoot","_Component","_classCallCheck","_callSuper","_inherits","_createClass","key","get","_scl$ticks","_scl$domain","_this$asProps","asProps","ticks","indexScale","scale","scl","call","domain","getTitleProps","_this$asProps2","position","locale","verticalWritingMode","includes","getTicksProps","_this$asProps3","getGridProps","render","_ref","_MAP_POSITION_AXIS$po","SAxis","Element","_this$asProps4","styles","hide","cn","_objectSpread","Ticks","props","_scale$indexScale","_scale$indexScale$ban","_MAP_POSITION_TICK$po","STick","dataHintsHandler","children","_props$childrenPositi","childrenPosition","multiline","_useState","_useState2","rootRefElement","setRootRefElement","current","tickBandwidth","bandwidth","ticksWithLines","map","tick","positionClass","labelGetter","_result$value","result","addKeyLabelGetter","_ref43","_ref2","displayValue","line","lineIndex","_extends","dy","Grid","SGrid","setupGrid","Math","abs","_ref3","Title","_ref4","STitle","size","_MAP_POSITION_TITlE$p","setTitle","sstyles","sTitleStyles","toFixed","className","XAxisRoot","_AxisRoot2","defaultProps","XAxis","YAxisRoot","_AxisRoot3","YAxis"],"sources":["../../src/Axis.jsx"],"sourcesContent":["import { Component, sstyled } from '@semcore/core';\nimport React, { useState, useEffect } from 'react';\n\nimport createElement from './createElement';\nimport style from './style/axis.shadow.css';\nimport { scaleOfBandwidth } from './utils';\n\nconst CUSTOM_0 = Symbol('custom_0');\nconst CUSTOM_1 = Symbol('custom_1');\n\nconst MAP_INDEX_SCALE_SYMBOL = {\n 0: CUSTOM_0,\n 1: CUSTOM_1,\n};\n\nconst MAP_POSITION_REVERT = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n};\n\nconst MAP_POSITION_AXIS = {\n top: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[1],\n x2: xRange[1],\n y2: yRange[1],\n };\n },\n bottom: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[0],\n x2: xRange[1],\n y2: yRange[0],\n };\n },\n right: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[1],\n y1: yRange[0],\n x2: xRange[1],\n y2: yRange[1],\n };\n },\n left: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[0],\n x2: xRange[0],\n y2: yRange[1],\n };\n },\n [CUSTOM_0]: ([xScale, yScale], pos) => {\n const xRange = xScale.range();\n return {\n x1: xRange[0],\n y1: scaleOfBandwidth(yScale, pos),\n x2: xRange[1],\n y2: scaleOfBandwidth(yScale, pos),\n };\n },\n [CUSTOM_1]: ([xScale, yScale], pos) => {\n const yRange = yScale.range();\n return {\n x1: scaleOfBandwidth(xScale, pos),\n y1: yRange[0],\n x2: scaleOfBandwidth(xScale, pos),\n y2: yRange[1],\n };\n },\n};\n\nconst MAP_POSITION_TICK = {\n top: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n return {\n x: scaleOfBandwidth(xScale, value),\n y: yRange[1],\n };\n },\n bottom: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n return {\n x: scaleOfBandwidth(xScale, value),\n y: yRange[0],\n };\n },\n right: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n return {\n x: xRange[1],\n y: scaleOfBandwidth(yScale, value),\n };\n },\n left: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n return {\n x: xRange[0],\n y: scaleOfBandwidth(yScale, value),\n };\n },\n [CUSTOM_0]: ([xScale, yScale], value, pos) => {\n return {\n x: scaleOfBandwidth(xScale, value),\n y: scaleOfBandwidth(yScale, pos),\n };\n },\n [CUSTOM_1]: ([xScale, yScale], value, pos) => {\n return {\n x: scaleOfBandwidth(xScale, pos),\n y: scaleOfBandwidth(yScale, value),\n };\n },\n};\n\nconst MAP_POSITION_GRID = {\n 0: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n const x = scaleOfBandwidth(xScale, value);\n return {\n x1: x,\n y1: yRange[0],\n x2: x,\n y2: yRange[1],\n };\n },\n 1: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n const y = scaleOfBandwidth(yScale, value);\n return {\n x1: xRange[0],\n y1: y,\n x2: xRange[1],\n y2: y,\n };\n },\n};\n\nconst OFFSET_TITLE = 10;\nconst MAP_POSITION_TITlE = {\n top: ([xScale]) => {\n const xRange = xScale.range();\n return {\n x: (xRange[1] + xRange[0]) / 2,\n y: OFFSET_TITLE,\n };\n },\n bottom: ([xScale], [, height]) => {\n const xRange = xScale.range();\n return {\n x: (xRange[1] + xRange[0]) / 2,\n y: height - OFFSET_TITLE,\n };\n },\n right: ([, yScale], [width]) => {\n const yRange = yScale.range();\n return {\n x: width - OFFSET_TITLE,\n y: (yRange[0] + yRange[1]) / 2,\n };\n },\n left: ([, yScale]) => {\n const yRange = yScale.range();\n return {\n x: OFFSET_TITLE,\n y: (yRange[0] + yRange[1]) / 2,\n };\n },\n};\n\nfunction renderValue(value) {\n if (value instanceof Date) {\n return value.toLocaleDateString();\n }\n return value;\n}\n\nfunction splitTextByWidth(root, text, maxWidth) {\n if (!text || !maxWidth || maxWidth <= 0) return [];\n\n const words = text.split(/\\s+/).filter((word) => word.length > 0);\n if (words.length === 0) return [];\n\n const lines = [];\n let currentLine = words[0];\n\n for (let i = 1; i < words.length; i++) {\n const testLine = `${currentLine} ${words[i]}`.trim();\n const testWidth = measureTextWidth(root, testLine);\n\n if (testWidth <= maxWidth) {\n currentLine = testLine;\n } else {\n if (currentLine) {\n lines.push(currentLine);\n }\n\n currentLine = words[i];\n\n if (measureTextWidth(root, currentLine) > maxWidth) {\n lines.push(currentLine);\n currentLine = '';\n }\n }\n }\n\n if (currentLine) {\n lines.push(currentLine);\n }\n\n return lines;\n}\n\nfunction measureTextWidth(rootRef, text, fontSize = 12) {\n const textEl = document.createElementNS('http://www.w3.org/2000/svg', 'text');\n textEl.setAttribute('font-size', fontSize);\n textEl.setAttribute('visibility', 'hidden');\n textEl.textContent = text;\n\n rootRef.appendChild(textEl);\n const width = textEl.getComputedTextLength();\n rootRef.removeChild(textEl);\n return width;\n}\n\nclass AxisRoot extends Component {\n static displayName = 'Axis';\n\n static style = style;\n static defaultProps = {};\n\n get ticks() {\n const { ticks, indexScale, scale } = this.asProps;\n const scl = scale[indexScale];\n return ticks || scl.ticks?.() || scl.domain?.() || [];\n }\n\n getTitleProps() {\n const { position, locale } = this.asProps;\n return {\n position: MAP_POSITION_REVERT[position],\n verticalWritingMode: ['zh', 'ja'].includes(locale),\n };\n }\n\n getTicksProps() {\n const { position, indexScale } = this.asProps;\n return {\n ticks: this.ticks,\n indexScale,\n position,\n };\n }\n\n getGridProps() {\n const { indexScale } = this.asProps;\n return {\n ticks: this.ticks,\n indexScale,\n };\n }\n\n render() {\n const SAxis = this.Element;\n const { styles, position, scale, hide, indexScale } = this.asProps;\n\n const pos =\n MAP_POSITION_AXIS[position] ?? MAP_POSITION_AXIS[MAP_INDEX_SCALE_SYMBOL[indexScale]];\n\n return sstyled(styles)(<SAxis render='line' hide={hide} {...pos(scale, position)} />);\n }\n}\n\nfunction Ticks(props) {\n const {\n Element: STick,\n styles,\n scale,\n ticks,\n position,\n hide,\n indexScale,\n dataHintsHandler,\n children,\n childrenPosition = 'inside',\n rootRef,\n multiline,\n } = props;\n const [rootRefElement, setRootRefElement] = useState(null);\n\n useEffect(() => {\n if (rootRef.current) setRootRefElement(rootRef.current);\n }, []);\n\n const tickBandwidth = scale[indexScale]?.bandwidth?.();\n const ticksWithLines = ticks.map((tick) => ({\n tick,\n lines: typeof tick === 'string' && multiline && rootRefElement\n ? splitTextByWidth(rootRefElement, tick, tickBandwidth)\n : [],\n }));\n\n const pos = MAP_POSITION_TICK[position] ?? MAP_POSITION_TICK[MAP_INDEX_SCALE_SYMBOL[indexScale]];\n const positionClass = MAP_POSITION_TICK[position] ? position : `custom_${indexScale}`;\n\n if (typeof children === 'function') {\n const labelGetter = (value) => {\n const result = children({ value });\n return result.value ?? result.children;\n };\n if (position === 'left' || position === 'right') {\n dataHintsHandler.addKeyLabelGetter('vertical', labelGetter);\n } else if (position === 'top' || position === 'bottom') {\n dataHintsHandler.addKeyLabelGetter('horizontal', labelGetter);\n }\n }\n\n return ticksWithLines.map(({ tick: value, lines }, i) => {\n const displayValue = typeof children === 'function' ? undefined : renderValue(value);\n\n return sstyled(styles)(\n <STick\n aria-hidden\n key={i}\n render='text'\n childrenPosition={childrenPosition}\n __excludeProps={['data', 'scale', 'format', 'value']}\n value={value}\n index={i}\n position={positionClass}\n hide={hide}\n multiline={multiline}\n {...pos(scale, value, position)}\n >\n { lines.length > 1\n ? lines.map((line, lineIndex) => (\n <tspan key={line} {...pos(scale, value, position)} dy={lineIndex * 15}>{line}</tspan>\n ))\n : displayValue}\n </STick>,\n );\n });\n}\n\nfunction Grid(props) {\n const { Element: SGrid, styles, scale, ticks, indexScale } = props;\n\n if (ticks.length >= 2) {\n if (indexScale === 1) {\n props.dataHintsHandler.setupGrid('vertical', Math.abs(ticks[1] - ticks[0]));\n } else if (indexScale === 0) {\n props.dataHintsHandler.setupGrid('horizontal', Math.abs(ticks[1] - ticks[0]));\n }\n }\n\n return ticks.map((value, i) => {\n return sstyled(styles)(\n <SGrid key={i} render='line' {...MAP_POSITION_GRID[indexScale](scale, value)} />,\n );\n });\n}\n\nfunction Title(props) {\n const { Element: STitle, styles, scale, position, size, children, verticalWritingMode } = props;\n\n const { x, y } = MAP_POSITION_TITlE[position](scale, size);\n\n if (position === 'left' || position === 'right') {\n props.dataHintsHandler.setTitle('vertical', children);\n } else if (position === 'top' || position === 'bottom') {\n props.dataHintsHandler.setTitle('horizontal', children);\n }\n\n const sstyles = sstyled(styles);\n const sTitleStyles = sstyles.cn('STitle', {\n 'transform-origin': `${x.toFixed(2)}px ${y.toFixed(2)}px`,\n });\n\n return sstyled(styles)(\n <STitle\n aria-hidden\n render='text'\n childrenPosition='inside'\n position={position}\n className={sTitleStyles.className}\n style={sTitleStyles.style}\n verticalWritingMode={verticalWritingMode}\n x={x}\n y={y}\n />,\n );\n}\n\nclass XAxisRoot extends AxisRoot {\n static defaultProps = {\n ...AxisRoot.defaultProps,\n indexScale: 0,\n position: 'bottom',\n };\n}\n\nconst XAxis = createElement(XAxisRoot, {\n Ticks,\n Grid,\n Title,\n});\n\nclass YAxisRoot extends AxisRoot {\n static defaultProps = {\n ...AxisRoot.defaultProps,\n indexScale: 1,\n position: 'left',\n hide: true,\n };\n}\n\nconst YAxis = createElement(YAxisRoot, {\n Ticks,\n Grid,\n Title,\n});\n\nexport { XAxis, YAxis };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Axis.js","names":["Component","sstyled","React","useState","useEffect","createElement","style","_sstyled","insert","scaleOfBandwidth","CUSTOM_0","Symbol","CUSTOM_1","MAP_INDEX_SCALE_SYMBOL","MAP_POSITION_REVERT","top","right","bottom","left","MAP_POSITION_AXIS","xScale","yScale","xRange","range","yRange","x1","y1","x2","y2","pos","MAP_POSITION_TICK","value","x","y","MAP_POSITION_GRID","OFFSET_TITLE","MAP_POSITION_TITlE","height","width","renderValue","Date","toLocaleDateString","splitTextByWidth","root","text","maxWidth","words","split","filter","word","length","lines","currentLine","i","testLine","trim","testWidth","measureTextWidth","push","rootRef","fontSize","textEl","document","createElementNS","setAttribute","textContent","appendChild","getComputedTextLength","removeChild","AxisRoot","ticks","indexScale","scale","asProps","scl","domain","getTitleProps","position","locale","verticalWritingMode","includes","getTicksProps","getGridProps","render","_ref","SAxis","Element","styles","hide","cn","_defineProperty","Ticks","props","STick","dataHintsHandler","children","childrenPosition","multiline","rootRefElement","setRootRefElement","current","tickBandwidth","bandwidth","ticksWithLines","map","tick","positionClass","labelGetter","result","addKeyLabelGetter","_ref2","displayValue","undefined","primaryText","line","lineIndex","_extends","key","dy","Grid","SGrid","setupGrid","Math","abs","_ref3","Title","_ref4","STitle","size","setTitle","sstyles","sTitleStyles","toFixed","className","XAxisRoot","defaultProps","XAxis","YAxisRoot","YAxis"],"sources":["../../src/Axis.jsx"],"sourcesContent":["import { Component, sstyled } from '@semcore/core';\nimport React, { useState, useEffect } from 'react';\n\nimport createElement from './createElement';\nimport style from './style/axis.shadow.css';\nimport { scaleOfBandwidth } from './utils';\n\nconst CUSTOM_0 = Symbol('custom_0');\nconst CUSTOM_1 = Symbol('custom_1');\n\nconst MAP_INDEX_SCALE_SYMBOL = {\n 0: CUSTOM_0,\n 1: CUSTOM_1,\n};\n\nconst MAP_POSITION_REVERT = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n};\n\nconst MAP_POSITION_AXIS = {\n top: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[1],\n x2: xRange[1],\n y2: yRange[1],\n };\n },\n bottom: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[0],\n x2: xRange[1],\n y2: yRange[0],\n };\n },\n right: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[1],\n y1: yRange[0],\n x2: xRange[1],\n y2: yRange[1],\n };\n },\n left: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[0],\n x2: xRange[0],\n y2: yRange[1],\n };\n },\n [CUSTOM_0]: ([xScale, yScale], pos) => {\n const xRange = xScale.range();\n return {\n x1: xRange[0],\n y1: scaleOfBandwidth(yScale, pos),\n x2: xRange[1],\n y2: scaleOfBandwidth(yScale, pos),\n };\n },\n [CUSTOM_1]: ([xScale, yScale], pos) => {\n const yRange = yScale.range();\n return {\n x1: scaleOfBandwidth(xScale, pos),\n y1: yRange[0],\n x2: scaleOfBandwidth(xScale, pos),\n y2: yRange[1],\n };\n },\n};\n\nconst MAP_POSITION_TICK = {\n top: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n return {\n x: scaleOfBandwidth(xScale, value),\n y: yRange[1],\n };\n },\n bottom: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n return {\n x: scaleOfBandwidth(xScale, value),\n y: yRange[0],\n };\n },\n right: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n return {\n x: xRange[1],\n y: scaleOfBandwidth(yScale, value),\n };\n },\n left: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n return {\n x: xRange[0],\n y: scaleOfBandwidth(yScale, value),\n };\n },\n [CUSTOM_0]: ([xScale, yScale], value, pos) => {\n return {\n x: scaleOfBandwidth(xScale, value),\n y: scaleOfBandwidth(yScale, pos),\n };\n },\n [CUSTOM_1]: ([xScale, yScale], value, pos) => {\n return {\n x: scaleOfBandwidth(xScale, pos),\n y: scaleOfBandwidth(yScale, value),\n };\n },\n};\n\nconst MAP_POSITION_GRID = {\n 0: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n const x = scaleOfBandwidth(xScale, value);\n return {\n x1: x,\n y1: yRange[0],\n x2: x,\n y2: yRange[1],\n };\n },\n 1: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n const y = scaleOfBandwidth(yScale, value);\n return {\n x1: xRange[0],\n y1: y,\n x2: xRange[1],\n y2: y,\n };\n },\n};\n\nconst OFFSET_TITLE = 10;\nconst MAP_POSITION_TITlE = {\n top: ([xScale]) => {\n const xRange = xScale.range();\n return {\n x: (xRange[1] + xRange[0]) / 2,\n y: OFFSET_TITLE,\n };\n },\n bottom: ([xScale], [, height]) => {\n const xRange = xScale.range();\n return {\n x: (xRange[1] + xRange[0]) / 2,\n y: height - OFFSET_TITLE,\n };\n },\n right: ([, yScale], [width]) => {\n const yRange = yScale.range();\n return {\n x: width - OFFSET_TITLE,\n y: (yRange[0] + yRange[1]) / 2,\n };\n },\n left: ([, yScale]) => {\n const yRange = yScale.range();\n return {\n x: OFFSET_TITLE,\n y: (yRange[0] + yRange[1]) / 2,\n };\n },\n};\n\nfunction renderValue(value) {\n if (value instanceof Date) {\n return value.toLocaleDateString();\n }\n return value;\n}\n\nfunction splitTextByWidth(root, text, maxWidth) {\n if (!text || !maxWidth || maxWidth <= 0) return [];\n\n const words = text.split(/\\s+/).filter((word) => word.length > 0);\n if (words.length === 0) return [];\n\n const lines = [];\n let currentLine = words[0];\n\n for (let i = 1; i < words.length; i++) {\n const testLine = `${currentLine} ${words[i]}`.trim();\n const testWidth = measureTextWidth(root, testLine);\n\n if (testWidth <= maxWidth) {\n currentLine = testLine;\n } else {\n if (currentLine) {\n lines.push(currentLine);\n }\n\n currentLine = words[i];\n\n if (measureTextWidth(root, currentLine) > maxWidth) {\n lines.push(currentLine);\n currentLine = '';\n }\n }\n }\n\n if (currentLine) {\n lines.push(currentLine);\n }\n\n return lines;\n}\n\nfunction measureTextWidth(rootRef, text, fontSize = 12) {\n const textEl = document.createElementNS('http://www.w3.org/2000/svg', 'text');\n textEl.setAttribute('font-size', fontSize);\n textEl.setAttribute('visibility', 'hidden');\n textEl.textContent = text;\n\n rootRef.appendChild(textEl);\n const width = textEl.getComputedTextLength();\n rootRef.removeChild(textEl);\n return width;\n}\n\nclass AxisRoot extends Component {\n static displayName = 'Axis';\n\n static style = style;\n static defaultProps = {};\n\n get ticks() {\n const { ticks, indexScale, scale } = this.asProps;\n const scl = scale[indexScale];\n return ticks || scl.ticks?.() || scl.domain?.() || [];\n }\n\n getTitleProps() {\n const { position, locale } = this.asProps;\n return {\n position: MAP_POSITION_REVERT[position],\n verticalWritingMode: ['zh', 'ja'].includes(locale),\n };\n }\n\n getTicksProps() {\n const { position, indexScale } = this.asProps;\n return {\n ticks: this.ticks,\n indexScale,\n position,\n };\n }\n\n getGridProps() {\n const { indexScale } = this.asProps;\n return {\n ticks: this.ticks,\n indexScale,\n };\n }\n\n render() {\n const SAxis = this.Element;\n const { styles, position, scale, hide, indexScale } = this.asProps;\n\n const pos =\n MAP_POSITION_AXIS[position] ?? MAP_POSITION_AXIS[MAP_INDEX_SCALE_SYMBOL[indexScale]];\n\n return sstyled(styles)(<SAxis render='line' hide={hide} {...pos(scale, position)} />);\n }\n}\n\nfunction Ticks(props) {\n const {\n Element: STick,\n styles,\n scale,\n ticks,\n position,\n hide,\n indexScale,\n dataHintsHandler,\n children,\n childrenPosition = 'inside',\n rootRef,\n multiline,\n } = props;\n const [rootRefElement, setRootRefElement] = useState(null);\n\n useEffect(() => {\n if (rootRef.current) setRootRefElement(rootRef.current);\n }, []);\n\n const tickBandwidth = scale[indexScale]?.bandwidth?.();\n const ticksWithLines = ticks.map((tick) => ({\n tick,\n lines: typeof tick === 'string' && multiline && rootRefElement\n ? splitTextByWidth(rootRefElement, tick, tickBandwidth)\n : [],\n }));\n\n const pos = MAP_POSITION_TICK[position] ?? MAP_POSITION_TICK[MAP_INDEX_SCALE_SYMBOL[indexScale]];\n const positionClass = MAP_POSITION_TICK[position] ? position : `custom_${indexScale}`;\n\n if (typeof children === 'function') {\n const labelGetter = (value) => {\n const result = children({ value });\n return result.value ?? result.children;\n };\n if (position === 'left' || position === 'right') {\n dataHintsHandler.addKeyLabelGetter('vertical', labelGetter);\n } else if (position === 'top' || position === 'bottom') {\n dataHintsHandler.addKeyLabelGetter('horizontal', labelGetter);\n }\n }\n\n return ticksWithLines.map(({ tick: value, lines }, i) => {\n const displayValue = typeof children === 'function' ? undefined : renderValue(value);\n\n return sstyled(styles)(\n <STick\n aria-hidden\n key={i}\n render='text'\n childrenPosition={childrenPosition}\n __excludeProps={['data', 'scale', 'format', 'value']}\n value={value}\n index={i}\n position={positionClass}\n hide={hide}\n multiline={multiline}\n primaryText={props.primaryText}\n {...pos(scale, value, position)}\n >\n { lines.length > 1\n ? lines.map((line, lineIndex) => (\n <tspan key={line} {...pos(scale, value, position)} dy={lineIndex * 15}>{line}</tspan>\n ))\n : displayValue}\n </STick>,\n );\n });\n}\n\nfunction Grid(props) {\n const { Element: SGrid, styles, scale, ticks, indexScale } = props;\n\n if (ticks.length >= 2) {\n if (indexScale === 1) {\n props.dataHintsHandler.setupGrid('vertical', Math.abs(ticks[1] - ticks[0]));\n } else if (indexScale === 0) {\n props.dataHintsHandler.setupGrid('horizontal', Math.abs(ticks[1] - ticks[0]));\n }\n }\n\n return ticks.map((value, i) => {\n return sstyled(styles)(\n <SGrid key={i} render='line' {...MAP_POSITION_GRID[indexScale](scale, value)} />,\n );\n });\n}\n\nfunction Title(props) {\n const { Element: STitle, styles, scale, position, size, children, verticalWritingMode } = props;\n\n const { x, y } = MAP_POSITION_TITlE[position](scale, size);\n\n if (position === 'left' || position === 'right') {\n props.dataHintsHandler.setTitle('vertical', children);\n } else if (position === 'top' || position === 'bottom') {\n props.dataHintsHandler.setTitle('horizontal', children);\n }\n\n const sstyles = sstyled(styles);\n const sTitleStyles = sstyles.cn('STitle', {\n 'transform-origin': `${x.toFixed(2)}px ${y.toFixed(2)}px`,\n });\n\n return sstyled(styles)(\n <STitle\n aria-hidden\n render='text'\n childrenPosition='inside'\n position={position}\n className={sTitleStyles.className}\n style={sTitleStyles.style}\n verticalWritingMode={verticalWritingMode}\n x={x}\n y={y}\n />,\n );\n}\n\nclass XAxisRoot extends AxisRoot {\n static defaultProps = {\n ...AxisRoot.defaultProps,\n indexScale: 0,\n position: 'bottom',\n };\n}\n\nconst XAxis = createElement(XAxisRoot, {\n Ticks,\n Grid,\n Title,\n});\n\nclass YAxisRoot extends AxisRoot {\n static defaultProps = {\n ...AxisRoot.defaultProps,\n indexScale: 1,\n position: 'left',\n hide: true,\n };\n}\n\nconst YAxis = createElement(YAxisRoot, {\n Ticks,\n Grid,\n Title,\n});\n\nexport { XAxis, YAxis };\n"],"mappings":"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","ignoreList":[]}
package/lib/es6/Bar.js CHANGED
@@ -1,8 +1,3 @@
1
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
- import _createClass from "@babel/runtime/helpers/createClass";
4
- import _callSuper from "@babel/runtime/helpers/callSuper";
5
- import _inherits from "@babel/runtime/helpers/inherits";
6
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
7
2
  import { sstyled as _sstyled } from "@semcore/core";
8
3
  import { Component, sstyled } from '@semcore/core';
@@ -13,28 +8,28 @@ import AnimatedClipPath from './AnimatedClipPath';
13
8
  import createElement from './createElement';
14
9
  import { PatternFill } from './Pattern';
15
10
  /*!__reshadow-styles__:"./style/bar.shadow.css"*/
16
- var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SBar_194w8_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_194w8);transition-timing-function:ease-in-out}.___SBar_194w8_gg_.__color_194w8_gg_{fill:var(--color_194w8)}.___SBar_194w8_gg_.__pattern_194w8_gg_.__color_194w8_gg_{fill:var(--pattern_194w8);stroke:var(--color_194w8);stroke-width:1px}.___SBar_194w8_gg_.__hide_194w8_gg_{display:none}.___SBar_194w8_gg_.__transparent_194w8_gg_{opacity:.3}.___SBackground_194w8_gg_.__onClick_194w8_gg_,.___SBar_194w8_gg_.__onClick_194w8_gg_{cursor:pointer}.___SBackground_194w8_gg_{fill:var(--intergalactic-chart-grid-bar-chart-base-bg, #e0e1e9)}.___SBarAnnotation_194w8_gg_{display:flex;justify-content:space-between}.___SBarLabel_194w8_gg_{color:var(--intergalactic-text-primary, #191b23);margin-right:auto}.___SBarLabel_194w8_gg_,.___SBarPercent_194w8_gg_,.___SBarValue_194w8_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%)}.___SBarPercent_194w8_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SBarValue_194w8_gg_{min-width:52px;display:flex;justify-content:flex-end;color:var(--intergalactic-text-primary, #191b23);text-align:right}.___SCompactHorizontalBarHoverRect_194w8_gg_{fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}", /*__inner_css_end__*/"194w8_gg_"),
11
+ const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SBar_1j50a_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_1j50a);transition-timing-function:ease-in-out}.___SBar_1j50a_gg_.__color_1j50a_gg_{fill:var(--color_1j50a)}.___SBar_1j50a_gg_.__pattern_1j50a_gg_.__color_1j50a_gg_{fill:var(--pattern_1j50a);stroke:var(--color_1j50a);stroke-width:1px}.___SBar_1j50a_gg_.__hide_1j50a_gg_{display:none}.___SBar_1j50a_gg_.__transparent_1j50a_gg_{opacity:.3}.___SBackground_1j50a_gg_.__onClick_1j50a_gg_,.___SBar_1j50a_gg_.__onClick_1j50a_gg_{cursor:pointer}.___SBackground_1j50a_gg_{fill:var(--intergalactic-chart-grid-bar-chart-base-bg, #e0e1e9)}.___SBarAnnotation_1j50a_gg_{display:flex;justify-content:space-between}.___SBarLabel_1j50a_gg_{color:var(--intergalactic-text-primary, #191b23);margin-right:auto}.___SBarLabel_1j50a_gg_,.___SBarPercent_1j50a_gg_,.___SBarValue_1j50a_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%)}.___SBarPercent_1j50a_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SBarValue_1j50a_gg_{min-width:52px;display:flex;justify-content:flex-end;color:var(--intergalactic-text-primary, #191b23);text-align:right}.___SCompactHorizontalBarHoverRect_1j50a_gg_{fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}", /*__inner_css_end__*/"1j50a_gg_"),
17
12
  /*__reshadow_css_end__*/
18
13
  {
19
- "__SBar": "___SBar_194w8_gg_",
20
- "--duration": "--duration_194w8",
21
- "_color": "__color_194w8_gg_",
22
- "--color": "--color_194w8",
23
- "_pattern": "__pattern_194w8_gg_",
24
- "--pattern": "--pattern_194w8",
25
- "_hide": "__hide_194w8_gg_",
26
- "_transparent": "__transparent_194w8_gg_",
27
- "_onClick": "__onClick_194w8_gg_",
28
- "__SBackground": "___SBackground_194w8_gg_",
29
- "__SBarAnnotation": "___SBarAnnotation_194w8_gg_",
30
- "__SBarLabel": "___SBarLabel_194w8_gg_",
31
- "__SBarPercent": "___SBarPercent_194w8_gg_",
32
- "__SBarValue": "___SBarValue_194w8_gg_",
33
- "__SCompactHorizontalBarHoverRect": "___SCompactHorizontalBarHoverRect_194w8_gg_"
14
+ "__SBar": "___SBar_1j50a_gg_",
15
+ "--duration": "--duration_1j50a",
16
+ "_color": "__color_1j50a_gg_",
17
+ "--color": "--color_1j50a",
18
+ "_pattern": "__pattern_1j50a_gg_",
19
+ "--pattern": "--pattern_1j50a",
20
+ "_hide": "__hide_1j50a_gg_",
21
+ "_transparent": "__transparent_1j50a_gg_",
22
+ "_onClick": "__onClick_1j50a_gg_",
23
+ "__SBackground": "___SBackground_1j50a_gg_",
24
+ "__SBarAnnotation": "___SBarAnnotation_1j50a_gg_",
25
+ "__SBarLabel": "___SBarLabel_1j50a_gg_",
26
+ "__SBarPercent": "___SBarPercent_1j50a_gg_",
27
+ "__SBarValue": "___SBarValue_1j50a_gg_",
28
+ "__SCompactHorizontalBarHoverRect": "___SCompactHorizontalBarHoverRect_1j50a_gg_"
34
29
  });
35
30
  import { scaleToBand, roundedPath } from './utils';
36
- export var MIN_HEIGHT = 2;
37
- var calcPartBarY = function calcPartBarY(y, minHeight, height) {
31
+ export const MIN_HEIGHT = 2;
32
+ const calcPartBarY = (y, minHeight, height) => {
38
33
  // need for the correct rendering of negative values (bar should be under Y-axis)
39
34
  if (y <= 0) {
40
35
  return Object.is(y, 0) ? minHeight : 0;
@@ -42,147 +37,128 @@ var calcPartBarY = function calcPartBarY(y, minHeight, height) {
42
37
  // need for the correct rendering of the minimum positive values
43
38
  return height <= minHeight ? minHeight : 0;
44
39
  };
45
- var BarRoot = /*#__PURE__*/function (_Component) {
46
- function BarRoot() {
47
- _classCallCheck(this, BarRoot);
48
- return _callSuper(this, BarRoot, arguments);
40
+ class BarRoot extends Component {
41
+ getBackgroundProps(_props, index) {
42
+ const {
43
+ x,
44
+ data
45
+ } = this.asProps;
46
+ return {
47
+ value: data[index][x],
48
+ index
49
+ };
49
50
  }
50
- _inherits(BarRoot, _Component);
51
- return _createClass(BarRoot, [{
52
- key: "getBackgroundProps",
53
- value: function getBackgroundProps(_props, index) {
54
- var _this$asProps = this.asProps,
55
- x = _this$asProps.x,
56
- data = _this$asProps.data;
57
- return {
58
- value: data[index][x],
59
- index: index
60
- };
51
+ animationBar() {
52
+ const {
53
+ duration,
54
+ uid
55
+ } = this.asProps;
56
+ const selectRect = transition().selection().selectAll(`#${uid} rect`);
57
+ const selectRectNode = selectRect.node();
58
+ if (duration > 0 && selectRectNode && selectRectNode.getAttribute('y') !== '0') {
59
+ selectRect.transition().duration(duration).attr('y', 0);
61
60
  }
62
- }, {
63
- key: "animationBar",
64
- value: function animationBar() {
65
- var _this$asProps2 = this.asProps,
66
- duration = _this$asProps2.duration,
67
- uid = _this$asProps2.uid;
68
- var selectRect = transition().selection().selectAll("#".concat(uid, " rect"));
69
- var selectRectNode = selectRect.node();
70
- if (duration > 0 && selectRectNode && selectRectNode.getAttribute('y') !== '0') {
71
- selectRect.transition().duration(duration).attr('y', 0);
72
- }
73
- }
74
- }, {
75
- key: "componentDidUpdate",
76
- value: function componentDidUpdate() {
77
- this.animationBar();
78
- }
79
- }, {
80
- key: "componentDidMount",
81
- value: function componentDidMount() {
82
- this.animationBar();
83
- }
84
- }, {
85
- key: "renderBar",
86
- value: function renderBar(d, i) {
87
- var _ref, _d$y, _d$y2, _d$y3;
88
- var SBar = this.Element;
89
- var _this$asProps3 = this.asProps,
90
- styles = _this$asProps3.styles,
91
- color = _this$asProps3.color,
92
- resolveColor = _this$asProps3.resolveColor,
93
- x = _this$asProps3.x,
94
- y = _this$asProps3.y,
95
- y0 = _this$asProps3.y0,
96
- scale = _this$asProps3.scale,
97
- hide = _this$asProps3.hide,
98
- offsetProps = _this$asProps3.offset,
99
- duration = _this$asProps3.duration,
100
- uid = _this$asProps3.uid,
101
- r = _this$asProps3.r,
102
- hMin = _this$asProps3.hMin,
103
- widthProps = _this$asProps3.width,
104
- groupKey = _this$asProps3.groupKey,
105
- onClick = _this$asProps3.onClick,
106
- transparent = _this$asProps3.transparent,
107
- _this$asProps3$maxBar = _this$asProps3.maxBarSize,
108
- maxBarSize = _this$asProps3$maxBar === void 0 ? Number.POSITIVE_INFINITY : _this$asProps3$maxBar,
109
- patterns = _this$asProps3.patterns,
110
- dataHintsHandler = _this$asProps3.dataHintsHandler;
111
- var offset = typeof offsetProps === 'function' ? offsetProps(i) : offsetProps;
112
- var _scale = _slicedToArray(scale, 2),
113
- xScale = _scale[0],
114
- yScale = _scale[1];
115
- var absHeight = Math.abs(yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale((_d$y = d[y0]) !== null && _d$y !== void 0 ? _d$y : 0)));
116
- var height = Number(d[y] - ((_d$y2 = d[y0]) !== null && _d$y2 !== void 0 ? _d$y2 : 0)) === 0 ? 0 : Math.max(absHeight, hMin);
117
- var bandWidth = widthProps || scaleToBand(xScale).bandwidth();
118
- var width = Math.min(bandWidth, maxBarSize);
119
- var barX = xScale(d[x]) + bandWidth / 2 - width / 2 + offset[0];
120
- var barY = yScale(Math.max((_d$y3 = d[y0]) !== null && _d$y3 !== void 0 ? _d$y3 : 0, height <= hMin && d[y] > 0 ? 0 : d[y])) + offset[1] - calcPartBarY(d[y], hMin, height);
121
- var handleClick = function handleClick(event) {
122
- return onClick === null || onClick === void 0 ? void 0 : onClick(d, event, i, y);
123
- };
124
- var dSvg = getRect({
125
- x: barX,
126
- y: barY,
127
- width: width,
128
- height: height,
129
- radius: Array.isArray(r) ? r[i] : r,
130
- position: d[y] > 0 || Object.is(d[y], 0) ? 'top' : 'bottom'
131
- });
132
- if (groupKey) {
133
- dataHintsHandler.describeGroupedValues(groupKey, y);
134
- } else {
135
- dataHintsHandler.describeValueEntity("".concat(i, ".").concat(y), groupKey !== null && groupKey !== void 0 ? groupKey : d[x]);
136
- dataHintsHandler.specifyDataRowFields(x, y);
137
- }
138
- return /*#__PURE__*/React.createElement(React.Fragment, {
139
- key: "bar-".concat(i)
140
- }, (_ref = sstyled(styles), /*#__PURE__*/React.createElement(SBar, _ref.cn("SBar", {
141
- "aria-hidden": true,
142
- "render": 'path',
143
- "clipPath": "url(#".concat(uid, ")"),
144
- "__excludeProps": ['data', 'scale', 'value', 'onClick', 'offset'],
145
- "childrenPosition": 'above',
146
- "value": d,
147
- "index": i,
148
- "hide": hide,
149
- "pattern": patterns ? "url(#".concat(uid, "-").concat(i, "-pattern)") : undefined,
150
- "color": resolveColor(color),
151
- "x": barX,
152
- "y": barY,
153
- "width": width,
154
- "height": height,
155
- "d": dSvg,
156
- "onClickCapture": handleClick,
157
- "use:duration": "".concat(duration, "ms"),
158
- "transparent": transparent
159
- }))), patterns && /*#__PURE__*/React.createElement(PatternFill, _ref.cn("PatternFill", {
160
- "id": "".concat(uid, "-").concat(i, "-pattern"),
161
- "patternKey": color,
162
- "color": resolveColor(color),
163
- "patterns": patterns
164
- })));
165
- }
166
- }, {
167
- key: "render",
168
- value: function render() {
169
- var _this$asProps4 = this.asProps,
170
- data = _this$asProps4.data,
171
- uid = _this$asProps4.uid,
172
- size = _this$asProps4.size,
173
- duration = _this$asProps4.duration;
174
- return /*#__PURE__*/React.createElement(React.Fragment, null, data.map(this.renderBar.bind(this)), duration && /*#__PURE__*/React.createElement(AnimatedClipPath, {
175
- duration: duration,
176
- key: "".concat(uid, "-animation"),
177
- attributeName: "y",
178
- values: "100%;0",
179
- id: uid,
180
- width: size[0],
181
- height: "".concat(size[1], "px")
182
- }));
61
+ }
62
+ componentDidUpdate() {
63
+ this.animationBar();
64
+ }
65
+ componentDidMount() {
66
+ this.animationBar();
67
+ }
68
+ renderBar(d, i) {
69
+ var _ref;
70
+ const SBar = this.Element;
71
+ const {
72
+ styles,
73
+ color,
74
+ resolveColor,
75
+ x,
76
+ y,
77
+ y0,
78
+ scale,
79
+ hide,
80
+ offset: offsetProps,
81
+ duration,
82
+ uid,
83
+ r,
84
+ hMin,
85
+ width: widthProps,
86
+ groupKey,
87
+ onClick,
88
+ transparent,
89
+ maxBarSize = Number.POSITIVE_INFINITY,
90
+ patterns,
91
+ dataHintsHandler
92
+ } = this.asProps;
93
+ const offset = typeof offsetProps === 'function' ? offsetProps(i) : offsetProps;
94
+ const [xScale, yScale] = scale;
95
+ const absHeight = Math.abs(yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[y0] ?? 0)));
96
+ const height = Number(d[y] - (d[y0] ?? 0)) === 0 ? 0 : Math.max(absHeight, hMin);
97
+ const bandWidth = widthProps || scaleToBand(xScale).bandwidth();
98
+ const width = Math.min(bandWidth, maxBarSize);
99
+ const barX = xScale(d[x]) + bandWidth / 2 - width / 2 + offset[0];
100
+ const barY = yScale(Math.max(d[y0] ?? 0, height <= hMin && d[y] > 0 ? 0 : d[y])) + offset[1] - calcPartBarY(d[y], hMin, height);
101
+ const handleClick = event => onClick?.(d, event, i, y);
102
+ const dSvg = getRect({
103
+ x: barX,
104
+ y: barY,
105
+ width,
106
+ height,
107
+ radius: Array.isArray(r) ? r[i] : r,
108
+ position: d[y] > 0 || Object.is(d[y], 0) ? 'top' : 'bottom'
109
+ });
110
+ if (groupKey) {
111
+ dataHintsHandler.describeGroupedValues(groupKey, y);
112
+ } else {
113
+ dataHintsHandler.describeValueEntity(`${i}.${y}`, groupKey ?? d[x]);
114
+ dataHintsHandler.specifyDataRowFields(x, y);
183
115
  }
184
- }]);
185
- }(Component);
116
+ return /*#__PURE__*/React.createElement(React.Fragment, {
117
+ key: `bar-${i}`
118
+ }, (_ref = sstyled(styles), /*#__PURE__*/React.createElement(SBar, _ref.cn("SBar", {
119
+ "aria-hidden": true,
120
+ "render": 'path',
121
+ "clipPath": `url(#${uid})`,
122
+ "__excludeProps": ['data', 'scale', 'value', 'onClick', 'offset'],
123
+ "childrenPosition": 'above',
124
+ "value": d,
125
+ "index": i,
126
+ "hide": hide,
127
+ "pattern": patterns ? `url(#${uid}-${i}-pattern)` : undefined,
128
+ "color": resolveColor(color),
129
+ "x": barX,
130
+ "y": barY,
131
+ "width": width,
132
+ "height": height,
133
+ "d": dSvg,
134
+ "onClickCapture": handleClick,
135
+ "use:duration": `${duration}ms`,
136
+ "transparent": transparent
137
+ }))), patterns && /*#__PURE__*/React.createElement(PatternFill, _ref.cn("PatternFill", {
138
+ "id": `${uid}-${i}-pattern`,
139
+ "patternKey": color,
140
+ "color": resolveColor(color),
141
+ "patterns": patterns
142
+ })));
143
+ }
144
+ render() {
145
+ const {
146
+ data,
147
+ uid,
148
+ size,
149
+ duration
150
+ } = this.asProps;
151
+ return /*#__PURE__*/React.createElement(React.Fragment, null, data.map(this.renderBar.bind(this)), duration && /*#__PURE__*/React.createElement(AnimatedClipPath, {
152
+ duration: duration,
153
+ key: `${uid}-animation`,
154
+ attributeName: "y",
155
+ values: "100%;0",
156
+ id: uid,
157
+ width: size[0],
158
+ height: `${size[1]}px`
159
+ }));
160
+ }
161
+ }
186
162
  _defineProperty(BarRoot, "displayName", 'Bar');
187
163
  _defineProperty(BarRoot, "style", style);
188
164
  _defineProperty(BarRoot, "enhance", [uniqueIDEnhancement()]);
@@ -194,14 +170,14 @@ _defineProperty(BarRoot, "defaultProps", {
194
170
  });
195
171
  function Background(props) {
196
172
  var _ref2;
197
- var SBackground = props.Element,
198
- styles = props.styles,
199
- scale = props.scale,
200
- value = props.value;
201
- var _scale2 = _slicedToArray(scale, 2),
202
- xScale = _scale2[0],
203
- yScale = _scale2[1];
204
- var yRange = yScale.range();
173
+ const {
174
+ Element: SBackground,
175
+ styles,
176
+ scale,
177
+ value
178
+ } = props;
179
+ const [xScale, yScale] = scale;
180
+ const yRange = yScale.range();
205
181
  return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SBackground, _ref2.cn("SBackground", {
206
182
  "aria-hidden": true,
207
183
  "render": 'rect',
@@ -212,13 +188,14 @@ function Background(props) {
212
188
  "y": yRange[1]
213
189
  }));
214
190
  }
215
- function getRect(_ref3) {
216
- var x = _ref3.x,
217
- y = _ref3.y,
218
- width = _ref3.width,
219
- height = _ref3.height,
220
- radius = _ref3.radius,
221
- position = _ref3.position;
191
+ function getRect({
192
+ x,
193
+ y,
194
+ width,
195
+ height,
196
+ radius,
197
+ position
198
+ }) {
222
199
  if (height < radius) radius = height;
223
200
  if (radius) {
224
201
  if (position === 'top') return roundedPath(x, y, width, height, radius, true, true, false, false);
@@ -227,6 +204,6 @@ function getRect(_ref3) {
227
204
  return roundedPath(x, y, width, height, radius);
228
205
  }
229
206
  export default createElement(BarRoot, {
230
- Background: Background
207
+ Background
231
208
  });
232
209
  //# sourceMappingURL=Bar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Bar.js","names":["Component","sstyled","uniqueIDEnhancement","transition","React","AnimatedClipPath","createElement","PatternFill","style","_sstyled","insert","scaleToBand","roundedPath","MIN_HEIGHT","calcPartBarY","y","minHeight","height","Object","is","BarRoot","_Component","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","value","getBackgroundProps","_props","index","_this$asProps","asProps","x","data","animationBar","_this$asProps2","duration","uid","selectRect","selection","selectAll","concat","selectRectNode","node","getAttribute","attr","componentDidUpdate","componentDidMount","renderBar","d","i","_ref","_d$y","_d$y2","_d$y3","SBar","Element","_this$asProps3","styles","color","resolveColor","y0","scale","hide","offsetProps","offset","r","hMin","widthProps","width","groupKey","onClick","transparent","_this$asProps3$maxBar","maxBarSize","Number","POSITIVE_INFINITY","patterns","dataHintsHandler","_scale","_slicedToArray","xScale","yScale","absHeight","Math","abs","min","domain","max","bandWidth","bandwidth","barX","barY","handleClick","event","dSvg","getRect","radius","Array","isArray","position","describeGroupedValues","describeValueEntity","specifyDataRowFields","Fragment","cn","undefined","render","_this$asProps4","size","map","bind","attributeName","values","id","_defineProperty","Background","props","_ref2","SBackground","_scale2","yRange","range","_ref3"],"sources":["../../src/Bar.jsx"],"sourcesContent":["import { Component, sstyled } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { transition } from 'd3-transition';\nimport React from 'react';\n\nimport AnimatedClipPath from './AnimatedClipPath';\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/bar.shadow.css';\nimport { scaleToBand, roundedPath } from './utils';\n\nexport const MIN_HEIGHT = 2;\n\nconst calcPartBarY = (y, minHeight, height) => {\n // need for the correct rendering of negative values (bar should be under Y-axis)\n if (y <= 0) {\n return Object.is(y, 0) ? minHeight : 0;\n }\n // need for the correct rendering of the minimum positive values\n return height <= minHeight ? minHeight : 0;\n};\n\nclass BarRoot extends Component {\n static displayName = 'Bar';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n r: 2,\n hMin: MIN_HEIGHT,\n };\n\n getBackgroundProps(_props, index) {\n const { x, data } = this.asProps;\n return {\n value: data[index][x],\n index,\n };\n }\n\n animationBar() {\n const { duration, uid } = this.asProps;\n const selectRect = transition().selection().selectAll(`#${uid} rect`);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode && selectRectNode.getAttribute('y') !== '0') {\n selectRect.transition().duration(duration).attr('y', 0);\n }\n }\n\n componentDidUpdate() {\n this.animationBar();\n }\n\n componentDidMount() {\n this.animationBar();\n }\n\n renderBar(d, i) {\n const SBar = this.Element;\n const {\n styles,\n color,\n resolveColor,\n x,\n y,\n y0,\n scale,\n hide,\n offset: offsetProps,\n duration,\n uid,\n r,\n hMin,\n width: widthProps,\n groupKey,\n onClick,\n transparent,\n maxBarSize = Number.POSITIVE_INFINITY,\n patterns,\n dataHintsHandler,\n } = this.asProps;\n const offset = typeof offsetProps === 'function' ? offsetProps(i) : offsetProps;\n const [xScale, yScale] = scale;\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[y0] ?? 0)),\n );\n const height = Number(d[y] - (d[y0] ?? 0)) === 0 ? 0 : Math.max(absHeight, hMin);\n const bandWidth = widthProps || scaleToBand(xScale).bandwidth();\n const width = Math.min(bandWidth, maxBarSize);\n const barX = xScale(d[x]) + bandWidth / 2 - width / 2 + offset[0];\n const barY =\n yScale(Math.max(d[y0] ?? 0, height <= hMin && d[y] > 0 ? 0 : d[y])) +\n offset[1] -\n calcPartBarY(d[y], hMin, height);\n const handleClick = (event) => onClick?.(d, event, i, y);\n const dSvg = getRect({\n x: barX,\n y: barY,\n width,\n height,\n radius: Array.isArray(r) ? r[i] : r,\n position: d[y] > 0 || Object.is(d[y], 0) ? 'top' : 'bottom',\n });\n\n if (groupKey) {\n dataHintsHandler.describeGroupedValues(groupKey, y);\n } else {\n dataHintsHandler.describeValueEntity(`${i}.${y}`, groupKey ?? d[x]);\n dataHintsHandler.specifyDataRowFields(x, y);\n }\n\n return (\n <React.Fragment key={`bar-${i}`}>\n {sstyled(styles)(\n <SBar\n aria-hidden\n render='path'\n clipPath={`url(#${uid})`}\n __excludeProps={['data', 'scale', 'value', 'onClick', 'offset']}\n childrenPosition='above'\n value={d}\n index={i}\n hide={hide}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n color={resolveColor(color)}\n x={barX}\n y={barY}\n width={width}\n height={height}\n d={dSvg}\n onClickCapture={handleClick}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n </React.Fragment>\n );\n }\n\n render() {\n const { data, uid, size, duration } = this.asProps;\n return (\n <>\n {data.map(this.renderBar.bind(this))}\n {duration && (\n <AnimatedClipPath\n duration={duration}\n key={`${uid}-animation`}\n attributeName='y'\n values='100%;0'\n id={uid}\n width={size[0]}\n height={`${size[1]}px`}\n />\n )}\n </>\n );\n }\n}\n\nfunction Background(props) {\n const { Element: SBackground, styles, scale, value } = props;\n\n const [xScale, yScale] = scale;\n const yRange = yScale.range();\n\n return sstyled(styles)(\n <SBackground\n aria-hidden\n render='rect'\n childrenPosition='above'\n width={scaleToBand(xScale).bandwidth()}\n height={yRange[0] - yRange[1]}\n x={xScale(value)}\n y={yRange[1]}\n />,\n );\n}\n\nfunction getRect({ x, y, width, height, radius, position }) {\n if (height < radius) radius = height;\n if (radius) {\n if (position === 'top')\n return roundedPath(x, y, width, height, radius, true, true, false, false);\n return roundedPath(x, y, width, height, radius, false, false, true, true);\n }\n return roundedPath(x, y, width, height, radius);\n}\n\nexport default createElement(BarRoot, { Background });\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Bar.js","names":["Component","sstyled","uniqueIDEnhancement","transition","React","AnimatedClipPath","createElement","PatternFill","style","_sstyled","insert","scaleToBand","roundedPath","MIN_HEIGHT","calcPartBarY","y","minHeight","height","Object","is","BarRoot","getBackgroundProps","_props","index","x","data","asProps","value","animationBar","duration","uid","selectRect","selection","selectAll","selectRectNode","node","getAttribute","attr","componentDidUpdate","componentDidMount","renderBar","d","i","_ref","SBar","Element","styles","color","resolveColor","y0","scale","hide","offset","offsetProps","r","hMin","width","widthProps","groupKey","onClick","transparent","maxBarSize","Number","POSITIVE_INFINITY","patterns","dataHintsHandler","xScale","yScale","absHeight","Math","abs","min","domain","max","bandWidth","bandwidth","barX","barY","handleClick","event","dSvg","getRect","radius","Array","isArray","position","describeGroupedValues","describeValueEntity","specifyDataRowFields","Fragment","key","cn","undefined","render","size","map","bind","attributeName","values","id","_defineProperty","Background","props","_ref2","SBackground","yRange","range"],"sources":["../../src/Bar.jsx"],"sourcesContent":["import { Component, sstyled } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { transition } from 'd3-transition';\nimport React from 'react';\n\nimport AnimatedClipPath from './AnimatedClipPath';\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/bar.shadow.css';\nimport { scaleToBand, roundedPath } from './utils';\n\nexport const MIN_HEIGHT = 2;\n\nconst calcPartBarY = (y, minHeight, height) => {\n // need for the correct rendering of negative values (bar should be under Y-axis)\n if (y <= 0) {\n return Object.is(y, 0) ? minHeight : 0;\n }\n // need for the correct rendering of the minimum positive values\n return height <= minHeight ? minHeight : 0;\n};\n\nclass BarRoot extends Component {\n static displayName = 'Bar';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n r: 2,\n hMin: MIN_HEIGHT,\n };\n\n getBackgroundProps(_props, index) {\n const { x, data } = this.asProps;\n return {\n value: data[index][x],\n index,\n };\n }\n\n animationBar() {\n const { duration, uid } = this.asProps;\n const selectRect = transition().selection().selectAll(`#${uid} rect`);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode && selectRectNode.getAttribute('y') !== '0') {\n selectRect.transition().duration(duration).attr('y', 0);\n }\n }\n\n componentDidUpdate() {\n this.animationBar();\n }\n\n componentDidMount() {\n this.animationBar();\n }\n\n renderBar(d, i) {\n const SBar = this.Element;\n const {\n styles,\n color,\n resolveColor,\n x,\n y,\n y0,\n scale,\n hide,\n offset: offsetProps,\n duration,\n uid,\n r,\n hMin,\n width: widthProps,\n groupKey,\n onClick,\n transparent,\n maxBarSize = Number.POSITIVE_INFINITY,\n patterns,\n dataHintsHandler,\n } = this.asProps;\n const offset = typeof offsetProps === 'function' ? offsetProps(i) : offsetProps;\n const [xScale, yScale] = scale;\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[y0] ?? 0)),\n );\n const height = Number(d[y] - (d[y0] ?? 0)) === 0 ? 0 : Math.max(absHeight, hMin);\n const bandWidth = widthProps || scaleToBand(xScale).bandwidth();\n const width = Math.min(bandWidth, maxBarSize);\n const barX = xScale(d[x]) + bandWidth / 2 - width / 2 + offset[0];\n const barY =\n yScale(Math.max(d[y0] ?? 0, height <= hMin && d[y] > 0 ? 0 : d[y])) +\n offset[1] -\n calcPartBarY(d[y], hMin, height);\n const handleClick = (event) => onClick?.(d, event, i, y);\n const dSvg = getRect({\n x: barX,\n y: barY,\n width,\n height,\n radius: Array.isArray(r) ? r[i] : r,\n position: d[y] > 0 || Object.is(d[y], 0) ? 'top' : 'bottom',\n });\n\n if (groupKey) {\n dataHintsHandler.describeGroupedValues(groupKey, y);\n } else {\n dataHintsHandler.describeValueEntity(`${i}.${y}`, groupKey ?? d[x]);\n dataHintsHandler.specifyDataRowFields(x, y);\n }\n\n return (\n <React.Fragment key={`bar-${i}`}>\n {sstyled(styles)(\n <SBar\n aria-hidden\n render='path'\n clipPath={`url(#${uid})`}\n __excludeProps={['data', 'scale', 'value', 'onClick', 'offset']}\n childrenPosition='above'\n value={d}\n index={i}\n hide={hide}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n color={resolveColor(color)}\n x={barX}\n y={barY}\n width={width}\n height={height}\n d={dSvg}\n onClickCapture={handleClick}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n </React.Fragment>\n );\n }\n\n render() {\n const { data, uid, size, duration } = this.asProps;\n return (\n <>\n {data.map(this.renderBar.bind(this))}\n {duration && (\n <AnimatedClipPath\n duration={duration}\n key={`${uid}-animation`}\n attributeName='y'\n values='100%;0'\n id={uid}\n width={size[0]}\n height={`${size[1]}px`}\n />\n )}\n </>\n );\n }\n}\n\nfunction Background(props) {\n const { Element: SBackground, styles, scale, value } = props;\n\n const [xScale, yScale] = scale;\n const yRange = yScale.range();\n\n return sstyled(styles)(\n <SBackground\n aria-hidden\n render='rect'\n childrenPosition='above'\n width={scaleToBand(xScale).bandwidth()}\n height={yRange[0] - yRange[1]}\n x={xScale(value)}\n y={yRange[1]}\n />,\n );\n}\n\nfunction getRect({ x, y, width, height, radius, position }) {\n if (height < radius) radius = height;\n if (radius) {\n if (position === 'top')\n return roundedPath(x, y, width, height, radius, true, true, false, false);\n return roundedPath(x, y, width, height, radius, false, false, true, true);\n }\n return roundedPath(x, y, width, height, radius);\n}\n\nexport default createElement(BarRoot, { Background });\n"],"mappings":"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","ignoreList":[]}