@semcore/d3-chart 16.7.0-prerelease.1 → 16.7.0

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 (281) hide show
  1. package/lib/cjs/Area.js +11 -11
  2. package/lib/cjs/Axis.js +18 -16
  3. package/lib/cjs/Axis.js.map +1 -1
  4. package/lib/cjs/Bar.js +16 -16
  5. package/lib/cjs/Bubble.js +14 -14
  6. package/lib/cjs/CompactHorizontalBar.js +20 -20
  7. package/lib/cjs/CompactHorizontalBar.js.map +1 -1
  8. package/lib/cjs/Donut.js +9 -9
  9. package/lib/cjs/Dots.js +8 -8
  10. package/lib/cjs/HorizontalBar.js +17 -17
  11. package/lib/cjs/HorizontalBar.js.map +1 -1
  12. package/lib/cjs/Hover.js +3 -3
  13. package/lib/cjs/Line.js +9 -9
  14. package/lib/cjs/Plot.js +6 -9
  15. package/lib/cjs/Plot.js.map +1 -1
  16. package/lib/cjs/Radar.js +19 -19
  17. package/lib/cjs/RadialTree.js +12 -12
  18. package/lib/cjs/RadialTree.js.map +1 -1
  19. package/lib/cjs/Reference.js +12 -12
  20. package/lib/cjs/ResponsiveContainer.js +2 -2
  21. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  22. package/lib/cjs/ScatterPlot.js +9 -9
  23. package/lib/cjs/StackBar.js +3 -8
  24. package/lib/cjs/StackBar.js.map +1 -1
  25. package/lib/cjs/Tooltip.js +18 -19
  26. package/lib/cjs/Tooltip.js.map +1 -1
  27. package/lib/cjs/Venn.js +12 -12
  28. package/lib/cjs/Venn.js.map +1 -1
  29. package/lib/cjs/a11y/PlotA11yModule.js +37 -79
  30. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  31. package/lib/cjs/a11y/PlotA11yView.js +39 -12
  32. package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
  33. package/lib/cjs/a11y/translations/module/de.json +2 -2
  34. package/lib/cjs/a11y/translations/module/en.json +2 -2
  35. package/lib/cjs/a11y/translations/module/es.json +2 -2
  36. package/lib/cjs/a11y/translations/module/fr.json +2 -2
  37. package/lib/cjs/a11y/translations/module/it.json +2 -2
  38. package/lib/cjs/a11y/translations/module/ja.json +2 -2
  39. package/lib/cjs/a11y/translations/module/ko.json +2 -2
  40. package/lib/cjs/a11y/translations/module/nl.json +2 -2
  41. package/lib/cjs/a11y/translations/module/pl.json +2 -2
  42. package/lib/cjs/a11y/translations/module/pt.json +2 -2
  43. package/lib/cjs/a11y/translations/module/sv.json +2 -2
  44. package/lib/cjs/a11y/translations/module/tr.json +2 -2
  45. package/lib/cjs/a11y/translations/module/vi.json +2 -2
  46. package/lib/cjs/a11y/translations/module/zh.json +2 -2
  47. package/lib/cjs/component/Chart/AbstractChart.js +9 -9
  48. package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
  49. package/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
  50. package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
  51. package/lib/cjs/component/Chart/AreaChart.type.js.map +1 -1
  52. package/lib/cjs/component/Chart/BarChart.js +66 -19
  53. package/lib/cjs/component/Chart/BarChart.js.map +1 -1
  54. package/lib/cjs/component/Chart/BarChart.type.js.map +1 -1
  55. package/lib/cjs/component/Chart/BubbleChart.type.js.map +1 -1
  56. package/lib/cjs/component/Chart/CigaretteChart.js +8 -8
  57. package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
  58. package/lib/cjs/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  59. package/lib/cjs/component/Chart/DonutChart.js +2 -2
  60. package/lib/cjs/component/Chart/DonutChart.js.map +1 -1
  61. package/lib/cjs/component/Chart/DonutChart.type.js.map +1 -1
  62. package/lib/cjs/component/Chart/HistogramChart.type.js.map +1 -1
  63. package/lib/cjs/component/Chart/LineChart.type.js.map +1 -1
  64. package/lib/cjs/component/Chart/RadarChart.type.js.map +1 -1
  65. package/lib/cjs/component/Chart/ScatterPlotChart.type.js.map +1 -1
  66. package/lib/cjs/component/Chart/VennChart.type.js.map +1 -1
  67. package/lib/cjs/component/ChartLegend/BaseLegend.js +1 -1
  68. package/lib/cjs/component/ChartLegend/BaseLegend.js.map +1 -1
  69. package/lib/cjs/component/ChartLegend/BaseLegend.type.js.map +1 -1
  70. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +6 -6
  71. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  72. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
  73. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +23 -23
  74. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  75. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  76. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +9 -9
  77. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  78. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
  79. package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
  80. package/lib/cjs/style/axis.shadow.css +3 -1
  81. package/lib/cjs/style/plot.shadow.css +1 -3
  82. package/lib/cjs/style/plotA11yModule.shadow.css +10 -11
  83. package/lib/cjs/style/plotA11yView.shadow.css +13 -26
  84. package/lib/cjs/types/Axis.d.js.map +1 -1
  85. package/lib/cjs/types/CompactHorizontalBar.d.js.map +1 -1
  86. package/lib/cjs/types/Hover.d.js.map +1 -1
  87. package/lib/cjs/types/Line.d.js.map +1 -1
  88. package/lib/cjs/types/Plot.d.js.map +1 -1
  89. package/lib/cjs/types/Radar.d.js.map +1 -1
  90. package/lib/cjs/types/ResponsiveContainer.d.js.map +1 -1
  91. package/lib/cjs/types/Tooltip.d.js.map +1 -1
  92. package/lib/cjs/types/Venn.d.js.map +1 -1
  93. package/lib/cjs/utils.js.map +1 -1
  94. package/lib/es6/Area.js +11 -11
  95. package/lib/es6/Axis.js +18 -16
  96. package/lib/es6/Axis.js.map +1 -1
  97. package/lib/es6/Bar.js +16 -16
  98. package/lib/es6/Bubble.js +14 -14
  99. package/lib/es6/CompactHorizontalBar.js +17 -17
  100. package/lib/es6/CompactHorizontalBar.js.map +1 -1
  101. package/lib/es6/Donut.js +9 -9
  102. package/lib/es6/Dots.js +8 -8
  103. package/lib/es6/HorizontalBar.js +17 -17
  104. package/lib/es6/HorizontalBar.js.map +1 -1
  105. package/lib/es6/Hover.js +3 -3
  106. package/lib/es6/Line.js +9 -9
  107. package/lib/es6/Plot.js +5 -8
  108. package/lib/es6/Plot.js.map +1 -1
  109. package/lib/es6/Radar.js +19 -19
  110. package/lib/es6/RadialTree.js +12 -12
  111. package/lib/es6/RadialTree.js.map +1 -1
  112. package/lib/es6/Reference.js +12 -12
  113. package/lib/es6/ResponsiveContainer.js +1 -1
  114. package/lib/es6/ResponsiveContainer.js.map +1 -1
  115. package/lib/es6/ScatterPlot.js +9 -9
  116. package/lib/es6/StackBar.js +3 -8
  117. package/lib/es6/StackBar.js.map +1 -1
  118. package/lib/es6/Tooltip.js +10 -11
  119. package/lib/es6/Tooltip.js.map +1 -1
  120. package/lib/es6/Venn.js +10 -10
  121. package/lib/es6/Venn.js.map +1 -1
  122. package/lib/es6/a11y/PlotA11yModule.js +36 -80
  123. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  124. package/lib/es6/a11y/PlotA11yView.js +37 -10
  125. package/lib/es6/a11y/PlotA11yView.js.map +1 -1
  126. package/lib/es6/a11y/translations/module/de.json +2 -2
  127. package/lib/es6/a11y/translations/module/en.json +2 -2
  128. package/lib/es6/a11y/translations/module/es.json +2 -2
  129. package/lib/es6/a11y/translations/module/fr.json +2 -2
  130. package/lib/es6/a11y/translations/module/it.json +2 -2
  131. package/lib/es6/a11y/translations/module/ja.json +2 -2
  132. package/lib/es6/a11y/translations/module/ko.json +2 -2
  133. package/lib/es6/a11y/translations/module/nl.json +2 -2
  134. package/lib/es6/a11y/translations/module/pl.json +2 -2
  135. package/lib/es6/a11y/translations/module/pt.json +2 -2
  136. package/lib/es6/a11y/translations/module/sv.json +2 -2
  137. package/lib/es6/a11y/translations/module/tr.json +2 -2
  138. package/lib/es6/a11y/translations/module/vi.json +2 -2
  139. package/lib/es6/a11y/translations/module/zh.json +2 -2
  140. package/lib/es6/component/Chart/AbstractChart.js +5 -5
  141. package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
  142. package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
  143. package/lib/es6/component/Chart/AreaChart.js.map +1 -1
  144. package/lib/es6/component/Chart/AreaChart.type.js.map +1 -1
  145. package/lib/es6/component/Chart/BarChart.js +67 -20
  146. package/lib/es6/component/Chart/BarChart.js.map +1 -1
  147. package/lib/es6/component/Chart/BarChart.type.js.map +1 -1
  148. package/lib/es6/component/Chart/BubbleChart.type.js.map +1 -1
  149. package/lib/es6/component/Chart/CigaretteChart.js +1 -1
  150. package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
  151. package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  152. package/lib/es6/component/Chart/DonutChart.js +1 -1
  153. package/lib/es6/component/Chart/DonutChart.js.map +1 -1
  154. package/lib/es6/component/Chart/DonutChart.type.js.map +1 -1
  155. package/lib/es6/component/Chart/HistogramChart.type.js.map +1 -1
  156. package/lib/es6/component/Chart/LineChart.type.js.map +1 -1
  157. package/lib/es6/component/Chart/RadarChart.type.js.map +1 -1
  158. package/lib/es6/component/Chart/ScatterPlotChart.type.js.map +1 -1
  159. package/lib/es6/component/Chart/VennChart.type.js.map +1 -1
  160. package/lib/es6/component/ChartLegend/BaseLegend.js +1 -1
  161. package/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
  162. package/lib/es6/component/ChartLegend/BaseLegend.type.js.map +1 -1
  163. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +5 -5
  164. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  165. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
  166. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +18 -18
  167. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  168. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  169. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +7 -7
  170. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  171. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
  172. package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
  173. package/lib/es6/style/axis.shadow.css +3 -1
  174. package/lib/es6/style/plot.shadow.css +1 -3
  175. package/lib/es6/style/plotA11yModule.shadow.css +10 -11
  176. package/lib/es6/style/plotA11yView.shadow.css +13 -26
  177. package/lib/es6/types/Axis.d.js.map +1 -1
  178. package/lib/es6/types/CompactHorizontalBar.d.js.map +1 -1
  179. package/lib/es6/types/Hover.d.js.map +1 -1
  180. package/lib/es6/types/Line.d.js.map +1 -1
  181. package/lib/es6/types/Plot.d.js.map +1 -1
  182. package/lib/es6/types/Radar.d.js.map +1 -1
  183. package/lib/es6/types/ResponsiveContainer.d.js.map +1 -1
  184. package/lib/es6/types/Tooltip.d.js.map +1 -1
  185. package/lib/es6/types/Venn.d.js.map +1 -1
  186. package/lib/es6/utils.js.map +1 -1
  187. package/lib/esm/AnimatedClipPath.mjs +2 -7
  188. package/lib/esm/Area.mjs +14 -14
  189. package/lib/esm/Axis.mjs +21 -19
  190. package/lib/esm/Bar.mjs +17 -17
  191. package/lib/esm/Bubble.mjs +16 -16
  192. package/lib/esm/CompactHorizontalBar.mjs +20 -19
  193. package/lib/esm/Donut.mjs +15 -13
  194. package/lib/esm/Dots.mjs +10 -10
  195. package/lib/esm/HorizontalBar.mjs +18 -18
  196. package/lib/esm/Hover.mjs +6 -6
  197. package/lib/esm/Line.mjs +12 -12
  198. package/lib/esm/Plot.mjs +7 -10
  199. package/lib/esm/Radar.mjs +23 -23
  200. package/lib/esm/RadialTree.mjs +13 -13
  201. package/lib/esm/Reference.mjs +13 -13
  202. package/lib/esm/ResponsiveContainer.mjs +2 -2
  203. package/lib/esm/ScatterPlot.mjs +12 -11
  204. package/lib/esm/StackBar.mjs +4 -9
  205. package/lib/esm/StackedArea.mjs +2 -2
  206. package/lib/esm/Tooltip.mjs +13 -16
  207. package/lib/esm/Venn.mjs +13 -12
  208. package/lib/esm/a11y/PlotA11yModule.mjs +31 -69
  209. package/lib/esm/a11y/PlotA11yView.mjs +35 -10
  210. package/lib/esm/a11y/insights.mjs +2 -1
  211. package/lib/esm/a11y/intl.mjs +1 -1
  212. package/lib/esm/a11y/translations/module/de.json.mjs +2 -4
  213. package/lib/esm/a11y/translations/module/en.json.mjs +2 -4
  214. package/lib/esm/a11y/translations/module/es.json.mjs +2 -4
  215. package/lib/esm/a11y/translations/module/fr.json.mjs +2 -4
  216. package/lib/esm/a11y/translations/module/it.json.mjs +2 -4
  217. package/lib/esm/a11y/translations/module/ja.json.mjs +2 -4
  218. package/lib/esm/a11y/translations/module/ko.json.mjs +2 -4
  219. package/lib/esm/a11y/translations/module/nl.json.mjs +2 -4
  220. package/lib/esm/a11y/translations/module/pl.json.mjs +2 -4
  221. package/lib/esm/a11y/translations/module/pt.json.mjs +2 -4
  222. package/lib/esm/a11y/translations/module/sv.json.mjs +2 -4
  223. package/lib/esm/a11y/translations/module/tr.json.mjs +2 -4
  224. package/lib/esm/a11y/translations/module/vi.json.mjs +2 -4
  225. package/lib/esm/a11y/translations/module/zh.json.mjs +2 -4
  226. package/lib/esm/component/Chart/AbstractChart.mjs +12 -10
  227. package/lib/esm/component/Chart/AreaChart.mjs +5 -4
  228. package/lib/esm/component/Chart/BarChart.mjs +44 -3
  229. package/lib/esm/component/Chart/BubbleChart.mjs +3 -2
  230. package/lib/esm/component/Chart/CigaretteChart.mjs +6 -5
  231. package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +2 -1
  232. package/lib/esm/component/Chart/DonutChart.mjs +3 -2
  233. package/lib/esm/component/Chart/HistogramChart.mjs +5 -4
  234. package/lib/esm/component/Chart/LineChart.mjs +4 -3
  235. package/lib/esm/component/Chart/RadarChart.mjs +2 -1
  236. package/lib/esm/component/Chart/ScatterPlotChart.mjs +3 -2
  237. package/lib/esm/component/Chart/VennChart.mjs +2 -1
  238. package/lib/esm/component/ChartLegend/BaseLegend.mjs +1 -1
  239. package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +7 -7
  240. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +21 -25
  241. package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +9 -9
  242. package/lib/esm/component/ChartLegend/index.mjs +2 -0
  243. package/lib/esm/component/StackGroupBar/StackGroupBar.mjs +1 -1
  244. package/lib/esm/createElement.mjs +2 -4
  245. package/lib/esm/index.mjs +1 -0
  246. package/lib/esm/style/axis.shadow.css +3 -1
  247. package/lib/esm/style/plot.shadow.css +1 -3
  248. package/lib/esm/style/plotA11yModule.shadow.css +10 -11
  249. package/lib/esm/style/plotA11yView.shadow.css +13 -26
  250. package/lib/esm/utils.mjs +2 -2
  251. package/lib/types/Axis.d.ts +4 -0
  252. package/lib/types/CompactHorizontalBar.d.ts +1 -1
  253. package/lib/types/Hover.d.ts +1 -1
  254. package/lib/types/Line.d.ts +1 -1
  255. package/lib/types/Plot.d.ts +1 -1
  256. package/lib/types/Radar.d.ts +1 -1
  257. package/lib/types/ResponsiveContainer.d.ts +1 -1
  258. package/lib/types/Tooltip.d.ts +1 -3
  259. package/lib/types/Venn.d.ts +1 -1
  260. package/lib/types/a11y/PlotA11yModule.d.ts +4 -11
  261. package/lib/types/a11y/PlotA11yView.d.ts +13 -2
  262. package/lib/types/a11y/translations/module/__intergalactic-dynamic-locales.d.ts +14 -14
  263. package/lib/types/component/Chart/AbstractChart.d.ts +1 -1
  264. package/lib/types/component/Chart/AbstractChart.type.d.ts +1 -1
  265. package/lib/types/component/Chart/AreaChart.type.d.ts +1 -1
  266. package/lib/types/component/Chart/BarChart.type.d.ts +1 -1
  267. package/lib/types/component/Chart/BubbleChart.type.d.ts +1 -1
  268. package/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +1 -1
  269. package/lib/types/component/Chart/DonutChart.type.d.ts +1 -1
  270. package/lib/types/component/Chart/HistogramChart.type.d.ts +1 -1
  271. package/lib/types/component/Chart/LineChart.type.d.ts +1 -1
  272. package/lib/types/component/Chart/RadarChart.type.d.ts +1 -1
  273. package/lib/types/component/Chart/ScatterPlotChart.type.d.ts +1 -1
  274. package/lib/types/component/Chart/VennChart.type.d.ts +1 -1
  275. package/lib/types/component/ChartLegend/BaseLegend.d.ts +1 -1
  276. package/lib/types/component/ChartLegend/BaseLegend.type.d.ts +1 -1
  277. package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.type.d.ts +1 -1
  278. package/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +1 -1
  279. package/lib/types/component/ChartLegend/LegendTable/LegendTable.type.d.ts +1 -1
  280. package/lib/types/utils.d.ts +10 -10
  281. package/package.json +19 -19
@@ -1 +1 @@
1
- {"version":3,"file":"AreaChart.js","names":["createComponent","i18nEnhance","scaleLinear","scaleTime","React","Area","minMax","HoverLine","StackedArea","AbstractChart","localizedMessages","AreaChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","_this$asProps","asProps","xScale","_this$asProps$marginY","marginY","plotWidth","data","groupKey","testItem","range","plotPadding","domain","Date","Number","isNaN","getMilliseconds","_this$asProps2","yScale","_this$asProps2$margin","marginX","plotHeight","stacked","flatValues","_superPropGet","min","Math","apply","_toConsumableArray","max","value","renderChart","_this$asProps3","curve","showDots","onClickArea","_this$state","state","dataDefinitions","highlightedLine","createElement","x","map","item","index","checked","y","id","color","transparent","onClick","Dots","display","renderTooltip","_this","_this$asProps4","Tooltip","wMin","_ref","xIndex","dataItem","children","getTooltipChildren","getLegendAriaLabel","getI18nText","chartType","_defineProperty","AreaChart"],"sources":["../../../../src/component/Chart/AreaChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { type ScaleLinear, scaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { Area, minMax, HoverLine, StackedArea } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { AreaChartData, AreaChartProps, AreaChartType } from './AreaChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass AreaChartComponent extends AbstractChart<\n AreaChartData,\n AreaChartProps,\n typeof AreaChartComponent.enhance\n> {\n static displayName = 'Chart.Area';\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const { xScale, marginY = 40, plotWidth, data, groupKey } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\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, range);\n }\n\n return scaleLinear(domain, range);\n }\n\n get yScale(): ScaleLinear<any, any> {\n const { yScale, marginX = 24, plotHeight, stacked } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n const flatValues = super.flatValues;\n const min = Math.min(...flatValues);\n const max = stacked ? super.maxStackedValue : Math.max(...flatValues);\n\n return scaleLinear()\n .range([plotHeight - marginX, this.plotPadding])\n .domain([min, max]);\n }\n\n renderChart() {\n const { groupKey, curve, showDots, stacked, onClickArea } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n if (stacked) {\n return (\n <StackedArea x={groupKey}>\n {dataDefinitions.map((item, index) => {\n return (\n item.checked && (\n <StackedArea.Area\n x={groupKey}\n y={item.id}\n key={item.id}\n color={item.color}\n transparent={highlightedLine !== -1 && highlightedLine !== index}\n curve={curve}\n onClick={onClickArea}\n >\n {showDots && <StackedArea.Area.Dots display />}\n </StackedArea.Area>\n )\n );\n })}\n </StackedArea>\n );\n }\n\n return dataDefinitions.map((item, index) => {\n return (\n item.checked && (\n <Area\n x={groupKey}\n y={item.id}\n key={item.id}\n color={item.color}\n transparent={highlightedLine !== -1 && highlightedLine !== index}\n curve={curve}\n onClick={onClickArea}\n >\n {showDots && <Area.Dots display />}\n </Area>\n )\n );\n });\n }\n\n renderTooltip() {\n const { data, groupKey } = this.asProps;\n\n return (\n <HoverLine.Tooltip x={groupKey} wMin={100}>\n {({ xIndex }: any) => {\n const dataItem = data[xIndex];\n\n return {\n children: this.getTooltipChildren({\n Tooltip: HoverLine.Tooltip,\n dataItem,\n }),\n };\n }}\n </HoverLine.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Area' });\n }\n}\n\nexport const AreaChart: AreaChartType = createComponent(AreaChartComponent);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"AreaChart.js","names":["createComponent","i18nEnhance","scaleLinear","scaleTime","React","Area","minMax","HoverLine","StackedArea","AbstractChart","localizedMessages","AreaChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","_this$asProps","asProps","xScale","_this$asProps$marginY","marginY","plotWidth","data","groupKey","testItem","range","plotPadding","domain","Date","Number","isNaN","getMilliseconds","_this$asProps2","yScale","_this$asProps2$margin","marginX","plotHeight","stacked","flatValues","_superPropGet","min","Math","apply","_toConsumableArray","max","value","renderChart","_this$asProps3","curve","showDots","onClickArea","_this$state","state","dataDefinitions","highlightedLine","createElement","x","map","item","index","checked","y","id","color","transparent","onClick","Dots","display","renderTooltip","_this","_this$asProps4","Tooltip","wMin","_ref","xIndex","dataItem","children","getTooltipChildren","getLegendAriaLabel","getI18nText","chartType","_defineProperty","AreaChart"],"sources":["../../../../src/component/Chart/AreaChart.tsx"],"sourcesContent":["import { Flex, Box } from '@semcore/base-components';\nimport { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { type ScaleLinear, scaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { Area, minMax, HoverLine, StackedArea } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { AreaChartData, AreaChartProps, AreaChartType } from './AreaChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass AreaChartComponent extends AbstractChart<\n AreaChartData,\n AreaChartProps,\n typeof AreaChartComponent.enhance\n> {\n static displayName = 'Chart.Area';\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const { xScale, marginY = 40, plotWidth, data, groupKey } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\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, range);\n }\n\n return scaleLinear(domain, range);\n }\n\n get yScale(): ScaleLinear<any, any> {\n const { yScale, marginX = 24, plotHeight, stacked } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n const flatValues = super.flatValues;\n const min = Math.min(...flatValues);\n const max = stacked ? super.maxStackedValue : Math.max(...flatValues);\n\n return scaleLinear()\n .range([plotHeight - marginX, this.plotPadding])\n .domain([min, max]);\n }\n\n renderChart() {\n const { groupKey, curve, showDots, stacked, onClickArea } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n if (stacked) {\n return (\n <StackedArea x={groupKey}>\n {dataDefinitions.map((item, index) => {\n return (\n item.checked && (\n <StackedArea.Area\n x={groupKey}\n y={item.id}\n key={item.id}\n color={item.color}\n transparent={highlightedLine !== -1 && highlightedLine !== index}\n curve={curve}\n onClick={onClickArea}\n >\n {showDots && <StackedArea.Area.Dots display />}\n </StackedArea.Area>\n )\n );\n })}\n </StackedArea>\n );\n }\n\n return dataDefinitions.map((item, index) => {\n return (\n item.checked && (\n <Area\n x={groupKey}\n y={item.id}\n key={item.id}\n color={item.color}\n transparent={highlightedLine !== -1 && highlightedLine !== index}\n curve={curve}\n onClick={onClickArea}\n >\n {showDots && <Area.Dots display />}\n </Area>\n )\n );\n });\n }\n\n renderTooltip() {\n const { data, groupKey } = this.asProps;\n\n return (\n <HoverLine.Tooltip x={groupKey} wMin={100}>\n {({ xIndex }: any) => {\n const dataItem = data[xIndex];\n\n return {\n children: this.getTooltipChildren({\n Tooltip: HoverLine.Tooltip,\n dataItem,\n }),\n };\n }}\n </HoverLine.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Area' });\n }\n}\n\nexport const AreaChart: AreaChartType = createComponent(AreaChartComponent);\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"AreaChart.type.js","names":[],"sources":["../../../../src/component/Chart/AreaChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { Flex } from '@semcore/flex-box';\nimport type { ScaleLinear, ScaleTime } from 'd3-scale';\nimport type { CurveFactory } from 'd3-shape';\n\nimport type { AriaNameProps, BaseChartProps } from './AbstractChart.type';\nimport type { interpolateValue } from '../../utils';\n\nexport type AreaChartData = Array<Record<string, number | typeof interpolateValue | Date>>;\n\nexport type AreaChartProps = BaseChartProps<AreaChartData> & {\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 /** Controls whether to display dots on the area chart lines */\n showDots?: boolean;\n /** D3 curve factory for line interpolation (e.g., curveLinear, curveCardinal) */\n curve?: CurveFactory;\n /** Enables stacked area chart mode */\n stacked?: boolean;\n /** Callback triggered when a user clicks on a chart at a position corresponding to a data item */\n onClickArea?: (index: number, event: React.SyntheticEvent) => void;\n};\n\nexport type AreaChartType = Intergalactic.Component<typeof Flex, Intergalactic.InternalTypings.EfficientOmit<AreaChartProps, 'showLegend'> & { showLegend?: boolean } & AriaNameProps>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"AreaChart.type.js","names":[],"sources":["../../../../src/component/Chart/AreaChart.type.ts"],"sourcesContent":["import type { Flex } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\nimport type { ScaleLinear, ScaleTime } from 'd3-scale';\nimport type { CurveFactory } from 'd3-shape';\n\nimport type { AriaNameProps, BaseChartProps } from './AbstractChart.type';\nimport type { interpolateValue } from '../../utils';\n\nexport type AreaChartData = Array<Record<string, number | typeof interpolateValue | Date>>;\n\nexport type AreaChartProps = BaseChartProps<AreaChartData> & {\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 /** Controls whether to display dots on the area chart lines */\n showDots?: boolean;\n /** D3 curve factory for line interpolation (e.g., curveLinear, curveCardinal) */\n curve?: CurveFactory;\n /** Enables stacked area chart mode */\n stacked?: boolean;\n /** Callback triggered when a user clicks on a chart at a position corresponding to a data item */\n onClickArea?: (index: number, event: React.SyntheticEvent) => void;\n};\n\nexport type AreaChartType = Intergalactic.Component<typeof Flex, Intergalactic.InternalTypings.EfficientOmit<AreaChartProps, 'showLegend'> & { showLegend?: boolean } & AriaNameProps>;\n"],"mappings":"","ignoreList":[]}
@@ -12,7 +12,7 @@ import { scaleBand, scaleLinear, scaleTime } from 'd3-scale';
12
12
  import React from 'react';
13
13
  import { AbstractChart } from './AbstractChart';
14
14
  // @ts-ignore
15
- import { minMax, GroupBar, HoverRect, StackBar, Line } from '../..';
15
+ import { minMax, GroupBar, HoverRect, StackBar, Line, YAxis, XAxis } from '../..';
16
16
  import { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';
17
17
  var BarChartComponent = /*#__PURE__*/function (_AbstractChart) {
18
18
  function BarChartComponent() {
@@ -188,6 +188,53 @@ var BarChartComponent = /*#__PURE__*/function (_AbstractChart) {
188
188
  };
189
189
  });
190
190
  }
191
+ }, {
192
+ key: "renderAxis",
193
+ value: function renderAxis() {
194
+ var _this$asProps6 = this.asProps,
195
+ invertAxis = _this$asProps6.invertAxis,
196
+ showXAxis = _this$asProps6.showXAxis,
197
+ showYAxis = _this$asProps6.showYAxis,
198
+ data = _this$asProps6.data,
199
+ axisXValueFormatter = _this$asProps6.axisXValueFormatter,
200
+ axisYValueFormatter = _this$asProps6.axisYValueFormatter,
201
+ multilineXTicks = _this$asProps6.multilineXTicks,
202
+ multilineYTicks = _this$asProps6.multilineYTicks;
203
+ if (!Array.isArray(data)) {
204
+ return null;
205
+ }
206
+ var xTicks = this.xTicks;
207
+ var yTicks = this.yTicks;
208
+ var childrenX = axisXValueFormatter ? function (_ref2) {
209
+ var value = _ref2.value;
210
+ return {
211
+ children: axisXValueFormatter(value)
212
+ };
213
+ } : undefined;
214
+ var childrenY = axisYValueFormatter ? function (_ref3) {
215
+ var value = _ref3.value;
216
+ return {
217
+ children: axisYValueFormatter(value)
218
+ };
219
+ } : undefined;
220
+ return /*#__PURE__*/React.createElement(React.Fragment, null, showYAxis && /*#__PURE__*/React.createElement(YAxis, null, yTicks ? /*#__PURE__*/React.createElement(YAxis.Ticks, {
221
+ primaryText: invertAxis,
222
+ multiline: multilineYTicks,
223
+ ticks: yTicks
224
+ }, childrenY) : /*#__PURE__*/React.createElement(YAxis.Ticks, {
225
+ primaryText: invertAxis,
226
+ multiline: multilineYTicks
227
+ }, childrenY), invertAxis !== true && (yTicks ? /*#__PURE__*/React.createElement(YAxis.Grid, {
228
+ ticks: yTicks
229
+ }) : /*#__PURE__*/React.createElement(YAxis.Grid, null))), showXAxis && /*#__PURE__*/React.createElement(XAxis, null, xTicks ? /*#__PURE__*/React.createElement(XAxis.Ticks, {
230
+ multiline: multilineXTicks,
231
+ ticks: xTicks
232
+ }, childrenX) : /*#__PURE__*/React.createElement(XAxis.Ticks, {
233
+ multiline: multilineXTicks
234
+ }, childrenX), invertAxis === true && (xTicks ? /*#__PURE__*/React.createElement(XAxis.Grid, {
235
+ ticks: xTicks
236
+ }) : /*#__PURE__*/React.createElement(XAxis.Grid, null))));
237
+ }
191
238
  }, {
192
239
  key: "getLegendAriaLabel",
193
240
  value: function getLegendAriaLabel() {
@@ -198,16 +245,16 @@ var BarChartComponent = /*#__PURE__*/function (_AbstractChart) {
198
245
  }, {
199
246
  key: "categoryScale",
200
247
  get: function get() {
201
- var _this$asProps6 = this.asProps,
202
- _this$asProps6$margin = _this$asProps6.marginY,
203
- marginY = _this$asProps6$margin === void 0 ? 40 : _this$asProps6$margin,
204
- _this$asProps6$margin2 = _this$asProps6.marginX,
205
- marginX = _this$asProps6$margin2 === void 0 ? 24 : _this$asProps6$margin2,
206
- plotWidth = _this$asProps6.plotWidth,
207
- plotHeight = _this$asProps6.plotHeight,
208
- invertAxis = _this$asProps6.invertAxis,
209
- data = _this$asProps6.data,
210
- groupKey = _this$asProps6.groupKey;
248
+ var _this$asProps7 = this.asProps,
249
+ _this$asProps7$margin = _this$asProps7.marginY,
250
+ marginY = _this$asProps7$margin === void 0 ? 40 : _this$asProps7$margin,
251
+ _this$asProps7$margin2 = _this$asProps7.marginX,
252
+ marginX = _this$asProps7$margin2 === void 0 ? 24 : _this$asProps7$margin2,
253
+ plotWidth = _this$asProps7.plotWidth,
254
+ plotHeight = _this$asProps7.plotHeight,
255
+ invertAxis = _this$asProps7.invertAxis,
256
+ data = _this$asProps7.data,
257
+ groupKey = _this$asProps7.groupKey;
211
258
  var testItem = data[0][groupKey];
212
259
  var range = invertAxis ? [plotHeight - marginX, this.plotPadding] : [marginY, plotWidth - this.plotPadding];
213
260
  if (testItem instanceof Date && !Number.isNaN(testItem.getMilliseconds())) {
@@ -222,15 +269,15 @@ var BarChartComponent = /*#__PURE__*/function (_AbstractChart) {
222
269
  }, {
223
270
  key: "valueScale",
224
271
  get: function get() {
225
- var _this$asProps7 = this.asProps,
226
- _this$asProps7$margin = _this$asProps7.marginY,
227
- marginY = _this$asProps7$margin === void 0 ? 40 : _this$asProps7$margin,
228
- _this$asProps7$margin2 = _this$asProps7.marginX,
229
- marginX = _this$asProps7$margin2 === void 0 ? 24 : _this$asProps7$margin2,
230
- plotWidth = _this$asProps7.plotWidth,
231
- plotHeight = _this$asProps7.plotHeight,
232
- invertAxis = _this$asProps7.invertAxis,
233
- type = _this$asProps7.type;
272
+ var _this$asProps8 = this.asProps,
273
+ _this$asProps8$margin = _this$asProps8.marginY,
274
+ marginY = _this$asProps8$margin === void 0 ? 40 : _this$asProps8$margin,
275
+ _this$asProps8$margin2 = _this$asProps8.marginX,
276
+ marginX = _this$asProps8$margin2 === void 0 ? 24 : _this$asProps8$margin2,
277
+ plotWidth = _this$asProps8.plotWidth,
278
+ plotHeight = _this$asProps8.plotHeight,
279
+ invertAxis = _this$asProps8.invertAxis,
280
+ type = _this$asProps8.type;
234
281
  var max = type === 'stack' ? _superPropGet(BarChartComponent, "maxStackedValue", this, 1) : Math.max.apply(Math, _toConsumableArray(_superPropGet(BarChartComponent, "flatValues", this, 1)));
235
282
  return scaleLinear().range(invertAxis ? [marginY, plotWidth - this.plotPadding] : [plotHeight - marginX, this.plotPadding]).domain([0, max]);
236
283
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BarChart.js","names":["createComponent","i18nEnhance","scaleBand","scaleLinear","scaleTime","React","AbstractChart","minMax","GroupBar","HoverRect","StackBar","Line","localizedMessages","BarChartComponent","_AbstractChart","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","_data","e","barIndex","barKey","onClickBar","asProps","_inherits","_createClass","key","get","_this$asProps","xScale","invertAxis","valueScale","categoryScale","_this$asProps2","yScale","value","defaultLegendProps","props","trend","undefined","withTrend","renderTrend","_this$asProps3","groupKey","state","trendItem","createElement","data","x","y","color","style","strokeWidth","strokeDasharray","Dots","display","renderChart","_this2","_this$asProps4","_this$asProps4$type","type","_this$state","dataDefinitions","highlightedLine","item","BarComponent","HorizontalBar","Bar","checked","Fragment","id","onClick","handleClickBar","map","index","commonBarComponentProps","transparent","_extends","renderTooltip","_this3","_this$asProps5","onClickHoverRect","Tooltip","wMin","_ref","xIndex","yIndex","dataItem","children","getTooltipChildren","getLegendAriaLabel","getI18nText","chartType","_this$asProps6","_this$asProps6$margin","marginY","_this$asProps6$margin2","marginX","plotWidth","plotHeight","testItem","range","plotPadding","Date","Number","isNaN","getMilliseconds","domain","paddingInner","paddingOuter","_this$asProps7","_this$asProps7$margin","_this$asProps7$margin2","max","_superPropGet","Math","apply","_toConsumableArray","BarChart"],"sources":["../../../../src/component/Chart/BarChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { scaleBand, scaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\nimport { AbstractChart } from './AbstractChart';\nimport type { BaseLegendProps } from './AbstractChart.type';\nimport type { BarChartData, BarChartProps, BarChartType } from './BarChart.type';\n// @ts-ignore\nimport { minMax, GroupBar, HoverRect, StackBar, Line } from '../..';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport type { BarProps } from '../../types';\nimport type { LegendItemKey } from '../ChartLegend/LegendItem/LegendItem.type';\n\nclass BarChartComponent extends AbstractChart<\n BarChartData,\n BarChartProps,\n typeof BarChartComponent.enhance\n> {\n static displayName = 'Chart.Bar';\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const { xScale, invertAxis } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n return invertAxis ? this.valueScale : this.categoryScale;\n }\n\n get yScale() {\n const { yScale, invertAxis } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n return invertAxis ? this.categoryScale : this.valueScale;\n }\n\n protected defaultLegendProps(): Partial<BaseLegendProps> {\n if (this.props.trend !== undefined) {\n return { withTrend: true };\n }\n\n return {};\n }\n\n renderTrend(key: LegendItemKey) {\n const { groupKey, invertAxis, trend } = this.asProps;\n const { withTrend } = this.state;\n const trendItem = trend?.[key];\n\n if (withTrend && trendItem) {\n return (\n <Line\n data={trendItem}\n key={`${key}_${groupKey}`}\n x={invertAxis ? 'y' : 'x'}\n y={invertAxis ? 'x' : 'y'}\n color='wall'\n style={{ strokeWidth: 3, strokeDasharray: 5 }}\n >\n <Line.Dots data={trendItem} display />\n </Line>\n );\n }\n\n return null;\n }\n\n renderChart() {\n const { groupKey, type = 'group', invertAxis } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n if (dataDefinitions.length === 1) {\n const item = dataDefinitions[0];\n const BarComponent = invertAxis ? GroupBar.HorizontalBar : GroupBar.Bar;\n\n return (\n item.checked && (\n <>\n <BarComponent\n x={invertAxis ? item.id : groupKey}\n y={invertAxis ? groupKey : item.id}\n key={item.id}\n color={item.color}\n onClick={this.handleClickBar}\n />\n {this.renderTrend(item.id)}\n </>\n )\n );\n }\n\n if (type === 'group') {\n return (\n <>\n <GroupBar x={invertAxis ? undefined : groupKey} y={invertAxis ? groupKey : undefined}>\n {dataDefinitions.map((item, index) => {\n const BarComponent = invertAxis ? GroupBar.HorizontalBar : GroupBar.Bar;\n\n const commonBarComponentProps: BarProps = {\n color: item.color,\n transparent: highlightedLine !== -1 && highlightedLine !== index,\n onClick: this.handleClickBar,\n };\n\n if (invertAxis) {\n commonBarComponentProps.x = item.id;\n } else {\n commonBarComponentProps.y = item.id;\n }\n\n return item.checked && <BarComponent key={item.id} {...commonBarComponentProps} />;\n })}\n </GroupBar>\n {dataDefinitions.map((item) => item.checked && this.renderTrend(item.id))}\n </>\n );\n }\n\n if (type === 'stack') {\n return (\n <>\n <StackBar x={invertAxis ? undefined : groupKey} y={invertAxis ? groupKey : undefined}>\n {dataDefinitions.map((item, index) => {\n const BarComponent = invertAxis ? StackBar.HorizontalBar : StackBar.Bar;\n\n const commonBarComponentProps: BarProps = {\n color: item.color,\n transparent: highlightedLine !== -1 && highlightedLine !== index,\n onClick: this.handleClickBar,\n };\n\n if (invertAxis) {\n commonBarComponentProps.x = item.id;\n } else {\n commonBarComponentProps.y = item.id;\n }\n\n return item.checked && <BarComponent key={item.id} {...commonBarComponentProps} />;\n })}\n </StackBar>\n {dataDefinitions.map((item) => item.checked && this.renderTrend(item.id))}\n </>\n );\n }\n\n return null;\n }\n\n renderTooltip(): React.ReactNode {\n const { data, groupKey, invertAxis, onClickHoverRect } = this.asProps;\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? undefined : groupKey}\n y={invertAxis ? groupKey : undefined}\n wMin={100}\n onClick={onClickHoverRect}\n >\n {({ xIndex, yIndex }: any) => {\n const index = invertAxis ? yIndex : xIndex;\n const dataItem = data[index];\n\n return {\n children: this.getTooltipChildren({\n Tooltip: HoverRect.Tooltip,\n dataItem,\n }),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Bar' });\n }\n\n private handleClickBar = (\n _data: BarChartData[0],\n e: React.SyntheticEvent,\n barIndex: number,\n barKey: string,\n ) => {\n const { onClickBar } = this.asProps;\n\n if (onClickBar) {\n onClickBar(barIndex, barKey, e);\n }\n };\n\n private get categoryScale() {\n const {\n marginY = 40,\n marginX = 24,\n plotWidth,\n plotHeight,\n invertAxis,\n data,\n groupKey,\n } = this.asProps;\n\n const testItem = data[0][groupKey];\n const range = invertAxis\n ? [plotHeight - marginX, this.plotPadding]\n : [marginY, plotWidth - this.plotPadding];\n\n if (testItem instanceof Date && !Number.isNaN(testItem.getMilliseconds())) {\n const domain = minMax(data, groupKey);\n\n return scaleTime(domain, range);\n }\n\n const domain = data.map((item) => item[groupKey]);\n\n return scaleBand(domain, range).paddingInner(0.4).paddingOuter(0.2);\n }\n\n private get valueScale() {\n const { marginY = 40, marginX = 24, plotWidth, plotHeight, invertAxis, type } = this.asProps;\n\n const max = type === 'stack' ? super.maxStackedValue : Math.max(...super.flatValues);\n\n return scaleLinear()\n .range(\n invertAxis\n ? [marginY, plotWidth - this.plotPadding]\n : [plotHeight - marginX, this.plotPadding],\n )\n .domain([0, max]);\n }\n}\n\nexport const BarChart: BarChartType = createComponent(BarChartComponent);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"BarChart.js","names":["createComponent","i18nEnhance","scaleBand","scaleLinear","scaleTime","React","AbstractChart","minMax","GroupBar","HoverRect","StackBar","Line","YAxis","XAxis","localizedMessages","BarChartComponent","_AbstractChart","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","_data","e","barIndex","barKey","onClickBar","asProps","_inherits","_createClass","key","get","_this$asProps","xScale","invertAxis","valueScale","categoryScale","_this$asProps2","yScale","value","defaultLegendProps","props","trend","undefined","withTrend","renderTrend","_this$asProps3","groupKey","state","trendItem","createElement","data","x","y","color","style","strokeWidth","strokeDasharray","Dots","display","renderChart","_this2","_this$asProps4","_this$asProps4$type","type","_this$state","dataDefinitions","highlightedLine","item","BarComponent","HorizontalBar","Bar","checked","Fragment","id","onClick","handleClickBar","map","index","commonBarComponentProps","transparent","_extends","renderTooltip","_this3","_this$asProps5","onClickHoverRect","Tooltip","wMin","_ref","xIndex","yIndex","dataItem","children","getTooltipChildren","renderAxis","_this$asProps6","showXAxis","showYAxis","axisXValueFormatter","axisYValueFormatter","multilineXTicks","multilineYTicks","isArray","xTicks","yTicks","childrenX","_ref2","childrenY","_ref3","Ticks","primaryText","multiline","ticks","Grid","getLegendAriaLabel","getI18nText","chartType","_this$asProps7","_this$asProps7$margin","marginY","_this$asProps7$margin2","marginX","plotWidth","plotHeight","testItem","range","plotPadding","Date","Number","isNaN","getMilliseconds","domain","paddingInner","paddingOuter","_this$asProps8","_this$asProps8$margin","_this$asProps8$margin2","max","_superPropGet","Math","apply","_toConsumableArray","BarChart"],"sources":["../../../../src/component/Chart/BarChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { scaleBand, scaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\nimport { AbstractChart } from './AbstractChart';\nimport type { BaseLegendProps } from './AbstractChart.type';\nimport type { BarChartData, BarChartProps, BarChartType } from './BarChart.type';\n// @ts-ignore\nimport { minMax, GroupBar, HoverRect, StackBar, Line, YAxis, XAxis } from '../..';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport type { BarProps } from '../../types';\nimport type { LegendItemKey } from '../ChartLegend/LegendItem/LegendItem.type';\n\nclass BarChartComponent extends AbstractChart<\n BarChartData,\n BarChartProps,\n typeof BarChartComponent.enhance\n> {\n static displayName = 'Chart.Bar';\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const { xScale, invertAxis } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n return invertAxis ? this.valueScale : this.categoryScale;\n }\n\n get yScale() {\n const { yScale, invertAxis } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n return invertAxis ? this.categoryScale : this.valueScale;\n }\n\n protected defaultLegendProps(): Partial<BaseLegendProps> {\n if (this.props.trend !== undefined) {\n return { withTrend: true };\n }\n\n return {};\n }\n\n renderTrend(key: LegendItemKey) {\n const { groupKey, invertAxis, trend } = this.asProps;\n const { withTrend } = this.state;\n const trendItem = trend?.[key];\n\n if (withTrend && trendItem) {\n return (\n <Line\n data={trendItem}\n key={`${key}_${groupKey}`}\n x={invertAxis ? 'y' : 'x'}\n y={invertAxis ? 'x' : 'y'}\n color='wall'\n style={{ strokeWidth: 3, strokeDasharray: 5 }}\n >\n <Line.Dots data={trendItem} display />\n </Line>\n );\n }\n\n return null;\n }\n\n renderChart() {\n const { groupKey, type = 'group', invertAxis } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n if (dataDefinitions.length === 1) {\n const item = dataDefinitions[0];\n const BarComponent = invertAxis ? GroupBar.HorizontalBar : GroupBar.Bar;\n\n return (\n item.checked && (\n <>\n <BarComponent\n x={invertAxis ? item.id : groupKey}\n y={invertAxis ? groupKey : item.id}\n key={item.id}\n color={item.color}\n onClick={this.handleClickBar}\n />\n {this.renderTrend(item.id)}\n </>\n )\n );\n }\n\n if (type === 'group') {\n return (\n <>\n <GroupBar x={invertAxis ? undefined : groupKey} y={invertAxis ? groupKey : undefined}>\n {dataDefinitions.map((item, index) => {\n const BarComponent = invertAxis ? GroupBar.HorizontalBar : GroupBar.Bar;\n\n const commonBarComponentProps: BarProps = {\n color: item.color,\n transparent: highlightedLine !== -1 && highlightedLine !== index,\n onClick: this.handleClickBar,\n };\n\n if (invertAxis) {\n commonBarComponentProps.x = item.id;\n } else {\n commonBarComponentProps.y = item.id;\n }\n\n return item.checked && <BarComponent key={item.id} {...commonBarComponentProps} />;\n })}\n </GroupBar>\n {dataDefinitions.map((item) => item.checked && this.renderTrend(item.id))}\n </>\n );\n }\n\n if (type === 'stack') {\n return (\n <>\n <StackBar x={invertAxis ? undefined : groupKey} y={invertAxis ? groupKey : undefined}>\n {dataDefinitions.map((item, index) => {\n const BarComponent = invertAxis ? StackBar.HorizontalBar : StackBar.Bar;\n\n const commonBarComponentProps: BarProps = {\n color: item.color,\n transparent: highlightedLine !== -1 && highlightedLine !== index,\n onClick: this.handleClickBar,\n };\n\n if (invertAxis) {\n commonBarComponentProps.x = item.id;\n } else {\n commonBarComponentProps.y = item.id;\n }\n\n return item.checked && <BarComponent key={item.id} {...commonBarComponentProps} />;\n })}\n </StackBar>\n {dataDefinitions.map((item) => item.checked && this.renderTrend(item.id))}\n </>\n );\n }\n\n return null;\n }\n\n renderTooltip(): React.ReactNode {\n const { data, groupKey, invertAxis, onClickHoverRect } = this.asProps;\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? undefined : groupKey}\n y={invertAxis ? groupKey : undefined}\n wMin={100}\n onClick={onClickHoverRect}\n >\n {({ xIndex, yIndex }: any) => {\n const index = invertAxis ? yIndex : xIndex;\n const dataItem = data[index];\n\n return {\n children: this.getTooltipChildren({\n Tooltip: HoverRect.Tooltip,\n dataItem,\n }),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n protected override renderAxis(): React.ReactNode {\n const {\n invertAxis,\n showXAxis,\n showYAxis,\n data,\n axisXValueFormatter,\n axisYValueFormatter,\n multilineXTicks,\n multilineYTicks,\n } = this.asProps;\n\n if (!Array.isArray(data)) {\n return null;\n }\n\n const xTicks = this.xTicks;\n const yTicks = this.yTicks;\n\n const childrenX = axisXValueFormatter\n ? ({ value }: any) => ({ children: axisXValueFormatter(value) })\n : undefined;\n const childrenY = axisYValueFormatter\n ? ({ value }: any) => ({ children: axisYValueFormatter(value) })\n : undefined;\n\n return (\n <>\n {showYAxis && (\n <YAxis>\n {yTicks\n ? (\n <YAxis.Ticks primaryText={invertAxis} multiline={multilineYTicks} ticks={yTicks}>{childrenY}</YAxis.Ticks>\n )\n : (\n <YAxis.Ticks primaryText={invertAxis} multiline={multilineYTicks}>{childrenY}</YAxis.Ticks>\n )}\n {invertAxis !== true && (yTicks ? <YAxis.Grid ticks={yTicks} /> : <YAxis.Grid />)}\n </YAxis>\n )}\n\n {showXAxis && (\n <XAxis>\n {xTicks\n ? (\n <XAxis.Ticks multiline={multilineXTicks} ticks={xTicks}>{childrenX}</XAxis.Ticks>\n )\n : (\n <XAxis.Ticks multiline={multilineXTicks}>{childrenX}</XAxis.Ticks>\n )}\n {invertAxis === true && (xTicks ? <XAxis.Grid ticks={xTicks} /> : <XAxis.Grid />)}\n </XAxis>\n )}\n </>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Bar' });\n }\n\n private handleClickBar = (\n _data: BarChartData[0],\n e: React.SyntheticEvent,\n barIndex: number,\n barKey: string,\n ) => {\n const { onClickBar } = this.asProps;\n\n if (onClickBar) {\n onClickBar(barIndex, barKey, e);\n }\n };\n\n private get categoryScale() {\n const {\n marginY = 40,\n marginX = 24,\n plotWidth,\n plotHeight,\n invertAxis,\n data,\n groupKey,\n } = this.asProps;\n\n const testItem = data[0][groupKey];\n const range = invertAxis\n ? [plotHeight - marginX, this.plotPadding]\n : [marginY, plotWidth - this.plotPadding];\n\n if (testItem instanceof Date && !Number.isNaN(testItem.getMilliseconds())) {\n const domain = minMax(data, groupKey);\n\n return scaleTime(domain, range);\n }\n\n const domain = data.map((item) => item[groupKey]);\n\n return scaleBand(domain, range).paddingInner(0.4).paddingOuter(0.2);\n }\n\n private get valueScale() {\n const { marginY = 40, marginX = 24, plotWidth, plotHeight, invertAxis, type } = this.asProps;\n\n const max = type === 'stack' ? super.maxStackedValue : Math.max(...super.flatValues);\n\n return scaleLinear()\n .range(\n invertAxis\n ? [marginY, plotWidth - this.plotPadding]\n : [plotHeight - marginX, this.plotPadding],\n )\n .domain([0, max]);\n }\n}\n\nexport const BarChart: BarChartType = createComponent(BarChartComponent);\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"BarChart.type.js","names":[],"sources":["../../../../src/component/Chart/BarChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { Flex } from '@semcore/flex-box';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport type React from 'react';\n\nimport type { AriaNameProps, BaseChartProps } from './AbstractChart.type';\nimport type { LegendItemKey } from '../ChartLegend/LegendItem/LegendItem.type';\n\ntype TrendItem = {\n x: number | string;\n y: number | string;\n};\n\ntype BarKey = string;\n\nexport type BarChartData = Array<Record<BarKey, string | number | Date>>;\n\nexport type BarChartProps = BaseChartProps<BarChartData> & {\n /** Field name that groups the data points */\n groupKey: string;\n /** Custom x-axis scale */\n xScale?: ScaleBand<any> | ScaleTime<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n /** Controls whether bars are grouped side-by-side or stacked */\n type?: 'stack' | 'group';\n /** Optional trend line data to overlay on the bars */\n trend?: Record<LegendItemKey, TrendItem[]>;\n /** Handle click by `HoverRect`. `index` is an index of the data array. */\n onClickHoverRect?: (index: number, e: React.SyntheticEvent) => void;\n /** Handle click by Bar. */\n onClickBar?: (barItem: number, barKey: BarKey, e: React.SyntheticEvent) => void;\n};\n\nexport type BarChartType = Intergalactic.Component<typeof Flex, BarChartProps & AriaNameProps>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"BarChart.type.js","names":[],"sources":["../../../../src/component/Chart/BarChart.type.ts"],"sourcesContent":["import type { Flex } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport type React from 'react';\n\nimport type { AriaNameProps, BaseChartProps } from './AbstractChart.type';\nimport type { LegendItemKey } from '../ChartLegend/LegendItem/LegendItem.type';\n\ntype TrendItem = {\n x: number | string;\n y: number | string;\n};\n\ntype BarKey = string;\n\nexport type BarChartData = Array<Record<BarKey, string | number | Date>>;\n\nexport type BarChartProps = BaseChartProps<BarChartData> & {\n /** Field name that groups the data points */\n groupKey: string;\n /** Custom x-axis scale */\n xScale?: ScaleBand<any> | ScaleTime<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n /** Controls whether bars are grouped side-by-side or stacked */\n type?: 'stack' | 'group';\n /** Optional trend line data to overlay on the bars */\n trend?: Record<LegendItemKey, TrendItem[]>;\n /** Handle click by `HoverRect`. `index` is an index of the data array. */\n onClickHoverRect?: (index: number, e: React.SyntheticEvent) => void;\n /** Handle click by Bar. */\n onClickBar?: (barItem: number, barKey: BarKey, e: React.SyntheticEvent) => void;\n};\n\nexport type BarChartType = Intergalactic.Component<typeof Flex, BarChartProps & AriaNameProps>;\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"BubbleChart.type.js","names":[],"sources":["../../../../src/component/Chart/BubbleChart.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 ScaledValues = {\n x: number[];\n y: number[];\n};\n\nexport type BubbleChartData = Array<{\n x: number;\n y: number;\n value: number;\n label?: string;\n color?: string;\n}>;\n\nexport type BubbleChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<BubbleChartData>,\n 'showTotalInTooltip'\n> & {\n /** Field name that groups the data points */\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 bubble */\n onClickBubble?: (index: number, event: React.SyntheticEvent) => void;\n};\n\nexport type BubbleChartType = Intergalactic.Component<typeof Flex, BubbleChartProps>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"BubbleChart.type.js","names":[],"sources":["../../../../src/component/Chart/BubbleChart.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 ScaledValues = {\n x: number[];\n y: number[];\n};\n\nexport type BubbleChartData = Array<{\n x: number;\n y: number;\n value: number;\n label?: string;\n color?: string;\n}>;\n\nexport type BubbleChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<BubbleChartData>,\n 'showTotalInTooltip'\n> & {\n /** Field name that groups the data points */\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 bubble */\n onClickBubble?: (index: number, event: React.SyntheticEvent) => void;\n};\n\nexport type BubbleChartType = Intergalactic.Component<typeof Flex, BubbleChartProps>;\n"],"mappings":"","ignoreList":[]}
@@ -12,13 +12,13 @@ import { assignProps as _assignProps4 } from "@semcore/core";
12
12
  import { assignProps as _assignProps3 } from "@semcore/core";
13
13
  import { assignProps as _assignProps2 } from "@semcore/core";
14
14
  import { assignProps as _assignProps } from "@semcore/core";
15
+ import { Box, Flex } from '@semcore/base-components';
15
16
  import { createComponent, Root, sstyled } from '@semcore/core';
16
17
  import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
17
18
  import resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';
18
19
  import trottle from '@semcore/core/lib/utils/rafTrottle';
19
20
  import uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';
20
21
  import Divider from '@semcore/divider';
21
- import { Flex, Box } from '@semcore/flex-box';
22
22
  import { Text } from '@semcore/typography';
23
23
  import { scaleThreshold, scaleLinear } from 'd3-scale';
24
24
  import React from 'react';
@@ -1 +1 @@
1
- {"version":3,"file":"CigaretteChart.js","names":["createComponent","Root","sstyled","i18nEnhance","resolveColorEnhance","trottle","uniqueIDEnhancement","Divider","Flex","Box","Text","scaleThreshold","scaleLinear","React","HoverRect","Plot","AbstractChart","NOT_A_VALUE","AnimatedClipPath","localizedMessages","eventToPoint","interpolateValue","Cigarette","DEFAULT_MINIMAL_BAR_WIDTH","DEFAULT_GAP","CigaretteChartComponent","_AbstractChart","props","_this","_classCallCheck","_callSuper","_defineProperty","createRef","event","plotRef","current","_eventToPoint","_eventToPoint2","_slicedToArray","pX","pY","setState","prevState","state","_objectSpread","_inherits","_createClass","key","get","dataDefinitions","filter","_ref7","checked","data","asProps","activeDataDefinitions","_ref8","id","itemValue","value","resolveColor","index","_this$props$colorMap$","_this$props$colorMap","colorMap","concat","getDefaultDataDefinitions","_superPropGet","map","dataDef","columns","slice","defaultLegendProps","legendType","w","totalValue","reduce","acc","_ref9","computeCigaretteItems","_this$asProps","plotWidth","plotHeight","invertAxis","minimalBarWidth","_toConsumableArray","reverse","count","activePositiveDataDefinitions","length","totalGapWidth","Math","max","availableSpace","dataDefinitionsItemSize","_ref0","result","dd","dataWidth","visualWidth","isMinVisible","smallItems","r","extraNeeded","_iterator","_createForOfIteratorHelper","_step","s","n","done","smallItem","err","e","f","donors","donorCapacity","d","_iterator2","_step2","donor","available","share","taken","renderChart","_this2","_this$asProps2","uid","duration","patterns","onClick","_this$state","highlightedLine","offset","items","createElement","Fragment","item","height","width","y","x","dataKey","hide","color","direction","hovered","undefined","renderTooltip","_ref","_this3","_this$asProps3","tooltipTitle","tooltipViewType","showPercentValueInTooltip","styles","showTooltip","_this$state2","STooltipChildrenWrapper","Tooltip","wMin","hideHoverLine","xIndex","visualScale","yIndex","tooltipProps","_ref4","showPercentColumn","_ref3","find","dataDefItem","children","cn","_assignProps","Dot","mr","label","percentValue","tooltipValueFormatter","Title","_assignProps2","style","opacity","textAlign","bold","renderTooltipTotalLine","percentFormatter","total","rawPercent","formattedPercent","round","dataItem","_this$asProps4","showTotalInTooltip","mt","Number","isNaN","renderHeader","_this$asProps$header","header","render","_ref2","_ref6","SChart","_this$asProps5","a11yAltTextConfig","_ref5","_assignProps3","xScale","yScale","dataHints","onPlotMouseMove","onPlotMouseLeave","renderLegend","_assignProps4","getLegendAriaLabel","getI18nText","chartType","cigaretteItems","_cigaretteItems$reduc","_ref1","range","domain","push","lastAddedDomain","_props$invertAxis","showXAxis","showYAxis","showLegend","marginX","marginY","CigaretteChart"],"sources":["../../../../src/component/Chart/CigaretteChart.tsx"],"sourcesContent":["import { createComponent, Root, sstyled } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport Divider from '@semcore/divider';\nimport { Flex, Box } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport { scaleThreshold, scaleLinear, scaleBand } from 'd3-scale';\nimport React from 'react';\n\nimport type { CigaretteChartData, CigaretteChartDataKey, CigaretteChartProps, CigaretteChartType } from './CigaretteChart.type';\n// @ts-ignore\nimport { HoverRect, Plot } from '../..';\nimport type { ChartState } from './AbstractChart';\nimport { AbstractChart, NOT_A_VALUE } from './AbstractChart';\nimport type { ObjectData } from './AbstractChart.type';\n// @ts-ignore\nimport AnimatedClipPath from '../../AnimatedClipPath';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport { eventToPoint, interpolateValue } from '../../utils';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport Cigarette from '../Cigarette/Cigarette';\n\nconst DEFAULT_MINIMAL_BAR_WIDTH = 2;\nconst DEFAULT_GAP = 2;\n\ntype ScaleThresholdConfig = { range: Array<CigaretteChartDataKey>; domain: Array<number> };\n\ntype CigaretteChartState = ChartState & {\n pX: number | null;\n pY: number | null;\n};\n\nclass CigaretteChartComponent extends AbstractChart<\n CigaretteChartData,\n CigaretteChartProps,\n typeof CigaretteChartComponent.enhance,\n CigaretteChartState,\n typeof CigaretteChartComponent.defaultProps\n> {\n static displayName = 'Cigarette.Bar';\n\n static defaultProps: any = (props: CigaretteChartProps) => {\n const invertAxis = props.invertAxis ?? true;\n return {\n invertAxis: invertAxis,\n showXAxis: false,\n showYAxis: false,\n showTooltip: true,\n showLegend: false,\n marginX: 0,\n marginY: 0,\n duration: 500,\n plotWidth: !invertAxis && !props.plotWidth ? 44 : props.plotWidth,\n plotHeight: invertAxis && !props.plotHeight ? 28 : props.plotHeight,\n showPercentValueInTooltip: false,\n minimalBarWidth: DEFAULT_MINIMAL_BAR_WIDTH,\n };\n };\n\n static enhance = [\n resolveColorEnhance(),\n uniqueIDEnhancement(),\n i18nEnhance(localizedMessages),\n ] as const;\n\n constructor(props: CigaretteChartProps) {\n super(props);\n\n this.state = {\n ...this.state,\n pX: null,\n pY: null,\n };\n }\n\n private plotRef = React.createRef<SVGElement>();\n\n protected override plotPadding = 0;\n\n private offset = 0;\n\n private get activeDataDefinitions() {\n const { dataDefinitions } = this.state;\n\n return dataDefinitions.filter(({ checked }) => checked);\n }\n\n private get activePositiveDataDefinitions() {\n const { data } = this.asProps;\n\n return this.activeDataDefinitions.filter(({ id }) => {\n const itemValue = data[id];\n\n return typeof itemValue === 'number' && itemValue > 0;\n });\n }\n\n protected override resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `blue-${5 - index}00`;\n }\n\n protected override getDefaultDataDefinitions(): Array<\n LegendItem & { columns: React.ReactNode[] }\n > {\n const dataDefinitions = super.getDefaultDataDefinitions();\n\n return dataDefinitions.map((dataDef) => {\n dataDef.columns = dataDef.columns.slice(1);\n return dataDef;\n });\n }\n\n protected override defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n w: 'fit-content',\n };\n }\n\n private onPlotMouseMove = trottle((event: React.MouseEvent<HTMLElement>) => {\n if (!this.plotRef.current) return;\n\n const [pX, pY] = eventToPoint(event, this.plotRef.current);\n\n this.setState((prevState) => ({ pX, pY }));\n });\n\n private onPlotMouseLeave = trottle(() => {\n this.setState((prevState) => ({ pX: null, pY: null }));\n });\n\n protected override totalValue() {\n const { data } = this.asProps;\n\n return this.activeDataDefinitions.reduce((acc, { id }) => {\n const itemValue = data[id];\n\n if (typeof itemValue === 'number') {\n acc += itemValue;\n }\n\n return acc;\n }, 0);\n }\n\n private computeCigaretteItems() {\n const { plotWidth, plotHeight, data, invertAxis, minimalBarWidth } = this.asProps;\n\n const dataDefinitions = invertAxis\n ? this.activeDataDefinitions\n : [...this.activeDataDefinitions].reverse();\n\n const count = this.activePositiveDataDefinitions.length;\n const totalGapWidth = DEFAULT_GAP * Math.max(0, count - 1);\n const availableSpace = Math.max(0, (invertAxis ? plotWidth : plotHeight) - totalGapWidth);\n\n const totalValue = this.totalValue();\n\n const dataDefinitionsItemSize = dataDefinitions.map(({ id }) => {\n if (totalValue === 0) {\n return 0;\n }\n\n const itemValue = data[id];\n\n if (typeof itemValue !== 'number') return 0;\n\n return (itemValue / totalValue) * availableSpace;\n });\n\n const result = dataDefinitions.map((dd, index) => ({\n ...dd,\n value: data[dd.id],\n dataWidth: dataDefinitionsItemSize[index],\n visualWidth: dataDefinitionsItemSize[index],\n isMinVisible: false,\n }));\n\n const smallItems = result.filter((r) => {\n const { value, dataWidth } = r;\n\n if (typeof value !== 'number') return false;\n\n return value > 0 && dataWidth < minimalBarWidth;\n });\n\n if (smallItems.length === 0) return result;\n\n let extraNeeded = 0;\n\n for (const smallItem of smallItems) {\n extraNeeded += minimalBarWidth - smallItem.dataWidth;\n smallItem.visualWidth = minimalBarWidth;\n smallItem.isMinVisible = true;\n }\n\n const donors = result.filter((r) => !r.isMinVisible && r.dataWidth > minimalBarWidth);\n const donorCapacity = donors.reduce(\n (s, d) => s + (d.dataWidth - minimalBarWidth),\n 0,\n );\n\n for (const donor of donors) {\n const available = donor.dataWidth - minimalBarWidth;\n const share = available / donorCapacity;\n const taken = share * extraNeeded;\n donor.visualWidth = donor.dataWidth - taken;\n }\n\n return result;\n };\n\n get xScale() {\n const { plotWidth } = this.asProps;\n\n return scaleLinear([0, plotWidth]);\n }\n\n get yScale() {\n const { plotHeight } = this.asProps;\n\n return scaleLinear([plotHeight, 0]);\n }\n\n renderChart() {\n const { invertAxis, data, uid, duration, patterns, plotHeight, plotWidth, onClick } =\n this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n this.offset = 0;\n\n const items = this.computeCigaretteItems();\n\n return (\n <>\n {items.map((item, index) => {\n const { visualWidth, id } = item;\n const value = data[id];\n\n if (value === interpolateValue || value === null) {\n return null;\n }\n\n const height = invertAxis ? plotHeight - DEFAULT_GAP * 2 : plotWidth - DEFAULT_GAP * 2;\n const width = visualWidth;\n const y = DEFAULT_GAP;\n const x = this.offset;\n const r = height < 28 ? 2 : 4;\n\n this.offset += visualWidth;\n\n if (index < items.length - 1) {\n this.offset += DEFAULT_GAP;\n }\n\n return (\n <Cigarette\n key={item.id}\n dataKey={item.id}\n index={index}\n y={invertAxis ? y : x}\n x={invertAxis ? x : y}\n width={invertAxis ? width : height}\n height={invertAxis ? height : width}\n uid={uid}\n hide={!item.checked}\n duration={duration}\n r={index === 0 || index === dataDefinitions.length - 1 ? r : 0}\n color={item.color}\n patterns={patterns}\n direction={invertAxis ? 'horizontal' : 'vertical'}\n onClick={onClick}\n hovered={\n highlightedLine === index ? true : highlightedLine === -1 ? undefined : false\n }\n />\n );\n })}\n\n <AnimatedClipPath\n aria-hidden\n duration={duration}\n id={uid}\n x='0'\n y='0'\n width={invertAxis ? 0 : plotWidth}\n height={invertAxis ? plotHeight : 0}\n />\n </>\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { data, invertAxis, tooltipTitle, tooltipViewType, showPercentValueInTooltip, styles, showTooltip } =\n this.asProps;\n const { dataDefinitions, pX, pY } = this.state;\n const STooltipChildrenWrapper = Root;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? '' : undefined}\n y={invertAxis ? undefined : ''}\n wMin={100}\n hideHoverLine={true}\n xIndex={pX !== null ? this.visualScale(pX) : undefined}\n yIndex={pY !== null ? this.visualScale(pY) : undefined}\n >\n {(tooltipProps: any) => {\n const dataKey = invertAxis ? tooltipProps.xIndex : tooltipProps.yIndex;\n const showPercentColumn = showPercentValueInTooltip && this.totalValue() !== 0;\n\n if (tooltipViewType === 'single') {\n const item = dataDefinitions.find((dataDefItem) => dataDefItem.id === dataKey);\n if (!item) {\n return {\n children: null,\n };\n }\n\n return {\n children: sstyled(styles)(\n <STooltipChildrenWrapper render={Box} columnsCount={showPercentColumn ? '3' : '2'} __excludeProps={['data']}>\n <HoverRect.Tooltip.Dot mr={2} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n { showPercentColumn && <Text textAlign='end' color='text-secondary'>{this.percentValue(data, item.id)}</Text> }\n <Text textAlign='end' bold>{this.tooltipValueFormatter(data[item.id])}</Text>\n </STooltipChildrenWrapper>,\n ),\n };\n }\n\n return {\n children: sstyled(styles)(\n <Flex direction='column'>\n {tooltipTitle && (\n <HoverRect.Tooltip.Title>Some tooltip title</HoverRect.Tooltip.Title>\n )}\n\n <STooltipChildrenWrapper render={Box} columnsCount={showPercentColumn ? '3' : '2'} __excludeProps={['data']}>\n {dataDefinitions.map((item) => {\n const style = { opacity: item.id === dataKey ? 1 : 0.3 };\n return (\n item.checked && (\n <React.Fragment key={item.id}>\n <HoverRect.Tooltip.Dot mr={2} color={item.color} style={style}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n { showPercentColumn && <Text textAlign='end' color='text-secondary' style={style}>{this.percentValue(data, item.id)}</Text> }\n <Text textAlign='end' bold style={style}>{this.tooltipValueFormatter(data[item.id])}</Text>\n </React.Fragment>\n )\n );\n })}\n\n {this.renderTooltipTotalLine(data)}\n </STooltipChildrenWrapper>\n </Flex>,\n ),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n protected percentValue(data: ObjectData, key: string): string {\n const { percentFormatter } = this.asProps;\n\n const total = this.totalValue();\n\n const value = data[key];\n\n if (typeof value === 'number' && total !== 0) {\n const rawPercent = (100 * value) / total;\n const formattedPercent = percentFormatter ? percentFormatter(rawPercent) : Math.round(rawPercent);\n\n return `${formattedPercent}%`;\n }\n\n if (value === null) {\n return `0%`;\n }\n\n return NOT_A_VALUE;\n }\n\n protected override renderTooltipTotalLine<D extends ObjectData>(dataItem: D) {\n const { showTotalInTooltip, showPercentValueInTooltip } = this.asProps;\n\n if (!showTotalInTooltip) {\n return null;\n }\n\n const total = this.totalValue();\n\n return (\n <>\n <Box mt={2} mr={2}>Total</Box>\n { showPercentValueInTooltip && total !== 0 && <Text mt={2} textAlign='end' color='text-secondary'>{Number.isNaN(total) ? NOT_A_VALUE : '100%'}</Text> }\n <Text mt={2} textAlign='end' bold>{Number.isNaN(total) ? NOT_A_VALUE : total}</Text>\n </>\n );\n }\n\n renderHeader() {\n return this.asProps.header ?? null;\n }\n\n override render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, invertAxis, a11yAltTextConfig } = this.asProps;\n\n const header = this.renderHeader();\n\n if (invertAxis) {\n return sstyled(styles)(\n <SChart render={Flex} gap={6} direction='column' __excludeProps={['onClick', 'data']}>\n <Flex direction='column'>\n {header}\n <Plot\n ref={this.plotRef}\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n onMouseMove={this.onPlotMouseMove}\n onMouseLeave={this.onPlotMouseLeave}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </Flex>\n {this.renderLegend()}\n </SChart>,\n );\n }\n\n return sstyled(styles)(\n <SChart render={Flex} gap={6} __excludeProps={['onClick', 'data']}>\n <Plot\n ref={this.plotRef}\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n onMouseMove={this.onPlotMouseMove}\n onMouseLeave={this.onPlotMouseLeave}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n <Flex direction='column' gap={2}>\n {header && (\n <>\n <Box>{header}</Box>\n <Divider />\n </>\n )}\n {this.renderLegend()}\n </Flex>\n </SChart>,\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Cigarette' });\n }\n\n private get visualScale() {\n const cigaretteItems = this.computeCigaretteItems();\n\n const { range, domain } = cigaretteItems.reduce<ScaleThresholdConfig>((acc, { id, visualWidth }, index) => {\n const { range, domain } = acc;\n\n if (visualWidth) {\n range.push(id);\n\n if (domain.length === 0) {\n domain.push(visualWidth + DEFAULT_GAP);\n\n return acc;\n }\n\n if (index !== cigaretteItems.length - 1) {\n const lastAddedDomain = domain[domain.length - 1];\n domain.push(lastAddedDomain + visualWidth + DEFAULT_GAP);\n }\n }\n\n return acc;\n }, { range: [], domain: [] });\n\n return scaleThreshold(domain, range);\n }\n}\n\nexport const CigaretteChart: CigaretteChartType = createComponent(CigaretteChartComponent);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"CigaretteChart.js","names":["Box","Flex","createComponent","Root","sstyled","i18nEnhance","resolveColorEnhance","trottle","uniqueIDEnhancement","Divider","Text","scaleThreshold","scaleLinear","React","HoverRect","Plot","AbstractChart","NOT_A_VALUE","AnimatedClipPath","localizedMessages","eventToPoint","interpolateValue","Cigarette","DEFAULT_MINIMAL_BAR_WIDTH","DEFAULT_GAP","CigaretteChartComponent","_AbstractChart","props","_this","_classCallCheck","_callSuper","_defineProperty","createRef","event","plotRef","current","_eventToPoint","_eventToPoint2","_slicedToArray","pX","pY","setState","prevState","state","_objectSpread","_inherits","_createClass","key","get","dataDefinitions","filter","_ref7","checked","data","asProps","activeDataDefinitions","_ref8","id","itemValue","value","resolveColor","index","_this$props$colorMap$","_this$props$colorMap","colorMap","concat","getDefaultDataDefinitions","_superPropGet","map","dataDef","columns","slice","defaultLegendProps","legendType","w","totalValue","reduce","acc","_ref9","computeCigaretteItems","_this$asProps","plotWidth","plotHeight","invertAxis","minimalBarWidth","_toConsumableArray","reverse","count","activePositiveDataDefinitions","length","totalGapWidth","Math","max","availableSpace","dataDefinitionsItemSize","_ref0","result","dd","dataWidth","visualWidth","isMinVisible","smallItems","r","extraNeeded","_iterator","_createForOfIteratorHelper","_step","s","n","done","smallItem","err","e","f","donors","donorCapacity","d","_iterator2","_step2","donor","available","share","taken","renderChart","_this2","_this$asProps2","uid","duration","patterns","onClick","_this$state","highlightedLine","offset","items","createElement","Fragment","item","height","width","y","x","dataKey","hide","color","direction","hovered","undefined","renderTooltip","_ref","_this3","_this$asProps3","tooltipTitle","tooltipViewType","showPercentValueInTooltip","styles","showTooltip","_this$state2","STooltipChildrenWrapper","Tooltip","wMin","hideHoverLine","xIndex","visualScale","yIndex","tooltipProps","_ref4","showPercentColumn","_ref3","find","dataDefItem","children","cn","_assignProps","Dot","mr","label","percentValue","tooltipValueFormatter","Title","_assignProps2","style","opacity","textAlign","bold","renderTooltipTotalLine","percentFormatter","total","rawPercent","formattedPercent","round","dataItem","_this$asProps4","showTotalInTooltip","mt","Number","isNaN","renderHeader","_this$asProps$header","header","render","_ref2","_ref6","SChart","_this$asProps5","a11yAltTextConfig","_ref5","_assignProps3","xScale","yScale","dataHints","onPlotMouseMove","onPlotMouseLeave","renderLegend","_assignProps4","getLegendAriaLabel","getI18nText","chartType","cigaretteItems","_cigaretteItems$reduc","_ref1","range","domain","push","lastAddedDomain","_props$invertAxis","showXAxis","showYAxis","showLegend","marginX","marginY","CigaretteChart"],"sources":["../../../../src/component/Chart/CigaretteChart.tsx"],"sourcesContent":["import { Box, Flex } from '@semcore/base-components';\nimport { createComponent, Root, sstyled } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport Divider from '@semcore/divider';\nimport { Text } from '@semcore/typography';\nimport { scaleThreshold, scaleLinear, scaleBand } from 'd3-scale';\nimport React from 'react';\n\nimport type { CigaretteChartData, CigaretteChartDataKey, CigaretteChartProps, CigaretteChartType } from './CigaretteChart.type';\n// @ts-ignore\nimport { HoverRect, Plot } from '../..';\nimport type { ChartState } from './AbstractChart';\nimport { AbstractChart, NOT_A_VALUE } from './AbstractChart';\nimport type { ObjectData } from './AbstractChart.type';\n// @ts-ignore\nimport AnimatedClipPath from '../../AnimatedClipPath';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport { eventToPoint, interpolateValue } from '../../utils';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport Cigarette from '../Cigarette/Cigarette';\n\nconst DEFAULT_MINIMAL_BAR_WIDTH = 2;\nconst DEFAULT_GAP = 2;\n\ntype ScaleThresholdConfig = { range: Array<CigaretteChartDataKey>; domain: Array<number> };\n\ntype CigaretteChartState = ChartState & {\n pX: number | null;\n pY: number | null;\n};\n\nclass CigaretteChartComponent extends AbstractChart<\n CigaretteChartData,\n CigaretteChartProps,\n typeof CigaretteChartComponent.enhance,\n typeof CigaretteChartComponent.defaultProps,\n CigaretteChartState\n> {\n static displayName = 'Cigarette.Bar';\n\n static defaultProps: any = (props: CigaretteChartProps) => {\n const invertAxis = props.invertAxis ?? true;\n return {\n invertAxis: invertAxis,\n showXAxis: false,\n showYAxis: false,\n showTooltip: true,\n showLegend: false,\n marginX: 0,\n marginY: 0,\n duration: 500,\n plotWidth: !invertAxis && !props.plotWidth ? 44 : props.plotWidth,\n plotHeight: invertAxis && !props.plotHeight ? 28 : props.plotHeight,\n showPercentValueInTooltip: false,\n minimalBarWidth: DEFAULT_MINIMAL_BAR_WIDTH,\n };\n };\n\n static enhance = [\n resolveColorEnhance(),\n uniqueIDEnhancement(),\n i18nEnhance(localizedMessages),\n ] as const;\n\n constructor(props: CigaretteChartProps) {\n super(props);\n\n this.state = {\n ...this.state,\n pX: null,\n pY: null,\n };\n }\n\n private plotRef = React.createRef<SVGElement>();\n\n protected override plotPadding = 0;\n\n private offset = 0;\n\n private get activeDataDefinitions() {\n const { dataDefinitions } = this.state;\n\n return dataDefinitions.filter(({ checked }) => checked);\n }\n\n private get activePositiveDataDefinitions() {\n const { data } = this.asProps;\n\n return this.activeDataDefinitions.filter(({ id }) => {\n const itemValue = data[id];\n\n return typeof itemValue === 'number' && itemValue > 0;\n });\n }\n\n protected override resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `blue-${5 - index}00`;\n }\n\n protected override getDefaultDataDefinitions(): Array<\n LegendItem & { columns: React.ReactNode[] }\n > {\n const dataDefinitions = super.getDefaultDataDefinitions();\n\n return dataDefinitions.map((dataDef) => {\n dataDef.columns = dataDef.columns.slice(1);\n return dataDef;\n });\n }\n\n protected override defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n w: 'fit-content',\n };\n }\n\n private onPlotMouseMove = trottle((event: React.MouseEvent<HTMLElement>) => {\n if (!this.plotRef.current) return;\n\n const [pX, pY] = eventToPoint(event, this.plotRef.current);\n\n this.setState((prevState) => ({ pX, pY }));\n });\n\n private onPlotMouseLeave = trottle(() => {\n this.setState((prevState) => ({ pX: null, pY: null }));\n });\n\n protected override totalValue() {\n const { data } = this.asProps;\n\n return this.activeDataDefinitions.reduce((acc, { id }) => {\n const itemValue = data[id];\n\n if (typeof itemValue === 'number') {\n acc += itemValue;\n }\n\n return acc;\n }, 0);\n }\n\n private computeCigaretteItems() {\n const { plotWidth, plotHeight, data, invertAxis, minimalBarWidth } = this.asProps;\n\n const dataDefinitions = invertAxis\n ? this.activeDataDefinitions\n : [...this.activeDataDefinitions].reverse();\n\n const count = this.activePositiveDataDefinitions.length;\n const totalGapWidth = DEFAULT_GAP * Math.max(0, count - 1);\n const availableSpace = Math.max(0, (invertAxis ? plotWidth : plotHeight) - totalGapWidth);\n\n const totalValue = this.totalValue();\n\n const dataDefinitionsItemSize = dataDefinitions.map(({ id }) => {\n if (totalValue === 0) {\n return 0;\n }\n\n const itemValue = data[id];\n\n if (typeof itemValue !== 'number') return 0;\n\n return (itemValue / totalValue) * availableSpace;\n });\n\n const result = dataDefinitions.map((dd, index) => ({\n ...dd,\n value: data[dd.id],\n dataWidth: dataDefinitionsItemSize[index],\n visualWidth: dataDefinitionsItemSize[index],\n isMinVisible: false,\n }));\n\n const smallItems = result.filter((r) => {\n const { value, dataWidth } = r;\n\n if (typeof value !== 'number') return false;\n\n return value > 0 && dataWidth < minimalBarWidth;\n });\n\n if (smallItems.length === 0) return result;\n\n let extraNeeded = 0;\n\n for (const smallItem of smallItems) {\n extraNeeded += minimalBarWidth - smallItem.dataWidth;\n smallItem.visualWidth = minimalBarWidth;\n smallItem.isMinVisible = true;\n }\n\n const donors = result.filter((r) => !r.isMinVisible && r.dataWidth > minimalBarWidth);\n const donorCapacity = donors.reduce(\n (s, d) => s + (d.dataWidth - minimalBarWidth),\n 0,\n );\n\n for (const donor of donors) {\n const available = donor.dataWidth - minimalBarWidth;\n const share = available / donorCapacity;\n const taken = share * extraNeeded;\n donor.visualWidth = donor.dataWidth - taken;\n }\n\n return result;\n };\n\n get xScale() {\n const { plotWidth } = this.asProps;\n\n return scaleLinear([0, plotWidth]);\n }\n\n get yScale() {\n const { plotHeight } = this.asProps;\n\n return scaleLinear([plotHeight, 0]);\n }\n\n renderChart() {\n const { invertAxis, data, uid, duration, patterns, plotHeight, plotWidth, onClick } =\n this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n this.offset = 0;\n\n const items = this.computeCigaretteItems();\n\n return (\n <>\n {items.map((item, index) => {\n const { visualWidth, id } = item;\n const value = data[id];\n\n if (value === interpolateValue || value === null) {\n return null;\n }\n\n const height = invertAxis ? plotHeight - DEFAULT_GAP * 2 : plotWidth - DEFAULT_GAP * 2;\n const width = visualWidth;\n const y = DEFAULT_GAP;\n const x = this.offset;\n const r = height < 28 ? 2 : 4;\n\n this.offset += visualWidth;\n\n if (index < items.length - 1) {\n this.offset += DEFAULT_GAP;\n }\n\n return (\n <Cigarette\n key={item.id}\n dataKey={item.id}\n index={index}\n y={invertAxis ? y : x}\n x={invertAxis ? x : y}\n width={invertAxis ? width : height}\n height={invertAxis ? height : width}\n uid={uid}\n hide={!item.checked}\n duration={duration}\n r={index === 0 || index === dataDefinitions.length - 1 ? r : 0}\n color={item.color}\n patterns={patterns}\n direction={invertAxis ? 'horizontal' : 'vertical'}\n onClick={onClick}\n hovered={\n highlightedLine === index ? true : highlightedLine === -1 ? undefined : false\n }\n />\n );\n })}\n\n <AnimatedClipPath\n aria-hidden\n duration={duration}\n id={uid}\n x='0'\n y='0'\n width={invertAxis ? 0 : plotWidth}\n height={invertAxis ? plotHeight : 0}\n />\n </>\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { data, invertAxis, tooltipTitle, tooltipViewType, showPercentValueInTooltip, styles, showTooltip } =\n this.asProps;\n const { dataDefinitions, pX, pY } = this.state;\n const STooltipChildrenWrapper = Root;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? '' : undefined}\n y={invertAxis ? undefined : ''}\n wMin={100}\n hideHoverLine={true}\n xIndex={pX !== null ? this.visualScale(pX) : undefined}\n yIndex={pY !== null ? this.visualScale(pY) : undefined}\n >\n {(tooltipProps: any) => {\n const dataKey = invertAxis ? tooltipProps.xIndex : tooltipProps.yIndex;\n const showPercentColumn = showPercentValueInTooltip && this.totalValue() !== 0;\n\n if (tooltipViewType === 'single') {\n const item = dataDefinitions.find((dataDefItem) => dataDefItem.id === dataKey);\n if (!item) {\n return {\n children: null,\n };\n }\n\n return {\n children: sstyled(styles)(\n <STooltipChildrenWrapper render={Box} columnsCount={showPercentColumn ? '3' : '2'} __excludeProps={['data']}>\n <HoverRect.Tooltip.Dot mr={2} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n { showPercentColumn && <Text textAlign='end' color='text-secondary'>{this.percentValue(data, item.id)}</Text> }\n <Text textAlign='end' bold>{this.tooltipValueFormatter(data[item.id])}</Text>\n </STooltipChildrenWrapper>,\n ),\n };\n }\n\n return {\n children: sstyled(styles)(\n <Flex direction='column'>\n {tooltipTitle && (\n <HoverRect.Tooltip.Title>Some tooltip title</HoverRect.Tooltip.Title>\n )}\n\n <STooltipChildrenWrapper render={Box} columnsCount={showPercentColumn ? '3' : '2'} __excludeProps={['data']}>\n {dataDefinitions.map((item) => {\n const style = { opacity: item.id === dataKey ? 1 : 0.3 };\n return (\n item.checked && (\n <React.Fragment key={item.id}>\n <HoverRect.Tooltip.Dot mr={2} color={item.color} style={style}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n { showPercentColumn && <Text textAlign='end' color='text-secondary' style={style}>{this.percentValue(data, item.id)}</Text> }\n <Text textAlign='end' bold style={style}>{this.tooltipValueFormatter(data[item.id])}</Text>\n </React.Fragment>\n )\n );\n })}\n\n {this.renderTooltipTotalLine(data)}\n </STooltipChildrenWrapper>\n </Flex>,\n ),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n protected percentValue(data: ObjectData, key: string): string {\n const { percentFormatter } = this.asProps;\n\n const total = this.totalValue();\n\n const value = data[key];\n\n if (typeof value === 'number' && total !== 0) {\n const rawPercent = (100 * value) / total;\n const formattedPercent = percentFormatter ? percentFormatter(rawPercent) : Math.round(rawPercent);\n\n return `${formattedPercent}%`;\n }\n\n if (value === null) {\n return `0%`;\n }\n\n return NOT_A_VALUE;\n }\n\n protected override renderTooltipTotalLine<D extends ObjectData>(dataItem: D) {\n const { showTotalInTooltip, showPercentValueInTooltip } = this.asProps;\n\n if (!showTotalInTooltip) {\n return null;\n }\n\n const total = this.totalValue();\n\n return (\n <>\n <Box mt={2} mr={2}>Total</Box>\n { showPercentValueInTooltip && total !== 0 && <Text mt={2} textAlign='end' color='text-secondary'>{Number.isNaN(total) ? NOT_A_VALUE : '100%'}</Text> }\n <Text mt={2} textAlign='end' bold>{Number.isNaN(total) ? NOT_A_VALUE : total}</Text>\n </>\n );\n }\n\n renderHeader() {\n return this.asProps.header ?? null;\n }\n\n override render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, invertAxis, a11yAltTextConfig } = this.asProps;\n\n const header = this.renderHeader();\n\n if (invertAxis) {\n return sstyled(styles)(\n <SChart render={Flex} gap={6} direction='column' __excludeProps={['onClick', 'data']}>\n <Flex direction='column'>\n {header}\n <Plot\n ref={this.plotRef}\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n onMouseMove={this.onPlotMouseMove}\n onMouseLeave={this.onPlotMouseLeave}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </Flex>\n {this.renderLegend()}\n </SChart>,\n );\n }\n\n return sstyled(styles)(\n <SChart render={Flex} gap={6} __excludeProps={['onClick', 'data']}>\n <Plot\n ref={this.plotRef}\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n onMouseMove={this.onPlotMouseMove}\n onMouseLeave={this.onPlotMouseLeave}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n <Flex direction='column' gap={2}>\n {header && (\n <>\n <Box>{header}</Box>\n <Divider />\n </>\n )}\n {this.renderLegend()}\n </Flex>\n </SChart>,\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Cigarette' });\n }\n\n private get visualScale() {\n const cigaretteItems = this.computeCigaretteItems();\n\n const { range, domain } = cigaretteItems.reduce<ScaleThresholdConfig>((acc, { id, visualWidth }, index) => {\n const { range, domain } = acc;\n\n if (visualWidth) {\n range.push(id);\n\n if (domain.length === 0) {\n domain.push(visualWidth + DEFAULT_GAP);\n\n return acc;\n }\n\n if (index !== cigaretteItems.length - 1) {\n const lastAddedDomain = domain[domain.length - 1];\n domain.push(lastAddedDomain + visualWidth + DEFAULT_GAP);\n }\n }\n\n return acc;\n }, { range: [], domain: [] });\n\n return scaleThreshold(domain, range);\n }\n}\n\nexport const CigaretteChart: CigaretteChartType = createComponent(CigaretteChartComponent);\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"CompactHorizontalBarChart.type.js","names":[],"sources":["../../../../src/component/Chart/CompactHorizontalBarChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { Flex } from '@semcore/flex-box';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport type React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\ntype BarKey = string;\n\nexport type CompactHorizontalBarChartData = Array<Record<BarKey, number | string>>;\n\nexport type CompactHorizontalBarChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<CompactHorizontalBarChartData>,\n 'showTotalInTooltip'\n> & {\n /** Field name from data array for the x-axis values */\n x: string;\n /** Field name from data array for the y-axis values */\n y: string;\n /** Custom x-axis scale */\n xScale?: ScaleBand<any> | ScaleTime<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n\n /** Handle click by `HoverRect`. `index` is an index of the data array. */\n onClickHoverRect?: (index: number, e: React.SyntheticEvent) => void;\n\n /** Handle click by Bar. */\n onClickBar?: (barItem: number, e: React.SyntheticEvent) => void;\n};\n\nexport type CompactHorizontalBarChartType = Intergalactic.Component<\n typeof Flex,\n CompactHorizontalBarChartProps\n>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"CompactHorizontalBarChart.type.js","names":[],"sources":["../../../../src/component/Chart/CompactHorizontalBarChart.type.ts"],"sourcesContent":["import type { Flex } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport type React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\ntype BarKey = string;\n\nexport type CompactHorizontalBarChartData = Array<Record<BarKey, number | string>>;\n\nexport type CompactHorizontalBarChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<CompactHorizontalBarChartData>,\n 'showTotalInTooltip'\n> & {\n /** Field name from data array for the x-axis values */\n x: string;\n /** Field name from data array for the y-axis values */\n y: string;\n /** Custom x-axis scale */\n xScale?: ScaleBand<any> | ScaleTime<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n\n /** Handle click by `HoverRect`. `index` is an index of the data array. */\n onClickHoverRect?: (index: number, e: React.SyntheticEvent) => void;\n\n /** Handle click by Bar. */\n onClickBar?: (barItem: number, e: React.SyntheticEvent) => void;\n};\n\nexport type CompactHorizontalBarChartType = Intergalactic.Component<\n typeof Flex,\n CompactHorizontalBarChartProps\n>;\n"],"mappings":"","ignoreList":[]}
@@ -3,9 +3,9 @@ import _createClass from "@babel/runtime/helpers/createClass";
3
3
  import _callSuper from "@babel/runtime/helpers/callSuper";
4
4
  import _inherits from "@babel/runtime/helpers/inherits";
5
5
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
6
+ import { Flex } from '@semcore/base-components';
6
7
  import { createComponent } from '@semcore/core';
7
8
  import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
8
- import { Flex } from '@semcore/flex-box';
9
9
  import { Text } from '@semcore/typography';
10
10
  import { scaleLinear } from 'd3-scale';
11
11
  import React from 'react';
@@ -1 +1 @@
1
- {"version":3,"file":"DonutChart.js","names":["createComponent","i18nEnhance","Flex","Text","scaleLinear","React","Donut","AbstractChart","localizedMessages","DonutChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","xScale","asProps","yScale","value","defaultLegendProps","legendType","renderChart","_this$asProps","innerRadius","halfsize","innerLabel","onClickPie","_this$state","state","dataDefinitions","highlightedLine","checkedLegendItems","filter","item","checked","createElement","onClick","length","EmptyData","map","index","Pie","id","dataKey","name","label","color","active","Label","renderTooltip","_this","data","Tooltip","_ref","title","find","children","Fragment","Title","justifyContent","bold","tooltipValueFormatter","getLegendAriaLabel","getI18nText","chartType","_defineProperty","direction","alignItems","marginX","marginY","DonutChart"],"sources":["../../../../src/component/Chart/DonutChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Flex } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport { scaleLinear } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { Donut } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { DonutChartData, DonutChartProps, DonutChartType } from './DonutChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass DonutChartComponent extends AbstractChart<\n DonutChartData,\n DonutChartProps,\n typeof DonutChartComponent.enhance\n> {\n static displayName = 'Chart.Donut';\n static defaultProps: Partial<DonutChartProps> = {\n direction: 'row-reverse',\n alignItems: 'flex-start',\n innerRadius: 100,\n marginX: 0,\n marginY: 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 defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n };\n }\n\n renderChart() {\n const { innerRadius, halfsize, innerLabel, onClickPie } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n const checkedLegendItems = dataDefinitions.filter((item) => item.checked);\n\n return (\n <Donut onClick={onClickPie} halfsize={halfsize} innerRadius={innerRadius}>\n {checkedLegendItems.length === 0 && <Donut.EmptyData />}\n {checkedLegendItems.map((item, index) => {\n return (\n <Donut.Pie\n key={item.id}\n dataKey={item.id}\n name={item.label}\n color={item.color}\n active={highlightedLine === index}\n />\n );\n })}\n {innerLabel && <Donut.Label>{innerLabel}</Donut.Label>}\n </Donut>\n );\n }\n\n renderTooltip() {\n const { data } = this.asProps;\n const { dataDefinitions } = this.state;\n\n return (\n <Donut.Tooltip>\n {({ dataKey }: any) => {\n const title = dataDefinitions.find((item) => item.id === dataKey);\n\n return {\n children: (\n <>\n <Donut.Tooltip.Title>{title?.label || dataKey}</Donut.Tooltip.Title>\n <Flex justifyContent='space-between'>\n <Text bold>{this.tooltipValueFormatter(data[dataKey])}</Text>\n </Flex>\n </>\n ),\n };\n }}\n </Donut.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Donut' });\n }\n}\n\nexport const DonutChart: DonutChartType = createComponent(DonutChartComponent);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DonutChart.js","names":["Flex","createComponent","i18nEnhance","Text","scaleLinear","React","Donut","AbstractChart","localizedMessages","DonutChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","xScale","asProps","yScale","value","defaultLegendProps","legendType","renderChart","_this$asProps","innerRadius","halfsize","innerLabel","onClickPie","_this$state","state","dataDefinitions","highlightedLine","checkedLegendItems","filter","item","checked","createElement","onClick","length","EmptyData","map","index","Pie","id","dataKey","name","label","color","active","Label","renderTooltip","_this","data","Tooltip","_ref","title","find","children","Fragment","Title","justifyContent","bold","tooltipValueFormatter","getLegendAriaLabel","getI18nText","chartType","_defineProperty","direction","alignItems","marginX","marginY","DonutChart"],"sources":["../../../../src/component/Chart/DonutChart.tsx"],"sourcesContent":["import { Flex } from '@semcore/base-components';\nimport { 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\n// @ts-ignore\nimport { Donut } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { DonutChartData, DonutChartProps, DonutChartType } from './DonutChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass DonutChartComponent extends AbstractChart<\n DonutChartData,\n DonutChartProps,\n typeof DonutChartComponent.enhance\n> {\n static displayName = 'Chart.Donut';\n static defaultProps: Partial<DonutChartProps> = {\n direction: 'row-reverse',\n alignItems: 'flex-start',\n innerRadius: 100,\n marginX: 0,\n marginY: 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 defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n };\n }\n\n renderChart() {\n const { innerRadius, halfsize, innerLabel, onClickPie } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n const checkedLegendItems = dataDefinitions.filter((item) => item.checked);\n\n return (\n <Donut onClick={onClickPie} halfsize={halfsize} innerRadius={innerRadius}>\n {checkedLegendItems.length === 0 && <Donut.EmptyData />}\n {checkedLegendItems.map((item, index) => {\n return (\n <Donut.Pie\n key={item.id}\n dataKey={item.id}\n name={item.label}\n color={item.color}\n active={highlightedLine === index}\n />\n );\n })}\n {innerLabel && <Donut.Label>{innerLabel}</Donut.Label>}\n </Donut>\n );\n }\n\n renderTooltip() {\n const { data } = this.asProps;\n const { dataDefinitions } = this.state;\n\n return (\n <Donut.Tooltip>\n {({ dataKey }: any) => {\n const title = dataDefinitions.find((item) => item.id === dataKey);\n\n return {\n children: (\n <>\n <Donut.Tooltip.Title>{title?.label || dataKey}</Donut.Tooltip.Title>\n <Flex justifyContent='space-between'>\n <Text bold>{this.tooltipValueFormatter(data[dataKey])}</Text>\n </Flex>\n </>\n ),\n };\n }}\n </Donut.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Donut' });\n }\n}\n\nexport const DonutChart: DonutChartType = createComponent(DonutChartComponent);\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"DonutChart.type.js","names":[],"sources":["../../../../src/component/Chart/DonutChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { Flex } from '@semcore/flex-box';\nimport type { ScaleLinear } from 'd3-scale';\nimport type React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\nexport type DataKey = string;\n\nexport type DonutChartData = Record<DataKey, number>;\n\nexport type DonutChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<DonutChartData>,\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 /** Controls the inner radius of the donut */\n innerRadius?: number;\n /** Creates a semi-donut chart when enabled */\n halfsize?: boolean;\n /** Content displayed in the center of the donut */\n innerLabel?: React.ReactNode;\n /** Callback triggered when a user clicks on a pie */\n onClickPie?: (key: DataKey, e: React.SyntheticEvent) => void;\n};\n\nexport type DonutChartType = Intergalactic.Component<typeof Flex, DonutChartProps>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"DonutChart.type.js","names":[],"sources":["../../../../src/component/Chart/DonutChart.type.ts"],"sourcesContent":["import type { Flex } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\nimport type { ScaleLinear } from 'd3-scale';\nimport type React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\nexport type DataKey = string;\n\nexport type DonutChartData = Record<DataKey, number>;\n\nexport type DonutChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<DonutChartData>,\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 /** Controls the inner radius of the donut */\n innerRadius?: number;\n /** Creates a semi-donut chart when enabled */\n halfsize?: boolean;\n /** Content displayed in the center of the donut */\n innerLabel?: React.ReactNode;\n /** Callback triggered when a user clicks on a pie */\n onClickPie?: (key: DataKey, e: React.SyntheticEvent) => void;\n};\n\nexport type DonutChartType = Intergalactic.Component<typeof Flex, DonutChartProps>;\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"HistogramChart.type.js","names":[],"sources":["../../../../src/component/Chart/HistogramChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { Flex } from '@semcore/flex-box';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\nexport type HistogramChartData = Array<Record<string, number | Date>>;\n\nexport type HistogramChartProps = BaseChartProps<HistogramChartData> & {\n /** Field name that groups the data points */\n groupKey: string;\n /** Custom x-axis scale */\n xScale?: ScaleBand<any> | ScaleTime<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n};\n\nexport type HistogramChartType = Intergalactic.Component<typeof Flex, HistogramChartProps>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"HistogramChart.type.js","names":[],"sources":["../../../../src/component/Chart/HistogramChart.type.ts"],"sourcesContent":["import type { Flex } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\nexport type HistogramChartData = Array<Record<string, number | Date>>;\n\nexport type HistogramChartProps = BaseChartProps<HistogramChartData> & {\n /** Field name that groups the data points */\n groupKey: string;\n /** Custom x-axis scale */\n xScale?: ScaleBand<any> | ScaleTime<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n};\n\nexport type HistogramChartType = Intergalactic.Component<typeof Flex, HistogramChartProps>;\n"],"mappings":"","ignoreList":[]}