@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":"ScatterPlot.js","names":["_core","require","_canUseDOM","_interopRequireDefault","_uniqueID","_d3Transition","_react","_createElement","_Pattern","_Tooltip","_utils","style","sstyled","insert","ScatterPlotRoot","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","canUseDOM","document","createElement","visible","props","tooltipProps","_ref4","clientX","clientY","_this$asProps","asProps","eventEmitter","plotId","emit","_inherits2","_createClass2","key","value","generateGetBoundingClientRect","x","undefined","y","width","height","top","right","bottom","left","animationCircle","_this$asProps2","duration","uid","r","radius","getScatterPlotRadius","selectRect","transition","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","prevProps","data","componentDidMount","handlerOnClick","index","_this2","e","stopPropagation","onClick","renderCircle","d","i","_ref2","_this$asProps3","color","scale","offset","styles","valueColor","transparent","resolveColor","patterns","_scale","_slicedToArray2","xScale","yScale","SScatterPlot","Element","SValue","Number","isNaN","cn","bindHandlerTooltip","xIndex","PatternFill","render","_this$asProps4","_scale2","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","Component","uniqueIDEnhancement","ScatterPlotTooltip","_ref","arguments[0]","_ref3","SScatterPlotTooltip","Tooltip","_objectSpread2","assignProps","ScatterPlot","_______childrenComponents","_default","exports"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { transition } from 'd3-transition';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/scatterplot.shadow.css';\nimport Tooltip from './Tooltip';\nimport { getScatterPlotRadius } from './utils';\n\nclass ScatterPlotRoot extends Component {\n static displayName = 'ScatterPlot';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter, plotId } = this.asProps;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, props, tooltipProps);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, visible);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : getScatterPlotRadius(value);\n const selectRect = transition().selection().selectAll(`[id^=${uid}]`).attr('r', 0);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode) {\n selectRect.transition().duration(duration).attr('r', radius);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.animationCircle();\n }\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n handlerOnClick(index) {\n return (e) => {\n e.stopPropagation();\n\n const { onClick } = this.asProps;\n\n if (!onClick) return;\n\n onClick(index, e);\n };\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n r,\n offset,\n styles,\n uid,\n duration,\n value,\n valueColor,\n transparent,\n resolveColor,\n patterns,\n } = this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n if (Number.isNaN(d[x]) || Number.isNaN(d[y])) {\n return null;\n }\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, this.props, { xIndex: i, index: i, patterns })}\n onMouseLeave={this.bindHandlerTooltip(false, this.props, { xIndex: i, index: i, patterns })}\n onClickCapture={this.handlerOnClick(i)}\n >\n <SScatterPlot\n aria-hidden\n id={`${uid}${i}`}\n index={i}\n render='circle'\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n {d[value] !== undefined && (\n <SValue\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n color={resolveColor(valueColor)}\n transparent={transparent}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <clipPath id={uid}>\n <rect x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </clipPath>\n </>\n );\n }\n}\n\nfunction ScatterPlotTooltip(props) {\n const SScatterPlotTooltip = Root;\n return sstyled(props.styles)(<SScatterPlotTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst ScatterPlot = createElement(ScatterPlotRoot, {\n Tooltip: [ScatterPlotTooltip, Tooltip._______childrenComponents],\n});\n\nexport default ScatterPlot;\n"],"mappings":";;;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,SAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAH,sBAAA,CAAAF,OAAA;AAEA,IAAAM,cAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AAEA,IAAAQ,QAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,MAAA,GAAAT,OAAA;AAA+C;AAAA,IAAAU,KAAA,8BAAAX,KAAA,CAAAY,OAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAAA,IAEzCC,eAAe,0BAAAC,UAAA;EAAA,SAAAD,gBAAA;IAAA,IAAAE,KAAA;IAAA,IAAAC,gBAAA,mBAAAH,eAAA;IAAA,SAAAI,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,OAAAQ,WAAA,mBAAAV,eAAA,KAAAW,MAAA,CAAAJ,IAAA;IAAA,IAAAK,gBAAA,aAAAV,KAAA,oBAUF,IAAAW,qBAAS,EAAC,CAAC,GAAGC,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAAA,IAAAH,gBAAA,aAAAV,KAAA,wBAM5C,UAACc,OAAO,EAAEC,KAAK,EAAEC,YAAY;MAAA,OAAK,UAAAC,KAAA,EAA0B;QAAA,IAAvBC,OAAO,GAAAD,KAAA,CAAPC,OAAO;UAAEC,OAAO,GAAAF,KAAA,CAAPE,OAAO;QACxE,IAAAC,aAAA,GAAiCpB,KAAA,CAAKqB,OAAO;UAArCC,YAAY,GAAAF,aAAA,CAAZE,YAAY;UAAEC,MAAM,GAAAH,aAAA,CAANG,MAAM;QAE5BD,YAAY,CAACE,IAAI,uBAAAf,MAAA,CAAuBc,MAAM,GAAIL,OAAO,EAAEC,OAAO,CAAC;QACnEG,YAAY,CAACE,IAAI,6BAAAf,MAAA,CAA6Bc,MAAM,GAAIR,KAAK,EAAEC,YAAY,CAAC;QAC5EM,YAAY,CAACE,IAAI,sBAAAf,MAAA,CAAsBc,MAAM,GAAIT,OAAO,CAAC;MAC3D,CAAC;IAAA;IAAA,OAAAd,KAAA;EAAA;EAAA,IAAAyB,UAAA,aAAA3B,eAAA,EAAAC,UAAA;EAAA,WAAA2B,aAAA,aAAA5B,eAAA;IAAA6B,GAAA;IAAAC,KAAA,EAVD,SAAAC,6BAA6BA,CAAA,EAAe;MAAA,IAAdC,CAAC,GAAA3B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA4B,SAAA,GAAA5B,SAAA,MAAG,CAAC;MAAA,IAAE6B,CAAC,GAAA7B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA4B,SAAA,GAAA5B,SAAA,MAAG,CAAC;MACxC,OAAO;QAAA,OAAO;UAAE8B,KAAK,EAAE,CAAC;UAAEC,MAAM,EAAE,CAAC;UAAEC,GAAG,EAAEH,CAAC;UAAEI,KAAK,EAAEN,CAAC;UAAEO,MAAM,EAAEL,CAAC;UAAEM,IAAI,EAAER;QAAE,CAAC;MAAA,CAAC;IAC9E;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAUD,SAAAW,eAAeA,CAAA,EAAG;MAChB,IAAAC,cAAA,GAAoC,IAAI,CAACnB,OAAO;QAAxCoB,QAAQ,GAAAD,cAAA,CAARC,QAAQ;QAAEC,GAAG,GAAAF,cAAA,CAAHE,GAAG;QAAEC,CAAC,GAAAH,cAAA,CAADG,CAAC;QAAEf,KAAK,GAAAY,cAAA,CAALZ,KAAK;MAC/B,IAAMgB,MAAM,GAAGD,CAAC,GAAGA,CAAC,GAAG,IAAAE,2BAAoB,EAACjB,KAAK,CAAC;MAClD,IAAMkB,UAAU,GAAG,IAAAC,wBAAU,EAAC,CAAC,CAACC,SAAS,CAAC,CAAC,CAACC,SAAS,SAAAxC,MAAA,CAASiC,GAAG,MAAG,CAAC,CAACQ,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;MAClF,IAAMC,cAAc,GAAGL,UAAU,CAACM,IAAI,CAAC,CAAC;MAExC,IAAIX,QAAQ,GAAG,CAAC,IAAIU,cAAc,EAAE;QAClCL,UAAU,CAACC,UAAU,CAAC,CAAC,CAACN,QAAQ,CAACA,QAAQ,CAAC,CAACS,IAAI,CAAC,GAAG,EAAEN,MAAM,CAAC;MAC9D;IACF;EAAC;IAAAjB,GAAA;IAAAC,KAAA,EAED,SAAAyB,kBAAkBA,CAACC,SAAS,EAAE;MAC5B,IAAIA,SAAS,CAACC,IAAI,KAAK,IAAI,CAACxC,KAAK,CAACwC,IAAI,EAAE;QACtC,IAAI,CAAChB,eAAe,CAAC,CAAC;MACxB;IACF;EAAC;IAAAZ,GAAA;IAAAC,KAAA,EAED,SAAA4B,iBAAiBA,CAAA,EAAG;MAClB,IAAI,CAACjB,eAAe,CAAC,CAAC;IACxB;EAAC;IAAAZ,GAAA;IAAAC,KAAA,EAED,SAAA6B,cAAcA,CAACC,KAAK,EAAE;MAAA,IAAAC,MAAA;MACpB,OAAO,UAACC,CAAC,EAAK;QACZA,CAAC,CAACC,eAAe,CAAC,CAAC;QAEnB,IAAQC,OAAO,GAAKH,MAAI,CAACtC,OAAO,CAAxByC,OAAO;QAEf,IAAI,CAACA,OAAO,EAAE;QAEdA,OAAO,CAACJ,KAAK,EAAEE,CAAC,CAAC;MACnB,CAAC;IACH;EAAC;IAAAjC,GAAA;IAAAC,KAAA,EAED,SAAAmC,YAAYA,CAACC,CAAC,EAAEC,CAAC,EAAE;MAAA,IAAAC,KAAA;MACjB,IAAAC,cAAA,GAeI,IAAI,CAAC9C,OAAO;QAdd+C,KAAK,GAAAD,cAAA,CAALC,KAAK;QACLC,KAAK,GAAAF,cAAA,CAALE,KAAK;QACLvC,CAAC,GAAAqC,cAAA,CAADrC,CAAC;QACDE,CAAC,GAAAmC,cAAA,CAADnC,CAAC;QACDW,CAAC,GAAAwB,cAAA,CAADxB,CAAC;QACD2B,MAAM,GAAAH,cAAA,CAANG,MAAM;QACNC,MAAM,GAAAJ,cAAA,CAANI,MAAM;QACN7B,GAAG,GAAAyB,cAAA,CAAHzB,GAAG;QACHD,QAAQ,GAAA0B,cAAA,CAAR1B,QAAQ;QACRb,KAAK,GAAAuC,cAAA,CAALvC,KAAK;QACL4C,UAAU,GAAAL,cAAA,CAAVK,UAAU;QACVC,WAAW,GAAAN,cAAA,CAAXM,WAAW;QACXC,YAAY,GAAAP,cAAA,CAAZO,YAAY;QACZC,QAAQ,GAAAR,cAAA,CAARQ,QAAQ;MAEV,IAAAC,MAAA,OAAAC,eAAA,aAAyBR,KAAK;QAAvBS,MAAM,GAAAF,MAAA;QAAEG,MAAM,GAAAH,MAAA;MACrB,IAAMI,YAAY,GAAG,IAAI,CAACC,OAAO;MACjC,IAAMC,MAAM,GAAG,MAAM;MAErB,IAAIC,MAAM,CAACC,KAAK,CAACpB,CAAC,CAAClC,CAAC,CAAC,CAAC,IAAIqD,MAAM,CAACC,KAAK,CAACpB,CAAC,CAAChC,CAAC,CAAC,CAAC,EAAE;QAC5C,OAAO,IAAI;MACb;MAEA,OAAAkC,KAAA,GAAO,IAAAtE,aAAO,EAAC2E,MAAM,CAAC,eACpBjF,MAAA,YAAAuB,aAAA,MAAAqD,KAAA,CAAAmB,EAAA;QAAA;QAAA,kBAAA5E,MAAA,CAEkBwD,CAAC;QAAA,eACJ,IAAI,CAACqB,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAACvE,KAAK,EAAE;UAAEwE,MAAM,EAAEtB,CAAC;UAAEP,KAAK,EAAEO,CAAC;UAAEU,QAAQ,EAARA;QAAS,CAAC,CAAC;QAAA,gBAC3E,IAAI,CAACW,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAACvE,KAAK,EAAE;UAAEwE,MAAM,EAAEtB,CAAC;UAAEP,KAAK,EAAEO,CAAC;UAAEU,QAAQ,EAARA;QAAS,CAAC,CAAC;QAAA,kBAC3E,IAAI,CAAClB,cAAc,CAACQ,CAAC;MAAC,iBAEtC3E,MAAA,YAAAuB,aAAA,CAACmE,YAAY,EAAAd,KAAA,CAAAmB,EAAA;QAAA;QAAA,SAAA5E,MAAA,CAEJiC,GAAG,EAAAjC,MAAA,CAAGwD,CAAC;QAAA,SACPA,CAAC;QAAA,UACD,QAAQ;QAAA,oBAAAxD,MAAA,CACGiC,GAAG;QAAA,MACjBoC,MAAM,CAACd,CAAC,CAAClC,CAAC,CAAC,CAAC,GAAGwC,MAAM,CAAC,CAAC,CAAC;QAAA,MACxBS,MAAM,CAACf,CAAC,CAAChC,CAAC,CAAC,CAAC,GAAGsC,MAAM,CAAC,CAAC,CAAC;QAAA,SACrBI,YAAY,CAACN,KAAK,CAAC;QAAA,WACjBO,QAAQ,WAAAlE,MAAA,CAAWiC,GAAG,OAAAjC,MAAA,CAAIwD,CAAC,iBAAclC,SAAS;QAAA,KACxDY,CAAC;QAAA,mBAAAlC,MAAA,CACagC,QAAQ;QAAA,eACZgC;MAAW,EACzB,CAAC,EACDE,QAAQ,iBACPrF,MAAA,YAAAuB,aAAA,CAACrB,QAAA,CAAAgG,WAAW,EAAAtB,KAAA,CAAAmB,EAAA;QAAA,SAAA5E,MAAA,CACHiC,GAAG,OAAAjC,MAAA,CAAIwD,CAAC;QAAA,cACHG,KAAK;QAAA,SACVM,YAAY,CAACN,KAAK,CAAC;QAAA,YAChBO;MAAQ,EACnB,CACF,EACAX,CAAC,CAACpC,KAAK,CAAC,KAAKG,SAAS,iBACrBzC,MAAA,YAAAuB,aAAA,CAACqE,MAAM,EAAAhB,KAAA,CAAAmB,EAAA;QAAA;QAAA,KAEFP,MAAM,CAACd,CAAC,CAAClC,CAAC,CAAC,CAAC,GAAGwC,MAAM,CAAC,CAAC,CAAC;QAAA,KACxBS,MAAM,CAACf,CAAC,CAAChC,CAAC,CAAC,CAAC,GAAGsC,MAAM,CAAC,CAAC,CAAC;QAAA,MACxB,MAAM;QAAA,oBAAA7D,MAAA,CACSiC,GAAG;QAAA,SACdgC,YAAY,CAACF,UAAU,CAAC;QAAA,eAClBC;MAAW,IAEvBT,CAAC,CAACpC,KAAK,CACF,CAET,CAAC;IAER;EAAC;IAAAD,GAAA;IAAAC,KAAA,EAED,SAAA6D,MAAMA,CAAA,EAAG;MACP,IAAAC,cAAA,GAA0C,IAAI,CAACrE,OAAO;QAA9CkC,IAAI,GAAAmC,cAAA,CAAJnC,IAAI;QAAEb,GAAG,GAAAgD,cAAA,CAAHhD,GAAG;QAAE2B,KAAK,GAAAqB,cAAA,CAALrB,KAAK;QAAEvC,CAAC,GAAA4D,cAAA,CAAD5D,CAAC;QAAEE,CAAC,GAAA0D,cAAA,CAAD1D,CAAC;QAAEJ,KAAK,GAAA8D,cAAA,CAAL9D,KAAK;MACrC,IAAA+D,OAAA,OAAAd,eAAA,aAAyBR,KAAK;QAAvBS,MAAM,GAAAa,OAAA;QAAEZ,MAAM,GAAAY,OAAA;MACrB,IAAMC,KAAK,GAAGC,IAAI,CAACC,GAAG,CAAChB,MAAM,CAACiB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAGjB,MAAM,CAACiB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;MAC7D,IAAMC,KAAK,GAAGH,IAAI,CAACC,GAAG,CAACf,MAAM,CAACgB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAGhB,MAAM,CAACgB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;MAC7D,IAAME,OAAO,GAAGJ,IAAI,CAACK,GAAG,CAACpB,MAAM,CAACiB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAEjB,MAAM,CAACiB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;MAC9D,IAAMI,OAAO,GAAGN,IAAI,CAACK,GAAG,CAACnB,MAAM,CAACgB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAEhB,MAAM,CAACgB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;MAE9D,IAAI,CAAC1E,OAAO,CAAC+E,gBAAgB,CAACC,oBAAoB,CAACvE,CAAC,EAAEE,CAAC,EAAEJ,KAAK,CAAC;MAC/D,IAAI,CAACP,OAAO,CAAC+E,gBAAgB,CAACE,iBAAiB,CAAC,cAAc,CAAC;MAE/D,oBACEhH,MAAA,YAAAuB,aAAA,CAAAvB,MAAA,YAAAiH,QAAA,QACGhD,IAAI,CAACiD,GAAG,CAAC,IAAI,CAACzC,YAAY,CAAC0C,IAAI,CAAC,IAAI,CAAC,CAAC,eACvCnH,MAAA,YAAAuB,aAAA;QAAU6F,EAAE,EAAEhE;MAAI,gBAChBpD,MAAA,YAAAuB,aAAA;QAAMiB,CAAC,EAAEmE,OAAQ;QAACjE,CAAC,EAAEmE,OAAQ;QAAClE,KAAK,KAAAxB,MAAA,CAAKmF,KAAK,OAAK;QAAC1D,MAAM,KAAAzB,MAAA,CAAKuF,KAAK;MAAK,CAAE,CAClE,CACV,CAAC;IAEP;EAAC;AAAA,EApJ2BW,eAAS;AAAA,IAAAjG,gBAAA,aAAjCZ,eAAe,iBACE,aAAa;AAAA,IAAAY,gBAAA,aAD9BZ,eAAe,WAEJH,KAAK;AAAA,IAAAe,gBAAA,aAFhBZ,eAAe,aAGF,CAAC,IAAA8G,oBAAmB,EAAC,CAAC,CAAC;AAAA,IAAAlG,gBAAA,aAHpCZ,eAAe,kBAKG;EACpBwE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;EACd7B,QAAQ,EAAE;AACZ,CAAC;AA+IH,SAASoE,kBAAkBA,CAAC9F,KAAK,EAAE;EAAA,IAAA+F,IAAA,GAAAC,YAAA;IAAAC,KAAA;EACjC,IAAMC,mBAAmB,GACiCC,mBAAO;EAAjE,OAAAF,KAAA,GAAO,IAAApH,aAAO,EAACmB,KAAK,CAACwD,MAAM,CAAC,eAACjF,MAAA,YAAAuB,aAAA,CAACoG,mBAAmB,EAAAD,KAAA,CAAA3B,EAAA,4BAAA8B,cAAA,qBAAAnI,KAAA,CAAAoI,WAAA;IAAA;EAAA,GAAAN,IAAA,GAAsC,CAAC;AAC1F;AAAC;AAED,IAAMO,WAAW,GAAG,IAAAxG,yBAAa,EAACf,eAAe,EAAE;EACjDoH,OAAO,EAAE,CAACL,kBAAkB,EAAEK,mBAAO,CAACI,yBAAyB;AACjE,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEYH,WAAW","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ScatterPlot.js","names":["_core","require","_canUseDOM","_interopRequireDefault","_uniqueID","_d3Transition","_react","_createElement","_Pattern","_Tooltip","_utils","style","sstyled","insert","ScatterPlotRoot","Component","constructor","args","_defineProperty2","default","canUseDOM","document","createElement","visible","props","tooltipProps","clientX","clientY","eventEmitter","plotId","asProps","emit","generateGetBoundingClientRect","x","y","width","height","top","right","bottom","left","animationCircle","duration","uid","r","value","radius","getScatterPlotRadius","selectRect","transition","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","prevProps","data","componentDidMount","handlerOnClick","index","e","stopPropagation","onClick","renderCircle","d","i","_ref2","color","scale","offset","styles","valueColor","transparent","resolveColor","patterns","xScale","yScale","SScatterPlot","Element","SValue","Number","isNaN","cn","bindHandlerTooltip","xIndex","undefined","PatternFill","render","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","uniqueIDEnhancement","ScatterPlotTooltip","_ref","arguments[0]","_ref3","SScatterPlotTooltip","Tooltip","assignProps","ScatterPlot","_______childrenComponents","_default","exports"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { transition } from 'd3-transition';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/scatterplot.shadow.css';\nimport Tooltip from './Tooltip';\nimport { getScatterPlotRadius } from './utils';\n\nclass ScatterPlotRoot extends Component {\n static displayName = 'ScatterPlot';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter, plotId } = this.asProps;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, props, tooltipProps);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, visible);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : getScatterPlotRadius(value);\n const selectRect = transition().selection().selectAll(`[id^=${uid}]`).attr('r', 0);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode) {\n selectRect.transition().duration(duration).attr('r', radius);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.animationCircle();\n }\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n handlerOnClick(index) {\n return (e) => {\n e.stopPropagation();\n\n const { onClick } = this.asProps;\n\n if (!onClick) return;\n\n onClick(index, e);\n };\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n r,\n offset,\n styles,\n uid,\n duration,\n value,\n valueColor,\n transparent,\n resolveColor,\n patterns,\n } = this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n if (Number.isNaN(d[x]) || Number.isNaN(d[y])) {\n return null;\n }\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, this.props, { xIndex: i, index: i, patterns })}\n onMouseLeave={this.bindHandlerTooltip(false, this.props, { xIndex: i, index: i, patterns })}\n onClickCapture={this.handlerOnClick(i)}\n >\n <SScatterPlot\n aria-hidden\n id={`${uid}${i}`}\n index={i}\n render='circle'\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n {d[value] !== undefined && (\n <SValue\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n color={resolveColor(valueColor)}\n transparent={transparent}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <clipPath id={uid}>\n <rect x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </clipPath>\n </>\n );\n }\n}\n\nfunction ScatterPlotTooltip(props) {\n const SScatterPlotTooltip = Root;\n return sstyled(props.styles)(<SScatterPlotTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst ScatterPlot = createElement(ScatterPlotRoot, {\n Tooltip: [ScatterPlotTooltip, Tooltip._______childrenComponents],\n});\n\nexport default ScatterPlot;\n"],"mappings":"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","ignoreList":[]}
|
package/lib/cjs/StackBar.js
CHANGED
|
@@ -1,17 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard")
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports
|
|
9
|
-
var _objectSpread4 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
10
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
12
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
|
|
14
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
8
|
+
exports.default = void 0;
|
|
15
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
10
|
var _core = require("@semcore/core");
|
|
17
11
|
var _getOriginChildren = _interopRequireDefault(require("@semcore/core/lib/utils/getOriginChildren"));
|
|
@@ -21,181 +15,145 @@ var _Bar = _interopRequireWildcard(require("./Bar"));
|
|
|
21
15
|
var _createElement = _interopRequireDefault(require("./createElement"));
|
|
22
16
|
var _HorizontalBar = _interopRequireWildcard(require("./HorizontalBar"));
|
|
23
17
|
var _utils = require("./utils");
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
(0,
|
|
30
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
31
|
-
args[_key] = arguments[_key];
|
|
32
|
-
}
|
|
33
|
-
_this = (0, _callSuper2["default"])(this, StackBarRoot, [].concat(args));
|
|
34
|
-
(0, _defineProperty2["default"])(_this, "offsetBars", []);
|
|
35
|
-
return _this;
|
|
18
|
+
const DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
|
|
19
|
+
const XY0 = Symbol('XY0');
|
|
20
|
+
class StackBarRoot extends _core.Component {
|
|
21
|
+
constructor(...args) {
|
|
22
|
+
super(...args);
|
|
23
|
+
(0, _defineProperty2.default)(this, "offsetBars", []);
|
|
36
24
|
}
|
|
37
|
-
(
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if (/*#__PURE__*/_react["default"].isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {
|
|
48
|
-
acc.push(child.props.y);
|
|
49
|
-
}
|
|
50
|
-
if (/*#__PURE__*/_react["default"].isValidElement(child) && child.type === StackBar.HorizontalBar && !child.props.hide) {
|
|
51
|
-
acc.push(child.props.x);
|
|
52
|
-
}
|
|
53
|
-
return acc;
|
|
54
|
-
}, []);
|
|
55
|
-
stack.keys(keys);
|
|
56
|
-
}
|
|
57
|
-
return stack(data);
|
|
58
|
-
}
|
|
59
|
-
}, {
|
|
60
|
-
key: "getBarProps",
|
|
61
|
-
value: function getBarProps(_ref, index) {
|
|
62
|
-
var _this2 = this,
|
|
63
|
-
_this$offsetBars$seri;
|
|
64
|
-
var y = _ref.y,
|
|
65
|
-
_ref$hMin = _ref.hMin,
|
|
66
|
-
hMin = _ref$hMin === void 0 ? _Bar.MIN_HEIGHT : _ref$hMin;
|
|
67
|
-
var _this$asProps2 = this.asProps,
|
|
68
|
-
x = _this$asProps2.x,
|
|
69
|
-
r = _this$asProps2.r,
|
|
70
|
-
scale = _this$asProps2.scale,
|
|
71
|
-
maxBarSize = _this$asProps2.maxBarSize,
|
|
72
|
-
patterns = _this$asProps2.patterns;
|
|
73
|
-
var _scale = (0, _slicedToArray2["default"])(scale, 2),
|
|
74
|
-
yScale = _scale[1];
|
|
75
|
-
var seriesIndex = this.series.findIndex(function (s) {
|
|
76
|
-
return s.key === y;
|
|
77
|
-
});
|
|
78
|
-
// or [] if hide bar
|
|
79
|
-
var series = this.series[seriesIndex] || [];
|
|
80
|
-
var rBar = series.map(function (_s, i) {
|
|
81
|
-
return _this2.series.slice(seriesIndex + 1).some(function (bar) {
|
|
82
|
-
return bar[i][0] !== bar[i][1];
|
|
83
|
-
}) ? 0 : r;
|
|
84
|
-
});
|
|
85
|
-
this.offsetBars[seriesIndex] = (_this$offsetBars$seri = this.offsetBars[seriesIndex]) !== null && _this$offsetBars$seri !== void 0 ? _this$offsetBars$seri : [];
|
|
86
|
-
var data = series.map(function (s) {
|
|
87
|
-
return (0, _objectSpread4["default"])((0, _objectSpread4["default"])({}, s.data), {}, (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, y, s[1]), XY0, s[0]));
|
|
88
|
-
});
|
|
89
|
-
var calcOffset = function calcOffset(i) {
|
|
90
|
-
var _d$XY, _d$XY2;
|
|
91
|
-
var offset = _this2.offsetBars.reduce(function (offset, offsetBar) {
|
|
92
|
-
var _offsetBar$i;
|
|
93
|
-
return offset - ((_offsetBar$i = offsetBar[i]) !== null && _offsetBar$i !== void 0 ? _offsetBar$i : 0);
|
|
94
|
-
}, 0);
|
|
95
|
-
var d = data[i];
|
|
96
|
-
var absHeight = Math.abs(yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale((_d$XY = d[XY0]) !== null && _d$XY !== void 0 ? _d$XY : 0)));
|
|
97
|
-
var isEmptyValue = Number(d[y] - ((_d$XY2 = d[XY0]) !== null && _d$XY2 !== void 0 ? _d$XY2 : 0)) === 0;
|
|
98
|
-
if (isEmptyValue || absHeight >= hMin) {
|
|
99
|
-
_this2.offsetBars[seriesIndex][i] = 0;
|
|
100
|
-
} else {
|
|
101
|
-
var offsetValue = hMin - absHeight;
|
|
102
|
-
_this2.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;
|
|
25
|
+
getSeries() {
|
|
26
|
+
const {
|
|
27
|
+
Children,
|
|
28
|
+
data,
|
|
29
|
+
stack
|
|
30
|
+
} = this.asProps;
|
|
31
|
+
if (stack[DEFAULT_INSTANCE]) {
|
|
32
|
+
const keys = _react.default.Children.toArray((0, _getOriginChildren.default)(Children)).reduce((acc, child) => {
|
|
33
|
+
if (/*#__PURE__*/_react.default.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {
|
|
34
|
+
acc.push(child.props.y);
|
|
103
35
|
}
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
x: x,
|
|
111
|
-
r: rBar,
|
|
112
|
-
groupKey: x,
|
|
113
|
-
offset: calcOffset,
|
|
114
|
-
maxBarSize: maxBarSize,
|
|
115
|
-
color: (0, _utils.getChartDefaultColorName)(index),
|
|
116
|
-
patterns: patterns
|
|
117
|
-
};
|
|
118
|
-
}
|
|
119
|
-
}, {
|
|
120
|
-
key: "getHorizontalBarProps",
|
|
121
|
-
value: function getHorizontalBarProps(_ref2, index) {
|
|
122
|
-
var _this3 = this,
|
|
123
|
-
_this$offsetBars$seri2;
|
|
124
|
-
var x = _ref2.x,
|
|
125
|
-
_ref2$wMin = _ref2.wMin,
|
|
126
|
-
wMin = _ref2$wMin === void 0 ? _HorizontalBar.MIN_WIDTH : _ref2$wMin;
|
|
127
|
-
var _this$asProps3 = this.asProps,
|
|
128
|
-
y = _this$asProps3.y,
|
|
129
|
-
r = _this$asProps3.r,
|
|
130
|
-
scale = _this$asProps3.scale,
|
|
131
|
-
maxBarSize = _this$asProps3.maxBarSize,
|
|
132
|
-
patterns = _this$asProps3.patterns;
|
|
133
|
-
var _scale2 = (0, _slicedToArray2["default"])(scale, 1),
|
|
134
|
-
xScale = _scale2[0];
|
|
135
|
-
var seriesIndex = this.series.findIndex(function (s) {
|
|
136
|
-
return s.key === x;
|
|
137
|
-
});
|
|
138
|
-
var series = this.series[seriesIndex];
|
|
139
|
-
var rBar = series.map(function (_s, i) {
|
|
140
|
-
return _this3.series.slice(seriesIndex + 1).some(function (bar) {
|
|
141
|
-
return bar[i][0] !== bar[i][1];
|
|
142
|
-
}) ? 0 : r;
|
|
143
|
-
});
|
|
144
|
-
this.offsetBars[seriesIndex] = (_this$offsetBars$seri2 = this.offsetBars[seriesIndex]) !== null && _this$offsetBars$seri2 !== void 0 ? _this$offsetBars$seri2 : [];
|
|
145
|
-
var data = series.map(function (s) {
|
|
146
|
-
return (0, _objectSpread4["default"])((0, _objectSpread4["default"])({}, s.data), {}, (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, x, s[1]), XY0, s[0]));
|
|
147
|
-
});
|
|
148
|
-
var calcOffset = function calcOffset(i) {
|
|
149
|
-
var _d$XY3, _d$XY4;
|
|
150
|
-
var offset = _this3.offsetBars.reduce(function (offset, offsetBar) {
|
|
151
|
-
var _offsetBar$i2;
|
|
152
|
-
return offset - ((_offsetBar$i2 = offsetBar[i]) !== null && _offsetBar$i2 !== void 0 ? _offsetBar$i2 : 0);
|
|
153
|
-
}, 0);
|
|
154
|
-
var d = data[i];
|
|
155
|
-
var absWidth = Math.abs(xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale((_d$XY3 = d[XY0]) !== null && _d$XY3 !== void 0 ? _d$XY3 : 0)));
|
|
156
|
-
_this3.offsetBars[seriesIndex][i] = Number(d[x] - ((_d$XY4 = d[XY0]) !== null && _d$XY4 !== void 0 ? _d$XY4 : 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;
|
|
157
|
-
return [offset, 0];
|
|
158
|
-
};
|
|
159
|
-
return {
|
|
160
|
-
data: data,
|
|
161
|
-
wMin: wMin,
|
|
162
|
-
x0: XY0,
|
|
163
|
-
y: y,
|
|
164
|
-
r: rBar,
|
|
165
|
-
groupKey: y,
|
|
166
|
-
offset: calcOffset,
|
|
167
|
-
maxBarSize: maxBarSize,
|
|
168
|
-
color: (0, _utils.getChartDefaultColorName)(index),
|
|
169
|
-
patterns: patterns
|
|
170
|
-
};
|
|
171
|
-
}
|
|
172
|
-
}, {
|
|
173
|
-
key: "render",
|
|
174
|
-
value: function render() {
|
|
175
|
-
var Element = this.Element;
|
|
176
|
-
this.series = this.getSeries();
|
|
177
|
-
this.asProps.dataHintsHandler.establishDataType('grouped-values');
|
|
178
|
-
this.offsetBars = [];
|
|
179
|
-
return /*#__PURE__*/_react["default"].createElement(Element, {
|
|
180
|
-
"aria-hidden": true,
|
|
181
|
-
render: "g",
|
|
182
|
-
series: this.series
|
|
183
|
-
});
|
|
36
|
+
if (/*#__PURE__*/_react.default.isValidElement(child) && child.type === StackBar.HorizontalBar && !child.props.hide) {
|
|
37
|
+
acc.push(child.props.x);
|
|
38
|
+
}
|
|
39
|
+
return acc;
|
|
40
|
+
}, []);
|
|
41
|
+
stack.keys(keys);
|
|
184
42
|
}
|
|
185
|
-
|
|
186
|
-
}
|
|
187
|
-
(
|
|
188
|
-
|
|
189
|
-
|
|
43
|
+
return stack(data);
|
|
44
|
+
}
|
|
45
|
+
getBarProps({
|
|
46
|
+
y,
|
|
47
|
+
hMin = _Bar.MIN_HEIGHT
|
|
48
|
+
}, index) {
|
|
49
|
+
const {
|
|
50
|
+
x,
|
|
51
|
+
r,
|
|
52
|
+
scale,
|
|
53
|
+
maxBarSize,
|
|
54
|
+
patterns
|
|
55
|
+
} = this.asProps;
|
|
56
|
+
const [, yScale] = scale;
|
|
57
|
+
const seriesIndex = this.series.findIndex(s => s.key === y);
|
|
58
|
+
// or [] if hide bar
|
|
59
|
+
const series = this.series[seriesIndex] || [];
|
|
60
|
+
const rBar = series.map((_s, i) => this.series.slice(seriesIndex + 1).some(bar => bar[i][0] !== bar[i][1]) ? 0 : r);
|
|
61
|
+
this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];
|
|
62
|
+
const data = series.map(s => ({
|
|
63
|
+
...s.data,
|
|
64
|
+
[y]: s[1],
|
|
65
|
+
[XY0]: s[0]
|
|
66
|
+
}));
|
|
67
|
+
const calcOffset = i => {
|
|
68
|
+
const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);
|
|
69
|
+
const d = data[i];
|
|
70
|
+
const absHeight = Math.abs(yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)));
|
|
71
|
+
const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;
|
|
72
|
+
if (isEmptyValue || absHeight >= hMin) {
|
|
73
|
+
this.offsetBars[seriesIndex][i] = 0;
|
|
74
|
+
} else {
|
|
75
|
+
const offsetValue = hMin - absHeight;
|
|
76
|
+
this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;
|
|
77
|
+
}
|
|
78
|
+
return [0, offset];
|
|
79
|
+
};
|
|
80
|
+
return {
|
|
81
|
+
data,
|
|
82
|
+
hMin,
|
|
83
|
+
y0: XY0,
|
|
84
|
+
x,
|
|
85
|
+
r: rBar,
|
|
86
|
+
groupKey: x,
|
|
87
|
+
offset: calcOffset,
|
|
88
|
+
maxBarSize,
|
|
89
|
+
color: (0, _utils.getChartDefaultColorName)(index),
|
|
90
|
+
patterns
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
getHorizontalBarProps({
|
|
94
|
+
x,
|
|
95
|
+
wMin = _HorizontalBar.MIN_WIDTH
|
|
96
|
+
}, index) {
|
|
97
|
+
const {
|
|
98
|
+
y,
|
|
99
|
+
r,
|
|
100
|
+
scale,
|
|
101
|
+
maxBarSize,
|
|
102
|
+
patterns
|
|
103
|
+
} = this.asProps;
|
|
104
|
+
const [xScale] = scale;
|
|
105
|
+
const seriesIndex = this.series.findIndex(s => s.key === x);
|
|
106
|
+
const series = this.series[seriesIndex];
|
|
107
|
+
this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];
|
|
108
|
+
const data = series.map(s => ({
|
|
109
|
+
...s.data,
|
|
110
|
+
[x]: s[1],
|
|
111
|
+
[XY0]: s[0]
|
|
112
|
+
}));
|
|
113
|
+
const calcOffset = i => {
|
|
114
|
+
const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);
|
|
115
|
+
const d = data[i];
|
|
116
|
+
const absWidth = Math.abs(xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)));
|
|
117
|
+
this.offsetBars[seriesIndex][i] = Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;
|
|
118
|
+
return [offset, 0];
|
|
119
|
+
};
|
|
120
|
+
return {
|
|
121
|
+
data,
|
|
122
|
+
wMin,
|
|
123
|
+
x0: XY0,
|
|
124
|
+
y,
|
|
125
|
+
r: 0,
|
|
126
|
+
groupKey: y,
|
|
127
|
+
offset: calcOffset,
|
|
128
|
+
maxBarSize,
|
|
129
|
+
color: (0, _utils.getChartDefaultColorName)(index),
|
|
130
|
+
patterns
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
render() {
|
|
134
|
+
const Element = this.Element;
|
|
135
|
+
this.series = this.getSeries();
|
|
136
|
+
this.asProps.dataHintsHandler.establishDataType('grouped-values');
|
|
137
|
+
this.offsetBars = [];
|
|
138
|
+
return /*#__PURE__*/_react.default.createElement(Element, {
|
|
139
|
+
"aria-hidden": true,
|
|
140
|
+
render: "g",
|
|
141
|
+
series: this.series
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
(0, _defineProperty2.default)(StackBarRoot, "displayName", 'StackBar');
|
|
146
|
+
(0, _defineProperty2.default)(StackBarRoot, "defaultProps", () => {
|
|
147
|
+
const stack = (0, _d3Shape.stack)();
|
|
190
148
|
stack[DEFAULT_INSTANCE] = true;
|
|
191
149
|
return {
|
|
192
|
-
stack
|
|
150
|
+
stack,
|
|
193
151
|
r: 2
|
|
194
152
|
};
|
|
195
153
|
});
|
|
196
|
-
|
|
197
|
-
Bar: _Bar
|
|
198
|
-
HorizontalBar: _HorizontalBar
|
|
154
|
+
const StackBar = (0, _createElement.default)(StackBarRoot, {
|
|
155
|
+
Bar: _Bar.default,
|
|
156
|
+
HorizontalBar: _HorizontalBar.default
|
|
199
157
|
});
|
|
200
|
-
var _default = exports
|
|
158
|
+
var _default = exports.default = StackBar;
|
|
201
159
|
//# sourceMappingURL=StackBar.js.map
|
package/lib/cjs/StackBar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StackBar.js","names":["_core","require","_getOriginChildren","_interopRequireDefault","_d3Shape","_react","_Bar","_interopRequireWildcard","_createElement","_HorizontalBar","_utils","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","_inherits2","_createClass2","key","value","getSeries","_this$asProps","asProps","Children","data","stack","keys","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","StackBar","Bar","props","hide","push","y","HorizontalBar","x","getBarProps","_ref","index","_this2","_this$offsetBars$seri","_ref$hMin","hMin","MIN_HEIGHT","_this$asProps2","r","scale","maxBarSize","patterns","_scale","_slicedToArray2","yScale","seriesIndex","series","findIndex","s","rBar","map","_s","i","slice","some","bar","offsetBars","_objectSpread4","calcOffset","_d$XY","_d$XY2","offset","offsetBar","_offsetBar$i","d","absHeight","Math","abs","min","domain","isEmptyValue","Number","offsetValue","y0","groupKey","color","getChartDefaultColorName","getHorizontalBarProps","_ref2","_this3","_this$offsetBars$seri2","_ref2$wMin","wMin","MIN_WIDTH","_this$asProps3","_scale2","xScale","_d$XY3","_d$XY4","_offsetBar$i2","absWidth","max","x0","render","Element","dataHintsHandler","establishDataType","createElement","Component","d3Stack","_default","exports"],"sources":["../../src/StackBar.jsx"],"sourcesContent":["import { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport { stack as d3Stack } from 'd3-shape';\nimport React from 'react';\n\nimport Bar, { MIN_HEIGHT } from './Bar';\nimport createElement from './createElement';\nimport HorizontalBar, { MIN_WIDTH } from './HorizontalBar';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\n };\n\n offsetBars = [];\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === StackBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n stack.keys(keys);\n }\n\n return stack(data);\n }\n\n getBarProps({ y, hMin = MIN_HEIGHT }, index) {\n const { x, r, scale, maxBarSize, patterns } = this.asProps;\n const [, yScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === y);\n // or [] if hide bar\n const series = this.series[seriesIndex] || [];\n\n const rBar = series.map((_s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)),\n );\n\n const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;\n\n if (isEmptyValue || absHeight >= hMin) {\n this.offsetBars[seriesIndex][i] = 0;\n } else {\n const offsetValue = hMin - absHeight;\n this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;\n }\n\n return [0, offset];\n };\n\n return {\n data,\n hMin,\n y0: XY0,\n x,\n r: rBar,\n groupKey: x,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }, index) {\n const { y, r, scale, maxBarSize, patterns } = this.asProps;\n const [xScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === x);\n const series = this.series[seriesIndex];\n\n const rBar = series.map((_s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;\n return [offset, 0];\n };\n\n return {\n data,\n wMin,\n x0: XY0,\n y,\n r: rBar,\n groupKey: y,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n this.offsetBars = [];\n\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"StackBar.js","names":["_core","require","_getOriginChildren","_interopRequireDefault","_d3Shape","_react","_Bar","_interopRequireWildcard","_createElement","_HorizontalBar","_utils","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","Component","constructor","args","_defineProperty2","default","getSeries","Children","data","stack","asProps","keys","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","StackBar","Bar","props","hide","push","y","HorizontalBar","x","getBarProps","hMin","MIN_HEIGHT","index","r","scale","maxBarSize","patterns","yScale","seriesIndex","series","findIndex","s","key","rBar","map","_s","i","slice","some","bar","offsetBars","calcOffset","offset","offsetBar","d","absHeight","Math","abs","min","domain","isEmptyValue","Number","offsetValue","y0","groupKey","color","getChartDefaultColorName","getHorizontalBarProps","wMin","MIN_WIDTH","xScale","absWidth","max","x0","render","Element","dataHintsHandler","establishDataType","createElement","d3Stack","_default","exports"],"sources":["../../src/StackBar.jsx"],"sourcesContent":["import { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport { stack as d3Stack } from 'd3-shape';\nimport React from 'react';\n\nimport Bar, { MIN_HEIGHT } from './Bar';\nimport createElement from './createElement';\nimport HorizontalBar, { MIN_WIDTH } from './HorizontalBar';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\n };\n\n offsetBars = [];\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === StackBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n stack.keys(keys);\n }\n\n return stack(data);\n }\n\n getBarProps({ y, hMin = MIN_HEIGHT }, index) {\n const { x, r, scale, maxBarSize, patterns } = this.asProps;\n const [, yScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === y);\n // or [] if hide bar\n const series = this.series[seriesIndex] || [];\n\n const rBar = series.map((_s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)),\n );\n\n const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;\n\n if (isEmptyValue || absHeight >= hMin) {\n this.offsetBars[seriesIndex][i] = 0;\n } else {\n const offsetValue = hMin - absHeight;\n this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;\n }\n\n return [0, offset];\n };\n\n return {\n data,\n hMin,\n y0: XY0,\n x,\n r: rBar,\n groupKey: x,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }, index) {\n const { y, r, scale, maxBarSize, patterns } = this.asProps;\n const [xScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === x);\n const series = this.series[seriesIndex];\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;\n return [offset, 0];\n };\n\n return {\n data,\n wMin,\n x0: XY0,\n y,\n r: 0,\n groupKey: y,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n this.offsetBars = [];\n\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"mappings":"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","ignoreList":[]}
|
package/lib/cjs/StackedArea.js
CHANGED
|
@@ -1,15 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports
|
|
8
|
-
var _objectSpread3 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
-
var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
|
|
12
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
7
|
+
exports.default = void 0;
|
|
13
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
14
9
|
var _core = require("@semcore/core");
|
|
15
10
|
var _getOriginChildren = _interopRequireDefault(require("@semcore/core/lib/utils/getOriginChildren"));
|
|
@@ -18,76 +13,68 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
18
13
|
var _Area = _interopRequireDefault(require("./Area"));
|
|
19
14
|
var _createElement = _interopRequireDefault(require("./createElement"));
|
|
20
15
|
var _utils = require("./utils");
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
if (/*#__PURE__*/_react["default"].isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {
|
|
39
|
-
acc.push(child.props.y);
|
|
40
|
-
}
|
|
41
|
-
return acc;
|
|
42
|
-
}, []);
|
|
43
|
-
stack.keys(keys.reverse());
|
|
44
|
-
}
|
|
45
|
-
return stack(data);
|
|
46
|
-
}
|
|
47
|
-
}, {
|
|
48
|
-
key: "getAreaProps",
|
|
49
|
-
value: function getAreaProps(_ref, index) {
|
|
50
|
-
var y = _ref.y;
|
|
51
|
-
var _this$asProps2 = this.asProps,
|
|
52
|
-
x = _this$asProps2.x,
|
|
53
|
-
patterns = _this$asProps2.patterns;
|
|
54
|
-
// or [] if hide area
|
|
55
|
-
var series = this.series.find(function (s) {
|
|
56
|
-
return s.key === y;
|
|
57
|
-
}) || [];
|
|
58
|
-
return {
|
|
59
|
-
color: (0, _utils.getChartDefaultColorName)(index),
|
|
60
|
-
patterns: patterns,
|
|
61
|
-
data: series.map(function (s) {
|
|
62
|
-
return (0, _objectSpread3["default"])((0, _objectSpread3["default"])({}, s.data), {}, (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, y, s.data[y] === null ? null : s[1]), Y0, s[0]));
|
|
63
|
-
}),
|
|
64
|
-
y0: Y0,
|
|
65
|
-
x: x
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
}, {
|
|
69
|
-
key: "render",
|
|
70
|
-
value: function render() {
|
|
71
|
-
var Element = this.Element;
|
|
72
|
-
this.series = this.getSeries();
|
|
73
|
-
return /*#__PURE__*/_react["default"].createElement(Element, {
|
|
74
|
-
"aria-hidden": true,
|
|
75
|
-
render: "g",
|
|
76
|
-
series: this.series
|
|
77
|
-
});
|
|
16
|
+
const DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
|
|
17
|
+
const Y0 = Symbol('Y0');
|
|
18
|
+
class StackedAreaRoot extends _core.Component {
|
|
19
|
+
getSeries() {
|
|
20
|
+
const {
|
|
21
|
+
Children,
|
|
22
|
+
data,
|
|
23
|
+
stack
|
|
24
|
+
} = this.asProps;
|
|
25
|
+
if (stack[DEFAULT_INSTANCE]) {
|
|
26
|
+
const keys = _react.default.Children.toArray((0, _getOriginChildren.default)(Children)).reduce((acc, child) => {
|
|
27
|
+
if (/*#__PURE__*/_react.default.isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {
|
|
28
|
+
acc.push(child.props.y);
|
|
29
|
+
}
|
|
30
|
+
return acc;
|
|
31
|
+
}, []);
|
|
32
|
+
stack.keys(keys.reverse());
|
|
78
33
|
}
|
|
79
|
-
|
|
80
|
-
}
|
|
81
|
-
(
|
|
82
|
-
|
|
83
|
-
|
|
34
|
+
return stack(data);
|
|
35
|
+
}
|
|
36
|
+
getAreaProps({
|
|
37
|
+
y
|
|
38
|
+
}, index) {
|
|
39
|
+
const {
|
|
40
|
+
x,
|
|
41
|
+
patterns
|
|
42
|
+
} = this.asProps;
|
|
43
|
+
// or [] if hide area
|
|
44
|
+
const series = this.series.find(s => s.key === y) || [];
|
|
45
|
+
return {
|
|
46
|
+
color: (0, _utils.getChartDefaultColorName)(index),
|
|
47
|
+
patterns,
|
|
48
|
+
data: series.map(s => ({
|
|
49
|
+
...s.data,
|
|
50
|
+
// if null is passed in the data, then we pass it, because d3 null leads to 0
|
|
51
|
+
[y]: s.data[y] === null ? null : s[1],
|
|
52
|
+
[Y0]: s[0]
|
|
53
|
+
})),
|
|
54
|
+
y0: Y0,
|
|
55
|
+
x
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
render() {
|
|
59
|
+
const Element = this.Element;
|
|
60
|
+
this.series = this.getSeries();
|
|
61
|
+
return /*#__PURE__*/_react.default.createElement(Element, {
|
|
62
|
+
"aria-hidden": true,
|
|
63
|
+
render: "g",
|
|
64
|
+
series: this.series
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
(0, _defineProperty2.default)(StackedAreaRoot, "displayName", 'StackedArea');
|
|
69
|
+
(0, _defineProperty2.default)(StackedAreaRoot, "defaultProps", () => {
|
|
70
|
+
const stack = (0, _d3Shape.stack)();
|
|
84
71
|
stack[DEFAULT_INSTANCE] = true;
|
|
85
72
|
return {
|
|
86
|
-
stack
|
|
73
|
+
stack
|
|
87
74
|
};
|
|
88
75
|
});
|
|
89
|
-
|
|
90
|
-
Area: _Area
|
|
76
|
+
const StackedArea = (0, _createElement.default)(StackedAreaRoot, {
|
|
77
|
+
Area: _Area.default
|
|
91
78
|
});
|
|
92
|
-
var _default = exports
|
|
79
|
+
var _default = exports.default = StackedArea;
|
|
93
80
|
//# sourceMappingURL=StackedArea.js.map
|