@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":"ScatterPlotChart.js","names":["createComponent","i18nEnhance","Text","scaleLinear","scaleTime","React","minMax","ScatterPlot","getScatterPlotRadius","AbstractChart","localizedMessages","ScatterPlotChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","_this$props","props","data","groupKey","valueKey","Object","keys","filter","_this$asProps","asProps","xScale","_this$asProps$marginY","marginY","plotWidth","radius","getValueScale","_toConsumableArray","flatValues","testItem","range","plotPadding","domain","Date","Number","isNaN","getMilliseconds","_this$asProps2","yScale","_this$asProps2$margin","marginX","plotHeight","max","Math","apply","min","_this$asProps3","reduce","result","item","entries","forEach","_ref","_ref2","_slicedToArray","value","add","Set","renderChart","_this$asProps4","onClickScatterItem","dataDefinitions","state","map","checked","createElement","onClick","x","y","id","color","renderTooltip","_this","_this$asProps5","Tooltip","wMin","_ref3","index","children","Fragment","Dot","tag","tooltipValueFormatter","getLegendAriaLabel","getI18nText","chartType","_defineProperty","direction","showXAxis","showYAxis","showTooltip","showLegend","ScatterPlotChart"],"sources":["../../../../src/component/Chart/ScatterPlotChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport { type ScaleLinear, scaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { minMax, ScatterPlot, getScatterPlotRadius } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { BaseChartProps, ListData } from './AbstractChart.type';\nimport type {\n ScatterPlotChartData,\n ScatterPlotChartProps,\n ScatterPlotChartType,\n} from './ScatterPlotChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass ScatterPlotChartComponent extends AbstractChart<\n ScatterPlotChartData,\n ScatterPlotChartProps,\n typeof ScatterPlotChartComponent.enhance\n> {\n static displayName = 'Chart.ScatterPlot';\n public static defaultProps: Partial<BaseChartProps<ListData>> = {\n direction: 'column',\n showXAxis: true,\n showYAxis: true,\n showTooltip: true,\n showLegend: false,\n };\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n protected get dataKeys(): string[] {\n const { data, groupKey, valueKey } = this.props;\n\n return Object.keys(data[0]).filter((key) => key !== groupKey && key !== valueKey);\n }\n\n protected get xScale() {\n const { xScale, marginY = 30, plotWidth, data, groupKey, valueKey } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n const radius = getScatterPlotRadius(valueKey) / this.getValueScale([...this.flatValues]);\n const testItem = data[0][groupKey];\n const range = [marginY, plotWidth - this.plotPadding];\n const domain = minMax(data, groupKey);\n\n if (testItem instanceof Date && !Number.isNaN(testItem.getMilliseconds())) {\n return scaleTime([domain[0] - radius, domain[1] + radius], range);\n }\n\n return scaleLinear([domain[0] - radius, domain[1] + radius], range);\n }\n\n protected get yScale(): ScaleLinear<any, any> {\n const { yScale, marginX = 30, plotHeight, valueKey } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n const flatValues = this.flatValues;\n const radius = getScatterPlotRadius(valueKey) / this.getValueScale([...flatValues]);\n\n const max = Math.max(...flatValues) + radius;\n const min = Math.min(...flatValues) - radius;\n\n return scaleLinear()\n .range([plotHeight - marginX, this.plotPadding])\n .domain([min, max]);\n }\n\n protected get flatValues(): Set<number> {\n const { data, groupKey, valueKey } = this.asProps;\n\n const flatValues = data.reduce<Set<number>>((result, item) => {\n Object.entries(item).forEach(([key, value]) => {\n if (key !== groupKey && key !== valueKey && typeof value === 'number') {\n result.add(value);\n }\n });\n\n return result;\n }, new Set());\n\n return flatValues;\n }\n\n protected renderChart() {\n const { groupKey, valueKey, onClickScatterItem } = this.asProps;\n const { dataDefinitions } = this.state;\n\n return dataDefinitions.map((item) => {\n return (\n item.checked && (\n <ScatterPlot onClick={onClickScatterItem} x={groupKey} y={item.id} key={item.id} color={item.color} value={valueKey} />\n )\n );\n });\n }\n\n protected renderTooltip() {\n const { data, groupKey } = this.asProps;\n const { dataDefinitions } = this.state;\n\n return dataDefinitions\n .filter((item) => item.checked)\n .map((item) => {\n return (\n <ScatterPlot.Tooltip key={item.id} x={groupKey} y={item.id} wMin={100}>\n {({ index, x, y }: any) => {\n return {\n children: (\n <>\n <ScatterPlot.Tooltip.Dot color={item.color}>Data</ScatterPlot.Tooltip.Dot>\n <Text tag='div'>\n X axis\n {this.tooltipValueFormatter(data[index][x])}\n </Text>\n <Text tag='div'>\n Y axis\n {this.tooltipValueFormatter(data[index][y])}\n </Text>\n </>\n ),\n };\n }}\n </ScatterPlot.Tooltip>\n );\n });\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'ScatterPlot' });\n }\n}\n\nexport const ScatterPlotChart: ScatterPlotChartType = createComponent(ScatterPlotChartComponent);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ScatterPlotChart.js","names":["createComponent","i18nEnhance","Text","scaleLinear","scaleTime","React","minMax","ScatterPlot","getScatterPlotRadius","AbstractChart","localizedMessages","ScatterPlotChartComponent","dataKeys","data","groupKey","valueKey","props","Object","keys","filter","key","xScale","marginY","plotWidth","asProps","radius","getValueScale","flatValues","testItem","range","plotPadding","domain","Date","Number","isNaN","getMilliseconds","yScale","marginX","plotHeight","max","Math","min","reduce","result","item","entries","forEach","value","add","Set","renderChart","onClickScatterItem","dataDefinitions","state","map","checked","createElement","onClick","x","y","id","color","renderTooltip","Tooltip","wMin","index","children","Fragment","Dot","tag","tooltipValueFormatter","getLegendAriaLabel","getI18nText","chartType","_defineProperty","direction","showXAxis","showYAxis","showTooltip","showLegend","ScatterPlotChart"],"sources":["../../../../src/component/Chart/ScatterPlotChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport { type ScaleLinear, scaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { minMax, ScatterPlot, getScatterPlotRadius } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { BaseChartProps, ListData } from './AbstractChart.type';\nimport type {\n ScatterPlotChartData,\n ScatterPlotChartProps,\n ScatterPlotChartType,\n} from './ScatterPlotChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass ScatterPlotChartComponent extends AbstractChart<\n ScatterPlotChartData,\n ScatterPlotChartProps,\n typeof ScatterPlotChartComponent.enhance\n> {\n static displayName = 'Chart.ScatterPlot';\n public static defaultProps: Partial<BaseChartProps<ListData>> = {\n direction: 'column',\n showXAxis: true,\n showYAxis: true,\n showTooltip: true,\n showLegend: false,\n };\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n protected get dataKeys(): string[] {\n const { data, groupKey, valueKey } = this.props;\n\n return Object.keys(data[0]).filter((key) => key !== groupKey && key !== valueKey);\n }\n\n protected get xScale() {\n const { xScale, marginY = 30, plotWidth, data, groupKey, valueKey } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n const radius = getScatterPlotRadius(valueKey) / this.getValueScale([...this.flatValues]);\n const testItem = data[0][groupKey];\n const range = [marginY, plotWidth - this.plotPadding];\n const domain = minMax(data, groupKey);\n\n if (testItem instanceof Date && !Number.isNaN(testItem.getMilliseconds())) {\n return scaleTime([domain[0] - radius, domain[1] + radius], range);\n }\n\n return scaleLinear([domain[0] - radius, domain[1] + radius], range);\n }\n\n protected get yScale(): ScaleLinear<any, any> {\n const { yScale, marginX = 30, plotHeight, valueKey } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n const flatValues = this.flatValues;\n const radius = getScatterPlotRadius(valueKey) / this.getValueScale([...flatValues]);\n\n const max = Math.max(...flatValues) + radius;\n const min = Math.min(...flatValues) - radius;\n\n return scaleLinear()\n .range([plotHeight - marginX, this.plotPadding])\n .domain([min, max]);\n }\n\n protected get flatValues(): Set<number> {\n const { data, groupKey, valueKey } = this.asProps;\n\n const flatValues = data.reduce<Set<number>>((result, item) => {\n Object.entries(item).forEach(([key, value]) => {\n if (key !== groupKey && key !== valueKey && typeof value === 'number') {\n result.add(value);\n }\n });\n\n return result;\n }, new Set());\n\n return flatValues;\n }\n\n protected renderChart() {\n const { groupKey, valueKey, onClickScatterItem } = this.asProps;\n const { dataDefinitions } = this.state;\n\n return dataDefinitions.map((item) => {\n return (\n item.checked && (\n <ScatterPlot onClick={onClickScatterItem} x={groupKey} y={item.id} key={item.id} color={item.color} value={valueKey} />\n )\n );\n });\n }\n\n protected renderTooltip() {\n const { data, groupKey } = this.asProps;\n const { dataDefinitions } = this.state;\n\n return dataDefinitions\n .filter((item) => item.checked)\n .map((item) => {\n return (\n <ScatterPlot.Tooltip key={item.id} x={groupKey} y={item.id} wMin={100}>\n {({ index, x, y }: any) => {\n return {\n children: (\n <>\n <ScatterPlot.Tooltip.Dot color={item.color}>Data</ScatterPlot.Tooltip.Dot>\n <Text tag='div'>\n X axis\n {this.tooltipValueFormatter(data[index][x])}\n </Text>\n <Text tag='div'>\n Y axis\n {this.tooltipValueFormatter(data[index][y])}\n </Text>\n </>\n ),\n };\n }}\n </ScatterPlot.Tooltip>\n );\n });\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'ScatterPlot' });\n }\n}\n\nexport const ScatterPlotChart: ScatterPlotChartType = createComponent(ScatterPlotChartComponent);\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"ScatterPlotChart.type.js","names":[],"sources":["../../../../src/component/Chart/ScatterPlotChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { Flex } from '@semcore/flex-box';\nimport type { ScaleLinear, ScaleTime } from 'd3-scale';\n\nimport type { BaseChartProps } from './AbstractChart.type';\nimport type { interpolateValue } from '../../utils';\n\nexport type ScatterPlotChartData = Array<Record<string, number | typeof interpolateValue | Date>>;\n\nexport type ScatterPlotChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<ScatterPlotChartData>,\n 'showTotalInTooltip'\n> & {\n /** Field name that groups the data points */\n groupKey: string;\n /** Custom x-axis scale */\n xScale?: ScaleLinear<any, any> | ScaleTime<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n /** Optional field name for additional value data */\n valueKey?: string;\n /** Callback triggered when a user clicks on a scatter item */\n onClickScatterItem?: (index: number, event: React.SyntheticEvent) => void;\n};\n\nexport type ScatterPlotChartType = Intergalactic.Component<typeof Flex, ScatterPlotChartProps>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"ScatterPlotChart.type.js","names":[],"sources":["../../../../src/component/Chart/ScatterPlotChart.type.ts"],"sourcesContent":["import type { Flex } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\nimport type { ScaleLinear, ScaleTime } from 'd3-scale';\n\nimport type { BaseChartProps } from './AbstractChart.type';\nimport type { interpolateValue } from '../../utils';\n\nexport type ScatterPlotChartData = Array<Record<string, number | typeof interpolateValue | Date>>;\n\nexport type ScatterPlotChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<ScatterPlotChartData>,\n 'showTotalInTooltip'\n> & {\n /** Field name that groups the data points */\n groupKey: string;\n /** Custom x-axis scale */\n xScale?: ScaleLinear<any, any> | ScaleTime<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n /** Optional field name for additional value data */\n valueKey?: string;\n /** Callback triggered when a user clicks on a scatter item */\n onClickScatterItem?: (index: number, event: React.SyntheticEvent) => void;\n};\n\nexport type ScatterPlotChartType = Intergalactic.Component<typeof Flex, ScatterPlotChartProps>;\n"],"mappings":"","ignoreList":[]}
@@ -1,7 +1,3 @@
1
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/createClass";
3
- import _callSuper from "@babel/runtime/helpers/callSuper";
4
- import _inherits from "@babel/runtime/helpers/inherits";
5
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
6
2
  import { createComponent } from '@semcore/core';
7
3
  import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
@@ -12,124 +8,108 @@ import React from 'react';
12
8
  import { Venn } from '../..';
13
9
  import { AbstractChart } from './AbstractChart';
14
10
  import { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';
15
- var VennChartComponent = /*#__PURE__*/function (_AbstractChart) {
16
- function VennChartComponent() {
17
- _classCallCheck(this, VennChartComponent);
18
- return _callSuper(this, VennChartComponent, arguments);
11
+ class VennChartComponent extends AbstractChart {
12
+ get xScale() {
13
+ const {
14
+ xScale
15
+ } = this.asProps;
16
+ if (xScale) {
17
+ return xScale;
18
+ }
19
+ return scaleLinear();
19
20
  }
20
- _inherits(VennChartComponent, _AbstractChart);
21
- return _createClass(VennChartComponent, [{
22
- key: "xScale",
23
- get: function get() {
24
- var xScale = this.asProps.xScale;
25
- if (xScale) {
26
- return xScale;
27
- }
28
- return scaleLinear();
21
+ get yScale() {
22
+ const {
23
+ yScale
24
+ } = this.asProps;
25
+ if (yScale) {
26
+ return yScale;
29
27
  }
30
- }, {
31
- key: "yScale",
32
- get: function get() {
33
- var yScale = this.asProps.yScale;
34
- if (yScale) {
35
- return yScale;
28
+ return scaleLinear();
29
+ }
30
+ get dataKeys() {
31
+ const {
32
+ data
33
+ } = this.props;
34
+ const legendKeys = Object.keys(data).filter(item => {
35
+ const isIntersection = /\//.test(item);
36
+ return !isIntersection;
37
+ });
38
+ return legendKeys;
39
+ }
40
+ defaultLegendProps() {
41
+ return {
42
+ legendType: 'Table'
43
+ };
44
+ }
45
+ renderChart() {
46
+ const {
47
+ data,
48
+ onClickVennItem
49
+ } = this.asProps;
50
+ const {
51
+ dataDefinitions,
52
+ highlightedLine
53
+ } = this.state;
54
+ const checkedLegendItems = dataDefinitions.filter(item => item.checked);
55
+ const checkedLegendItemsMap = checkedLegendItems.reduce((result, item) => {
56
+ result[item.id] = item;
57
+ return result;
58
+ }, {});
59
+ const intersections = Object.keys(data).reduce((result, dataKey) => {
60
+ const isIntersection = /\//.test(dataKey);
61
+ if (isIntersection) {
62
+ result.push(dataKey);
36
63
  }
37
- return scaleLinear();
38
- }
39
- }, {
40
- key: "dataKeys",
41
- get: function get() {
42
- var data = this.props.data;
43
- var legendKeys = Object.keys(data).filter(function (item) {
44
- var isIntersection = /\//.test(item);
45
- return !isIntersection;
46
- });
47
- return legendKeys;
48
- }
49
- }, {
50
- key: "defaultLegendProps",
51
- value: function defaultLegendProps() {
52
- return {
53
- legendType: 'Table'
54
- };
55
- }
56
- }, {
57
- key: "renderChart",
58
- value: function renderChart() {
59
- var _this$asProps = this.asProps,
60
- data = _this$asProps.data,
61
- onClickVennItem = _this$asProps.onClickVennItem;
62
- var _this$state = this.state,
63
- dataDefinitions = _this$state.dataDefinitions,
64
- highlightedLine = _this$state.highlightedLine;
65
- var checkedLegendItems = dataDefinitions.filter(function (item) {
66
- return item.checked;
64
+ return result;
65
+ }, []);
66
+ return /*#__PURE__*/React.createElement(Venn, {
67
+ onClick: onClickVennItem
68
+ }, checkedLegendItems.map((item, index) => {
69
+ return /*#__PURE__*/React.createElement(Venn.Circle, {
70
+ key: item.id,
71
+ dataKey: item.id,
72
+ name: item.label,
73
+ color: item.color,
74
+ transparent: highlightedLine !== -1 && highlightedLine !== index
67
75
  });
68
- var checkedLegendItemsMap = checkedLegendItems.reduce(function (result, item) {
69
- result[item.id] = item;
70
- return result;
71
- }, {});
72
- var intersections = Object.keys(data).reduce(function (result, dataKey) {
73
- var isIntersection = /\//.test(dataKey);
74
- if (isIntersection) {
75
- result.push(dataKey);
76
- }
77
- return result;
78
- }, []);
79
- return /*#__PURE__*/React.createElement(Venn, {
80
- onClick: onClickVennItem
81
- }, checkedLegendItems.map(function (item, index) {
82
- return /*#__PURE__*/React.createElement(Venn.Circle, {
83
- key: item.id,
84
- dataKey: item.id,
85
- name: item.label,
86
- color: item.color,
87
- transparent: highlightedLine !== -1 && highlightedLine !== index
88
- });
89
- }), intersections.map(function (intersectionKey) {
90
- var intersectionKeys = intersectionKey.split('/');
91
- var hasDisabledItems = intersectionKeys.some(function (key) {
92
- return checkedLegendItemsMap[key] === undefined;
93
- });
94
- if (hasDisabledItems) {
95
- return null;
96
- }
97
- var name = intersectionKeys.map(function (id) {
98
- var _dataDefinitions$find;
99
- return ((_dataDefinitions$find = dataDefinitions.find(function (legendItem) {
100
- return legendItem.id === id;
101
- })) === null || _dataDefinitions$find === void 0 ? void 0 : _dataDefinitions$find.label) || '';
102
- }).join(' & ');
103
- return /*#__PURE__*/React.createElement(Venn.Intersection, {
104
- key: intersectionKey,
105
- dataKey: intersectionKey,
106
- name: name
107
- });
108
- }));
109
- }
110
- }, {
111
- key: "renderTooltip",
112
- value: function renderTooltip() {
113
- return /*#__PURE__*/React.createElement(Venn.Tooltip, null, function (_ref) {
114
- var name = _ref.name,
115
- dataKey = _ref.dataKey,
116
- data = _ref.data;
117
- return {
118
- children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Venn.Tooltip.Title, null, name), /*#__PURE__*/React.createElement(Text, {
119
- bold: true
120
- }, data[dataKey]))
121
- };
76
+ }), intersections.map(intersectionKey => {
77
+ const intersectionKeys = intersectionKey.split('/');
78
+ const hasDisabledItems = intersectionKeys.some(key => {
79
+ return checkedLegendItemsMap[key] === undefined;
122
80
  });
123
- }
124
- }, {
125
- key: "getLegendAriaLabel",
126
- value: function getLegendAriaLabel() {
127
- return this.asProps.getI18nText('legendForChart', {
128
- chartType: 'Venn'
81
+ if (hasDisabledItems) {
82
+ return null;
83
+ }
84
+ const name = intersectionKeys.map(id => {
85
+ return dataDefinitions.find(legendItem => legendItem.id === id)?.label || '';
86
+ }).join(' & ');
87
+ return /*#__PURE__*/React.createElement(Venn.Intersection, {
88
+ key: intersectionKey,
89
+ dataKey: intersectionKey,
90
+ name: name
129
91
  });
130
- }
131
- }]);
132
- }(AbstractChart);
92
+ }));
93
+ }
94
+ renderTooltip() {
95
+ return /*#__PURE__*/React.createElement(Venn.Tooltip, null, ({
96
+ name,
97
+ dataKey,
98
+ data
99
+ }) => {
100
+ return {
101
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Venn.Tooltip.Title, null, name), /*#__PURE__*/React.createElement(Text, {
102
+ bold: true
103
+ }, data[dataKey]))
104
+ };
105
+ });
106
+ }
107
+ getLegendAriaLabel() {
108
+ return this.asProps.getI18nText('legendForChart', {
109
+ chartType: 'Venn'
110
+ });
111
+ }
112
+ }
133
113
  _defineProperty(VennChartComponent, "displayName", 'Chart.Venn');
134
114
  _defineProperty(VennChartComponent, "defaultProps", {
135
115
  direction: 'row-reverse',
@@ -138,5 +118,5 @@ _defineProperty(VennChartComponent, "defaultProps", {
138
118
  marginX: 0
139
119
  });
140
120
  _defineProperty(VennChartComponent, "enhance", [i18nEnhance(localizedMessages)]);
141
- export var VennChart = createComponent(VennChartComponent);
121
+ export const VennChart = createComponent(VennChartComponent);
142
122
  //# sourceMappingURL=VennChart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VennChart.js","names":["createComponent","i18nEnhance","Text","scaleLinear","React","Venn","AbstractChart","localizedMessages","VennChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","xScale","asProps","yScale","data","props","legendKeys","Object","keys","filter","item","isIntersection","test","value","defaultLegendProps","legendType","renderChart","_this$asProps","onClickVennItem","_this$state","state","dataDefinitions","highlightedLine","checkedLegendItems","checked","checkedLegendItemsMap","reduce","result","id","intersections","dataKey","push","createElement","onClick","map","index","Circle","name","label","color","transparent","intersectionKey","intersectionKeys","split","hasDisabledItems","some","undefined","_dataDefinitions$find","find","legendItem","join","Intersection","renderTooltip","Tooltip","_ref","children","Fragment","Title","bold","getLegendAriaLabel","getI18nText","chartType","_defineProperty","direction","alignItems","marginY","marginX","VennChart"],"sources":["../../../../src/component/Chart/VennChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport { scaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n// @ts-ignore\nimport { Venn } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { VennChartData, VennChartProps, VennChartType } from './VennChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\n\nclass VennChartComponent extends AbstractChart<\n VennChartData,\n VennChartProps,\n typeof VennChartComponent.enhance\n> {\n static displayName = 'Chart.Venn';\n\n static defaultProps: Partial<BaseChartProps<VennChartData>> = {\n direction: 'row-reverse',\n alignItems: 'flex-start',\n marginY: 0,\n marginX: 0,\n };\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const { xScale } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n return scaleLinear();\n }\n\n get yScale() {\n const { yScale } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n return scaleLinear();\n }\n\n protected get dataKeys(): string[] {\n const { data } = this.props;\n\n const legendKeys: string[] = Object.keys(data).filter((item) => {\n const isIntersection = /\\//.test(item);\n\n return !isIntersection;\n });\n\n return legendKeys;\n }\n\n defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n };\n }\n\n renderChart() {\n const { data, onClickVennItem } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n const checkedLegendItems = dataDefinitions.filter((item) => item.checked);\n const checkedLegendItemsMap = checkedLegendItems.reduce<Record<string, LegendItem>>(\n (result, item) => {\n result[item.id] = item;\n\n return result;\n },\n {},\n );\n\n const intersections = Object.keys(data).reduce<string[]>((result, dataKey) => {\n const isIntersection = /\\//.test(dataKey);\n\n if (isIntersection) {\n result.push(dataKey);\n }\n\n return result;\n }, []);\n\n return (\n <Venn onClick={onClickVennItem}>\n {checkedLegendItems.map((item, index) => {\n return (\n <Venn.Circle\n key={item.id}\n dataKey={item.id}\n name={item.label}\n color={item.color}\n transparent={highlightedLine !== -1 && highlightedLine !== index}\n />\n );\n })}\n\n {intersections.map((intersectionKey) => {\n const intersectionKeys = intersectionKey.split('/');\n\n const hasDisabledItems = intersectionKeys.some((key) => {\n return checkedLegendItemsMap[key] === undefined;\n });\n\n if (hasDisabledItems) {\n return null;\n }\n\n const name = intersectionKeys\n .map((id) => {\n return dataDefinitions.find((legendItem) => legendItem.id === id)?.label || '';\n })\n .join(' & ');\n\n return <Venn.Intersection key={intersectionKey} dataKey={intersectionKey} name={name} />;\n })}\n </Venn>\n );\n }\n\n renderTooltip() {\n return (\n <Venn.Tooltip>\n {({ name, dataKey, data }: any) => {\n return {\n children: (\n <>\n <Venn.Tooltip.Title>{name}</Venn.Tooltip.Title>\n <Text bold>{data[dataKey]}</Text>\n </>\n ),\n };\n }}\n </Venn.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Venn' });\n }\n}\n\nexport const VennChart: VennChartType = createComponent(VennChartComponent);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VennChart.js","names":["createComponent","i18nEnhance","Text","scaleLinear","React","Venn","AbstractChart","localizedMessages","VennChartComponent","xScale","asProps","yScale","dataKeys","data","props","legendKeys","Object","keys","filter","item","isIntersection","test","defaultLegendProps","legendType","renderChart","onClickVennItem","dataDefinitions","highlightedLine","state","checkedLegendItems","checked","checkedLegendItemsMap","reduce","result","id","intersections","dataKey","push","createElement","onClick","map","index","Circle","key","name","label","color","transparent","intersectionKey","intersectionKeys","split","hasDisabledItems","some","undefined","find","legendItem","join","Intersection","renderTooltip","Tooltip","children","Fragment","Title","bold","getLegendAriaLabel","getI18nText","chartType","_defineProperty","direction","alignItems","marginY","marginX","VennChart"],"sources":["../../../../src/component/Chart/VennChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport { scaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n// @ts-ignore\nimport { Venn } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { VennChartData, VennChartProps, VennChartType } from './VennChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\n\nclass VennChartComponent extends AbstractChart<\n VennChartData,\n VennChartProps,\n typeof VennChartComponent.enhance\n> {\n static displayName = 'Chart.Venn';\n\n static defaultProps: Partial<BaseChartProps<VennChartData>> = {\n direction: 'row-reverse',\n alignItems: 'flex-start',\n marginY: 0,\n marginX: 0,\n };\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const { xScale } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n return scaleLinear();\n }\n\n get yScale() {\n const { yScale } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n return scaleLinear();\n }\n\n protected get dataKeys(): string[] {\n const { data } = this.props;\n\n const legendKeys: string[] = Object.keys(data).filter((item) => {\n const isIntersection = /\\//.test(item);\n\n return !isIntersection;\n });\n\n return legendKeys;\n }\n\n defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n };\n }\n\n renderChart() {\n const { data, onClickVennItem } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n const checkedLegendItems = dataDefinitions.filter((item) => item.checked);\n const checkedLegendItemsMap = checkedLegendItems.reduce<Record<string, LegendItem>>(\n (result, item) => {\n result[item.id] = item;\n\n return result;\n },\n {},\n );\n\n const intersections = Object.keys(data).reduce<string[]>((result, dataKey) => {\n const isIntersection = /\\//.test(dataKey);\n\n if (isIntersection) {\n result.push(dataKey);\n }\n\n return result;\n }, []);\n\n return (\n <Venn onClick={onClickVennItem}>\n {checkedLegendItems.map((item, index) => {\n return (\n <Venn.Circle\n key={item.id}\n dataKey={item.id}\n name={item.label}\n color={item.color}\n transparent={highlightedLine !== -1 && highlightedLine !== index}\n />\n );\n })}\n\n {intersections.map((intersectionKey) => {\n const intersectionKeys = intersectionKey.split('/');\n\n const hasDisabledItems = intersectionKeys.some((key) => {\n return checkedLegendItemsMap[key] === undefined;\n });\n\n if (hasDisabledItems) {\n return null;\n }\n\n const name = intersectionKeys\n .map((id) => {\n return dataDefinitions.find((legendItem) => legendItem.id === id)?.label || '';\n })\n .join(' & ');\n\n return <Venn.Intersection key={intersectionKey} dataKey={intersectionKey} name={name} />;\n })}\n </Venn>\n );\n }\n\n renderTooltip() {\n return (\n <Venn.Tooltip>\n {({ name, dataKey, data }: any) => {\n return {\n children: (\n <>\n <Venn.Tooltip.Title>{name}</Venn.Tooltip.Title>\n <Text bold>{data[dataKey]}</Text>\n </>\n ),\n };\n }}\n </Venn.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Venn' });\n }\n}\n\nexport const VennChart: VennChartType = createComponent(VennChartComponent);\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"VennChart.type.js","names":[],"sources":["../../../../src/component/Chart/VennChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { Flex } from '@semcore/flex-box';\nimport type { ScaleLinear } from 'd3-scale';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\nexport type DataKey = string;\n\nexport type VennChartData = Record<DataKey, number>;\n\nexport type VennChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<VennChartData>,\n 'showTotalInTooltip'\n> & {\n /** Internal */\n groupKey?: never;\n /** Custom x-axis scale */\n xScale?: ScaleLinear<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n /** Callback triggered when a user clicks on a circle */\n onClickVennItem?: (key: DataKey, e: React.SyntheticEvent) => void;\n};\n\nexport type VennChartType = Intergalactic.Component<typeof Flex, VennChartProps>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"VennChart.type.js","names":[],"sources":["../../../../src/component/Chart/VennChart.type.ts"],"sourcesContent":["import type { Flex } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\nimport type { ScaleLinear } from 'd3-scale';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\nexport type DataKey = string;\n\nexport type VennChartData = Record<DataKey, number>;\n\nexport type VennChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<VennChartData>,\n 'showTotalInTooltip'\n> & {\n /** Internal */\n groupKey?: never;\n /** Custom x-axis scale */\n xScale?: ScaleLinear<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n /** Callback triggered when a user clicks on a circle */\n onClickVennItem?: (key: DataKey, e: React.SyntheticEvent) => void;\n};\n\nexport type VennChartType = Intergalactic.Component<typeof Flex, VennChartProps>;\n"],"mappings":"","ignoreList":[]}
@@ -1,119 +1,85 @@
1
- import _objectSpread from "@babel/runtime/helpers/objectSpread2";
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 { Component } from '@semcore/core';
8
3
  import { makeDataHintsHandlers } from '../../a11y/hints';
9
- export var BaseLegend = /*#__PURE__*/function (_Component) {
10
- function BaseLegend() {
11
- var _this;
12
- _classCallCheck(this, BaseLegend);
13
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
14
- args[_key] = arguments[_key];
15
- }
16
- _this = _callSuper(this, BaseLegend, [].concat(args));
17
- _defineProperty(_this, "onChangeLegendItem", function (shape) {
18
- return function (id, checked) {
19
- var _this$props$onChangeV, _this$props;
20
- if (shape !== 'Checkbox') return;
21
- (_this$props$onChangeV = (_this$props = _this.props).onChangeVisibleItem) === null || _this$props$onChangeV === void 0 || _this$props$onChangeV.call(_this$props, id, checked);
22
- if (checked) {
23
- var _this$props$onMouseEn, _this$props2;
24
- (_this$props$onMouseEn = (_this$props2 = _this.props).onMouseEnterItem) === null || _this$props$onMouseEn === void 0 || _this$props$onMouseEn.call(_this$props2, id);
25
- } else {
26
- var _this$props$onMouseLe, _this$props3;
27
- (_this$props$onMouseLe = (_this$props3 = _this.props).onMouseLeaveItem) === null || _this$props$onMouseLe === void 0 || _this$props$onMouseLe.call(_this$props3, id);
28
- }
29
- };
4
+ export class BaseLegend extends Component {
5
+ constructor(...args) {
6
+ super(...args);
7
+ _defineProperty(this, "onChangeLegendItem", shape => (id, checked) => {
8
+ if (shape !== 'Checkbox') return;
9
+ this.props.onChangeVisibleItem?.(id, checked);
10
+ if (checked) {
11
+ this.props.onMouseEnterItem?.(id);
12
+ } else {
13
+ this.props.onMouseLeaveItem?.(id);
14
+ }
30
15
  });
31
- _defineProperty(_this, "onFocusLegendItem", function (checked) {
32
- return function (id) {
33
- var _this$props$onMouseEn2, _this$props5;
34
- if (!checked) {
35
- var _this$props$onMouseLe2, _this$props4;
36
- return (_this$props$onMouseLe2 = (_this$props4 = _this.props).onMouseLeaveItem) === null || _this$props$onMouseLe2 === void 0 ? void 0 : _this$props$onMouseLe2.call(_this$props4, id);
37
- }
38
- (_this$props$onMouseEn2 = (_this$props5 = _this.props).onMouseEnterItem) === null || _this$props$onMouseEn2 === void 0 || _this$props$onMouseEn2.call(_this$props5, id);
39
- };
16
+ _defineProperty(this, "onFocusLegendItem", checked => id => {
17
+ if (!checked) {
18
+ return this.props.onMouseLeaveItem?.(id);
19
+ }
20
+ this.props.onMouseEnterItem?.(id);
40
21
  });
41
- _defineProperty(_this, "onBlurLegendItem", function (id) {
42
- var _this$props$onMouseLe3, _this$props6;
43
- (_this$props$onMouseLe3 = (_this$props6 = _this.props).onMouseLeaveItem) === null || _this$props$onMouseLe3 === void 0 || _this$props$onMouseLe3.call(_this$props6, id);
22
+ _defineProperty(this, "onBlurLegendItem", id => {
23
+ this.props.onMouseLeaveItem?.(id);
44
24
  });
45
- _defineProperty(_this, "bindOnMouseEnterItem", function (id) {
46
- return function (e) {
47
- var _this$props$onMouseEn3, _this$props7;
48
- (_this$props$onMouseEn3 = (_this$props7 = _this.props).onMouseEnterItem) === null || _this$props$onMouseEn3 === void 0 || _this$props$onMouseEn3.call(_this$props7, id, e);
25
+ _defineProperty(this, "bindOnMouseEnterItem", id => {
26
+ return e => {
27
+ this.props.onMouseEnterItem?.(id, e);
49
28
  };
50
29
  });
51
- _defineProperty(_this, "bindOnMouseLeaveItem", function (id) {
52
- return function (e) {
53
- var _this$props$onMouseLe4, _this$props8;
54
- (_this$props$onMouseLe4 = (_this$props8 = _this.props).onMouseLeaveItem) === null || _this$props$onMouseLe4 === void 0 || _this$props$onMouseLe4.call(_this$props8, id, e);
30
+ _defineProperty(this, "bindOnMouseLeaveItem", id => {
31
+ return e => {
32
+ this.props.onMouseLeaveItem?.(id, e);
55
33
  };
56
34
  });
57
- return _this;
58
35
  }
59
- _inherits(BaseLegend, _Component);
60
- return _createClass(BaseLegend, [{
61
- key: "componentDidMount",
62
- value: function componentDidMount() {
36
+ componentDidMount() {
37
+ this.setHints();
38
+ }
39
+ componentDidUpdate(prevProps) {
40
+ if (prevProps.items !== this.props.items || prevProps.dataHints !== this.props.dataHints) {
63
41
  this.setHints();
64
42
  }
65
- }, {
66
- key: "componentDidUpdate",
67
- value: function componentDidUpdate(prevProps) {
68
- if (prevProps.items !== this.props.items || prevProps.dataHints !== this.props.dataHints) {
69
- this.setHints();
70
- }
71
- }
72
- }, {
73
- key: "setHints",
74
- value: function setHints() {
75
- var _this$asProps = this.asProps,
76
- items = _this$asProps.items,
77
- dataHints = _this$asProps.dataHints;
78
- var dataHintsHandler = dataHints ? makeDataHintsHandlers(dataHints) : undefined;
79
- items.forEach(function (legendItem) {
80
- dataHintsHandler === null || dataHintsHandler === void 0 || dataHintsHandler.labelKey('value', legendItem.id, legendItem.label);
81
- });
82
- }
83
- }, {
84
- key: "getItem",
85
- value: function getItem(index) {
86
- var line = this.asProps.items[index];
87
- if (line === undefined) {
88
- throw new Error("No index \"".concat(index, "\" in lines"));
89
- }
90
- return line;
91
- }
92
- }, {
93
- key: "getLegendItemProps",
94
- value: function getLegendItemProps(_, index) {
95
- var _this$asProps2 = this.asProps,
96
- _this$asProps2$shape = _this$asProps2.shape,
97
- shape = _this$asProps2$shape === void 0 ? 'Checkbox' : _this$asProps2$shape,
98
- _this$asProps2$size = _this$asProps2.size,
99
- size = _this$asProps2$size === void 0 ? 'm' : _this$asProps2$size,
100
- patterns = _this$asProps2.patterns;
101
- var line = this.getItem(index);
102
- return _objectSpread(_objectSpread({}, line), {}, {
103
- shape: shape,
104
- size: size,
105
- onFocusLegendItem: this.onFocusLegendItem(line.checked),
106
- onBlurLegendItem: this.onBlurLegendItem,
107
- onChangeLegendItem: this.onChangeLegendItem(shape),
108
- onMouseEnter: line.checked ? this.bindOnMouseEnterItem(line.id) : undefined,
109
- onMouseLeave: this.bindOnMouseLeaveItem(line.id),
110
- style: {
111
- gridRowStart: "".concat(index + 1),
112
- gridRowEnd: "".concat(index + 2)
113
- },
114
- patterns: patterns
115
- });
43
+ }
44
+ setHints() {
45
+ const {
46
+ items,
47
+ dataHints
48
+ } = this.asProps;
49
+ const dataHintsHandler = dataHints ? makeDataHintsHandlers(dataHints) : undefined;
50
+ items.forEach(legendItem => {
51
+ dataHintsHandler?.labelKey('value', legendItem.id, legendItem.label);
52
+ });
53
+ }
54
+ getItem(index) {
55
+ const line = this.asProps.items[index];
56
+ if (line === undefined) {
57
+ throw new Error(`No index "${index}" in lines`);
116
58
  }
117
- }]);
118
- }(Component);
59
+ return line;
60
+ }
61
+ getLegendItemProps(_, index) {
62
+ const {
63
+ shape = 'Checkbox',
64
+ size = 'm',
65
+ patterns
66
+ } = this.asProps;
67
+ const line = this.getItem(index);
68
+ return {
69
+ ...line,
70
+ shape,
71
+ size,
72
+ onFocusLegendItem: this.onFocusLegendItem(line.checked),
73
+ onBlurLegendItem: this.onBlurLegendItem,
74
+ onChangeLegendItem: this.onChangeLegendItem(shape),
75
+ onMouseEnter: line.checked ? this.bindOnMouseEnterItem(line.id) : undefined,
76
+ onMouseLeave: this.bindOnMouseLeaveItem(line.id),
77
+ style: {
78
+ gridRowStart: `${index + 1}`,
79
+ gridRowEnd: `${index + 2}`
80
+ },
81
+ patterns
82
+ };
83
+ }
84
+ }
119
85
  //# sourceMappingURL=BaseLegend.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseLegend.js","names":["Component","makeDataHintsHandlers","BaseLegend","_Component","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","shape","id","checked","_this$props$onChangeV","_this$props","props","onChangeVisibleItem","call","_this$props$onMouseEn","_this$props2","onMouseEnterItem","_this$props$onMouseLe","_this$props3","onMouseLeaveItem","_this$props$onMouseEn2","_this$props5","_this$props$onMouseLe2","_this$props4","_this$props$onMouseLe3","_this$props6","e","_this$props$onMouseEn3","_this$props7","_this$props$onMouseLe4","_this$props8","_inherits","_createClass","key","value","componentDidMount","setHints","componentDidUpdate","prevProps","items","dataHints","_this$asProps","asProps","dataHintsHandler","undefined","forEach","legendItem","labelKey","label","getItem","index","line","Error","getLegendItemProps","_","_this$asProps2","_this$asProps2$shape","_this$asProps2$size","size","patterns","_objectSpread","onFocusLegendItem","onBlurLegendItem","onChangeLegendItem","onMouseEnter","bindOnMouseEnterItem","onMouseLeave","bindOnMouseLeaveItem","style","gridRowStart","gridRowEnd"],"sources":["../../../../src/component/ChartLegend/BaseLegend.tsx"],"sourcesContent":["import { Component, type Intergalactic } from '@semcore/core';\nimport type React from 'react';\n\nimport type { LegendProps } from './BaseLegend.type';\nimport { StaticShapes, type LegendItemKey, type LegendItemProps, type ShapeType } from './LegendItem/LegendItem.type';\nimport { makeDataHintsHandlers } from '../../a11y/hints';\n\nexport abstract class BaseLegend<T extends LegendProps> extends Component<T> {\n componentDidMount() {\n this.setHints();\n }\n\n componentDidUpdate(prevProps: T) {\n if (prevProps.items !== this.props.items || prevProps.dataHints !== this.props.dataHints) {\n this.setHints();\n }\n }\n\n setHints() {\n const { items, dataHints } = this.asProps;\n const dataHintsHandler = dataHints ? makeDataHintsHandlers(dataHints) : undefined;\n\n items.forEach((legendItem) => {\n dataHintsHandler?.labelKey('value', legendItem.id, legendItem.label);\n });\n }\n\n getItem(index: number) {\n const line = this.asProps.items[index];\n\n if (line === undefined) {\n throw new Error(`No index \"${index}\" in lines`);\n }\n\n return line;\n }\n\n getLegendItemProps(\n _: {},\n index: number,\n ): LegendItemProps & Intergalactic.InternalTypings.ComponentPropsNesting<'div'> {\n const { shape = 'Checkbox', size = 'm', patterns } = this.asProps;\n const line = this.getItem(index);\n\n return {\n ...line,\n shape,\n size,\n onFocusLegendItem: this.onFocusLegendItem(line.checked),\n onBlurLegendItem: this.onBlurLegendItem,\n onChangeLegendItem: this.onChangeLegendItem(shape),\n onMouseEnter: line.checked ? this.bindOnMouseEnterItem(line.id) : undefined,\n onMouseLeave: this.bindOnMouseLeaveItem(line.id),\n style: { gridRowStart: `${index + 1}`, gridRowEnd: `${index + 2}` },\n patterns,\n };\n }\n\n onChangeLegendItem = (shape: ShapeType) => (id: LegendItemKey, checked: boolean) => {\n if (shape !== 'Checkbox') return;\n\n this.props.onChangeVisibleItem?.(id, checked);\n\n if (checked) {\n this.props.onMouseEnterItem?.(id);\n } else {\n this.props.onMouseLeaveItem?.(id);\n }\n };\n\n onFocusLegendItem = (checked: boolean) => (id: LegendItemKey) => {\n if (!checked) {\n return this.props.onMouseLeaveItem?.(id);\n }\n\n this.props.onMouseEnterItem?.(id);\n };\n\n onBlurLegendItem = (id: LegendItemKey) => {\n this.props.onMouseLeaveItem?.(id);\n };\n\n bindOnMouseEnterItem = (id: LegendItemKey) => {\n return (e: React.SyntheticEvent) => {\n this.props.onMouseEnterItem?.(id, e);\n };\n };\n\n bindOnMouseLeaveItem = (id: LegendItemKey) => {\n return (e: React.SyntheticEvent) => {\n this.props.onMouseLeaveItem?.(id, e);\n };\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"BaseLegend.js","names":["Component","makeDataHintsHandlers","BaseLegend","constructor","args","_defineProperty","shape","id","checked","props","onChangeVisibleItem","onMouseEnterItem","onMouseLeaveItem","e","componentDidMount","setHints","componentDidUpdate","prevProps","items","dataHints","asProps","dataHintsHandler","undefined","forEach","legendItem","labelKey","label","getItem","index","line","Error","getLegendItemProps","_","size","patterns","onFocusLegendItem","onBlurLegendItem","onChangeLegendItem","onMouseEnter","bindOnMouseEnterItem","onMouseLeave","bindOnMouseLeaveItem","style","gridRowStart","gridRowEnd"],"sources":["../../../../src/component/ChartLegend/BaseLegend.tsx"],"sourcesContent":["import { Component, type Intergalactic } from '@semcore/core';\nimport type React from 'react';\n\nimport type { LegendProps } from './BaseLegend.type';\nimport { StaticShapes, type LegendItemKey, type LegendItemProps, type ShapeType } from './LegendItem/LegendItem.type';\nimport { makeDataHintsHandlers } from '../../a11y/hints';\n\nexport abstract class BaseLegend<T extends LegendProps, E extends readonly ((...args: any[]) => any)[] = never[]> extends Component<T, E> {\n componentDidMount() {\n this.setHints();\n }\n\n componentDidUpdate(prevProps: T) {\n if (prevProps.items !== this.props.items || prevProps.dataHints !== this.props.dataHints) {\n this.setHints();\n }\n }\n\n setHints() {\n const { items, dataHints } = this.asProps;\n const dataHintsHandler = dataHints ? makeDataHintsHandlers(dataHints) : undefined;\n\n items.forEach((legendItem) => {\n dataHintsHandler?.labelKey('value', legendItem.id, legendItem.label);\n });\n }\n\n getItem(index: number) {\n const line = this.asProps.items[index];\n\n if (line === undefined) {\n throw new Error(`No index \"${index}\" in lines`);\n }\n\n return line;\n }\n\n getLegendItemProps(\n _: {},\n index: number,\n ): LegendItemProps & Intergalactic.InternalTypings.ComponentPropsNesting<'div'> {\n const { shape = 'Checkbox', size = 'm', patterns } = this.asProps;\n const line = this.getItem(index);\n\n return {\n ...line,\n shape,\n size,\n onFocusLegendItem: this.onFocusLegendItem(line.checked),\n onBlurLegendItem: this.onBlurLegendItem,\n onChangeLegendItem: this.onChangeLegendItem(shape),\n onMouseEnter: line.checked ? this.bindOnMouseEnterItem(line.id) : undefined,\n onMouseLeave: this.bindOnMouseLeaveItem(line.id),\n style: { gridRowStart: `${index + 1}`, gridRowEnd: `${index + 2}` },\n patterns,\n };\n }\n\n onChangeLegendItem = (shape: ShapeType) => (id: LegendItemKey, checked: boolean) => {\n if (shape !== 'Checkbox') return;\n\n this.props.onChangeVisibleItem?.(id, checked);\n\n if (checked) {\n this.props.onMouseEnterItem?.(id);\n } else {\n this.props.onMouseLeaveItem?.(id);\n }\n };\n\n onFocusLegendItem = (checked: boolean) => (id: LegendItemKey) => {\n if (!checked) {\n return this.props.onMouseLeaveItem?.(id);\n }\n\n this.props.onMouseEnterItem?.(id);\n };\n\n onBlurLegendItem = (id: LegendItemKey) => {\n this.props.onMouseLeaveItem?.(id);\n };\n\n bindOnMouseEnterItem = (id: LegendItemKey) => {\n return (e: React.SyntheticEvent) => {\n this.props.onMouseEnterItem?.(id, e);\n };\n };\n\n bindOnMouseLeaveItem = (id: LegendItemKey) => {\n return (e: React.SyntheticEvent) => {\n this.props.onMouseLeaveItem?.(id, e);\n };\n };\n}\n"],"mappings":";AAAA,SAASA,SAAS,QAA4B,eAAe;AAK7D,SAASC,qBAAqB,QAAQ,kBAAkB;AAExD,OAAO,MAAeC,UAAU,SAA0FF,SAAS,CAAO;EAAAG,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,6BAmDlHC,KAAgB,IAAK,CAACC,EAAiB,EAAEC,OAAgB,KAAK;MAClF,IAAIF,KAAK,KAAK,UAAU,EAAE;MAE1B,IAAI,CAACG,KAAK,CAACC,mBAAmB,GAAGH,EAAE,EAAEC,OAAO,CAAC;MAE7C,IAAIA,OAAO,EAAE;QACX,IAAI,CAACC,KAAK,CAACE,gBAAgB,GAAGJ,EAAE,CAAC;MACnC,CAAC,MAAM;QACL,IAAI,CAACE,KAAK,CAACG,gBAAgB,GAAGL,EAAE,CAAC;MACnC;IACF,CAAC;IAAAF,eAAA,4BAEoBG,OAAgB,IAAMD,EAAiB,IAAK;MAC/D,IAAI,CAACC,OAAO,EAAE;QACZ,OAAO,IAAI,CAACC,KAAK,CAACG,gBAAgB,GAAGL,EAAE,CAAC;MAC1C;MAEA,IAAI,CAACE,KAAK,CAACE,gBAAgB,GAAGJ,EAAE,CAAC;IACnC,CAAC;IAAAF,eAAA,2BAEmBE,EAAiB,IAAK;MACxC,IAAI,CAACE,KAAK,CAACG,gBAAgB,GAAGL,EAAE,CAAC;IACnC,CAAC;IAAAF,eAAA,+BAEuBE,EAAiB,IAAK;MAC5C,OAAQM,CAAuB,IAAK;QAClC,IAAI,CAACJ,KAAK,CAACE,gBAAgB,GAAGJ,EAAE,EAAEM,CAAC,CAAC;MACtC,CAAC;IACH,CAAC;IAAAR,eAAA,+BAEuBE,EAAiB,IAAK;MAC5C,OAAQM,CAAuB,IAAK;QAClC,IAAI,CAACJ,KAAK,CAACG,gBAAgB,GAAGL,EAAE,EAAEM,CAAC,CAAC;MACtC,CAAC;IACH,CAAC;EAAA;EApFDC,iBAAiBA,CAAA,EAAG;IAClB,IAAI,CAACC,QAAQ,CAAC,CAAC;EACjB;EAEAC,kBAAkBA,CAACC,SAAY,EAAE;IAC/B,IAAIA,SAAS,CAACC,KAAK,KAAK,IAAI,CAACT,KAAK,CAACS,KAAK,IAAID,SAAS,CAACE,SAAS,KAAK,IAAI,CAACV,KAAK,CAACU,SAAS,EAAE;MACxF,IAAI,CAACJ,QAAQ,CAAC,CAAC;IACjB;EACF;EAEAA,QAAQA,CAAA,EAAG;IACT,MAAM;MAAEG,KAAK;MAAEC;IAAU,CAAC,GAAG,IAAI,CAACC,OAAO;IACzC,MAAMC,gBAAgB,GAAGF,SAAS,GAAGlB,qBAAqB,CAACkB,SAAS,CAAC,GAAGG,SAAS;IAEjFJ,KAAK,CAACK,OAAO,CAAEC,UAAU,IAAK;MAC5BH,gBAAgB,EAAEI,QAAQ,CAAC,OAAO,EAAED,UAAU,CAACjB,EAAE,EAAEiB,UAAU,CAACE,KAAK,CAAC;IACtE,CAAC,CAAC;EACJ;EAEAC,OAAOA,CAACC,KAAa,EAAE;IACrB,MAAMC,IAAI,GAAG,IAAI,CAACT,OAAO,CAACF,KAAK,CAACU,KAAK,CAAC;IAEtC,IAAIC,IAAI,KAAKP,SAAS,EAAE;MACtB,MAAM,IAAIQ,KAAK,CAAC,aAAaF,KAAK,YAAY,CAAC;IACjD;IAEA,OAAOC,IAAI;EACb;EAEAE,kBAAkBA,CAChBC,CAAK,EACLJ,KAAa,EACiE;IAC9E,MAAM;MAAEtB,KAAK,GAAG,UAAU;MAAE2B,IAAI,GAAG,GAAG;MAAEC;IAAS,CAAC,GAAG,IAAI,CAACd,OAAO;IACjE,MAAMS,IAAI,GAAG,IAAI,CAACF,OAAO,CAACC,KAAK,CAAC;IAEhC,OAAO;MACL,GAAGC,IAAI;MACPvB,KAAK;MACL2B,IAAI;MACJE,iBAAiB,EAAE,IAAI,CAACA,iBAAiB,CAACN,IAAI,CAACrB,OAAO,CAAC;MACvD4B,gBAAgB,EAAE,IAAI,CAACA,gBAAgB;MACvCC,kBAAkB,EAAE,IAAI,CAACA,kBAAkB,CAAC/B,KAAK,CAAC;MAClDgC,YAAY,EAAET,IAAI,CAACrB,OAAO,GAAG,IAAI,CAAC+B,oBAAoB,CAACV,IAAI,CAACtB,EAAE,CAAC,GAAGe,SAAS;MAC3EkB,YAAY,EAAE,IAAI,CAACC,oBAAoB,CAACZ,IAAI,CAACtB,EAAE,CAAC;MAChDmC,KAAK,EAAE;QAAEC,YAAY,EAAE,GAAGf,KAAK,GAAG,CAAC,EAAE;QAAEgB,UAAU,EAAE,GAAGhB,KAAK,GAAG,CAAC;MAAG,CAAC;MACnEM;IACF,CAAC;EACH;AAqCF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"BaseLegend.type.js","names":[],"sources":["../../../../src/component/ChartLegend/BaseLegend.type.ts"],"sourcesContent":["import type { BoxProps, FlexProps } from '@semcore/flex-box';\n\nimport type { LegendItem, LegendItemKey, ShapeType } from './LegendItem/LegendItem.type';\nimport type { DataStructureHints } from '../../a11y/hints';\nimport type { PatternsConfig } from '../../Pattern';\nimport type { AriaNameProps } from '../Chart/AbstractChart.type';\n\nexport type LSize = 'm' | 'l';\n\nexport type BaseChartLegendProps = FlexProps &\n AriaNameProps & {\n /**\n * Size for legend items\n */\n size?: LSize;\n /**\n * Shape of data item on Legend panel\n */\n shape?: ShapeType;\n /**\n * Handler for change visible for data items. Doesn't work if Shape one of 'Circle' | 'Line' | 'Square'\n */\n onChangeVisibleItem?: (key: LegendItemKey, isVisible: boolean) => void;\n\n onMouseEnterItem?: (key: LegendItemKey, e?: React.SyntheticEvent) => void;\n\n onMouseLeaveItem?: (key: LegendItemKey, e?: React.SyntheticEvent) => void;\n\n dataHints?: DataStructureHints;\n };\n\nexport type LegendProps = BoxProps &\n BaseChartLegendProps & {\n /**\n * Legend items\n */\n items: LegendItem[];\n\n /** Enables charts patterns that enhances charts accessibility */\n patterns?: PatternsConfig;\n };\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"BaseLegend.type.js","names":[],"sources":["../../../../src/component/ChartLegend/BaseLegend.type.ts"],"sourcesContent":["import type { BoxProps, FlexProps } from '@semcore/base-components';\n\nimport type { LegendItem, LegendItemKey, ShapeType } from './LegendItem/LegendItem.type';\nimport type { DataStructureHints } from '../../a11y/hints';\nimport type { PatternsConfig } from '../../Pattern';\nimport type { AriaNameProps } from '../Chart/AbstractChart.type';\n\nexport type LSize = 'm' | 'l';\n\nexport type BaseChartLegendProps = FlexProps &\n AriaNameProps & {\n /**\n * Size for legend items\n */\n size?: LSize;\n /**\n * Shape of data item on Legend panel\n */\n shape?: ShapeType;\n /**\n * Handler for change visible for data items. Doesn't work if Shape one of 'Circle' | 'Line' | 'Square'\n */\n onChangeVisibleItem?: (key: LegendItemKey, isVisible: boolean) => void;\n\n onMouseEnterItem?: (key: LegendItemKey, e?: React.SyntheticEvent) => void;\n\n onMouseLeaveItem?: (key: LegendItemKey, e?: React.SyntheticEvent) => void;\n\n dataHints?: DataStructureHints;\n };\n\nexport type LegendProps = BoxProps &\n BaseChartLegendProps & {\n /**\n * Legend items\n */\n items: LegendItem[];\n\n /** Enables charts patterns that enhances charts accessibility */\n patterns?: PatternsConfig;\n };\n"],"mappings":"","ignoreList":[]}