@semcore/d3-chart 3.61.0-prerelease.5 → 3.61.0-prerelease.6
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.
- package/lib/cjs/AnimatedClipPath.js +15 -11
- package/lib/cjs/AnimatedClipPath.js.map +1 -1
- package/lib/cjs/Area.js +48 -71
- package/lib/cjs/Area.js.map +1 -1
- package/lib/cjs/Axis.js +108 -170
- package/lib/cjs/Axis.js.map +1 -1
- package/lib/cjs/Bar.js +34 -29
- package/lib/cjs/Bar.js.map +1 -1
- package/lib/cjs/Bubble.js +137 -211
- package/lib/cjs/Bubble.js.map +1 -1
- package/lib/cjs/CompactHorizontalBar.js +82 -92
- package/lib/cjs/CompactHorizontalBar.js.map +1 -1
- package/lib/cjs/Donut.js +139 -154
- package/lib/cjs/Donut.js.map +1 -1
- package/lib/cjs/Dots.js +38 -55
- package/lib/cjs/Dots.js.map +1 -1
- package/lib/cjs/GroupBar.js +18 -15
- package/lib/cjs/GroupBar.js.map +1 -1
- package/lib/cjs/HorizontalBar.js +34 -29
- package/lib/cjs/HorizontalBar.js.map +1 -1
- package/lib/cjs/Hover.js +45 -52
- package/lib/cjs/Hover.js.map +1 -1
- package/lib/cjs/Line.js +41 -63
- package/lib/cjs/Line.js.map +1 -1
- package/lib/cjs/Pattern.js +12 -16
- package/lib/cjs/Pattern.js.map +1 -1
- package/lib/cjs/Plot.js +36 -29
- package/lib/cjs/Plot.js.map +1 -1
- package/lib/cjs/Radar.js +261 -281
- package/lib/cjs/Radar.js.map +1 -1
- package/lib/cjs/RadialTree.js +154 -169
- package/lib/cjs/RadialTree.js.map +1 -1
- package/lib/cjs/Reference.js +51 -45
- package/lib/cjs/Reference.js.map +1 -1
- package/lib/cjs/ResponsiveContainer.js +25 -20
- package/lib/cjs/ResponsiveContainer.js.map +1 -1
- package/lib/cjs/ScatterPlot.js +61 -71
- package/lib/cjs/ScatterPlot.js.map +1 -1
- package/lib/cjs/StackBar.js +31 -20
- package/lib/cjs/StackBar.js.map +1 -1
- package/lib/cjs/StackedArea.js +16 -12
- package/lib/cjs/StackedArea.js.map +1 -1
- package/lib/cjs/Tooltip.js +73 -73
- package/lib/cjs/Tooltip.js.map +1 -1
- package/lib/cjs/Venn.js +52 -77
- package/lib/cjs/Venn.js.map +1 -1
- package/lib/cjs/a11y/DataAccessibilityTable.js +3 -2
- package/lib/cjs/a11y/DataAccessibilityTable.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yModule.js +86 -43
- package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yView.js +19 -44
- package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
- package/lib/cjs/a11y/bezier.js +2 -1
- package/lib/cjs/a11y/bezier.js.map +1 -1
- package/lib/cjs/a11y/focus.js +6 -5
- package/lib/cjs/a11y/focus.js.map +1 -1
- package/lib/cjs/a11y/hints.js +9 -6
- package/lib/cjs/a11y/hints.js.map +1 -1
- package/lib/cjs/a11y/insights.js +64 -63
- package/lib/cjs/a11y/insights.js.map +1 -1
- package/lib/cjs/a11y/intl.js +2 -1
- package/lib/cjs/a11y/intl.js.map +1 -1
- package/lib/cjs/a11y/locale.js +5 -5
- package/lib/cjs/a11y/locale.js.map +1 -1
- package/lib/cjs/a11y/serialize.js +17 -15
- package/lib/cjs/a11y/serialize.js.map +1 -1
- package/lib/cjs/a11y/summarize.js +2 -1
- package/lib/cjs/a11y/summarize.js.map +1 -1
- package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js +5 -4
- package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/a11y/translations/module/de.json +2 -2
- package/lib/cjs/a11y/translations/module/en.json +2 -2
- package/lib/cjs/a11y/translations/module/es.json +2 -2
- package/lib/cjs/a11y/translations/module/fr.json +2 -2
- package/lib/cjs/a11y/translations/module/it.json +2 -2
- package/lib/cjs/a11y/translations/module/ja.json +2 -2
- package/lib/cjs/a11y/translations/module/ko.json +2 -2
- package/lib/cjs/a11y/translations/module/nl.json +2 -2
- package/lib/cjs/a11y/translations/module/pl.json +2 -2
- package/lib/cjs/a11y/translations/module/pt.json +2 -2
- package/lib/cjs/a11y/translations/module/sv.json +2 -2
- package/lib/cjs/a11y/translations/module/tr.json +2 -2
- package/lib/cjs/a11y/translations/module/vi.json +2 -2
- package/lib/cjs/a11y/translations/module/zh.json +2 -2
- package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js +5 -4
- package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/color.js +3 -2
- package/lib/cjs/color.js.map +1 -1
- package/lib/cjs/component/Chart/AbstractChart.js +83 -157
- package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
- package/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/AreaChart.js +51 -24
- package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
- package/lib/cjs/component/Chart/AreaChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/BarChart.js +69 -85
- package/lib/cjs/component/Chart/BarChart.js.map +1 -1
- package/lib/cjs/component/Chart/BarChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/BubbleChart.js +27 -31
- package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
- package/lib/cjs/component/Chart/BubbleChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/CigaretteChart.js +147 -340
- package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/cjs/component/Chart/CigaretteChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +15 -11
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js.map +1 -1
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/DonutChart.js +22 -16
- package/lib/cjs/component/Chart/DonutChart.js.map +1 -1
- package/lib/cjs/component/Chart/DonutChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/HistogramChart.js +44 -16
- package/lib/cjs/component/Chart/HistogramChart.js.map +1 -1
- package/lib/cjs/component/Chart/HistogramChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/LineChart.js +48 -22
- package/lib/cjs/component/Chart/LineChart.js.map +1 -1
- package/lib/cjs/component/Chart/LineChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/RadarChart.js +19 -15
- package/lib/cjs/component/Chart/RadarChart.js.map +1 -1
- package/lib/cjs/component/Chart/RadarChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/ScatterPlotChart.js +21 -16
- package/lib/cjs/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/cjs/component/Chart/ScatterPlotChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/VennChart.js +19 -16
- package/lib/cjs/component/Chart/VennChart.js.map +1 -1
- package/lib/cjs/component/Chart/VennChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/index.js +8 -7
- package/lib/cjs/component/Chart/index.js.map +1 -1
- package/lib/cjs/component/ChartLegend/BaseLegend.js +23 -45
- package/lib/cjs/component/ChartLegend/BaseLegend.js.map +1 -1
- package/lib/cjs/component/ChartLegend/BaseLegend.type.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +24 -19
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +83 -108
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js +2 -1
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +23 -18
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
- package/lib/cjs/component/ChartLegend/index.js +2 -1
- package/lib/cjs/component/ChartLegend/index.js.map +1 -1
- package/lib/cjs/component/Cigarette/Cigarette.js +20 -16
- package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
- package/lib/cjs/component/StackGroupBar/StackGroupBar.js +24 -19
- package/lib/cjs/component/StackGroupBar/StackGroupBar.js.map +1 -1
- package/lib/cjs/component/StackGroupBar/StackGroupBar.type.js.map +1 -1
- package/lib/cjs/createElement.d.js.map +1 -1
- package/lib/cjs/createElement.js +12 -10
- package/lib/cjs/createElement.js.map +1 -1
- package/lib/cjs/index.js +2 -9
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/style/axis.shadow.css +1 -39
- package/lib/cjs/style/bubble.shadow.css +0 -8
- package/lib/cjs/style/hover.shadow.css +2 -2
- package/lib/cjs/style/plot.shadow.css +6 -8
- package/lib/cjs/style/plotA11yModule.shadow.css +11 -10
- package/lib/cjs/style/plotA11yView.shadow.css +26 -13
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js +5 -4
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/translations/de.json +0 -1
- package/lib/cjs/translations/es.json +0 -1
- package/lib/cjs/translations/fr.json +0 -1
- package/lib/cjs/translations/it.json +0 -1
- package/lib/cjs/translations/ja.json +0 -1
- package/lib/cjs/translations/ko.json +0 -1
- package/lib/cjs/translations/nl.json +0 -1
- package/lib/cjs/translations/pl.json +0 -1
- package/lib/cjs/translations/pt.json +0 -1
- package/lib/cjs/translations/sv.json +0 -1
- package/lib/cjs/translations/tr.json +1 -2
- package/lib/cjs/translations/vi.json +0 -1
- package/lib/cjs/translations/zh.json +0 -1
- package/lib/cjs/types/Area.d.js.map +1 -1
- package/lib/cjs/types/Axis.d.js.map +1 -1
- package/lib/cjs/types/Bar.d.js.map +1 -1
- package/lib/cjs/types/Bubble.d.js.map +1 -1
- package/lib/cjs/types/ClipPath.d.js.map +1 -1
- package/lib/cjs/types/CompactHorizontalBar.d.js.map +1 -1
- package/lib/cjs/types/Donut.d.js.map +1 -1
- package/lib/cjs/types/GroupBar.d.js.map +1 -1
- package/lib/cjs/types/HorizontalBar.d.js.map +1 -1
- package/lib/cjs/types/Hover.d.js.map +1 -1
- package/lib/cjs/types/Line.d.js.map +1 -1
- package/lib/cjs/types/Plot.d.js.map +1 -1
- package/lib/cjs/types/Radar.d.js.map +1 -1
- package/lib/cjs/types/Reference.d.js.map +1 -1
- package/lib/cjs/types/ResponsiveContainer.d.js.map +1 -1
- package/lib/cjs/types/ScatterPlot.d.js.map +1 -1
- package/lib/cjs/types/StackBar.d.js.map +1 -1
- package/lib/cjs/types/StackedArea.d.js.map +1 -1
- package/lib/cjs/types/Tooltip.d.js.map +1 -1
- package/lib/cjs/types/Venn.d.js.map +1 -1
- package/lib/cjs/types/context.d.js.map +1 -1
- package/lib/cjs/types/index.d.js +2 -14
- package/lib/cjs/types/index.d.js.map +1 -1
- package/lib/cjs/utils.js +55 -36
- package/lib/cjs/utils.js.map +1 -1
- package/lib/es6/AnimatedClipPath.js +11 -9
- package/lib/es6/AnimatedClipPath.js.map +1 -1
- package/lib/es6/Area.js +45 -70
- package/lib/es6/Area.js.map +1 -1
- package/lib/es6/Axis.js +104 -168
- package/lib/es6/Axis.js.map +1 -1
- package/lib/es6/Bar.js +29 -27
- package/lib/es6/Bar.js.map +1 -1
- package/lib/es6/Bubble.js +135 -211
- package/lib/es6/Bubble.js.map +1 -1
- package/lib/es6/CompactHorizontalBar.js +77 -89
- package/lib/es6/CompactHorizontalBar.js.map +1 -1
- package/lib/es6/Donut.js +137 -154
- package/lib/es6/Donut.js.map +1 -1
- package/lib/es6/Dots.js +36 -55
- package/lib/es6/Dots.js.map +1 -1
- package/lib/es6/GroupBar.js +15 -13
- package/lib/es6/GroupBar.js.map +1 -1
- package/lib/es6/HorizontalBar.js +29 -27
- package/lib/es6/HorizontalBar.js.map +1 -1
- package/lib/es6/Hover.js +41 -51
- package/lib/es6/Hover.js.map +1 -1
- package/lib/es6/Line.js +37 -61
- package/lib/es6/Line.js.map +1 -1
- package/lib/es6/Pattern.js +3 -7
- package/lib/es6/Pattern.js.map +1 -1
- package/lib/es6/Plot.js +32 -28
- package/lib/es6/Plot.js.map +1 -1
- package/lib/es6/Radar.js +257 -279
- package/lib/es6/Radar.js.map +1 -1
- package/lib/es6/RadialTree.js +151 -168
- package/lib/es6/RadialTree.js.map +1 -1
- package/lib/es6/Reference.js +45 -43
- package/lib/es6/Reference.js.map +1 -1
- package/lib/es6/ResponsiveContainer.js +19 -16
- package/lib/es6/ResponsiveContainer.js.map +1 -1
- package/lib/es6/ScatterPlot.js +59 -71
- package/lib/es6/ScatterPlot.js.map +1 -1
- package/lib/es6/StackBar.js +27 -17
- package/lib/es6/StackBar.js.map +1 -1
- package/lib/es6/StackedArea.js +13 -10
- package/lib/es6/StackedArea.js.map +1 -1
- package/lib/es6/Tooltip.js +65 -68
- package/lib/es6/Tooltip.js.map +1 -1
- package/lib/es6/Venn.js +48 -75
- package/lib/es6/Venn.js.map +1 -1
- package/lib/es6/a11y/DataAccessibilityTable.js.map +1 -1
- package/lib/es6/a11y/PlotA11yModule.js +86 -43
- package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
- package/lib/es6/a11y/PlotA11yView.js +16 -43
- package/lib/es6/a11y/PlotA11yView.js.map +1 -1
- package/lib/es6/a11y/bezier.js.map +1 -1
- package/lib/es6/a11y/focus.js +4 -4
- package/lib/es6/a11y/focus.js.map +1 -1
- package/lib/es6/a11y/hints.js +2 -2
- package/lib/es6/a11y/hints.js.map +1 -1
- package/lib/es6/a11y/insights.js +61 -61
- package/lib/es6/a11y/insights.js.map +1 -1
- package/lib/es6/a11y/intl.js.map +1 -1
- package/lib/es6/a11y/locale.js +2 -3
- package/lib/es6/a11y/locale.js.map +1 -1
- package/lib/es6/a11y/serialize.js +13 -14
- package/lib/es6/a11y/serialize.js.map +1 -1
- package/lib/es6/a11y/summarize.js.map +1 -1
- package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js +2 -2
- package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/a11y/translations/module/de.json +2 -2
- package/lib/es6/a11y/translations/module/en.json +2 -2
- package/lib/es6/a11y/translations/module/es.json +2 -2
- package/lib/es6/a11y/translations/module/fr.json +2 -2
- package/lib/es6/a11y/translations/module/it.json +2 -2
- package/lib/es6/a11y/translations/module/ja.json +2 -2
- package/lib/es6/a11y/translations/module/ko.json +2 -2
- package/lib/es6/a11y/translations/module/nl.json +2 -2
- package/lib/es6/a11y/translations/module/pl.json +2 -2
- package/lib/es6/a11y/translations/module/pt.json +2 -2
- package/lib/es6/a11y/translations/module/sv.json +2 -2
- package/lib/es6/a11y/translations/module/tr.json +2 -2
- package/lib/es6/a11y/translations/module/vi.json +2 -2
- package/lib/es6/a11y/translations/module/zh.json +2 -2
- package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js +2 -2
- package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/color.js +1 -1
- package/lib/es6/color.js.map +1 -1
- package/lib/es6/component/Chart/AbstractChart.js +80 -159
- package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
- package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
- package/lib/es6/component/Chart/AreaChart.js +48 -23
- package/lib/es6/component/Chart/AreaChart.js.map +1 -1
- package/lib/es6/component/Chart/AreaChart.type.js.map +1 -1
- package/lib/es6/component/Chart/BarChart.js +67 -84
- package/lib/es6/component/Chart/BarChart.js.map +1 -1
- package/lib/es6/component/Chart/BarChart.type.js.map +1 -1
- package/lib/es6/component/Chart/BubbleChart.js +24 -30
- package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
- package/lib/es6/component/Chart/BubbleChart.type.js.map +1 -1
- package/lib/es6/component/Chart/CigaretteChart.js +144 -341
- package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/es6/component/Chart/CigaretteChart.type.js.map +1 -1
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js +12 -9
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -1
- package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
- package/lib/es6/component/Chart/DonutChart.js +18 -14
- package/lib/es6/component/Chart/DonutChart.js.map +1 -1
- package/lib/es6/component/Chart/DonutChart.type.js.map +1 -1
- package/lib/es6/component/Chart/HistogramChart.js +41 -15
- package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
- package/lib/es6/component/Chart/HistogramChart.type.js.map +1 -1
- package/lib/es6/component/Chart/LineChart.js +45 -20
- package/lib/es6/component/Chart/LineChart.js.map +1 -1
- package/lib/es6/component/Chart/LineChart.type.js.map +1 -1
- package/lib/es6/component/Chart/RadarChart.js +16 -13
- package/lib/es6/component/Chart/RadarChart.js.map +1 -1
- package/lib/es6/component/Chart/RadarChart.type.js.map +1 -1
- package/lib/es6/component/Chart/ScatterPlotChart.js +18 -15
- package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/es6/component/Chart/ScatterPlotChart.type.js.map +1 -1
- package/lib/es6/component/Chart/VennChart.js +16 -14
- package/lib/es6/component/Chart/VennChart.js.map +1 -1
- package/lib/es6/component/Chart/VennChart.type.js.map +1 -1
- package/lib/es6/component/Chart/index.js +6 -6
- package/lib/es6/component/Chart/index.js.map +1 -1
- package/lib/es6/component/ChartLegend/BaseLegend.js +20 -43
- package/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
- package/lib/es6/component/ChartLegend/BaseLegend.type.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +19 -17
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +74 -102
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +17 -15
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
- package/lib/es6/component/ChartLegend/index.js.map +1 -1
- package/lib/es6/component/Cigarette/Cigarette.js +17 -14
- package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
- package/lib/es6/component/StackGroupBar/StackGroupBar.js +21 -17
- package/lib/es6/component/StackGroupBar/StackGroupBar.js.map +1 -1
- package/lib/es6/component/StackGroupBar/StackGroupBar.type.js.map +1 -1
- package/lib/es6/createElement.d.js.map +1 -1
- package/lib/es6/createElement.js +7 -7
- package/lib/es6/createElement.js.map +1 -1
- package/lib/es6/index.js +0 -1
- package/lib/es6/index.js.map +1 -1
- package/lib/es6/style/axis.shadow.css +1 -39
- package/lib/es6/style/bubble.shadow.css +0 -8
- package/lib/es6/style/hover.shadow.css +2 -2
- package/lib/es6/style/plot.shadow.css +6 -8
- package/lib/es6/style/plotA11yModule.shadow.css +11 -10
- package/lib/es6/style/plotA11yView.shadow.css +26 -13
- package/lib/es6/translations/__intergalactic-dynamic-locales.js +2 -2
- package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/translations/de.json +0 -1
- package/lib/es6/translations/es.json +0 -1
- package/lib/es6/translations/fr.json +0 -1
- package/lib/es6/translations/it.json +0 -1
- package/lib/es6/translations/ja.json +0 -1
- package/lib/es6/translations/ko.json +0 -1
- package/lib/es6/translations/nl.json +0 -1
- package/lib/es6/translations/pl.json +0 -1
- package/lib/es6/translations/pt.json +0 -1
- package/lib/es6/translations/sv.json +0 -1
- package/lib/es6/translations/tr.json +1 -2
- package/lib/es6/translations/vi.json +0 -1
- package/lib/es6/translations/zh.json +0 -1
- package/lib/es6/types/Area.d.js.map +1 -1
- package/lib/es6/types/Axis.d.js.map +1 -1
- package/lib/es6/types/Bar.d.js.map +1 -1
- package/lib/es6/types/Bubble.d.js.map +1 -1
- package/lib/es6/types/ClipPath.d.js.map +1 -1
- package/lib/es6/types/CompactHorizontalBar.d.js.map +1 -1
- package/lib/es6/types/Donut.d.js.map +1 -1
- package/lib/es6/types/GroupBar.d.js.map +1 -1
- package/lib/es6/types/HorizontalBar.d.js.map +1 -1
- package/lib/es6/types/Hover.d.js.map +1 -1
- package/lib/es6/types/Line.d.js.map +1 -1
- package/lib/es6/types/Plot.d.js.map +1 -1
- package/lib/es6/types/Radar.d.js.map +1 -1
- package/lib/es6/types/Reference.d.js.map +1 -1
- package/lib/es6/types/ResponsiveContainer.d.js.map +1 -1
- package/lib/es6/types/ScatterPlot.d.js.map +1 -1
- package/lib/es6/types/StackBar.d.js.map +1 -1
- package/lib/es6/types/StackedArea.d.js.map +1 -1
- package/lib/es6/types/Tooltip.d.js.map +1 -1
- package/lib/es6/types/Venn.d.js.map +1 -1
- package/lib/es6/types/context.d.js.map +1 -1
- package/lib/es6/types/index.d.js +0 -2
- package/lib/es6/types/index.d.js.map +1 -1
- package/lib/es6/utils.js +16 -16
- package/lib/es6/utils.js.map +1 -1
- package/lib/esm/AnimatedClipPath.mjs +16 -9
- package/lib/esm/Area.mjs +36 -51
- package/lib/esm/Axis.mjs +86 -143
- package/lib/esm/Bar.mjs +34 -31
- package/lib/esm/Bubble.mjs +106 -154
- package/lib/esm/CompactHorizontalBar.mjs +80 -88
- package/lib/esm/Donut.mjs +75 -87
- package/lib/esm/Dots.mjs +34 -50
- package/lib/esm/GroupBar.mjs +14 -12
- package/lib/esm/HorizontalBar.mjs +34 -31
- package/lib/esm/Hover.mjs +50 -53
- package/lib/esm/Line.mjs +31 -45
- package/lib/esm/Pattern.mjs +2 -4
- package/lib/esm/Plot.mjs +35 -30
- package/lib/esm/Radar.mjs +175 -188
- package/lib/esm/RadialTree.mjs +111 -105
- package/lib/esm/Reference.mjs +40 -37
- package/lib/esm/ResponsiveContainer.mjs +21 -18
- package/lib/esm/ScatterPlot.mjs +40 -49
- package/lib/esm/StackBar.mjs +28 -18
- package/lib/esm/StackedArea.mjs +16 -13
- package/lib/esm/Tooltip.mjs +59 -56
- package/lib/esm/Venn.mjs +47 -67
- package/lib/esm/a11y/DataAccessibilityTable.mjs +2 -2
- package/lib/esm/a11y/PlotA11yModule.mjs +74 -35
- package/lib/esm/a11y/PlotA11yView.mjs +17 -41
- package/lib/esm/a11y/focus.mjs +4 -4
- package/lib/esm/a11y/hints.mjs +2 -2
- package/lib/esm/a11y/insights.mjs +76 -76
- package/lib/esm/a11y/locale.mjs +2 -2
- package/lib/esm/a11y/serialize.mjs +12 -12
- package/lib/esm/a11y/translations/module/__intergalactic-dynamic-locales.mjs +2 -2
- package/lib/esm/a11y/translations/module/de.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/en.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/es.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/fr.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/it.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/ja.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/ko.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/nl.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/pl.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/pt.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/sv.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/tr.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/vi.json.mjs +4 -2
- package/lib/esm/a11y/translations/module/zh.json.mjs +4 -2
- package/lib/esm/a11y/translations/view/__intergalactic-dynamic-locales.mjs +2 -2
- package/lib/esm/component/Chart/AbstractChart.mjs +65 -141
- package/lib/esm/component/Chart/AreaChart.mjs +51 -27
- package/lib/esm/component/Chart/BarChart.mjs +51 -64
- package/lib/esm/component/Chart/BubbleChart.mjs +25 -30
- package/lib/esm/component/Chart/CigaretteChart.mjs +119 -298
- package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +15 -13
- package/lib/esm/component/Chart/DonutChart.mjs +19 -16
- package/lib/esm/component/Chart/HistogramChart.mjs +46 -22
- package/lib/esm/component/Chart/LineChart.mjs +46 -23
- package/lib/esm/component/Chart/RadarChart.mjs +18 -16
- package/lib/esm/component/Chart/ScatterPlotChart.mjs +21 -18
- package/lib/esm/component/Chart/VennChart.mjs +19 -16
- package/lib/esm/component/Chart/index.mjs +6 -6
- package/lib/esm/component/ChartLegend/BaseLegend.mjs +22 -45
- package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +22 -19
- package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +75 -88
- package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +25 -22
- package/lib/esm/component/ChartLegend/index.mjs +0 -2
- package/lib/esm/component/Cigarette/Cigarette.mjs +19 -16
- package/lib/esm/component/StackGroupBar/StackGroupBar.mjs +22 -18
- package/lib/esm/createElement.mjs +10 -8
- package/lib/esm/index.mjs +0 -3
- package/lib/esm/style/axis.shadow.css +1 -39
- package/lib/esm/style/bubble.shadow.css +0 -8
- package/lib/esm/style/hover.shadow.css +2 -2
- package/lib/esm/style/plot.shadow.css +6 -8
- package/lib/esm/style/plotA11yModule.shadow.css +11 -10
- package/lib/esm/style/plotA11yView.shadow.css +26 -13
- package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +2 -2
- package/lib/esm/translations/es.json.mjs +0 -1
- package/lib/esm/translations/fr.json.mjs +0 -1
- package/lib/esm/translations/it.json.mjs +0 -1
- package/lib/esm/translations/ja.json.mjs +0 -1
- package/lib/esm/translations/ko.json.mjs +0 -1
- package/lib/esm/translations/nl.json.mjs +0 -1
- package/lib/esm/translations/pl.json.mjs +0 -1
- package/lib/esm/translations/pt.json.mjs +0 -1
- package/lib/esm/translations/sv.json.mjs +0 -1
- package/lib/esm/translations/tr.json.mjs +1 -2
- package/lib/esm/translations/vi.json.mjs +0 -1
- package/lib/esm/translations/zh.json.mjs +0 -1
- package/lib/esm/utils.mjs +11 -11
- package/lib/types/Area.d.ts +6 -9
- package/lib/types/Axis.d.ts +3 -10
- package/lib/types/Bar.d.ts +6 -7
- package/lib/types/Bubble.d.ts +5 -21
- package/lib/types/ClipPath.d.ts +3 -4
- package/lib/types/CompactHorizontalBar.d.ts +8 -7
- package/lib/types/Donut.d.ts +5 -8
- package/lib/types/GroupBar.d.ts +6 -6
- package/lib/types/HorizontalBar.d.ts +6 -7
- package/lib/types/Hover.d.ts +8 -8
- package/lib/types/Line.d.ts +6 -9
- package/lib/types/Pattern.d.ts +51 -51
- package/lib/types/Plot.d.ts +9 -11
- package/lib/types/Radar.d.ts +7 -10
- package/lib/types/RadialTree.d.ts +54 -10
- package/lib/types/Reference.d.ts +5 -6
- package/lib/types/ResponsiveContainer.d.ts +4 -5
- package/lib/types/ScatterPlot.d.ts +5 -8
- package/lib/types/StackBar.d.ts +6 -7
- package/lib/types/StackedArea.d.ts +5 -6
- package/lib/types/Tooltip.d.ts +12 -12
- package/lib/types/Venn.d.ts +6 -7
- package/lib/types/a11y/DataAccessibilityTable.d.ts +2 -2
- package/lib/types/a11y/PlotA11yModule.d.ts +11 -4
- package/lib/types/a11y/PlotA11yView.d.ts +2 -13
- package/lib/types/a11y/hints.d.ts +5 -5
- package/lib/types/a11y/insights.d.ts +1 -1
- package/lib/types/a11y/intl.d.ts +1 -1
- package/lib/types/a11y/serialize.d.ts +7 -7
- package/lib/types/a11y/summarize.d.ts +2 -2
- package/lib/types/a11y/translations/module/__intergalactic-dynamic-locales.d.ts +14 -14
- package/lib/types/component/Chart/AbstractChart.d.ts +13 -20
- package/lib/types/component/Chart/AbstractChart.type.d.ts +25 -39
- package/lib/types/component/Chart/AreaChart.d.ts +1 -1
- package/lib/types/component/Chart/AreaChart.type.d.ts +7 -17
- package/lib/types/component/Chart/BarChart.d.ts +1 -1
- package/lib/types/component/Chart/BarChart.type.d.ts +9 -14
- package/lib/types/component/Chart/BubbleChart.d.ts +1 -1
- package/lib/types/component/Chart/BubbleChart.type.d.ts +5 -10
- package/lib/types/component/Chart/CigaretteChart.d.ts +1 -1
- package/lib/types/component/Chart/CigaretteChart.type.d.ts +8 -18
- package/lib/types/component/Chart/CompactHorizontalBarChart.d.ts +1 -1
- package/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +6 -10
- package/lib/types/component/Chart/DonutChart.d.ts +1 -1
- package/lib/types/component/Chart/DonutChart.type.d.ts +7 -16
- package/lib/types/component/Chart/HistogramChart.d.ts +1 -1
- package/lib/types/component/Chart/HistogramChart.type.d.ts +4 -7
- package/lib/types/component/Chart/LineChart.d.ts +1 -1
- package/lib/types/component/Chart/LineChart.type.d.ts +7 -16
- package/lib/types/component/Chart/RadarChart.d.ts +1 -1
- package/lib/types/component/Chart/RadarChart.type.d.ts +5 -7
- package/lib/types/component/Chart/ScatterPlotChart.d.ts +1 -1
- package/lib/types/component/Chart/ScatterPlotChart.type.d.ts +6 -12
- package/lib/types/component/Chart/VennChart.d.ts +1 -1
- package/lib/types/component/Chart/VennChart.type.d.ts +6 -12
- package/lib/types/component/ChartLegend/BaseLegend.d.ts +6 -8
- package/lib/types/component/ChartLegend/BaseLegend.type.d.ts +5 -4
- package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.d.ts +1 -1
- package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.type.d.ts +5 -4
- package/lib/types/component/ChartLegend/LegendItem/LegendItem.d.ts +1 -1
- package/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +10 -17
- package/lib/types/component/ChartLegend/LegendTable/LegendTable.d.ts +1 -1
- package/lib/types/component/ChartLegend/LegendTable/LegendTable.type.d.ts +5 -5
- package/lib/types/component/StackGroupBar/StackGroupBar.d.ts +1 -1
- package/lib/types/component/StackGroupBar/StackGroupBar.type.d.ts +4 -3
- package/lib/types/index.d.ts +1 -3
- package/lib/types/translations/__intergalactic-dynamic-locales.d.ts +0 -12
- package/lib/types/utils.d.ts +17 -17
- package/package.json +10 -10
- package/lib/cjs/component/SvgElement.js +0 -21
- package/lib/cjs/component/SvgElement.js.map +0 -1
- package/lib/cjs/style/abstract-chart.shadow.css +0 -12
- package/lib/es6/component/SvgElement.js +0 -14
- package/lib/es6/component/SvgElement.js.map +0 -1
- package/lib/es6/style/abstract-chart.shadow.css +0 -12
- package/lib/esm/component/SvgElement.mjs +0 -14
- package/lib/esm/style/abstract-chart.shadow.css +0 -12
- package/lib/types/component/SvgElement.d.ts +0 -10
|
@@ -1,64 +1,52 @@
|
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
2
|
-
import _readOnlyError from "@babel/runtime/helpers/readOnlyError";
|
|
3
2
|
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
4
3
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
5
4
|
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
6
5
|
import _createClass from "@babel/runtime/helpers/createClass";
|
|
7
|
-
import
|
|
6
|
+
import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
|
|
8
7
|
import _inherits from "@babel/runtime/helpers/inherits";
|
|
8
|
+
import _createSuper from "@babel/runtime/helpers/createSuper";
|
|
9
9
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
10
|
-
import { sstyled as _sstyled } from "@semcore/core";
|
|
11
|
-
import { assignProps as _assignProps2 } from "@semcore/core";
|
|
12
10
|
import { assignProps as _assignProps } from "@semcore/core";
|
|
13
|
-
import { Flex, Box } from '@semcore/base-components';
|
|
14
|
-
import { Component, Root, sstyled } from '@semcore/core';
|
|
15
|
-
import { extractAriaProps } from '@semcore/core/lib/utils/ariaProps';
|
|
16
|
-
import { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';
|
|
17
|
-
import { Text } from '@semcore/typography';
|
|
18
|
-
import React, { Fragment } from 'react';
|
|
19
|
-
|
|
20
|
-
// @ts-ignore
|
|
21
|
-
|
|
22
|
-
// @ts-ignore
|
|
23
|
-
import { Plot, XAxis, YAxis } from '../..';
|
|
24
11
|
import { makeDataHintsContainer } from '../../a11y/hints';
|
|
25
|
-
/*!__reshadow-styles__:"../../style/abstract-chart.shadow.css"*/
|
|
26
|
-
var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___STooltipChildrenWrapper_q3xi3_gg_{display:grid;grid-column-gap:var(--intergalactic-spacing-2x, 8px);-moz-column-gap:var(--intergalactic-spacing-2x, 8px);column-gap:var(--intergalactic-spacing-2x, 8px)}.___STooltipChildrenWrapper_q3xi3_gg_._columnsCount_2_q3xi3_gg_{grid-template-columns:auto minmax(28px,max-content)}.___STooltipChildrenWrapper_q3xi3_gg_._columnsCount_3_q3xi3_gg_{grid-template-columns:auto minmax(28px,max-content) minmax(28px,max-content)}", /*__inner_css_end__*/"q3xi3_gg_"),
|
|
27
|
-
/*__reshadow_css_end__*/
|
|
28
|
-
{
|
|
29
|
-
"__STooltipChildrenWrapper": "___STooltipChildrenWrapper_q3xi3_gg_",
|
|
30
|
-
"_columnsCount_2": "_columnsCount_2_q3xi3_gg_",
|
|
31
|
-
"_columnsCount_3": "_columnsCount_3_q3xi3_gg_"
|
|
32
|
-
});
|
|
33
12
|
import { interpolateValue } from '../../utils';
|
|
13
|
+
import React from 'react';
|
|
14
|
+
import { Component, Root, sstyled } from '@semcore/core';
|
|
15
|
+
import { callAllEventHandlers } from '@semcore/utils/lib/assignProps';
|
|
34
16
|
import ChartLegend, { ChartLegendTable } from '../ChartLegend';
|
|
35
|
-
|
|
17
|
+
import { Flex } from '@semcore/flex-box';
|
|
18
|
+
// @ts-ignore
|
|
19
|
+
import { Plot, XAxis, YAxis } from '../..';
|
|
20
|
+
import { Text } from '@semcore/typography';
|
|
21
|
+
import { extractAriaProps } from '@semcore/utils/lib/ariaProps';
|
|
36
22
|
export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
23
|
+
_inherits(AbstractChart, _Component);
|
|
24
|
+
var _super = _createSuper(AbstractChart);
|
|
25
|
+
/**
|
|
26
|
+
* Padding from the end's of chart to the container (except axis sides)
|
|
27
|
+
*/
|
|
28
|
+
|
|
37
29
|
function AbstractChart(props) {
|
|
38
30
|
var _this;
|
|
39
31
|
_classCallCheck(this, AbstractChart);
|
|
40
|
-
_this =
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
_defineProperty(_this, "plotPadding", 6);
|
|
45
|
-
_defineProperty(_this, "dataHints", makeDataHintsContainer());
|
|
46
|
-
_this.setHighlightedLine = _this.setHighlightedLine.bind(_this);
|
|
47
|
-
_this.handleChangeVisible = _this.handleChangeVisible.bind(_this);
|
|
48
|
-
_this.handleMouseEnter = _this.handleMouseEnter.bind(_this);
|
|
49
|
-
_this.handleMouseLeave = _this.handleMouseLeave.bind(_this);
|
|
50
|
-
_this.resolveColor = _this.resolveColor.bind(_this);
|
|
51
|
-
_this.tooltipValueFormatter = _this.tooltipValueFormatter.bind(_this);
|
|
52
|
-
_this.handleWithTrendChange = _this.handleWithTrendChange.bind(_this);
|
|
53
|
-
_this.state = {
|
|
32
|
+
_this = _super.call(this, props);
|
|
33
|
+
_defineProperty(_assertThisInitialized(_this), "plotPadding", 6);
|
|
34
|
+
_defineProperty(_assertThisInitialized(_this), "dataHints", makeDataHintsContainer());
|
|
35
|
+
_defineProperty(_assertThisInitialized(_this), "state", {
|
|
54
36
|
dataDefinitions: _this.getDefaultDataDefinitions(),
|
|
55
37
|
highlightedLine: -1,
|
|
56
38
|
withTrend: false
|
|
57
|
-
};
|
|
39
|
+
});
|
|
40
|
+
_this.setHighlightedLine = _this.setHighlightedLine.bind(_assertThisInitialized(_this));
|
|
41
|
+
_this.handleChangeVisible = _this.handleChangeVisible.bind(_assertThisInitialized(_this));
|
|
42
|
+
_this.handleMouseEnter = _this.handleMouseEnter.bind(_assertThisInitialized(_this));
|
|
43
|
+
_this.handleMouseLeave = _this.handleMouseLeave.bind(_assertThisInitialized(_this));
|
|
44
|
+
_this.resolveColor = _this.resolveColor.bind(_assertThisInitialized(_this));
|
|
45
|
+
_this.tooltipValueFormatter = _this.tooltipValueFormatter.bind(_assertThisInitialized(_this));
|
|
46
|
+
_this.handleWithTrendChange = _this.handleWithTrendChange.bind(_assertThisInitialized(_this));
|
|
58
47
|
return _this;
|
|
59
48
|
}
|
|
60
|
-
|
|
61
|
-
return _createClass(AbstractChart, [{
|
|
49
|
+
_createClass(AbstractChart, [{
|
|
62
50
|
key: "componentDidUpdate",
|
|
63
51
|
value: function componentDidUpdate(prevProps) {
|
|
64
52
|
if (prevProps.data !== this.props.data || prevProps.legendProps !== this.props.legendProps) {
|
|
@@ -76,7 +64,7 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
76
64
|
legendProps = _this$props.legendProps;
|
|
77
65
|
return this.dataKeys.map(function (key, index) {
|
|
78
66
|
var _legendProps$legendMa, _legendData$label, _legendData$icon, _legendData$defaultCh;
|
|
79
|
-
var legendData = legendProps === null || legendProps === void 0
|
|
67
|
+
var legendData = legendProps === null || legendProps === void 0 ? void 0 : (_legendProps$legendMa = legendProps.legendMap) === null || _legendProps$legendMa === void 0 ? void 0 : _legendProps$legendMa[key];
|
|
80
68
|
var dataDefinition = {
|
|
81
69
|
id: key,
|
|
82
70
|
label: (_legendData$label = legendData === null || legendData === void 0 ? void 0 : legendData.label) !== null && _legendData$label !== void 0 ? _legendData$label : key,
|
|
@@ -95,6 +83,7 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
95
83
|
if (legendData && 'columns' in legendData) {
|
|
96
84
|
dataDefinition.columns = legendData.columns || [];
|
|
97
85
|
} else if (!Array.isArray(data)) {
|
|
86
|
+
var _value;
|
|
98
87
|
var value = undefined;
|
|
99
88
|
var dataValue = data[key];
|
|
100
89
|
if (data instanceof Map) {
|
|
@@ -112,11 +101,11 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
112
101
|
var percent = value !== undefined ? (value / total * 100).toFixed(2) : undefined;
|
|
113
102
|
dataDefinition.columns = [/*#__PURE__*/React.createElement(Text, {
|
|
114
103
|
key: "".concat(key, "_percent"),
|
|
115
|
-
use:
|
|
104
|
+
use: 'secondary'
|
|
116
105
|
}, percent !== undefined ? "".concat(percent, "%") : ''), /*#__PURE__*/React.createElement(Text, {
|
|
117
106
|
key: "".concat(key, "_value"),
|
|
118
107
|
use: value ? 'primary' : 'secondary'
|
|
119
|
-
}, value !== null &&
|
|
108
|
+
}, (_value = value) !== null && _value !== void 0 ? _value : 'n/a')];
|
|
120
109
|
}
|
|
121
110
|
return dataDefinition;
|
|
122
111
|
});
|
|
@@ -186,10 +175,10 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
186
175
|
if (!groupKey && typeof item === 'number') {
|
|
187
176
|
result.add(item);
|
|
188
177
|
} else {
|
|
189
|
-
Object.entries(item).forEach(function (
|
|
190
|
-
var
|
|
191
|
-
key =
|
|
192
|
-
value =
|
|
178
|
+
Object.entries(item).forEach(function (_ref3) {
|
|
179
|
+
var _ref4 = _slicedToArray(_ref3, 2),
|
|
180
|
+
key = _ref4[0],
|
|
181
|
+
value = _ref4[1];
|
|
193
182
|
if (key !== groupKey && typeof value === 'number') {
|
|
194
183
|
result.add(value);
|
|
195
184
|
}
|
|
@@ -215,10 +204,10 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
215
204
|
return _max;
|
|
216
205
|
}
|
|
217
206
|
var max = data.reduce(function (max, item) {
|
|
218
|
-
var barSum = Object.entries(item).reduce(function (sum,
|
|
219
|
-
var
|
|
220
|
-
key =
|
|
221
|
-
val =
|
|
207
|
+
var barSum = Object.entries(item).reduce(function (sum, _ref5) {
|
|
208
|
+
var _ref6 = _slicedToArray(_ref5, 2),
|
|
209
|
+
key = _ref6[0],
|
|
210
|
+
val = _ref6[1];
|
|
222
211
|
if (key === groupKey) {
|
|
223
212
|
return sum;
|
|
224
213
|
}
|
|
@@ -241,26 +230,16 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
241
230
|
key: "totalValue",
|
|
242
231
|
value: function totalValue(data) {
|
|
243
232
|
var dataDefinitions = this.state.dataDefinitions;
|
|
244
|
-
var allNotAValue = true;
|
|
245
233
|
var total = dataDefinitions.reduce(function (sum, legendItem) {
|
|
246
234
|
var item = data[legendItem.id];
|
|
247
|
-
if (item === null) {
|
|
248
|
-
allNotAValue = false;
|
|
249
|
-
return sum;
|
|
250
|
-
}
|
|
251
235
|
if (typeof item === 'number') {
|
|
252
|
-
allNotAValue = false;
|
|
253
236
|
return sum + item;
|
|
254
237
|
}
|
|
255
238
|
if (item instanceof Date && !Number.isNaN(item.getMilliseconds())) {
|
|
256
|
-
allNotAValue = false;
|
|
257
239
|
return sum + item.getMilliseconds();
|
|
258
240
|
}
|
|
259
241
|
return sum;
|
|
260
242
|
}, 0);
|
|
261
|
-
if (allNotAValue) {
|
|
262
|
-
return Number.NaN;
|
|
263
|
-
}
|
|
264
243
|
return total;
|
|
265
244
|
}
|
|
266
245
|
}, {
|
|
@@ -328,7 +307,7 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
328
307
|
return tooltipValueFormatter(value);
|
|
329
308
|
}
|
|
330
309
|
if (value === undefined || value === interpolateValue) {
|
|
331
|
-
return
|
|
310
|
+
return 'n/a';
|
|
332
311
|
}
|
|
333
312
|
if (value === null) {
|
|
334
313
|
return '0';
|
|
@@ -354,9 +333,9 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
354
333
|
direction = _this$asProps5.direction,
|
|
355
334
|
showLegend = _this$asProps5.showLegend,
|
|
356
335
|
patterns = _this$asProps5.patterns;
|
|
357
|
-
if (
|
|
336
|
+
if (!showLegend ||
|
|
358
337
|
// we hide Legend for one item on chart except not manually set to show.
|
|
359
|
-
|
|
338
|
+
this.dataKeys.length === 1 && showLegend === true) {
|
|
360
339
|
return null;
|
|
361
340
|
}
|
|
362
341
|
var _this$state = this.state,
|
|
@@ -364,17 +343,17 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
364
343
|
withTrend = _this$state.withTrend;
|
|
365
344
|
var lProps = _objectSpread(_objectSpread({}, this.defaultLegendProps()), legendProps);
|
|
366
345
|
var commonLegendProps = {
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
346
|
+
dataHints: this.dataHints,
|
|
347
|
+
items: dataDefinitions,
|
|
348
|
+
size: lProps.size,
|
|
349
|
+
shape: lProps.shape,
|
|
350
|
+
w: lProps.w,
|
|
351
|
+
h: lProps.h,
|
|
373
352
|
patterns: patterns,
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
353
|
+
direction: (_lProps$direction = lProps.direction) !== null && _lProps$direction !== void 0 ? _lProps$direction : direction === 'row' || direction === 'row-reverse' ? 'column' : 'row',
|
|
354
|
+
onChangeVisibleItem: lProps.disableSelectItems ? undefined : callAllEventHandlers(lProps.onChangeVisibleItem, this.handleChangeVisible),
|
|
355
|
+
onMouseEnterItem: lProps.disableHoverItems ? undefined : callAllEventHandlers(lProps.onMouseEnterItem, this.handleMouseEnter),
|
|
356
|
+
onMouseLeaveItem: lProps.disableHoverItems ? undefined : callAllEventHandlers(lProps.onMouseLeaveItem, this.handleMouseLeave),
|
|
378
357
|
'aria-label': this.getLegendAriaLabel()
|
|
379
358
|
};
|
|
380
359
|
if (lProps.legendType === 'Table') {
|
|
@@ -400,114 +379,55 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
400
379
|
showYAxis = _this$asProps6.showYAxis,
|
|
401
380
|
data = _this$asProps6.data,
|
|
402
381
|
axisXValueFormatter = _this$asProps6.axisXValueFormatter,
|
|
403
|
-
axisYValueFormatter = _this$asProps6.axisYValueFormatter
|
|
404
|
-
multilineXTicks = _this$asProps6.multilineXTicks,
|
|
405
|
-
multilineYTicks = _this$asProps6.multilineYTicks;
|
|
382
|
+
axisYValueFormatter = _this$asProps6.axisYValueFormatter;
|
|
406
383
|
if (!Array.isArray(data)) {
|
|
407
384
|
return null;
|
|
408
385
|
}
|
|
409
386
|
var xTicks = this.xTicks;
|
|
410
387
|
var yTicks = this.yTicks;
|
|
411
|
-
var childrenX = axisXValueFormatter ? function (
|
|
412
|
-
var value =
|
|
388
|
+
var childrenX = axisXValueFormatter ? function (_ref7) {
|
|
389
|
+
var value = _ref7.value;
|
|
413
390
|
return {
|
|
414
391
|
children: axisXValueFormatter(value)
|
|
415
392
|
};
|
|
416
393
|
} : undefined;
|
|
417
|
-
var childrenY = axisYValueFormatter ? function (
|
|
418
|
-
var value =
|
|
394
|
+
var childrenY = axisYValueFormatter ? function (_ref8) {
|
|
395
|
+
var value = _ref8.value;
|
|
419
396
|
return {
|
|
420
397
|
children: axisYValueFormatter(value)
|
|
421
398
|
};
|
|
422
399
|
} : undefined;
|
|
423
400
|
return /*#__PURE__*/React.createElement(React.Fragment, null, showYAxis && /*#__PURE__*/React.createElement(YAxis, null, yTicks ? /*#__PURE__*/React.createElement(YAxis.Ticks, {
|
|
424
|
-
multiline: multilineYTicks,
|
|
425
401
|
ticks: yTicks
|
|
426
|
-
}, childrenY) : /*#__PURE__*/React.createElement(YAxis.Ticks, {
|
|
427
|
-
multiline: multilineYTicks
|
|
428
|
-
}, childrenY), invertAxis !== true && (yTicks ? /*#__PURE__*/React.createElement(YAxis.Grid, {
|
|
402
|
+
}, childrenY) : /*#__PURE__*/React.createElement(YAxis.Ticks, null, childrenY), invertAxis !== true && (yTicks ? /*#__PURE__*/React.createElement(YAxis.Grid, {
|
|
429
403
|
ticks: yTicks
|
|
430
404
|
}) : /*#__PURE__*/React.createElement(YAxis.Grid, null))), showXAxis && /*#__PURE__*/React.createElement(XAxis, null, xTicks ? /*#__PURE__*/React.createElement(XAxis.Ticks, {
|
|
431
|
-
multiline: multilineXTicks,
|
|
432
405
|
ticks: xTicks
|
|
433
|
-
}, childrenX) : /*#__PURE__*/React.createElement(XAxis.Ticks, {
|
|
434
|
-
multiline: multilineXTicks
|
|
435
|
-
}, childrenX), invertAxis === true && (xTicks ? /*#__PURE__*/React.createElement(XAxis.Grid, {
|
|
406
|
+
}, childrenX) : /*#__PURE__*/React.createElement(XAxis.Ticks, null, childrenX), invertAxis === true && (xTicks ? /*#__PURE__*/React.createElement(XAxis.Grid, {
|
|
436
407
|
ticks: xTicks
|
|
437
408
|
}) : /*#__PURE__*/React.createElement(XAxis.Grid, null))));
|
|
438
409
|
}
|
|
439
|
-
}, {
|
|
440
|
-
key: "getTooltipChildren",
|
|
441
|
-
value: function getTooltipChildren(options) {
|
|
442
|
-
var _ref = this.asProps,
|
|
443
|
-
_ref3,
|
|
444
|
-
_dataItem,
|
|
445
|
-
_this3 = this;
|
|
446
|
-
var STooltipChildrenWrapper = Box;
|
|
447
|
-
var Tooltip = options.Tooltip,
|
|
448
|
-
dataItem = options.dataItem;
|
|
449
|
-
var _this$asProps7 = this.asProps,
|
|
450
|
-
styles = _this$asProps7.styles,
|
|
451
|
-
groupKey = _this$asProps7.groupKey;
|
|
452
|
-
var dataDefinitions = this.state.dataDefinitions;
|
|
453
|
-
var title = (_dataItem = dataItem[groupKey]) === null || _dataItem === void 0 ? void 0 : _dataItem.toString();
|
|
454
|
-
return _ref3 = sstyled(styles), /*#__PURE__*/React.createElement(Flex, _ref3.cn("Flex", {
|
|
455
|
-
"direction": 'column'
|
|
456
|
-
}), title && /*#__PURE__*/React.createElement(Tooltip.Title, null, title), /*#__PURE__*/React.createElement(STooltipChildrenWrapper, _ref3.cn("STooltipChildrenWrapper", _objectSpread({}, _assignProps({
|
|
457
|
-
"columnsCount": '2',
|
|
458
|
-
"__excludeProps": ['data']
|
|
459
|
-
}, _ref))), dataDefinitions.map(function (item) {
|
|
460
|
-
return item.checked && /*#__PURE__*/React.createElement(Fragment, {
|
|
461
|
-
key: item.id
|
|
462
|
-
}, /*#__PURE__*/React.createElement(Tooltip.Dot, {
|
|
463
|
-
mr: 2,
|
|
464
|
-
color: item.color
|
|
465
|
-
}, item.label), /*#__PURE__*/React.createElement(Text, {
|
|
466
|
-
textAlign: "end",
|
|
467
|
-
bold: true
|
|
468
|
-
}, _this3.tooltipValueFormatter(dataItem[item.id])));
|
|
469
|
-
}), this.renderTooltipTotalLine(dataItem)));
|
|
470
|
-
}
|
|
471
|
-
}, {
|
|
472
|
-
key: "renderTooltipTotalLine",
|
|
473
|
-
value: function renderTooltipTotalLine(dataItem) {
|
|
474
|
-
var showTotalInTooltip = this.asProps.showTotalInTooltip;
|
|
475
|
-
if (!showTotalInTooltip) {
|
|
476
|
-
return null;
|
|
477
|
-
}
|
|
478
|
-
var total = this.totalValue(dataItem);
|
|
479
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Box, {
|
|
480
|
-
mt: 2,
|
|
481
|
-
mr: 2
|
|
482
|
-
}, "Total"), /*#__PURE__*/React.createElement(Text, {
|
|
483
|
-
mt: 2,
|
|
484
|
-
textAlign: "end",
|
|
485
|
-
bold: true
|
|
486
|
-
}, Number.isNaN(total) ? NOT_A_VALUE : total));
|
|
487
|
-
}
|
|
488
410
|
}, {
|
|
489
411
|
key: "render",
|
|
490
412
|
value: function render() {
|
|
491
|
-
var
|
|
492
|
-
|
|
413
|
+
var _ref = this.asProps,
|
|
414
|
+
_ref2;
|
|
493
415
|
var SChart = Flex;
|
|
494
|
-
var _this$
|
|
495
|
-
styles = _this$
|
|
496
|
-
plotWidth = _this$
|
|
497
|
-
plotHeight = _this$
|
|
498
|
-
data = _this$
|
|
499
|
-
patterns = _this$
|
|
500
|
-
a11yAltTextConfig = _this$
|
|
501
|
-
duration = _this$
|
|
502
|
-
eventEmitter = _this$asProps8.eventEmitter,
|
|
503
|
-
showTooltip = _this$asProps8.showTooltip;
|
|
416
|
+
var _this$asProps7 = this.asProps,
|
|
417
|
+
styles = _this$asProps7.styles,
|
|
418
|
+
plotWidth = _this$asProps7.plotWidth,
|
|
419
|
+
plotHeight = _this$asProps7.plotHeight,
|
|
420
|
+
data = _this$asProps7.data,
|
|
421
|
+
patterns = _this$asProps7.patterns,
|
|
422
|
+
a11yAltTextConfig = _this$asProps7.a11yAltTextConfig,
|
|
423
|
+
duration = _this$asProps7.duration;
|
|
504
424
|
var _extractAriaProps = extractAriaProps(this.asProps),
|
|
505
425
|
extractedAriaProps = _extractAriaProps.extractedAriaProps;
|
|
506
|
-
return
|
|
426
|
+
return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SChart, _ref2.cn("SChart", _objectSpread({}, _assignProps({
|
|
507
427
|
"gap": 5,
|
|
508
|
-
"__excludeProps": ['data'
|
|
428
|
+
"__excludeProps": ['data'],
|
|
509
429
|
"role": 'group'
|
|
510
|
-
},
|
|
430
|
+
}, _ref))), this.renderLegend(), /*#__PURE__*/React.createElement(Plot, _ref2.cn("Plot", _objectSpread({
|
|
511
431
|
"data": data,
|
|
512
432
|
"scale": [this.xScale, this.yScale],
|
|
513
433
|
"width": plotWidth,
|
|
@@ -515,17 +435,18 @@ export var AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
515
435
|
"dataHints": this.dataHints,
|
|
516
436
|
"a11yAltTextConfig": a11yAltTextConfig,
|
|
517
437
|
"patterns": patterns,
|
|
518
|
-
"duration": duration
|
|
519
|
-
|
|
520
|
-
}, extractedAriaProps)), this.renderAxis(), !showTooltip ? null : this.renderTooltip(), this.renderChart()));
|
|
438
|
+
"duration": duration
|
|
439
|
+
}, extractedAriaProps)), this.renderAxis(), this.renderTooltip(), this.renderChart()));
|
|
521
440
|
}
|
|
522
441
|
}]);
|
|
442
|
+
return AbstractChart;
|
|
523
443
|
}(Component);
|
|
524
|
-
_defineProperty(AbstractChart, "style",
|
|
444
|
+
_defineProperty(AbstractChart, "style", {});
|
|
525
445
|
_defineProperty(AbstractChart, "defaultProps", {
|
|
526
446
|
direction: 'column',
|
|
527
447
|
showXAxis: true,
|
|
528
448
|
showYAxis: true,
|
|
529
|
-
showTooltip: true
|
|
449
|
+
showTooltip: true,
|
|
450
|
+
showLegend: true
|
|
530
451
|
});
|
|
531
452
|
//# sourceMappingURL=AbstractChart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractChart.js","names":["Flex","Box","Component","Root","sstyled","extractAriaProps","callAllEventHandlers","Text","React","Fragment","Plot","XAxis","YAxis","makeDataHintsContainer","style","_sstyled","insert","interpolateValue","ChartLegend","ChartLegendTable","NOT_A_VALUE","AbstractChart","_Component","props","_this","_classCallCheck","_callSuper","_defineProperty","setHighlightedLine","bind","handleChangeVisible","handleMouseEnter","handleMouseLeave","resolveColor","tooltipValueFormatter","handleWithTrendChange","state","dataDefinitions","getDefaultDataDefinitions","highlightedLine","withTrend","_inherits","_createClass","key","value","componentDidUpdate","prevProps","data","legendProps","setState","_this2","_this$props","dataKeys","map","index","_legendProps$legendMa","_legendData$label","_legendData$icon","_legendData$defaultCh","legendData","legendMap","dataDefinition","id","label","icon","undefined","checked","defaultChecked","color","columns","additionalInfo","count","Array","isArray","dataValue","Map","get","Number","total","Object","values","reduce","sum","i","percent","toFixed","createElement","concat","use","_this$props2","groupKey","keys","filter","_this$asProps","asProps","invertAxis","xTicksCount","yTicksCount","scale","xScale","ticks","_this$asProps2","yScale","_this$asProps3","flatValues","result","item","add","entries","forEach","_ref5","_ref6","_slicedToArray","Set","_this$asProps4","max","val","barSum","_ref7","_ref8","Date","isNaN","getMilliseconds","totalValue","allNotAValue","legendItem","NaN","getValueScale","Math","apply","_toConsumableArray","min","avg","round","log10","valueScale","pow","isVisible","prevState","findIndex","line","_this$props$colorMap$","_this$props$colorMap","colorMap","toDateString","toString","defaultLegendProps","legendType","renderLegend","_lProps$direction","_this$asProps5","direction","showLegend","patterns","length","_this$state","lProps","_objectSpread","commonLegendProps","dataHints","size","shape","w","h","disableSelectItems","onChangeVisibleItem","disableHoverItems","onMouseEnterItem","onMouseLeaveItem","getLegendAriaLabel","flexLegendProps","trendLabel","trendIsVisible","onTrendIsVisibleChange","renderAxis","_this$asProps6","showXAxis","showYAxis","axisXValueFormatter","axisYValueFormatter","multilineXTicks","multilineYTicks","xTicks","yTicks","childrenX","_ref9","children","childrenY","_ref0","Ticks","multiline","Grid","getTooltipChildren","options","_ref","_ref3","_dataItem","_this3","STooltipChildrenWrapper","Tooltip","dataItem","_this$asProps7","styles","title","cn","Title","_assignProps","Dot","mr","textAlign","bold","renderTooltipTotalLine","showTotalInTooltip","mt","render","_ref2","_ref4","SChart","_this$asProps8","plotWidth","plotHeight","a11yAltTextConfig","duration","eventEmitter","showTooltip","_extractAriaProps","extractedAriaProps","_assignProps2","renderTooltip","renderChart"],"sources":["../../../../src/component/Chart/AbstractChart.tsx"],"sourcesContent":["import { Flex, Box } from '@semcore/base-components';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport { extractAriaProps } from '@semcore/core/lib/utils/ariaProps';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport { Text } from '@semcore/typography';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport React, { Fragment } from 'react';\n\nimport type { BaseChartProps, BaseLegendProps, ListData, ObjectData } from './AbstractChart.type';\n// @ts-ignore\nimport type { HoverLine, HoverRect } from '../..';\n// @ts-ignore\nimport { Plot, XAxis, YAxis } from '../..';\nimport { makeDataHintsContainer } from '../../a11y/hints';\nimport style from '../../style/abstract-chart.shadow.css';\nimport { interpolateValue } from '../../utils';\nimport ChartLegend, { ChartLegendTable } from '../ChartLegend';\nimport type { LegendFlexProps } from '../ChartLegend/LegendFlex/LegendFlex.type';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport type { LegendTableProps } from '../ChartLegend/LegendTable/LegendTable.type';\n\nexport type ChartState = {\n dataDefinitions: Array<LegendItem & { columns: React.ReactNode[] }>;\n highlightedLine: number;\n withTrend: boolean;\n};\n\nexport const NOT_A_VALUE = 'n/a';\n\nexport abstract class AbstractChart<\n Data extends ListData | ObjectData,\n Props extends BaseChartProps<Data>,\n Enhancers extends readonly ((...args: any[]) => any)[] = [],\n DefaultProps = {},\n State extends ChartState = ChartState,\n> extends Component<Props, Enhancers, Readonly<{}>, DefaultProps, State> {\n public static style = style;\n public static defaultProps: Partial<BaseChartProps<any>> = {\n direction: 'column',\n showXAxis: true,\n showYAxis: true,\n showTooltip: true,\n };\n\n /**\n * Padding from the end's of chart to the container (except axis sides)\n */\n protected plotPadding = 6;\n\n protected dataHints = makeDataHintsContainer();\n\n constructor(props: Props) {\n super(props);\n\n this.setHighlightedLine = this.setHighlightedLine.bind(this);\n this.handleChangeVisible = this.handleChangeVisible.bind(this);\n this.handleMouseEnter = this.handleMouseEnter.bind(this);\n this.handleMouseLeave = this.handleMouseLeave.bind(this);\n this.resolveColor = this.resolveColor.bind(this);\n this.tooltipValueFormatter = this.tooltipValueFormatter.bind(this);\n this.handleWithTrendChange = this.handleWithTrendChange.bind(this);\n\n this.state = {\n dataDefinitions: this.getDefaultDataDefinitions(),\n highlightedLine: -1,\n withTrend: false,\n } as State;\n }\n\n public componentDidUpdate(prevProps: Props) {\n if (prevProps.data !== this.props.data || prevProps.legendProps !== this.props.legendProps) {\n this.setState({ dataDefinitions: this.getDefaultDataDefinitions() });\n }\n }\n\n protected getDefaultDataDefinitions(): Array<LegendItem & { columns: React.ReactNode[] }> {\n const { data, legendProps } = this.props;\n\n return this.dataKeys.map((key, index) => {\n const legendData = legendProps?.legendMap?.[key];\n\n const dataDefinition: LegendItem & { columns: React.ReactNode[] } = {\n id: key,\n label: legendData?.label ?? key,\n icon: legendData?.icon ?? undefined,\n checked: legendData?.defaultChecked ?? true,\n color: this.resolveColor(key, index),\n columns: [],\n };\n\n if (legendData?.additionalInfo || legendData?.count) {\n dataDefinition.additionalInfo = legendData.additionalInfo\n ? { label: legendData.additionalInfo }\n : legendData.count\n ? { count: legendData.count }\n : undefined;\n }\n\n if (legendData && 'columns' in legendData) {\n dataDefinition.columns = legendData.columns || [];\n } else if (!Array.isArray(data)) {\n let value: number | undefined = undefined;\n let dataValue = data[key];\n\n if (data instanceof Map) {\n dataValue = data.get(key);\n }\n\n if (dataValue !== interpolateValue) {\n value = Number(dataValue);\n }\n\n const total = Object.values(data).reduce<number>((sum, i) => {\n if (i !== interpolateValue) {\n return sum + Number(i);\n }\n\n return sum;\n }, 0);\n const percent = value !== undefined ? ((value / total) * 100).toFixed(2) : undefined;\n\n dataDefinition.columns = [\n <Text key={`${key}_percent`} use='secondary'>\n {percent !== undefined ? `${percent}%` : ''}\n </Text>,\n <Text key={`${key}_value`} use={value ? 'primary' : 'secondary'}>\n {value ?? NOT_A_VALUE}\n </Text>,\n ];\n }\n\n return dataDefinition;\n });\n }\n\n protected abstract get xScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n protected abstract get yScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n\n protected abstract getLegendAriaLabel(): string;\n protected abstract renderChart(): React.ReactNode;\n protected abstract renderTooltip(): React.ReactNode;\n\n protected get dataKeys(): string[] {\n const { data, groupKey } = this.props;\n\n let dataKeys: string[];\n\n if (Array.isArray(data) && groupKey) {\n dataKeys = Object.keys(data[0]).filter((key) => key !== groupKey);\n } else {\n dataKeys = Object.keys(data);\n }\n\n return dataKeys;\n }\n\n protected get xTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.xScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && yTicksCount) {\n return scale.ticks(yTicksCount);\n } else if (xTicksCount) {\n return scale.ticks(xTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get yTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.yScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && xTicksCount) {\n return scale.ticks(xTicksCount);\n } else if (yTicksCount) {\n return scale.ticks(yTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get flatValues(): Set<number> {\n const { data, groupKey } = this.asProps;\n const values: any[] = Array.isArray(data) ? data : Object.values(data);\n\n const flatValues = values.reduce<Set<number>>((result, item) => {\n if (!groupKey && typeof item === 'number') {\n result.add(item);\n } else {\n Object.entries(item).forEach(([key, value]) => {\n if (key !== groupKey && typeof value === 'number') {\n result.add(value);\n }\n });\n }\n\n return result;\n }, new Set());\n\n return flatValues;\n }\n\n protected get maxStackedValue(): number {\n const { data, groupKey } = this.asProps;\n\n if (!Array.isArray(data)) {\n const max = Object.values(data).reduce<number>((sum, val) => {\n if (typeof val === 'number') {\n sum = sum + val;\n }\n\n return sum;\n }, 0);\n\n return max;\n }\n\n const max = data.reduce((max, item) => {\n const barSum = Object.entries(item).reduce<number>((sum, [key, val]) => {\n if (key === groupKey) {\n return sum;\n }\n\n if (typeof val === 'number') {\n return sum + val;\n }\n\n if (val instanceof Date && !Number.isNaN(val.getMilliseconds())) {\n return sum + val.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n if (barSum > max) {\n max = barSum;\n }\n\n return max;\n }, 0);\n\n return max;\n }\n\n protected totalValue(data: ObjectData): number {\n const { dataDefinitions } = this.state;\n\n let allNotAValue = true;\n\n const total = dataDefinitions.reduce((sum, legendItem) => {\n const item = data[legendItem.id];\n\n if (item === null) {\n allNotAValue = false;\n return sum;\n }\n\n if (typeof item === 'number') {\n allNotAValue = false;\n return sum + item;\n }\n\n if (item instanceof Date && !Number.isNaN(item.getMilliseconds())) {\n allNotAValue = false;\n return sum + item.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n if (allNotAValue) {\n return Number.NaN;\n }\n\n return total;\n }\n\n protected getValueScale(values: number[]): number {\n const max = Math.max(...values);\n const min = Math.min(...values);\n\n const avg = (max + min) / 2;\n const count = Math.round(Math.log10(avg));\n\n const valueScale = 100 / 10 ** count;\n\n return valueScale;\n }\n\n protected setHighlightedLine(index: number) {\n this.setState({ highlightedLine: index });\n }\n\n protected handleChangeVisible(id: string, isVisible: boolean) {\n this.setState((prevState) => {\n const dataDefinitions = prevState.dataDefinitions.map((item) => {\n if (item.id === id) {\n item.checked = isVisible;\n }\n\n return item;\n });\n\n return { dataDefinitions };\n });\n }\n\n protected handleWithTrendChange(isVisible: boolean) {\n this.setState({ withTrend: isVisible });\n }\n\n protected handleMouseEnter(id: string) {\n this.setHighlightedLine(this.state.dataDefinitions.findIndex((line) => line.id === id));\n }\n\n protected handleMouseLeave() {\n this.setHighlightedLine(-1);\n }\n\n protected resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `chart-palette-order-${index + 1}`;\n }\n\n protected tooltipValueFormatter(\n value?: string | number | typeof interpolateValue | Date,\n ): string {\n const { tooltipValueFormatter } = this.asProps;\n\n if (tooltipValueFormatter) {\n return tooltipValueFormatter(value);\n }\n\n if (value === undefined || value === interpolateValue) {\n return NOT_A_VALUE;\n }\n\n if (value === null) {\n return '0';\n }\n\n if (value instanceof Date) {\n return value.toDateString();\n }\n\n return value.toString();\n }\n\n protected defaultLegendProps(): Partial<BaseLegendProps> {\n return {\n legendType: 'Flex',\n };\n }\n\n protected renderLegend() {\n const { legendProps, direction, showLegend, patterns } = this.asProps;\n\n if (\n // we hide Legend for one item on chart except not manually set to show.\n showLegend === undefined && this.dataKeys.length === 1 ||\n showLegend === false\n ) {\n return null;\n }\n\n const { dataDefinitions, withTrend } = this.state;\n const lProps = {\n ...this.defaultLegendProps(),\n ...legendProps,\n };\n\n const commonLegendProps: LegendFlexProps | LegendTableProps = {\n 'dataHints': this.dataHints,\n 'items': dataDefinitions,\n 'size': lProps.size,\n 'shape': lProps.shape,\n 'w': lProps.w,\n 'h': lProps.h,\n patterns,\n 'direction':\n lProps.direction ?? (direction === 'row' || direction === 'row-reverse' ? 'column' : 'row'),\n 'onChangeVisibleItem': lProps.disableSelectItems\n ? undefined\n : callAllEventHandlers(lProps.onChangeVisibleItem, this.handleChangeVisible),\n 'onMouseEnterItem': lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseEnterItem, this.handleMouseEnter),\n 'onMouseLeaveItem': lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseLeaveItem, this.handleMouseLeave),\n 'aria-label': this.getLegendAriaLabel(),\n };\n\n if (lProps.legendType === 'Table') {\n return <ChartLegendTable {...(commonLegendProps as LegendTableProps)} />;\n }\n\n if ('withTrend' in lProps) {\n const flexLegendProps = {\n ...commonLegendProps,\n withTrend: true,\n trendLabel: lProps.trendLabel,\n trendIsVisible: withTrend,\n onTrendIsVisibleChange: this.handleWithTrendChange,\n };\n\n return <ChartLegend {...(flexLegendProps as LegendFlexProps)} />;\n }\n\n return <ChartLegend {...(commonLegendProps as LegendFlexProps)} />;\n }\n\n protected renderAxis(): React.ReactNode {\n const {\n invertAxis,\n showXAxis,\n showYAxis,\n data,\n axisXValueFormatter,\n axisYValueFormatter,\n multilineXTicks,\n multilineYTicks,\n } = this.asProps;\n\n if (!Array.isArray(data)) {\n return null;\n }\n\n const xTicks = this.xTicks;\n const yTicks = this.yTicks;\n\n const childrenX = axisXValueFormatter\n ? ({ value }: any) => ({ children: axisXValueFormatter(value) })\n : undefined;\n const childrenY = axisYValueFormatter\n ? ({ value }: any) => ({ children: axisYValueFormatter(value) })\n : undefined;\n\n return (\n <>\n {showYAxis && (\n <YAxis>\n {yTicks\n ? (\n <YAxis.Ticks multiline={multilineYTicks} ticks={yTicks}>{childrenY}</YAxis.Ticks>\n )\n : (\n <YAxis.Ticks multiline={multilineYTicks}>{childrenY}</YAxis.Ticks>\n )}\n {invertAxis !== true && (yTicks ? <YAxis.Grid ticks={yTicks} /> : <YAxis.Grid />)}\n </YAxis>\n )}\n\n {showXAxis && (\n <XAxis>\n {xTicks\n ? (\n <XAxis.Ticks multiline={multilineXTicks} ticks={xTicks}>{childrenX}</XAxis.Ticks>\n )\n : (\n <XAxis.Ticks multiline={multilineXTicks}>{childrenX}</XAxis.Ticks>\n )}\n {invertAxis === true && (xTicks ? <XAxis.Grid ticks={xTicks} /> : <XAxis.Grid />)}\n </XAxis>\n )}\n </>\n );\n }\n\n protected getTooltipChildren<D extends ObjectData>(options: {\n Tooltip: typeof HoverLine['Tooltip'] | typeof HoverRect['Tooltip'];\n dataItem: D;\n }) {\n const STooltipChildrenWrapper = Root;\n const { Tooltip, dataItem } = options;\n\n const { styles, groupKey } = this.asProps;\n const { dataDefinitions } = this.state;\n const title = dataItem[groupKey as keyof D]?.toString();\n\n return sstyled(styles)(\n <Flex direction='column'>\n { title && <Tooltip.Title>{title}</Tooltip.Title> }\n\n <STooltipChildrenWrapper\n render={Box}\n columnsCount='2'\n __excludeProps={['data']}\n >\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Fragment key={item.id}>\n <Tooltip.Dot mr={2} color={item.color}>\n {item.label}\n </Tooltip.Dot>\n <Text textAlign='end' bold>{this.tooltipValueFormatter(dataItem[item.id] as string)}</Text>\n </Fragment>\n )\n );\n })}\n\n {this.renderTooltipTotalLine(dataItem)}\n </STooltipChildrenWrapper>\n </Flex>,\n );\n }\n\n protected renderTooltipTotalLine<D extends ObjectData>(dataItem: D) {\n const { showTotalInTooltip } = this.asProps;\n\n if (!showTotalInTooltip) {\n return null;\n }\n\n const total = this.totalValue(dataItem);\n\n return (\n <>\n <Box mt={2} mr={2}>Total</Box>\n <Text mt={2} textAlign='end' bold>{Number.isNaN(total) ? NOT_A_VALUE : total}</Text>\n </>\n );\n }\n\n public render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, a11yAltTextConfig, duration, eventEmitter, showTooltip } =\n this.asProps;\n\n const { extractedAriaProps } = extractAriaProps(this.asProps);\n\n return sstyled(styles)(\n <SChart render={Flex} gap={5} __excludeProps={['data', 'eventEmitter']} role='group'>\n {this.renderLegend()}\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n a11yAltTextConfig={a11yAltTextConfig}\n patterns={patterns}\n duration={duration}\n eventEmitter={eventEmitter}\n {...extractedAriaProps}\n >\n {this.renderAxis()}\n {!showTooltip ? null : this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </SChart>,\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"AbstractChart.js","names":["makeDataHintsContainer","interpolateValue","React","Component","Root","sstyled","callAllEventHandlers","ChartLegend","ChartLegendTable","Flex","Plot","XAxis","YAxis","Text","extractAriaProps","AbstractChart","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","dataDefinitions","getDefaultDataDefinitions","highlightedLine","withTrend","setHighlightedLine","bind","handleChangeVisible","handleMouseEnter","handleMouseLeave","resolveColor","tooltipValueFormatter","handleWithTrendChange","_createClass","key","value","componentDidUpdate","prevProps","data","legendProps","setState","_this2","_this$props","dataKeys","map","index","_legendProps$legendMa","_legendData$label","_legendData$icon","_legendData$defaultCh","legendData","legendMap","dataDefinition","id","label","icon","undefined","checked","defaultChecked","color","columns","additionalInfo","count","Array","isArray","_value","dataValue","Map","get","Number","total","Object","values","reduce","sum","i","percent","toFixed","createElement","concat","use","_this$props2","groupKey","keys","filter","_this$asProps","asProps","invertAxis","xTicksCount","yTicksCount","scale","xScale","ticks","_this$asProps2","yScale","_this$asProps3","flatValues","result","item","add","entries","forEach","_ref3","_ref4","_slicedToArray","Set","_this$asProps4","max","val","barSum","_ref5","_ref6","Date","isNaN","getMilliseconds","totalValue","state","legendItem","getValueScale","Math","apply","_toConsumableArray","min","avg","round","log10","valueScale","pow","isVisible","prevState","findIndex","line","_this$props$colorMap$","_this$props$colorMap","colorMap","toDateString","toString","defaultLegendProps","legendType","renderLegend","_lProps$direction","_this$asProps5","direction","showLegend","patterns","length","_this$state","lProps","_objectSpread","commonLegendProps","dataHints","items","size","shape","w","h","onChangeVisibleItem","disableSelectItems","onMouseEnterItem","disableHoverItems","onMouseLeaveItem","getLegendAriaLabel","flexLegendProps","trendLabel","trendIsVisible","onTrendIsVisibleChange","renderAxis","_this$asProps6","showXAxis","showYAxis","axisXValueFormatter","axisYValueFormatter","xTicks","yTicks","childrenX","_ref7","children","childrenY","_ref8","Fragment","Ticks","Grid","render","_ref","_ref2","SChart","_this$asProps7","styles","plotWidth","plotHeight","a11yAltTextConfig","duration","_extractAriaProps","extractedAriaProps","cn","_assignProps","renderTooltip","renderChart","showTooltip"],"sources":["../../../../src/component/Chart/AbstractChart.tsx"],"sourcesContent":["import { makeDataHintsContainer } from '../../a11y/hints';\nimport { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport { interpolateValue } from '../../utils';\nimport React from 'react';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport { BaseChartProps, BaseLegendProps, ListData, ObjectData } from './AbstractChart.type';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport ChartLegend, { ChartLegendTable } from '../ChartLegend';\nimport { Flex } from '@semcore/flex-box';\n// @ts-ignore\nimport { Plot, XAxis, YAxis } from '../..';\nimport { Text } from '@semcore/typography';\nimport { LegendFlexProps } from '../ChartLegend/LegendFlex/LegendFlex.type';\nimport { LegendTableProps } from '../ChartLegend/LegendTable/LegendTable.type';\nimport { extractAriaProps } from '@semcore/utils/lib/ariaProps';\n\ntype ChartState = {\n dataDefinitions: Array<LegendItem & { columns: React.ReactNode[] }>;\n highlightedLine: number;\n withTrend: boolean;\n};\n\nexport abstract class AbstractChart<\n D extends ListData | ObjectData,\n T extends BaseChartProps<D>,\n E extends readonly ((...args: any[]) => any)[] = [],\n> extends Component<T, {}, ChartState, E> {\n public static style = {};\n public static defaultProps: Partial<BaseChartProps<any>> = {\n direction: 'column',\n showXAxis: true,\n showYAxis: true,\n showTooltip: true,\n showLegend: true,\n };\n\n /**\n * Padding from the end's of chart to the container (except axis sides)\n */\n protected plotPadding = 6;\n\n protected dataHints = makeDataHintsContainer();\n\n public state: ChartState = {\n dataDefinitions: this.getDefaultDataDefinitions(),\n highlightedLine: -1,\n withTrend: false,\n };\n\n constructor(props: T) {\n super(props);\n\n this.setHighlightedLine = this.setHighlightedLine.bind(this);\n this.handleChangeVisible = this.handleChangeVisible.bind(this);\n this.handleMouseEnter = this.handleMouseEnter.bind(this);\n this.handleMouseLeave = this.handleMouseLeave.bind(this);\n this.resolveColor = this.resolveColor.bind(this);\n this.tooltipValueFormatter = this.tooltipValueFormatter.bind(this);\n this.handleWithTrendChange = this.handleWithTrendChange.bind(this);\n }\n\n public componentDidUpdate(prevProps: T) {\n if (prevProps.data !== this.props.data || prevProps.legendProps !== this.props.legendProps) {\n this.setState({ dataDefinitions: this.getDefaultDataDefinitions() });\n }\n }\n\n protected getDefaultDataDefinitions(): Array<LegendItem & { columns: React.ReactNode[] }> {\n const { data, legendProps } = this.props;\n\n return this.dataKeys.map((key, index) => {\n const legendData = legendProps?.legendMap?.[key];\n\n const dataDefinition: LegendItem & { columns: React.ReactNode[] } = {\n id: key,\n label: legendData?.label ?? key,\n icon: legendData?.icon ?? undefined,\n checked: legendData?.defaultChecked ?? true,\n color: this.resolveColor(key, index),\n columns: [],\n };\n\n if (legendData?.additionalInfo || legendData?.count) {\n dataDefinition.additionalInfo = legendData.additionalInfo\n ? { label: legendData.additionalInfo }\n : legendData.count\n ? { count: legendData.count }\n : undefined;\n }\n\n if (legendData && 'columns' in legendData) {\n dataDefinition.columns = legendData.columns || [];\n } else if (!Array.isArray(data)) {\n let value: number | undefined = undefined;\n let dataValue = data[key];\n\n if (data instanceof Map) {\n dataValue = data.get(key);\n }\n\n if (dataValue !== interpolateValue) {\n value = Number(dataValue);\n }\n\n const total = Object.values(data).reduce<number>((sum, i) => {\n if (i !== interpolateValue) {\n return sum + Number(i);\n }\n\n return sum;\n }, 0);\n const percent = value !== undefined ? ((value / total) * 100).toFixed(2) : undefined;\n\n dataDefinition.columns = [\n <Text key={`${key}_percent`} use={'secondary'}>\n {percent !== undefined ? `${percent}%` : ''}\n </Text>,\n <Text key={`${key}_value`} use={value ? 'primary' : 'secondary'}>\n {value ?? 'n/a'}\n </Text>,\n ];\n }\n\n return dataDefinition;\n });\n }\n\n protected abstract get xScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n protected abstract get yScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n\n protected abstract getLegendAriaLabel(): string;\n protected abstract renderChart(): React.ReactNode;\n protected abstract renderTooltip(): React.ReactNode;\n\n protected get dataKeys(): string[] {\n const { data, groupKey } = this.props;\n\n let dataKeys: string[];\n\n if (Array.isArray(data) && groupKey) {\n dataKeys = Object.keys(data[0]).filter((key) => key !== groupKey);\n } else {\n dataKeys = Object.keys(data);\n }\n\n return dataKeys;\n }\n\n protected get xTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.xScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && yTicksCount) {\n return scale.ticks(yTicksCount);\n } else if (xTicksCount) {\n return scale.ticks(xTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get yTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.yScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && xTicksCount) {\n return scale.ticks(xTicksCount);\n } else if (yTicksCount) {\n return scale.ticks(yTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get flatValues(): Set<number> {\n const { data, groupKey } = this.asProps;\n const values: any[] = Array.isArray(data) ? data : Object.values(data);\n\n const flatValues = values.reduce<Set<number>>((result, item) => {\n if (!groupKey && typeof item === 'number') {\n result.add(item);\n } else {\n Object.entries(item).forEach(([key, value]) => {\n if (key !== groupKey && typeof value === 'number') {\n result.add(value);\n }\n });\n }\n\n return result;\n }, new Set());\n\n return flatValues;\n }\n\n protected get maxStackedValue(): number {\n const { data, groupKey } = this.asProps;\n\n if (!Array.isArray(data)) {\n const max = Object.values(data).reduce<number>((sum, val) => {\n if (typeof val === 'number') {\n sum = sum + val;\n }\n\n return sum;\n }, 0);\n\n return max;\n }\n\n const max = data.reduce((max, item) => {\n const barSum = Object.entries(item).reduce<number>((sum, [key, val]) => {\n if (key === groupKey) {\n return sum;\n }\n\n if (typeof val === 'number') {\n return sum + val;\n }\n\n if (val instanceof Date && !Number.isNaN(val.getMilliseconds())) {\n return sum + val.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n if (barSum > max) {\n max = barSum;\n }\n\n return max;\n }, 0);\n\n return max;\n }\n\n protected totalValue(data: ObjectData): number {\n const { dataDefinitions } = this.state;\n\n const total = dataDefinitions.reduce((sum, legendItem) => {\n const item = data[legendItem.id];\n\n if (typeof item === 'number') {\n return sum + item;\n }\n\n if (item instanceof Date && !Number.isNaN(item.getMilliseconds())) {\n return sum + item.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n return total;\n }\n\n protected getValueScale(values: number[]): number {\n const max = Math.max(...values);\n const min = Math.min(...values);\n\n const avg = (max + min) / 2;\n const count = Math.round(Math.log10(avg));\n\n const valueScale = 100 / 10 ** count;\n\n return valueScale;\n }\n\n protected setHighlightedLine(index: number) {\n this.setState({ highlightedLine: index });\n }\n\n protected handleChangeVisible(id: string, isVisible: boolean) {\n this.setState((prevState) => {\n const dataDefinitions = prevState.dataDefinitions.map((item) => {\n if (item.id === id) {\n item.checked = isVisible;\n }\n\n return item;\n });\n\n return { dataDefinitions };\n });\n }\n\n protected handleWithTrendChange(isVisible: boolean) {\n this.setState({ withTrend: isVisible });\n }\n\n protected handleMouseEnter(id: string) {\n this.setHighlightedLine(this.state.dataDefinitions.findIndex((line) => line.id === id));\n }\n\n protected handleMouseLeave() {\n this.setHighlightedLine(-1);\n }\n\n protected resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `chart-palette-order-${index + 1}`;\n }\n\n protected tooltipValueFormatter(\n value?: string | number | typeof interpolateValue | Date,\n ): string {\n const { tooltipValueFormatter } = this.asProps;\n\n if (tooltipValueFormatter) {\n return tooltipValueFormatter(value);\n }\n\n if (value === undefined || value === interpolateValue) {\n return 'n/a';\n }\n\n if (value === null) {\n return '0';\n }\n\n if (value instanceof Date) {\n return value.toDateString();\n }\n\n return value.toString();\n }\n\n protected defaultLegendProps(): Partial<BaseLegendProps> {\n return {\n legendType: 'Flex',\n };\n }\n\n protected renderLegend() {\n const { legendProps, direction, showLegend, patterns } = this.asProps;\n\n if (\n !showLegend ||\n // we hide Legend for one item on chart except not manually set to show.\n (this.dataKeys.length === 1 && showLegend === true)\n ) {\n return null;\n }\n\n const { dataDefinitions, withTrend } = this.state;\n const lProps = {\n ...this.defaultLegendProps(),\n ...legendProps,\n };\n\n const commonLegendProps: LegendFlexProps | LegendTableProps = {\n dataHints: this.dataHints,\n items: dataDefinitions,\n size: lProps.size,\n shape: lProps.shape,\n w: lProps.w,\n h: lProps.h,\n patterns,\n direction:\n lProps.direction ?? (direction === 'row' || direction === 'row-reverse' ? 'column' : 'row'),\n onChangeVisibleItem: lProps.disableSelectItems\n ? undefined\n : callAllEventHandlers(lProps.onChangeVisibleItem, this.handleChangeVisible),\n onMouseEnterItem: lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseEnterItem, this.handleMouseEnter),\n onMouseLeaveItem: lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseLeaveItem, this.handleMouseLeave),\n 'aria-label': this.getLegendAriaLabel(),\n };\n\n if (lProps.legendType === 'Table') {\n return <ChartLegendTable {...(commonLegendProps as LegendTableProps)} />;\n }\n\n if ('withTrend' in lProps) {\n const flexLegendProps = {\n ...commonLegendProps,\n withTrend: true,\n trendLabel: lProps.trendLabel,\n trendIsVisible: withTrend,\n onTrendIsVisibleChange: this.handleWithTrendChange,\n };\n\n return <ChartLegend {...(flexLegendProps as LegendFlexProps)} />;\n }\n\n return <ChartLegend {...(commonLegendProps as LegendFlexProps)} />;\n }\n\n protected renderAxis(): React.ReactNode {\n const { invertAxis, showXAxis, showYAxis, data, axisXValueFormatter, axisYValueFormatter } =\n this.asProps;\n\n if (!Array.isArray(data)) {\n return null;\n }\n\n const xTicks = this.xTicks;\n const yTicks = this.yTicks;\n\n const childrenX = axisXValueFormatter\n ? ({ value }: any) => ({ children: axisXValueFormatter(value) })\n : undefined;\n const childrenY = axisYValueFormatter\n ? ({ value }: any) => ({ children: axisYValueFormatter(value) })\n : undefined;\n\n return (\n <>\n {showYAxis && (\n <YAxis>\n {yTicks ? (\n <YAxis.Ticks ticks={yTicks}>{childrenY}</YAxis.Ticks>\n ) : (\n <YAxis.Ticks>{childrenY}</YAxis.Ticks>\n )}\n {invertAxis !== true && (yTicks ? <YAxis.Grid ticks={yTicks} /> : <YAxis.Grid />)}\n </YAxis>\n )}\n\n {showXAxis && (\n <XAxis>\n {xTicks ? (\n <XAxis.Ticks ticks={xTicks}>{childrenX}</XAxis.Ticks>\n ) : (\n <XAxis.Ticks>{childrenX}</XAxis.Ticks>\n )}\n {invertAxis === true && (xTicks ? <XAxis.Grid ticks={xTicks} /> : <XAxis.Grid />)}\n </XAxis>\n )}\n </>\n );\n }\n\n public render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, a11yAltTextConfig, duration } =\n this.asProps;\n\n const { extractedAriaProps } = extractAriaProps(this.asProps);\n\n return sstyled(styles)(\n <SChart render={Flex} gap={5} __excludeProps={['data']} role={'group'}>\n {this.renderLegend()}\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n a11yAltTextConfig={a11yAltTextConfig}\n patterns={patterns}\n duration={duration}\n {...extractedAriaProps}\n >\n {this.renderAxis()}\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </SChart>,\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractChart.type.js","names":[],"sources":["../../../../src/component/Chart/AbstractChart.type.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"AbstractChart.type.js","names":[],"sources":["../../../../src/component/Chart/AbstractChart.type.ts"],"sourcesContent":["import React from 'react';\nimport { FlexProps } from '@semcore/flex-box';\nimport { LegendItemKey } from '../ChartLegend/LegendItem/LegendItem.type';\nimport Icon from '@semcore/icon';\nimport { BaseChartLegendProps } from '../ChartLegend/BaseLegend.type';\nimport { TrendProps } from '../ChartLegend/LegendFlex/LegendFlex.type';\nimport { PatternsConfig } from '../../Pattern';\n// @ts-ignore\nimport { PlotSummarizerConfig } from '../../Plot';\nimport { Intergalactic } from '@semcore/utils/lib/core';\n\nexport type BaseLegendProps = BaseChartLegendProps & {\n /**\n * Disable hover (for transition items legend of each not hovered)\n */\n disableHoverItems?: boolean;\n /**\n * Disable selectable of data items by checkboxes in Legend\n */\n disableSelectItems?: boolean;\n} & (\n | (TrendProps & {\n /**\n * How to render Legend - Flex view. Just list of legend items\n */\n legendType?: never | 'Flex';\n /**\n * Config for Legend items\n */\n legendMap?: LegendDataMap<'Flex'>;\n })\n | {\n /**\n * How to render Legend - Table view. Table of legend items with some additional information in columns\n */\n legendType: 'Table';\n /**\n * Config for Legend items\n */\n legendMap?: LegendDataMap<'Table'>;\n }\n );\n\nexport type ObjectData = Record<string, unknown>;\nexport type ListData = ObjectData[];\n\n/**\n * Chart, Legend must have an accessible names (aria-name).\n * It should describe chart or legend content.\n */\nexport type AriaNameProps = Intergalactic.RequireAtLeastOne<{\n 'aria-label'?: string;\n 'aria-labelledby'?: string;\n title?: string;\n}>;\n\nexport type BaseChartProps<T extends ListData | ObjectData> = FlexProps &\n AriaNameProps & {\n /**\n * Chart data. For all charts except Donut(Pie), Radar and Venn should be an Array\n */\n data: T;\n /**\n * Width of plot\n */\n plotWidth: number;\n /**\n * Height of plot\n */\n plotHeight: number;\n\n /** Enables charts patterns that enhances charts accessibility */\n patterns?: PatternsConfig;\n /**\n * Margin (for Y axis points) from left side of chart container to Y axis\n */\n marginY?: number;\n /**\n * Margin (for X axis points) from bottom of chart container to X axis\n */\n marginX?: number;\n /**\n * invert axis and show horizontal charts (only for Bars!)\n */\n invertAxis?: boolean;\n\n /**\n * Show X axis\n * @default true (for charts with axis: Area, Line, Bar, ScatterPlot, ...)\n */\n showXAxis?: boolean;\n /**\n * Show Y axis\n * @default true (for charts with axis: Area, Line, Bar, ScatterPlot, ...)\n */\n showYAxis?: boolean;\n /**\n * Map with colors for data items\n */\n colorMap?: Record<string, string>;\n /**\n * Show tooltip's.\n * @default true\n */\n showTooltip?: boolean;\n /**\n * Show sum of values for selected point in tooltip\n */\n showTotalInTooltip?: boolean;\n /**\n * Scale for xAxis (see more in d3-scale)\n */\n xScale?: unknown;\n /**\n * Scale for yAxis (see more in d3-scale)\n */\n yScale?: unknown;\n /**\n * Count of ticks for X axis\n */\n xTicksCount?: number;\n /**\n * Count of ticks for Y axis\n */\n yTicksCount?: number;\n /**\n * Group key for all array-based charts (for get keys of items for legend except that group key)\n */\n groupKey?: string;\n /**\n * function for format axis item text\n */\n axisXValueFormatter?: (value: unknown) => string;\n axisYValueFormatter?: (value: unknown) => string;\n /**\n * Function for format text for tooltip\n */\n tooltipValueFormatter?: (value?: unknown) => string;\n /**\n * Config for a11y summary\n */\n a11yAltTextConfig?: PlotSummarizerConfig;\n\n /**\n * Animations duration, set 0 to disable animations\n */\n duration?: number;\n } /**\n * By default, we show the Legend for all charts with more the one data item.\n * For hide the Legend, you should set showLegend prop to `false`.\n */ & (\n | {\n /**\n * Don't show legend\n */\n showLegend?: false;\n legendProps?: never;\n }\n | {\n /**\n * By default (if showLegend don't set), for one data item on chart,\n * Legend component will be hide, and show for more then 1 data item.\n * If set `true` - Legend component will show always.\n */\n showLegend?: true;\n /**\n * Props for Legend\n */\n legendProps?: Partial<BaseLegendProps>;\n }\n );\n\ntype LegendDataMap<T extends 'Flex' | 'Table'> = Record<\n LegendItemKey,\n {\n /**\n * Custom label for legend item (by default use keys from data item object)\n */\n label?: string;\n /**\n * Additional text after label\n */\n additionalInfo?: string;\n /**\n * Count after label\n */\n count?: number;\n /**\n * Custom Icon\n */\n icon?: typeof Icon;\n /**\n * Flag for uncheck some items by default\n */\n defaultChecked?: boolean;\n } & (T extends 'Table' ? { columns?: React.ReactNode[] } : { columns?: never })\n>;\n"],"mappings":""}
|