@easyv/charts 1.4.25 → 1.4.26

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.
Files changed (91) hide show
  1. package/.babelrc +8 -8
  2. package/.husky/commit-msg +3 -3
  3. package/CHANGELOG.md +18 -18
  4. package/commitlint.config.js +1 -1
  5. package/lib/components/AnimateData.js +8 -16
  6. package/lib/components/Axis.js +86 -133
  7. package/lib/components/Background.js +18 -26
  8. package/lib/components/Band.js +72 -98
  9. package/lib/components/BaseLine.js +33 -46
  10. package/lib/components/Brush.js +29 -46
  11. package/lib/components/Carousel.js +13 -40
  12. package/lib/components/CartesianChart.js +98 -146
  13. package/lib/components/Chart.js +23 -36
  14. package/lib/components/ChartContainer.js +18 -27
  15. package/lib/components/ConicalGradient.js +56 -89
  16. package/lib/components/Control.js +12 -28
  17. package/lib/components/ExtentData.js +9 -17
  18. package/lib/components/FilterData.js +16 -27
  19. package/lib/components/Indicator.js +23 -30
  20. package/lib/components/Label.js +96 -126
  21. package/lib/components/Legend.js +41 -66
  22. package/lib/components/Lighter.js +21 -50
  23. package/lib/components/Line.js +39 -59
  24. package/lib/components/LinearGradient.js +16 -22
  25. package/lib/components/Mapping.js +9 -34
  26. package/lib/components/Marquee.js +14 -30
  27. package/lib/components/PieChart.js +457 -487
  28. package/lib/components/StackData.js +8 -18
  29. package/lib/components/StereoBar.js +65 -105
  30. package/lib/components/TextOverflow.js +8 -21
  31. package/lib/components/Tooltip.js +41 -55
  32. package/lib/components/index.js +7 -28
  33. package/lib/components/pieTooltip.js +132 -0
  34. package/lib/context/index.js +0 -2
  35. package/lib/css/index.module.css +42 -42
  36. package/lib/css/piechart.module.css +26 -26
  37. package/lib/element/ConicGradient.js +29 -35
  38. package/lib/element/Line.js +9 -13
  39. package/lib/element/index.js +0 -2
  40. package/lib/formatter/index.js +0 -2
  41. package/lib/formatter/legend.js +30 -41
  42. package/lib/hooks/index.js +0 -9
  43. package/lib/hooks/useAiData.js +12 -20
  44. package/lib/hooks/useAnimateData.js +8 -21
  45. package/lib/hooks/useAxes.js +67 -117
  46. package/lib/hooks/useCarouselAxisX.js +27 -60
  47. package/lib/hooks/useExtentData.js +14 -46
  48. package/lib/hooks/useFilterData.js +13 -34
  49. package/lib/hooks/useStackData.js +12 -35
  50. package/lib/hooks/useTooltip.js +36 -53
  51. package/lib/index.js +0 -15
  52. package/lib/utils/index.js +95 -247
  53. package/package.json +55 -55
  54. package/src/components/Background.tsx +61 -61
  55. package/src/components/Band.tsx +274 -274
  56. package/src/components/Brush.js +159 -159
  57. package/src/components/CartesianChart.js +1 -1
  58. package/src/components/Chart.js +99 -99
  59. package/src/components/ChartContainer.tsx +71 -71
  60. package/src/components/ConicalGradient.js +258 -258
  61. package/src/components/Control.jsx +51 -51
  62. package/src/components/ExtentData.js +17 -17
  63. package/src/components/Indicator.js +61 -61
  64. package/src/components/Label.js +275 -275
  65. package/src/components/Legend.js +165 -165
  66. package/src/components/Lighter.jsx +173 -173
  67. package/src/components/Line.js +150 -150
  68. package/src/components/LinearGradient.js +29 -29
  69. package/src/components/Marquee.tsx +1 -1
  70. package/src/components/PieChart.js +403 -260
  71. package/src/components/PieTooltip.jsx +134 -0
  72. package/src/components/StereoBar.tsx +307 -307
  73. package/src/components/index.js +59 -57
  74. package/src/context/index.js +2 -2
  75. package/src/css/index.module.css +42 -42
  76. package/src/css/piechart.module.css +26 -26
  77. package/src/element/ConicGradient.jsx +55 -55
  78. package/src/element/Line.tsx +33 -33
  79. package/src/element/index.ts +3 -3
  80. package/src/formatter/index.js +1 -1
  81. package/src/formatter/legend.js +92 -92
  82. package/src/hooks/index.js +20 -20
  83. package/src/hooks/useAnimateData.ts +67 -67
  84. package/src/hooks/useCarouselAxisX.js +1 -1
  85. package/src/hooks/useFilterData.js +72 -72
  86. package/src/hooks/useStackData.js +101 -101
  87. package/src/hooks/useTooltip.ts +100 -100
  88. package/src/index.js +6 -6
  89. package/src/types/index.d.ts +67 -67
  90. package/src/utils/index.js +757 -757
  91. package/tsconfig.json +23 -23
@@ -1,54 +1,40 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
11
  var _react = _interopRequireWildcard(require("react"));
17
-
18
12
  var _d3v = require("d3v7");
19
-
20
13
  var _utils = require("../utils");
21
-
22
14
  var _svgPathProperties = require("svg-path-properties");
23
-
24
15
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
-
26
16
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
-
28
- /**
29
- * 区域图发光跟踪路径
17
+ /**
18
+ * 区域图发光跟踪路径
30
19
  */
31
20
  var _default = function _default(_ref) {
32
21
  var d = _ref.path,
33
- config = _ref.config,
34
- _ref$config = _ref.config,
35
- curveLength = _ref$config.length,
36
- width = _ref$config.width,
37
- fill = _ref$config.fill,
38
- unitStep = _ref$config.unitStep;
22
+ config = _ref.config,
23
+ _ref$config = _ref.config,
24
+ curveLength = _ref$config.length,
25
+ width = _ref$config.width,
26
+ fill = _ref$config.fill,
27
+ unitStep = _ref$config.unitStep;
39
28
  var pointIndexRef = (0, _react.useRef)(0);
40
29
  var raf = (0, _react.useRef)(null);
41
-
42
30
  var _useState = (0, _react.useState)([]),
43
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
44
- points = _useState2[0],
45
- setPoints = _useState2[1];
46
-
31
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
32
+ points = _useState2[0],
33
+ setPoints = _useState2[1];
47
34
  var _useState3 = (0, _react.useState)(null),
48
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
49
- lighter = _useState4[0],
50
- setLighter = _useState4[1];
51
-
35
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
36
+ lighter = _useState4[0],
37
+ setLighter = _useState4[1];
52
38
  var pointLength = points.length;
53
39
  var totalLength = getLength(pointLength, curveLength);
54
40
  var easingFunc = easing.linear;
@@ -58,7 +44,6 @@ var _default = function _default(_ref) {
58
44
  var drawLigher = (0, _react.useCallback)(function () {
59
45
  var STEP = 2;
60
46
  var LOOP = false;
61
-
62
47
  if (lighter && lighter.children) {
63
48
  var currentPointLength = pointIndexRef.current;
64
49
  var pointIndex = currentPointLength >= totalLength ? LOOP ? curveLength : 0 : currentPointLength + unitStep + Math.floor(easingFunc(pointIndexRef.current / totalLength) * STEP);
@@ -69,26 +54,22 @@ var _default = function _default(_ref) {
69
54
  drawCircle(Array.from(lighter.children), [].concat((0, _toConsumableArray2["default"])(points.slice(startIndex, endIndex)), (0, _toConsumableArray2["default"])(overstepPoints)), interpolateList);
70
55
  pointIndexRef.current = pointIndex;
71
56
  }
72
-
73
57
  raf.current = requestAnimationFrame(drawLigher);
74
58
  }, [lighter, totalLength, curveLength, unitStep, points, interpolateList]);
75
59
  (0, _react.useEffect)(function () {
76
60
  var path = new _svgPathProperties.svgPathProperties(d);
77
61
  var totalLength = path.getTotalLength();
78
62
  var points = [];
79
-
80
63
  for (var i = 0; i < totalLength; i++) {
81
64
  var _path$getPointAtLengt = path.getPointAtLength(i),
82
- x = _path$getPointAtLengt.x,
83
- y = _path$getPointAtLengt.y;
84
-
65
+ x = _path$getPointAtLengt.x,
66
+ y = _path$getPointAtLengt.y;
85
67
  points.push({
86
68
  index: i,
87
69
  x: x,
88
70
  y: y
89
71
  });
90
72
  }
91
-
92
73
  setPoints(points);
93
74
  }, [d, config]);
94
75
  (0, _react.useEffect)(function () {
@@ -101,7 +82,7 @@ var _default = function _default(_ref) {
101
82
  ref: setLighter
102
83
  }, points.map(function (_ref2, index) {
103
84
  var x = _ref2.x,
104
- y = _ref2.y;
85
+ y = _ref2.y;
105
86
  return /*#__PURE__*/_react["default"].createElement("circle", {
106
87
  cx: x,
107
88
  cy: y,
@@ -111,35 +92,30 @@ var _default = function _default(_ref) {
111
92
  });
112
93
  }));
113
94
  };
114
-
115
95
  exports["default"] = _default;
116
-
117
96
  var drawCircle = function drawCircle(children, points, interpolateList) {
118
- var pointLength = points.length; // const [startPoint] = points;
97
+ var pointLength = points.length;
98
+ // const [startPoint] = points;
119
99
  // const startIndex = startPoint ? startPoint.index : 0;
120
-
121
100
  children.forEach(function (child, index) {
122
101
  var pointIndex = points.findIndex(function (_ref3) {
123
102
  var i = _ref3.index;
124
103
  return i == index;
125
104
  });
126
- child.setAttribute('fill', pointIndex > -1 ? getColor(pointIndex / pointLength, //TODO: 颜色插值尚需完善
105
+ child.setAttribute('fill', pointIndex > -1 ? getColor(pointIndex / pointLength,
106
+ //TODO: 颜色插值尚需完善
127
107
  interpolateList) : 'none');
128
108
  });
129
109
  };
130
-
131
110
  var getColor = function getColor(x, interpolateList) {
132
111
  return interpolateList(x);
133
112
  };
134
-
135
113
  var getLength = function getLength(pointLength, length) {
136
114
  if (length > pointLength) {
137
115
  return pointLength * 2;
138
116
  }
139
-
140
117
  return pointLength + length;
141
118
  };
142
-
143
119
  var getColorsInterpolate = function getColorsInterpolate(colors) {
144
120
  var length = colors.length;
145
121
  if (!!(length < 2)) return (0, _d3v.scaleLinear)().domain([0, 1]).range([colors[0].color || '#000', colors[0].color || '#000']);
@@ -150,7 +126,6 @@ var getColorsInterpolate = function getColorsInterpolate(colors) {
150
126
  }));
151
127
  return linear;
152
128
  };
153
-
154
129
  var easing = {
155
130
  linear: function linear() {
156
131
  return 0;
@@ -168,17 +143,13 @@ var easing = {
168
143
  return k < 0.5 ? 0.5 * (1 - easing.easeIn(1 - 2 * k)) : 0.5 * easing.easeIn(k * 2 - 1) + 0.5;
169
144
  }
170
145
  };
171
-
172
146
  var getPointIndex = function getPointIndex(pointIndex, pointLength, curveLength) {
173
147
  var index = pointIndex - curveLength;
174
-
175
148
  if (index < 0) {
176
149
  return 0;
177
150
  }
178
-
179
151
  if (index >= pointLength) {
180
152
  return pointLength - 1;
181
153
  }
182
-
183
154
  return index;
184
155
  };
@@ -1,48 +1,34 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime/helpers/objectDestructuringEmpty"));
13
-
14
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
11
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
12
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
19
-
20
13
  var _react = _interopRequireWildcard(require("react"));
21
-
22
14
  var _d3v = require("d3v7");
23
-
24
15
  var _utils = require("../utils");
25
-
26
16
  var _ = require(".");
27
-
28
17
  var _excluded = ["data"];
29
-
18
+ /**
19
+ * 折线图
20
+ */
30
21
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
31
-
32
22
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
33
-
34
23
  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; }
35
-
36
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; }
37
-
38
25
  var defined = function defined(d) {
39
26
  return d.data.y != null;
40
27
  };
41
-
42
28
  var getLineData = function getLineData(data, connectNulls) {
43
29
  return connectNulls ? data.map(function (_ref) {
44
30
  var data = _ref.data,
45
- item = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
31
+ item = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
46
32
  return _objectSpread(_objectSpread({}, item), {}, {
47
33
  data: _objectSpread(_objectSpread({}, data), {}, {
48
34
  y: +data.y
@@ -50,28 +36,25 @@ var getLineData = function getLineData(data, connectNulls) {
50
36
  });
51
37
  }) : data;
52
38
  };
53
-
54
39
  var Area = function Area(_ref2) {
55
40
  var data = _ref2.data,
56
- config = _ref2.config,
57
- _ref2$config = _ref2.config,
58
- id = _ref2$config.id,
59
- fill = _ref2$config.fill,
60
- type = _ref2$config.type,
61
- url = _ref2$config.url,
62
- opacity = _ref2$config.opacity,
63
- _ref2$config$size = _ref2$config.size,
64
- patternW = _ref2$config$size.width,
65
- patternH = _ref2$config$size.height,
66
- curve = _ref2$config.curve,
67
- tension = _ref2$config.tension,
68
- xScaler = _ref2.xScaler,
69
- yScaler = _ref2.yScaler;
70
-
41
+ config = _ref2.config,
42
+ _ref2$config = _ref2.config,
43
+ id = _ref2$config.id,
44
+ fill = _ref2$config.fill,
45
+ type = _ref2$config.type,
46
+ url = _ref2$config.url,
47
+ opacity = _ref2$config.opacity,
48
+ _ref2$config$size = _ref2$config.size,
49
+ patternW = _ref2$config$size.width,
50
+ patternH = _ref2$config$size.height,
51
+ curve = _ref2$config.curve,
52
+ tension = _ref2$config.tension,
53
+ xScaler = _ref2.xScaler,
54
+ yScaler = _ref2.yScaler;
71
55
  var _yScaler$range = yScaler.range(),
72
- _yScaler$range2 = (0, _slicedToArray2["default"])(_yScaler$range, 1),
73
- height = _yScaler$range2[0];
74
-
56
+ _yScaler$range2 = (0, _slicedToArray2["default"])(_yScaler$range, 1),
57
+ height = _yScaler$range2[0];
75
58
  var area = (0, _react.useMemo)(function () {
76
59
  return (0, _utils.getColorList)(fill);
77
60
  }, [fill]);
@@ -82,7 +65,8 @@ var Area = function Area(_ref2) {
82
65
  }).y1(function (_ref4) {
83
66
  var y = _ref4.data.y;
84
67
  return yScaler(y);
85
- }) // .y0(height)
68
+ })
69
+ // .y0(height)
86
70
  .y0(function (_ref5) {
87
71
  (0, _objectDestructuringEmpty2["default"])(_ref5);
88
72
  return yScaler(0);
@@ -111,26 +95,25 @@ var Area = function Area(_ref2) {
111
95
  rotate: 0
112
96
  })));
113
97
  };
114
-
115
98
  var _default = /*#__PURE__*/(0, _react.memo)(function (_ref6) {
116
99
  var type = _ref6.type,
117
- _ref6$config$line = _ref6.config.line,
118
- lineType = _ref6$config$line.type,
119
- lineWidth = _ref6$config$line.lineWidth,
120
- curve = _ref6$config$line.curve,
121
- tension = _ref6$config$line.tension,
122
- connectNulls = _ref6$config$line.connectNulls,
123
- lineShadow = _ref6$config$line.lineShadow,
124
- lighter = _ref6$config$line.lighter,
125
- _ref6$line = _ref6.line,
126
- lineId = _ref6$line.id,
127
- stroke = _ref6$line.stroke,
128
- area = _ref6.area,
129
- data = _ref6.data,
130
- _ref6$xAxis = _ref6.xAxis,
131
- xScaler = _ref6$xAxis.scaler,
132
- direction = _ref6$xAxis.direction,
133
- yScaler = _ref6.yAxis.scaler;
100
+ _ref6$config$line = _ref6.config.line,
101
+ lineType = _ref6$config$line.type,
102
+ lineWidth = _ref6$config$line.lineWidth,
103
+ curve = _ref6$config$line.curve,
104
+ tension = _ref6$config$line.tension,
105
+ connectNulls = _ref6$config$line.connectNulls,
106
+ lineShadow = _ref6$config$line.lineShadow,
107
+ lighter = _ref6$config$line.lighter,
108
+ _ref6$line = _ref6.line,
109
+ lineId = _ref6$line.id,
110
+ stroke = _ref6$line.stroke,
111
+ area = _ref6.area,
112
+ data = _ref6.data,
113
+ _ref6$xAxis = _ref6.xAxis,
114
+ xScaler = _ref6$xAxis.scaler,
115
+ direction = _ref6$xAxis.direction,
116
+ yScaler = _ref6.yAxis.scaler;
134
117
  if (!data.length) return null;
135
118
  var ticks = xScaler.domain();
136
119
  var sortData = (0, _react.useMemo)(function () {
@@ -144,11 +127,9 @@ var _default = /*#__PURE__*/(0, _react.memo)(function (_ref6) {
144
127
  return ticks.indexOf(a) - ticks.indexOf(b);
145
128
  });
146
129
  }, [data, ticks]);
147
-
148
130
  var _data = (0, _react.useMemo)(function () {
149
131
  return getLineData(sortData, connectNulls);
150
132
  }, [sortData, connectNulls]);
151
-
152
133
  var lineGen = (0, _react.useMemo)(function () {
153
134
  var isVertical = direction === 'vertical';
154
135
  var lineGen = (isVertical ? (0, _d3v.line)().y(function (_ref10) {
@@ -196,5 +177,4 @@ var _default = /*#__PURE__*/(0, _react.memo)(function (_ref6) {
196
177
  config: lighter
197
178
  }));
198
179
  });
199
-
200
180
  exports["default"] = _default;
@@ -1,32 +1,27 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
-
12
- /**
13
- * svg渐变滤镜
9
+ /**
10
+ * svg渐变滤镜
14
11
  */
15
12
  var _default = function _default(_ref) {
16
13
  var id = _ref.id,
17
- colors = _ref.colors,
18
- _ref$rotate = _ref.rotate,
19
- rotate = _ref$rotate === void 0 ? 0 : _ref$rotate,
20
- gradientUnits = _ref.gradientUnits,
21
- _ref$position = _ref.position;
22
- _ref$position = _ref$position === void 0 ? [0, 0, 0, 1] : _ref$position;
23
-
24
- var _ref$position2 = (0, _slicedToArray2["default"])(_ref$position, 4),
25
- x1 = _ref$position2[0],
26
- y1 = _ref$position2[1],
27
- x2 = _ref$position2[2],
28
- y2 = _ref$position2[3];
29
-
14
+ colors = _ref.colors,
15
+ _ref$rotate = _ref.rotate,
16
+ rotate = _ref$rotate === void 0 ? 0 : _ref$rotate,
17
+ gradientUnits = _ref.gradientUnits,
18
+ _ref$position = _ref.position,
19
+ _ref$position2 = _ref$position === void 0 ? [0, 0, 0, 1] : _ref$position,
20
+ _ref$position3 = (0, _slicedToArray2["default"])(_ref$position2, 4),
21
+ x1 = _ref$position3[0],
22
+ y1 = _ref$position3[1],
23
+ x2 = _ref$position3[2],
24
+ y2 = _ref$position3[3];
30
25
  return /*#__PURE__*/React.createElement("linearGradient", {
31
26
  x1: x1,
32
27
  y1: y1,
@@ -37,9 +32,9 @@ var _default = function _default(_ref) {
37
32
  gradientTransform: 'rotate(' + rotate + ', .5, .5)'
38
33
  }, colors.map(function (_ref2, index) {
39
34
  var offset = _ref2.offset,
40
- color = _ref2.color,
41
- _ref2$stopOpacity = _ref2.stopOpacity,
42
- stopOpacity = _ref2$stopOpacity === void 0 ? 1 : _ref2$stopOpacity;
35
+ color = _ref2.color,
36
+ _ref2$stopOpacity = _ref2.stopOpacity,
37
+ stopOpacity = _ref2$stopOpacity === void 0 ? 1 : _ref2$stopOpacity;
43
38
  return /*#__PURE__*/React.createElement("stop", {
44
39
  key: index,
45
40
  offset: offset,
@@ -48,5 +43,4 @@ var _default = function _default(_ref) {
48
43
  });
49
44
  }));
50
45
  };
51
-
52
46
  exports["default"] = _default;
@@ -1,52 +1,35 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
-
16
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
12
  var _react = require("react");
19
-
20
13
  var _d3v = require("d3v7");
21
-
22
14
  var _excluded = ["series"],
23
- _excluded2 = ["config", "data"];
24
-
15
+ _excluded2 = ["config", "data"];
25
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; }
26
-
27
17
  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; }
28
-
29
18
  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; } } }; }
30
-
31
19
  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); }
32
-
33
- 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; }
34
-
20
+ 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; }
35
21
  var groupBySeriesData = function groupBySeriesData(data) {
36
22
  var groupBySeries = (0, _d3v.group)(data, function (d) {
37
23
  return d.s;
38
24
  });
39
25
  var tmp = [];
40
-
41
26
  var _iterator = _createForOfIteratorHelper(groupBySeries.entries()),
42
- _step;
43
-
27
+ _step;
44
28
  try {
45
29
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
46
30
  var _step$value = (0, _slicedToArray2["default"])(_step.value, 2),
47
- key = _step$value[0],
48
- value = _step$value[1];
49
-
31
+ key = _step$value[0],
32
+ value = _step$value[1];
50
33
  tmp.push({
51
34
  key: key,
52
35
  value: value
@@ -57,28 +40,24 @@ var groupBySeriesData = function groupBySeriesData(data) {
57
40
  } finally {
58
41
  _iterator.f();
59
42
  }
60
-
61
43
  return tmp;
62
44
  };
63
-
64
45
  var isValidData = function isValidData(data) {
65
46
  return !!(Array.isArray(data) && data.filter(function (obj) {
66
47
  return Object.prototype.toString.call(obj) === '[object Object]' && Object.keys(obj).length !== 0;
67
48
  }).length > 0);
68
49
  };
69
-
70
50
  var _default = function _default(Component) {
71
51
  return /*#__PURE__*/(0, _react.memo)(function (_ref) {
72
52
  var _ref$config = _ref.config,
73
- series = _ref$config.series,
74
- config = (0, _objectWithoutProperties2["default"])(_ref$config, _excluded),
75
- originData = _ref.data,
76
- rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded2);
53
+ series = _ref$config.series,
54
+ config = (0, _objectWithoutProperties2["default"])(_ref$config, _excluded),
55
+ originData = _ref.data,
56
+ rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded2);
77
57
  var data = (0, _react.useMemo)(function () {
78
58
  if (!isValidData(originData)) return [];
79
59
  return groupBySeriesData(originData);
80
60
  }, [originData]);
81
-
82
61
  var _series = (0, _react.useMemo)(function () {
83
62
  if (!!data.length) {
84
63
  var seriesLength = series.length;
@@ -87,7 +66,6 @@ var _default = function _default(Component) {
87
66
  return !fieldName;
88
67
  });
89
68
  var tmp = new Map();
90
-
91
69
  if (!!noName) {
92
70
  data.forEach(function (_ref3, index) {
93
71
  var key = _ref3.key;
@@ -99,7 +77,6 @@ var _default = function _default(Component) {
99
77
  });
100
78
  return tmp;
101
79
  }
102
-
103
80
  var lastSeries = series[seriesLength - 1];
104
81
  data.forEach(function (_ref4) {
105
82
  var key = _ref4.key;
@@ -118,7 +95,6 @@ var _default = function _default(Component) {
118
95
  return tmp;
119
96
  }
120
97
  }, [series, data]);
121
-
122
98
  return !!data.length && /*#__PURE__*/React.createElement(Component, (0, _extends2["default"])({}, rest, {
123
99
  data: originData,
124
100
  config: _objectSpread(_objectSpread({}, config), {}, {
@@ -127,5 +103,4 @@ var _default = function _default(Component) {
127
103
  }));
128
104
  });
129
105
  };
130
-
131
106
  exports["default"] = _default;
@@ -1,47 +1,37 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
11
  var _react = _interopRequireWildcard(require("react"));
17
-
18
12
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
-
20
13
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
-
22
14
  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
-
24
15
  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
+ /**
17
+ * 文字跑马灯组件
18
+ * eg: <Marquee value={文本内容} speed={跑马灯速度} style={额外样式}></Marquee>
19
+ */
26
20
  var _default = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
27
21
  var value = props.value,
28
- style = props.style,
29
- _props$speed = props.speed,
30
- speed = _props$speed === void 0 ? 5 : _props$speed;
22
+ style = props.style,
23
+ _props$speed = props.speed,
24
+ speed = _props$speed === void 0 ? 5 : _props$speed;
31
25
  var rootRef = ref || (0, _react.useRef)();
32
26
  var target = (0, _react.useRef)(null);
33
27
  var observe = (0, _react.useRef)(null);
34
28
  var speed_ = (0, _react.useRef)(0); //这里必须用一个ref绑定speed,否则animation中获取不到最新的speed
35
-
36
29
  var timer = (0, _react.useRef)();
37
-
38
30
  var _useState = (0, _react.useState)(false),
39
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
40
- overflow = _useState2[0],
41
- setOverflow = _useState2[1];
42
-
31
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
32
+ overflow = _useState2[0],
33
+ setOverflow = _useState2[1];
43
34
  speed_.current = speed;
44
-
45
35
  var startAnimation = function startAnimation(lineWidth) {
46
36
  var animation = function animation(timestamp) {
47
37
  var frame = Math.round(timestamp * speed_.current % (lineWidth * 100) / 100);
@@ -49,28 +39,24 @@ var _default = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef
49
39
  target.current.nextSibling.style.transform = "translate(-".concat(frame, "px,0px)");
50
40
  timer.current = requestAnimationFrame(animation);
51
41
  };
52
-
53
42
  timer.current = requestAnimationFrame(animation);
54
43
  };
55
-
56
44
  (0, _react.useEffect)(function () {
57
45
  //初始化观察器,利用观察器来监视组件可视区域变化
58
46
  observe.current = new IntersectionObserver(function (entries) {
59
47
  var entrie = entries[0];
60
-
61
48
  if (entrie.boundingClientRect.width <= entrie.rootBounds.width) {
62
49
  //表示文字全部可视
63
50
  cancelAnimationFrame(timer.current || 0);
64
51
  target.current.style.transform = "translate(0px,0px)"; //重置偏移
65
-
66
52
  setOverflow(false);
67
53
  return;
68
54
  } else {
69
55
  //否则文本溢出
70
56
  if (!overflow) {
71
57
  cancelAnimationFrame(timer.current || 0);
72
- startAnimation(entrie.target.offsetWidth); //startAnimation(entrie.boundingClientRect.width);
73
-
58
+ startAnimation(entrie.target.offsetWidth);
59
+ //startAnimation(entrie.boundingClientRect.width);
74
60
  setOverflow(true);
75
61
  }
76
62
  }
@@ -80,9 +66,8 @@ var _default = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef
80
66
  threshold: new Array(101).fill(0).map(function (d, i) {
81
67
  return i / 100;
82
68
  }) //这里设置了[0-1]之间所有的阈值,保证每一帧的变化都能被观察到
83
-
84
- }); // start observing
85
-
69
+ });
70
+ // start observing
86
71
  observe.current.observe(target.current);
87
72
  return function () {
88
73
  cancelAnimationFrame(timer.current || 0);
@@ -114,5 +99,4 @@ var _default = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef
114
99
  });
115
100
  }));
116
101
  }));
117
-
118
102
  exports["default"] = _default;