@easyv/charts 1.4.29 → 1.4.31

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