@easyv/charts 1.4.21 → 1.4.24

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 (90) 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 +106 -138
  7. package/lib/components/Background.js +18 -26
  8. package/lib/components/Band.js +105 -91
  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 +292 -113
  13. package/lib/components/Chart.js +23 -36
  14. package/lib/components/ChartContainer.js +21 -29
  15. package/lib/components/ConicalGradient.js +56 -89
  16. package/lib/components/Control.js +65 -0
  17. package/lib/components/ExtentData.js +9 -17
  18. package/lib/components/FilterData.js +16 -27
  19. package/lib/components/Indicator.js +66 -12
  20. package/lib/components/Label.js +128 -118
  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 +312 -406
  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 -27
  33. package/lib/context/index.js +0 -2
  34. package/lib/css/index.module.css +42 -42
  35. package/lib/css/piechart.module.css +26 -26
  36. package/lib/element/ConicGradient.js +29 -35
  37. package/lib/element/Line.js +9 -13
  38. package/lib/element/index.js +0 -2
  39. package/lib/formatter/index.js +0 -2
  40. package/lib/formatter/legend.js +30 -41
  41. package/lib/hooks/index.js +0 -9
  42. package/lib/hooks/useAiData.js +12 -20
  43. package/lib/hooks/useAnimateData.js +8 -21
  44. package/lib/hooks/useAxes.js +69 -115
  45. package/lib/hooks/useCarouselAxisX.js +47 -68
  46. package/lib/hooks/useExtentData.js +14 -46
  47. package/lib/hooks/useFilterData.js +13 -34
  48. package/lib/hooks/useStackData.js +12 -35
  49. package/lib/hooks/useTooltip.js +37 -54
  50. package/lib/index.js +0 -15
  51. package/lib/utils/index.js +95 -247
  52. package/package.json +55 -55
  53. package/src/components/Axis.tsx +223 -183
  54. package/src/components/Background.tsx +61 -61
  55. package/src/components/Band.tsx +274 -239
  56. package/src/components/Brush.js +159 -159
  57. package/src/components/CartesianChart.js +320 -44
  58. package/src/components/Chart.js +99 -99
  59. package/src/components/ChartContainer.tsx +71 -64
  60. package/src/components/ConicalGradient.js +258 -258
  61. package/src/components/Control.jsx +51 -0
  62. package/src/components/ExtentData.js +17 -17
  63. package/src/components/Indicator.js +61 -13
  64. package/src/components/Label.js +275 -242
  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/PieChart.js +8 -4
  70. package/src/components/StereoBar.tsx +307 -307
  71. package/src/components/index.js +57 -55
  72. package/src/context/index.js +2 -2
  73. package/src/css/index.module.css +42 -42
  74. package/src/css/piechart.module.css +26 -26
  75. package/src/element/ConicGradient.jsx +55 -55
  76. package/src/element/Line.tsx +33 -33
  77. package/src/element/index.ts +3 -3
  78. package/src/formatter/index.js +1 -1
  79. package/src/formatter/legend.js +92 -92
  80. package/src/hooks/index.js +20 -20
  81. package/src/hooks/useAnimateData.ts +67 -67
  82. package/src/hooks/useAxes.js +9 -2
  83. package/src/hooks/useCarouselAxisX.js +35 -18
  84. package/src/hooks/useFilterData.js +72 -72
  85. package/src/hooks/useStackData.js +101 -101
  86. package/src/hooks/useTooltip.ts +100 -100
  87. package/src/index.js +6 -6
  88. package/src/types/index.d.ts +67 -67
  89. package/src/utils/index.js +757 -757
  90. package/tsconfig.json +23 -23
@@ -1,28 +1,18 @@
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
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
10
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
-
16
11
  var _react = require("react");
17
-
18
12
  var _d3v = require("d3v7");
19
-
20
13
  var _utils = require("../utils");
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
-
26
16
  var stackData = function stackData(data, series) {
27
17
  var dataMap = (0, _d3v.group)(data, function (d) {
28
18
  return d.x;
@@ -35,14 +25,11 @@ var stackData = function stackData(data, series) {
35
25
  dataMap.forEach(function (value) {
36
26
  var arr = [];
37
27
  (0, _utils.resetStacks)(stacks);
38
-
39
28
  for (var i = 0, j = value.length; i < j; i++) {
40
29
  var d = value[i];
41
30
  var stack = series.get(d.s);
42
-
43
31
  if (d && d.y !== undefined && !isNaN(d.y)) {
44
32
  var currentStack = (0, _utils.getCurrentStack)(stack, stacks);
45
-
46
33
  if (stack && currentStack) {
47
34
  if (d.y >= 0) {
48
35
  currentStack.positive += d.y;
@@ -56,13 +43,13 @@ var stackData = function stackData(data, series) {
56
43
  }
57
44
  }
58
45
  }
59
-
60
46
  min = Math.min.apply(Math, arr.concat([min]));
61
47
  max = Math.max.apply(Math, arr.concat([max]));
62
48
  });
63
49
  dataMap.clear();
64
50
  return [min || 0, max || (min || 0) + 100];
65
51
  };
52
+
66
53
  /**
67
54
  * 计算轴的domain
68
55
  * @param {Array} axes x轴列表
@@ -70,81 +57,65 @@ var stackData = function stackData(data, series) {
70
57
  * @param {Object} data 数据列表
71
58
  * @returns {Array} 返回带domain的轴
72
59
  */
73
-
74
-
75
60
  var _default = function _default(_ref) {
76
61
  var axes = _ref.axes,
77
- series = _ref.series,
78
- data = _ref.data;
79
-
62
+ series = _ref.series,
63
+ data = _ref.data;
80
64
  var _series = (0, _react.useMemo)(function () {
81
65
  return (0, _utils.seriesYOrZ)(series);
82
66
  }, [series]);
83
-
84
67
  var _useMemo = (0, _react.useMemo)(function () {
85
- return (0, _utils.dataYOrZ)(data, _series);
86
- }, [data, _series]),
87
- dataY = _useMemo.y,
88
- dataZ = _useMemo.z;
89
-
68
+ return (0, _utils.dataYOrZ)(data, _series);
69
+ }, [data, _series]),
70
+ dataY = _useMemo.y,
71
+ dataZ = _useMemo.z;
90
72
  var x = (0, _react.useMemo)(function () {
91
73
  return (0, _toConsumableArray2["default"])((0, _d3v.group)(data, function (d) {
92
74
  return d.x;
93
75
  }).keys());
94
76
  }, [data]);
95
77
  var y = stackData(dataY, _series.y);
96
- var z = stackData(dataZ, _series.z); //clipAxisMode如果是auto根据clipDifferenceValue设置clipValue
97
-
78
+ var z = stackData(dataZ, _series.z);
79
+ //clipAxisMode如果是auto根据clipDifferenceValue设置clipValue
98
80
  return axes.map(function (item) {
99
81
  var axisType = item.axisType,
100
- domain = item.domain,
101
- type = item.type;
102
-
82
+ domain = item.domain,
83
+ type = item.type;
103
84
  switch (axisType) {
104
85
  case "x":
105
86
  return _objectSpread(_objectSpread({}, item), {}, {
106
87
  domain: type == "linear" ? (0, _d3v.extent)(x) : x
107
88
  });
108
-
109
89
  case "y":
110
90
  {
111
91
  if (item.axisType == "y" && item.isClipAxis === true && item.clipAxisMode == "auto") {
112
92
  var _dataY = dataY.map(function (_item) {
113
93
  return _item.y;
114
94
  });
115
-
116
95
  var _clipValue = Infinity;
117
-
118
96
  if (_dataY.length >= 2) {
119
97
  _dataY.sort(function (a, b) {
120
98
  return a - b;
121
99
  });
122
-
123
100
  var clipDifferenceValueArr = [];
124
-
125
101
  for (var i = 0; i < _dataY.length - 1; i++) {
126
102
  clipDifferenceValueArr.push(_dataY[i + 1] - _dataY[i]);
127
103
  }
128
-
129
104
  var max = (0, _d3v.max)(clipDifferenceValueArr);
130
-
131
105
  if (max >= item.clipDifferenceValue) {
132
106
  var index = clipDifferenceValueArr.indexOf(max);
133
107
  _clipValue = _dataY[index];
134
108
  }
135
109
  }
136
-
137
110
  return _objectSpread(_objectSpread({}, item), {}, {
138
111
  domain: domain ? getDomain(y, domain) : y,
139
112
  clipValue: _clipValue
140
113
  });
141
114
  }
142
-
143
115
  return _objectSpread(_objectSpread({}, item), {}, {
144
116
  domain: domain ? getDomain(y, domain) : y
145
117
  });
146
118
  }
147
-
148
119
  case "z":
149
120
  return _objectSpread(_objectSpread({}, item), {}, {
150
121
  domain: domain ? getDomain(z, domain) : z
@@ -152,15 +123,12 @@ var _default = function _default(_ref) {
152
123
  }
153
124
  });
154
125
  };
155
-
156
126
  exports["default"] = _default;
157
-
158
127
  var getDomain = function getDomain(_ref2, _ref3) {
159
128
  var _ref4 = (0, _slicedToArray2["default"])(_ref2, 2),
160
- min1 = _ref4[0],
161
- max1 = _ref4[1];
162
-
129
+ min1 = _ref4[0],
130
+ max1 = _ref4[1];
163
131
  var min = _ref3.min,
164
- max = _ref3.max;
132
+ max = _ref3.max;
165
133
  return [min !== "" ? +min : min1, max !== "" ? +max : max1];
166
134
  };
@@ -1,39 +1,26 @@
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 _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
-
14
10
  var _react = require("react");
15
-
16
11
  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
-
18
12
  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
-
20
13
  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
-
22
14
  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); }
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
-
15
+ 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; }
26
16
  var getInitialSelected = function getInitialSelected(series) {
27
17
  var status = new Map();
28
-
29
18
  var _iterator = _createForOfIteratorHelper(series.entries()),
30
- _step;
31
-
19
+ _step;
32
20
  try {
33
21
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
34
22
  var _step$value = (0, _slicedToArray2["default"])(_step.value, 1),
35
- name = _step$value[0];
36
-
23
+ name = _step$value[0];
37
24
  status.set(name, true);
38
25
  }
39
26
  } catch (err) {
@@ -41,10 +28,8 @@ var getInitialSelected = function getInitialSelected(series) {
41
28
  } finally {
42
29
  _iterator.f();
43
30
  }
44
-
45
31
  return status;
46
32
  };
47
-
48
33
  var getSelected = function getSelected(selected, name) {
49
34
  var tmp = new Map();
50
35
  selected.forEach(function (value, key) {
@@ -56,23 +41,20 @@ var getSelected = function getSelected(selected, name) {
56
41
  });
57
42
  return tmp;
58
43
  };
59
- /**
60
- * 图例点击状态管理
61
- * @param {Array} data 数据
62
- * @param {Map} series 系列
63
- * @returns {Array} 返回筛选后的数据和是否选中状态,及控制选中函数
64
- */
65
-
66
44
 
45
+ /**
46
+ * 图例点击状态管理
47
+ * @param {Array} data 数据
48
+ * @param {Map} series 系列
49
+ * @returns {Array} 返回筛选后的数据和是否选中状态,及控制选中函数
50
+ */
67
51
  var _default = function _default(_ref) {
68
52
  var data = _ref.data,
69
- series = _ref.series;
70
-
53
+ series = _ref.series;
71
54
  var _useState = (0, _react.useState)(getInitialSelected(series)),
72
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
73
- selected = _useState2[0],
74
- setSelected = _useState2[1];
75
-
55
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
56
+ selected = _useState2[0],
57
+ setSelected = _useState2[1];
76
58
  var _series = (0, _react.useMemo)(function () {
77
59
  var tmp = new Map();
78
60
  series.forEach(function (currentSeries, key) {
@@ -83,14 +65,12 @@ var _default = function _default(_ref) {
83
65
  });
84
66
  return tmp;
85
67
  }, [selected, series]);
86
-
87
68
  var _data = (0, _react.useMemo)(function () {
88
69
  return data.filter(function (_ref2) {
89
70
  var s = _ref2.s;
90
71
  return s && _series.get(s) && _series.get(s).selected;
91
72
  });
92
73
  }, [data, _series]);
93
-
94
74
  var onClick = (0, _react.useCallback)(function (name) {
95
75
  setSelected(function (selected) {
96
76
  return getSelected(selected, name);
@@ -109,5 +89,4 @@ var _default = function _default(_ref) {
109
89
  })
110
90
  }, onClick];
111
91
  };
112
-
113
92
  exports["default"] = _default;
@@ -1,35 +1,24 @@
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 _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
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 _react = require("react");
17
-
18
12
  var _d3v = require("d3v7");
19
-
20
13
  var _utils = require("../utils");
21
-
22
14
  var _excluded = ["name"];
23
-
24
15
  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
-
26
16
  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
-
28
17
  var getSeriesMap = function getSeriesMap(series) {
29
18
  var seriesMap = new Map();
30
19
  series.forEach(function (_ref) {
31
20
  var name = _ref.name,
32
- rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
21
+ rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
33
22
  seriesMap.set(name, _objectSpread(_objectSpread({}, rest), {}, {
34
23
  name: name,
35
24
  data: []
@@ -37,27 +26,22 @@ var getSeriesMap = function getSeriesMap(series) {
37
26
  });
38
27
  return seriesMap;
39
28
  };
40
-
41
29
  var resetStackData = function resetStackData(series) {
42
30
  series.forEach(function (series) {
43
31
  series.data = [];
44
32
  });
45
33
  };
46
-
47
34
  var setStackData = function setStackData(data, series, stacks) {
48
35
  var dataMap = (0, _d3v.group)(data, function (d) {
49
36
  return d.x;
50
37
  });
51
38
  dataMap.forEach(function (value) {
52
39
  (0, _utils.resetStacks)(stacks);
53
-
54
40
  for (var i = 0, j = value.length; i < j; i++) {
55
41
  var d = value[i];
56
42
  var currentSeries = series.get(d.s);
57
-
58
43
  if (d && d.y !== undefined && !isNaN(d.y)) {
59
44
  var currentStack = (0, _utils.getCurrentStack)(currentSeries, stacks);
60
-
61
45
  if (currentSeries && currentStack) {
62
46
  if (d.y >= 0) {
63
47
  currentSeries.data.push({
@@ -87,40 +71,34 @@ var setStackData = function setStackData(data, series, stacks) {
87
71
  dataMap.clear();
88
72
  return series;
89
73
  };
90
- /**
91
- * 计算堆叠数据
92
- * @param {Array} data 数据
93
- * @param {Map} series 系列
94
- * @returns {Array} 返回堆叠后的数据,由一开始的{x, y, s}变成{data: {x, y, s}, bound: [start, end], index}
95
- */
96
-
97
74
 
75
+ /**
76
+ * 计算堆叠数据
77
+ * @param {Array} data 数据
78
+ * @param {Map} series 系列
79
+ * @returns {Array} 返回堆叠后的数据,由一开始的{x, y, s}变成{data: {x, y, s}, bound: [start, end], index}
80
+ */
98
81
  var _default = function _default(_ref2) {
99
82
  var data = _ref2.data,
100
- series = _ref2.series;
101
-
83
+ series = _ref2.series;
102
84
  var _series = (0, _react.useMemo)(function () {
103
85
  var stacks = (0, _utils.getStacks)(series);
104
-
105
86
  var _series = getSeriesMap(series);
106
-
107
87
  return {
108
88
  stacks: stacks,
109
89
  series: (0, _utils.seriesYOrZ)(_series)
110
90
  };
111
91
  }, [series]);
112
-
113
92
  var _data = (0, _react.useMemo)(function () {
114
93
  return (0, _utils.dataYOrZ)(data, _series.series);
115
94
  }, [data, _series]);
116
-
117
95
  var tmp = (0, _react.useMemo)(function () {
118
96
  var dataY = _data.y,
119
- dataZ = _data.z;
97
+ dataZ = _data.z;
120
98
  var stacks = _series.stacks,
121
- _series$series = _series.series,
122
- seriesY = _series$series.y,
123
- seriesZ = _series$series.z;
99
+ _series$series = _series.series,
100
+ seriesY = _series$series.y,
101
+ seriesZ = _series$series.z;
124
102
  resetStackData(seriesY);
125
103
  resetStackData(seriesZ);
126
104
  setStackData(dataY, seriesY, stacks);
@@ -134,5 +112,4 @@ var _default = function _default(_ref2) {
134
112
  }, [_data, _series]);
135
113
  return tmp;
136
114
  };
137
-
138
115
  exports["default"] = _default;
@@ -1,83 +1,69 @@
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
9
  var _react = require("react");
13
-
14
10
  var _utils = require("../utils");
15
-
16
11
  var callback = function callback() {};
17
- /**
18
- * 主要用于轴类图表,返回当前选中的是哪一个x
19
- * @param {Array} svg svg的dom实例
20
- * @param {Number} marginLeft 左间距
21
- * @param {Number} marginTop 上间距
22
- * @param {Number} width 宽
23
- * @param {Number} height 高
24
- * @param {Number} axisX 类目轴
25
- * @param {Object} config 轮播动画参数
26
- * @returns {Object} 返回被选中的名称,坐标,选中方法
27
- */
28
-
29
12
 
13
+ /**
14
+ * 主要用于轴类图表,返回当前选中的是哪一个x
15
+ * @param {Array} svg svg的dom实例
16
+ * @param {Number} marginLeft 左间距
17
+ * @param {Number} marginTop 上间距
18
+ * @param {Number} width 宽
19
+ * @param {Number} height 高
20
+ * @param {Number} axisX 类目轴
21
+ * @param {Object} config 轮播动画参数
22
+ * @returns {Object} 返回被选中的名称,坐标,选中方法
23
+ */
30
24
  var _default = function _default(_ref) {
31
25
  var svg = _ref.svg,
32
- marginLeft = _ref.marginLeft,
33
- marginTop = _ref.marginTop,
34
- width = _ref.width,
35
- height = _ref.height,
36
- axisX = _ref.axisX,
37
- isHover = _ref.isHover,
38
- _ref$config = _ref.config;
39
- _ref$config = _ref$config === void 0 ? {} : _ref$config;
40
- var auto = _ref$config.auto,
41
- _ref$config$interval = _ref$config.interval,
42
- interval = _ref$config$interval === void 0 ? 0 : _ref$config$interval,
43
- manual = _ref$config.manual;
44
-
26
+ marginLeft = _ref.marginLeft,
27
+ marginTop = _ref.marginTop,
28
+ width = _ref.width,
29
+ height = _ref.height,
30
+ axisX = _ref.axisX,
31
+ isHover = _ref.isHover,
32
+ _ref$config = _ref.config,
33
+ _ref$config2 = _ref$config === void 0 ? {} : _ref$config,
34
+ auto = _ref$config2.auto,
35
+ _ref$config2$interval = _ref$config2.interval,
36
+ interval = _ref$config2$interval === void 0 ? 0 : _ref$config2$interval,
37
+ manual = _ref$config2.manual;
45
38
  var _useState = (0, _react.useState)(null),
46
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
47
- currentIndex = _useState2[0],
48
- setCurrentIndex = _useState2[1];
49
-
39
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
40
+ currentIndex = _useState2[0],
41
+ setCurrentIndex = _useState2[1];
50
42
  var tickLength = axisX.allTicks.length;
51
43
  var setIndex = (0, _react.useCallback)(function (e) {
52
44
  if (svg) {
53
45
  var _getMousePos = (0, _utils.getMousePos)(e, svg.current),
54
- mouseX = _getMousePos.x,
55
- mouseY = _getMousePos.y,
56
- boundWidth = _getMousePos.w,
57
- boundHeight = _getMousePos.h;
58
-
46
+ mouseX = _getMousePos.x,
47
+ mouseY = _getMousePos.y,
48
+ boundWidth = _getMousePos.w,
49
+ boundHeight = _getMousePos.h;
59
50
  var carousel = axisX.carousel,
60
- allTicks = axisX.allTicks,
61
- ticks = axisX.ticks,
62
- scaler = axisX.scaler,
63
- direction = axisX.direction;
64
-
51
+ allTicks = axisX.allTicks,
52
+ ticks = axisX.ticks,
53
+ scaler = axisX.scaler,
54
+ direction = axisX.direction;
65
55
  var _ticks = carousel ? ticks : allTicks;
66
-
67
56
  var ratioX = parseInt(svg.current.style.width) / boundWidth;
68
57
  var ratioY = parseInt(svg.current.style.height) / boundHeight;
69
58
  var resetX = mouseX * ratioX;
70
59
  var resetY = mouseY * ratioY;
71
60
  var x = resetX - marginLeft;
72
61
  var y = resetY - marginTop;
73
-
74
62
  if (x > 0 && x < width && y > 0 && y < height && _ticks.length) {
75
- var position = direction === 'vertical' ? y : x;
76
-
63
+ var position = direction === "vertical" ? y : x;
77
64
  var _name = _ticks.reduce(function (prev, current) {
78
65
  return Math.abs(scaler(prev) - position) > Math.abs(scaler(current) - position) ? current : prev;
79
66
  });
80
-
81
67
  setCurrentIndex(allTicks.findIndex(function (tick) {
82
68
  return tick == _name;
83
69
  }));
@@ -90,17 +76,15 @@ var _default = function _default(_ref) {
90
76
  }
91
77
  }, [svg, marginLeft, axisX, auto]);
92
78
  (0, _react.useEffect)(function () {
93
- var on = auto && tickLength && !isHover; // if (!!on) setCurrentIndex(0);
94
-
79
+ var on = auto && tickLength && !isHover;
80
+ // if (!!on) setCurrentIndex(0);
95
81
  var intervalHandler = on ? setInterval(function () {
96
82
  setCurrentIndex(function (index) {
97
83
  var tmp = index == null ? 0 : index;
98
84
  var currentIndex = tmp + 1;
99
-
100
85
  if (currentIndex >= tickLength) {
101
86
  return 0;
102
87
  }
103
-
104
88
  return currentIndex;
105
89
  });
106
90
  }, interval * 1000) : null;
@@ -115,5 +99,4 @@ var _default = function _default(_ref) {
115
99
  setIndex: manual ? setIndex : callback
116
100
  };
117
101
  };
118
-
119
102
  exports["default"] = _default;
package/lib/index.js CHANGED
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _typeof = require("@babel/runtime/helpers/typeof");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
@@ -9,9 +8,7 @@ var _exportNames = {
9
8
  utils: true
10
9
  };
11
10
  exports.utils = void 0;
12
-
13
11
  var _components = require("./components");
14
-
15
12
  Object.keys(_components).forEach(function (key) {
16
13
  if (key === "default" || key === "__esModule") return;
17
14
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
@@ -23,9 +20,7 @@ Object.keys(_components).forEach(function (key) {
23
20
  }
24
21
  });
25
22
  });
26
-
27
23
  var _hooks = require("./hooks");
28
-
29
24
  Object.keys(_hooks).forEach(function (key) {
30
25
  if (key === "default" || key === "__esModule") return;
31
26
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
@@ -37,9 +32,7 @@ Object.keys(_hooks).forEach(function (key) {
37
32
  }
38
33
  });
39
34
  });
40
-
41
35
  var _context = require("./context");
42
-
43
36
  Object.keys(_context).forEach(function (key) {
44
37
  if (key === "default" || key === "__esModule") return;
45
38
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
@@ -51,9 +44,7 @@ Object.keys(_context).forEach(function (key) {
51
44
  }
52
45
  });
53
46
  });
54
-
55
47
  var _formatter = require("./formatter");
56
-
57
48
  Object.keys(_formatter).forEach(function (key) {
58
49
  if (key === "default" || key === "__esModule") return;
59
50
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
@@ -65,13 +56,9 @@ Object.keys(_formatter).forEach(function (key) {
65
56
  }
66
57
  });
67
58
  });
68
-
69
59
  var _utils = _interopRequireWildcard(require("./utils"));
70
-
71
60
  exports.utils = _utils;
72
-
73
61
  var _utils3 = require("@easyv/utils");
74
-
75
62
  Object.keys(_utils3).forEach(function (key) {
76
63
  if (key === "default" || key === "__esModule") return;
77
64
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
@@ -83,7 +70,5 @@ Object.keys(_utils3).forEach(function (key) {
83
70
  }
84
71
  });
85
72
  });
86
-
87
73
  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); }
88
-
89
74
  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; }