@easyv/charts 1.7.24 → 1.7.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.
@@ -393,20 +393,22 @@ var Chart = /*#__PURE__*/(0, _react.memo)(function (_ref) {
393
393
  var mouseleave = function mouseleave() {
394
394
  isEnter = false;
395
395
  };
396
+ var svgDom = svg.current;
397
+ var controlDom = controlEl.current;
396
398
  if (hover) {
397
- svg.current.addEventListener("mouseenter", mouseenter);
398
- svg.current.addEventListener("mouseleave", mouseleave);
399
- controlEl.current.addEventListener("mouseenter", mouseenter);
400
- controlEl.current.addEventListener("mouseleave", mouseleave);
399
+ svgDom && svgDom.addEventListener("mouseenter", mouseenter);
400
+ svgDom && svgDom.addEventListener("mouseleave", mouseleave);
401
+ controlDom && controlDom.addEventListener("mouseenter", mouseenter);
402
+ controlDom && controlDom.addEventListener("mouseleave", mouseleave);
401
403
  }
402
404
  if (show) {
403
405
  startAnimate();
404
406
  }
405
407
  return function () {
406
- svg.current.removeEventListener("mouseenter", mouseenter);
407
- svg.current.removeEventListener("mouseleave", mouseleave);
408
- controlEl.current.removeEventListener("mouseenter", mouseenter);
409
- controlEl.current.removeEventListener("mouseleave", mouseleave);
408
+ svgDom && svgDom.removeEventListener("mouseenter", mouseenter);
409
+ svgDom && svgDom.removeEventListener("mouseleave", mouseleave);
410
+ controlDom && controlDom.removeEventListener("mouseenter", mouseenter);
411
+ controlDom && controlDom.removeEventListener("mouseleave", mouseleave);
410
412
  cancelAnimationFrame(controlTimer.current);
411
413
  };
412
414
  }
@@ -441,11 +443,12 @@ var Chart = /*#__PURE__*/(0, _react.memo)(function (_ref) {
441
443
  });
442
444
  }, [tooltipX, tickName]);
443
445
  (0, _react.useEffect)(function () {
444
- svg.current.addEventListener("touchmove", setTouchIndex, {
446
+ var svgDom = svg.current;
447
+ svgDom && svgDom.addEventListener("touchmove", setTouchIndex, {
445
448
  passive: false
446
449
  });
447
450
  return function () {
448
- svg.current.removeEventListener("touchmove", setTouchIndex);
451
+ svgDom && svgDom.removeEventListener("touchmove", setTouchIndex);
449
452
  };
450
453
  }, [control]);
451
454
  return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_.ChartContainer, {
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports["default"] = void 0;
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
12
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
@@ -19,6 +20,8 @@ var _excluded = ["id", "type", "config", "config", "data", "onRelative", "emit",
19
20
  */
20
21
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
21
22
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
23
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
22
25
  var getCallbackData = function getCallbackData(action, callbacks, data) {
23
26
  var callbackData = {};
24
27
  if (callbacks && Array.isArray(callbacks) && callbacks.length && data) {
@@ -115,7 +118,7 @@ var Chart = /*#__PURE__*/(0, _react.memo)(function (_ref2) {
115
118
  document.removeEventListener("resize", getScreenScale);
116
119
  };
117
120
  }, []);
118
- var data = originData;
121
+ var data = checkData(originData);
119
122
  return /*#__PURE__*/_react["default"].createElement(_context.chartContext.Provider, {
120
123
  value: context
121
124
  }, type == 'pie' ? /*#__PURE__*/_react["default"].createElement(_.PieChart, (0, _extends2["default"])({
@@ -142,5 +145,22 @@ var Chart = /*#__PURE__*/(0, _react.memo)(function (_ref2) {
142
145
  }
143
146
  }, 50);
144
147
  }
148
+ //预检数据格式是否规范
149
+ function checkData(data) {
150
+ try {
151
+ var hasS = data.some(function (d) {
152
+ return d.s !== undefined;
153
+ });
154
+ if (!hasS) {
155
+ return data.map(function (d) {
156
+ return _objectSpread(_objectSpread({}, d), {}, {
157
+ s: "系列一"
158
+ });
159
+ });
160
+ }
161
+ return data;
162
+ } catch (e) {}
163
+ return [];
164
+ }
145
165
  });
146
166
  var _default = exports["default"] = Chart;
@@ -67,7 +67,8 @@ var _default = exports["default"] = function _default(_ref) {
67
67
  }, [selected, series]);
68
68
  var _data = (0, _react.useMemo)(function () {
69
69
  return data.filter(function (_ref2) {
70
- var s = _ref2.s;
70
+ var _ref2$s = _ref2.s,
71
+ s = _ref2$s === void 0 ? "" : _ref2$s;
71
72
  return s && _series.get(s) && _series.get(s).selected;
72
73
  });
73
74
  }, [data, _series]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@easyv/charts",
3
- "version": "1.7.24",
3
+ "version": "1.7.26",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -370,20 +370,22 @@ const Chart = memo(
370
370
  const mouseleave = () => {
371
371
  isEnter = false;
372
372
  };
373
+ const svgDom = svg.current;
374
+ const controlDom = controlEl.current;
373
375
  if(hover){
374
- svg.current.addEventListener("mouseenter",mouseenter);
375
- svg.current.addEventListener("mouseleave",mouseleave);
376
- controlEl.current.addEventListener("mouseenter",mouseenter);
377
- controlEl.current.addEventListener("mouseleave",mouseleave);
376
+ svgDom && svgDom.addEventListener("mouseenter",mouseenter);
377
+ svgDom && svgDom.addEventListener("mouseleave",mouseleave);
378
+ controlDom && controlDom.addEventListener("mouseenter",mouseenter);
379
+ controlDom && controlDom.addEventListener("mouseleave",mouseleave);
378
380
  }
379
381
  if(show){
380
382
  startAnimate();
381
383
  }
382
384
  return () => {
383
- svg.current.removeEventListener("mouseenter",mouseenter);
384
- svg.current.removeEventListener("mouseleave",mouseleave);
385
- controlEl.current.removeEventListener("mouseenter",mouseenter);
386
- controlEl.current.removeEventListener("mouseleave",mouseleave);
385
+ svgDom && svgDom.removeEventListener("mouseenter",mouseenter);
386
+ svgDom && svgDom.removeEventListener("mouseleave",mouseleave);
387
+ controlDom && controlDom.removeEventListener("mouseenter",mouseenter);
388
+ controlDom && controlDom.removeEventListener("mouseleave",mouseleave);
387
389
  cancelAnimationFrame(controlTimer.current);
388
390
  };
389
391
  }
@@ -409,9 +411,10 @@ const Chart = memo(
409
411
  })
410
412
  },[tooltipX, tickName]);
411
413
  useEffect(()=>{
412
- svg.current.addEventListener("touchmove", setTouchIndex, {passive:false});
414
+ const svgDom = svg.current;
415
+ svgDom && svgDom.addEventListener("touchmove", setTouchIndex, {passive:false});
413
416
  return ()=>{
414
- svg.current.removeEventListener("touchmove", setTouchIndex);
417
+ svgDom && svgDom.removeEventListener("touchmove", setTouchIndex);
415
418
  }
416
419
  },[control]);
417
420
 
@@ -106,7 +106,7 @@ const Chart = memo(
106
106
  }
107
107
  },[]);
108
108
 
109
- let data = originData;
109
+ let data = checkData(originData);
110
110
 
111
111
  return (
112
112
  <chartContext.Provider value={context}>
@@ -131,6 +131,22 @@ const Chart = memo(
131
131
  }
132
132
  },50);
133
133
  }
134
+ //预检数据格式是否规范
135
+ function checkData(data){
136
+ try{
137
+ const hasS = data.some(d=>d.s!==undefined);
138
+ if(!hasS){
139
+ return data.map(d=>{
140
+ return {
141
+ ...d,
142
+ s:"系列一"
143
+ }
144
+ })
145
+ }
146
+ return data;
147
+ }catch(e){}
148
+ return [];
149
+ }
134
150
  }
135
151
  );
136
152
 
@@ -41,9 +41,8 @@ export default ({ data, series }) => {
41
41
  });
42
42
  return tmp;
43
43
  }, [selected, series]);
44
-
45
44
  const _data = useMemo(() => {
46
- return data.filter(({ s }) => {
45
+ return data.filter(({ s="" }) => {
47
46
  return s && _series.get(s) && _series.get(s).selected;
48
47
  });
49
48
  }, [data, _series]);