@easyv/charts 1.4.28 → 1.4.30
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/.babelrc +8 -8
- package/.husky/commit-msg +3 -3
- package/CHANGELOG.md +18 -18
- package/commitlint.config.js +1 -1
- package/lib/components/AnimateData.js +16 -8
- package/lib/components/Axis.js +134 -87
- package/lib/components/Background.js +26 -18
- package/lib/components/Band.js +98 -72
- package/lib/components/BaseLine.js +46 -33
- package/lib/components/Brush.js +46 -29
- package/lib/components/Carousel.js +40 -13
- package/lib/components/CartesianChart.js +147 -98
- package/lib/components/Chart.js +45 -28
- package/lib/components/ChartContainer.js +27 -18
- package/lib/components/ConicalGradient.js +89 -56
- package/lib/components/Control.js +28 -12
- package/lib/components/ExtentData.js +17 -9
- package/lib/components/FilterData.js +27 -16
- package/lib/components/Indicator.js +30 -23
- package/lib/components/Label.js +126 -96
- package/lib/components/Legend.js +66 -41
- package/lib/components/Lighter.js +50 -21
- package/lib/components/Line.js +59 -39
- package/lib/components/LinearGradient.js +22 -16
- package/lib/components/Mapping.js +34 -9
- package/lib/components/Marquee.js +30 -14
- package/lib/components/PieChart.js +427 -325
- package/lib/components/StackData.js +18 -8
- package/lib/components/StereoBar.js +105 -65
- package/lib/components/TextOverflow.js +21 -8
- package/lib/components/Tooltip.js +55 -41
- package/lib/components/index.js +29 -0
- package/lib/components/pieTooltip.js +101 -44
- package/lib/context/index.js +2 -0
- package/lib/css/index.module.css +42 -42
- package/lib/css/piechart.module.css +26 -26
- package/lib/element/ConicGradient.js +35 -29
- package/lib/element/Line.js +13 -9
- package/lib/element/index.js +2 -0
- package/lib/formatter/index.js +2 -0
- package/lib/formatter/legend.js +41 -30
- package/lib/hooks/index.js +9 -0
- package/lib/hooks/useAiData.js +20 -12
- package/lib/hooks/useAnimateData.js +21 -8
- package/lib/hooks/useAxes.js +117 -67
- package/lib/hooks/useCarouselAxisX.js +59 -26
- package/lib/hooks/useExtentData.js +47 -15
- package/lib/hooks/useFilterData.js +34 -13
- package/lib/hooks/useStackData.js +35 -12
- package/lib/hooks/useTooltip.js +53 -36
- package/lib/index.js +15 -0
- package/lib/utils/index.js +247 -95
- package/package.json +55 -55
- package/src/components/Axis.tsx +1 -1
- package/src/components/Background.tsx +61 -61
- package/src/components/Band.tsx +274 -274
- package/src/components/Brush.js +159 -159
- package/src/components/CartesianChart.js +2 -1
- package/src/components/Chart.js +101 -99
- package/src/components/ChartContainer.tsx +71 -71
- package/src/components/ConicalGradient.js +258 -258
- package/src/components/Control.jsx +51 -51
- package/src/components/ExtentData.js +17 -17
- package/src/components/Indicator.js +61 -61
- package/src/components/Label.js +275 -275
- package/src/components/Legend.js +165 -165
- package/src/components/Lighter.jsx +173 -173
- package/src/components/Line.js +150 -150
- package/src/components/LinearGradient.js +29 -29
- package/src/components/PieChart.js +19 -12
- package/src/components/PieTooltip.jsx +160 -133
- package/src/components/StereoBar.tsx +307 -307
- package/src/components/index.js +59 -59
- package/src/context/index.js +2 -2
- package/src/css/index.module.css +42 -42
- package/src/css/piechart.module.css +26 -26
- package/src/element/ConicGradient.jsx +55 -55
- package/src/element/Line.tsx +33 -33
- package/src/element/index.ts +3 -3
- package/src/formatter/index.js +1 -1
- package/src/formatter/legend.js +92 -92
- package/src/hooks/index.js +20 -20
- package/src/hooks/useAnimateData.ts +67 -67
- package/src/hooks/useExtentData.js +1 -1
- package/src/hooks/useFilterData.js +72 -72
- package/src/hooks/useStackData.js +101 -101
- package/src/hooks/useTooltip.ts +100 -100
- package/src/index.js +6 -6
- package/src/types/index.d.ts +67 -67
- package/src/utils/index.js +757 -757
- package/tsconfig.json +23 -23
|
@@ -1,59 +1,74 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports["default"] = void 0;
|
|
9
|
+
|
|
8
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
9
12
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
|
+
|
|
10
14
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
|
+
|
|
11
16
|
var _react = require("react");
|
|
17
|
+
|
|
12
18
|
var _popmotion = require("popmotion");
|
|
19
|
+
|
|
13
20
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
21
|
+
|
|
14
22
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
23
|
+
|
|
15
24
|
var initialState = {
|
|
16
25
|
currentIndex: null,
|
|
17
26
|
flag: false //表示是否为首次加载,true表示首次加载,不需要立刻执行动画,false表示可以执行轮播动画
|
|
18
|
-
};
|
|
19
27
|
|
|
28
|
+
};
|
|
20
29
|
/**
|
|
21
30
|
* x轴滚动逻辑
|
|
22
31
|
* @param {Object} axis x轴配置项
|
|
23
32
|
* @param {Object} config x轴轮播动画的配置项
|
|
24
33
|
* @returns {Map} 返回经过改变后的x轴,主要是ticks和scaler的range发生了改变
|
|
25
34
|
*/
|
|
35
|
+
|
|
26
36
|
var _default = function _default(axis, config, isHover) {
|
|
27
37
|
var isControlChart = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
28
38
|
var controlConfig = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
|
|
29
39
|
var show = config.show,
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
40
|
+
interval = config.interval,
|
|
41
|
+
duration = config.duration,
|
|
42
|
+
hover = config.hover;
|
|
33
43
|
var time = duration + interval;
|
|
34
44
|
var tickCount = axis.tickCount,
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
45
|
+
allTicks = axis.allTicks,
|
|
46
|
+
scaler = axis.scaler,
|
|
47
|
+
start = axis.start,
|
|
48
|
+
end = axis.end,
|
|
49
|
+
step = axis.step,
|
|
50
|
+
ticks = axis.ticks,
|
|
51
|
+
lengthWithoutPaddingOuter = axis.lengthWithoutPaddingOuter;
|
|
42
52
|
var tickLength = ticks.length;
|
|
53
|
+
|
|
43
54
|
var _end = isControlChart && controlConfig ? end / (controlConfig.drag.width / 100) : end;
|
|
55
|
+
|
|
44
56
|
var controlDragScaler = scaler.copy().range([start, end]);
|
|
57
|
+
|
|
45
58
|
var _useState = (0, _react.useState)({
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
59
|
+
scaler: scaler,
|
|
60
|
+
step: step,
|
|
61
|
+
ticks: ticks
|
|
62
|
+
}),
|
|
63
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
64
|
+
state = _useState2[0],
|
|
65
|
+
setState = _useState2[1];
|
|
66
|
+
|
|
53
67
|
var _useState3 = (0, _react.useState)(initialState),
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
68
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
69
|
+
status = _useState4[0],
|
|
70
|
+
setStatus = _useState4[1];
|
|
71
|
+
|
|
57
72
|
(0, _react.useEffect)(function () {
|
|
58
73
|
if (show && time && tickLength > tickCount) {
|
|
59
74
|
setStatus({
|
|
@@ -66,6 +81,7 @@ var _default = function _default(axis, config, isHover) {
|
|
|
66
81
|
}, [show, time, tickCount, tickLength]);
|
|
67
82
|
(0, _react.useEffect)(function () {
|
|
68
83
|
var handler;
|
|
84
|
+
|
|
69
85
|
if (!(hover && isHover) && show && time && tickLength > tickCount) {
|
|
70
86
|
handler = setInterval(function () {
|
|
71
87
|
setStatus(function (_ref) {
|
|
@@ -78,6 +94,7 @@ var _default = function _default(axis, config, isHover) {
|
|
|
78
94
|
});
|
|
79
95
|
}, time * 1000);
|
|
80
96
|
}
|
|
97
|
+
|
|
81
98
|
return function () {
|
|
82
99
|
handler && clearInterval(handler);
|
|
83
100
|
};
|
|
@@ -85,11 +102,14 @@ var _default = function _default(axis, config, isHover) {
|
|
|
85
102
|
(0, _react.useEffect)(function () {
|
|
86
103
|
var animation;
|
|
87
104
|
var currentIndex = status.currentIndex,
|
|
88
|
-
|
|
105
|
+
flag = status.flag;
|
|
106
|
+
|
|
89
107
|
if (currentIndex !== null) {
|
|
90
108
|
var _step = lengthWithoutPaddingOuter / tickCount;
|
|
109
|
+
|
|
91
110
|
if (flag) {
|
|
92
111
|
var _ticks = allTicks.slice(currentIndex, tickCount);
|
|
112
|
+
|
|
93
113
|
setState({
|
|
94
114
|
step: _step,
|
|
95
115
|
ticks: _ticks,
|
|
@@ -104,10 +124,13 @@ var _default = function _default(axis, config, isHover) {
|
|
|
104
124
|
onPlay: function onPlay() {
|
|
105
125
|
setState(function (axis) {
|
|
106
126
|
var ticks = axis.ticks,
|
|
107
|
-
|
|
127
|
+
scaler = axis.scaler;
|
|
128
|
+
|
|
108
129
|
var _ticks2 = (0, _slicedToArray2["default"])(ticks, 1),
|
|
109
|
-
|
|
130
|
+
tick = _ticks2[0];
|
|
131
|
+
|
|
110
132
|
var _ticks = [tick].concat((0, _toConsumableArray2["default"])(getTicks(allTicks, currentIndex, tickCount)));
|
|
133
|
+
|
|
111
134
|
return _objectSpread(_objectSpread({}, axis), {}, {
|
|
112
135
|
ticks: _ticks,
|
|
113
136
|
scaler: scaler.copy().range([start, _end + _step]).domain(_ticks)
|
|
@@ -117,7 +140,7 @@ var _default = function _default(axis, config, isHover) {
|
|
|
117
140
|
onUpdate: function onUpdate(v) {
|
|
118
141
|
setState(function (axis) {
|
|
119
142
|
var scaler = axis.scaler,
|
|
120
|
-
|
|
143
|
+
step = axis.step;
|
|
121
144
|
return _objectSpread(_objectSpread({}, axis), {}, {
|
|
122
145
|
scaler: scaler.copy().range([start + step * v, _end + step + step * v])
|
|
123
146
|
});
|
|
@@ -126,8 +149,10 @@ var _default = function _default(axis, config, isHover) {
|
|
|
126
149
|
onComplete: function onComplete() {
|
|
127
150
|
setState(function (axis) {
|
|
128
151
|
var scaler = axis.scaler,
|
|
129
|
-
|
|
152
|
+
ticks = axis.ticks;
|
|
153
|
+
|
|
130
154
|
var _ticks = ticks.slice(1, ticks.length);
|
|
155
|
+
|
|
131
156
|
return _objectSpread(_objectSpread({}, axis), {}, {
|
|
132
157
|
ticks: _ticks,
|
|
133
158
|
scaler: scaler.copy().range([start, _end]).domain(_ticks)
|
|
@@ -138,12 +163,14 @@ var _default = function _default(axis, config, isHover) {
|
|
|
138
163
|
}
|
|
139
164
|
} else {
|
|
140
165
|
var _ticks3 = scaler.type == "linear" ? scaler.domain() : allTicks;
|
|
166
|
+
|
|
141
167
|
setState({
|
|
142
168
|
step: step,
|
|
143
169
|
scaler: scaler.copy().domain(_ticks3).range([start, _end]),
|
|
144
170
|
ticks: ticks
|
|
145
171
|
});
|
|
146
172
|
}
|
|
173
|
+
|
|
147
174
|
return function () {
|
|
148
175
|
animation && animation.stop();
|
|
149
176
|
};
|
|
@@ -155,16 +182,22 @@ var _default = function _default(axis, config, isHover) {
|
|
|
155
182
|
isControlChart: isControlChart
|
|
156
183
|
});
|
|
157
184
|
};
|
|
185
|
+
|
|
158
186
|
exports["default"] = _default;
|
|
187
|
+
|
|
159
188
|
var getTicks = function getTicks(ticks, currentIndex, length) {
|
|
160
189
|
var _currentIndex = +currentIndex;
|
|
190
|
+
|
|
161
191
|
var ticksLength = ticks.length;
|
|
162
192
|
if (ticksLength <= length) return ticks;
|
|
193
|
+
|
|
163
194
|
var _end = _currentIndex + length;
|
|
195
|
+
|
|
164
196
|
if (ticksLength < _end) {
|
|
165
197
|
var prev = ticks.slice(_currentIndex, ticksLength);
|
|
166
198
|
var next = ticks.slice(0, _end - ticksLength);
|
|
167
199
|
return [].concat((0, _toConsumableArray2["default"])(prev), (0, _toConsumableArray2["default"])(next));
|
|
168
200
|
}
|
|
201
|
+
|
|
169
202
|
return ticks.slice(_currentIndex, _end);
|
|
170
203
|
};
|
|
@@ -1,18 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports["default"] = void 0;
|
|
9
|
+
|
|
8
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
|
|
9
12
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
+
|
|
10
14
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
15
|
+
|
|
11
16
|
var _react = require("react");
|
|
17
|
+
|
|
12
18
|
var _d3v = require("d3v7");
|
|
19
|
+
|
|
13
20
|
var _utils = require("../utils");
|
|
21
|
+
|
|
14
22
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
23
|
+
|
|
15
24
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
25
|
+
|
|
16
26
|
var stackData = function stackData(data, series) {
|
|
17
27
|
var dataMap = (0, _d3v.group)(data, function (d) {
|
|
18
28
|
return d.x;
|
|
@@ -25,11 +35,14 @@ var stackData = function stackData(data, series) {
|
|
|
25
35
|
dataMap.forEach(function (value) {
|
|
26
36
|
var arr = [];
|
|
27
37
|
(0, _utils.resetStacks)(stacks);
|
|
38
|
+
|
|
28
39
|
for (var i = 0, j = value.length; i < j; i++) {
|
|
29
40
|
var d = value[i];
|
|
30
41
|
var stack = series.get(d.s);
|
|
42
|
+
|
|
31
43
|
if (d && d.y !== undefined && !isNaN(d.y)) {
|
|
32
44
|
var currentStack = (0, _utils.getCurrentStack)(stack, stacks);
|
|
45
|
+
|
|
33
46
|
if (stack && currentStack) {
|
|
34
47
|
if (d.y >= 0) {
|
|
35
48
|
currentStack.positive += d.y;
|
|
@@ -43,13 +56,13 @@ var stackData = function stackData(data, series) {
|
|
|
43
56
|
}
|
|
44
57
|
}
|
|
45
58
|
}
|
|
59
|
+
|
|
46
60
|
min = Math.min.apply(Math, arr.concat([min]));
|
|
47
61
|
max = Math.max.apply(Math, arr.concat([max]));
|
|
48
62
|
});
|
|
49
63
|
dataMap.clear();
|
|
50
|
-
return [min || 0, max
|
|
64
|
+
return [min || 0, max == undefined ? (min || 0) + 100 : max];
|
|
51
65
|
};
|
|
52
|
-
|
|
53
66
|
/**
|
|
54
67
|
* 计算轴的domain
|
|
55
68
|
* @param {Array} axes x轴列表
|
|
@@ -57,65 +70,81 @@ var stackData = function stackData(data, series) {
|
|
|
57
70
|
* @param {Object} data 数据列表
|
|
58
71
|
* @returns {Array} 返回带domain的轴
|
|
59
72
|
*/
|
|
73
|
+
|
|
74
|
+
|
|
60
75
|
var _default = function _default(_ref) {
|
|
61
76
|
var axes = _ref.axes,
|
|
62
|
-
|
|
63
|
-
|
|
77
|
+
series = _ref.series,
|
|
78
|
+
data = _ref.data;
|
|
79
|
+
|
|
64
80
|
var _series = (0, _react.useMemo)(function () {
|
|
65
81
|
return (0, _utils.seriesYOrZ)(series);
|
|
66
82
|
}, [series]);
|
|
83
|
+
|
|
67
84
|
var _useMemo = (0, _react.useMemo)(function () {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
85
|
+
return (0, _utils.dataYOrZ)(data, _series);
|
|
86
|
+
}, [data, _series]),
|
|
87
|
+
dataY = _useMemo.y,
|
|
88
|
+
dataZ = _useMemo.z;
|
|
89
|
+
|
|
72
90
|
var x = (0, _react.useMemo)(function () {
|
|
73
91
|
return (0, _toConsumableArray2["default"])((0, _d3v.group)(data, function (d) {
|
|
74
92
|
return d.x;
|
|
75
93
|
}).keys());
|
|
76
94
|
}, [data]);
|
|
77
95
|
var y = stackData(dataY, _series.y);
|
|
78
|
-
var z = stackData(dataZ, _series.z);
|
|
79
|
-
|
|
96
|
+
var z = stackData(dataZ, _series.z); //clipAxisMode如果是auto根据clipDifferenceValue设置clipValue
|
|
97
|
+
|
|
80
98
|
return axes.map(function (item) {
|
|
81
99
|
var axisType = item.axisType,
|
|
82
|
-
|
|
83
|
-
|
|
100
|
+
domain = item.domain,
|
|
101
|
+
type = item.type;
|
|
102
|
+
|
|
84
103
|
switch (axisType) {
|
|
85
104
|
case "x":
|
|
86
105
|
return _objectSpread(_objectSpread({}, item), {}, {
|
|
87
106
|
domain: type == "linear" ? (0, _d3v.extent)(x) : x
|
|
88
107
|
});
|
|
108
|
+
|
|
89
109
|
case "y":
|
|
90
110
|
{
|
|
91
111
|
if (item.axisType == "y" && item.isClipAxis === true && item.clipAxisMode == "auto") {
|
|
92
112
|
var _dataY = dataY.map(function (_item) {
|
|
93
113
|
return _item.y;
|
|
94
114
|
});
|
|
115
|
+
|
|
95
116
|
var _clipValue = Infinity;
|
|
117
|
+
|
|
96
118
|
if (_dataY.length >= 2) {
|
|
97
119
|
_dataY.sort(function (a, b) {
|
|
98
120
|
return a - b;
|
|
99
121
|
});
|
|
122
|
+
|
|
100
123
|
var clipDifferenceValueArr = [];
|
|
124
|
+
|
|
101
125
|
for (var i = 0; i < _dataY.length - 1; i++) {
|
|
102
126
|
clipDifferenceValueArr.push(_dataY[i + 1] - _dataY[i]);
|
|
103
127
|
}
|
|
128
|
+
|
|
104
129
|
var max = (0, _d3v.max)(clipDifferenceValueArr);
|
|
130
|
+
|
|
105
131
|
if (max >= item.clipDifferenceValue) {
|
|
106
132
|
var index = clipDifferenceValueArr.indexOf(max);
|
|
107
133
|
_clipValue = _dataY[index];
|
|
108
134
|
}
|
|
109
135
|
}
|
|
136
|
+
|
|
110
137
|
return _objectSpread(_objectSpread({}, item), {}, {
|
|
111
138
|
domain: domain ? getDomain(y, domain) : y,
|
|
112
139
|
clipValue: _clipValue
|
|
113
140
|
});
|
|
114
141
|
}
|
|
142
|
+
|
|
115
143
|
return _objectSpread(_objectSpread({}, item), {}, {
|
|
116
144
|
domain: domain ? getDomain(y, domain) : y
|
|
117
145
|
});
|
|
118
146
|
}
|
|
147
|
+
|
|
119
148
|
case "z":
|
|
120
149
|
return _objectSpread(_objectSpread({}, item), {}, {
|
|
121
150
|
domain: domain ? getDomain(z, domain) : z
|
|
@@ -123,12 +152,15 @@ var _default = function _default(_ref) {
|
|
|
123
152
|
}
|
|
124
153
|
});
|
|
125
154
|
};
|
|
155
|
+
|
|
126
156
|
exports["default"] = _default;
|
|
157
|
+
|
|
127
158
|
var getDomain = function getDomain(_ref2, _ref3) {
|
|
128
159
|
var _ref4 = (0, _slicedToArray2["default"])(_ref2, 2),
|
|
129
|
-
|
|
130
|
-
|
|
160
|
+
min1 = _ref4[0],
|
|
161
|
+
max1 = _ref4[1];
|
|
162
|
+
|
|
131
163
|
var min = _ref3.min,
|
|
132
|
-
|
|
164
|
+
max = _ref3.max;
|
|
133
165
|
return [min !== "" ? +min : min1, max !== "" ? +max : max1];
|
|
134
166
|
};
|
|
@@ -1,26 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports["default"] = void 0;
|
|
9
|
+
|
|
8
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
9
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
+
|
|
10
14
|
var _react = require("react");
|
|
15
|
+
|
|
11
16
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
17
|
+
|
|
12
18
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
19
|
+
|
|
13
20
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
21
|
+
|
|
14
22
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
15
|
-
|
|
23
|
+
|
|
24
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
25
|
+
|
|
16
26
|
var getInitialSelected = function getInitialSelected(series) {
|
|
17
27
|
var status = new Map();
|
|
28
|
+
|
|
18
29
|
var _iterator = _createForOfIteratorHelper(series.entries()),
|
|
19
|
-
|
|
30
|
+
_step;
|
|
31
|
+
|
|
20
32
|
try {
|
|
21
33
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
22
34
|
var _step$value = (0, _slicedToArray2["default"])(_step.value, 1),
|
|
23
|
-
|
|
35
|
+
name = _step$value[0];
|
|
36
|
+
|
|
24
37
|
status.set(name, true);
|
|
25
38
|
}
|
|
26
39
|
} catch (err) {
|
|
@@ -28,8 +41,10 @@ var getInitialSelected = function getInitialSelected(series) {
|
|
|
28
41
|
} finally {
|
|
29
42
|
_iterator.f();
|
|
30
43
|
}
|
|
44
|
+
|
|
31
45
|
return status;
|
|
32
46
|
};
|
|
47
|
+
|
|
33
48
|
var getSelected = function getSelected(selected, name) {
|
|
34
49
|
var tmp = new Map();
|
|
35
50
|
selected.forEach(function (value, key) {
|
|
@@ -41,20 +56,23 @@ var getSelected = function getSelected(selected, name) {
|
|
|
41
56
|
});
|
|
42
57
|
return tmp;
|
|
43
58
|
};
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
*
|
|
47
|
-
* @param {
|
|
48
|
-
* @
|
|
49
|
-
* @returns {Array} 返回筛选后的数据和是否选中状态,及控制选中函数
|
|
59
|
+
/**
|
|
60
|
+
* 图例点击状态管理
|
|
61
|
+
* @param {Array} data 数据
|
|
62
|
+
* @param {Map} series 系列
|
|
63
|
+
* @returns {Array} 返回筛选后的数据和是否选中状态,及控制选中函数
|
|
50
64
|
*/
|
|
65
|
+
|
|
66
|
+
|
|
51
67
|
var _default = function _default(_ref) {
|
|
52
68
|
var data = _ref.data,
|
|
53
|
-
|
|
69
|
+
series = _ref.series;
|
|
70
|
+
|
|
54
71
|
var _useState = (0, _react.useState)(getInitialSelected(series)),
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
72
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
73
|
+
selected = _useState2[0],
|
|
74
|
+
setSelected = _useState2[1];
|
|
75
|
+
|
|
58
76
|
var _series = (0, _react.useMemo)(function () {
|
|
59
77
|
var tmp = new Map();
|
|
60
78
|
series.forEach(function (currentSeries, key) {
|
|
@@ -65,12 +83,14 @@ var _default = function _default(_ref) {
|
|
|
65
83
|
});
|
|
66
84
|
return tmp;
|
|
67
85
|
}, [selected, series]);
|
|
86
|
+
|
|
68
87
|
var _data = (0, _react.useMemo)(function () {
|
|
69
88
|
return data.filter(function (_ref2) {
|
|
70
89
|
var s = _ref2.s;
|
|
71
90
|
return s && _series.get(s) && _series.get(s).selected;
|
|
72
91
|
});
|
|
73
92
|
}, [data, _series]);
|
|
93
|
+
|
|
74
94
|
var onClick = (0, _react.useCallback)(function (name) {
|
|
75
95
|
setSelected(function (selected) {
|
|
76
96
|
return getSelected(selected, name);
|
|
@@ -89,4 +109,5 @@ var _default = function _default(_ref) {
|
|
|
89
109
|
})
|
|
90
110
|
}, onClick];
|
|
91
111
|
};
|
|
112
|
+
|
|
92
113
|
exports["default"] = _default;
|
|
@@ -1,24 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports["default"] = void 0;
|
|
9
|
+
|
|
8
10
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
|
+
|
|
9
12
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
+
|
|
10
14
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
15
|
+
|
|
11
16
|
var _react = require("react");
|
|
17
|
+
|
|
12
18
|
var _d3v = require("d3v7");
|
|
19
|
+
|
|
13
20
|
var _utils = require("../utils");
|
|
21
|
+
|
|
14
22
|
var _excluded = ["name"];
|
|
23
|
+
|
|
15
24
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
25
|
+
|
|
16
26
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
27
|
+
|
|
17
28
|
var getSeriesMap = function getSeriesMap(series) {
|
|
18
29
|
var seriesMap = new Map();
|
|
19
30
|
series.forEach(function (_ref) {
|
|
20
31
|
var name = _ref.name,
|
|
21
|
-
|
|
32
|
+
rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
22
33
|
seriesMap.set(name, _objectSpread(_objectSpread({}, rest), {}, {
|
|
23
34
|
name: name,
|
|
24
35
|
data: []
|
|
@@ -26,22 +37,27 @@ var getSeriesMap = function getSeriesMap(series) {
|
|
|
26
37
|
});
|
|
27
38
|
return seriesMap;
|
|
28
39
|
};
|
|
40
|
+
|
|
29
41
|
var resetStackData = function resetStackData(series) {
|
|
30
42
|
series.forEach(function (series) {
|
|
31
43
|
series.data = [];
|
|
32
44
|
});
|
|
33
45
|
};
|
|
46
|
+
|
|
34
47
|
var setStackData = function setStackData(data, series, stacks) {
|
|
35
48
|
var dataMap = (0, _d3v.group)(data, function (d) {
|
|
36
49
|
return d.x;
|
|
37
50
|
});
|
|
38
51
|
dataMap.forEach(function (value) {
|
|
39
52
|
(0, _utils.resetStacks)(stacks);
|
|
53
|
+
|
|
40
54
|
for (var i = 0, j = value.length; i < j; i++) {
|
|
41
55
|
var d = value[i];
|
|
42
56
|
var currentSeries = series.get(d.s);
|
|
57
|
+
|
|
43
58
|
if (d && d.y !== undefined && !isNaN(d.y)) {
|
|
44
59
|
var currentStack = (0, _utils.getCurrentStack)(currentSeries, stacks);
|
|
60
|
+
|
|
45
61
|
if (currentSeries && currentStack) {
|
|
46
62
|
if (d.y >= 0) {
|
|
47
63
|
currentSeries.data.push({
|
|
@@ -71,34 +87,40 @@ var setStackData = function setStackData(data, series, stacks) {
|
|
|
71
87
|
dataMap.clear();
|
|
72
88
|
return series;
|
|
73
89
|
};
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
*
|
|
77
|
-
* @param {
|
|
78
|
-
* @
|
|
79
|
-
* @returns {Array} 返回堆叠后的数据,由一开始的{x, y, s}变成{data: {x, y, s}, bound: [start, end], index}
|
|
90
|
+
/**
|
|
91
|
+
* 计算堆叠数据
|
|
92
|
+
* @param {Array} data 数据
|
|
93
|
+
* @param {Map} series 系列
|
|
94
|
+
* @returns {Array} 返回堆叠后的数据,由一开始的{x, y, s}变成{data: {x, y, s}, bound: [start, end], index}
|
|
80
95
|
*/
|
|
96
|
+
|
|
97
|
+
|
|
81
98
|
var _default = function _default(_ref2) {
|
|
82
99
|
var data = _ref2.data,
|
|
83
|
-
|
|
100
|
+
series = _ref2.series;
|
|
101
|
+
|
|
84
102
|
var _series = (0, _react.useMemo)(function () {
|
|
85
103
|
var stacks = (0, _utils.getStacks)(series);
|
|
104
|
+
|
|
86
105
|
var _series = getSeriesMap(series);
|
|
106
|
+
|
|
87
107
|
return {
|
|
88
108
|
stacks: stacks,
|
|
89
109
|
series: (0, _utils.seriesYOrZ)(_series)
|
|
90
110
|
};
|
|
91
111
|
}, [series]);
|
|
112
|
+
|
|
92
113
|
var _data = (0, _react.useMemo)(function () {
|
|
93
114
|
return (0, _utils.dataYOrZ)(data, _series.series);
|
|
94
115
|
}, [data, _series]);
|
|
116
|
+
|
|
95
117
|
var tmp = (0, _react.useMemo)(function () {
|
|
96
118
|
var dataY = _data.y,
|
|
97
|
-
|
|
119
|
+
dataZ = _data.z;
|
|
98
120
|
var stacks = _series.stacks,
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
121
|
+
_series$series = _series.series,
|
|
122
|
+
seriesY = _series$series.y,
|
|
123
|
+
seriesZ = _series$series.z;
|
|
102
124
|
resetStackData(seriesY);
|
|
103
125
|
resetStackData(seriesZ);
|
|
104
126
|
setStackData(dataY, seriesY, stacks);
|
|
@@ -112,4 +134,5 @@ var _default = function _default(_ref2) {
|
|
|
112
134
|
}, [_data, _series]);
|
|
113
135
|
return tmp;
|
|
114
136
|
};
|
|
137
|
+
|
|
115
138
|
exports["default"] = _default;
|