@semcore/d3-chart 2.13.3 → 2.13.5
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 +12 -0
- package/lib/cjs/Area.js +59 -97
- package/lib/cjs/Area.js.map +1 -1
- package/lib/cjs/Axis.js +76 -143
- package/lib/cjs/Axis.js.map +1 -1
- package/lib/cjs/Bar.js +49 -96
- package/lib/cjs/Bar.js.map +1 -1
- package/lib/cjs/Bubble.js +39 -81
- package/lib/cjs/Bubble.js.map +1 -1
- package/lib/cjs/ClipPath.js +9 -35
- package/lib/cjs/ClipPath.js.map +1 -1
- package/lib/cjs/Donut.js +77 -152
- package/lib/cjs/Donut.js.map +1 -1
- package/lib/cjs/Dots.js +29 -57
- package/lib/cjs/Dots.js.map +1 -1
- package/lib/cjs/GroupBar.js +5 -26
- package/lib/cjs/GroupBar.js.map +1 -1
- package/lib/cjs/HorizontalBar.js +43 -84
- package/lib/cjs/HorizontalBar.js.map +1 -1
- package/lib/cjs/Hover.js +33 -88
- package/lib/cjs/Hover.js.map +1 -1
- package/lib/cjs/Line.js +42 -78
- package/lib/cjs/Line.js.map +1 -1
- package/lib/cjs/Plot.js +27 -73
- package/lib/cjs/Plot.js.map +1 -1
- package/lib/cjs/Radar.js +152 -277
- package/lib/cjs/Radar.js.map +1 -1
- package/lib/cjs/RadialTree.js +105 -211
- package/lib/cjs/RadialTree.js.map +1 -1
- package/lib/cjs/ReferenceLine.js +45 -87
- package/lib/cjs/ReferenceLine.js.map +1 -1
- package/lib/cjs/ResponsiveContainer.js +9 -38
- package/lib/cjs/ResponsiveContainer.js.map +1 -1
- package/lib/cjs/ScatterPlot.js +34 -74
- package/lib/cjs/ScatterPlot.js.map +1 -1
- package/lib/cjs/StackBar.js +9 -38
- package/lib/cjs/StackBar.js.map +1 -1
- package/lib/cjs/StackedArea.js +5 -29
- package/lib/cjs/StackedArea.js.map +1 -1
- package/lib/cjs/Tooltip.js +27 -76
- package/lib/cjs/Tooltip.js.map +1 -1
- package/lib/cjs/Venn.js +32 -75
- package/lib/cjs/Venn.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yModule.js +18 -71
- package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yView.js +19 -83
- package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
- package/lib/cjs/a11y/bezier.js +0 -7
- package/lib/cjs/a11y/bezier.js.map +1 -1
- package/lib/cjs/a11y/focus.js +2 -11
- package/lib/cjs/a11y/focus.js.map +1 -1
- package/lib/cjs/a11y/hints.js +0 -13
- package/lib/cjs/a11y/hints.js.map +1 -1
- package/lib/cjs/a11y/insights.js +21 -132
- package/lib/cjs/a11y/insights.js.map +1 -1
- package/lib/cjs/a11y/intl.js +0 -6
- package/lib/cjs/a11y/intl.js.map +1 -1
- package/lib/cjs/a11y/locale.js +4 -22
- package/lib/cjs/a11y/locale.js.map +1 -1
- package/lib/cjs/a11y/serialize.js +23 -83
- package/lib/cjs/a11y/serialize.js.map +1 -1
- package/lib/cjs/a11y/summarize.js +0 -4
- package/lib/cjs/a11y/summarize.js.map +1 -1
- package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js +0 -13
- package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js +0 -13
- package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/color.js +0 -3
- package/lib/cjs/color.js.map +1 -1
- package/lib/cjs/createElement.js +18 -47
- package/lib/cjs/createElement.js.map +1 -1
- package/lib/cjs/index.js +0 -23
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/types/Plot.d.js.map +1 -1
- package/lib/cjs/types/index.d.js +0 -39
- package/lib/cjs/types/index.d.js.map +1 -1
- package/lib/cjs/utils.js +7 -59
- package/lib/cjs/utils.js.map +1 -1
- package/lib/es6/Area.js +59 -86
- package/lib/es6/Area.js.map +1 -1
- package/lib/es6/Axis.js +76 -135
- package/lib/es6/Axis.js.map +1 -1
- package/lib/es6/Bar.js +49 -86
- package/lib/es6/Bar.js.map +1 -1
- package/lib/es6/Bubble.js +39 -70
- package/lib/es6/Bubble.js.map +1 -1
- package/lib/es6/ClipPath.js +9 -23
- package/lib/es6/ClipPath.js.map +1 -1
- package/lib/es6/Donut.js +77 -141
- package/lib/es6/Donut.js.map +1 -1
- package/lib/es6/Dots.js +29 -46
- package/lib/es6/Dots.js.map +1 -1
- package/lib/es6/GroupBar.js +5 -15
- package/lib/es6/GroupBar.js.map +1 -1
- package/lib/es6/HorizontalBar.js +43 -75
- package/lib/es6/HorizontalBar.js.map +1 -1
- package/lib/es6/Hover.js +33 -85
- package/lib/es6/Hover.js.map +1 -1
- package/lib/es6/Line.js +42 -67
- package/lib/es6/Line.js.map +1 -1
- package/lib/es6/Plot.js +27 -66
- package/lib/es6/Plot.js.map +1 -1
- package/lib/es6/Radar.js +152 -281
- package/lib/es6/Radar.js.map +1 -1
- package/lib/es6/RadialTree.js +105 -203
- package/lib/es6/RadialTree.js.map +1 -1
- package/lib/es6/ReferenceLine.js +45 -79
- package/lib/es6/ReferenceLine.js.map +1 -1
- package/lib/es6/ResponsiveContainer.js +9 -28
- package/lib/es6/ResponsiveContainer.js.map +1 -1
- package/lib/es6/ScatterPlot.js +34 -65
- package/lib/es6/ScatterPlot.js.map +1 -1
- package/lib/es6/StackBar.js +9 -26
- package/lib/es6/StackBar.js.map +1 -1
- package/lib/es6/StackedArea.js +5 -18
- package/lib/es6/StackedArea.js.map +1 -1
- package/lib/es6/Tooltip.js +27 -63
- package/lib/es6/Tooltip.js.map +1 -1
- package/lib/es6/Venn.js +32 -64
- package/lib/es6/Venn.js.map +1 -1
- package/lib/es6/a11y/PlotA11yModule.js +18 -52
- package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
- package/lib/es6/a11y/PlotA11yView.js +19 -53
- package/lib/es6/a11y/PlotA11yView.js.map +1 -1
- package/lib/es6/a11y/bezier.js +0 -5
- package/lib/es6/a11y/bezier.js.map +1 -1
- package/lib/es6/a11y/focus.js +2 -9
- package/lib/es6/a11y/focus.js.map +1 -1
- package/lib/es6/a11y/hints.js +0 -3
- package/lib/es6/a11y/hints.js.map +1 -1
- package/lib/es6/a11y/insights.js +21 -133
- package/lib/es6/a11y/insights.js.map +1 -1
- package/lib/es6/a11y/intl.js +0 -1
- package/lib/es6/a11y/intl.js.map +1 -1
- package/lib/es6/a11y/locale.js +4 -18
- package/lib/es6/a11y/locale.js.map +1 -1
- package/lib/es6/a11y/serialize.js +23 -74
- package/lib/es6/a11y/serialize.js.map +1 -1
- package/lib/es6/a11y/summarize.js.map +1 -1
- package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/color.js +0 -1
- package/lib/es6/color.js.map +1 -1
- package/lib/es6/createElement.js +18 -34
- package/lib/es6/createElement.js.map +1 -1
- package/lib/es6/index.js.map +1 -1
- package/lib/es6/types/Plot.d.js.map +1 -1
- package/lib/es6/types/index.d.js +5 -3
- package/lib/es6/types/index.d.js.map +1 -1
- package/lib/es6/utils.js +7 -28
- package/lib/es6/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -14,60 +14,45 @@ import { Box } from '@semcore/flex-box';
|
|
|
14
14
|
import trottle from '@semcore/utils/lib/rafTrottle';
|
|
15
15
|
import fire from '@semcore/utils/lib/fire';
|
|
16
16
|
import getOriginChildren from '@semcore/utils/lib/getOriginChildren';
|
|
17
|
-
|
|
18
17
|
var ResponsiveContainerRoot = /*#__PURE__*/function (_Component) {
|
|
19
18
|
_inherits(ResponsiveContainerRoot, _Component);
|
|
20
|
-
|
|
21
19
|
var _super = _createSuper(ResponsiveContainerRoot);
|
|
22
|
-
|
|
23
20
|
function ResponsiveContainerRoot(props) {
|
|
24
21
|
var _this;
|
|
25
|
-
|
|
26
22
|
_classCallCheck(this, ResponsiveContainerRoot);
|
|
27
|
-
|
|
28
23
|
_this = _super.call(this, props);
|
|
29
|
-
|
|
30
24
|
_defineProperty(_assertThisInitialized(_this), "containerRef", /*#__PURE__*/React.createRef());
|
|
31
|
-
|
|
32
25
|
_defineProperty(_assertThisInitialized(_this), "size", [0, 0]);
|
|
33
|
-
|
|
34
26
|
_defineProperty(_assertThisInitialized(_this), "handleResize", trottle(function (entries) {
|
|
35
27
|
var _this$asProps = _this.asProps,
|
|
36
|
-
|
|
37
|
-
|
|
28
|
+
Children = _this$asProps.Children,
|
|
29
|
+
aspect = _this$asProps.aspect;
|
|
38
30
|
if (!_this.$container) return;
|
|
39
31
|
var _this$$container = _this.$container,
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
32
|
+
width = _this$$container.clientWidth,
|
|
33
|
+
height = _this$$container.clientHeight;
|
|
43
34
|
if (aspect) {
|
|
44
35
|
var style = window.getComputedStyle(_this.$container);
|
|
45
36
|
var minHeight = Number.parseInt(style.getPropertyValue('min-height'));
|
|
46
37
|
var maxHeight = Number.parseInt(style.getPropertyValue('max-height'));
|
|
47
38
|
height = width * aspect;
|
|
48
|
-
|
|
49
39
|
if (height < minHeight) {
|
|
50
40
|
height = minHeight;
|
|
51
41
|
}
|
|
52
|
-
|
|
53
42
|
if (height > maxHeight) {
|
|
54
43
|
height = maxHeight;
|
|
55
44
|
}
|
|
56
45
|
}
|
|
57
|
-
|
|
58
46
|
if (_this.size[0] === width && _this.size[1] === height) return;
|
|
59
47
|
_this.size = [width, height];
|
|
60
48
|
fire(_assertThisInitialized(_this), 'onResize', _this.size, entries);
|
|
61
|
-
|
|
62
49
|
if (typeof getOriginChildren(Children) === 'function') {
|
|
63
50
|
_this.forceUpdate();
|
|
64
51
|
}
|
|
65
52
|
}));
|
|
66
|
-
|
|
67
53
|
_this.observer = new ResizeObserver(_this.handleResize);
|
|
68
54
|
return _this;
|
|
69
55
|
}
|
|
70
|
-
|
|
71
56
|
_createClass(ResponsiveContainerRoot, [{
|
|
72
57
|
key: "$container",
|
|
73
58
|
get: function get() {
|
|
@@ -77,9 +62,8 @@ var ResponsiveContainerRoot = /*#__PURE__*/function (_Component) {
|
|
|
77
62
|
key: "setContext",
|
|
78
63
|
value: function setContext() {
|
|
79
64
|
var _this$size = _slicedToArray(this.size, 2),
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
65
|
+
width = _this$size[0],
|
|
66
|
+
height = _this$size[1];
|
|
83
67
|
return {
|
|
84
68
|
width: width,
|
|
85
69
|
height: height
|
|
@@ -92,8 +76,9 @@ var ResponsiveContainerRoot = /*#__PURE__*/function (_Component) {
|
|
|
92
76
|
// TODO: may be we can increase perfomance here? (by lsroman)
|
|
93
77
|
this.observer.observe(this.$container);
|
|
94
78
|
}
|
|
95
|
-
}
|
|
79
|
+
}
|
|
96
80
|
|
|
81
|
+
// TODO component did update ref?
|
|
97
82
|
}, {
|
|
98
83
|
key: "componentWillUnmount",
|
|
99
84
|
value: function componentWillUnmount() {
|
|
@@ -103,8 +88,7 @@ var ResponsiveContainerRoot = /*#__PURE__*/function (_Component) {
|
|
|
103
88
|
key: "render",
|
|
104
89
|
value: function render() {
|
|
105
90
|
var _ref = this.asProps,
|
|
106
|
-
|
|
107
|
-
|
|
91
|
+
_ref2;
|
|
108
92
|
var SResponsiveContainer = Box;
|
|
109
93
|
var styles = this.asProps.styles;
|
|
110
94
|
return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SResponsiveContainer, _ref2.cn("SResponsiveContainer", _objectSpread({}, _assignProps({
|
|
@@ -112,12 +96,9 @@ var ResponsiveContainerRoot = /*#__PURE__*/function (_Component) {
|
|
|
112
96
|
}, _ref))));
|
|
113
97
|
}
|
|
114
98
|
}]);
|
|
115
|
-
|
|
116
99
|
return ResponsiveContainerRoot;
|
|
117
100
|
}(Component);
|
|
118
|
-
|
|
119
101
|
_defineProperty(ResponsiveContainerRoot, "displayName", 'ResponsiveContainer');
|
|
120
|
-
|
|
121
102
|
var ResponsiveContainer = createComponent(ResponsiveContainerRoot);
|
|
122
103
|
export default ResponsiveContainer;
|
|
123
104
|
//# sourceMappingURL=ResponsiveContainer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResponsiveContainer.js","names":["React","ResizeObserver","createComponent","Component","Root","sstyled","Box","trottle","fire","getOriginChildren","ResponsiveContainerRoot","props","createRef","entries","asProps","Children","aspect","$container","width","clientWidth","height","clientHeight","style","window","getComputedStyle","minHeight","Number","parseInt","getPropertyValue","maxHeight","size","forceUpdate","observer","handleResize","containerRef","current","observe","disconnect","SResponsiveContainer","styles","ResponsiveContainer"],"sources":["../../src/ResponsiveContainer.jsx"],"sourcesContent":["import React from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport fire from '@semcore/utils/lib/fire';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\n\nclass ResponsiveContainerRoot extends Component {\n static displayName = 'ResponsiveContainer';\n\n containerRef = React.createRef();\n size = [0, 0];\n\n constructor(props) {\n super(props);\n this.observer = new ResizeObserver(this.handleResize);\n }\n\n get $container() {\n return this.containerRef.current;\n }\n\n handleResize = trottle((entries) => {\n const { Children, aspect } = this.asProps;\n\n if (!this.$container) return;\n\n let { clientWidth: width, clientHeight: height } = this.$container;\n\n if (aspect) {\n const style = window.getComputedStyle(this.$container);\n const minHeight = Number.parseInt(style.getPropertyValue('min-height'));\n const maxHeight = Number.parseInt(style.getPropertyValue('max-height'));\n height = width * aspect;\n\n if (height < minHeight) {\n height = minHeight;\n }\n if (height > maxHeight) {\n height = maxHeight;\n }\n }\n\n if (this.size[0] === width && this.size[1] === height) return;\n\n this.size = [width, height];\n\n fire(this, 'onResize', this.size, entries);\n\n if (typeof getOriginChildren(Children) === 'function') {\n this.forceUpdate();\n }\n });\n\n setContext() {\n const [width, height] = this.size;\n return {\n width,\n height,\n };\n }\n\n componentDidMount() {\n if (this.$container) {\n // TODO: may be we can increase perfomance here? (by lsroman)\n this.observer.observe(this.$container);\n }\n }\n\n // TODO component did update ref?\n\n componentWillUnmount() {\n this.observer.disconnect();\n }\n\n render() {\n const SResponsiveContainer = Root;\n const { styles } = this.asProps;\n return sstyled(styles)(<SResponsiveContainer render={Box} ref={this.containerRef} />);\n }\n}\n\nconst ResponsiveContainer = createComponent(ResponsiveContainerRoot);\n\nexport default ResponsiveContainer;\n"],"mappings":";;;;;;;;;AAAA,OAAOA,
|
|
1
|
+
{"version":3,"file":"ResponsiveContainer.js","names":["React","ResizeObserver","createComponent","Component","Root","sstyled","Box","trottle","fire","getOriginChildren","ResponsiveContainerRoot","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","createRef","entries","_this$asProps","asProps","Children","aspect","$container","_this$$container","width","clientWidth","height","clientHeight","style","window","getComputedStyle","minHeight","Number","parseInt","getPropertyValue","maxHeight","size","forceUpdate","observer","handleResize","_createClass","key","get","containerRef","current","value","setContext","_this$size","_slicedToArray","componentDidMount","observe","componentWillUnmount","disconnect","render","_ref","_ref2","SResponsiveContainer","styles","createElement","cn","_objectSpread","_assignProps","ResponsiveContainer"],"sources":["../../src/ResponsiveContainer.jsx"],"sourcesContent":["import React from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport fire from '@semcore/utils/lib/fire';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\n\nclass ResponsiveContainerRoot extends Component {\n static displayName = 'ResponsiveContainer';\n\n containerRef = React.createRef();\n size = [0, 0];\n\n constructor(props) {\n super(props);\n this.observer = new ResizeObserver(this.handleResize);\n }\n\n get $container() {\n return this.containerRef.current;\n }\n\n handleResize = trottle((entries) => {\n const { Children, aspect } = this.asProps;\n\n if (!this.$container) return;\n\n let { clientWidth: width, clientHeight: height } = this.$container;\n\n if (aspect) {\n const style = window.getComputedStyle(this.$container);\n const minHeight = Number.parseInt(style.getPropertyValue('min-height'));\n const maxHeight = Number.parseInt(style.getPropertyValue('max-height'));\n height = width * aspect;\n\n if (height < minHeight) {\n height = minHeight;\n }\n if (height > maxHeight) {\n height = maxHeight;\n }\n }\n\n if (this.size[0] === width && this.size[1] === height) return;\n\n this.size = [width, height];\n\n fire(this, 'onResize', this.size, entries);\n\n if (typeof getOriginChildren(Children) === 'function') {\n this.forceUpdate();\n }\n });\n\n setContext() {\n const [width, height] = this.size;\n return {\n width,\n height,\n };\n }\n\n componentDidMount() {\n if (this.$container) {\n // TODO: may be we can increase perfomance here? (by lsroman)\n this.observer.observe(this.$container);\n }\n }\n\n // TODO component did update ref?\n\n componentWillUnmount() {\n this.observer.disconnect();\n }\n\n render() {\n const SResponsiveContainer = Root;\n const { styles } = this.asProps;\n return sstyled(styles)(<SResponsiveContainer render={Box} ref={this.containerRef} />);\n }\n}\n\nconst ResponsiveContainer = createComponent(ResponsiveContainerRoot);\n\nexport default ResponsiveContainer;\n"],"mappings":"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"}
|
package/lib/es6/ScatterPlot.js
CHANGED
|
@@ -15,57 +15,38 @@ import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
|
|
|
15
15
|
import createElement from './createElement';
|
|
16
16
|
import { CONSTANT } from './utils';
|
|
17
17
|
import ClipPath from './ClipPath';
|
|
18
|
-
|
|
19
18
|
/*__reshadow-styles__:"./style/scatterplot.shadow.css"*/
|
|
20
|
-
var style = (
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
"
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
/*__reshadow_css_end__*/
|
|
28
|
-
, {
|
|
29
|
-
"__SScatterPlot": "___SScatterPlot_ssqap_gg_",
|
|
30
|
-
"--duration": "--duration_ssqap",
|
|
31
|
-
"_color": "__color_ssqap_gg_",
|
|
32
|
-
"--color": "--color_ssqap",
|
|
33
|
-
"_transparent": "__transparent_ssqap_gg_",
|
|
34
|
-
"__SValue": "___SValue_ssqap_gg_"
|
|
19
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SScatterPlot_w30ct_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:cx,cy;transition-duration:var(--duration_w30ct);transition-timing-function:ease-in-out;opacity:.5}@media (hover:hover){.___SScatterPlot_w30ct_gg_:hover{opacity:.8}}.___SScatterPlot_w30ct_gg_.__color_w30ct_gg_{fill:var(--color_w30ct)}.___SScatterPlot_w30ct_gg_.__transparent_w30ct_gg_{opacity:.3}.___SValue_w30ct_gg_{text-anchor:middle;font-size:var(--intergalactic-fs-50, 10px);stroke:var(--intergalactic-chart-palette-order-9, #008ff8)}.___SValue_w30ct_gg_.__color_w30ct_gg_{stroke:var(--color_w30ct)}.___SValue_w30ct_gg_.__transparent_w30ct_gg_{opacity:.3}" /*__inner_css_end__*/, "w30ct_gg_") /*__reshadow_css_end__*/, {
|
|
20
|
+
"__SScatterPlot": "___SScatterPlot_w30ct_gg_",
|
|
21
|
+
"--duration": "--duration_w30ct",
|
|
22
|
+
"_color": "__color_w30ct_gg_",
|
|
23
|
+
"--color": "--color_w30ct",
|
|
24
|
+
"_transparent": "__transparent_w30ct_gg_",
|
|
25
|
+
"__SValue": "___SValue_w30ct_gg_"
|
|
35
26
|
});
|
|
36
|
-
|
|
37
27
|
var ScatterPlotRoot = /*#__PURE__*/function (_Component) {
|
|
38
28
|
_inherits(ScatterPlotRoot, _Component);
|
|
39
|
-
|
|
40
29
|
var _super = _createSuper(ScatterPlotRoot);
|
|
41
|
-
|
|
42
30
|
function ScatterPlotRoot() {
|
|
43
31
|
var _this;
|
|
44
|
-
|
|
45
32
|
_classCallCheck(this, ScatterPlotRoot);
|
|
46
|
-
|
|
47
33
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
48
34
|
args[_key] = arguments[_key];
|
|
49
35
|
}
|
|
50
|
-
|
|
51
36
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
52
|
-
|
|
53
37
|
_defineProperty(_assertThisInitialized(_this), "virtualElement", canUseDOM() ? document.createElement('div') : {});
|
|
54
|
-
|
|
55
38
|
_defineProperty(_assertThisInitialized(_this), "bindHandlerTooltip", function (visible, props) {
|
|
56
39
|
return function (_ref2) {
|
|
57
40
|
var x = _ref2.clientX,
|
|
58
|
-
|
|
41
|
+
y = _ref2.clientY;
|
|
59
42
|
var eventEmitter = _this.asProps.eventEmitter;
|
|
60
43
|
_this.virtualElement.getBoundingClientRect = _this.generateGetBoundingClientRect(x, y);
|
|
61
44
|
_this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;
|
|
62
45
|
eventEmitter.emit('onTooltipVisible', visible, props, _this.virtualElement);
|
|
63
46
|
};
|
|
64
47
|
});
|
|
65
|
-
|
|
66
48
|
return _this;
|
|
67
49
|
}
|
|
68
|
-
|
|
69
50
|
_createClass(ScatterPlotRoot, [{
|
|
70
51
|
key: "generateGetBoundingClientRect",
|
|
71
52
|
value: function generateGetBoundingClientRect() {
|
|
@@ -86,14 +67,13 @@ var ScatterPlotRoot = /*#__PURE__*/function (_Component) {
|
|
|
86
67
|
key: "animationCircle",
|
|
87
68
|
value: function animationCircle() {
|
|
88
69
|
var _this$asProps = this.asProps,
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
70
|
+
duration = _this$asProps.duration,
|
|
71
|
+
uid = _this$asProps.uid,
|
|
72
|
+
r = _this$asProps.r,
|
|
73
|
+
value = _this$asProps.value;
|
|
93
74
|
var radius = r ? r : value ? 12 : 5.5;
|
|
94
75
|
var selectRect = transition().selection().selectAll("[id^=".concat(uid, "]")).attr('r', 0);
|
|
95
76
|
var selectRectNode = selectRect.node();
|
|
96
|
-
|
|
97
77
|
if (duration > 0 && selectRectNode) {
|
|
98
78
|
selectRect.transition().duration(duration).attr('r', radius);
|
|
99
79
|
}
|
|
@@ -112,25 +92,22 @@ var ScatterPlotRoot = /*#__PURE__*/function (_Component) {
|
|
|
112
92
|
key: "renderCircle",
|
|
113
93
|
value: function renderCircle(d, i) {
|
|
114
94
|
var _ref;
|
|
115
|
-
|
|
116
95
|
var _this$asProps2 = this.asProps,
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
96
|
+
color = _this$asProps2.color,
|
|
97
|
+
scale = _this$asProps2.scale,
|
|
98
|
+
x = _this$asProps2.x,
|
|
99
|
+
y = _this$asProps2.y,
|
|
100
|
+
r = _this$asProps2.r,
|
|
101
|
+
offset = _this$asProps2.offset,
|
|
102
|
+
styles = _this$asProps2.styles,
|
|
103
|
+
uid = _this$asProps2.uid,
|
|
104
|
+
duration = _this$asProps2.duration,
|
|
105
|
+
value = _this$asProps2.value,
|
|
106
|
+
valueColor = _this$asProps2.valueColor,
|
|
107
|
+
transparent = _this$asProps2.transparent;
|
|
130
108
|
var _scale = _slicedToArray(scale, 2),
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
109
|
+
xScale = _scale[0],
|
|
110
|
+
yScale = _scale[1];
|
|
134
111
|
var SScatterPlot = this.Element;
|
|
135
112
|
var SValue = 'text';
|
|
136
113
|
return _ref = sstyled(styles), /*#__PURE__*/React.createElement("g", _ref.cn("g", {
|
|
@@ -168,17 +145,15 @@ var ScatterPlotRoot = /*#__PURE__*/function (_Component) {
|
|
|
168
145
|
key: "render",
|
|
169
146
|
value: function render() {
|
|
170
147
|
var _this$asProps3 = this.asProps,
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
148
|
+
data = _this$asProps3.data,
|
|
149
|
+
uid = _this$asProps3.uid,
|
|
150
|
+
scale = _this$asProps3.scale,
|
|
151
|
+
x = _this$asProps3.x,
|
|
152
|
+
y = _this$asProps3.y,
|
|
153
|
+
value = _this$asProps3.value;
|
|
178
154
|
var _scale2 = _slicedToArray(scale, 2),
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
155
|
+
xScale = _scale2[0],
|
|
156
|
+
yScale = _scale2[1];
|
|
182
157
|
var xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);
|
|
183
158
|
var ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);
|
|
184
159
|
var xMargin = Math.min(xScale.range()[0], xScale.range()[1]);
|
|
@@ -195,21 +170,15 @@ var ScatterPlotRoot = /*#__PURE__*/function (_Component) {
|
|
|
195
170
|
}));
|
|
196
171
|
}
|
|
197
172
|
}]);
|
|
198
|
-
|
|
199
173
|
return ScatterPlotRoot;
|
|
200
174
|
}(Component);
|
|
201
|
-
|
|
202
175
|
_defineProperty(ScatterPlotRoot, "displayName", 'ScatterPlot');
|
|
203
|
-
|
|
204
176
|
_defineProperty(ScatterPlotRoot, "style", style);
|
|
205
|
-
|
|
206
177
|
_defineProperty(ScatterPlotRoot, "enhance", [uniqueIDEnhancement()]);
|
|
207
|
-
|
|
208
178
|
_defineProperty(ScatterPlotRoot, "defaultProps", {
|
|
209
179
|
offset: [0, 0],
|
|
210
180
|
duration: 500
|
|
211
181
|
});
|
|
212
|
-
|
|
213
182
|
var ScatterPlot = createElement(ScatterPlotRoot);
|
|
214
183
|
export default ScatterPlot;
|
|
215
184
|
//# sourceMappingURL=ScatterPlot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScatterPlot.js","names":["React","transition","Component","sstyled","canUseDOM","uniqueIDEnhancement","createElement","CONSTANT","ClipPath","ScatterPlotRoot","document","visible","props","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","emit","width","height","top","right","bottom","left","duration","uid","r","value","radius","selectRect","selection","selectAll","attr","selectRectNode","node","animationCircle","d","i","color","scale","offset","styles","valueColor","transparent","xScale","yScale","SScatterPlot","Element","SValue","bindHandlerTooltip","xIndex","data","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","map","renderCircle","bind","style","ScatterPlot"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\nimport ClipPath from './ClipPath';\n\nimport style from './style/scatterplot.shadow.css';\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 =\n (visible, props) =>\n ({ clientX: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : value ? 12 : 5.5;\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() {\n this.animationCircle();\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const { color, scale, x, y, r, offset, styles, uid, duration, value, valueColor, transparent } =\n this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, { ...this.props, xIndex: i })}\n onMouseLeave={this.bindHandlerTooltip(false, { ...this.props, xIndex: 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={color}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {d[value] && (\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={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\n aria-hidden\n id={uid}\n x={xMargin}\n y={yMargin}\n width={`${xSize}px`}\n height={`${ySize}px`}\n />\n </>\n );\n }\n}\n\nconst ScatterPlot = createElement(ScatterPlotRoot);\n\nexport default ScatterPlot;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ScatterPlot.js","names":["React","transition","Component","sstyled","canUseDOM","uniqueIDEnhancement","createElement","CONSTANT","ClipPath","style","_sstyled","insert","ScatterPlotRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","document","visible","props","_ref2","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","emit","_createClass","key","value","undefined","width","height","top","right","bottom","left","animationCircle","_this$asProps","duration","uid","r","radius","selectRect","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","componentDidMount","renderCircle","d","i","_ref","_this$asProps2","color","scale","offset","styles","valueColor","transparent","_scale","_slicedToArray","xScale","yScale","SScatterPlot","Element","SValue","cn","bindHandlerTooltip","_objectSpread","xIndex","render","_this$asProps3","data","_scale2","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","ScatterPlot"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\nimport ClipPath from './ClipPath';\n\nimport style from './style/scatterplot.shadow.css';\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 =\n (visible, props) =>\n ({ clientX: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : value ? 12 : 5.5;\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() {\n this.animationCircle();\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const { color, scale, x, y, r, offset, styles, uid, duration, value, valueColor, transparent } =\n this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, { ...this.props, xIndex: i })}\n onMouseLeave={this.bindHandlerTooltip(false, { ...this.props, xIndex: 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={color}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {d[value] && (\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={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\n aria-hidden\n id={uid}\n x={xMargin}\n y={yMargin}\n width={`${xSize}px`}\n height={`${ySize}px`}\n />\n </>\n );\n }\n}\n\nconst ScatterPlot = createElement(ScatterPlotRoot);\n\nexport default ScatterPlot;\n"],"mappings":"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"}
|
package/lib/es6/StackBar.js
CHANGED
|
@@ -13,56 +13,46 @@ import Bar from './Bar';
|
|
|
13
13
|
import HorizontalBar from './HorizontalBar';
|
|
14
14
|
var DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
|
|
15
15
|
var XY0 = Symbol('XY0');
|
|
16
|
-
|
|
17
16
|
var StackBarRoot = /*#__PURE__*/function (_Component) {
|
|
18
17
|
_inherits(StackBarRoot, _Component);
|
|
19
|
-
|
|
20
18
|
var _super = _createSuper(StackBarRoot);
|
|
21
|
-
|
|
22
19
|
function StackBarRoot() {
|
|
23
20
|
_classCallCheck(this, StackBarRoot);
|
|
24
|
-
|
|
25
21
|
return _super.apply(this, arguments);
|
|
26
22
|
}
|
|
27
|
-
|
|
28
23
|
_createClass(StackBarRoot, [{
|
|
29
24
|
key: "getSeries",
|
|
30
25
|
value: function getSeries() {
|
|
31
26
|
var _this$asProps = this.asProps,
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
27
|
+
Children = _this$asProps.Children,
|
|
28
|
+
data = _this$asProps.data,
|
|
29
|
+
stack = _this$asProps.stack;
|
|
36
30
|
if (stack[DEFAULT_INSTANCE]) {
|
|
37
31
|
var keys = React.Children.toArray(getOriginChildren(Children)).reduce(function (acc, child) {
|
|
38
32
|
if ( /*#__PURE__*/React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {
|
|
39
33
|
acc.push(child.props.y);
|
|
40
34
|
}
|
|
41
|
-
|
|
42
35
|
if ( /*#__PURE__*/React.isValidElement(child) && child.type === StackBar.HorizontalBar && !child.props.hide) {
|
|
43
36
|
acc.push(child.props.x);
|
|
44
37
|
}
|
|
45
|
-
|
|
46
38
|
return acc;
|
|
47
39
|
}, []);
|
|
48
40
|
stack.keys(keys);
|
|
49
41
|
}
|
|
50
|
-
|
|
51
42
|
return stack(data);
|
|
52
43
|
}
|
|
53
44
|
}, {
|
|
54
45
|
key: "getBarProps",
|
|
55
46
|
value: function getBarProps(_ref) {
|
|
56
47
|
var _this = this;
|
|
57
|
-
|
|
58
48
|
var y = _ref.y;
|
|
59
49
|
var _this$asProps2 = this.asProps,
|
|
60
|
-
|
|
61
|
-
|
|
50
|
+
x = _this$asProps2.x,
|
|
51
|
+
r = _this$asProps2.r;
|
|
62
52
|
var seriesIndex = this.series.findIndex(function (s) {
|
|
63
53
|
return s.key === y;
|
|
64
|
-
});
|
|
65
|
-
|
|
54
|
+
});
|
|
55
|
+
// or [] if hide bar
|
|
66
56
|
var series = this.series[seriesIndex] || [];
|
|
67
57
|
var rBar = series.map(function (s, i) {
|
|
68
58
|
return _this.series.slice(seriesIndex + 1).some(function (bar) {
|
|
@@ -72,7 +62,6 @@ var StackBarRoot = /*#__PURE__*/function (_Component) {
|
|
|
72
62
|
return {
|
|
73
63
|
data: series.map(function (s) {
|
|
74
64
|
var _objectSpread2;
|
|
75
|
-
|
|
76
65
|
return _objectSpread(_objectSpread({}, s.data), {}, (_objectSpread2 = {}, _defineProperty(_objectSpread2, y, s[1]), _defineProperty(_objectSpread2, XY0, s[0]), _objectSpread2));
|
|
77
66
|
}),
|
|
78
67
|
hMin: 0,
|
|
@@ -86,11 +75,10 @@ var StackBarRoot = /*#__PURE__*/function (_Component) {
|
|
|
86
75
|
key: "getHorizontalBarProps",
|
|
87
76
|
value: function getHorizontalBarProps(_ref2) {
|
|
88
77
|
var _this2 = this;
|
|
89
|
-
|
|
90
78
|
var x = _ref2.x;
|
|
91
79
|
var _this$asProps3 = this.asProps,
|
|
92
|
-
|
|
93
|
-
|
|
80
|
+
y = _this$asProps3.y,
|
|
81
|
+
r = _this$asProps3.r;
|
|
94
82
|
var seriesIndex = this.series.findIndex(function (s) {
|
|
95
83
|
return s.key === x;
|
|
96
84
|
});
|
|
@@ -103,7 +91,6 @@ var StackBarRoot = /*#__PURE__*/function (_Component) {
|
|
|
103
91
|
return {
|
|
104
92
|
data: series.map(function (s) {
|
|
105
93
|
var _objectSpread3;
|
|
106
|
-
|
|
107
94
|
return _objectSpread(_objectSpread({}, s.data), {}, (_objectSpread3 = {}, _defineProperty(_objectSpread3, x, s[1]), _defineProperty(_objectSpread3, XY0, s[0]), _objectSpread3));
|
|
108
95
|
}),
|
|
109
96
|
wMin: 0,
|
|
@@ -126,12 +113,9 @@ var StackBarRoot = /*#__PURE__*/function (_Component) {
|
|
|
126
113
|
});
|
|
127
114
|
}
|
|
128
115
|
}]);
|
|
129
|
-
|
|
130
116
|
return StackBarRoot;
|
|
131
117
|
}(Component);
|
|
132
|
-
|
|
133
118
|
_defineProperty(StackBarRoot, "displayName", 'StackBar');
|
|
134
|
-
|
|
135
119
|
_defineProperty(StackBarRoot, "defaultProps", function () {
|
|
136
120
|
var stack = d3Stack();
|
|
137
121
|
stack[DEFAULT_INSTANCE] = true;
|
|
@@ -140,7 +124,6 @@ _defineProperty(StackBarRoot, "defaultProps", function () {
|
|
|
140
124
|
r: 2
|
|
141
125
|
};
|
|
142
126
|
});
|
|
143
|
-
|
|
144
127
|
var StackBar = createElement(StackBarRoot, {
|
|
145
128
|
Bar: Bar,
|
|
146
129
|
HorizontalBar: HorizontalBar
|
package/lib/es6/StackBar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StackBar.js","names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Bar","HorizontalBar","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackBar","props","hide","push","y","x","r","seriesIndex","series","findIndex","s","
|
|
1
|
+
{"version":3,"file":"StackBar.js","names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Bar","HorizontalBar","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getSeries","_this$asProps","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackBar","props","hide","push","y","x","getBarProps","_ref","_this","_this$asProps2","r","seriesIndex","series","findIndex","s","rBar","map","i","slice","some","bar","_objectSpread2","_objectSpread","_defineProperty","hMin","y0","groupKey","getHorizontalBarProps","_ref2","_this2","_this$asProps3","_objectSpread3","wMin","x0","render","Element","dataHintsHandler","establishDataType"],"sources":["../../src/StackBar.jsx"],"sourcesContent":["import React from 'react';\nimport { stack as d3Stack } from 'd3-shape';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport createElement from './createElement';\nimport Bar from './Bar';\nimport HorizontalBar from './HorizontalBar';\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 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 }) {\n const { x, r } = this.asProps;\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 return {\n data: series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n })),\n hMin: 0,\n y0: XY0,\n x,\n r: rBar,\n groupKey: x,\n };\n }\n\n getHorizontalBarProps({ x }) {\n const { y, r } = this.asProps;\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 return {\n data: series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n })),\n wMin: 0,\n x0: XY0,\n y,\n r: rBar,\n groupKey: y,\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 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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"}
|
package/lib/es6/StackedArea.js
CHANGED
|
@@ -12,52 +12,43 @@ import createElement from './createElement';
|
|
|
12
12
|
import Area from './Area';
|
|
13
13
|
var DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
|
|
14
14
|
var Y0 = Symbol('Y0');
|
|
15
|
-
|
|
16
15
|
var StackedAreaRoot = /*#__PURE__*/function (_Component) {
|
|
17
16
|
_inherits(StackedAreaRoot, _Component);
|
|
18
|
-
|
|
19
17
|
var _super = _createSuper(StackedAreaRoot);
|
|
20
|
-
|
|
21
18
|
function StackedAreaRoot() {
|
|
22
19
|
_classCallCheck(this, StackedAreaRoot);
|
|
23
|
-
|
|
24
20
|
return _super.apply(this, arguments);
|
|
25
21
|
}
|
|
26
|
-
|
|
27
22
|
_createClass(StackedAreaRoot, [{
|
|
28
23
|
key: "getSeries",
|
|
29
24
|
value: function getSeries() {
|
|
30
25
|
var _this$asProps = this.asProps,
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
26
|
+
Children = _this$asProps.Children,
|
|
27
|
+
data = _this$asProps.data,
|
|
28
|
+
stack = _this$asProps.stack;
|
|
35
29
|
if (stack[DEFAULT_INSTANCE]) {
|
|
36
30
|
var keys = React.Children.toArray(getOriginChildren(Children)).reduce(function (acc, child) {
|
|
37
31
|
if ( /*#__PURE__*/React.isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {
|
|
38
32
|
acc.push(child.props.y);
|
|
39
33
|
}
|
|
40
|
-
|
|
41
34
|
return acc;
|
|
42
35
|
}, []);
|
|
43
36
|
stack.keys(keys.reverse());
|
|
44
37
|
}
|
|
45
|
-
|
|
46
38
|
return stack(data);
|
|
47
39
|
}
|
|
48
40
|
}, {
|
|
49
41
|
key: "getAreaProps",
|
|
50
42
|
value: function getAreaProps(_ref) {
|
|
51
43
|
var y = _ref.y;
|
|
52
|
-
var x = this.asProps.x;
|
|
53
|
-
|
|
44
|
+
var x = this.asProps.x;
|
|
45
|
+
// or [] if hide area
|
|
54
46
|
var series = this.series.find(function (s) {
|
|
55
47
|
return s.key === y;
|
|
56
48
|
}) || [];
|
|
57
49
|
return {
|
|
58
50
|
data: series.map(function (s) {
|
|
59
51
|
var _objectSpread2;
|
|
60
|
-
|
|
61
52
|
return _objectSpread(_objectSpread({}, s.data), {}, (_objectSpread2 = {}, _defineProperty(_objectSpread2, y, s.data[y] === null ? null : s[1]), _defineProperty(_objectSpread2, Y0, s[0]), _objectSpread2));
|
|
62
53
|
}),
|
|
63
54
|
y0: Y0,
|
|
@@ -76,12 +67,9 @@ var StackedAreaRoot = /*#__PURE__*/function (_Component) {
|
|
|
76
67
|
});
|
|
77
68
|
}
|
|
78
69
|
}]);
|
|
79
|
-
|
|
80
70
|
return StackedAreaRoot;
|
|
81
71
|
}(Component);
|
|
82
|
-
|
|
83
72
|
_defineProperty(StackedAreaRoot, "displayName", 'StackedArea');
|
|
84
|
-
|
|
85
73
|
_defineProperty(StackedAreaRoot, "defaultProps", function () {
|
|
86
74
|
var stack = d3Stack();
|
|
87
75
|
stack[DEFAULT_INSTANCE] = true;
|
|
@@ -89,7 +77,6 @@ _defineProperty(StackedAreaRoot, "defaultProps", function () {
|
|
|
89
77
|
stack: stack
|
|
90
78
|
};
|
|
91
79
|
});
|
|
92
|
-
|
|
93
80
|
var StackedArea = createElement(StackedAreaRoot, {
|
|
94
81
|
Area: Area
|
|
95
82
|
});
|