@semcore/d3-chart 16.1.4 → 16.2.0-prerelease.3

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 (211) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/lib/cjs/AnimatedClipPath.js +2 -5
  3. package/lib/cjs/AnimatedClipPath.js.map +1 -1
  4. package/lib/cjs/Area.js +13 -16
  5. package/lib/cjs/Area.js.map +1 -1
  6. package/lib/cjs/Axis.js +18 -21
  7. package/lib/cjs/Axis.js.map +1 -1
  8. package/lib/cjs/Bar.js +18 -21
  9. package/lib/cjs/Bar.js.map +1 -1
  10. package/lib/cjs/Bubble.js +15 -18
  11. package/lib/cjs/Bubble.js.map +1 -1
  12. package/lib/cjs/CompactHorizontalBar.js +19 -22
  13. package/lib/cjs/CompactHorizontalBar.js.map +1 -1
  14. package/lib/cjs/Donut.js +11 -14
  15. package/lib/cjs/Donut.js.map +1 -1
  16. package/lib/cjs/Dots.js +12 -10
  17. package/lib/cjs/Dots.js.map +1 -1
  18. package/lib/cjs/GroupBar.js +2 -5
  19. package/lib/cjs/GroupBar.js.map +1 -1
  20. package/lib/cjs/HorizontalBar.js +18 -21
  21. package/lib/cjs/HorizontalBar.js.map +1 -1
  22. package/lib/cjs/Hover.js +7 -10
  23. package/lib/cjs/Hover.js.map +1 -1
  24. package/lib/cjs/Line.js +11 -14
  25. package/lib/cjs/Line.js.map +1 -1
  26. package/lib/cjs/Plot.js +5 -8
  27. package/lib/cjs/Plot.js.map +1 -1
  28. package/lib/cjs/Radar.js +24 -27
  29. package/lib/cjs/Radar.js.map +1 -1
  30. package/lib/cjs/RadialTree.js +15 -18
  31. package/lib/cjs/RadialTree.js.map +1 -1
  32. package/lib/cjs/Reference.js +14 -17
  33. package/lib/cjs/Reference.js.map +1 -1
  34. package/lib/cjs/ResponsiveContainer.js +2 -5
  35. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  36. package/lib/cjs/ScatterPlot.js +11 -14
  37. package/lib/cjs/ScatterPlot.js.map +1 -1
  38. package/lib/cjs/StackBar.js +2 -5
  39. package/lib/cjs/StackBar.js.map +1 -1
  40. package/lib/cjs/StackedArea.js +2 -5
  41. package/lib/cjs/StackedArea.js.map +1 -1
  42. package/lib/cjs/Tooltip.js +11 -14
  43. package/lib/cjs/Tooltip.js.map +1 -1
  44. package/lib/cjs/Venn.js +11 -14
  45. package/lib/cjs/Venn.js.map +1 -1
  46. package/lib/cjs/a11y/PlotA11yModule.js +2 -2
  47. package/lib/cjs/a11y/PlotA11yView.js +2 -2
  48. package/lib/cjs/component/Chart/AbstractChart.js +3 -5
  49. package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
  50. package/lib/cjs/component/Chart/AreaChart.js +6 -9
  51. package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
  52. package/lib/cjs/component/Chart/BarChart.js +5 -8
  53. package/lib/cjs/component/Chart/BarChart.js.map +1 -1
  54. package/lib/cjs/component/Chart/BubbleChart.js +3 -5
  55. package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
  56. package/lib/cjs/component/Chart/CigaretteChart.js +7 -8
  57. package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
  58. package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +5 -8
  59. package/lib/cjs/component/Chart/CompactHorizontalBarChart.js.map +1 -1
  60. package/lib/cjs/component/Chart/DonutChart.js +3 -5
  61. package/lib/cjs/component/Chart/DonutChart.js.map +1 -1
  62. package/lib/cjs/component/Chart/HistogramChart.js +5 -8
  63. package/lib/cjs/component/Chart/HistogramChart.js.map +1 -1
  64. package/lib/cjs/component/Chart/LineChart.js +5 -8
  65. package/lib/cjs/component/Chart/LineChart.js.map +1 -1
  66. package/lib/cjs/component/Chart/RadarChart.js +5 -8
  67. package/lib/cjs/component/Chart/RadarChart.js.map +1 -1
  68. package/lib/cjs/component/Chart/ScatterPlotChart.js +3 -5
  69. package/lib/cjs/component/Chart/ScatterPlotChart.js.map +1 -1
  70. package/lib/cjs/component/Chart/VennChart.js +3 -5
  71. package/lib/cjs/component/Chart/VennChart.js.map +1 -1
  72. package/lib/cjs/component/ChartLegend/BaseLegend.js +2 -5
  73. package/lib/cjs/component/ChartLegend/BaseLegend.js.map +1 -1
  74. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +6 -9
  75. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  76. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +19 -22
  77. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  78. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +8 -11
  79. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  80. package/lib/cjs/component/Cigarette/Cigarette.js +2 -5
  81. package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
  82. package/lib/cjs/component/StackGroupBar/StackGroupBar.js +4 -5
  83. package/lib/cjs/component/StackGroupBar/StackGroupBar.js.map +1 -1
  84. package/lib/cjs/style/plot.shadow.css +7 -3
  85. package/lib/es6/AnimatedClipPath.js +1 -4
  86. package/lib/es6/AnimatedClipPath.js.map +1 -1
  87. package/lib/es6/Area.js +12 -15
  88. package/lib/es6/Area.js.map +1 -1
  89. package/lib/es6/Axis.js +15 -18
  90. package/lib/es6/Axis.js.map +1 -1
  91. package/lib/es6/Bar.js +17 -20
  92. package/lib/es6/Bar.js.map +1 -1
  93. package/lib/es6/Bubble.js +14 -17
  94. package/lib/es6/Bubble.js.map +1 -1
  95. package/lib/es6/CompactHorizontalBar.js +17 -20
  96. package/lib/es6/CompactHorizontalBar.js.map +1 -1
  97. package/lib/es6/Donut.js +10 -13
  98. package/lib/es6/Donut.js.map +1 -1
  99. package/lib/es6/Dots.js +12 -10
  100. package/lib/es6/Dots.js.map +1 -1
  101. package/lib/es6/GroupBar.js +1 -4
  102. package/lib/es6/GroupBar.js.map +1 -1
  103. package/lib/es6/HorizontalBar.js +17 -20
  104. package/lib/es6/HorizontalBar.js.map +1 -1
  105. package/lib/es6/Hover.js +4 -7
  106. package/lib/es6/Hover.js.map +1 -1
  107. package/lib/es6/Line.js +10 -13
  108. package/lib/es6/Line.js.map +1 -1
  109. package/lib/es6/Plot.js +4 -7
  110. package/lib/es6/Plot.js.map +1 -1
  111. package/lib/es6/Radar.js +20 -23
  112. package/lib/es6/Radar.js.map +1 -1
  113. package/lib/es6/RadialTree.js +13 -16
  114. package/lib/es6/RadialTree.js.map +1 -1
  115. package/lib/es6/Reference.js +13 -16
  116. package/lib/es6/Reference.js.map +1 -1
  117. package/lib/es6/ResponsiveContainer.js +1 -4
  118. package/lib/es6/ResponsiveContainer.js.map +1 -1
  119. package/lib/es6/ScatterPlot.js +10 -13
  120. package/lib/es6/ScatterPlot.js.map +1 -1
  121. package/lib/es6/StackBar.js +1 -4
  122. package/lib/es6/StackBar.js.map +1 -1
  123. package/lib/es6/StackedArea.js +1 -4
  124. package/lib/es6/StackedArea.js.map +1 -1
  125. package/lib/es6/Tooltip.js +10 -13
  126. package/lib/es6/Tooltip.js.map +1 -1
  127. package/lib/es6/Venn.js +10 -13
  128. package/lib/es6/Venn.js.map +1 -1
  129. package/lib/es6/a11y/PlotA11yModule.js +2 -2
  130. package/lib/es6/a11y/PlotA11yView.js +2 -2
  131. package/lib/es6/component/Chart/AbstractChart.js +1 -4
  132. package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
  133. package/lib/es6/component/Chart/AreaChart.js +2 -6
  134. package/lib/es6/component/Chart/AreaChart.js.map +1 -1
  135. package/lib/es6/component/Chart/BarChart.js +2 -6
  136. package/lib/es6/component/Chart/BarChart.js.map +1 -1
  137. package/lib/es6/component/Chart/BubbleChart.js +1 -4
  138. package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
  139. package/lib/es6/component/Chart/CigaretteChart.js +2 -6
  140. package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
  141. package/lib/es6/component/Chart/CompactHorizontalBarChart.js +2 -6
  142. package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -1
  143. package/lib/es6/component/Chart/DonutChart.js +1 -4
  144. package/lib/es6/component/Chart/DonutChart.js.map +1 -1
  145. package/lib/es6/component/Chart/HistogramChart.js +2 -6
  146. package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
  147. package/lib/es6/component/Chart/LineChart.js +2 -6
  148. package/lib/es6/component/Chart/LineChart.js.map +1 -1
  149. package/lib/es6/component/Chart/RadarChart.js +2 -6
  150. package/lib/es6/component/Chart/RadarChart.js.map +1 -1
  151. package/lib/es6/component/Chart/ScatterPlotChart.js +1 -4
  152. package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
  153. package/lib/es6/component/Chart/VennChart.js +1 -4
  154. package/lib/es6/component/Chart/VennChart.js.map +1 -1
  155. package/lib/es6/component/ChartLegend/BaseLegend.js +1 -4
  156. package/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
  157. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +5 -8
  158. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  159. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +18 -21
  160. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  161. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +7 -10
  162. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  163. package/lib/es6/component/Cigarette/Cigarette.js +1 -4
  164. package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
  165. package/lib/es6/component/StackGroupBar/StackGroupBar.js +1 -4
  166. package/lib/es6/component/StackGroupBar/StackGroupBar.js.map +1 -1
  167. package/lib/es6/style/plot.shadow.css +7 -3
  168. package/lib/esm/AnimatedClipPath.mjs +1 -6
  169. package/lib/esm/Area.mjs +13 -18
  170. package/lib/esm/Axis.mjs +16 -21
  171. package/lib/esm/Bar.mjs +18 -23
  172. package/lib/esm/Bubble.mjs +15 -20
  173. package/lib/esm/CompactHorizontalBar.mjs +18 -23
  174. package/lib/esm/Donut.mjs +11 -16
  175. package/lib/esm/Dots.mjs +13 -11
  176. package/lib/esm/GroupBar.mjs +1 -6
  177. package/lib/esm/HorizontalBar.mjs +18 -23
  178. package/lib/esm/Hover.mjs +5 -10
  179. package/lib/esm/Line.mjs +11 -16
  180. package/lib/esm/Plot.mjs +5 -10
  181. package/lib/esm/Radar.mjs +21 -26
  182. package/lib/esm/RadialTree.mjs +14 -19
  183. package/lib/esm/Reference.mjs +14 -19
  184. package/lib/esm/ResponsiveContainer.mjs +1 -6
  185. package/lib/esm/ScatterPlot.mjs +11 -16
  186. package/lib/esm/StackBar.mjs +1 -6
  187. package/lib/esm/StackedArea.mjs +1 -6
  188. package/lib/esm/Tooltip.mjs +11 -16
  189. package/lib/esm/Venn.mjs +11 -16
  190. package/lib/esm/a11y/PlotA11yModule.mjs +3 -3
  191. package/lib/esm/a11y/PlotA11yView.mjs +3 -3
  192. package/lib/esm/component/Chart/AbstractChart.mjs +1 -6
  193. package/lib/esm/component/Chart/AreaChart.mjs +4 -13
  194. package/lib/esm/component/Chart/BarChart.mjs +3 -12
  195. package/lib/esm/component/Chart/BubbleChart.mjs +1 -6
  196. package/lib/esm/component/Chart/CigaretteChart.mjs +2 -13
  197. package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +2 -13
  198. package/lib/esm/component/Chart/DonutChart.mjs +1 -6
  199. package/lib/esm/component/Chart/HistogramChart.mjs +3 -12
  200. package/lib/esm/component/Chart/LineChart.mjs +3 -12
  201. package/lib/esm/component/Chart/RadarChart.mjs +2 -13
  202. package/lib/esm/component/Chart/ScatterPlotChart.mjs +1 -6
  203. package/lib/esm/component/Chart/VennChart.mjs +1 -6
  204. package/lib/esm/component/ChartLegend/BaseLegend.mjs +1 -6
  205. package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +6 -11
  206. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +19 -24
  207. package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +8 -13
  208. package/lib/esm/component/Cigarette/Cigarette.mjs +1 -6
  209. package/lib/esm/component/StackGroupBar/StackGroupBar.mjs +1 -6
  210. package/lib/esm/style/plot.shadow.css +7 -3
  211. package/package.json +19 -18
@@ -1,14 +1,10 @@
1
1
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
2
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
3
  import _createClass from "@babel/runtime/helpers/createClass";
4
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
5
- import _isNativeReflectConstruct from "@babel/runtime/helpers/isNativeReflectConstruct";
6
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
- import _get from "@babel/runtime/helpers/get";
4
+ import _callSuper from "@babel/runtime/helpers/callSuper";
5
+ import _superPropGet from "@babel/runtime/helpers/superPropGet";
8
6
  import _inherits from "@babel/runtime/helpers/inherits";
9
7
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
10
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
11
- function _superPropGet(t, o, e, r) { var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; }
12
8
  import { createComponent } from '@semcore/core';
13
9
  import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
14
10
  import { scaleBand, scaleLinear } from 'd3-scale';
@@ -1 +1 @@
1
- {"version":3,"file":"CompactHorizontalBarChart.js","names":["createComponent","i18nEnhance","scaleBand","scaleLinear","React","CompactHorizontalBar","AbstractChart","localizedMessages","CompactHorizontalBarChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","_this$asProps$xScale","asProps","xScale","valueScale","_this$asProps$yScale","yScale","categoryScale","value","defaultLegendProps","renderChart","_this$asProps","x","y","onClickHoverRect","onClickBar","createElement","renderCompactHorizontalBarTooltip","Hover","onClick","Annotation","Label","Percent","Value","Bar","Background","Fill","_this$asProps2","data","showTooltip","Tooltip","wMin","_ref","index","children","Fragment","Title","Dot","renderTooltip","getLegendAriaLabel","getI18nText","chartType","_this$asProps3","_this$asProps3$margin","marginY","plotHeight","range","domain","_toConsumableArray","reverse","map","d","paddingInner","paddingOuter","_this$asProps4","_this$asProps4$margin","plotWidth","sum","_superPropGet","values","reduce","acc","_defineProperty","direction","showXAxis","showYAxis","showLegend","CompactHorizontalBarChart"],"sources":["../../../../src/component/Chart/CompactHorizontalBarChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { scaleBand, scaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport type { BaseChartProps, BaseLegendProps } from './AbstractChart.type';\nimport type {\n CompactHorizontalBarChartData,\n CompactHorizontalBarChartProps,\n CompactHorizontalBarChartType,\n} from './CompactHorizontalBarChart.type';\n// @ts-ignore\nimport { CompactHorizontalBar } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass CompactHorizontalBarChartComponent extends AbstractChart<\n CompactHorizontalBarChartData,\n CompactHorizontalBarChartProps,\n typeof CompactHorizontalBarChartComponent.enhance\n> {\n static displayName = 'Chart.CompactHorizontalBar';\n public static defaultProps: Partial<BaseChartProps<any>> = {\n direction: 'column',\n showXAxis: false,\n showYAxis: false,\n showTooltip: true,\n showLegend: false,\n };\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n return this.asProps.xScale ?? this.valueScale;\n }\n\n get yScale() {\n return this.asProps.yScale ?? this.categoryScale;\n }\n\n protected defaultLegendProps(): Partial<BaseLegendProps> {\n return {};\n }\n\n renderChart() {\n const { x, y, onClickHoverRect, onClickBar } = this.asProps;\n\n return (\n <CompactHorizontalBar x={x} y={y}>\n {this.renderCompactHorizontalBarTooltip()}\n <CompactHorizontalBar.Hover onClick={onClickHoverRect} />\n <CompactHorizontalBar.Annotation>\n <CompactHorizontalBar.Label />\n <CompactHorizontalBar.Percent />\n <CompactHorizontalBar.Value />\n </CompactHorizontalBar.Annotation>\n <CompactHorizontalBar.Bar onClick={onClickBar}>\n <CompactHorizontalBar.Bar.Background />\n <CompactHorizontalBar.Bar.Fill />\n </CompactHorizontalBar.Bar>\n </CompactHorizontalBar>\n );\n }\n\n protected renderCompactHorizontalBarTooltip(): React.ReactNode {\n const { data, x, y, showTooltip } = this.asProps;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <CompactHorizontalBar.Tooltip wMin={100}>\n {({ index }: any) => {\n return {\n children: (\n <>\n <CompactHorizontalBar.Tooltip.Title>\n {data[index][y]}\n </CompactHorizontalBar.Tooltip.Title>\n\n <CompactHorizontalBar.Tooltip.Dot>\n {data[index][x]}\n </CompactHorizontalBar.Tooltip.Dot>\n </>\n ),\n };\n }}\n </CompactHorizontalBar.Tooltip>\n );\n }\n\n renderTooltip(): React.ReactNode {\n return null;\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'CompactHorizontalBar' });\n }\n\n private get categoryScale() {\n const { marginY = 40, plotHeight, data, y } = this.asProps;\n\n return scaleBand()\n .range([plotHeight - marginY, marginY])\n .domain([...data].reverse().map((d) => d[y]) as any)\n .paddingInner(0.6)\n .paddingOuter(0.2);\n }\n\n private get valueScale() {\n const { marginY = 0, plotWidth } = this.asProps;\n\n const sum = [...super.flatValues.values()].reduce((acc, d) => acc + d, 0);\n\n return scaleLinear().range([marginY, plotWidth]).domain([marginY, sum]);\n }\n}\n\nexport const CompactHorizontalBarChart: CompactHorizontalBarChartType = createComponent(\n CompactHorizontalBarChartComponent,\n);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"CompactHorizontalBarChart.js","names":["createComponent","i18nEnhance","scaleBand","scaleLinear","React","CompactHorizontalBar","AbstractChart","localizedMessages","CompactHorizontalBarChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","_this$asProps$xScale","asProps","xScale","valueScale","_this$asProps$yScale","yScale","categoryScale","value","defaultLegendProps","renderChart","_this$asProps","x","y","onClickHoverRect","onClickBar","createElement","renderCompactHorizontalBarTooltip","Hover","onClick","Annotation","Label","Percent","Value","Bar","Background","Fill","_this$asProps2","data","showTooltip","Tooltip","wMin","_ref","index","children","Fragment","Title","Dot","renderTooltip","getLegendAriaLabel","getI18nText","chartType","_this$asProps3","_this$asProps3$margin","marginY","plotHeight","range","domain","_toConsumableArray","reverse","map","d","paddingInner","paddingOuter","_this$asProps4","_this$asProps4$margin","plotWidth","sum","_superPropGet","values","reduce","acc","_defineProperty","direction","showXAxis","showYAxis","showLegend","CompactHorizontalBarChart"],"sources":["../../../../src/component/Chart/CompactHorizontalBarChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { scaleBand, scaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport type { BaseChartProps, BaseLegendProps } from './AbstractChart.type';\nimport type {\n CompactHorizontalBarChartData,\n CompactHorizontalBarChartProps,\n CompactHorizontalBarChartType,\n} from './CompactHorizontalBarChart.type';\n// @ts-ignore\nimport { CompactHorizontalBar } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass CompactHorizontalBarChartComponent extends AbstractChart<\n CompactHorizontalBarChartData,\n CompactHorizontalBarChartProps,\n typeof CompactHorizontalBarChartComponent.enhance\n> {\n static displayName = 'Chart.CompactHorizontalBar';\n public static defaultProps: Partial<BaseChartProps<any>> = {\n direction: 'column',\n showXAxis: false,\n showYAxis: false,\n showTooltip: true,\n showLegend: false,\n };\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n return this.asProps.xScale ?? this.valueScale;\n }\n\n get yScale() {\n return this.asProps.yScale ?? this.categoryScale;\n }\n\n protected defaultLegendProps(): Partial<BaseLegendProps> {\n return {};\n }\n\n renderChart() {\n const { x, y, onClickHoverRect, onClickBar } = this.asProps;\n\n return (\n <CompactHorizontalBar x={x} y={y}>\n {this.renderCompactHorizontalBarTooltip()}\n <CompactHorizontalBar.Hover onClick={onClickHoverRect} />\n <CompactHorizontalBar.Annotation>\n <CompactHorizontalBar.Label />\n <CompactHorizontalBar.Percent />\n <CompactHorizontalBar.Value />\n </CompactHorizontalBar.Annotation>\n <CompactHorizontalBar.Bar onClick={onClickBar}>\n <CompactHorizontalBar.Bar.Background />\n <CompactHorizontalBar.Bar.Fill />\n </CompactHorizontalBar.Bar>\n </CompactHorizontalBar>\n );\n }\n\n protected renderCompactHorizontalBarTooltip(): React.ReactNode {\n const { data, x, y, showTooltip } = this.asProps;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <CompactHorizontalBar.Tooltip wMin={100}>\n {({ index }: any) => {\n return {\n children: (\n <>\n <CompactHorizontalBar.Tooltip.Title>\n {data[index][y]}\n </CompactHorizontalBar.Tooltip.Title>\n\n <CompactHorizontalBar.Tooltip.Dot>\n {data[index][x]}\n </CompactHorizontalBar.Tooltip.Dot>\n </>\n ),\n };\n }}\n </CompactHorizontalBar.Tooltip>\n );\n }\n\n renderTooltip(): React.ReactNode {\n return null;\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'CompactHorizontalBar' });\n }\n\n private get categoryScale() {\n const { marginY = 40, plotHeight, data, y } = this.asProps;\n\n return scaleBand()\n .range([plotHeight - marginY, marginY])\n .domain([...data].reverse().map((d) => d[y]) as any)\n .paddingInner(0.6)\n .paddingOuter(0.2);\n }\n\n private get valueScale() {\n const { marginY = 0, plotWidth } = this.asProps;\n\n const sum = [...super.flatValues.values()].reduce((acc, d) => acc + d, 0);\n\n return scaleLinear().range([marginY, plotWidth]).domain([marginY, sum]);\n }\n}\n\nexport const CompactHorizontalBarChart: CompactHorizontalBarChartType = createComponent(\n CompactHorizontalBarChartComponent,\n);\n"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,8 @@
1
1
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
2
  import _createClass from "@babel/runtime/helpers/createClass";
3
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
4
- import _isNativeReflectConstruct from "@babel/runtime/helpers/isNativeReflectConstruct";
5
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
3
+ import _callSuper from "@babel/runtime/helpers/callSuper";
6
4
  import _inherits from "@babel/runtime/helpers/inherits";
7
5
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
8
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
9
6
  import { createComponent } from '@semcore/core';
10
7
  import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
11
8
  import { Flex } from '@semcore/flex-box';
@@ -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","_this$asProps2","data","showTooltip","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, showTooltip } = this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\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":["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","_this$asProps2","data","showTooltip","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, showTooltip } = this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\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":[]}
@@ -2,14 +2,10 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
3
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
4
4
  import _createClass from "@babel/runtime/helpers/createClass";
5
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
6
- import _isNativeReflectConstruct from "@babel/runtime/helpers/isNativeReflectConstruct";
7
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
8
- import _get from "@babel/runtime/helpers/get";
5
+ import _callSuper from "@babel/runtime/helpers/callSuper";
6
+ import _superPropGet from "@babel/runtime/helpers/superPropGet";
9
7
  import _inherits from "@babel/runtime/helpers/inherits";
10
8
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
11
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
12
- function _superPropGet(t, o, e, r) { var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; }
13
9
  import { createComponent } from '@semcore/core';
14
10
  import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
15
11
  import { Box, Flex } from '@semcore/flex-box';
@@ -1 +1 @@
1
- {"version":3,"file":"HistogramChart.js","names":["createComponent","i18nEnhance","Box","Flex","Text","scaleBand","scaleLinear","scaleTime","React","Bar","minMax","HoverRect","StackBar","AbstractChart","localizedMessages","HistogramChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","_this$asProps","asProps","xScale","_this$asProps$marginY","marginY","_this$asProps$marginX","marginX","plotWidth","plotHeight","invertAxis","data","groupKey","testItem","range","plotPadding","Date","Number","isNaN","getMilliseconds","domain","map","item","paddingInner","paddingOuter","_this$asProps2","yScale","_this$asProps2$margin","_this$asProps2$margin2","max","isStack","reduce","barSum","Object","values","sum","val","flatValues","_superPropGet","Math","apply","_toConsumableArray","dataDefinitions","state","length","value","renderChart","_this$asProps3","_this$state","highlightedLine","createElement","x","undefined","y","index","BarComponent","HorizontalBar","commonBarComponentProps","color","transparent","id","checked","_extends","renderTooltip","_this","_this$asProps4","showTotalInTooltip","showTooltip","Tooltip","wMin","_ref","_dataItem$groupKey","xIndex","yIndex","dataItem","total","totalValue","children","Fragment","Title","toString","justifyContent","Dot","mr","label","bold","tooltipValueFormatter","mt","getLegendAriaLabel","getI18nText","chartType","_defineProperty","HistogramChart"],"sources":["../../../../src/component/Chart/HistogramChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Box, Flex } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport { scaleBand, scaleLinear, type ScaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { Bar, minMax, HoverRect, StackBar, type BarProps } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { HistogramChartData, HistogramChartProps, HistogramChartType } from './HistogramChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass HistogramChartComponent extends AbstractChart<\n HistogramChartData,\n HistogramChartProps,\n typeof HistogramChartComponent.enhance\n> {\n static displayName = 'Chart.Histogram';\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const {\n xScale,\n marginY = 30,\n marginX = 30,\n plotWidth,\n plotHeight,\n invertAxis,\n data,\n groupKey,\n } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\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.05).paddingOuter(0.2);\n }\n\n get yScale(): ScaleLinear<any, any> {\n const {\n yScale,\n marginY = 30,\n marginX = 30,\n plotHeight,\n plotWidth,\n invertAxis,\n data,\n } = this.asProps;\n\n let max: number;\n\n if (this.isStack) {\n max = data.reduce((max, item) => {\n const barSum = Object.values(item).reduce<number>((sum, val) => {\n if (val instanceof Date && !Number.isNaN(val.getMilliseconds())) {\n return sum + val.getMilliseconds();\n }\n\n return sum + (val as number);\n }, 0);\n\n if (barSum > max) {\n max = barSum;\n }\n\n return max;\n }, 0);\n } else {\n const flatValues = super.flatValues;\n\n max = Math.max(...flatValues);\n }\n\n return (\n yScale ??\n scaleLinear()\n .range(\n invertAxis\n ? [marginY, plotWidth - this.plotPadding]\n : [plotHeight - marginX, this.plotPadding],\n )\n .domain([0, max])\n );\n }\n\n get isStack(): boolean {\n const { dataDefinitions } = this.state;\n\n return dataDefinitions.length > 1;\n }\n\n renderChart() {\n const { groupKey, invertAxis } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n if (this.isStack) {\n return (\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 };\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 );\n }\n\n const item = dataDefinitions[0];\n\n return (\n <Bar\n x={invertAxis ? item.id : groupKey}\n y={invertAxis ? groupKey : item.id}\n key={item.id}\n color={item.color}\n />\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { data, groupKey, showTotalInTooltip, showTooltip, invertAxis } = this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? undefined : groupKey}\n y={invertAxis ? groupKey : undefined}\n wMin={100}\n >\n {({ xIndex, yIndex }: any) => {\n const index = invertAxis ? yIndex : xIndex;\n const dataItem = data[index];\n const total = this.totalValue(dataItem);\n\n return {\n children: (\n <>\n <HoverRect.Tooltip.Title>{dataItem[groupKey]?.toString()}</HoverRect.Tooltip.Title>\n\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Flex justifyContent='space-between' key={item.id}>\n <HoverRect.Tooltip.Dot mr={4} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n <Text bold>{this.tooltipValueFormatter(dataItem[item.id])}</Text>\n </Flex>\n )\n );\n })}\n\n {showTotalInTooltip === true && (\n <Flex mt={2} justifyContent='space-between'>\n <Box mr={4}>Total</Box>\n <Text bold>{total}</Text>\n </Flex>\n )}\n </>\n ),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Histogram' });\n }\n}\n\nexport const HistogramChart: HistogramChartType = createComponent(HistogramChartComponent);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"HistogramChart.js","names":["createComponent","i18nEnhance","Box","Flex","Text","scaleBand","scaleLinear","scaleTime","React","Bar","minMax","HoverRect","StackBar","AbstractChart","localizedMessages","HistogramChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","_this$asProps","asProps","xScale","_this$asProps$marginY","marginY","_this$asProps$marginX","marginX","plotWidth","plotHeight","invertAxis","data","groupKey","testItem","range","plotPadding","Date","Number","isNaN","getMilliseconds","domain","map","item","paddingInner","paddingOuter","_this$asProps2","yScale","_this$asProps2$margin","_this$asProps2$margin2","max","isStack","reduce","barSum","Object","values","sum","val","flatValues","_superPropGet","Math","apply","_toConsumableArray","dataDefinitions","state","length","value","renderChart","_this$asProps3","_this$state","highlightedLine","createElement","x","undefined","y","index","BarComponent","HorizontalBar","commonBarComponentProps","color","transparent","id","checked","_extends","renderTooltip","_this","_this$asProps4","showTotalInTooltip","showTooltip","Tooltip","wMin","_ref","_dataItem$groupKey","xIndex","yIndex","dataItem","total","totalValue","children","Fragment","Title","toString","justifyContent","Dot","mr","label","bold","tooltipValueFormatter","mt","getLegendAriaLabel","getI18nText","chartType","_defineProperty","HistogramChart"],"sources":["../../../../src/component/Chart/HistogramChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Box, Flex } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport { scaleBand, scaleLinear, type ScaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { Bar, minMax, HoverRect, StackBar, type BarProps } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { HistogramChartData, HistogramChartProps, HistogramChartType } from './HistogramChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass HistogramChartComponent extends AbstractChart<\n HistogramChartData,\n HistogramChartProps,\n typeof HistogramChartComponent.enhance\n> {\n static displayName = 'Chart.Histogram';\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const {\n xScale,\n marginY = 30,\n marginX = 30,\n plotWidth,\n plotHeight,\n invertAxis,\n data,\n groupKey,\n } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\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.05).paddingOuter(0.2);\n }\n\n get yScale(): ScaleLinear<any, any> {\n const {\n yScale,\n marginY = 30,\n marginX = 30,\n plotHeight,\n plotWidth,\n invertAxis,\n data,\n } = this.asProps;\n\n let max: number;\n\n if (this.isStack) {\n max = data.reduce((max, item) => {\n const barSum = Object.values(item).reduce<number>((sum, val) => {\n if (val instanceof Date && !Number.isNaN(val.getMilliseconds())) {\n return sum + val.getMilliseconds();\n }\n\n return sum + (val as number);\n }, 0);\n\n if (barSum > max) {\n max = barSum;\n }\n\n return max;\n }, 0);\n } else {\n const flatValues = super.flatValues;\n\n max = Math.max(...flatValues);\n }\n\n return (\n yScale ??\n scaleLinear()\n .range(\n invertAxis\n ? [marginY, plotWidth - this.plotPadding]\n : [plotHeight - marginX, this.plotPadding],\n )\n .domain([0, max])\n );\n }\n\n get isStack(): boolean {\n const { dataDefinitions } = this.state;\n\n return dataDefinitions.length > 1;\n }\n\n renderChart() {\n const { groupKey, invertAxis } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n if (this.isStack) {\n return (\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 };\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 );\n }\n\n const item = dataDefinitions[0];\n\n return (\n <Bar\n x={invertAxis ? item.id : groupKey}\n y={invertAxis ? groupKey : item.id}\n key={item.id}\n color={item.color}\n />\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { data, groupKey, showTotalInTooltip, showTooltip, invertAxis } = this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? undefined : groupKey}\n y={invertAxis ? groupKey : undefined}\n wMin={100}\n >\n {({ xIndex, yIndex }: any) => {\n const index = invertAxis ? yIndex : xIndex;\n const dataItem = data[index];\n const total = this.totalValue(dataItem);\n\n return {\n children: (\n <>\n <HoverRect.Tooltip.Title>{dataItem[groupKey]?.toString()}</HoverRect.Tooltip.Title>\n\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Flex justifyContent='space-between' key={item.id}>\n <HoverRect.Tooltip.Dot mr={4} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n <Text bold>{this.tooltipValueFormatter(dataItem[item.id])}</Text>\n </Flex>\n )\n );\n })}\n\n {showTotalInTooltip === true && (\n <Flex mt={2} justifyContent='space-between'>\n <Box mr={4}>Total</Box>\n <Text bold>{total}</Text>\n </Flex>\n )}\n </>\n ),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Histogram' });\n }\n}\n\nexport const HistogramChart: HistogramChartType = createComponent(HistogramChartComponent);\n"],"mappings":"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","ignoreList":[]}
@@ -1,14 +1,10 @@
1
1
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
2
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
3
  import _createClass from "@babel/runtime/helpers/createClass";
4
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
5
- import _isNativeReflectConstruct from "@babel/runtime/helpers/isNativeReflectConstruct";
6
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
- import _get from "@babel/runtime/helpers/get";
4
+ import _callSuper from "@babel/runtime/helpers/callSuper";
5
+ import _superPropGet from "@babel/runtime/helpers/superPropGet";
8
6
  import _inherits from "@babel/runtime/helpers/inherits";
9
7
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
10
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
11
- function _superPropGet(t, o, e, r) { var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; }
12
8
  import { createComponent } from '@semcore/core';
13
9
  import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
14
10
  import { Box, Flex } from '@semcore/flex-box';
@@ -1 +1 @@
1
- {"version":3,"file":"LineChart.js","names":["createComponent","i18nEnhance","Box","Flex","Text","scaleLinear","scaleTime","React","Line","minMax","HoverLine","AbstractChart","localizedMessages","LineChartComponent","_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","flatValues","_superPropGet","max","Math","apply","_toConsumableArray","min","value","renderChart","_this$asProps3","curve","showDots","area","areaCurve","onClickLine","_this$state","state","dataDefinitions","highlightedLine","map","item","index","checked","createElement","x","toString","y","id","color","transparent","onClick","Dots","display","Area","y0","y1","renderTooltip","_this","_this$asProps4","showTotalInTooltip","showTooltip","Tooltip","wMin","_ref","_dataItem$groupKey","xIndex","dataItem","total","totalValue","children","Fragment","Title","justifyContent","Dot","mr","label","bold","tooltipValueFormatter","mt","getLegendAriaLabel","getI18nText","chartType","_defineProperty","LineChart"],"sources":["../../../../src/component/Chart/LineChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Box, Flex } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport { type ScaleLinear, scaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\nimport type { LineChartData, LineChartProps, LineChartType } from './LineChart.type';\n// @ts-ignore\nimport { Line, minMax, HoverLine } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass LineChartComponent extends AbstractChart<\n LineChartData,\n LineChartProps,\n typeof LineChartComponent.enhance\n> {\n static displayName = 'Chart.Line';\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n protected get xScale() {\n const { xScale, marginY = 30, 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 protected get yScale(): ScaleLinear<any, any> {\n const { yScale, marginX = 30, plotHeight } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n const flatValues = super.flatValues;\n\n const max = Math.max(...flatValues);\n const min = Math.min(...flatValues);\n\n return scaleLinear()\n .range([plotHeight - marginX, this.plotPadding])\n .domain([min, max]);\n }\n\n protected renderChart() {\n const { groupKey, curve, showDots, area, areaCurve, onClickLine } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n return dataDefinitions.map((item, index) => {\n return (\n item.checked && (\n <Line\n x={groupKey.toString()}\n y={item.id}\n key={item.id}\n color={item.color}\n transparent={highlightedLine !== -1 && highlightedLine !== index}\n curve={curve}\n onClick={onClickLine}\n >\n {showDots && <Line.Dots display />}\n {area?.[item.id] && (\n <Line.Area area={area[item.id]} y0='y0' y1='y1' curve={areaCurve} />\n )}\n </Line>\n )\n );\n });\n }\n\n protected renderTooltip() {\n const { data, groupKey, showTotalInTooltip, showTooltip } = this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverLine.Tooltip x={groupKey} wMin={100}>\n {({ xIndex }: any) => {\n const dataItem = data[xIndex];\n const total = this.totalValue(dataItem);\n\n return {\n children: (\n <>\n <HoverLine.Tooltip.Title>{dataItem[groupKey]?.toString()}</HoverLine.Tooltip.Title>\n\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Flex justifyContent='space-between' key={item.id}>\n <HoverLine.Tooltip.Dot mr={4} color={item.color}>\n {item.label}\n </HoverLine.Tooltip.Dot>\n <Text bold>{this.tooltipValueFormatter(dataItem[item.id])}</Text>\n </Flex>\n )\n );\n })}\n\n {showTotalInTooltip === true && (\n <Flex mt={2} justifyContent='space-between'>\n <Box mr={4}>Total</Box>\n <Text bold>{total}</Text>\n </Flex>\n )}\n </>\n ),\n };\n }}\n </HoverLine.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Line' });\n }\n}\n\nexport const LineChart: LineChartType = createComponent(LineChartComponent);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"LineChart.js","names":["createComponent","i18nEnhance","Box","Flex","Text","scaleLinear","scaleTime","React","Line","minMax","HoverLine","AbstractChart","localizedMessages","LineChartComponent","_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","flatValues","_superPropGet","max","Math","apply","_toConsumableArray","min","value","renderChart","_this$asProps3","curve","showDots","area","areaCurve","onClickLine","_this$state","state","dataDefinitions","highlightedLine","map","item","index","checked","createElement","x","toString","y","id","color","transparent","onClick","Dots","display","Area","y0","y1","renderTooltip","_this","_this$asProps4","showTotalInTooltip","showTooltip","Tooltip","wMin","_ref","_dataItem$groupKey","xIndex","dataItem","total","totalValue","children","Fragment","Title","justifyContent","Dot","mr","label","bold","tooltipValueFormatter","mt","getLegendAriaLabel","getI18nText","chartType","_defineProperty","LineChart"],"sources":["../../../../src/component/Chart/LineChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Box, Flex } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport { type ScaleLinear, scaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\nimport type { LineChartData, LineChartProps, LineChartType } from './LineChart.type';\n// @ts-ignore\nimport { Line, minMax, HoverLine } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass LineChartComponent extends AbstractChart<\n LineChartData,\n LineChartProps,\n typeof LineChartComponent.enhance\n> {\n static displayName = 'Chart.Line';\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n protected get xScale() {\n const { xScale, marginY = 30, 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 protected get yScale(): ScaleLinear<any, any> {\n const { yScale, marginX = 30, plotHeight } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n const flatValues = super.flatValues;\n\n const max = Math.max(...flatValues);\n const min = Math.min(...flatValues);\n\n return scaleLinear()\n .range([plotHeight - marginX, this.plotPadding])\n .domain([min, max]);\n }\n\n protected renderChart() {\n const { groupKey, curve, showDots, area, areaCurve, onClickLine } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n return dataDefinitions.map((item, index) => {\n return (\n item.checked && (\n <Line\n x={groupKey.toString()}\n y={item.id}\n key={item.id}\n color={item.color}\n transparent={highlightedLine !== -1 && highlightedLine !== index}\n curve={curve}\n onClick={onClickLine}\n >\n {showDots && <Line.Dots display />}\n {area?.[item.id] && (\n <Line.Area area={area[item.id]} y0='y0' y1='y1' curve={areaCurve} />\n )}\n </Line>\n )\n );\n });\n }\n\n protected renderTooltip() {\n const { data, groupKey, showTotalInTooltip, showTooltip } = this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverLine.Tooltip x={groupKey} wMin={100}>\n {({ xIndex }: any) => {\n const dataItem = data[xIndex];\n const total = this.totalValue(dataItem);\n\n return {\n children: (\n <>\n <HoverLine.Tooltip.Title>{dataItem[groupKey]?.toString()}</HoverLine.Tooltip.Title>\n\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Flex justifyContent='space-between' key={item.id}>\n <HoverLine.Tooltip.Dot mr={4} color={item.color}>\n {item.label}\n </HoverLine.Tooltip.Dot>\n <Text bold>{this.tooltipValueFormatter(dataItem[item.id])}</Text>\n </Flex>\n )\n );\n })}\n\n {showTotalInTooltip === true && (\n <Flex mt={2} justifyContent='space-between'>\n <Box mr={4}>Total</Box>\n <Text bold>{total}</Text>\n </Flex>\n )}\n </>\n ),\n };\n }}\n </HoverLine.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Line' });\n }\n}\n\nexport const LineChart: LineChartType = createComponent(LineChartComponent);\n"],"mappings":"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","ignoreList":[]}
@@ -1,14 +1,10 @@
1
1
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
2
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
3
  import _createClass from "@babel/runtime/helpers/createClass";
4
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
5
- import _isNativeReflectConstruct from "@babel/runtime/helpers/isNativeReflectConstruct";
6
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
- import _get from "@babel/runtime/helpers/get";
4
+ import _callSuper from "@babel/runtime/helpers/callSuper";
5
+ import _superPropGet from "@babel/runtime/helpers/superPropGet";
8
6
  import _inherits from "@babel/runtime/helpers/inherits";
9
7
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
10
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
11
- function _superPropGet(t, o, e, r) { var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; }
12
8
  import { createComponent } from '@semcore/core';
13
9
  import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
14
10
  import { scaleLinear } from 'd3-scale';
@@ -1 +1 @@
1
- {"version":3,"file":"RadarChart.js","names":["createComponent","i18nEnhance","scaleLinear","React","AbstractChart","Radar","localizedMessages","RadarChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","value","renderChart","_this$asProps","asProps","groupKey","showDots","circle","onClickRadar","dataDefinitions","state","createElement","onClick","scale","xScale","type","undefined","Axis","dataKey","Ticks","Labels","renderRadarTooltip","map","item","checked","Polygon","id","color","Line","Dots","_this","_this$asProps2","data","showTooltip","Tooltip","wMin","_ref","_data$groupKey","index","children","Fragment","Title","_data$item$id","Dot","tooltipValueFormatter","renderTooltip","get","_this$props","props","legendKeys","Object","keys","filter","_this$asProps$scale","domain","_this$asProps$scale2","getLegendAriaLabel","getI18nText","chartType","Math","min","apply","_toConsumableArray","_superPropGet","max","_defineProperty","RadarChart"],"sources":["../../../../src/component/Chart/RadarChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { scaleLinear, type ScaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport { AbstractChart } from './AbstractChart';\nimport type { RadarChartData, RadarChartProps, RadarChartType } from './RadarChart.type';\n// @ts-ignore\nimport { Radar } from '../..';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass RadarChartComponent extends AbstractChart<\n RadarChartData,\n RadarChartProps,\n typeof RadarChartComponent.enhance\n> {\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n protected renderChart(): React.ReactNode {\n const { groupKey, showDots, circle, onClickRadar } = this.asProps;\n const { dataDefinitions } = this.state;\n\n return (\n <Radar onClick={onClickRadar} scale={this.xScale} type={circle ? 'circle' : undefined}>\n <Radar.Axis dataKey={groupKey}>\n <Radar.Axis.Ticks />\n <Radar.Axis.Labels />\n </Radar.Axis>\n {this.renderRadarTooltip()}\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Radar.Polygon dataKey={item.id} key={item.id} color={item.color}>\n <Radar.Polygon.Line />\n {showDots && <Radar.Polygon.Dots />}\n </Radar.Polygon>\n )\n );\n })}\n </Radar>\n );\n }\n\n protected renderRadarTooltip(): React.ReactNode {\n const { data, groupKey, showTooltip } = this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <Radar.Tooltip wMin={100}>\n {({ index }: any) => {\n return {\n children: (\n <>\n <Radar.Tooltip.Title>{data[groupKey]?.[index]}</Radar.Tooltip.Title>\n\n {dataDefinitions.map((item) => {\n const value = data[item.id]?.[index];\n\n return (\n item.checked && (\n <Radar.Tooltip.Dot color={item.color} key={item.id}>\n {this.tooltipValueFormatter(value)}\n </Radar.Tooltip.Dot>\n )\n );\n })}\n </>\n ),\n };\n }}\n </Radar.Tooltip>\n );\n }\n\n // By default, tooltip will render in Plot component.\n // In RadarChart, we need to render it in Radar component, so we use renderRadarTooltip method\n protected renderTooltip(): React.ReactNode {\n return null;\n }\n\n protected get dataKeys(): string[] {\n const { data, groupKey } = this.props;\n\n const legendKeys: string[] = Object.keys(data).filter((key) => key !== groupKey);\n\n return legendKeys;\n }\n\n protected get xScale(): ScaleLinear<any, any> {\n return this.asProps.scale ?? scaleLinear().domain(this.domain);\n }\n\n protected get yScale(): ScaleLinear<any, any> {\n return this.asProps.scale ?? scaleLinear().domain(this.domain);\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Radar' });\n }\n\n private get domain(): [number, number] {\n return [Math.min(...super.flatValues), Math.max(...super.flatValues)];\n }\n}\n\nexport const RadarChart: RadarChartType = createComponent(RadarChartComponent);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RadarChart.js","names":["createComponent","i18nEnhance","scaleLinear","React","AbstractChart","Radar","localizedMessages","RadarChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","value","renderChart","_this$asProps","asProps","groupKey","showDots","circle","onClickRadar","dataDefinitions","state","createElement","onClick","scale","xScale","type","undefined","Axis","dataKey","Ticks","Labels","renderRadarTooltip","map","item","checked","Polygon","id","color","Line","Dots","_this","_this$asProps2","data","showTooltip","Tooltip","wMin","_ref","_data$groupKey","index","children","Fragment","Title","_data$item$id","Dot","tooltipValueFormatter","renderTooltip","get","_this$props","props","legendKeys","Object","keys","filter","_this$asProps$scale","domain","_this$asProps$scale2","getLegendAriaLabel","getI18nText","chartType","Math","min","apply","_toConsumableArray","_superPropGet","max","_defineProperty","RadarChart"],"sources":["../../../../src/component/Chart/RadarChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { scaleLinear, type ScaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport { AbstractChart } from './AbstractChart';\nimport type { RadarChartData, RadarChartProps, RadarChartType } from './RadarChart.type';\n// @ts-ignore\nimport { Radar } from '../..';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass RadarChartComponent extends AbstractChart<\n RadarChartData,\n RadarChartProps,\n typeof RadarChartComponent.enhance\n> {\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n protected renderChart(): React.ReactNode {\n const { groupKey, showDots, circle, onClickRadar } = this.asProps;\n const { dataDefinitions } = this.state;\n\n return (\n <Radar onClick={onClickRadar} scale={this.xScale} type={circle ? 'circle' : undefined}>\n <Radar.Axis dataKey={groupKey}>\n <Radar.Axis.Ticks />\n <Radar.Axis.Labels />\n </Radar.Axis>\n {this.renderRadarTooltip()}\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Radar.Polygon dataKey={item.id} key={item.id} color={item.color}>\n <Radar.Polygon.Line />\n {showDots && <Radar.Polygon.Dots />}\n </Radar.Polygon>\n )\n );\n })}\n </Radar>\n );\n }\n\n protected renderRadarTooltip(): React.ReactNode {\n const { data, groupKey, showTooltip } = this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <Radar.Tooltip wMin={100}>\n {({ index }: any) => {\n return {\n children: (\n <>\n <Radar.Tooltip.Title>{data[groupKey]?.[index]}</Radar.Tooltip.Title>\n\n {dataDefinitions.map((item) => {\n const value = data[item.id]?.[index];\n\n return (\n item.checked && (\n <Radar.Tooltip.Dot color={item.color} key={item.id}>\n {this.tooltipValueFormatter(value)}\n </Radar.Tooltip.Dot>\n )\n );\n })}\n </>\n ),\n };\n }}\n </Radar.Tooltip>\n );\n }\n\n // By default, tooltip will render in Plot component.\n // In RadarChart, we need to render it in Radar component, so we use renderRadarTooltip method\n protected renderTooltip(): React.ReactNode {\n return null;\n }\n\n protected get dataKeys(): string[] {\n const { data, groupKey } = this.props;\n\n const legendKeys: string[] = Object.keys(data).filter((key) => key !== groupKey);\n\n return legendKeys;\n }\n\n protected get xScale(): ScaleLinear<any, any> {\n return this.asProps.scale ?? scaleLinear().domain(this.domain);\n }\n\n protected get yScale(): ScaleLinear<any, any> {\n return this.asProps.scale ?? scaleLinear().domain(this.domain);\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Radar' });\n }\n\n private get domain(): [number, number] {\n return [Math.min(...super.flatValues), Math.max(...super.flatValues)];\n }\n}\n\nexport const RadarChart: RadarChartType = createComponent(RadarChartComponent);\n"],"mappings":"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","ignoreList":[]}
@@ -2,12 +2,9 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
2
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
3
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
4
4
  import _createClass from "@babel/runtime/helpers/createClass";
5
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
6
- import _isNativeReflectConstruct from "@babel/runtime/helpers/isNativeReflectConstruct";
7
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
5
+ import _callSuper from "@babel/runtime/helpers/callSuper";
8
6
  import _inherits from "@babel/runtime/helpers/inherits";
9
7
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
10
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
11
8
  import { createComponent } from '@semcore/core';
12
9
  import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
13
10
  import { Text } from '@semcore/typography';
@@ -1 +1 @@
1
- {"version":3,"file":"ScatterPlotChart.js","names":["createComponent","i18nEnhance","Text","scaleLinear","scaleTime","React","minMax","ScatterPlot","getScatterPlotRadius","AbstractChart","localizedMessages","ScatterPlotChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","_this$props","props","data","groupKey","valueKey","Object","keys","filter","_this$asProps","asProps","xScale","_this$asProps$marginY","marginY","plotWidth","radius","getValueScale","_toConsumableArray","flatValues","testItem","range","plotPadding","domain","Date","Number","isNaN","getMilliseconds","_this$asProps2","yScale","_this$asProps2$margin","marginX","plotHeight","max","Math","apply","min","_this$asProps3","reduce","result","item","entries","forEach","_ref","_ref2","_slicedToArray","value","add","Set","renderChart","_this$asProps4","onClickScatterItem","dataDefinitions","state","map","checked","createElement","onClick","x","y","id","color","renderTooltip","_this","_this$asProps5","showTooltip","Tooltip","wMin","_ref3","index","children","Fragment","Dot","tag","tooltipValueFormatter","getLegendAriaLabel","getI18nText","chartType","_defineProperty","direction","showXAxis","showYAxis","showLegend","ScatterPlotChart"],"sources":["../../../../src/component/Chart/ScatterPlotChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport { type ScaleLinear, scaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { minMax, ScatterPlot, getScatterPlotRadius } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { BaseChartProps, ListData } from './AbstractChart.type';\nimport type {\n ScatterPlotChartData,\n ScatterPlotChartProps,\n ScatterPlotChartType,\n} from './ScatterPlotChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass ScatterPlotChartComponent extends AbstractChart<\n ScatterPlotChartData,\n ScatterPlotChartProps,\n typeof ScatterPlotChartComponent.enhance\n> {\n static displayName = 'Chart.ScatterPlot';\n public static defaultProps: Partial<BaseChartProps<ListData>> = {\n direction: 'column',\n showXAxis: true,\n showYAxis: true,\n showTooltip: true,\n showLegend: false,\n };\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n protected get dataKeys(): string[] {\n const { data, groupKey, valueKey } = this.props;\n\n return Object.keys(data[0]).filter((key) => key !== groupKey && key !== valueKey);\n }\n\n protected get xScale() {\n const { xScale, marginY = 30, plotWidth, data, groupKey, valueKey } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n const radius = getScatterPlotRadius(valueKey) / this.getValueScale([...this.flatValues]);\n const testItem = data[0][groupKey];\n const range = [marginY, plotWidth - this.plotPadding];\n const domain = minMax(data, groupKey);\n\n if (testItem instanceof Date && !Number.isNaN(testItem.getMilliseconds())) {\n return scaleTime([domain[0] - radius, domain[1] + radius], range);\n }\n\n return scaleLinear([domain[0] - radius, domain[1] + radius], range);\n }\n\n protected get yScale(): ScaleLinear<any, any> {\n const { yScale, marginX = 30, plotHeight, valueKey } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n const flatValues = this.flatValues;\n const radius = getScatterPlotRadius(valueKey) / this.getValueScale([...flatValues]);\n\n const max = Math.max(...flatValues) + radius;\n const min = Math.min(...flatValues) - radius;\n\n return scaleLinear()\n .range([plotHeight - marginX, this.plotPadding])\n .domain([min, max]);\n }\n\n protected get flatValues(): Set<number> {\n const { data, groupKey, valueKey } = this.asProps;\n\n const flatValues = data.reduce<Set<number>>((result, item) => {\n Object.entries(item).forEach(([key, value]) => {\n if (key !== groupKey && key !== valueKey && typeof value === 'number') {\n result.add(value);\n }\n });\n\n return result;\n }, new Set());\n\n return flatValues;\n }\n\n protected renderChart() {\n const { groupKey, valueKey, onClickScatterItem } = this.asProps;\n const { dataDefinitions } = this.state;\n\n return dataDefinitions.map((item) => {\n return (\n item.checked && (\n <ScatterPlot onClick={onClickScatterItem} x={groupKey} y={item.id} key={item.id} color={item.color} value={valueKey} />\n )\n );\n });\n }\n\n protected renderTooltip() {\n const { data, groupKey, showTooltip } = this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\n\n return dataDefinitions\n .filter((item) => item.checked)\n .map((item) => {\n return (\n <ScatterPlot.Tooltip key={item.id} x={groupKey} y={item.id} wMin={100}>\n {({ index, x, y }: any) => {\n return {\n children: (\n <>\n <ScatterPlot.Tooltip.Dot color={item.color}>Data</ScatterPlot.Tooltip.Dot>\n <Text tag='div'>\n X axis\n {this.tooltipValueFormatter(data[index][x])}\n </Text>\n <Text tag='div'>\n Y axis\n {this.tooltipValueFormatter(data[index][y])}\n </Text>\n </>\n ),\n };\n }}\n </ScatterPlot.Tooltip>\n );\n });\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'ScatterPlot' });\n }\n}\n\nexport const ScatterPlotChart: ScatterPlotChartType = createComponent(ScatterPlotChartComponent);\n"],"mappings":";;;;;;;;;;AAAA,SAASA,eAAe,QAAQ,eAAe;AAC/C,OAAOC,WAAW,MAAM,8CAA8C;AACtE,SAASC,IAAI,QAAQ,qBAAqB;AAC1C,SAA2BC,WAAW,EAAEC,SAAS,QAAQ,UAAU;AACnE,OAAOC,KAAK,MAAM,OAAO;;AAEzB;AACA,SAASC,MAAM,EAAEC,WAAW,EAAEC,oBAAoB,QAAQ,OAAO;AACjE,SAASC,aAAa,QAAQ,iBAAiB;AAO/C,SAASC,iBAAiB,QAAQ,oDAAoD;AAAC,IAEjFC,yBAAyB,0BAAAC,cAAA;EAAA,SAAAD,0BAAA;IAAAE,eAAA,OAAAF,yBAAA;IAAA,OAAAG,UAAA,OAAAH,yBAAA,EAAAI,SAAA;EAAA;EAAAC,SAAA,CAAAL,yBAAA,EAAAC,cAAA;EAAA,OAAAK,YAAA,CAAAN,yBAAA;IAAAO,GAAA;IAAAC,GAAA,EAgB7B,SAAAA,IAAA,EAAmC;MACjC,IAAAC,WAAA,GAAqC,IAAI,CAACC,KAAK;QAAvCC,IAAI,GAAAF,WAAA,CAAJE,IAAI;QAAEC,QAAQ,GAAAH,WAAA,CAARG,QAAQ;QAAEC,QAAQ,GAAAJ,WAAA,CAARI,QAAQ;MAEhC,OAAOC,MAAM,CAACC,IAAI,CAACJ,IAAI,CAAC,CAAC,CAAC,CAAC,CAACK,MAAM,CAAC,UAACT,GAAG;QAAA,OAAKA,GAAG,KAAKK,QAAQ,IAAIL,GAAG,KAAKM,QAAQ;MAAA,EAAC;IACnF;EAAC;IAAAN,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAAuB;MACrB,IAAAS,aAAA,GAAsE,IAAI,CAACC,OAAO;QAA1EC,MAAM,GAAAF,aAAA,CAANE,MAAM;QAAAC,qBAAA,GAAAH,aAAA,CAAEI,OAAO;QAAPA,OAAO,GAAAD,qBAAA,cAAG,EAAE,GAAAA,qBAAA;QAAEE,SAAS,GAAAL,aAAA,CAATK,SAAS;QAAEX,IAAI,GAAAM,aAAA,CAAJN,IAAI;QAAEC,QAAQ,GAAAK,aAAA,CAARL,QAAQ;QAAEC,QAAQ,GAAAI,aAAA,CAARJ,QAAQ;MAEjE,IAAIM,MAAM,EAAE;QACV,OAAOA,MAAM;MACf;MAEA,IAAMI,MAAM,GAAG1B,oBAAoB,CAACgB,QAAQ,CAAC,GAAG,IAAI,CAACW,aAAa,CAAAC,kBAAA,CAAK,IAAI,CAACC,UAAU,CAAC,CAAC;MACxF,IAAMC,QAAQ,GAAGhB,IAAI,CAAC,CAAC,CAAC,CAACC,QAAQ,CAAC;MAClC,IAAMgB,KAAK,GAAG,CAACP,OAAO,EAAEC,SAAS,GAAG,IAAI,CAACO,WAAW,CAAC;MACrD,IAAMC,MAAM,GAAGnC,MAAM,CAACgB,IAAI,EAAEC,QAAQ,CAAC;MAErC,IAAIe,QAAQ,YAAYI,IAAI,IAAI,CAACC,MAAM,CAACC,KAAK,CAACN,QAAQ,CAACO,eAAe,CAAC,CAAC,CAAC,EAAE;QACzE,OAAOzC,SAAS,CAAC,CAACqC,MAAM,CAAC,CAAC,CAAC,GAAGP,MAAM,EAAEO,MAAM,CAAC,CAAC,CAAC,GAAGP,MAAM,CAAC,EAAEK,KAAK,CAAC;MACnE;MAEA,OAAOpC,WAAW,CAAC,CAACsC,MAAM,CAAC,CAAC,CAAC,GAAGP,MAAM,EAAEO,MAAM,CAAC,CAAC,CAAC,GAAGP,MAAM,CAAC,EAAEK,KAAK,CAAC;IACrE;EAAC;IAAArB,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAA8C;MAC5C,IAAA2B,cAAA,GAAuD,IAAI,CAACjB,OAAO;QAA3DkB,MAAM,GAAAD,cAAA,CAANC,MAAM;QAAAC,qBAAA,GAAAF,cAAA,CAAEG,OAAO;QAAPA,OAAO,GAAAD,qBAAA,cAAG,EAAE,GAAAA,qBAAA;QAAEE,UAAU,GAAAJ,cAAA,CAAVI,UAAU;QAAE1B,QAAQ,GAAAsB,cAAA,CAARtB,QAAQ;MAElD,IAAIuB,MAAM,EAAE;QACV,OAAOA,MAAM;MACf;MAEA,IAAMV,UAAU,GAAG,IAAI,CAACA,UAAU;MAClC,IAAMH,MAAM,GAAG1B,oBAAoB,CAACgB,QAAQ,CAAC,GAAG,IAAI,CAACW,aAAa,CAAAC,kBAAA,CAAKC,UAAU,CAAC,CAAC;MAEnF,IAAMc,GAAG,GAAGC,IAAI,CAACD,GAAG,CAAAE,KAAA,CAARD,IAAI,EAAAhB,kBAAA,CAAQC,UAAU,EAAC,GAAGH,MAAM;MAC5C,IAAMoB,GAAG,GAAGF,IAAI,CAACE,GAAG,CAAAD,KAAA,CAARD,IAAI,EAAAhB,kBAAA,CAAQC,UAAU,EAAC,GAAGH,MAAM;MAE5C,OAAO/B,WAAW,CAAC,CAAC,CACjBoC,KAAK,CAAC,CAACW,UAAU,GAAGD,OAAO,EAAE,IAAI,CAACT,WAAW,CAAC,CAAC,CAC/CC,MAAM,CAAC,CAACa,GAAG,EAAEH,GAAG,CAAC,CAAC;IACvB;EAAC;IAAAjC,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAAwC;MACtC,IAAAoC,cAAA,GAAqC,IAAI,CAAC1B,OAAO;QAAzCP,IAAI,GAAAiC,cAAA,CAAJjC,IAAI;QAAEC,QAAQ,GAAAgC,cAAA,CAARhC,QAAQ;QAAEC,QAAQ,GAAA+B,cAAA,CAAR/B,QAAQ;MAEhC,IAAMa,UAAU,GAAGf,IAAI,CAACkC,MAAM,CAAc,UAACC,MAAM,EAAEC,IAAI,EAAK;QAC5DjC,MAAM,CAACkC,OAAO,CAACD,IAAI,CAAC,CAACE,OAAO,CAAC,UAAAC,IAAA,EAAkB;UAAA,IAAAC,KAAA,GAAAC,cAAA,CAAAF,IAAA;YAAhB3C,GAAG,GAAA4C,KAAA;YAAEE,KAAK,GAAAF,KAAA;UACvC,IAAI5C,GAAG,KAAKK,QAAQ,IAAIL,GAAG,KAAKM,QAAQ,IAAI,OAAOwC,KAAK,KAAK,QAAQ,EAAE;YACrEP,MAAM,CAACQ,GAAG,CAACD,KAAK,CAAC;UACnB;QACF,CAAC,CAAC;QAEF,OAAOP,MAAM;MACf,CAAC,EAAE,IAAIS,GAAG,CAAC,CAAC,CAAC;MAEb,OAAO7B,UAAU;IACnB;EAAC;IAAAnB,GAAA;IAAA8C,KAAA,EAED,SAAUG,WAAWA,CAAA,EAAG;MACtB,IAAAC,cAAA,GAAmD,IAAI,CAACvC,OAAO;QAAvDN,QAAQ,GAAA6C,cAAA,CAAR7C,QAAQ;QAAEC,QAAQ,GAAA4C,cAAA,CAAR5C,QAAQ;QAAE6C,kBAAkB,GAAAD,cAAA,CAAlBC,kBAAkB;MAC9C,IAAQC,eAAe,GAAK,IAAI,CAACC,KAAK,CAA9BD,eAAe;MAEvB,OAAOA,eAAe,CAACE,GAAG,CAAC,UAACd,IAAI,EAAK;QACnC,OACEA,IAAI,CAACe,OAAO,iBACVpE,KAAA,CAAAqE,aAAA,CAACnE,WAAW;UAACoE,OAAO,EAAEN,kBAAmB;UAACO,CAAC,EAAErD,QAAS;UAACsD,CAAC,EAAEnB,IAAI,CAACoB,EAAG;UAAC5D,GAAG,EAAEwC,IAAI,CAACoB,EAAG;UAACC,KAAK,EAAErB,IAAI,CAACqB,KAAM;UAACf,KAAK,EAAExC;QAAS,CAAE,CACvH;MAEL,CAAC,CAAC;IACJ;EAAC;IAAAN,GAAA;IAAA8C,KAAA,EAED,SAAUgB,aAAaA,CAAA,EAAG;MAAA,IAAAC,KAAA;MACxB,IAAAC,cAAA,GAAwC,IAAI,CAACrD,OAAO;QAA5CP,IAAI,GAAA4D,cAAA,CAAJ5D,IAAI;QAAEC,QAAQ,GAAA2D,cAAA,CAAR3D,QAAQ;QAAE4D,WAAW,GAAAD,cAAA,CAAXC,WAAW;MACnC,IAAQb,eAAe,GAAK,IAAI,CAACC,KAAK,CAA9BD,eAAe;MAEvB,IAAI,CAACa,WAAW,EAAE;QAChB,OAAO,IAAI;MACb;MAEA,OAAOb,eAAe,CACnB3C,MAAM,CAAC,UAAC+B,IAAI;QAAA,OAAKA,IAAI,CAACe,OAAO;MAAA,EAAC,CAC9BD,GAAG,CAAC,UAACd,IAAI,EAAK;QACb,oBACErD,KAAA,CAAAqE,aAAA,CAACnE,WAAW,CAAC6E,OAAO;UAAClE,GAAG,EAAEwC,IAAI,CAACoB,EAAG;UAACF,CAAC,EAAErD,QAAS;UAACsD,CAAC,EAAEnB,IAAI,CAACoB,EAAG;UAACO,IAAI,EAAE;QAAI,GACnE,UAAAC,KAAA,EAA0B;UAAA,IAAvBC,KAAK,GAAAD,KAAA,CAALC,KAAK;YAAEX,CAAC,GAAAU,KAAA,CAADV,CAAC;YAAEC,CAAC,GAAAS,KAAA,CAADT,CAAC;UACb,OAAO;YACLW,QAAQ,eACNnF,KAAA,CAAAqE,aAAA,CAAArE,KAAA,CAAAoF,QAAA,qBACEpF,KAAA,CAAAqE,aAAA,CAACnE,WAAW,CAAC6E,OAAO,CAACM,GAAG;cAACX,KAAK,EAAErB,IAAI,CAACqB;YAAM,GAAC,MAA6B,CAAC,eAC1E1E,KAAA,CAAAqE,aAAA,CAACxE,IAAI;cAACyF,GAAG,EAAC;YAAK,GAAC,QAEd,EAACV,KAAI,CAACW,qBAAqB,CAACtE,IAAI,CAACiE,KAAK,CAAC,CAACX,CAAC,CAAC,CACtC,CAAC,eACPvE,KAAA,CAAAqE,aAAA,CAACxE,IAAI;cAACyF,GAAG,EAAC;YAAK,GAAC,QAEd,EAACV,KAAI,CAACW,qBAAqB,CAACtE,IAAI,CAACiE,KAAK,CAAC,CAACV,CAAC,CAAC,CACtC,CACN;UAEN,CAAC;QACH,CACmB,CAAC;MAE1B,CAAC,CAAC;IACN;EAAC;IAAA3D,GAAA;IAAA8C,KAAA,EAED,SAAU6B,kBAAkBA,CAAA,EAAW;MACrC,OAAO,IAAI,CAAChE,OAAO,CAACiE,WAAW,CAAC,gBAAgB,EAAE;QAAEC,SAAS,EAAE;MAAc,CAAC,CAAC;IACjF;EAAC;AAAA,EA7HqCtF,aAAa;AAAAuF,eAAA,CAA/CrF,yBAAyB,iBAKR,mBAAmB;AAAAqF,eAAA,CALpCrF,yBAAyB,kBAMmC;EAC9DsF,SAAS,EAAE,QAAQ;EACnBC,SAAS,EAAE,IAAI;EACfC,SAAS,EAAE,IAAI;EACfhB,WAAW,EAAE,IAAI;EACjBiB,UAAU,EAAE;AACd,CAAC;AAAAJ,eAAA,CAZGrF,yBAAyB,aAcZ,CAACV,WAAW,CAACS,iBAAiB,CAAC,CAAC;AAkHnD,OAAO,IAAM2F,gBAAsC,GAAGrG,eAAe,CAACW,yBAAyB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"ScatterPlotChart.js","names":["createComponent","i18nEnhance","Text","scaleLinear","scaleTime","React","minMax","ScatterPlot","getScatterPlotRadius","AbstractChart","localizedMessages","ScatterPlotChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","_this$props","props","data","groupKey","valueKey","Object","keys","filter","_this$asProps","asProps","xScale","_this$asProps$marginY","marginY","plotWidth","radius","getValueScale","_toConsumableArray","flatValues","testItem","range","plotPadding","domain","Date","Number","isNaN","getMilliseconds","_this$asProps2","yScale","_this$asProps2$margin","marginX","plotHeight","max","Math","apply","min","_this$asProps3","reduce","result","item","entries","forEach","_ref","_ref2","_slicedToArray","value","add","Set","renderChart","_this$asProps4","onClickScatterItem","dataDefinitions","state","map","checked","createElement","onClick","x","y","id","color","renderTooltip","_this","_this$asProps5","showTooltip","Tooltip","wMin","_ref3","index","children","Fragment","Dot","tag","tooltipValueFormatter","getLegendAriaLabel","getI18nText","chartType","_defineProperty","direction","showXAxis","showYAxis","showLegend","ScatterPlotChart"],"sources":["../../../../src/component/Chart/ScatterPlotChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport { type ScaleLinear, scaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { minMax, ScatterPlot, getScatterPlotRadius } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { BaseChartProps, ListData } from './AbstractChart.type';\nimport type {\n ScatterPlotChartData,\n ScatterPlotChartProps,\n ScatterPlotChartType,\n} from './ScatterPlotChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass ScatterPlotChartComponent extends AbstractChart<\n ScatterPlotChartData,\n ScatterPlotChartProps,\n typeof ScatterPlotChartComponent.enhance\n> {\n static displayName = 'Chart.ScatterPlot';\n public static defaultProps: Partial<BaseChartProps<ListData>> = {\n direction: 'column',\n showXAxis: true,\n showYAxis: true,\n showTooltip: true,\n showLegend: false,\n };\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n protected get dataKeys(): string[] {\n const { data, groupKey, valueKey } = this.props;\n\n return Object.keys(data[0]).filter((key) => key !== groupKey && key !== valueKey);\n }\n\n protected get xScale() {\n const { xScale, marginY = 30, plotWidth, data, groupKey, valueKey } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n const radius = getScatterPlotRadius(valueKey) / this.getValueScale([...this.flatValues]);\n const testItem = data[0][groupKey];\n const range = [marginY, plotWidth - this.plotPadding];\n const domain = minMax(data, groupKey);\n\n if (testItem instanceof Date && !Number.isNaN(testItem.getMilliseconds())) {\n return scaleTime([domain[0] - radius, domain[1] + radius], range);\n }\n\n return scaleLinear([domain[0] - radius, domain[1] + radius], range);\n }\n\n protected get yScale(): ScaleLinear<any, any> {\n const { yScale, marginX = 30, plotHeight, valueKey } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n const flatValues = this.flatValues;\n const radius = getScatterPlotRadius(valueKey) / this.getValueScale([...flatValues]);\n\n const max = Math.max(...flatValues) + radius;\n const min = Math.min(...flatValues) - radius;\n\n return scaleLinear()\n .range([plotHeight - marginX, this.plotPadding])\n .domain([min, max]);\n }\n\n protected get flatValues(): Set<number> {\n const { data, groupKey, valueKey } = this.asProps;\n\n const flatValues = data.reduce<Set<number>>((result, item) => {\n Object.entries(item).forEach(([key, value]) => {\n if (key !== groupKey && key !== valueKey && typeof value === 'number') {\n result.add(value);\n }\n });\n\n return result;\n }, new Set());\n\n return flatValues;\n }\n\n protected renderChart() {\n const { groupKey, valueKey, onClickScatterItem } = this.asProps;\n const { dataDefinitions } = this.state;\n\n return dataDefinitions.map((item) => {\n return (\n item.checked && (\n <ScatterPlot onClick={onClickScatterItem} x={groupKey} y={item.id} key={item.id} color={item.color} value={valueKey} />\n )\n );\n });\n }\n\n protected renderTooltip() {\n const { data, groupKey, showTooltip } = this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\n\n return dataDefinitions\n .filter((item) => item.checked)\n .map((item) => {\n return (\n <ScatterPlot.Tooltip key={item.id} x={groupKey} y={item.id} wMin={100}>\n {({ index, x, y }: any) => {\n return {\n children: (\n <>\n <ScatterPlot.Tooltip.Dot color={item.color}>Data</ScatterPlot.Tooltip.Dot>\n <Text tag='div'>\n X axis\n {this.tooltipValueFormatter(data[index][x])}\n </Text>\n <Text tag='div'>\n Y axis\n {this.tooltipValueFormatter(data[index][y])}\n </Text>\n </>\n ),\n };\n }}\n </ScatterPlot.Tooltip>\n );\n });\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'ScatterPlot' });\n }\n}\n\nexport const ScatterPlotChart: ScatterPlotChartType = createComponent(ScatterPlotChartComponent);\n"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,8 @@
1
1
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
2
  import _createClass from "@babel/runtime/helpers/createClass";
3
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
4
- import _isNativeReflectConstruct from "@babel/runtime/helpers/isNativeReflectConstruct";
5
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
3
+ import _callSuper from "@babel/runtime/helpers/callSuper";
6
4
  import _inherits from "@babel/runtime/helpers/inherits";
7
5
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
8
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
9
6
  import { createComponent } from '@semcore/core';
10
7
  import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
11
8
  import { Text } from '@semcore/typography';
@@ -1 +1 @@
1
- {"version":3,"file":"VennChart.js","names":["createComponent","i18nEnhance","Text","scaleLinear","React","Venn","AbstractChart","localizedMessages","VennChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","xScale","asProps","yScale","data","props","legendKeys","Object","keys","filter","item","isIntersection","test","value","defaultLegendProps","legendType","renderChart","_this$asProps","onClickVennItem","_this$state","state","dataDefinitions","highlightedLine","checkedLegendItems","checked","checkedLegendItemsMap","reduce","result","id","intersections","dataKey","push","createElement","onClick","map","index","Circle","name","label","color","transparent","intersectionKey","intersectionKeys","split","hasDisabledItems","some","undefined","_dataDefinitions$find","find","legendItem","join","Intersection","renderTooltip","showTooltip","Tooltip","_ref","children","Fragment","Title","bold","getLegendAriaLabel","getI18nText","chartType","_defineProperty","direction","alignItems","marginY","marginX","VennChart"],"sources":["../../../../src/component/Chart/VennChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport { scaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n// @ts-ignore\nimport { Venn } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { VennChartData, VennChartProps, VennChartType } from './VennChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\n\nclass VennChartComponent extends AbstractChart<\n VennChartData,\n VennChartProps,\n typeof VennChartComponent.enhance\n> {\n static displayName = 'Chart.Venn';\n\n static defaultProps: Partial<BaseChartProps<VennChartData>> = {\n direction: 'row-reverse',\n alignItems: 'flex-start',\n marginY: 0,\n marginX: 0,\n };\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const { xScale } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n return scaleLinear();\n }\n\n get yScale() {\n const { yScale } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n return scaleLinear();\n }\n\n protected get dataKeys(): string[] {\n const { data } = this.props;\n\n const legendKeys: string[] = Object.keys(data).filter((item) => {\n const isIntersection = /\\//.test(item);\n\n return !isIntersection;\n });\n\n return legendKeys;\n }\n\n defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n };\n }\n\n renderChart() {\n const { data, onClickVennItem } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n const checkedLegendItems = dataDefinitions.filter((item) => item.checked);\n const checkedLegendItemsMap = checkedLegendItems.reduce<Record<string, LegendItem>>(\n (result, item) => {\n result[item.id] = item;\n\n return result;\n },\n {},\n );\n\n const intersections = Object.keys(data).reduce<string[]>((result, dataKey) => {\n const isIntersection = /\\//.test(dataKey);\n\n if (isIntersection) {\n result.push(dataKey);\n }\n\n return result;\n }, []);\n\n return (\n <Venn onClick={onClickVennItem}>\n {checkedLegendItems.map((item, index) => {\n return (\n <Venn.Circle\n key={item.id}\n dataKey={item.id}\n name={item.label}\n color={item.color}\n transparent={highlightedLine !== -1 && highlightedLine !== index}\n />\n );\n })}\n\n {intersections.map((intersectionKey) => {\n const intersectionKeys = intersectionKey.split('/');\n\n const hasDisabledItems = intersectionKeys.some((key) => {\n return checkedLegendItemsMap[key] === undefined;\n });\n\n if (hasDisabledItems) {\n return null;\n }\n\n const name = intersectionKeys\n .map((id) => {\n return dataDefinitions.find((legendItem) => legendItem.id === id)?.label || '';\n })\n .join(' & ');\n\n return <Venn.Intersection key={intersectionKey} dataKey={intersectionKey} name={name} />;\n })}\n </Venn>\n );\n }\n\n renderTooltip() {\n const { showTooltip } = this.asProps;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <Venn.Tooltip>\n {({ name, dataKey, data }: any) => {\n return {\n children: (\n <>\n <Venn.Tooltip.Title>{name}</Venn.Tooltip.Title>\n <Text bold>{data[dataKey]}</Text>\n </>\n ),\n };\n }}\n </Venn.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Venn' });\n }\n}\n\nexport const VennChart: VennChartType = createComponent(VennChartComponent);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VennChart.js","names":["createComponent","i18nEnhance","Text","scaleLinear","React","Venn","AbstractChart","localizedMessages","VennChartComponent","_AbstractChart","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","get","xScale","asProps","yScale","data","props","legendKeys","Object","keys","filter","item","isIntersection","test","value","defaultLegendProps","legendType","renderChart","_this$asProps","onClickVennItem","_this$state","state","dataDefinitions","highlightedLine","checkedLegendItems","checked","checkedLegendItemsMap","reduce","result","id","intersections","dataKey","push","createElement","onClick","map","index","Circle","name","label","color","transparent","intersectionKey","intersectionKeys","split","hasDisabledItems","some","undefined","_dataDefinitions$find","find","legendItem","join","Intersection","renderTooltip","showTooltip","Tooltip","_ref","children","Fragment","Title","bold","getLegendAriaLabel","getI18nText","chartType","_defineProperty","direction","alignItems","marginY","marginX","VennChart"],"sources":["../../../../src/component/Chart/VennChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport { scaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n// @ts-ignore\nimport { Venn } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { VennChartData, VennChartProps, VennChartType } from './VennChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\n\nclass VennChartComponent extends AbstractChart<\n VennChartData,\n VennChartProps,\n typeof VennChartComponent.enhance\n> {\n static displayName = 'Chart.Venn';\n\n static defaultProps: Partial<BaseChartProps<VennChartData>> = {\n direction: 'row-reverse',\n alignItems: 'flex-start',\n marginY: 0,\n marginX: 0,\n };\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const { xScale } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n return scaleLinear();\n }\n\n get yScale() {\n const { yScale } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n return scaleLinear();\n }\n\n protected get dataKeys(): string[] {\n const { data } = this.props;\n\n const legendKeys: string[] = Object.keys(data).filter((item) => {\n const isIntersection = /\\//.test(item);\n\n return !isIntersection;\n });\n\n return legendKeys;\n }\n\n defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n };\n }\n\n renderChart() {\n const { data, onClickVennItem } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n const checkedLegendItems = dataDefinitions.filter((item) => item.checked);\n const checkedLegendItemsMap = checkedLegendItems.reduce<Record<string, LegendItem>>(\n (result, item) => {\n result[item.id] = item;\n\n return result;\n },\n {},\n );\n\n const intersections = Object.keys(data).reduce<string[]>((result, dataKey) => {\n const isIntersection = /\\//.test(dataKey);\n\n if (isIntersection) {\n result.push(dataKey);\n }\n\n return result;\n }, []);\n\n return (\n <Venn onClick={onClickVennItem}>\n {checkedLegendItems.map((item, index) => {\n return (\n <Venn.Circle\n key={item.id}\n dataKey={item.id}\n name={item.label}\n color={item.color}\n transparent={highlightedLine !== -1 && highlightedLine !== index}\n />\n );\n })}\n\n {intersections.map((intersectionKey) => {\n const intersectionKeys = intersectionKey.split('/');\n\n const hasDisabledItems = intersectionKeys.some((key) => {\n return checkedLegendItemsMap[key] === undefined;\n });\n\n if (hasDisabledItems) {\n return null;\n }\n\n const name = intersectionKeys\n .map((id) => {\n return dataDefinitions.find((legendItem) => legendItem.id === id)?.label || '';\n })\n .join(' & ');\n\n return <Venn.Intersection key={intersectionKey} dataKey={intersectionKey} name={name} />;\n })}\n </Venn>\n );\n }\n\n renderTooltip() {\n const { showTooltip } = this.asProps;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <Venn.Tooltip>\n {({ name, dataKey, data }: any) => {\n return {\n children: (\n <>\n <Venn.Tooltip.Title>{name}</Venn.Tooltip.Title>\n <Text bold>{data[dataKey]}</Text>\n </>\n ),\n };\n }}\n </Venn.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Venn' });\n }\n}\n\nexport const VennChart: VennChartType = createComponent(VennChartComponent);\n"],"mappings":"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","ignoreList":[]}
@@ -1,12 +1,9 @@
1
1
  import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
2
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
3
  import _createClass from "@babel/runtime/helpers/createClass";
4
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
5
- import _isNativeReflectConstruct from "@babel/runtime/helpers/isNativeReflectConstruct";
6
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
4
+ import _callSuper from "@babel/runtime/helpers/callSuper";
7
5
  import _inherits from "@babel/runtime/helpers/inherits";
8
6
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
10
7
  import { Component } from '@semcore/core';
11
8
  import { makeDataHintsHandlers } from '../../a11y/hints';
12
9
  export var BaseLegend = /*#__PURE__*/function (_Component) {
@@ -1 +1 @@
1
- {"version":3,"file":"BaseLegend.js","names":["Component","makeDataHintsHandlers","BaseLegend","_Component","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","shape","id","checked","_this$props$onChangeV","_this$props","props","onChangeVisibleItem","call","_this$props$onMouseEn","_this$props2","onMouseEnterItem","_this$props$onMouseLe","_this$props3","onMouseLeaveItem","_this$props$onMouseEn2","_this$props5","_this$props$onMouseLe2","_this$props4","_this$props$onMouseLe3","_this$props6","e","_this$props$onMouseEn3","_this$props7","_this$props$onMouseLe4","_this$props8","_inherits","_createClass","key","value","componentDidMount","setHints","componentDidUpdate","prevProps","items","dataHints","_this$asProps","asProps","dataHintsHandler","undefined","forEach","legendItem","labelKey","label","getItem","index","line","Error","getLegendItemProps","_","_this$asProps2","_this$asProps2$shape","_this$asProps2$size","size","patterns","_objectSpread","onFocusLegendItem","onBlurLegendItem","onChangeLegendItem","onMouseEnter","bindOnMouseEnterItem","onMouseLeave","bindOnMouseLeaveItem","style","gridRowStart","gridRowEnd"],"sources":["../../../../src/component/ChartLegend/BaseLegend.tsx"],"sourcesContent":["import { Component, type Intergalactic } from '@semcore/core';\nimport type React from 'react';\n\nimport type { LegendProps } from './BaseLegend.type';\nimport { StaticShapes, type LegendItemKey, type LegendItemProps, type ShapeType } from './LegendItem/LegendItem.type';\nimport { makeDataHintsHandlers } from '../../a11y/hints';\n\nexport abstract class BaseLegend<T extends LegendProps> extends Component<T> {\n componentDidMount() {\n this.setHints();\n }\n\n componentDidUpdate(prevProps: T) {\n if (prevProps.items !== this.props.items || prevProps.dataHints !== this.props.dataHints) {\n this.setHints();\n }\n }\n\n setHints() {\n const { items, dataHints } = this.asProps;\n const dataHintsHandler = dataHints ? makeDataHintsHandlers(dataHints) : undefined;\n\n items.forEach((legendItem) => {\n dataHintsHandler?.labelKey('value', legendItem.id, legendItem.label);\n });\n }\n\n getItem(index: number) {\n const line = this.asProps.items[index];\n\n if (line === undefined) {\n throw new Error(`No index \"${index}\" in lines`);\n }\n\n return line;\n }\n\n getLegendItemProps(\n _: {},\n index: number,\n ): LegendItemProps & Intergalactic.InternalTypings.ComponentPropsNesting<'div'> {\n const { shape = 'Checkbox', size = 'm', patterns } = this.asProps;\n const line = this.getItem(index);\n\n return {\n ...line,\n shape,\n size,\n onFocusLegendItem: this.onFocusLegendItem(line.checked),\n onBlurLegendItem: this.onBlurLegendItem,\n onChangeLegendItem: this.onChangeLegendItem(shape),\n onMouseEnter: line.checked ? this.bindOnMouseEnterItem(line.id) : undefined,\n onMouseLeave: this.bindOnMouseLeaveItem(line.id),\n style: { gridRowStart: `${index + 1}`, gridRowEnd: `${index + 2}` },\n patterns,\n };\n }\n\n onChangeLegendItem = (shape: ShapeType) => (id: LegendItemKey, checked: boolean) => {\n if (shape !== 'Checkbox') return;\n\n this.props.onChangeVisibleItem?.(id, checked);\n\n if (checked) {\n this.props.onMouseEnterItem?.(id);\n } else {\n this.props.onMouseLeaveItem?.(id);\n }\n };\n\n onFocusLegendItem = (checked: boolean) => (id: LegendItemKey) => {\n if (!checked) {\n return this.props.onMouseLeaveItem?.(id);\n }\n\n this.props.onMouseEnterItem?.(id);\n };\n\n onBlurLegendItem = (id: LegendItemKey) => {\n this.props.onMouseLeaveItem?.(id);\n };\n\n bindOnMouseEnterItem = (id: LegendItemKey) => {\n return (e: React.SyntheticEvent) => {\n this.props.onMouseEnterItem?.(id, e);\n };\n };\n\n bindOnMouseLeaveItem = (id: LegendItemKey) => {\n return (e: React.SyntheticEvent) => {\n this.props.onMouseLeaveItem?.(id, e);\n };\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"BaseLegend.js","names":["Component","makeDataHintsHandlers","BaseLegend","_Component","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","shape","id","checked","_this$props$onChangeV","_this$props","props","onChangeVisibleItem","call","_this$props$onMouseEn","_this$props2","onMouseEnterItem","_this$props$onMouseLe","_this$props3","onMouseLeaveItem","_this$props$onMouseEn2","_this$props5","_this$props$onMouseLe2","_this$props4","_this$props$onMouseLe3","_this$props6","e","_this$props$onMouseEn3","_this$props7","_this$props$onMouseLe4","_this$props8","_inherits","_createClass","key","value","componentDidMount","setHints","componentDidUpdate","prevProps","items","dataHints","_this$asProps","asProps","dataHintsHandler","undefined","forEach","legendItem","labelKey","label","getItem","index","line","Error","getLegendItemProps","_","_this$asProps2","_this$asProps2$shape","_this$asProps2$size","size","patterns","_objectSpread","onFocusLegendItem","onBlurLegendItem","onChangeLegendItem","onMouseEnter","bindOnMouseEnterItem","onMouseLeave","bindOnMouseLeaveItem","style","gridRowStart","gridRowEnd"],"sources":["../../../../src/component/ChartLegend/BaseLegend.tsx"],"sourcesContent":["import { Component, type Intergalactic } from '@semcore/core';\nimport type React from 'react';\n\nimport type { LegendProps } from './BaseLegend.type';\nimport { StaticShapes, type LegendItemKey, type LegendItemProps, type ShapeType } from './LegendItem/LegendItem.type';\nimport { makeDataHintsHandlers } from '../../a11y/hints';\n\nexport abstract class BaseLegend<T extends LegendProps> extends Component<T> {\n componentDidMount() {\n this.setHints();\n }\n\n componentDidUpdate(prevProps: T) {\n if (prevProps.items !== this.props.items || prevProps.dataHints !== this.props.dataHints) {\n this.setHints();\n }\n }\n\n setHints() {\n const { items, dataHints } = this.asProps;\n const dataHintsHandler = dataHints ? makeDataHintsHandlers(dataHints) : undefined;\n\n items.forEach((legendItem) => {\n dataHintsHandler?.labelKey('value', legendItem.id, legendItem.label);\n });\n }\n\n getItem(index: number) {\n const line = this.asProps.items[index];\n\n if (line === undefined) {\n throw new Error(`No index \"${index}\" in lines`);\n }\n\n return line;\n }\n\n getLegendItemProps(\n _: {},\n index: number,\n ): LegendItemProps & Intergalactic.InternalTypings.ComponentPropsNesting<'div'> {\n const { shape = 'Checkbox', size = 'm', patterns } = this.asProps;\n const line = this.getItem(index);\n\n return {\n ...line,\n shape,\n size,\n onFocusLegendItem: this.onFocusLegendItem(line.checked),\n onBlurLegendItem: this.onBlurLegendItem,\n onChangeLegendItem: this.onChangeLegendItem(shape),\n onMouseEnter: line.checked ? this.bindOnMouseEnterItem(line.id) : undefined,\n onMouseLeave: this.bindOnMouseLeaveItem(line.id),\n style: { gridRowStart: `${index + 1}`, gridRowEnd: `${index + 2}` },\n patterns,\n };\n }\n\n onChangeLegendItem = (shape: ShapeType) => (id: LegendItemKey, checked: boolean) => {\n if (shape !== 'Checkbox') return;\n\n this.props.onChangeVisibleItem?.(id, checked);\n\n if (checked) {\n this.props.onMouseEnterItem?.(id);\n } else {\n this.props.onMouseLeaveItem?.(id);\n }\n };\n\n onFocusLegendItem = (checked: boolean) => (id: LegendItemKey) => {\n if (!checked) {\n return this.props.onMouseLeaveItem?.(id);\n }\n\n this.props.onMouseEnterItem?.(id);\n };\n\n onBlurLegendItem = (id: LegendItemKey) => {\n this.props.onMouseLeaveItem?.(id);\n };\n\n bindOnMouseEnterItem = (id: LegendItemKey) => {\n return (e: React.SyntheticEvent) => {\n this.props.onMouseEnterItem?.(id, e);\n };\n };\n\n bindOnMouseLeaveItem = (id: LegendItemKey) => {\n return (e: React.SyntheticEvent) => {\n this.props.onMouseLeaveItem?.(id, e);\n };\n };\n}\n"],"mappings":"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","ignoreList":[]}