@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,79 +1,66 @@
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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
-
16
11
  var _react = _interopRequireWildcard(require("react"));
17
-
18
12
  var _context = require("../context");
19
-
20
13
  var _ = require(".");
21
-
22
14
  var _excluded = ["id", "type", "config", "config", "data", "onRelative", "emit", "emitEvent"];
23
-
15
+ /**
16
+ * 总入口,通过外面传进来的type来确定渲染哪种图表,饼环图表为“pie”,否则为轴类图表
17
+ */
24
18
  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
19
  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
20
  var getCallbackData = function getCallbackData(callbacks, data) {
29
21
  var callbackData;
30
-
31
22
  if (callbacks && Array.isArray(callbacks) && callbacks.length && data) {
32
23
  callbackData = {};
33
24
  callbacks.forEach(function (_ref) {
34
25
  var origin = _ref.origin,
35
- target = _ref.target;
26
+ target = _ref.target;
36
27
  callbackData[target] = data[origin];
37
28
  });
38
29
  }
39
-
40
30
  return callbackData;
41
31
  };
42
-
43
32
  var Chart = /*#__PURE__*/(0, _react.memo)(function (_ref2) {
44
33
  var id = _ref2.id,
45
- type = _ref2.type,
46
- config = _ref2.config,
47
- _ref2$config = _ref2.config,
48
- _ref2$config$chart = _ref2$config.chart,
49
- _ref2$config$chart$di = _ref2$config$chart.dimension.chartDimension,
50
- height = _ref2$config$chart$di.height,
51
- width = _ref2$config$chart$di.width,
52
- _ref2$config$chart$ma = _ref2$config$chart.margin,
53
- marginRight = _ref2$config$chart$ma.marginRight,
54
- marginLeft = _ref2$config$chart$ma.marginLeft,
55
- marginBottom = _ref2$config$chart$ma.marginBottom,
56
- marginTop = _ref2$config$chart$ma.marginTop,
57
- interaction = _ref2$config.interaction,
58
- data = _ref2.data,
59
- onRelative = _ref2.onRelative,
60
- emit = _ref2.emit,
61
- emitEvent = _ref2.emitEvent,
62
- props = (0, _objectWithoutProperties2["default"])(_ref2, _excluded);
34
+ type = _ref2.type,
35
+ config = _ref2.config,
36
+ _ref2$config = _ref2.config,
37
+ _ref2$config$chart = _ref2$config.chart,
38
+ _ref2$config$chart$di = _ref2$config$chart.dimension.chartDimension,
39
+ height = _ref2$config$chart$di.height,
40
+ width = _ref2$config$chart$di.width,
41
+ _ref2$config$chart$ma = _ref2$config$chart.margin,
42
+ marginRight = _ref2$config$chart$ma.marginRight,
43
+ marginLeft = _ref2$config$chart$ma.marginLeft,
44
+ marginBottom = _ref2$config$chart$ma.marginBottom,
45
+ marginTop = _ref2$config$chart$ma.marginTop,
46
+ interaction = _ref2$config.interaction,
47
+ data = _ref2.data,
48
+ onRelative = _ref2.onRelative,
49
+ emit = _ref2.emit,
50
+ emitEvent = _ref2.emitEvent,
51
+ props = (0, _objectWithoutProperties2["default"])(_ref2, _excluded);
63
52
  var svg = /*#__PURE__*/(0, _react.createRef)();
64
53
  var chartWidth = width - marginLeft - marginRight;
65
54
  var chartHeight = height - marginTop - marginBottom;
66
55
  var triggerOnRelative = (0, _react.useCallback)(function (data) {
67
56
  if (!interaction) return;
68
57
  var callbacks = interaction.callbacks,
69
- remoteControls = interaction.remoteControls;
58
+ remoteControls = interaction.remoteControls;
70
59
  var callbackData = getCallbackData(callbacks, data);
71
-
72
60
  if (callbackData) {
73
61
  onRelative && onRelative(id, callbackData);
74
62
  remoteControls && emitEvent && remoteControls.forEach(function (o) {
75
63
  var control = JSON.parse(o.control);
76
-
77
64
  if (control.screen && control.type && control.type === 'callback') {
78
65
  emitEvent({
79
66
  screen: control.screen,
@@ -1,45 +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 _react = _interopRequireWildcard(require("react"));
15
-
16
11
  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); }
17
-
18
12
  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; }
19
-
20
13
  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
-
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
-
14
+ 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; } /**
15
+ * svg外框
16
+ */
24
17
  var event = function event() {};
25
-
26
18
  var _default = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
27
19
  var width = _ref.width,
28
- height = _ref.height,
29
- marginLeft = _ref.marginLeft,
30
- marginTop = _ref.marginTop,
31
- style = _ref.style,
32
- children = _ref.children,
33
- _ref$onMouseEnter = _ref.onMouseEnter,
34
- onMouseEnter = _ref$onMouseEnter === void 0 ? event : _ref$onMouseEnter,
35
- _ref$onMouseLeave = _ref.onMouseLeave,
36
- onMouseLeave = _ref$onMouseLeave === void 0 ? event : _ref$onMouseLeave,
37
- _ref$onClick = _ref.onClick,
38
- onClick = _ref$onClick === void 0 ? event : _ref$onClick,
39
- _ref$onMouseMove = _ref.onMouseMove,
40
- onMouseMove = _ref$onMouseMove === void 0 ? event : _ref$onMouseMove,
41
- _ref$onMouseOut = _ref.onMouseOut,
42
- onMouseOut = _ref$onMouseOut === void 0 ? event : _ref$onMouseOut;
20
+ height = _ref.height,
21
+ marginLeft = _ref.marginLeft,
22
+ marginTop = _ref.marginTop,
23
+ style = _ref.style,
24
+ children = _ref.children,
25
+ _ref$onMouseEnter = _ref.onMouseEnter,
26
+ onMouseEnter = _ref$onMouseEnter === void 0 ? event : _ref$onMouseEnter,
27
+ _ref$onMouseLeave = _ref.onMouseLeave,
28
+ onMouseLeave = _ref$onMouseLeave === void 0 ? event : _ref$onMouseLeave,
29
+ _ref$onClick = _ref.onClick,
30
+ onClick = _ref$onClick === void 0 ? event : _ref$onClick,
31
+ _ref$onMouseMove = _ref.onMouseMove,
32
+ onMouseMove = _ref$onMouseMove === void 0 ? event : _ref$onMouseMove,
33
+ _ref$onMouseOut = _ref.onMouseOut,
34
+ onMouseOut = _ref$onMouseOut === void 0 ? event : _ref$onMouseOut;
43
35
  return /*#__PURE__*/_react["default"].createElement("svg", {
44
36
  className: "__easyv-svg",
45
37
  width: width,
@@ -60,5 +52,4 @@ var _default = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef
60
52
  transform: "translate(" + marginLeft + ", " + marginTop + ")"
61
53
  }, children));
62
54
  }));
63
-
64
55
  exports["default"] = _default;
@@ -1,72 +1,56 @@
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 _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
-
14
10
  var _react = _interopRequireWildcard(require("react"));
15
-
16
11
  var _d3v = require("d3v7");
17
-
18
12
  var _utils = require("@easyv/utils/lib/common/utils");
19
-
20
13
  var _indexModule = _interopRequireDefault(require("../css/index.module.css"));
21
-
22
14
  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); }
23
-
24
15
  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; }
25
-
26
- /**
27
- * 饼图装饰内圈
16
+ /**
17
+ * 饼图装饰内圈
28
18
  */
29
19
  var _default = function _default(_ref) {
30
20
  var width = _ref.width,
31
- height = _ref.height,
32
- centerX = _ref.centerX,
33
- centerY = _ref.centerY,
34
- radius = _ref.radius,
35
- _ref$config = _ref.config,
36
- show = _ref$config.show,
37
- innerRadius = _ref$config.innerRadius,
38
- outerRadius = _ref$config.outerRadius,
39
- opacity = _ref$config.opacity,
40
- speed = _ref$config.speed,
41
- direction = _ref$config.direction,
42
- arcs = _ref.arcs;
21
+ height = _ref.height,
22
+ centerX = _ref.centerX,
23
+ centerY = _ref.centerY,
24
+ radius = _ref.radius,
25
+ _ref$config = _ref.config,
26
+ show = _ref$config.show,
27
+ innerRadius = _ref$config.innerRadius,
28
+ outerRadius = _ref$config.outerRadius,
29
+ opacity = _ref$config.opacity,
30
+ speed = _ref$config.speed,
31
+ direction = _ref$config.direction,
32
+ arcs = _ref.arcs;
43
33
  if (!show) return null;
44
-
45
34
  var _useState = (0, _react.useState)(null),
46
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
47
- canvas = _useState2[0],
48
- setCanvas = _useState2[1];
49
-
35
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
36
+ canvas = _useState2[0],
37
+ setCanvas = _useState2[1];
50
38
  (0, _react.useEffect)(function () {
51
39
  if (arcs && arcs.length > 0 && canvas && canvas.getContext('2d')) {
52
40
  var _radius = radius * devicePixelRatio;
53
-
54
41
  var context = canvas.getContext('2d');
55
42
  context.clearRect(0, 0, width * devicePixelRatio, height * devicePixelRatio);
56
43
  context.save();
57
44
  context.translate(centerX * devicePixelRatio, centerY * devicePixelRatio);
58
45
  context.beginPath();
59
-
60
- var _arc = (0, _d3v.arc)().innerRadius(innerRadius * _radius).outerRadius(outerRadius * _radius) // .padAngle(axis.pole.padAngle)
46
+ var _arc = (0, _d3v.arc)().innerRadius(innerRadius * _radius).outerRadius(outerRadius * _radius)
47
+ // .padAngle(axis.pole.padAngle)
61
48
  // .cornerRadius(axis.pole.cornerRadius)
62
49
  .context(context);
63
-
64
50
  arcs.forEach(function (element) {
65
51
  var startAngle = element.arc.startAngle()();
66
52
  var endAngle = element.arc.endAngle()();
67
-
68
53
  _arc.startAngle(startAngle).endAngle(endAngle)();
69
-
70
54
  context.fillStyle = 'rgba(255, 255, 255, 0)';
71
55
  context.fill();
72
56
  });
@@ -75,20 +59,18 @@ var _default = function _default(_ref) {
75
59
  var conic = new ConicalGradient();
76
60
  arcs.reduce(function (reduced, _ref2) {
77
61
  var percent = _ref2.percent,
78
- _ref2$series$color = _ref2.series.color,
79
- type = _ref2$series$color.type,
80
- pure = _ref2$series$color.pure,
81
- stops = _ref2$series$color.linear.stops;
62
+ _ref2$series$color = _ref2.series.color,
63
+ type = _ref2$series$color.type,
64
+ pure = _ref2$series$color.pure,
65
+ stops = _ref2$series$color.linear.stops;
82
66
  var result = reduced + percent / 100;
83
67
  var color = type == 'pure' ? pure : stops[0].color;
84
-
85
68
  if (!!color) {
86
69
  var _converColor = (0, _utils.converColor)(color, 1),
87
- r = _converColor.r,
88
- g = _converColor.g,
89
- b = _converColor.b,
90
- a = _converColor.a;
91
-
70
+ r = _converColor.r,
71
+ g = _converColor.g,
72
+ b = _converColor.b,
73
+ a = _converColor.a;
92
74
  conic.addColorStop(reduced, {
93
75
  r: r,
94
76
  g: g,
@@ -102,7 +84,6 @@ var _default = function _default(_ref) {
102
84
  a: a
103
85
  });
104
86
  }
105
-
106
87
  return result;
107
88
  }, 0);
108
89
  conic.fill(context, 0, 0, _radius, 0, 2 * Math.PI, false);
@@ -127,50 +108,42 @@ var _default = function _default(_ref) {
127
108
  }
128
109
  });
129
110
  };
130
- /**
131
- * ConicalGradient
111
+ /**
112
+ * ConicalGradient
132
113
  */
133
-
134
-
135
114
  exports["default"] = _default;
136
-
137
115
  function ConicalGradient() {
138
116
  this._offsets = [];
139
117
  this._colors = [];
140
118
  }
141
-
142
119
  ConicalGradient.prototype = {
143
- /**
144
- * addColorStop
145
- *
146
- * @param {Number} offset
147
- * @param {Array} color RGBA值
120
+ /**
121
+ * addColorStop
122
+ *
123
+ * @param {Number} offset
124
+ * @param {Array} color RGBA值
148
125
  */
149
126
  addColorStop: function addColorStop(offset, color) {
150
127
  this._offsets.push(offset);
151
-
152
128
  this._colors.push(color);
153
-
154
129
  return this;
155
130
  },
156
-
157
- /**
158
- * _offsetsReverse (array.forEach callback)
131
+ /**
132
+ * _offsetsReverse (array.forEach callback)
159
133
  */
160
134
  _offsetsReverse: function _offsetsReverse(offset, index, array) {
161
135
  array[index] = 1 - offset;
162
136
  },
163
-
164
- /**
165
- * fill
166
- *
167
- * @param {Number} context
168
- * @param {Number} x
169
- * @param {Number} y
170
- * @param {Number} radius
171
- * @param {Number} startAngle
172
- * @param {Number} endAngle
173
- * @param {Boolean} anticlockwise
137
+ /**
138
+ * fill
139
+ *
140
+ * @param {Number} context
141
+ * @param {Number} x
142
+ * @param {Number} y
143
+ * @param {Number} radius
144
+ * @param {Number} startAngle
145
+ * @param {Number} endAngle
146
+ * @param {Boolean} anticlockwise
174
147
  */
175
148
  fill: function fill(context, x, y, radius, startAngle, endAngle, anticlockwise) {
176
149
  var offsets = this._offsets;
@@ -181,7 +154,6 @@ ConicalGradient.prototype = {
181
154
  startAngle %= TWO_PI;
182
155
  if (endAngle < 0) endAngle = endAngle % TWO_PI + TWO_PI;
183
156
  endAngle %= TWO_PI;
184
-
185
157
  if (anticlockwise) {
186
158
  // 逆时针
187
159
  var swap = startAngle;
@@ -191,11 +163,9 @@ ConicalGradient.prototype = {
191
163
  offsets.reverse();
192
164
  offsets.forEach(this._offsetsReverse);
193
165
  }
194
-
195
166
  if (startAngle > endAngle || Math.abs(endAngle - startAngle) < 0.0001) {
196
167
  endAngle += TWO_PI;
197
168
  }
198
-
199
169
  var colorsLength = colors.length;
200
170
  var currentColorIndex = 0;
201
171
  var currentColor = colors[currentColorIndex];
@@ -208,22 +178,21 @@ ConicalGradient.prototype = {
208
178
  var arcStartAngle = startAngle;
209
179
  var arcEndAngle;
210
180
  var r1 = currentColor.r,
211
- g1 = currentColor.g,
212
- b1 = currentColor.b,
213
- a1 = currentColor.a,
214
- r2 = nextColor.r,
215
- g2 = nextColor.g,
216
- b2 = nextColor.b,
217
- a2 = nextColor.a;
181
+ g1 = currentColor.g,
182
+ b1 = currentColor.b,
183
+ a1 = currentColor.a,
184
+ r2 = nextColor.r,
185
+ g2 = nextColor.g,
186
+ b2 = nextColor.b,
187
+ a2 = nextColor.a;
218
188
  if (!a1 && a1 !== 0) a1 = 1;
219
189
  if (!a2 && a2 !== 0) a2 = 1;
220
190
  var rd = r2 - r1,
221
- gd = g2 - g1,
222
- bd = b2 - b1,
223
- ad = a2 - a1;
191
+ gd = g2 - g1,
192
+ bd = b2 - b1,
193
+ ad = a2 - a1;
224
194
  var t, r, g, b, a;
225
195
  context.save();
226
-
227
196
  for (var i = 0, n = 1 / totalAngleDeg; i < 1; i += n) {
228
197
  if (i >= currentOffset) {
229
198
  currentColorIndex++;
@@ -252,7 +221,6 @@ ConicalGradient.prototype = {
252
221
  currentOffset = offsets[currentColorIndex];
253
222
  offsetDist = currentOffset - prevOffset;
254
223
  }
255
-
256
224
  t = (i - prevOffset) / offsetDist;
257
225
  r = rd * t + r1 & 255;
258
226
  g = gd * t + g1 & 255;
@@ -267,7 +235,6 @@ ConicalGradient.prototype = {
267
235
  context.fill();
268
236
  arcStartAngle += stepAngleRad;
269
237
  }
270
-
271
238
  context.restore();
272
239
  return this;
273
240
  }
@@ -1,49 +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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
-
16
11
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
12
  var _react = _interopRequireWildcard(require("react"));
19
-
20
13
  var _d3Scale = require("d3-scale");
21
-
22
14
  var _excluded = ["Component", "yOrZ"];
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
17
  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; }
29
-
30
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; }
31
-
32
19
  var _default = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
33
20
  var _props$props = props.props,
34
- control = _props$props.control,
35
- axes = _props$props.axes,
36
- series = _props$props.series,
37
- xLineRange = _props$props.xLineRange,
38
- yLineRange = _props$props.yLineRange,
39
- marginTop = _props$props.marginTop,
40
- axisX = _props$props.axisX,
41
- bandLength = _props$props.bandLength;
42
-
21
+ control = _props$props.control,
22
+ axes = _props$props.axes,
23
+ series = _props$props.series,
24
+ xLineRange = _props$props.xLineRange,
25
+ yLineRange = _props$props.yLineRange,
26
+ marginTop = _props$props.marginTop,
27
+ axisX = _props$props.axisX,
28
+ bandLength = _props$props.bandLength;
43
29
  var _axisX = _objectSpread(_objectSpread({}, axisX), {}, {
44
30
  scaler: axisX.controlDragScaler
45
31
  });
46
-
47
32
  return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("foreignObject", {
48
33
  style: {
49
34
  width: xLineRange,
@@ -57,11 +42,11 @@ var _default = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef
57
42
  height: "100%"
58
43
  }, series.map(function (_ref, index) {
59
44
  var Component = _ref.Component,
60
- yOrZ = _ref.yOrZ,
61
- config = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
45
+ yOrZ = _ref.yOrZ,
46
+ config = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
62
47
  var yAxis = axes.get(yOrZ);
63
- var cloneYAxis = JSON.parse(JSON.stringify(yAxis)); //todo range
64
-
48
+ var cloneYAxis = JSON.parse(JSON.stringify(yAxis));
49
+ //todo range
65
50
  cloneYAxis.scaler = (0, _d3Scale.scaleLinear)().domain(yAxis.domain).range([control.height, 0]);
66
51
  return yAxis && Component && /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({
67
52
  key: index
@@ -77,5 +62,4 @@ var _default = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef
77
62
  fill: control.drag.color
78
63
  }))));
79
64
  }));
80
-
81
65
  exports["default"] = _default;
@@ -1,37 +1,30 @@
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 _react = require("react");
17
-
18
12
  var _hooks = require("../hooks");
19
-
20
13
  var _excluded = ["axes", "series"],
21
- _excluded2 = ["config", "data"];
22
-
14
+ _excluded2 = ["config", "data"];
15
+ /**
16
+ * 计算X/Y/Z轴的domain,具体的逻辑在useExtentData(HOC)
17
+ */
23
18
  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; }
24
-
25
19
  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; }
26
-
27
20
  var _default = function _default(Component) {
28
21
  return /*#__PURE__*/(0, _react.memo)(function (_ref) {
29
22
  var _ref$config = _ref.config,
30
- axes = _ref$config.axes,
31
- series = _ref$config.series,
32
- config = (0, _objectWithoutProperties2["default"])(_ref$config, _excluded),
33
- data = _ref.data,
34
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded2);
23
+ axes = _ref$config.axes,
24
+ series = _ref$config.series,
25
+ config = (0, _objectWithoutProperties2["default"])(_ref$config, _excluded),
26
+ data = _ref.data,
27
+ props = (0, _objectWithoutProperties2["default"])(_ref, _excluded2);
35
28
  return /*#__PURE__*/React.createElement(Component, (0, _extends2["default"])({}, props, {
36
29
  config: _objectSpread(_objectSpread({}, config), {}, {
37
30
  axes: (0, _hooks.useExtentData)({
@@ -45,5 +38,4 @@ var _default = function _default(Component) {
45
38
  }));
46
39
  });
47
40
  };
48
-
49
41
  exports["default"] = _default;
@@ -1,49 +1,39 @@
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 _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
-
18
12
  var _react = require("react");
19
-
20
13
  var _hooks = require("../hooks");
21
-
22
14
  var _excluded = ["series"],
23
- _excluded2 = ["config", "data"];
24
-
15
+ _excluded2 = ["config", "data"];
16
+ /**
17
+ * 点击图例进行数据筛选,具体逻辑在useFilterData(HOC)
18
+ */
25
19
  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
20
  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
21
  var _default = function _default(Component) {
30
22
  return /*#__PURE__*/(0, _react.memo)(function (_ref) {
31
23
  var _ref$config = _ref.config,
32
- series = _ref$config.series,
33
- config = (0, _objectWithoutProperties2["default"])(_ref$config, _excluded),
34
- data = _ref.data,
35
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded2);
36
-
24
+ series = _ref$config.series,
25
+ config = (0, _objectWithoutProperties2["default"])(_ref$config, _excluded),
26
+ data = _ref.data,
27
+ props = (0, _objectWithoutProperties2["default"])(_ref, _excluded2);
37
28
  var _useFilterData = (0, _hooks.useFilterData)({
38
- series: series,
39
- data: data
40
- }),
41
- _useFilterData2 = (0, _slicedToArray2["default"])(_useFilterData, 2),
42
- _useFilterData2$ = _useFilterData2[0],
43
- _series = _useFilterData2$.series,
44
- filteredData = _useFilterData2$.data,
45
- filterData = _useFilterData2[1];
46
-
29
+ series: series,
30
+ data: data
31
+ }),
32
+ _useFilterData2 = (0, _slicedToArray2["default"])(_useFilterData, 2),
33
+ _useFilterData2$ = _useFilterData2[0],
34
+ _series = _useFilterData2$.series,
35
+ filteredData = _useFilterData2$.data,
36
+ filterData = _useFilterData2[1];
47
37
  return /*#__PURE__*/React.createElement(Component, (0, _extends2["default"])({}, props, {
48
38
  config: _objectSpread(_objectSpread({}, config), {}, {
49
39
  series: _series
@@ -53,5 +43,4 @@ var _default = function _default(Component) {
53
43
  }));
54
44
  });
55
45
  };
56
-
57
46
  exports["default"] = _default;