@semcore/d3-chart 16.5.0 → 16.6.0-prerelease.1
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 +13 -0
- package/lib/cjs/Area.js +11 -11
- package/lib/cjs/Axis.js +15 -15
- package/lib/cjs/Bar.js +16 -16
- package/lib/cjs/Bubble.js +20 -15
- package/lib/cjs/Bubble.js.map +1 -1
- package/lib/cjs/CompactHorizontalBar.js +16 -16
- package/lib/cjs/Donut.js +9 -9
- package/lib/cjs/Dots.js +8 -8
- package/lib/cjs/HorizontalBar.js +16 -16
- package/lib/cjs/Hover.js +3 -3
- package/lib/cjs/Line.js +9 -9
- package/lib/cjs/Plot.js +3 -3
- package/lib/cjs/Radar.js +19 -19
- package/lib/cjs/RadialTree.js +12 -12
- package/lib/cjs/Reference.js +12 -12
- package/lib/cjs/ScatterPlot.js +9 -9
- package/lib/cjs/Tooltip.js +9 -9
- package/lib/cjs/Venn.js +9 -9
- package/lib/cjs/a11y/PlotA11yModule.js +2 -2
- package/lib/cjs/a11y/PlotA11yView.js +2 -2
- package/lib/cjs/component/Chart/AbstractChart.js +9 -23
- package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
- package/lib/cjs/component/Chart/CigaretteChart.js +252 -90
- package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/cjs/component/Chart/CigaretteChart.type.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +17 -17
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/lib/cjs/style/bubble.shadow.css +4 -0
- package/lib/cjs/utils.js +3 -2
- package/lib/cjs/utils.js.map +1 -1
- package/lib/es6/Area.js +11 -11
- package/lib/es6/Axis.js +15 -15
- package/lib/es6/Bar.js +16 -16
- package/lib/es6/Bubble.js +20 -15
- package/lib/es6/Bubble.js.map +1 -1
- package/lib/es6/CompactHorizontalBar.js +16 -16
- package/lib/es6/Donut.js +9 -9
- package/lib/es6/Dots.js +8 -8
- package/lib/es6/HorizontalBar.js +16 -16
- package/lib/es6/Hover.js +3 -3
- package/lib/es6/Line.js +9 -9
- package/lib/es6/Plot.js +3 -3
- package/lib/es6/Radar.js +19 -19
- package/lib/es6/RadialTree.js +12 -12
- package/lib/es6/Reference.js +12 -12
- package/lib/es6/ScatterPlot.js +9 -9
- package/lib/es6/Tooltip.js +9 -9
- package/lib/es6/Venn.js +9 -9
- package/lib/es6/a11y/PlotA11yModule.js +2 -2
- package/lib/es6/a11y/PlotA11yView.js +2 -2
- package/lib/es6/component/Chart/AbstractChart.js +9 -23
- package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
- package/lib/es6/component/Chart/CigaretteChart.js +254 -92
- package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/es6/component/Chart/CigaretteChart.type.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +17 -17
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/lib/es6/style/bubble.shadow.css +4 -0
- package/lib/es6/utils.js +3 -2
- package/lib/es6/utils.js.map +1 -1
- package/lib/esm/Area.mjs +12 -12
- package/lib/esm/Axis.mjs +16 -16
- package/lib/esm/Bar.mjs +17 -17
- package/lib/esm/Bubble.mjs +20 -17
- package/lib/esm/CompactHorizontalBar.mjs +17 -17
- package/lib/esm/Donut.mjs +10 -10
- package/lib/esm/Dots.mjs +9 -9
- package/lib/esm/HorizontalBar.mjs +17 -17
- package/lib/esm/Hover.mjs +4 -4
- package/lib/esm/Line.mjs +10 -10
- package/lib/esm/Plot.mjs +4 -4
- package/lib/esm/Radar.mjs +20 -20
- package/lib/esm/RadialTree.mjs +13 -13
- package/lib/esm/Reference.mjs +13 -13
- package/lib/esm/ScatterPlot.mjs +10 -10
- package/lib/esm/Tooltip.mjs +10 -10
- package/lib/esm/Venn.mjs +10 -10
- package/lib/esm/a11y/PlotA11yModule.mjs +3 -3
- package/lib/esm/a11y/PlotA11yView.mjs +3 -3
- package/lib/esm/component/Chart/AbstractChart.mjs +10 -24
- package/lib/esm/component/Chart/CigaretteChart.mjs +210 -61
- package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +5 -5
- package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +18 -18
- package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +7 -7
- package/lib/esm/style/bubble.shadow.css +4 -0
- package/lib/esm/utils.mjs +2 -2
- package/lib/types/component/Chart/AbstractChart.d.ts +4 -7
- package/lib/types/component/Chart/CigaretteChart.type.d.ts +7 -4
- package/package.json +6 -6
package/lib/cjs/Radar.js
CHANGED
|
@@ -28,27 +28,27 @@ var _Pattern = require("./Pattern");
|
|
|
28
28
|
var _Tooltip = _interopRequireDefault(require("./Tooltip"));
|
|
29
29
|
var _utils = require("./utils");
|
|
30
30
|
/*!__reshadow-styles__:"./style/radar.shadow.css"*/
|
|
31
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
31
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SAxisLine_t7iw1_gg_,.___SAxisTick_t7iw1_gg_,.___SAxis_t7iw1_gg_{stroke:var(--intergalactic-chart-grid-line, #e0e1e9);stroke-width:1;fill:transparent}.___SAxisLine_t7iw1_gg_,.___SAxisTick_t7iw1_gg_{stroke-dasharray:2}.___SAxisLine_t7iw1_gg_.__active_t7iw1_gg_{stroke:var(--intergalactic-chart-grid-y-accent-hover-line, #a9abb6)}.___SAxisLabel_t7iw1_gg_{text-anchor:middle;dominant-baseline:central;font-size:12px}.___SAxisLabel_t7iw1_gg_.__xDirection_t7iw1_gg_{text-anchor:var(--xDirection_t7iw1)}.___SAxisLabel_t7iw1_gg_.__yDirection_t7iw1_gg_{dominant-baseline:var(--yDirection_t7iw1)}.___SPolygonDot_t7iw1_gg_,.___SPolygon_t7iw1_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SPolygon_t7iw1_gg_{opacity:.2}.___SPolygon_t7iw1_gg_.__color_t7iw1_gg_{fill:var(--color_t7iw1)}.___SPolygon_t7iw1_gg_.__pattern_t7iw1_gg_.__color_t7iw1_gg_{fill:var(--pattern_t7iw1);stroke:var(--color_t7iw1);stroke-width:1px}.___SPolygonDot_t7iw1_gg_{stroke-width:2px;stroke:var(--intergalactic-chart-grid-border, #ffffff);r:6px}.___SPolygonDot_t7iw1_gg_.__transparent_t7iw1_gg_{opacity:.3}.___SPolygonDot_t7iw1_gg_.__color_t7iw1_gg_{fill:var(--color_t7iw1)}.___SPolygonLine_t7iw1_gg_{stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke-width:3;fill:transparent}.___SPolygonLine_t7iw1_gg_.__transparent_t7iw1_gg_{opacity:.3}.___SPolygonLine_t7iw1_gg_.__color_t7iw1_gg_{stroke:var(--color_t7iw1)}.___SPieRect_t7iw1_gg_{outline:0;fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}", /*__inner_css_end__*/"t7iw1_gg_"),
|
|
32
32
|
/*__reshadow_css_end__*/
|
|
33
33
|
{
|
|
34
|
-
"__SAxis": "
|
|
35
|
-
"__SAxisLine": "
|
|
36
|
-
"__SAxisTick": "
|
|
37
|
-
"_active": "
|
|
38
|
-
"__SAxisLabel": "
|
|
39
|
-
"_xDirection": "
|
|
40
|
-
"--xDirection": "--
|
|
41
|
-
"_yDirection": "
|
|
42
|
-
"--yDirection": "--
|
|
43
|
-
"__SPolygon": "
|
|
44
|
-
"_color": "
|
|
45
|
-
"--color": "--
|
|
46
|
-
"_pattern": "
|
|
47
|
-
"--pattern": "--
|
|
48
|
-
"__SPolygonDot": "
|
|
49
|
-
"_transparent": "
|
|
50
|
-
"__SPolygonLine": "
|
|
51
|
-
"__SPieRect": "
|
|
34
|
+
"__SAxis": "___SAxis_t7iw1_gg_",
|
|
35
|
+
"__SAxisLine": "___SAxisLine_t7iw1_gg_",
|
|
36
|
+
"__SAxisTick": "___SAxisTick_t7iw1_gg_",
|
|
37
|
+
"_active": "__active_t7iw1_gg_",
|
|
38
|
+
"__SAxisLabel": "___SAxisLabel_t7iw1_gg_",
|
|
39
|
+
"_xDirection": "__xDirection_t7iw1_gg_",
|
|
40
|
+
"--xDirection": "--xDirection_t7iw1",
|
|
41
|
+
"_yDirection": "__yDirection_t7iw1_gg_",
|
|
42
|
+
"--yDirection": "--yDirection_t7iw1",
|
|
43
|
+
"__SPolygon": "___SPolygon_t7iw1_gg_",
|
|
44
|
+
"_color": "__color_t7iw1_gg_",
|
|
45
|
+
"--color": "--color_t7iw1",
|
|
46
|
+
"_pattern": "__pattern_t7iw1_gg_",
|
|
47
|
+
"--pattern": "--pattern_t7iw1",
|
|
48
|
+
"__SPolygonDot": "___SPolygonDot_t7iw1_gg_",
|
|
49
|
+
"_transparent": "__transparent_t7iw1_gg_",
|
|
50
|
+
"__SPolygonLine": "___SPolygonLine_t7iw1_gg_",
|
|
51
|
+
"__SPieRect": "___SPieRect_t7iw1_gg_"
|
|
52
52
|
});
|
|
53
53
|
var clampAngle = function clampAngle(angle) {
|
|
54
54
|
angle = angle % (2 * Math.PI);
|
package/lib/cjs/RadialTree.js
CHANGED
|
@@ -26,20 +26,20 @@ var _Pattern = require("./Pattern");
|
|
|
26
26
|
var _utils = require("./utils");
|
|
27
27
|
var _excluded = ["data"];
|
|
28
28
|
/*!__reshadow-styles__:"./style/radial-tree.shadow.css"*/
|
|
29
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
29
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SRadian_1csu0_gg_{cursor:pointer;fill:var(--intergalactic-text-large-info, #008ff8)}.___SLine_1csu0_gg_{stroke:var(--intergalactic-text-large-info, #008ff8)}.___SLine_1csu0_gg_.__stroke_1csu0_gg_{stroke:var(--stroke_1csu0)}.___SLine_1csu0_gg_.__transparent_1csu0_gg_{opacity:.3}.___SCap_1csu0_gg_{transition:r .1s}.___SCap_1csu0_gg_.__pattern_1csu0_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:1px}.___SCap_1csu0_gg_.__transparent_1csu0_gg_,.___SIcon_1csu0_gg_.__transparent_1csu0_gg_,.___SLabel_1csu0_gg_.__transparent_1csu0_gg_{opacity:.3}.___SLabel_1csu0_gg_{fill:var(--color_1csu0)}@media (hover:hover){.___SRadian_1csu0_gg_:hover .___SLabel_1csu0_gg_{cursor:pointer;filter:brightness(.6)}}@media (prefers-reduced-motion){.___SLineCap_1csu0_gg_{transition:none}}", /*__inner_css_end__*/"1csu0_gg_"),
|
|
30
30
|
/*__reshadow_css_end__*/
|
|
31
31
|
{
|
|
32
|
-
"__SRadian": "
|
|
33
|
-
"__SLine": "
|
|
34
|
-
"_stroke": "
|
|
35
|
-
"--stroke": "--
|
|
36
|
-
"_transparent": "
|
|
37
|
-
"__SCap": "
|
|
38
|
-
"_pattern": "
|
|
39
|
-
"__SIcon": "
|
|
40
|
-
"__SLabel": "
|
|
41
|
-
"--color": "--
|
|
42
|
-
"__SLineCap": "
|
|
32
|
+
"__SRadian": "___SRadian_1csu0_gg_",
|
|
33
|
+
"__SLine": "___SLine_1csu0_gg_",
|
|
34
|
+
"_stroke": "__stroke_1csu0_gg_",
|
|
35
|
+
"--stroke": "--stroke_1csu0",
|
|
36
|
+
"_transparent": "__transparent_1csu0_gg_",
|
|
37
|
+
"__SCap": "___SCap_1csu0_gg_",
|
|
38
|
+
"_pattern": "__pattern_1csu0_gg_",
|
|
39
|
+
"__SIcon": "___SIcon_1csu0_gg_",
|
|
40
|
+
"__SLabel": "___SLabel_1csu0_gg_",
|
|
41
|
+
"--color": "--color_1csu0",
|
|
42
|
+
"__SLineCap": "___SLineCap_1csu0_gg_"
|
|
43
43
|
});
|
|
44
44
|
var baseAngle = -Math.PI / 2; // The top vertical line
|
|
45
45
|
|
package/lib/cjs/Reference.js
CHANGED
|
@@ -18,20 +18,20 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
18
18
|
var _createElement = _interopRequireDefault(require("./createElement"));
|
|
19
19
|
var _utils = require("./utils");
|
|
20
20
|
/*!__reshadow-styles__:"./style/reference.shadow.css"*/
|
|
21
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
21
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SReferenceLine_1am5a_gg_{fill:none;stroke:var(--intergalactic-chart-grid-y-accent-hover-line, #a9abb6)}.___STitle_1am5a_gg_{font-size:var(--intergalactic-fs-100, 12px);fill:var(--intergalactic-chart-grid-text-label, #6c6e79);transform-origin:var(--transform-origin_1am5a)}.___STitle_1am5a_gg_._position_top_1am5a_gg_{text-anchor:middle}.___STitle_1am5a_gg_._position_bottom_1am5a_gg_{text-anchor:middle;dominant-baseline:hanging}.___STitle_1am5a_gg_._position_left_1am5a_gg_,.___STitle_1am5a_gg_._position_right_1am5a_gg_{transform:rotate(-90deg);text-anchor:middle;dominant-baseline:middle}.___SBackground_1am5a_gg_{fill:var(--intergalactic-chart-grid-period-bg, rgba(196, 199, 207, 0.2))}.___SStripes_1am5a_gg_{fill:var(--fill_1am5a)}.___SStripesPatternPath_1am5a_gg_{stroke:var(--intergalactic-chart-grid-period-pattern, rgba(25, 27, 35, 0.15));stroke-width:1px}", /*__inner_css_end__*/"1am5a_gg_"),
|
|
22
22
|
/*__reshadow_css_end__*/
|
|
23
23
|
{
|
|
24
|
-
"__SReferenceLine": "
|
|
25
|
-
"__STitle": "
|
|
26
|
-
"--transform-origin": "--transform-
|
|
27
|
-
"_position_top": "
|
|
28
|
-
"_position_bottom": "
|
|
29
|
-
"_position_right": "
|
|
30
|
-
"_position_left": "
|
|
31
|
-
"__SBackground": "
|
|
32
|
-
"__SStripes": "
|
|
33
|
-
"--fill": "--
|
|
34
|
-
"__SStripesPatternPath": "
|
|
24
|
+
"__SReferenceLine": "___SReferenceLine_1am5a_gg_",
|
|
25
|
+
"__STitle": "___STitle_1am5a_gg_",
|
|
26
|
+
"--transform-origin": "--transform-origin_1am5a",
|
|
27
|
+
"_position_top": "_position_top_1am5a_gg_",
|
|
28
|
+
"_position_bottom": "_position_bottom_1am5a_gg_",
|
|
29
|
+
"_position_right": "_position_right_1am5a_gg_",
|
|
30
|
+
"_position_left": "_position_left_1am5a_gg_",
|
|
31
|
+
"__SBackground": "___SBackground_1am5a_gg_",
|
|
32
|
+
"__SStripes": "___SStripes_1am5a_gg_",
|
|
33
|
+
"--fill": "--fill_1am5a",
|
|
34
|
+
"__SStripesPatternPath": "___SStripesPatternPath_1am5a_gg_"
|
|
35
35
|
});
|
|
36
36
|
var side2direction = {
|
|
37
37
|
left: 'vertical',
|
package/lib/cjs/ScatterPlot.js
CHANGED
|
@@ -22,17 +22,17 @@ var _Pattern = require("./Pattern");
|
|
|
22
22
|
var _Tooltip = _interopRequireDefault(require("./Tooltip"));
|
|
23
23
|
var _utils = require("./utils");
|
|
24
24
|
/*!__reshadow-styles__:"./style/scatterplot.shadow.css"*/
|
|
25
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
25
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SScatterPlot_1dk3f_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:cx,cy;transition-duration:var(--duration_1dk3f);transition-timing-function:ease-in-out;opacity:.5}@media (hover:hover){.___SScatterPlot_1dk3f_gg_:hover{opacity:.8}}.___SScatterPlot_1dk3f_gg_.__color_1dk3f_gg_{fill:var(--color_1dk3f)}.___SScatterPlot_1dk3f_gg_.__pattern_1dk3f_gg_.__color_1dk3f_gg_{fill:var(--pattern_1dk3f);stroke:var(--color_1dk3f);stroke-width:1px}.___SScatterPlot_1dk3f_gg_.__transparent_1dk3f_gg_{opacity:.3}.___SValue_1dk3f_gg_{text-anchor:middle;font-size:var(--intergalactic-fs-50, 10px);stroke:var(--intergalactic-chart-palette-order-9, #008ff8)}.___SValue_1dk3f_gg_.__color_1dk3f_gg_{stroke:var(--color_1dk3f)}.___SValue_1dk3f_gg_.__transparent_1dk3f_gg_{opacity:.3}", /*__inner_css_end__*/"1dk3f_gg_"),
|
|
26
26
|
/*__reshadow_css_end__*/
|
|
27
27
|
{
|
|
28
|
-
"__SScatterPlot": "
|
|
29
|
-
"_color": "
|
|
30
|
-
"--color": "--
|
|
31
|
-
"_pattern": "
|
|
32
|
-
"--pattern": "--
|
|
33
|
-
"_transparent": "
|
|
34
|
-
"__SValue": "
|
|
35
|
-
"--duration": "--
|
|
28
|
+
"__SScatterPlot": "___SScatterPlot_1dk3f_gg_",
|
|
29
|
+
"_color": "__color_1dk3f_gg_",
|
|
30
|
+
"--color": "--color_1dk3f",
|
|
31
|
+
"_pattern": "__pattern_1dk3f_gg_",
|
|
32
|
+
"--pattern": "--pattern_1dk3f",
|
|
33
|
+
"_transparent": "__transparent_1dk3f_gg_",
|
|
34
|
+
"__SValue": "___SValue_1dk3f_gg_",
|
|
35
|
+
"--duration": "--duration_1dk3f"
|
|
36
36
|
});
|
|
37
37
|
var ScatterPlotRoot = /*#__PURE__*/function (_Component) {
|
|
38
38
|
function ScatterPlotRoot() {
|
package/lib/cjs/Tooltip.js
CHANGED
|
@@ -23,17 +23,17 @@ var _Pattern = require("./Pattern");
|
|
|
23
23
|
var _utils = require("./utils");
|
|
24
24
|
var _excluded = ["Children", "children", "tag", "forcedAdvancedMode", "onClick"];
|
|
25
25
|
/*!__reshadow-styles__:"./style/tooltip.shadow.css"*/
|
|
26
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
26
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___STooltip_1wre6_gg_{font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%);position:relative;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);border-radius:var(--intergalactic-popper-rounded, 6px);border:1px solid var(--intergalactic-border-secondary, #e0e1e9);box-sizing:border-box;box-shadow:var(--intergalactic-box-shadow-popper, 0px 1px 12px 0px rgba(25, 27, 35, 0.15));padding:var(--intergalactic-spacing-3x, 12px)}.___STitle_1wre6_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SDotGroup_1wre6_gg_{display:flex;align-items:center}.___SDot_1wre6_gg_{margin-right:var(--intergalactic-spacing-2x, 8px)}.___SDotCircle_1wre6_gg_.__color_1wre6_gg_{background-color:var(--color_1wre6);width:8px;height:8px;border-radius:50%}.___SFooter_1wre6_gg_{background:var(--intergalactic-bg-secondary-neutral, #f4f5f9);padding:var(--intergalactic-spacing-1x, 4px) var(--intergalactic-spacing-3x, 12px);border-radius:0 0 var(--intergalactic-rounded-medium, 6px) var(--intergalactic-rounded-medium, 6px);margin:var(--intergalactic-spacing-3x, 12px) calc(-1*var(--intergalactic-spacing-3x, 12px)) calc(-1*var(--intergalactic-spacing-3x, 12px))}", /*__inner_css_end__*/"1wre6_gg_"),
|
|
27
27
|
/*__reshadow_css_end__*/
|
|
28
28
|
{
|
|
29
|
-
"__STooltip": "
|
|
30
|
-
"__STitle": "
|
|
31
|
-
"__SDotGroup": "
|
|
32
|
-
"__SDot": "
|
|
33
|
-
"__SDotCircle": "
|
|
34
|
-
"_color": "
|
|
35
|
-
"--color": "--
|
|
36
|
-
"__SFooter": "
|
|
29
|
+
"__STooltip": "___STooltip_1wre6_gg_",
|
|
30
|
+
"__STitle": "___STitle_1wre6_gg_",
|
|
31
|
+
"__SDotGroup": "___SDotGroup_1wre6_gg_",
|
|
32
|
+
"__SDot": "___SDot_1wre6_gg_",
|
|
33
|
+
"__SDotCircle": "___SDotCircle_1wre6_gg_",
|
|
34
|
+
"_color": "__color_1wre6_gg_",
|
|
35
|
+
"--color": "--color_1wre6",
|
|
36
|
+
"__SFooter": "___SFooter_1wre6_gg_"
|
|
37
37
|
});
|
|
38
38
|
/**
|
|
39
39
|
* `TooltipDotRenderContext` is a hack to bypass problem that getDotProps doesn't work for D3 tooltip.
|
package/lib/cjs/Venn.js
CHANGED
|
@@ -25,17 +25,17 @@ var _Pattern = require("./Pattern");
|
|
|
25
25
|
var _Tooltip = _interopRequireDefault(require("./Tooltip"));
|
|
26
26
|
var _utils = require("./utils");
|
|
27
27
|
/*!__reshadow-styles__:"./style/venn.shadow.css"*/
|
|
28
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
28
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SCircle_gjugu_gg_,.___SIntersection_gjugu_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px}.___SCircle_gjugu_gg_{fill:var(--intergalactic-chart-palette-order-2, #59ddaa);fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_gjugu);transition-timing-function:ease-in-out}@media (hover:hover){.___SCircle_gjugu_gg_:hover{fill-opacity:.7}}.___SCircle_gjugu_gg_.__color_gjugu_gg_{fill:var(--color_gjugu)}.___SCircle_gjugu_gg_.__pattern_gjugu_gg_.__color_gjugu_gg_{fill:var(--pattern_gjugu);fill-opacity:.7;stroke:var(--color_gjugu);stroke-width:1px}@media (hover:hover){.___SCircle_gjugu_gg_.__pattern_gjugu_gg_.__color_gjugu_gg_:hover{fill-opacity:.85}}.___SCircle_gjugu_gg_.__transparent_gjugu_gg_{opacity:.3}.___SIntersection_gjugu_gg_{fill-opacity:0}@media (hover:hover){.___SIntersection_gjugu_gg_:hover{fill-opacity:.1}}.___SIntersection_gjugu_gg_.__transparent_gjugu_gg_{opacity:.3}", /*__inner_css_end__*/"gjugu_gg_"),
|
|
29
29
|
/*__reshadow_css_end__*/
|
|
30
30
|
{
|
|
31
|
-
"__SCircle": "
|
|
32
|
-
"_color": "
|
|
33
|
-
"--color": "--
|
|
34
|
-
"_transparent": "
|
|
35
|
-
"__SIntersection": "
|
|
36
|
-
"--duration": "--
|
|
37
|
-
"_pattern": "
|
|
38
|
-
"--pattern": "--
|
|
31
|
+
"__SCircle": "___SCircle_gjugu_gg_",
|
|
32
|
+
"_color": "__color_gjugu_gg_",
|
|
33
|
+
"--color": "--color_gjugu",
|
|
34
|
+
"_transparent": "__transparent_gjugu_gg_",
|
|
35
|
+
"__SIntersection": "___SIntersection_gjugu_gg_",
|
|
36
|
+
"--duration": "--duration_gjugu",
|
|
37
|
+
"_pattern": "__pattern_gjugu_gg_",
|
|
38
|
+
"--pattern": "--pattern_gjugu"
|
|
39
39
|
});
|
|
40
40
|
var VennRoot = /*#__PURE__*/function (_Component) {
|
|
41
41
|
function VennRoot() {
|
|
@@ -16,10 +16,10 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
16
16
|
var _locale = require("./locale");
|
|
17
17
|
var _intergalacticDynamicLocales = require("./translations/module/__intergalactic-dynamic-locales");
|
|
18
18
|
/*!__reshadow-styles__:"../style/plotA11yModule.shadow.css"*/
|
|
19
|
-
var styles = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
19
|
+
var styles = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SPlotA11yModule_a990g_gg_{-moz-user-select:none;user-select:none;pointer-events:none;opacity:0}.___SPlotA11yModule_a990g_gg_:focus{-moz-user-select:all;user-select:all;pointer-events:all;opacity:1}", /*__inner_css_end__*/"a990g_gg_"),
|
|
20
20
|
/*__reshadow_css_end__*/
|
|
21
21
|
{
|
|
22
|
-
"__SPlotA11yModule": "
|
|
22
|
+
"__SPlotA11yModule": "___SPlotA11yModule_a990g_gg_"
|
|
23
23
|
});
|
|
24
24
|
var globalWasFocused = false;
|
|
25
25
|
var globalNavWithKeyboard = false;
|
|
@@ -18,10 +18,10 @@ var _intl = require("./intl");
|
|
|
18
18
|
var _summarize = require("./summarize");
|
|
19
19
|
var _intergalacticDynamicLocales = require("./translations/view/__intergalactic-dynamic-locales");
|
|
20
20
|
/*!__reshadow-styles__:"../style/plotA11yView.shadow.css"*/
|
|
21
|
-
var styles = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
21
|
+
var styles = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SPlotA11yView_7vfm5_gg_{-moz-user-select:none;user-select:none;pointer-events:none;opacity:0;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);color:var(--intergalactic-text-primary, #191b23);border:3px solid var(--intergalactic-border-primary, #c4c7cf);font-size:var(--intergalactic-fs-50, 10px);padding:2px;width:200px;height:200px;max-width:80%;max-height:80%;overflow:auto}.___SPlotA11yView_7vfm5_gg_:focus,.___SPlotA11yView_7vfm5_gg_:focus-within{-moz-user-select:all;user-select:all;pointer-events:all;opacity:1;z-index:var(--intergalactic-z-index-overlay, 500);position:relative;display:block}.___SPlotA11yView_7vfm5_gg_ a{cursor:pointer;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_7vfm5_gg_ table,.___SPlotA11yView_7vfm5_gg_ td,.___SPlotA11yView_7vfm5_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}", /*__inner_css_end__*/"7vfm5_gg_"),
|
|
22
22
|
/*__reshadow_css_end__*/
|
|
23
23
|
{
|
|
24
|
-
"__SPlotA11yView": "
|
|
24
|
+
"__SPlotA11yView": "___SPlotA11yView_7vfm5_gg_"
|
|
25
25
|
});
|
|
26
26
|
var PlotA11yView = exports.PlotA11yView = function PlotA11yView(_ref3) {
|
|
27
27
|
var _ref = arguments[0],
|
|
@@ -28,12 +28,12 @@ var _ChartLegend = _interopRequireWildcard(require("../ChartLegend"));
|
|
|
28
28
|
// @ts-ignore
|
|
29
29
|
// @ts-ignore
|
|
30
30
|
/*!__reshadow-styles__:"../../style/abstract-chart.shadow.css"*/
|
|
31
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
31
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___STooltipChildrenWrapper_1ym6g_gg_{display:grid;grid-column-gap:var(--intergalactic-spacing-2x, 8px);-moz-column-gap:var(--intergalactic-spacing-2x, 8px);column-gap:var(--intergalactic-spacing-2x, 8px)}.___STooltipChildrenWrapper_1ym6g_gg_._columnsCount_2_1ym6g_gg_{grid-template-columns:auto minmax(28px,max-content)}.___STooltipChildrenWrapper_1ym6g_gg_._columnsCount_3_1ym6g_gg_{grid-template-columns:auto minmax(28px,max-content) minmax(28px,max-content)}", /*__inner_css_end__*/"1ym6g_gg_"),
|
|
32
32
|
/*__reshadow_css_end__*/
|
|
33
33
|
{
|
|
34
|
-
"__STooltipChildrenWrapper": "
|
|
35
|
-
"_columnsCount_2": "
|
|
36
|
-
"_columnsCount_3": "
|
|
34
|
+
"__STooltipChildrenWrapper": "___STooltipChildrenWrapper_1ym6g_gg_",
|
|
35
|
+
"_columnsCount_2": "_columnsCount_2_1ym6g_gg_",
|
|
36
|
+
"_columnsCount_3": "_columnsCount_3_1ym6g_gg_"
|
|
37
37
|
});
|
|
38
38
|
var NOT_A_VALUE = exports.NOT_A_VALUE = 'n/a';
|
|
39
39
|
var AbstractChart = exports.AbstractChart = /*#__PURE__*/function (_Component) {
|
|
@@ -46,11 +46,6 @@ var AbstractChart = exports.AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
46
46
|
*/
|
|
47
47
|
(0, _defineProperty2["default"])(_this, "plotPadding", 6);
|
|
48
48
|
(0, _defineProperty2["default"])(_this, "dataHints", (0, _hints.makeDataHintsContainer)());
|
|
49
|
-
(0, _defineProperty2["default"])(_this, "state", {
|
|
50
|
-
dataDefinitions: _this.getDefaultDataDefinitions(),
|
|
51
|
-
highlightedLine: -1,
|
|
52
|
-
withTrend: false
|
|
53
|
-
});
|
|
54
49
|
_this.setHighlightedLine = _this.setHighlightedLine.bind(_this);
|
|
55
50
|
_this.handleChangeVisible = _this.handleChangeVisible.bind(_this);
|
|
56
51
|
_this.handleMouseEnter = _this.handleMouseEnter.bind(_this);
|
|
@@ -58,6 +53,11 @@ var AbstractChart = exports.AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
58
53
|
_this.resolveColor = _this.resolveColor.bind(_this);
|
|
59
54
|
_this.tooltipValueFormatter = _this.tooltipValueFormatter.bind(_this);
|
|
60
55
|
_this.handleWithTrendChange = _this.handleWithTrendChange.bind(_this);
|
|
56
|
+
_this.state = {
|
|
57
|
+
dataDefinitions: _this.getDefaultDataDefinitions(),
|
|
58
|
+
highlightedLine: -1,
|
|
59
|
+
withTrend: false
|
|
60
|
+
};
|
|
61
61
|
return _this;
|
|
62
62
|
}
|
|
63
63
|
(0, _inherits2["default"])(AbstractChart, _Component);
|
|
@@ -266,20 +266,6 @@ var AbstractChart = exports.AbstractChart = /*#__PURE__*/function (_Component) {
|
|
|
266
266
|
}
|
|
267
267
|
return total;
|
|
268
268
|
}
|
|
269
|
-
}, {
|
|
270
|
-
key: "percentValue",
|
|
271
|
-
value: function percentValue(data, key) {
|
|
272
|
-
var total = this.totalValue(data);
|
|
273
|
-
var value = data[key];
|
|
274
|
-
if (typeof value === 'number' && total !== 0) {
|
|
275
|
-
var percent = Math.round(100 * value / total);
|
|
276
|
-
return "".concat(percent, "%");
|
|
277
|
-
}
|
|
278
|
-
if (value === null) {
|
|
279
|
-
return "0%";
|
|
280
|
-
}
|
|
281
|
-
return NOT_A_VALUE;
|
|
282
|
-
}
|
|
283
269
|
}, {
|
|
284
270
|
key: "getValueScale",
|
|
285
271
|
value: function getValueScale(values) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractChart.js","names":["_core","require","_ariaProps","_assignProps3","_flexBox","_typography","_react","_interopRequireWildcard","_","_hints","_utils","_ChartLegend","style","sstyled","insert","NOT_A_VALUE","exports","AbstractChart","_Component","props","_this","_classCallCheck2","_callSuper2","_defineProperty2","makeDataHintsContainer","dataDefinitions","getDefaultDataDefinitions","highlightedLine","withTrend","setHighlightedLine","bind","handleChangeVisible","handleMouseEnter","handleMouseLeave","resolveColor","tooltipValueFormatter","handleWithTrendChange","_inherits2","_createClass2","key","value","componentDidUpdate","prevProps","data","legendProps","setState","_this2","_this$props","dataKeys","map","index","_legendProps$legendMa","_legendData$label","_legendData$icon","_legendData$defaultCh","legendData","legendMap","dataDefinition","id","label","icon","undefined","checked","defaultChecked","color","columns","additionalInfo","count","Array","isArray","dataValue","Map","get","interpolateValue","Number","total","Object","values","reduce","sum","i","percent","toFixed","createElement","Text","concat","use","_this$props2","groupKey","keys","filter","_this$asProps","asProps","invertAxis","xTicksCount","yTicksCount","scale","xScale","ticks","_this$asProps2","yScale","_this$asProps3","flatValues","result","item","add","entries","forEach","_ref5","_ref6","_slicedToArray2","Set","_this$asProps4","max","val","barSum","_ref7","_ref8","Date","isNaN","getMilliseconds","totalValue","state","allNotAValue","legendItem","NaN","percentValue","Math","round","getValueScale","apply","_toConsumableArray2","min","avg","log10","valueScale","pow","isVisible","prevState","findIndex","line","_this$props$colorMap$","_this$props$colorMap","colorMap","toDateString","toString","defaultLegendProps","legendType","renderLegend","_lProps$direction","_this$asProps5","direction","showLegend","patterns","length","_this$state","lProps","_objectSpread2","commonLegendProps","dataHints","size","shape","w","h","disableSelectItems","callAllEventHandlers","onChangeVisibleItem","disableHoverItems","onMouseEnterItem","onMouseLeaveItem","getLegendAriaLabel","ChartLegendTable","flexLegendProps","trendLabel","trendIsVisible","onTrendIsVisibleChange","renderAxis","_this$asProps6","showXAxis","showYAxis","axisXValueFormatter","axisYValueFormatter","multilineXTicks","multilineYTicks","xTicks","yTicks","childrenX","_ref9","children","childrenY","_ref0","Fragment","YAxis","Ticks","multiline","Grid","XAxis","getTooltipChildren","options","_ref","_ref3","_dataItem","_this3","STooltipChildrenWrapper","Box","Tooltip","dataItem","_this$asProps7","styles","title","Flex","cn","Title","assignProps","Dot","mr","textAlign","bold","renderTooltipTotalLine","showTotalInTooltip","mt","render","_ref2","_ref4","SChart","_this$asProps8","plotWidth","plotHeight","a11yAltTextConfig","duration","eventEmitter","showTooltip","_extractAriaProps","extractAriaProps","extractedAriaProps","Plot","renderTooltip","renderChart","Component"],"sources":["../../../../src/component/Chart/AbstractChart.tsx"],"sourcesContent":["import { Component, Root, sstyled } from '@semcore/core';\nimport { extractAriaProps } from '@semcore/core/lib/utils/ariaProps';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport { Flex, Box } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport React, { Fragment } from 'react';\n\nimport type { BaseChartProps, BaseLegendProps, ListData, ObjectData } from './AbstractChart.type';\n// @ts-ignore\nimport type { HoverLine, HoverRect } from '../..';\n// @ts-ignore\nimport { Plot, XAxis, YAxis } from '../..';\nimport { makeDataHintsContainer } from '../../a11y/hints';\nimport style from '../../style/abstract-chart.shadow.css';\nimport { interpolateValue } from '../../utils';\nimport ChartLegend, { ChartLegendTable } from '../ChartLegend';\nimport type { LegendFlexProps } from '../ChartLegend/LegendFlex/LegendFlex.type';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport type { LegendTableProps } from '../ChartLegend/LegendTable/LegendTable.type';\n\ntype ChartState = {\n dataDefinitions: Array<LegendItem & { columns: React.ReactNode[] }>;\n highlightedLine: number;\n withTrend: boolean;\n};\n\nexport const NOT_A_VALUE = 'n/a';\n\nexport abstract class AbstractChart<\n D extends ListData | ObjectData,\n T extends BaseChartProps<D>,\n E extends readonly ((...args: any[]) => any)[] = [],\n> extends Component<T, {}, ChartState, E> {\n public static style = style;\n public static defaultProps: Partial<BaseChartProps<any>> = {\n direction: 'column',\n showXAxis: true,\n showYAxis: true,\n showTooltip: true,\n };\n\n /**\n * Padding from the end's of chart to the container (except axis sides)\n */\n protected plotPadding = 6;\n\n protected dataHints = makeDataHintsContainer();\n\n public state: ChartState = {\n dataDefinitions: this.getDefaultDataDefinitions(),\n highlightedLine: -1,\n withTrend: false,\n };\n\n constructor(props: T) {\n super(props);\n\n this.setHighlightedLine = this.setHighlightedLine.bind(this);\n this.handleChangeVisible = this.handleChangeVisible.bind(this);\n this.handleMouseEnter = this.handleMouseEnter.bind(this);\n this.handleMouseLeave = this.handleMouseLeave.bind(this);\n this.resolveColor = this.resolveColor.bind(this);\n this.tooltipValueFormatter = this.tooltipValueFormatter.bind(this);\n this.handleWithTrendChange = this.handleWithTrendChange.bind(this);\n }\n\n public componentDidUpdate(prevProps: T) {\n if (prevProps.data !== this.props.data || prevProps.legendProps !== this.props.legendProps) {\n this.setState({ dataDefinitions: this.getDefaultDataDefinitions() });\n }\n }\n\n protected getDefaultDataDefinitions(): Array<LegendItem & { columns: React.ReactNode[] }> {\n const { data, legendProps } = this.props;\n\n return this.dataKeys.map((key, index) => {\n const legendData = legendProps?.legendMap?.[key];\n\n const dataDefinition: LegendItem & { columns: React.ReactNode[] } = {\n id: key,\n label: legendData?.label ?? key,\n icon: legendData?.icon ?? undefined,\n checked: legendData?.defaultChecked ?? true,\n color: this.resolveColor(key, index),\n columns: [],\n };\n\n if (legendData?.additionalInfo || legendData?.count) {\n dataDefinition.additionalInfo = legendData.additionalInfo\n ? { label: legendData.additionalInfo }\n : legendData.count\n ? { count: legendData.count }\n : undefined;\n }\n\n if (legendData && 'columns' in legendData) {\n dataDefinition.columns = legendData.columns || [];\n } else if (!Array.isArray(data)) {\n let value: number | undefined = undefined;\n let dataValue = data[key];\n\n if (data instanceof Map) {\n dataValue = data.get(key);\n }\n\n if (dataValue !== interpolateValue) {\n value = Number(dataValue);\n }\n\n const total = Object.values(data).reduce<number>((sum, i) => {\n if (i !== interpolateValue) {\n return sum + Number(i);\n }\n\n return sum;\n }, 0);\n const percent = value !== undefined ? ((value / total) * 100).toFixed(2) : undefined;\n\n dataDefinition.columns = [\n <Text key={`${key}_percent`} use='secondary'>\n {percent !== undefined ? `${percent}%` : ''}\n </Text>,\n <Text key={`${key}_value`} use={value ? 'primary' : 'secondary'}>\n {value ?? NOT_A_VALUE}\n </Text>,\n ];\n }\n\n return dataDefinition;\n });\n }\n\n protected abstract get xScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n protected abstract get yScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n\n protected abstract getLegendAriaLabel(): string;\n protected abstract renderChart(): React.ReactNode;\n protected abstract renderTooltip(): React.ReactNode;\n\n protected get dataKeys(): string[] {\n const { data, groupKey } = this.props;\n\n let dataKeys: string[];\n\n if (Array.isArray(data) && groupKey) {\n dataKeys = Object.keys(data[0]).filter((key) => key !== groupKey);\n } else {\n dataKeys = Object.keys(data);\n }\n\n return dataKeys;\n }\n\n protected get xTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.xScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && yTicksCount) {\n return scale.ticks(yTicksCount);\n } else if (xTicksCount) {\n return scale.ticks(xTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get yTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.yScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && xTicksCount) {\n return scale.ticks(xTicksCount);\n } else if (yTicksCount) {\n return scale.ticks(yTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get flatValues(): Set<number> {\n const { data, groupKey } = this.asProps;\n const values: any[] = Array.isArray(data) ? data : Object.values(data);\n\n const flatValues = values.reduce<Set<number>>((result, item) => {\n if (!groupKey && typeof item === 'number') {\n result.add(item);\n } else {\n Object.entries(item).forEach(([key, value]) => {\n if (key !== groupKey && typeof value === 'number') {\n result.add(value);\n }\n });\n }\n\n return result;\n }, new Set());\n\n return flatValues;\n }\n\n protected get maxStackedValue(): number {\n const { data, groupKey } = this.asProps;\n\n if (!Array.isArray(data)) {\n const max = Object.values(data).reduce<number>((sum, val) => {\n if (typeof val === 'number') {\n sum = sum + val;\n }\n\n return sum;\n }, 0);\n\n return max;\n }\n\n const max = data.reduce((max, item) => {\n const barSum = Object.entries(item).reduce<number>((sum, [key, val]) => {\n if (key === groupKey) {\n return sum;\n }\n\n if (typeof val === 'number') {\n return sum + val;\n }\n\n if (val instanceof Date && !Number.isNaN(val.getMilliseconds())) {\n return sum + val.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n if (barSum > max) {\n max = barSum;\n }\n\n return max;\n }, 0);\n\n return max;\n }\n\n protected totalValue(data: ObjectData): number {\n const { dataDefinitions } = this.state;\n\n let allNotAValue = true;\n\n const total = dataDefinitions.reduce((sum, legendItem) => {\n const item = data[legendItem.id];\n\n if (item === null) {\n allNotAValue = false;\n return sum;\n }\n\n if (typeof item === 'number') {\n allNotAValue = false;\n return sum + item;\n }\n\n if (item instanceof Date && !Number.isNaN(item.getMilliseconds())) {\n allNotAValue = false;\n return sum + item.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n if (allNotAValue) {\n return Number.NaN;\n }\n\n return total;\n }\n\n protected percentValue(data: ObjectData, key: string): string {\n const total = this.totalValue(data);\n\n const value = data[key];\n\n if (typeof value === 'number' && total !== 0) {\n const percent = Math.round((100 * value) / total);\n\n return `${percent}%`;\n }\n\n if (value === null) {\n return `0%`;\n }\n\n return NOT_A_VALUE;\n }\n\n protected getValueScale(values: number[]): number {\n const max = Math.max(...values);\n const min = Math.min(...values);\n\n const avg = (max + min) / 2;\n const count = Math.round(Math.log10(avg));\n\n const valueScale = 100 / 10 ** count;\n\n return valueScale;\n }\n\n protected setHighlightedLine(index: number) {\n this.setState({ highlightedLine: index });\n }\n\n protected handleChangeVisible(id: string, isVisible: boolean) {\n this.setState((prevState) => {\n const dataDefinitions = prevState.dataDefinitions.map((item) => {\n if (item.id === id) {\n item.checked = isVisible;\n }\n\n return item;\n });\n\n return { dataDefinitions };\n });\n }\n\n protected handleWithTrendChange(isVisible: boolean) {\n this.setState({ withTrend: isVisible });\n }\n\n protected handleMouseEnter(id: string) {\n this.setHighlightedLine(this.state.dataDefinitions.findIndex((line) => line.id === id));\n }\n\n protected handleMouseLeave() {\n this.setHighlightedLine(-1);\n }\n\n protected resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `chart-palette-order-${index + 1}`;\n }\n\n protected tooltipValueFormatter(\n value?: string | number | typeof interpolateValue | Date,\n ): string {\n const { tooltipValueFormatter } = this.asProps;\n\n if (tooltipValueFormatter) {\n return tooltipValueFormatter(value);\n }\n\n if (value === undefined || value === interpolateValue) {\n return NOT_A_VALUE;\n }\n\n if (value === null) {\n return '0';\n }\n\n if (value instanceof Date) {\n return value.toDateString();\n }\n\n return value.toString();\n }\n\n protected defaultLegendProps(): Partial<BaseLegendProps> {\n return {\n legendType: 'Flex',\n };\n }\n\n protected renderLegend() {\n const { legendProps, direction, showLegend, patterns } = this.asProps;\n\n if (\n // we hide Legend for one item on chart except not manually set to show.\n showLegend === undefined && this.dataKeys.length === 1 ||\n showLegend === false\n ) {\n return null;\n }\n\n const { dataDefinitions, withTrend } = this.state;\n const lProps = {\n ...this.defaultLegendProps(),\n ...legendProps,\n };\n\n const commonLegendProps: LegendFlexProps | LegendTableProps = {\n 'dataHints': this.dataHints,\n 'items': dataDefinitions,\n 'size': lProps.size,\n 'shape': lProps.shape,\n 'w': lProps.w,\n 'h': lProps.h,\n patterns,\n 'direction':\n lProps.direction ?? (direction === 'row' || direction === 'row-reverse' ? 'column' : 'row'),\n 'onChangeVisibleItem': lProps.disableSelectItems\n ? undefined\n : callAllEventHandlers(lProps.onChangeVisibleItem, this.handleChangeVisible),\n 'onMouseEnterItem': lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseEnterItem, this.handleMouseEnter),\n 'onMouseLeaveItem': lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseLeaveItem, this.handleMouseLeave),\n 'aria-label': this.getLegendAriaLabel(),\n };\n\n if (lProps.legendType === 'Table') {\n return <ChartLegendTable {...(commonLegendProps as LegendTableProps)} />;\n }\n\n if ('withTrend' in lProps) {\n const flexLegendProps = {\n ...commonLegendProps,\n withTrend: true,\n trendLabel: lProps.trendLabel,\n trendIsVisible: withTrend,\n onTrendIsVisibleChange: this.handleWithTrendChange,\n };\n\n return <ChartLegend {...(flexLegendProps as LegendFlexProps)} />;\n }\n\n return <ChartLegend {...(commonLegendProps as LegendFlexProps)} />;\n }\n\n protected renderAxis(): React.ReactNode {\n const {\n invertAxis,\n showXAxis,\n showYAxis,\n data,\n axisXValueFormatter,\n axisYValueFormatter,\n multilineXTicks,\n multilineYTicks,\n } = this.asProps;\n\n if (!Array.isArray(data)) {\n return null;\n }\n\n const xTicks = this.xTicks;\n const yTicks = this.yTicks;\n\n const childrenX = axisXValueFormatter\n ? ({ value }: any) => ({ children: axisXValueFormatter(value) })\n : undefined;\n const childrenY = axisYValueFormatter\n ? ({ value }: any) => ({ children: axisYValueFormatter(value) })\n : undefined;\n\n return (\n <>\n {showYAxis && (\n <YAxis>\n {yTicks\n ? (\n <YAxis.Ticks multiline={multilineYTicks} ticks={yTicks}>{childrenY}</YAxis.Ticks>\n )\n : (\n <YAxis.Ticks multiline={multilineYTicks}>{childrenY}</YAxis.Ticks>\n )}\n {invertAxis !== true && (yTicks ? <YAxis.Grid ticks={yTicks} /> : <YAxis.Grid />)}\n </YAxis>\n )}\n\n {showXAxis && (\n <XAxis>\n {xTicks\n ? (\n <XAxis.Ticks multiline={multilineXTicks} ticks={xTicks}>{childrenX}</XAxis.Ticks>\n )\n : (\n <XAxis.Ticks multiline={multilineXTicks}>{childrenX}</XAxis.Ticks>\n )}\n {invertAxis === true && (xTicks ? <XAxis.Grid ticks={xTicks} /> : <XAxis.Grid />)}\n </XAxis>\n )}\n </>\n );\n }\n\n protected getTooltipChildren<D extends ObjectData>(options: {\n Tooltip: typeof HoverLine['Tooltip'] | typeof HoverRect['Tooltip'];\n dataItem: D;\n }) {\n const STooltipChildrenWrapper = Root;\n const { Tooltip, dataItem } = options;\n\n const { styles, groupKey } = this.asProps;\n const { dataDefinitions } = this.state;\n const title = dataItem[groupKey as keyof D]?.toString();\n\n return sstyled(styles)(\n <Flex direction='column'>\n { title && <Tooltip.Title>{title}</Tooltip.Title> }\n\n <STooltipChildrenWrapper\n render={Box}\n columnsCount='2'\n __excludeProps={['data']}\n >\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Fragment key={item.id}>\n <Tooltip.Dot mr={2} color={item.color}>\n {item.label}\n </Tooltip.Dot>\n <Text textAlign='end' bold>{this.tooltipValueFormatter(dataItem[item.id] as string)}</Text>\n </Fragment>\n )\n );\n })}\n\n {this.renderTooltipTotalLine(dataItem)}\n </STooltipChildrenWrapper>\n </Flex>,\n );\n }\n\n protected renderTooltipTotalLine<D extends ObjectData>(dataItem: D) {\n const { showTotalInTooltip } = this.asProps;\n\n if (!showTotalInTooltip) {\n return null;\n }\n\n const total = this.totalValue(dataItem);\n\n return (\n <>\n <Box mt={2} mr={2}>Total</Box>\n <Text mt={2} textAlign='end' bold>{Number.isNaN(total) ? NOT_A_VALUE : total}</Text>\n </>\n );\n }\n\n public render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, a11yAltTextConfig, duration, eventEmitter, showTooltip } =\n this.asProps;\n\n const { extractedAriaProps } = extractAriaProps(this.asProps);\n\n return sstyled(styles)(\n <SChart render={Flex} gap={5} __excludeProps={['data', 'eventEmitter']} role='group'>\n {this.renderLegend()}\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n a11yAltTextConfig={a11yAltTextConfig}\n patterns={patterns}\n duration={duration}\n eventEmitter={eventEmitter}\n {...extractedAriaProps}\n >\n {this.renderAxis()}\n {!showTooltip ? null : this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </SChart>,\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"AbstractChart.js","names":["_core","require","_ariaProps","_assignProps3","_flexBox","_typography","_react","_interopRequireWildcard","_","_hints","_utils","_ChartLegend","style","sstyled","insert","NOT_A_VALUE","exports","AbstractChart","_Component","props","_this","_classCallCheck2","_callSuper2","_defineProperty2","makeDataHintsContainer","setHighlightedLine","bind","handleChangeVisible","handleMouseEnter","handleMouseLeave","resolveColor","tooltipValueFormatter","handleWithTrendChange","state","dataDefinitions","getDefaultDataDefinitions","highlightedLine","withTrend","_inherits2","_createClass2","key","value","componentDidUpdate","prevProps","data","legendProps","setState","_this2","_this$props","dataKeys","map","index","_legendProps$legendMa","_legendData$label","_legendData$icon","_legendData$defaultCh","legendData","legendMap","dataDefinition","id","label","icon","undefined","checked","defaultChecked","color","columns","additionalInfo","count","Array","isArray","dataValue","Map","get","interpolateValue","Number","total","Object","values","reduce","sum","i","percent","toFixed","createElement","Text","concat","use","_this$props2","groupKey","keys","filter","_this$asProps","asProps","invertAxis","xTicksCount","yTicksCount","scale","xScale","ticks","_this$asProps2","yScale","_this$asProps3","flatValues","result","item","add","entries","forEach","_ref5","_ref6","_slicedToArray2","Set","_this$asProps4","max","val","barSum","_ref7","_ref8","Date","isNaN","getMilliseconds","totalValue","allNotAValue","legendItem","NaN","getValueScale","Math","apply","_toConsumableArray2","min","avg","round","log10","valueScale","pow","isVisible","prevState","findIndex","line","_this$props$colorMap$","_this$props$colorMap","colorMap","toDateString","toString","defaultLegendProps","legendType","renderLegend","_lProps$direction","_this$asProps5","direction","showLegend","patterns","length","_this$state","lProps","_objectSpread2","commonLegendProps","dataHints","size","shape","w","h","disableSelectItems","callAllEventHandlers","onChangeVisibleItem","disableHoverItems","onMouseEnterItem","onMouseLeaveItem","getLegendAriaLabel","ChartLegendTable","flexLegendProps","trendLabel","trendIsVisible","onTrendIsVisibleChange","renderAxis","_this$asProps6","showXAxis","showYAxis","axisXValueFormatter","axisYValueFormatter","multilineXTicks","multilineYTicks","xTicks","yTicks","childrenX","_ref9","children","childrenY","_ref0","Fragment","YAxis","Ticks","multiline","Grid","XAxis","getTooltipChildren","options","_ref","_ref3","_dataItem","_this3","STooltipChildrenWrapper","Box","Tooltip","dataItem","_this$asProps7","styles","title","Flex","cn","Title","assignProps","Dot","mr","textAlign","bold","renderTooltipTotalLine","showTotalInTooltip","mt","render","_ref2","_ref4","SChart","_this$asProps8","plotWidth","plotHeight","a11yAltTextConfig","duration","eventEmitter","showTooltip","_extractAriaProps","extractAriaProps","extractedAriaProps","Plot","renderTooltip","renderChart","Component"],"sources":["../../../../src/component/Chart/AbstractChart.tsx"],"sourcesContent":["import { Component, Root, sstyled } from '@semcore/core';\nimport { extractAriaProps } from '@semcore/core/lib/utils/ariaProps';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport { Flex, Box } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport React, { Fragment } from 'react';\n\nimport type { BaseChartProps, BaseLegendProps, ListData, ObjectData } from './AbstractChart.type';\n// @ts-ignore\nimport type { HoverLine, HoverRect } from '../..';\n// @ts-ignore\nimport { Plot, XAxis, YAxis } from '../..';\nimport { makeDataHintsContainer } from '../../a11y/hints';\nimport style from '../../style/abstract-chart.shadow.css';\nimport { interpolateValue } from '../../utils';\nimport ChartLegend, { ChartLegendTable } from '../ChartLegend';\nimport type { LegendFlexProps } from '../ChartLegend/LegendFlex/LegendFlex.type';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport type { LegendTableProps } from '../ChartLegend/LegendTable/LegendTable.type';\n\nexport type ChartState = {\n dataDefinitions: Array<LegendItem & { columns: React.ReactNode[] }>;\n highlightedLine: number;\n withTrend: boolean;\n};\n\nexport const NOT_A_VALUE = 'n/a';\n\nexport abstract class AbstractChart<\n Data extends ListData | ObjectData,\n Props extends BaseChartProps<Data>,\n Enhancers extends readonly ((...args: any[]) => any)[] = [],\n State extends ChartState = ChartState,\n DefaultProps = {},\n> extends Component<Props, {}, State, Enhancers, DefaultProps> {\n public static style = style;\n public static defaultProps: Partial<BaseChartProps<any>> = {\n direction: 'column',\n showXAxis: true,\n showYAxis: true,\n showTooltip: true,\n };\n\n /**\n * Padding from the end's of chart to the container (except axis sides)\n */\n protected plotPadding = 6;\n\n protected dataHints = makeDataHintsContainer();\n\n constructor(props: Props) {\n super(props);\n\n this.setHighlightedLine = this.setHighlightedLine.bind(this);\n this.handleChangeVisible = this.handleChangeVisible.bind(this);\n this.handleMouseEnter = this.handleMouseEnter.bind(this);\n this.handleMouseLeave = this.handleMouseLeave.bind(this);\n this.resolveColor = this.resolveColor.bind(this);\n this.tooltipValueFormatter = this.tooltipValueFormatter.bind(this);\n this.handleWithTrendChange = this.handleWithTrendChange.bind(this);\n\n this.state = {\n dataDefinitions: this.getDefaultDataDefinitions(),\n highlightedLine: -1,\n withTrend: false,\n } as State;\n }\n\n public componentDidUpdate(prevProps: Props) {\n if (prevProps.data !== this.props.data || prevProps.legendProps !== this.props.legendProps) {\n this.setState({ dataDefinitions: this.getDefaultDataDefinitions() });\n }\n }\n\n protected getDefaultDataDefinitions(): Array<LegendItem & { columns: React.ReactNode[] }> {\n const { data, legendProps } = this.props;\n\n return this.dataKeys.map((key, index) => {\n const legendData = legendProps?.legendMap?.[key];\n\n const dataDefinition: LegendItem & { columns: React.ReactNode[] } = {\n id: key,\n label: legendData?.label ?? key,\n icon: legendData?.icon ?? undefined,\n checked: legendData?.defaultChecked ?? true,\n color: this.resolveColor(key, index),\n columns: [],\n };\n\n if (legendData?.additionalInfo || legendData?.count) {\n dataDefinition.additionalInfo = legendData.additionalInfo\n ? { label: legendData.additionalInfo }\n : legendData.count\n ? { count: legendData.count }\n : undefined;\n }\n\n if (legendData && 'columns' in legendData) {\n dataDefinition.columns = legendData.columns || [];\n } else if (!Array.isArray(data)) {\n let value: number | undefined = undefined;\n let dataValue = data[key];\n\n if (data instanceof Map) {\n dataValue = data.get(key);\n }\n\n if (dataValue !== interpolateValue) {\n value = Number(dataValue);\n }\n\n const total = Object.values(data).reduce<number>((sum, i) => {\n if (i !== interpolateValue) {\n return sum + Number(i);\n }\n\n return sum;\n }, 0);\n const percent = value !== undefined ? ((value / total) * 100).toFixed(2) : undefined;\n\n dataDefinition.columns = [\n <Text key={`${key}_percent`} use='secondary'>\n {percent !== undefined ? `${percent}%` : ''}\n </Text>,\n <Text key={`${key}_value`} use={value ? 'primary' : 'secondary'}>\n {value ?? NOT_A_VALUE}\n </Text>,\n ];\n }\n\n return dataDefinition;\n });\n }\n\n protected abstract get xScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n protected abstract get yScale(): ScaleBand<any> | ScaleLinear<any, any> | ScaleTime<any, any>;\n\n protected abstract getLegendAriaLabel(): string;\n protected abstract renderChart(): React.ReactNode;\n protected abstract renderTooltip(): React.ReactNode;\n\n protected get dataKeys(): string[] {\n const { data, groupKey } = this.props;\n\n let dataKeys: string[];\n\n if (Array.isArray(data) && groupKey) {\n dataKeys = Object.keys(data[0]).filter((key) => key !== groupKey);\n } else {\n dataKeys = Object.keys(data);\n }\n\n return dataKeys;\n }\n\n protected get xTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.xScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && yTicksCount) {\n return scale.ticks(yTicksCount);\n } else if (xTicksCount) {\n return scale.ticks(xTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get yTicks(): number[] | Date[] | undefined {\n const { data, invertAxis, xTicksCount, yTicksCount } = this.asProps;\n\n const scale = this.yScale;\n\n if (Array.isArray(data) && 'ticks' in scale) {\n if (invertAxis && xTicksCount) {\n return scale.ticks(xTicksCount);\n } else if (yTicksCount) {\n return scale.ticks(yTicksCount);\n }\n\n return undefined;\n }\n\n return undefined;\n }\n\n protected get flatValues(): Set<number> {\n const { data, groupKey } = this.asProps;\n const values: any[] = Array.isArray(data) ? data : Object.values(data);\n\n const flatValues = values.reduce<Set<number>>((result, item) => {\n if (!groupKey && typeof item === 'number') {\n result.add(item);\n } else {\n Object.entries(item).forEach(([key, value]) => {\n if (key !== groupKey && typeof value === 'number') {\n result.add(value);\n }\n });\n }\n\n return result;\n }, new Set());\n\n return flatValues;\n }\n\n protected get maxStackedValue(): number {\n const { data, groupKey } = this.asProps;\n\n if (!Array.isArray(data)) {\n const max = Object.values(data).reduce<number>((sum, val) => {\n if (typeof val === 'number') {\n sum = sum + val;\n }\n\n return sum;\n }, 0);\n\n return max;\n }\n\n const max = data.reduce((max, item) => {\n const barSum = Object.entries(item).reduce<number>((sum, [key, val]) => {\n if (key === groupKey) {\n return sum;\n }\n\n if (typeof val === 'number') {\n return sum + val;\n }\n\n if (val instanceof Date && !Number.isNaN(val.getMilliseconds())) {\n return sum + val.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n if (barSum > max) {\n max = barSum;\n }\n\n return max;\n }, 0);\n\n return max;\n }\n\n protected totalValue(data: ObjectData): number {\n const { dataDefinitions } = this.state;\n\n let allNotAValue = true;\n\n const total = dataDefinitions.reduce((sum, legendItem) => {\n const item = data[legendItem.id];\n\n if (item === null) {\n allNotAValue = false;\n return sum;\n }\n\n if (typeof item === 'number') {\n allNotAValue = false;\n return sum + item;\n }\n\n if (item instanceof Date && !Number.isNaN(item.getMilliseconds())) {\n allNotAValue = false;\n return sum + item.getMilliseconds();\n }\n\n return sum;\n }, 0);\n\n if (allNotAValue) {\n return Number.NaN;\n }\n\n return total;\n }\n\n protected getValueScale(values: number[]): number {\n const max = Math.max(...values);\n const min = Math.min(...values);\n\n const avg = (max + min) / 2;\n const count = Math.round(Math.log10(avg));\n\n const valueScale = 100 / 10 ** count;\n\n return valueScale;\n }\n\n protected setHighlightedLine(index: number) {\n this.setState({ highlightedLine: index });\n }\n\n protected handleChangeVisible(id: string, isVisible: boolean) {\n this.setState((prevState) => {\n const dataDefinitions = prevState.dataDefinitions.map((item) => {\n if (item.id === id) {\n item.checked = isVisible;\n }\n\n return item;\n });\n\n return { dataDefinitions };\n });\n }\n\n protected handleWithTrendChange(isVisible: boolean) {\n this.setState({ withTrend: isVisible });\n }\n\n protected handleMouseEnter(id: string) {\n this.setHighlightedLine(this.state.dataDefinitions.findIndex((line) => line.id === id));\n }\n\n protected handleMouseLeave() {\n this.setHighlightedLine(-1);\n }\n\n protected resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `chart-palette-order-${index + 1}`;\n }\n\n protected tooltipValueFormatter(\n value?: string | number | typeof interpolateValue | Date,\n ): string {\n const { tooltipValueFormatter } = this.asProps;\n\n if (tooltipValueFormatter) {\n return tooltipValueFormatter(value);\n }\n\n if (value === undefined || value === interpolateValue) {\n return NOT_A_VALUE;\n }\n\n if (value === null) {\n return '0';\n }\n\n if (value instanceof Date) {\n return value.toDateString();\n }\n\n return value.toString();\n }\n\n protected defaultLegendProps(): Partial<BaseLegendProps> {\n return {\n legendType: 'Flex',\n };\n }\n\n protected renderLegend() {\n const { legendProps, direction, showLegend, patterns } = this.asProps;\n\n if (\n // we hide Legend for one item on chart except not manually set to show.\n showLegend === undefined && this.dataKeys.length === 1 ||\n showLegend === false\n ) {\n return null;\n }\n\n const { dataDefinitions, withTrend } = this.state;\n const lProps = {\n ...this.defaultLegendProps(),\n ...legendProps,\n };\n\n const commonLegendProps: LegendFlexProps | LegendTableProps = {\n 'dataHints': this.dataHints,\n 'items': dataDefinitions,\n 'size': lProps.size,\n 'shape': lProps.shape,\n 'w': lProps.w,\n 'h': lProps.h,\n patterns,\n 'direction':\n lProps.direction ?? (direction === 'row' || direction === 'row-reverse' ? 'column' : 'row'),\n 'onChangeVisibleItem': lProps.disableSelectItems\n ? undefined\n : callAllEventHandlers(lProps.onChangeVisibleItem, this.handleChangeVisible),\n 'onMouseEnterItem': lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseEnterItem, this.handleMouseEnter),\n 'onMouseLeaveItem': lProps.disableHoverItems\n ? undefined\n : callAllEventHandlers(lProps.onMouseLeaveItem, this.handleMouseLeave),\n 'aria-label': this.getLegendAriaLabel(),\n };\n\n if (lProps.legendType === 'Table') {\n return <ChartLegendTable {...(commonLegendProps as LegendTableProps)} />;\n }\n\n if ('withTrend' in lProps) {\n const flexLegendProps = {\n ...commonLegendProps,\n withTrend: true,\n trendLabel: lProps.trendLabel,\n trendIsVisible: withTrend,\n onTrendIsVisibleChange: this.handleWithTrendChange,\n };\n\n return <ChartLegend {...(flexLegendProps as LegendFlexProps)} />;\n }\n\n return <ChartLegend {...(commonLegendProps as LegendFlexProps)} />;\n }\n\n protected renderAxis(): React.ReactNode {\n const {\n invertAxis,\n showXAxis,\n showYAxis,\n data,\n axisXValueFormatter,\n axisYValueFormatter,\n multilineXTicks,\n multilineYTicks,\n } = this.asProps;\n\n if (!Array.isArray(data)) {\n return null;\n }\n\n const xTicks = this.xTicks;\n const yTicks = this.yTicks;\n\n const childrenX = axisXValueFormatter\n ? ({ value }: any) => ({ children: axisXValueFormatter(value) })\n : undefined;\n const childrenY = axisYValueFormatter\n ? ({ value }: any) => ({ children: axisYValueFormatter(value) })\n : undefined;\n\n return (\n <>\n {showYAxis && (\n <YAxis>\n {yTicks\n ? (\n <YAxis.Ticks multiline={multilineYTicks} ticks={yTicks}>{childrenY}</YAxis.Ticks>\n )\n : (\n <YAxis.Ticks multiline={multilineYTicks}>{childrenY}</YAxis.Ticks>\n )}\n {invertAxis !== true && (yTicks ? <YAxis.Grid ticks={yTicks} /> : <YAxis.Grid />)}\n </YAxis>\n )}\n\n {showXAxis && (\n <XAxis>\n {xTicks\n ? (\n <XAxis.Ticks multiline={multilineXTicks} ticks={xTicks}>{childrenX}</XAxis.Ticks>\n )\n : (\n <XAxis.Ticks multiline={multilineXTicks}>{childrenX}</XAxis.Ticks>\n )}\n {invertAxis === true && (xTicks ? <XAxis.Grid ticks={xTicks} /> : <XAxis.Grid />)}\n </XAxis>\n )}\n </>\n );\n }\n\n protected getTooltipChildren<D extends ObjectData>(options: {\n Tooltip: typeof HoverLine['Tooltip'] | typeof HoverRect['Tooltip'];\n dataItem: D;\n }) {\n const STooltipChildrenWrapper = Root;\n const { Tooltip, dataItem } = options;\n\n const { styles, groupKey } = this.asProps;\n const { dataDefinitions } = this.state;\n const title = dataItem[groupKey as keyof D]?.toString();\n\n return sstyled(styles)(\n <Flex direction='column'>\n { title && <Tooltip.Title>{title}</Tooltip.Title> }\n\n <STooltipChildrenWrapper\n render={Box}\n columnsCount='2'\n __excludeProps={['data']}\n >\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Fragment key={item.id}>\n <Tooltip.Dot mr={2} color={item.color}>\n {item.label}\n </Tooltip.Dot>\n <Text textAlign='end' bold>{this.tooltipValueFormatter(dataItem[item.id] as string)}</Text>\n </Fragment>\n )\n );\n })}\n\n {this.renderTooltipTotalLine(dataItem)}\n </STooltipChildrenWrapper>\n </Flex>,\n );\n }\n\n protected renderTooltipTotalLine<D extends ObjectData>(dataItem: D) {\n const { showTotalInTooltip } = this.asProps;\n\n if (!showTotalInTooltip) {\n return null;\n }\n\n const total = this.totalValue(dataItem);\n\n return (\n <>\n <Box mt={2} mr={2}>Total</Box>\n <Text mt={2} textAlign='end' bold>{Number.isNaN(total) ? NOT_A_VALUE : total}</Text>\n </>\n );\n }\n\n public render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, a11yAltTextConfig, duration, eventEmitter, showTooltip } =\n this.asProps;\n\n const { extractedAriaProps } = extractAriaProps(this.asProps);\n\n return sstyled(styles)(\n <SChart render={Flex} gap={5} __excludeProps={['data', 'eventEmitter']} role='group'>\n {this.renderLegend()}\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n a11yAltTextConfig={a11yAltTextConfig}\n patterns={patterns}\n duration={duration}\n eventEmitter={eventEmitter}\n {...extractedAriaProps}\n >\n {this.renderAxis()}\n {!showTooltip ? null : this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </SChart>,\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|