@semcore/d3-chart 16.5.0 → 17.0.0-prerelease.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/lib/cjs/AnimatedClipPath.js +28 -41
- package/lib/cjs/AnimatedClipPath.js.map +1 -1
- package/lib/cjs/Area.js +187 -223
- package/lib/cjs/Area.js.map +1 -1
- package/lib/cjs/Axis.js +248 -327
- package/lib/cjs/Axis.js.map +1 -1
- package/lib/cjs/Bar.js +162 -185
- package/lib/cjs/Bar.js.map +1 -1
- package/lib/cjs/Bubble.js +219 -248
- package/lib/cjs/Bubble.js.map +1 -1
- package/lib/cjs/CompactHorizontalBar.js +448 -482
- package/lib/cjs/CompactHorizontalBar.js.map +1 -1
- package/lib/cjs/Donut.js +349 -396
- package/lib/cjs/Donut.js.map +1 -1
- package/lib/cjs/Dots.js +67 -86
- package/lib/cjs/Dots.js.map +1 -1
- package/lib/cjs/GroupBar.js +78 -93
- package/lib/cjs/GroupBar.js.map +1 -1
- package/lib/cjs/HorizontalBar.js +149 -167
- package/lib/cjs/HorizontalBar.js.map +1 -1
- package/lib/cjs/Hover.js +178 -207
- package/lib/cjs/Hover.js.map +1 -1
- package/lib/cjs/Line.js +182 -222
- package/lib/cjs/Line.js.map +1 -1
- package/lib/cjs/Pattern.js +124 -126
- package/lib/cjs/Pattern.js.map +1 -1
- package/lib/cjs/Plot.js +100 -126
- package/lib/cjs/Plot.js.map +1 -1
- package/lib/cjs/Radar.js +576 -681
- package/lib/cjs/Radar.js.map +1 -1
- package/lib/cjs/RadialTree.js +518 -571
- package/lib/cjs/RadialTree.js.map +1 -1
- package/lib/cjs/Reference.js +147 -178
- package/lib/cjs/Reference.js.map +1 -1
- package/lib/cjs/ResponsiveContainer.js +64 -82
- package/lib/cjs/ResponsiveContainer.js.map +1 -1
- package/lib/cjs/ScatterPlot.js +169 -199
- package/lib/cjs/ScatterPlot.js.map +1 -1
- package/lib/cjs/StackBar.js +135 -177
- package/lib/cjs/StackBar.js.map +1 -1
- package/lib/cjs/StackedArea.js +60 -73
- package/lib/cjs/StackedArea.js.map +1 -1
- package/lib/cjs/Tooltip.js +193 -208
- package/lib/cjs/Tooltip.js.map +1 -1
- package/lib/cjs/Venn.js +182 -217
- package/lib/cjs/Venn.js.map +1 -1
- package/lib/cjs/a11y/DataAccessibilityTable.js +45 -83
- package/lib/cjs/a11y/DataAccessibilityTable.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yModule.js +37 -97
- package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yView.js +97 -91
- package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
- package/lib/cjs/a11y/bezier.js +17 -23
- package/lib/cjs/a11y/bezier.js.map +1 -1
- package/lib/cjs/a11y/focus.js +16 -16
- package/lib/cjs/a11y/focus.js.map +1 -1
- package/lib/cjs/a11y/hints.js +72 -75
- package/lib/cjs/a11y/hints.js.map +1 -1
- package/lib/cjs/a11y/insights.js +354 -525
- package/lib/cjs/a11y/insights.js.map +1 -1
- package/lib/cjs/a11y/intl.js +5 -5
- package/lib/cjs/a11y/intl.js.map +1 -1
- package/lib/cjs/a11y/locale.js +12 -19
- package/lib/cjs/a11y/locale.js.map +1 -1
- package/lib/cjs/a11y/serialize.js +164 -203
- package/lib/cjs/a11y/serialize.js.map +1 -1
- package/lib/cjs/a11y/summarize.js +7 -6
- package/lib/cjs/a11y/summarize.js.map +1 -1
- package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js +16 -16
- 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 +16 -16
- package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/color.js +1 -1
- package/lib/cjs/color.js.map +1 -1
- package/lib/cjs/component/Chart/AbstractChart.js +421 -466
- 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 +97 -115
- 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 +229 -216
- 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 +114 -136
- 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 +280 -305
- package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +76 -108
- 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 +80 -95
- 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 +126 -148
- 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 +95 -113
- 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 +84 -110
- 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 +119 -143
- 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 +103 -122
- 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 +2 -2
- package/lib/cjs/component/Chart/index.js.map +1 -1
- package/lib/cjs/component/ChartLegend/BaseLegend.js +72 -105
- 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 +58 -70
- 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 +208 -221
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +63 -73
- 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 +4 -4
- package/lib/cjs/component/ChartLegend/index.js.map +1 -1
- package/lib/cjs/component/Cigarette/Cigarette.js +115 -129
- package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
- package/lib/cjs/component/StackGroupBar/StackGroupBar.js +107 -137
- package/lib/cjs/component/StackGroupBar/StackGroupBar.js.map +1 -1
- package/lib/cjs/component/SvgElement.js +7 -7
- package/lib/cjs/component/SvgElement.js.map +1 -1
- package/lib/cjs/createElement.js +66 -65
- package/lib/cjs/createElement.js.map +1 -1
- package/lib/cjs/index.js +62 -62
- package/lib/cjs/style/axis.shadow.css +3 -0
- package/lib/cjs/style/plot.shadow.css +1 -3
- package/lib/cjs/style/plotA11yModule.shadow.css +10 -11
- package/lib/cjs/style/plotA11yView.shadow.css +13 -26
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js +15 -15
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/types/Axis.d.js.map +1 -1
- package/lib/cjs/types/CompactHorizontalBar.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/ResponsiveContainer.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/index.d.js +80 -80
- package/lib/cjs/types/index.d.js.map +1 -1
- package/lib/cjs/utils.js +122 -145
- package/lib/cjs/utils.js.map +1 -1
- package/lib/es6/AnimatedClipPath.js +24 -37
- package/lib/es6/AnimatedClipPath.js.map +1 -1
- package/lib/es6/Area.js +179 -215
- package/lib/es6/Area.js.map +1 -1
- package/lib/es6/Axis.js +242 -321
- package/lib/es6/Axis.js.map +1 -1
- package/lib/es6/Bar.js +154 -177
- package/lib/es6/Bar.js.map +1 -1
- package/lib/es6/Bubble.js +206 -235
- package/lib/es6/Bubble.js.map +1 -1
- package/lib/es6/CompactHorizontalBar.js +433 -467
- package/lib/es6/CompactHorizontalBar.js.map +1 -1
- package/lib/es6/Donut.js +337 -384
- package/lib/es6/Donut.js.map +1 -1
- package/lib/es6/Dots.js +60 -79
- package/lib/es6/Dots.js.map +1 -1
- package/lib/es6/GroupBar.js +74 -89
- package/lib/es6/GroupBar.js.map +1 -1
- package/lib/es6/HorizontalBar.js +141 -159
- package/lib/es6/HorizontalBar.js.map +1 -1
- package/lib/es6/Hover.js +174 -203
- package/lib/es6/Hover.js.map +1 -1
- package/lib/es6/Line.js +173 -213
- package/lib/es6/Line.js.map +1 -1
- package/lib/es6/Pattern.js +68 -74
- package/lib/es6/Pattern.js.map +1 -1
- package/lib/es6/Plot.js +95 -121
- package/lib/es6/Plot.js.map +1 -1
- package/lib/es6/Radar.js +554 -659
- package/lib/es6/Radar.js.map +1 -1
- package/lib/es6/RadialTree.js +500 -553
- package/lib/es6/RadialTree.js.map +1 -1
- package/lib/es6/Reference.js +140 -171
- package/lib/es6/Reference.js.map +1 -1
- package/lib/es6/ResponsiveContainer.js +58 -76
- package/lib/es6/ResponsiveContainer.js.map +1 -1
- package/lib/es6/ScatterPlot.js +161 -191
- package/lib/es6/ScatterPlot.js.map +1 -1
- package/lib/es6/StackBar.js +130 -172
- package/lib/es6/StackBar.js.map +1 -1
- package/lib/es6/StackedArea.js +56 -69
- package/lib/es6/StackedArea.js.map +1 -1
- package/lib/es6/Tooltip.js +183 -198
- package/lib/es6/Tooltip.js.map +1 -1
- package/lib/es6/Venn.js +169 -204
- package/lib/es6/Venn.js.map +1 -1
- package/lib/es6/a11y/DataAccessibilityTable.js +41 -80
- package/lib/es6/a11y/DataAccessibilityTable.js.map +1 -1
- package/lib/es6/a11y/PlotA11yModule.js +35 -95
- package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
- package/lib/es6/a11y/PlotA11yView.js +89 -84
- package/lib/es6/a11y/PlotA11yView.js.map +1 -1
- package/lib/es6/a11y/bezier.js +16 -23
- package/lib/es6/a11y/bezier.js.map +1 -1
- package/lib/es6/a11y/focus.js +15 -16
- package/lib/es6/a11y/focus.js.map +1 -1
- package/lib/es6/a11y/hints.js +67 -73
- package/lib/es6/a11y/hints.js.map +1 -1
- package/lib/es6/a11y/insights.js +353 -524
- package/lib/es6/a11y/insights.js.map +1 -1
- package/lib/es6/a11y/intl.js +4 -5
- package/lib/es6/a11y/intl.js.map +1 -1
- package/lib/es6/a11y/locale.js +11 -18
- package/lib/es6/a11y/locale.js.map +1 -1
- package/lib/es6/a11y/serialize.js +162 -203
- package/lib/es6/a11y/serialize.js.map +1 -1
- package/lib/es6/a11y/summarize.js +6 -6
- package/lib/es6/a11y/summarize.js.map +1 -1
- package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js +15 -15
- 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 +15 -15
- 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 +416 -462
- 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 +92 -111
- 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 +225 -213
- 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 +109 -132
- 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 +276 -301
- package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js +70 -103
- 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 +74 -90
- 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 +121 -144
- 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 +90 -109
- 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 +80 -107
- 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 +113 -138
- 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 +97 -117
- 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/ChartLegend/BaseLegend.js +70 -104
- 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 +53 -65
- 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 +198 -211
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +58 -68
- 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/Cigarette/Cigarette.js +108 -122
- package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
- package/lib/es6/component/StackGroupBar/StackGroupBar.js +100 -130
- package/lib/es6/component/StackGroupBar/StackGroupBar.js.map +1 -1
- package/lib/es6/component/SvgElement.js +4 -5
- package/lib/es6/component/SvgElement.js.map +1 -1
- package/lib/es6/createElement.js +55 -54
- package/lib/es6/createElement.js.map +1 -1
- package/lib/es6/style/axis.shadow.css +3 -0
- package/lib/es6/style/plot.shadow.css +1 -3
- package/lib/es6/style/plotA11yModule.shadow.css +10 -11
- package/lib/es6/style/plotA11yView.shadow.css +13 -26
- package/lib/es6/translations/__intergalactic-dynamic-locales.js +14 -14
- package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/types/Axis.d.js.map +1 -1
- package/lib/es6/types/CompactHorizontalBar.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/ResponsiveContainer.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/utils.js +105 -144
- package/lib/es6/utils.js.map +1 -1
- package/lib/esm/AnimatedClipPath.mjs +24 -36
- package/lib/esm/Area.mjs +178 -149
- package/lib/esm/Axis.mjs +241 -242
- package/lib/esm/Bar.mjs +155 -137
- package/lib/esm/Bubble.mjs +205 -171
- package/lib/esm/CompactHorizontalBar.mjs +428 -383
- package/lib/esm/Donut.mjs +315 -266
- package/lib/esm/Dots.mjs +60 -49
- package/lib/esm/GroupBar.mjs +71 -75
- package/lib/esm/HorizontalBar.mjs +142 -120
- package/lib/esm/Hover.mjs +173 -163
- package/lib/esm/Line.mjs +174 -145
- package/lib/esm/Pattern.mjs +67 -63
- package/lib/esm/Plot.mjs +98 -95
- package/lib/esm/Radar.mjs +550 -498
- package/lib/esm/RadialTree.mjs +512 -416
- package/lib/esm/Reference.mjs +137 -122
- package/lib/esm/ResponsiveContainer.mjs +58 -69
- package/lib/esm/ScatterPlot.mjs +163 -162
- package/lib/esm/StackBar.mjs +126 -147
- package/lib/esm/StackedArea.mjs +53 -61
- package/lib/esm/Tooltip.mjs +185 -175
- package/lib/esm/Venn.mjs +170 -170
- package/lib/esm/a11y/DataAccessibilityTable.mjs +46 -73
- package/lib/esm/a11y/PlotA11yModule.mjs +37 -80
- package/lib/esm/a11y/PlotA11yView.mjs +99 -74
- package/lib/esm/a11y/bezier.mjs +16 -23
- package/lib/esm/a11y/focus.mjs +15 -16
- package/lib/esm/a11y/hints.mjs +65 -71
- package/lib/esm/a11y/insights.mjs +347 -495
- package/lib/esm/a11y/intl.mjs +4 -5
- package/lib/esm/a11y/locale.mjs +12 -14
- package/lib/esm/a11y/serialize.mjs +139 -152
- package/lib/esm/a11y/summarize.mjs +3 -3
- package/lib/esm/a11y/translations/module/__intergalactic-dynamic-locales.mjs +1 -1
- package/lib/esm/a11y/translations/module/de.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/en.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/es.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/fr.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/it.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/ja.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/ko.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/nl.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/pl.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/pt.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/sv.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/tr.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/vi.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/zh.json.mjs +2 -4
- package/lib/esm/a11y/translations/view/__intergalactic-dynamic-locales.mjs +1 -1
- package/lib/esm/color.mjs +1 -1
- package/lib/esm/component/Chart/AbstractChart.mjs +422 -415
- package/lib/esm/component/Chart/AreaChart.mjs +92 -91
- package/lib/esm/component/Chart/BarChart.mjs +225 -177
- package/lib/esm/component/Chart/BubbleChart.mjs +110 -118
- package/lib/esm/component/Chart/CigaretteChart.mjs +277 -268
- package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +70 -87
- package/lib/esm/component/Chart/DonutChart.mjs +74 -84
- package/lib/esm/component/Chart/HistogramChart.mjs +121 -117
- package/lib/esm/component/Chart/LineChart.mjs +90 -89
- package/lib/esm/component/Chart/RadarChart.mjs +81 -97
- package/lib/esm/component/Chart/ScatterPlotChart.mjs +113 -111
- package/lib/esm/component/Chart/VennChart.mjs +98 -111
- package/lib/esm/component/ChartLegend/BaseLegend.mjs +75 -97
- package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +54 -55
- package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +194 -165
- package/lib/esm/component/ChartLegend/LegendItem/LegendItem.type.mjs +1 -1
- package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +60 -58
- package/lib/esm/component/Cigarette/Cigarette.mjs +109 -99
- package/lib/esm/component/StackGroupBar/StackGroupBar.mjs +97 -111
- package/lib/esm/component/SvgElement.mjs +4 -4
- package/lib/esm/createElement.mjs +54 -37
- package/lib/esm/style/axis.shadow.css +3 -0
- package/lib/esm/style/plot.shadow.css +1 -3
- package/lib/esm/style/plotA11yModule.shadow.css +10 -11
- package/lib/esm/style/plotA11yView.shadow.css +13 -26
- package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +1 -1
- package/lib/esm/utils.mjs +103 -138
- package/lib/types/Axis.d.ts +4 -0
- package/lib/types/CompactHorizontalBar.d.ts +1 -1
- package/lib/types/Hover.d.ts +1 -1
- package/lib/types/Line.d.ts +1 -1
- package/lib/types/Plot.d.ts +1 -1
- package/lib/types/Radar.d.ts +1 -1
- package/lib/types/ResponsiveContainer.d.ts +1 -1
- package/lib/types/Tooltip.d.ts +1 -3
- package/lib/types/Venn.d.ts +1 -1
- package/lib/types/a11y/PlotA11yModule.d.ts +4 -11
- package/lib/types/a11y/PlotA11yView.d.ts +12 -1
- package/lib/types/a11y/translations/module/__intergalactic-dynamic-locales.d.ts +14 -14
- package/lib/types/component/Chart/AbstractChart.d.ts +1 -1
- package/lib/types/component/Chart/AbstractChart.type.d.ts +1 -1
- package/lib/types/component/Chart/AreaChart.type.d.ts +1 -1
- package/lib/types/component/Chart/BarChart.type.d.ts +1 -1
- package/lib/types/component/Chart/BubbleChart.type.d.ts +1 -1
- package/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +1 -1
- package/lib/types/component/Chart/DonutChart.type.d.ts +1 -1
- package/lib/types/component/Chart/HistogramChart.type.d.ts +1 -1
- package/lib/types/component/Chart/LineChart.type.d.ts +1 -1
- package/lib/types/component/Chart/RadarChart.type.d.ts +1 -1
- package/lib/types/component/Chart/ScatterPlotChart.type.d.ts +1 -1
- package/lib/types/component/Chart/VennChart.type.d.ts +1 -1
- package/lib/types/component/ChartLegend/BaseLegend.d.ts +1 -1
- package/lib/types/component/ChartLegend/BaseLegend.type.d.ts +1 -1
- package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.type.d.ts +1 -1
- package/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +1 -1
- package/lib/types/component/ChartLegend/LegendTable/LegendTable.type.d.ts +1 -1
- package/lib/types/utils.d.ts +10 -10
- package/package.json +11 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CigaretteChart.js","names":["createComponent","Root","sstyled","i18nEnhance","resolveColorEnhance","uniqueIDEnhancement","Divider","Flex","Box","Text","scaleBand","scaleLinear","React","HoverRect","Plot","AbstractChart","NOT_A_VALUE","AnimatedClipPath","localizedMessages","interpolateValue","scaleToBand","Cigarette","wMin","CigaretteChartComponent","_AbstractChart","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","_inherits","_createClass","key","value","resolveColor","id","index","_this$props$colorMap$","_this$props$colorMap","props","colorMap","getDefaultDataDefinitions","dataDefinitions","_superPropGet","map","dataDef","columns","slice","defaultLegendProps","legendType","w","get","invertAxis","asProps","valueScale","categoryScale","renderChart","_this2","_this$asProps","data","uid","duration","patterns","plotHeight","plotWidth","onClick","_this$state","state","highlightedLine","offset","createElement","Fragment","_toConsumableArray","reverse","item","checked","absWidth","Math","abs","max","domain","height","bandwidth","width","y","x","r","dataKey","hide","color","direction","hovered","undefined","renderTooltip","_ref","_this3","_this$asProps2","tooltipTitle","tooltipViewType","showPercentValueInTooltip","styles","showTooltip","STooltipChildrenWrapper","Tooltip","hideHoverLine","tooltipProps","_ref4","xIndex","yIndex","showPercentColumn","totalValue","_ref3","find","dataDefItem","children","cn","_objectSpread","_assignProps","Dot","mr","label","percentValue","tooltipValueFormatter","Title","_assignProps2","style","opacity","textAlign","bold","renderTooltipTotalLine","dataItem","_this$asProps3","showTotalInTooltip","total","mt","Number","isNaN","renderHeader","_this$asProps$header","header","render","_ref2","_ref6","SChart","_this$asProps4","a11yAltTextConfig","_ref5","_assignProps3","xScale","yScale","dataHints","renderLegend","_assignProps4","getLegendAriaLabel","getI18nText","chartType","result","Map","forEach","set","_this$asProps5","range","_this$asProps6","selectedData","_props$invertAxis","showXAxis","showYAxis","showLegend","marginX","marginY","CigaretteChart"],"sources":["../../../../src/component/Chart/CigaretteChart.tsx"],"sourcesContent":["import { createComponent, Root, sstyled } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport Divider from '@semcore/divider';\nimport { Flex, Box } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport { scaleBand, scaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport type { CigaretteChartData, CigaretteChartProps, CigaretteChartType } from './CigaretteChart.type';\n// @ts-ignore\nimport { HoverRect, Plot } from '../..';\nimport { AbstractChart, NOT_A_VALUE } from './AbstractChart';\nimport type { ObjectData } from './AbstractChart.type';\n// @ts-ignore\nimport AnimatedClipPath from '../../AnimatedClipPath';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport { interpolateValue, scaleToBand } from '../../utils';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport Cigarette from '../Cigarette/Cigarette';\n\nconst wMin = 2;\n\nclass CigaretteChartComponent extends AbstractChart<\n CigaretteChartData,\n CigaretteChartProps,\n typeof CigaretteChartComponent.enhance\n> {\n static displayName = 'Cigarette.Bar';\n\n static defaultProps: any = (props: CigaretteChartProps) => {\n const invertAxis = props.invertAxis ?? true;\n return {\n invertAxis: invertAxis,\n showXAxis: false,\n showYAxis: false,\n showTooltip: true,\n showLegend: false,\n marginX: 0,\n marginY: 0,\n duration: 500,\n plotWidth: !invertAxis && !props.plotWidth ? 44 : props.plotWidth,\n plotHeight: invertAxis && !props.plotHeight ? 28 : props.plotHeight,\n showPercentValueInTooltip: false,\n };\n };\n\n static enhance = [\n resolveColorEnhance(),\n uniqueIDEnhancement(),\n i18nEnhance(localizedMessages),\n ] as const;\n\n protected override plotPadding = 0;\n\n private offset = 0;\n\n protected override resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `blue-${5 - index}00`;\n }\n\n protected override getDefaultDataDefinitions(): Array<\n LegendItem & { columns: React.ReactNode[] }\n > {\n const dataDefinitions = super.getDefaultDataDefinitions();\n\n return dataDefinitions.map((dataDef) => {\n dataDef.columns = dataDef.columns.slice(1);\n return dataDef;\n });\n }\n\n protected override defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n w: 'fit-content',\n };\n }\n\n get xScale() {\n const { invertAxis } = this.asProps;\n\n return invertAxis ? this.valueScale : this.categoryScale;\n }\n\n get yScale() {\n const { invertAxis } = this.asProps;\n\n return invertAxis ? this.categoryScale : this.valueScale;\n }\n\n renderChart() {\n const { invertAxis, data, uid, duration, patterns, plotHeight, plotWidth, onClick } =\n this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n this.offset = 0;\n\n return (\n <>\n {(invertAxis ? dataDefinitions : [...dataDefinitions].reverse()).map((item, index) => {\n const value = data[item.id];\n\n if (!item.checked || value === interpolateValue || value === null) {\n return null;\n }\n\n const absWidth = Math.abs(\n this.valueScale(value) -\n Math.max(this.valueScale(this.valueScale.domain()[0]), this.valueScale(0)),\n );\n const height = scaleToBand(this.categoryScale).bandwidth() - 4;\n const width = value === 0 ? 0 : Math.max(absWidth, wMin * 2) - wMin;\n const y = 2;\n const x = index === 0 ? 0 : this.offset;\n const r = height < 28 ? 2 : 4;\n\n this.offset = this.offset + width + wMin;\n\n return (\n <Cigarette\n key={item.id}\n dataKey={item.id}\n index={index}\n y={invertAxis ? y : x}\n x={invertAxis ? x : y}\n width={invertAxis ? width : height}\n height={invertAxis ? height : width}\n uid={uid}\n hide={!item.checked}\n duration={duration}\n r={index === 0 || index === dataDefinitions.length - 1 ? r : 0}\n color={item.color}\n patterns={patterns}\n direction={invertAxis ? 'horizontal' : 'vertical'}\n onClick={onClick}\n hovered={\n highlightedLine === index ? true : highlightedLine === -1 ? undefined : false\n }\n />\n );\n })}\n\n <AnimatedClipPath\n aria-hidden\n duration={duration}\n id={uid}\n x='0'\n y='0'\n width={invertAxis ? 0 : plotWidth}\n height={invertAxis ? plotHeight : 0}\n />\n </>\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { data, invertAxis, tooltipTitle, tooltipViewType, showPercentValueInTooltip, styles, showTooltip } =\n this.asProps;\n const { dataDefinitions } = this.state;\n const STooltipChildrenWrapper = Root;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? '' : undefined}\n y={invertAxis ? undefined : ''}\n wMin={100}\n hideHoverLine={true}\n >\n {(tooltipProps: any) => {\n const dataKey = invertAxis ? tooltipProps.xIndex : tooltipProps.yIndex;\n const showPercentColumn = showPercentValueInTooltip && this.totalValue(data) !== 0;\n\n if (tooltipViewType === 'single') {\n const item = dataDefinitions.find((dataDefItem) => dataDefItem.id === dataKey);\n if (!item) {\n return null;\n }\n\n return {\n children: sstyled(styles)(\n <STooltipChildrenWrapper render={Box} columnsCount={showPercentColumn ? '3' : '2'} __excludeProps={['data']}>\n <HoverRect.Tooltip.Dot mr={2} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n { showPercentColumn && <Text textAlign='end' color='text-secondary'>{this.percentValue(data, item.id)}</Text> }\n <Text textAlign='end' bold>{this.tooltipValueFormatter(data[item.id])}</Text>\n </STooltipChildrenWrapper>,\n ),\n };\n }\n\n return {\n children: sstyled(styles)(\n <Flex direction='column'>\n {tooltipTitle && (\n <HoverRect.Tooltip.Title>Some tooltip title</HoverRect.Tooltip.Title>\n )}\n\n <STooltipChildrenWrapper render={Box} columnsCount={showPercentColumn ? '3' : '2'} __excludeProps={['data']}>\n {dataDefinitions.map((item) => {\n const style = { opacity: item.id === dataKey ? 1 : 0.3 };\n return (\n item.checked && (\n <React.Fragment key={item.id}>\n <HoverRect.Tooltip.Dot mr={2} color={item.color} style={style}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n { showPercentColumn && <Text textAlign='end' color='text-secondary' style={style}>{this.percentValue(data, item.id)}</Text> }\n <Text textAlign='end' bold style={style}>{this.tooltipValueFormatter(data[item.id])}</Text>\n </React.Fragment>\n )\n );\n })}\n\n {this.renderTooltipTotalLine(data)}\n </STooltipChildrenWrapper>\n </Flex>,\n ),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n protected override renderTooltipTotalLine<D extends ObjectData>(dataItem: D) {\n const { showTotalInTooltip, showPercentValueInTooltip } = this.asProps;\n\n if (!showTotalInTooltip) {\n return null;\n }\n\n const total = this.totalValue(dataItem);\n\n return (\n <>\n <Box mt={2} mr={2}>Total</Box>\n { showPercentValueInTooltip && total !== 0 && <Text mt={2} textAlign='end' color='text-secondary'>{Number.isNaN(total) ? NOT_A_VALUE : '100%'}</Text> }\n <Text mt={2} textAlign='end' bold>{Number.isNaN(total) ? NOT_A_VALUE : total}</Text>\n </>\n );\n }\n\n renderHeader() {\n return this.asProps.header ?? null;\n }\n\n override render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, invertAxis, a11yAltTextConfig } =\n this.asProps;\n\n const header = this.renderHeader();\n\n if (invertAxis) {\n return sstyled(styles)(\n <SChart render={Flex} gap={6} direction='column' __excludeProps={['onClick', 'data']}>\n <Flex direction='column'>\n {header}\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </Flex>\n {this.renderLegend()}\n </SChart>,\n );\n }\n\n return sstyled(styles)(\n <SChart render={Flex} gap={6} __excludeProps={['onClick', 'data']}>\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n <Flex direction='column' gap={2}>\n {header && (\n <>\n <Box>{header}</Box>\n <Divider />\n </>\n )}\n {this.renderLegend()}\n </Flex>\n </SChart>,\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Cigarette' });\n }\n\n private get selectedData() {\n const { data } = this.asProps;\n const { dataDefinitions } = this.state;\n\n const result = new Map<string, number>();\n\n dataDefinitions.forEach((dataDefItem) => {\n const value = data[dataDefItem.id];\n if (dataDefItem.checked && value !== interpolateValue) {\n result.set(dataDefItem.id, value);\n }\n });\n\n return result;\n }\n\n private get categoryScale() {\n const { plotWidth, plotHeight, invertAxis } = this.asProps;\n\n const range = invertAxis ? [plotHeight, 0] : [0, plotWidth];\n\n return scaleBand<{}>([0], range);\n }\n\n private get valueScale() {\n const { plotWidth, plotHeight, invertAxis } = this.asProps;\n\n let max = 0;\n\n this.selectedData.forEach((value) => {\n max = max + value;\n });\n\n return scaleLinear()\n .range(invertAxis ? [0, plotWidth] : [plotHeight, 0])\n .domain([0, max]);\n }\n}\n\nexport const CigaretteChart: CigaretteChartType = createComponent(CigaretteChartComponent);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"CigaretteChart.js","names":["Box","Flex","createComponent","Root","sstyled","i18nEnhance","resolveColorEnhance","uniqueIDEnhancement","Divider","Text","scaleBand","scaleLinear","React","HoverRect","Plot","AbstractChart","NOT_A_VALUE","AnimatedClipPath","localizedMessages","interpolateValue","scaleToBand","Cigarette","wMin","CigaretteChartComponent","constructor","args","_defineProperty","resolveColor","id","index","props","colorMap","getDefaultDataDefinitions","dataDefinitions","map","dataDef","columns","slice","defaultLegendProps","legendType","w","xScale","invertAxis","asProps","valueScale","categoryScale","yScale","renderChart","data","uid","duration","patterns","plotHeight","plotWidth","onClick","highlightedLine","state","offset","createElement","Fragment","reverse","item","value","checked","absWidth","Math","abs","max","domain","height","bandwidth","width","y","x","r","key","dataKey","hide","length","color","direction","hovered","undefined","renderTooltip","_ref","tooltipTitle","tooltipViewType","showPercentValueInTooltip","styles","showTooltip","STooltipChildrenWrapper","Tooltip","hideHoverLine","tooltipProps","_ref4","xIndex","yIndex","showPercentColumn","totalValue","_ref3","find","dataDefItem","children","cn","_assignProps","Dot","mr","label","percentValue","tooltipValueFormatter","Title","_assignProps2","style","opacity","textAlign","bold","renderTooltipTotalLine","dataItem","showTotalInTooltip","total","mt","Number","isNaN","renderHeader","header","render","_ref2","_ref6","SChart","a11yAltTextConfig","_ref5","_assignProps3","dataHints","renderLegend","_assignProps4","getLegendAriaLabel","getI18nText","chartType","selectedData","result","Map","forEach","set","range","showXAxis","showYAxis","showLegend","marginX","marginY","CigaretteChart"],"sources":["../../../../src/component/Chart/CigaretteChart.tsx"],"sourcesContent":["import { Box, Flex } from '@semcore/base-components';\nimport { createComponent, Root, sstyled } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport Divider from '@semcore/divider';\nimport { Text } from '@semcore/typography';\nimport { scaleBand, scaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport type { CigaretteChartData, CigaretteChartProps, CigaretteChartType } from './CigaretteChart.type';\n// @ts-ignore\nimport { HoverRect, Plot } from '../..';\nimport { AbstractChart, NOT_A_VALUE } from './AbstractChart';\nimport type { ObjectData } from './AbstractChart.type';\n// @ts-ignore\nimport AnimatedClipPath from '../../AnimatedClipPath';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport { interpolateValue, scaleToBand } from '../../utils';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport Cigarette from '../Cigarette/Cigarette';\n\nconst wMin = 2;\n\nclass CigaretteChartComponent extends AbstractChart<\n CigaretteChartData,\n CigaretteChartProps,\n typeof CigaretteChartComponent.enhance\n> {\n static displayName = 'Cigarette.Bar';\n\n static defaultProps: any = (props: CigaretteChartProps) => {\n const invertAxis = props.invertAxis ?? true;\n return {\n invertAxis: invertAxis,\n showXAxis: false,\n showYAxis: false,\n showTooltip: true,\n showLegend: false,\n marginX: 0,\n marginY: 0,\n duration: 500,\n plotWidth: !invertAxis && !props.plotWidth ? 44 : props.plotWidth,\n plotHeight: invertAxis && !props.plotHeight ? 28 : props.plotHeight,\n showPercentValueInTooltip: false,\n };\n };\n\n static enhance = [\n resolveColorEnhance(),\n uniqueIDEnhancement(),\n i18nEnhance(localizedMessages),\n ] as const;\n\n protected override plotPadding = 0;\n\n private offset = 0;\n\n protected override resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `blue-${5 - index}00`;\n }\n\n protected override getDefaultDataDefinitions(): Array<\n LegendItem & { columns: React.ReactNode[] }\n > {\n const dataDefinitions = super.getDefaultDataDefinitions();\n\n return dataDefinitions.map((dataDef) => {\n dataDef.columns = dataDef.columns.slice(1);\n return dataDef;\n });\n }\n\n protected override defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n w: 'fit-content',\n };\n }\n\n get xScale() {\n const { invertAxis } = this.asProps;\n\n return invertAxis ? this.valueScale : this.categoryScale;\n }\n\n get yScale() {\n const { invertAxis } = this.asProps;\n\n return invertAxis ? this.categoryScale : this.valueScale;\n }\n\n renderChart() {\n const { invertAxis, data, uid, duration, patterns, plotHeight, plotWidth, onClick } =\n this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n this.offset = 0;\n\n return (\n <>\n {(invertAxis ? dataDefinitions : [...dataDefinitions].reverse()).map((item, index) => {\n const value = data[item.id];\n\n if (!item.checked || value === interpolateValue || value === null) {\n return null;\n }\n\n const absWidth = Math.abs(\n this.valueScale(value) -\n Math.max(this.valueScale(this.valueScale.domain()[0]), this.valueScale(0)),\n );\n const height = scaleToBand(this.categoryScale).bandwidth() - 4;\n const width = value === 0 ? 0 : Math.max(absWidth, wMin * 2) - wMin;\n const y = 2;\n const x = index === 0 ? 0 : this.offset;\n const r = height < 28 ? 2 : 4;\n\n this.offset = this.offset + width + wMin;\n\n return (\n <Cigarette\n key={item.id}\n dataKey={item.id}\n index={index}\n y={invertAxis ? y : x}\n x={invertAxis ? x : y}\n width={invertAxis ? width : height}\n height={invertAxis ? height : width}\n uid={uid}\n hide={!item.checked}\n duration={duration}\n r={index === 0 || index === dataDefinitions.length - 1 ? r : 0}\n color={item.color}\n patterns={patterns}\n direction={invertAxis ? 'horizontal' : 'vertical'}\n onClick={onClick}\n hovered={\n highlightedLine === index ? true : highlightedLine === -1 ? undefined : false\n }\n />\n );\n })}\n\n <AnimatedClipPath\n aria-hidden\n duration={duration}\n id={uid}\n x='0'\n y='0'\n width={invertAxis ? 0 : plotWidth}\n height={invertAxis ? plotHeight : 0}\n />\n </>\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { data, invertAxis, tooltipTitle, tooltipViewType, showPercentValueInTooltip, styles, showTooltip } =\n this.asProps;\n const { dataDefinitions } = this.state;\n const STooltipChildrenWrapper = Root;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? '' : undefined}\n y={invertAxis ? undefined : ''}\n wMin={100}\n hideHoverLine={true}\n >\n {(tooltipProps: any) => {\n const dataKey = invertAxis ? tooltipProps.xIndex : tooltipProps.yIndex;\n const showPercentColumn = showPercentValueInTooltip && this.totalValue(data) !== 0;\n\n if (tooltipViewType === 'single') {\n const item = dataDefinitions.find((dataDefItem) => dataDefItem.id === dataKey);\n if (!item) {\n return null;\n }\n\n return {\n children: sstyled(styles)(\n <STooltipChildrenWrapper render={Box} columnsCount={showPercentColumn ? '3' : '2'} __excludeProps={['data']}>\n <HoverRect.Tooltip.Dot mr={2} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n { showPercentColumn && <Text textAlign='end' color='text-secondary'>{this.percentValue(data, item.id)}</Text> }\n <Text textAlign='end' bold>{this.tooltipValueFormatter(data[item.id])}</Text>\n </STooltipChildrenWrapper>,\n ),\n };\n }\n\n return {\n children: sstyled(styles)(\n <Flex direction='column'>\n {tooltipTitle && (\n <HoverRect.Tooltip.Title>Some tooltip title</HoverRect.Tooltip.Title>\n )}\n\n <STooltipChildrenWrapper render={Box} columnsCount={showPercentColumn ? '3' : '2'} __excludeProps={['data']}>\n {dataDefinitions.map((item) => {\n const style = { opacity: item.id === dataKey ? 1 : 0.3 };\n return (\n item.checked && (\n <React.Fragment key={item.id}>\n <HoverRect.Tooltip.Dot mr={2} color={item.color} style={style}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n { showPercentColumn && <Text textAlign='end' color='text-secondary' style={style}>{this.percentValue(data, item.id)}</Text> }\n <Text textAlign='end' bold style={style}>{this.tooltipValueFormatter(data[item.id])}</Text>\n </React.Fragment>\n )\n );\n })}\n\n {this.renderTooltipTotalLine(data)}\n </STooltipChildrenWrapper>\n </Flex>,\n ),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n protected override renderTooltipTotalLine<D extends ObjectData>(dataItem: D) {\n const { showTotalInTooltip, showPercentValueInTooltip } = this.asProps;\n\n if (!showTotalInTooltip) {\n return null;\n }\n\n const total = this.totalValue(dataItem);\n\n return (\n <>\n <Box mt={2} mr={2}>Total</Box>\n { showPercentValueInTooltip && total !== 0 && <Text mt={2} textAlign='end' color='text-secondary'>{Number.isNaN(total) ? NOT_A_VALUE : '100%'}</Text> }\n <Text mt={2} textAlign='end' bold>{Number.isNaN(total) ? NOT_A_VALUE : total}</Text>\n </>\n );\n }\n\n renderHeader() {\n return this.asProps.header ?? null;\n }\n\n override render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, invertAxis, a11yAltTextConfig } =\n this.asProps;\n\n const header = this.renderHeader();\n\n if (invertAxis) {\n return sstyled(styles)(\n <SChart render={Flex} gap={6} direction='column' __excludeProps={['onClick', 'data']}>\n <Flex direction='column'>\n {header}\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </Flex>\n {this.renderLegend()}\n </SChart>,\n );\n }\n\n return sstyled(styles)(\n <SChart render={Flex} gap={6} __excludeProps={['onClick', 'data']}>\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n <Flex direction='column' gap={2}>\n {header && (\n <>\n <Box>{header}</Box>\n <Divider />\n </>\n )}\n {this.renderLegend()}\n </Flex>\n </SChart>,\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Cigarette' });\n }\n\n private get selectedData() {\n const { data } = this.asProps;\n const { dataDefinitions } = this.state;\n\n const result = new Map<string, number>();\n\n dataDefinitions.forEach((dataDefItem) => {\n const value = data[dataDefItem.id];\n if (dataDefItem.checked && value !== interpolateValue) {\n result.set(dataDefItem.id, value);\n }\n });\n\n return result;\n }\n\n private get categoryScale() {\n const { plotWidth, plotHeight, invertAxis } = this.asProps;\n\n const range = invertAxis ? [plotHeight, 0] : [0, plotWidth];\n\n return scaleBand<{}>([0], range);\n }\n\n private get valueScale() {\n const { plotWidth, plotHeight, invertAxis } = this.asProps;\n\n let max = 0;\n\n this.selectedData.forEach((value) => {\n max = max + value;\n });\n\n return scaleLinear()\n .range(invertAxis ? [0, plotWidth] : [plotHeight, 0])\n .domain([0, max]);\n }\n}\n\nexport const CigaretteChart: CigaretteChartType = createComponent(CigaretteChartComponent);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
3
|
-
import _createClass from "@babel/runtime/helpers/createClass";
|
|
4
|
-
import _callSuper from "@babel/runtime/helpers/callSuper";
|
|
5
|
-
import _superPropGet from "@babel/runtime/helpers/superPropGet";
|
|
6
|
-
import _inherits from "@babel/runtime/helpers/inherits";
|
|
7
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
8
2
|
import { createComponent } from '@semcore/core';
|
|
9
3
|
import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
|
|
@@ -13,105 +7,78 @@ import React from 'react';
|
|
|
13
7
|
import { CompactHorizontalBar } from '../..';
|
|
14
8
|
import { AbstractChart } from './AbstractChart';
|
|
15
9
|
import { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
return _callSuper(this, CompactHorizontalBarChartComponent, arguments);
|
|
10
|
+
class CompactHorizontalBarChartComponent extends AbstractChart {
|
|
11
|
+
get xScale() {
|
|
12
|
+
return this.asProps.xScale ?? this.valueScale;
|
|
20
13
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
onClick: onClickHoverRect
|
|
52
|
-
}), /*#__PURE__*/React.createElement(CompactHorizontalBar.Annotation, null, /*#__PURE__*/React.createElement(CompactHorizontalBar.Label, null), /*#__PURE__*/React.createElement(CompactHorizontalBar.Percent, null), /*#__PURE__*/React.createElement(CompactHorizontalBar.Value, null)), /*#__PURE__*/React.createElement(CompactHorizontalBar.Bar, {
|
|
53
|
-
onClick: onClickBar
|
|
54
|
-
}, /*#__PURE__*/React.createElement(CompactHorizontalBar.Bar.Background, null), /*#__PURE__*/React.createElement(CompactHorizontalBar.Bar.Fill, null)));
|
|
55
|
-
}
|
|
56
|
-
}, {
|
|
57
|
-
key: "renderCompactHorizontalBarTooltip",
|
|
58
|
-
value: function renderCompactHorizontalBarTooltip() {
|
|
59
|
-
var _this$asProps2 = this.asProps,
|
|
60
|
-
data = _this$asProps2.data,
|
|
61
|
-
x = _this$asProps2.x,
|
|
62
|
-
y = _this$asProps2.y,
|
|
63
|
-
showTooltip = _this$asProps2.showTooltip;
|
|
64
|
-
if (!showTooltip) {
|
|
65
|
-
return null;
|
|
66
|
-
}
|
|
67
|
-
return /*#__PURE__*/React.createElement(CompactHorizontalBar.Tooltip, {
|
|
68
|
-
wMin: 100
|
|
69
|
-
}, function (_ref) {
|
|
70
|
-
var index = _ref.index;
|
|
71
|
-
return {
|
|
72
|
-
children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(CompactHorizontalBar.Tooltip.Title, null, data[index][y]), /*#__PURE__*/React.createElement(CompactHorizontalBar.Tooltip.Dot, null, data[index][x]))
|
|
73
|
-
};
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
}, {
|
|
77
|
-
key: "renderTooltip",
|
|
78
|
-
value: function renderTooltip() {
|
|
14
|
+
get yScale() {
|
|
15
|
+
return this.asProps.yScale ?? this.categoryScale;
|
|
16
|
+
}
|
|
17
|
+
defaultLegendProps() {
|
|
18
|
+
return {};
|
|
19
|
+
}
|
|
20
|
+
renderChart() {
|
|
21
|
+
const {
|
|
22
|
+
x,
|
|
23
|
+
y,
|
|
24
|
+
onClickHoverRect,
|
|
25
|
+
onClickBar
|
|
26
|
+
} = this.asProps;
|
|
27
|
+
return /*#__PURE__*/React.createElement(CompactHorizontalBar, {
|
|
28
|
+
x: x,
|
|
29
|
+
y: y
|
|
30
|
+
}, this.renderCompactHorizontalBarTooltip(), /*#__PURE__*/React.createElement(CompactHorizontalBar.Hover, {
|
|
31
|
+
onClick: onClickHoverRect
|
|
32
|
+
}), /*#__PURE__*/React.createElement(CompactHorizontalBar.Annotation, null, /*#__PURE__*/React.createElement(CompactHorizontalBar.Label, null), /*#__PURE__*/React.createElement(CompactHorizontalBar.Percent, null), /*#__PURE__*/React.createElement(CompactHorizontalBar.Value, null)), /*#__PURE__*/React.createElement(CompactHorizontalBar.Bar, {
|
|
33
|
+
onClick: onClickBar
|
|
34
|
+
}, /*#__PURE__*/React.createElement(CompactHorizontalBar.Bar.Background, null), /*#__PURE__*/React.createElement(CompactHorizontalBar.Bar.Fill, null)));
|
|
35
|
+
}
|
|
36
|
+
renderCompactHorizontalBarTooltip() {
|
|
37
|
+
const {
|
|
38
|
+
data,
|
|
39
|
+
x,
|
|
40
|
+
y,
|
|
41
|
+
showTooltip
|
|
42
|
+
} = this.asProps;
|
|
43
|
+
if (!showTooltip) {
|
|
79
44
|
return null;
|
|
80
45
|
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
|
|
46
|
+
return /*#__PURE__*/React.createElement(CompactHorizontalBar.Tooltip, {
|
|
47
|
+
wMin: 100
|
|
48
|
+
}, ({
|
|
49
|
+
index
|
|
50
|
+
}) => {
|
|
51
|
+
return {
|
|
52
|
+
children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(CompactHorizontalBar.Tooltip.Title, null, data[index][y]), /*#__PURE__*/React.createElement(CompactHorizontalBar.Tooltip.Dot, null, data[index][x]))
|
|
53
|
+
};
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
renderTooltip() {
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
getLegendAriaLabel() {
|
|
60
|
+
return this.asProps.getI18nText('legendForChart', {
|
|
61
|
+
chartType: 'CompactHorizontalBar'
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
get categoryScale() {
|
|
65
|
+
const {
|
|
66
|
+
marginY = 40,
|
|
67
|
+
plotHeight,
|
|
68
|
+
data,
|
|
69
|
+
y
|
|
70
|
+
} = this.asProps;
|
|
71
|
+
return scaleBand().range([plotHeight - marginY, marginY]).domain([...data].reverse().map(d => d[y])).paddingInner(0.6).paddingOuter(0.2);
|
|
72
|
+
}
|
|
73
|
+
get valueScale() {
|
|
74
|
+
const {
|
|
75
|
+
marginY = 0,
|
|
76
|
+
plotWidth
|
|
77
|
+
} = this.asProps;
|
|
78
|
+
const sum = [...super.flatValues.values()].reduce((acc, d) => acc + d, 0);
|
|
79
|
+
return scaleLinear().range([marginY, plotWidth]).domain([marginY, sum]);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
115
82
|
_defineProperty(CompactHorizontalBarChartComponent, "displayName", 'Chart.CompactHorizontalBar');
|
|
116
83
|
_defineProperty(CompactHorizontalBarChartComponent, "defaultProps", {
|
|
117
84
|
direction: 'column',
|
|
@@ -121,5 +88,5 @@ _defineProperty(CompactHorizontalBarChartComponent, "defaultProps", {
|
|
|
121
88
|
showLegend: false
|
|
122
89
|
});
|
|
123
90
|
_defineProperty(CompactHorizontalBarChartComponent, "enhance", [i18nEnhance(localizedMessages)]);
|
|
124
|
-
export
|
|
91
|
+
export const CompactHorizontalBarChart = createComponent(CompactHorizontalBarChartComponent);
|
|
125
92
|
//# sourceMappingURL=CompactHorizontalBarChart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompactHorizontalBarChart.js","names":["createComponent","i18nEnhance","scaleBand","scaleLinear","React","CompactHorizontalBar","AbstractChart","localizedMessages","CompactHorizontalBarChartComponent","
|
|
1
|
+
{"version":3,"file":"CompactHorizontalBarChart.js","names":["createComponent","i18nEnhance","scaleBand","scaleLinear","React","CompactHorizontalBar","AbstractChart","localizedMessages","CompactHorizontalBarChartComponent","xScale","asProps","valueScale","yScale","categoryScale","defaultLegendProps","renderChart","x","y","onClickHoverRect","onClickBar","createElement","renderCompactHorizontalBarTooltip","Hover","onClick","Annotation","Label","Percent","Value","Bar","Background","Fill","data","showTooltip","Tooltip","wMin","index","children","Fragment","Title","Dot","renderTooltip","getLegendAriaLabel","getI18nText","chartType","marginY","plotHeight","range","domain","reverse","map","d","paddingInner","paddingOuter","plotWidth","sum","flatValues","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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompactHorizontalBarChart.type.js","names":[],"sources":["../../../../src/component/Chart/CompactHorizontalBarChart.type.ts"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"CompactHorizontalBarChart.type.js","names":[],"sources":["../../../../src/component/Chart/CompactHorizontalBarChart.type.ts"],"sourcesContent":["import type { Flex } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport type React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\ntype BarKey = string;\n\nexport type CompactHorizontalBarChartData = Array<Record<BarKey, number | string>>;\n\nexport type CompactHorizontalBarChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<CompactHorizontalBarChartData>,\n 'showTotalInTooltip'\n> & {\n /** Field name from data array for the x-axis values */\n x: string;\n /** Field name from data array for the y-axis values */\n y: string;\n /** Custom x-axis scale */\n xScale?: ScaleBand<any> | ScaleTime<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n\n /** Handle click by `HoverRect`. `index` is an index of the data array. */\n onClickHoverRect?: (index: number, e: React.SyntheticEvent) => void;\n\n /** Handle click by Bar. */\n onClickBar?: (barItem: number, e: React.SyntheticEvent) => void;\n};\n\nexport type CompactHorizontalBarChartType = Intergalactic.Component<\n typeof Flex,\n CompactHorizontalBarChartProps\n>;\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
|
-
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
|
-
import _callSuper from "@babel/runtime/helpers/callSuper";
|
|
4
|
-
import _inherits from "@babel/runtime/helpers/inherits";
|
|
5
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
import { Flex } from '@semcore/base-components';
|
|
6
3
|
import { createComponent } from '@semcore/core';
|
|
7
4
|
import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
|
|
8
|
-
import { Flex } from '@semcore/flex-box';
|
|
9
5
|
import { Text } from '@semcore/typography';
|
|
10
6
|
import { scaleLinear } from 'd3-scale';
|
|
11
7
|
import React from 'react';
|
|
@@ -14,94 +10,82 @@ import React from 'react';
|
|
|
14
10
|
import { Donut } from '../..';
|
|
15
11
|
import { AbstractChart } from './AbstractChart';
|
|
16
12
|
import { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
key: "xScale",
|
|
25
|
-
get: function get() {
|
|
26
|
-
var xScale = this.asProps.xScale;
|
|
27
|
-
if (xScale) {
|
|
28
|
-
return xScale;
|
|
29
|
-
}
|
|
30
|
-
return scaleLinear();
|
|
13
|
+
class DonutChartComponent extends AbstractChart {
|
|
14
|
+
get xScale() {
|
|
15
|
+
const {
|
|
16
|
+
xScale
|
|
17
|
+
} = this.asProps;
|
|
18
|
+
if (xScale) {
|
|
19
|
+
return xScale;
|
|
31
20
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
return
|
|
21
|
+
return scaleLinear();
|
|
22
|
+
}
|
|
23
|
+
get yScale() {
|
|
24
|
+
const {
|
|
25
|
+
yScale
|
|
26
|
+
} = this.asProps;
|
|
27
|
+
if (yScale) {
|
|
28
|
+
return yScale;
|
|
40
29
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
30
|
+
return scaleLinear();
|
|
31
|
+
}
|
|
32
|
+
defaultLegendProps() {
|
|
33
|
+
return {
|
|
34
|
+
legendType: 'Table'
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
renderChart() {
|
|
38
|
+
const {
|
|
39
|
+
innerRadius,
|
|
40
|
+
halfsize,
|
|
41
|
+
innerLabel,
|
|
42
|
+
onClickPie
|
|
43
|
+
} = this.asProps;
|
|
44
|
+
const {
|
|
45
|
+
dataDefinitions,
|
|
46
|
+
highlightedLine
|
|
47
|
+
} = this.state;
|
|
48
|
+
const checkedLegendItems = dataDefinitions.filter(item => item.checked);
|
|
49
|
+
return /*#__PURE__*/React.createElement(Donut, {
|
|
50
|
+
onClick: onClickPie,
|
|
51
|
+
halfsize: halfsize,
|
|
52
|
+
innerRadius: innerRadius
|
|
53
|
+
}, checkedLegendItems.length === 0 && /*#__PURE__*/React.createElement(Donut.EmptyData, null), checkedLegendItems.map((item, index) => {
|
|
54
|
+
return /*#__PURE__*/React.createElement(Donut.Pie, {
|
|
55
|
+
key: item.id,
|
|
56
|
+
dataKey: item.id,
|
|
57
|
+
name: item.label,
|
|
58
|
+
color: item.color,
|
|
59
|
+
active: highlightedLine === index
|
|
60
|
+
});
|
|
61
|
+
}), innerLabel && /*#__PURE__*/React.createElement(Donut.Label, null, innerLabel));
|
|
62
|
+
}
|
|
63
|
+
renderTooltip() {
|
|
64
|
+
const {
|
|
65
|
+
data
|
|
66
|
+
} = this.asProps;
|
|
67
|
+
const {
|
|
68
|
+
dataDefinitions
|
|
69
|
+
} = this.state;
|
|
70
|
+
return /*#__PURE__*/React.createElement(Donut.Tooltip, null, ({
|
|
71
|
+
dataKey
|
|
72
|
+
}) => {
|
|
73
|
+
const title = dataDefinitions.find(item => item.id === dataKey);
|
|
44
74
|
return {
|
|
45
|
-
|
|
75
|
+
children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Donut.Tooltip.Title, null, title?.label || dataKey), /*#__PURE__*/React.createElement(Flex, {
|
|
76
|
+
justifyContent: "space-between"
|
|
77
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
78
|
+
bold: true
|
|
79
|
+
}, this.tooltipValueFormatter(data[dataKey]))))
|
|
46
80
|
};
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
onClickPie = _this$asProps.onClickPie;
|
|
56
|
-
var _this$state = this.state,
|
|
57
|
-
dataDefinitions = _this$state.dataDefinitions,
|
|
58
|
-
highlightedLine = _this$state.highlightedLine;
|
|
59
|
-
var checkedLegendItems = dataDefinitions.filter(function (item) {
|
|
60
|
-
return item.checked;
|
|
61
|
-
});
|
|
62
|
-
return /*#__PURE__*/React.createElement(Donut, {
|
|
63
|
-
onClick: onClickPie,
|
|
64
|
-
halfsize: halfsize,
|
|
65
|
-
innerRadius: innerRadius
|
|
66
|
-
}, checkedLegendItems.length === 0 && /*#__PURE__*/React.createElement(Donut.EmptyData, null), checkedLegendItems.map(function (item, index) {
|
|
67
|
-
return /*#__PURE__*/React.createElement(Donut.Pie, {
|
|
68
|
-
key: item.id,
|
|
69
|
-
dataKey: item.id,
|
|
70
|
-
name: item.label,
|
|
71
|
-
color: item.color,
|
|
72
|
-
active: highlightedLine === index
|
|
73
|
-
});
|
|
74
|
-
}), innerLabel && /*#__PURE__*/React.createElement(Donut.Label, null, innerLabel));
|
|
75
|
-
}
|
|
76
|
-
}, {
|
|
77
|
-
key: "renderTooltip",
|
|
78
|
-
value: function renderTooltip() {
|
|
79
|
-
var _this = this;
|
|
80
|
-
var data = this.asProps.data;
|
|
81
|
-
var dataDefinitions = this.state.dataDefinitions;
|
|
82
|
-
return /*#__PURE__*/React.createElement(Donut.Tooltip, null, function (_ref) {
|
|
83
|
-
var dataKey = _ref.dataKey;
|
|
84
|
-
var title = dataDefinitions.find(function (item) {
|
|
85
|
-
return item.id === dataKey;
|
|
86
|
-
});
|
|
87
|
-
return {
|
|
88
|
-
children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Donut.Tooltip.Title, null, (title === null || title === void 0 ? void 0 : title.label) || dataKey), /*#__PURE__*/React.createElement(Flex, {
|
|
89
|
-
justifyContent: "space-between"
|
|
90
|
-
}, /*#__PURE__*/React.createElement(Text, {
|
|
91
|
-
bold: true
|
|
92
|
-
}, _this.tooltipValueFormatter(data[dataKey]))))
|
|
93
|
-
};
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
}, {
|
|
97
|
-
key: "getLegendAriaLabel",
|
|
98
|
-
value: function getLegendAriaLabel() {
|
|
99
|
-
return this.asProps.getI18nText('legendForChart', {
|
|
100
|
-
chartType: 'Donut'
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
}]);
|
|
104
|
-
}(AbstractChart);
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
getLegendAriaLabel() {
|
|
84
|
+
return this.asProps.getI18nText('legendForChart', {
|
|
85
|
+
chartType: 'Donut'
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
}
|
|
105
89
|
_defineProperty(DonutChartComponent, "displayName", 'Chart.Donut');
|
|
106
90
|
_defineProperty(DonutChartComponent, "defaultProps", {
|
|
107
91
|
direction: 'row-reverse',
|
|
@@ -111,5 +95,5 @@ _defineProperty(DonutChartComponent, "defaultProps", {
|
|
|
111
95
|
marginY: 0
|
|
112
96
|
});
|
|
113
97
|
_defineProperty(DonutChartComponent, "enhance", [i18nEnhance(localizedMessages)]);
|
|
114
|
-
export
|
|
98
|
+
export const DonutChart = createComponent(DonutChartComponent);
|
|
115
99
|
//# sourceMappingURL=DonutChart.js.map
|