victory-core 36.0.0 → 36.2.2
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.
- package/dist/victory-core.js +3789 -524
- package/dist/victory-core.min.js +1 -1
- package/es/index.d.ts +1 -0
- package/es/index.js +6 -1
- package/es/victory-primitives/point.js +1 -1
- package/es/victory-util/hooks/index.js +2 -0
- package/es/victory-util/{hooks.js → hooks/use-animation-state.js} +2 -9
- package/es/victory-util/hooks/use-previous-props.js +8 -0
- package/es/victory-util/line-helpers.js +45 -0
- package/es/{victory-primitives/path-helpers.js → victory-util/point-path-helpers.js} +0 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +16 -60
- package/lib/victory-primitives/point.js +10 -10
- package/lib/victory-util/hooks/index.js +21 -0
- package/lib/victory-util/{hooks.js → hooks/use-animation-state.js} +3 -14
- package/lib/victory-util/hooks/use-previous-props.js +22 -0
- package/lib/victory-util/line-helpers.js +56 -0
- package/lib/{victory-primitives/path-helpers.js → victory-util/point-path-helpers.js} +0 -0
- package/package.json +2 -2
- package/src/index.d.ts +1 -0
- package/src/index.js +4 -1
- package/src/victory-primitives/point.js +1 -1
- package/src/victory-util/hooks/index.js +2 -0
- package/src/victory-util/{hooks.js → hooks/use-animation-state.js} +2 -10
- package/src/victory-util/hooks/use-previous-props.js +9 -0
- package/src/victory-util/line-helpers.js +54 -0
- /package/src/{victory-primitives/path-helpers.js → victory-util/point-path-helpers.js} +0 -0
package/es/index.d.ts
CHANGED
package/es/index.js
CHANGED
|
@@ -63,4 +63,9 @@ import * as _Axis from "./victory-util/axis";
|
|
|
63
63
|
export { _Axis as Axis };
|
|
64
64
|
export { default as TimerContext } from "./victory-util/timer-context";
|
|
65
65
|
export { default as PortalContext } from "./victory-portal/portal-context";
|
|
66
|
-
|
|
66
|
+
import * as _Hooks from "./victory-util/hooks";
|
|
67
|
+
export { _Hooks as Hooks };
|
|
68
|
+
import * as _LineHelpers from "./victory-util/line-helpers";
|
|
69
|
+
export { _LineHelpers as LineHelpers }; // TODO: Fix this default export
|
|
70
|
+
|
|
71
|
+
export { default as PointPathHelpers } from "./victory-util/point-path-helpers";
|
|
@@ -7,7 +7,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
7
7
|
import React from "react";
|
|
8
8
|
import PropTypes from "prop-types";
|
|
9
9
|
import * as Helpers from "../victory-util/helpers";
|
|
10
|
-
import pathHelpers from "
|
|
10
|
+
import pathHelpers from "../victory-util/point-path-helpers";
|
|
11
11
|
import * as CommonProps from "../victory-util/common-props";
|
|
12
12
|
import Path from "./path";
|
|
13
13
|
|
|
@@ -14,15 +14,8 @@ function _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d =
|
|
|
14
14
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
15
15
|
|
|
16
16
|
import React from "react";
|
|
17
|
-
import * as Collection from "
|
|
18
|
-
import * as Transitions from "
|
|
19
|
-
export var usePreviousProps = function (props) {
|
|
20
|
-
var ref = React.useRef();
|
|
21
|
-
React.useEffect(function () {
|
|
22
|
-
ref.current = props;
|
|
23
|
-
});
|
|
24
|
-
return ref.current || {};
|
|
25
|
-
};
|
|
17
|
+
import * as Collection from "../collection";
|
|
18
|
+
import * as Transitions from "../transitions";
|
|
26
19
|
var INITIAL_STATE = {
|
|
27
20
|
nodesShouldLoad: false,
|
|
28
21
|
nodesDoneLoad: false,
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import * as d3Shape from "d3-shape";
|
|
2
|
+
|
|
3
|
+
var defined = function (d) {
|
|
4
|
+
var y = d._y1 !== undefined ? d._y1 : d._y;
|
|
5
|
+
return y !== null && y !== undefined && d._y0 !== null;
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
var getXAccessor = function (scale) {
|
|
9
|
+
return function (d) {
|
|
10
|
+
return scale.x(d._x1 !== undefined ? d._x1 : d._x);
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
var getYAccessor = function (scale) {
|
|
15
|
+
return function (d) {
|
|
16
|
+
return scale.y(d._y1 !== undefined ? d._y1 : d._y);
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
var getAngleAccessor = function (scale) {
|
|
21
|
+
return function (d) {
|
|
22
|
+
var x = scale.x(d._x1 !== undefined ? d._x1 : d._x);
|
|
23
|
+
return -1 * x + Math.PI / 2;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
var toNewName = function (interpolation) {
|
|
28
|
+
// d3 shape changed the naming scheme for interpolators from "basis" -> "curveBasis" etc.
|
|
29
|
+
var capitalize = function (s) {
|
|
30
|
+
return s && s[0].toUpperCase() + s.slice(1);
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
return "curve".concat(capitalize(interpolation));
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export var getLineFunction = function (props) {
|
|
37
|
+
var polar = props.polar,
|
|
38
|
+
scale = props.scale,
|
|
39
|
+
horizontal = props.horizontal;
|
|
40
|
+
var defaultOpenCurve = polar ? false : true;
|
|
41
|
+
var openCurve = props.openCurve === undefined ? defaultOpenCurve : props.openCurve;
|
|
42
|
+
var interpolationFunction = typeof props.interpolation === "function" && props.interpolation;
|
|
43
|
+
var interpolationName = typeof props.interpolation === "string" && (!openCurve ? "".concat(toNewName(props.interpolation), "Closed") : toNewName(props.interpolation));
|
|
44
|
+
return polar ? d3Shape.lineRadial().defined(defined).curve(interpolationFunction || d3Shape[interpolationName]).angle(getAngleAccessor(scale)).radius(getYAccessor(scale)) : d3Shape.line().defined(defined).curve(interpolationFunction || d3Shape[interpolationName]).x(horizontal ? getYAccessor(scale) : getXAccessor(scale)).y(horizontal ? getXAccessor(scale) : getYAccessor(scale));
|
|
45
|
+
};
|
|
File without changes
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -3,53 +3,6 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
var _exportNames = {
|
|
7
|
-
VictoryAccessibleGroup: true,
|
|
8
|
-
VictoryAnimation: true,
|
|
9
|
-
VictoryContainer: true,
|
|
10
|
-
VictoryLabel: true,
|
|
11
|
-
VictoryTransition: true,
|
|
12
|
-
VictoryClipContainer: true,
|
|
13
|
-
VictoryTheme: true,
|
|
14
|
-
VictoryPortal: true,
|
|
15
|
-
Portal: true,
|
|
16
|
-
Arc: true,
|
|
17
|
-
Background: true,
|
|
18
|
-
Border: true,
|
|
19
|
-
Box: true,
|
|
20
|
-
Circle: true,
|
|
21
|
-
ClipPath: true,
|
|
22
|
-
Line: true,
|
|
23
|
-
LineSegment: true,
|
|
24
|
-
Path: true,
|
|
25
|
-
Point: true,
|
|
26
|
-
Rect: true,
|
|
27
|
-
Text: true,
|
|
28
|
-
TSpan: true,
|
|
29
|
-
Whisker: true,
|
|
30
|
-
addEvents: true,
|
|
31
|
-
Collection: true,
|
|
32
|
-
Data: true,
|
|
33
|
-
DefaultTransitions: true,
|
|
34
|
-
Domain: true,
|
|
35
|
-
Events: true,
|
|
36
|
-
Helpers: true,
|
|
37
|
-
Immutable: true,
|
|
38
|
-
LabelHelpers: true,
|
|
39
|
-
Log: true,
|
|
40
|
-
PropTypes: true,
|
|
41
|
-
Scale: true,
|
|
42
|
-
Selection: true,
|
|
43
|
-
Style: true,
|
|
44
|
-
TextSize: true,
|
|
45
|
-
Timer: true,
|
|
46
|
-
Transitions: true,
|
|
47
|
-
CommonProps: true,
|
|
48
|
-
Wrapper: true,
|
|
49
|
-
Axis: true,
|
|
50
|
-
TimerContext: true,
|
|
51
|
-
PortalContext: true
|
|
52
|
-
};
|
|
53
6
|
Object.defineProperty(exports, "VictoryAccessibleGroup", {
|
|
54
7
|
enumerable: true,
|
|
55
8
|
get: function () {
|
|
@@ -212,7 +165,13 @@ Object.defineProperty(exports, "PortalContext", {
|
|
|
212
165
|
return _portalContext.default;
|
|
213
166
|
}
|
|
214
167
|
});
|
|
215
|
-
|
|
168
|
+
Object.defineProperty(exports, "PointPathHelpers", {
|
|
169
|
+
enumerable: true,
|
|
170
|
+
get: function () {
|
|
171
|
+
return _pointPathHelpers.default;
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
exports.LineHelpers = exports.Hooks = exports.Axis = exports.Wrapper = exports.CommonProps = exports.Transitions = exports.TextSize = exports.Style = exports.Selection = exports.Scale = exports.PropTypes = exports.Log = exports.LabelHelpers = exports.Immutable = exports.Helpers = exports.Events = exports.Domain = exports.DefaultTransitions = exports.Data = exports.Collection = void 0;
|
|
216
175
|
|
|
217
176
|
var _victoryAccessibleGroup = _interopRequireDefault(require("./victory-accessible-group/victory-accessible-group"));
|
|
218
177
|
|
|
@@ -338,18 +297,15 @@ var _timerContext = _interopRequireDefault(require("./victory-util/timer-context
|
|
|
338
297
|
|
|
339
298
|
var _portalContext = _interopRequireDefault(require("./victory-portal/portal-context"));
|
|
340
299
|
|
|
341
|
-
var
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
}
|
|
351
|
-
});
|
|
352
|
-
});
|
|
300
|
+
var _Hooks = _interopRequireWildcard(require("./victory-util/hooks"));
|
|
301
|
+
|
|
302
|
+
exports.Hooks = _Hooks;
|
|
303
|
+
|
|
304
|
+
var _LineHelpers = _interopRequireWildcard(require("./victory-util/line-helpers"));
|
|
305
|
+
|
|
306
|
+
exports.LineHelpers = _LineHelpers;
|
|
307
|
+
|
|
308
|
+
var _pointPathHelpers = _interopRequireDefault(require("./victory-util/point-path-helpers"));
|
|
353
309
|
|
|
354
310
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
|
|
355
311
|
|
|
@@ -13,7 +13,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
13
13
|
|
|
14
14
|
var Helpers = _interopRequireWildcard(require("../victory-util/helpers"));
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _pointPathHelpers = _interopRequireDefault(require("../victory-util/point-path-helpers"));
|
|
17
17
|
|
|
18
18
|
var CommonProps = _interopRequireWildcard(require("../victory-util/common-props"));
|
|
19
19
|
|
|
@@ -38,15 +38,15 @@ var getPath = function (props) {
|
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
var pathFunctions = {
|
|
41
|
-
circle:
|
|
42
|
-
square:
|
|
43
|
-
diamond:
|
|
44
|
-
triangleDown:
|
|
45
|
-
triangleUp:
|
|
46
|
-
plus:
|
|
47
|
-
minus:
|
|
48
|
-
star:
|
|
49
|
-
cross:
|
|
41
|
+
circle: _pointPathHelpers.default.circle,
|
|
42
|
+
square: _pointPathHelpers.default.square,
|
|
43
|
+
diamond: _pointPathHelpers.default.diamond,
|
|
44
|
+
triangleDown: _pointPathHelpers.default.triangleDown,
|
|
45
|
+
triangleUp: _pointPathHelpers.default.triangleUp,
|
|
46
|
+
plus: _pointPathHelpers.default.plus,
|
|
47
|
+
minus: _pointPathHelpers.default.minus,
|
|
48
|
+
star: _pointPathHelpers.default.star,
|
|
49
|
+
cross: _pointPathHelpers.default.cross
|
|
50
50
|
};
|
|
51
51
|
var symbolFunction = typeof pathFunctions[symbol] === "function" ? pathFunctions[symbol] : pathFunctions.circle;
|
|
52
52
|
return symbolFunction(x, y, size);
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "usePreviousProps", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _usePreviousProps.usePreviousProps;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "useAnimationState", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _useAnimationState.useAnimationState;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
var _usePreviousProps = require("./use-previous-props");
|
|
20
|
+
|
|
21
|
+
var _useAnimationState = require("./use-animation-state");
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.useAnimationState =
|
|
6
|
+
exports.useAnimationState = void 0;
|
|
7
7
|
|
|
8
8
|
var _some2 = _interopRequireDefault(require("lodash/some"));
|
|
9
9
|
|
|
@@ -11,9 +11,9 @@ var _defaults2 = _interopRequireDefault(require("lodash/defaults"));
|
|
|
11
11
|
|
|
12
12
|
var _react = _interopRequireDefault(require("react"));
|
|
13
13
|
|
|
14
|
-
var Collection = _interopRequireWildcard(require("
|
|
14
|
+
var Collection = _interopRequireWildcard(require("../collection"));
|
|
15
15
|
|
|
16
|
-
var Transitions = _interopRequireWildcard(require("
|
|
16
|
+
var Transitions = _interopRequireWildcard(require("../transitions"));
|
|
17
17
|
|
|
18
18
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
|
|
19
19
|
|
|
@@ -31,17 +31,6 @@ function _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d =
|
|
|
31
31
|
|
|
32
32
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
33
33
|
|
|
34
|
-
var usePreviousProps = function (props) {
|
|
35
|
-
var ref = _react.default.useRef();
|
|
36
|
-
|
|
37
|
-
_react.default.useEffect(function () {
|
|
38
|
-
ref.current = props;
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
return ref.current || {};
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
exports.usePreviousProps = usePreviousProps;
|
|
45
34
|
var INITIAL_STATE = {
|
|
46
35
|
nodesShouldLoad: false,
|
|
47
36
|
nodesDoneLoad: false,
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.usePreviousProps = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var usePreviousProps = function (props) {
|
|
13
|
+
var ref = _react.default.useRef();
|
|
14
|
+
|
|
15
|
+
_react.default.useEffect(function () {
|
|
16
|
+
ref.current = props;
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
return ref.current || {};
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
exports.usePreviousProps = usePreviousProps;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getLineFunction = void 0;
|
|
7
|
+
|
|
8
|
+
var d3Shape = _interopRequireWildcard(require("d3-shape"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
|
|
11
|
+
|
|
12
|
+
var defined = function (d) {
|
|
13
|
+
var y = d._y1 !== undefined ? d._y1 : d._y;
|
|
14
|
+
return y !== null && y !== undefined && d._y0 !== null;
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
var getXAccessor = function (scale) {
|
|
18
|
+
return function (d) {
|
|
19
|
+
return scale.x(d._x1 !== undefined ? d._x1 : d._x);
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
var getYAccessor = function (scale) {
|
|
24
|
+
return function (d) {
|
|
25
|
+
return scale.y(d._y1 !== undefined ? d._y1 : d._y);
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
var getAngleAccessor = function (scale) {
|
|
30
|
+
return function (d) {
|
|
31
|
+
var x = scale.x(d._x1 !== undefined ? d._x1 : d._x);
|
|
32
|
+
return -1 * x + Math.PI / 2;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
var toNewName = function (interpolation) {
|
|
37
|
+
// d3 shape changed the naming scheme for interpolators from "basis" -> "curveBasis" etc.
|
|
38
|
+
var capitalize = function (s) {
|
|
39
|
+
return s && s[0].toUpperCase() + s.slice(1);
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
return "curve".concat(capitalize(interpolation));
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
var getLineFunction = function (props) {
|
|
46
|
+
var polar = props.polar,
|
|
47
|
+
scale = props.scale,
|
|
48
|
+
horizontal = props.horizontal;
|
|
49
|
+
var defaultOpenCurve = polar ? false : true;
|
|
50
|
+
var openCurve = props.openCurve === undefined ? defaultOpenCurve : props.openCurve;
|
|
51
|
+
var interpolationFunction = typeof props.interpolation === "function" && props.interpolation;
|
|
52
|
+
var interpolationName = typeof props.interpolation === "string" && (!openCurve ? "".concat(toNewName(props.interpolation), "Closed") : toNewName(props.interpolation));
|
|
53
|
+
return polar ? d3Shape.lineRadial().defined(defined).curve(interpolationFunction || d3Shape[interpolationName]).angle(getAngleAccessor(scale)).radius(getYAccessor(scale)) : d3Shape.line().defined(defined).curve(interpolationFunction || d3Shape[interpolationName]).x(horizontal ? getYAccessor(scale) : getXAccessor(scale)).y(horizontal ? getXAccessor(scale) : getYAccessor(scale));
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
exports.getLineFunction = getLineFunction;
|
|
File without changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "victory-core",
|
|
3
|
-
"version": "36.
|
|
3
|
+
"version": "36.2.2",
|
|
4
4
|
"description": "Victory Core",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"data visualization",
|
|
@@ -38,5 +38,5 @@
|
|
|
38
38
|
"version": "yarn run nps build-libs && nps build-dists"
|
|
39
39
|
},
|
|
40
40
|
"sideEffects": false,
|
|
41
|
-
"gitHead": "
|
|
41
|
+
"gitHead": "e09146d4bede80e27ed095fcd7e1167c00fba864"
|
|
42
42
|
}
|
package/src/index.d.ts
CHANGED
package/src/index.js
CHANGED
|
@@ -44,4 +44,7 @@ export * as Wrapper from "./victory-util/wrapper";
|
|
|
44
44
|
export * as Axis from "./victory-util/axis";
|
|
45
45
|
export { default as TimerContext } from "./victory-util/timer-context";
|
|
46
46
|
export { default as PortalContext } from "./victory-portal/portal-context";
|
|
47
|
-
export * from "./victory-util/hooks";
|
|
47
|
+
export * as Hooks from "./victory-util/hooks";
|
|
48
|
+
export * as LineHelpers from "./victory-util/line-helpers";
|
|
49
|
+
// TODO: Fix this default export
|
|
50
|
+
export { default as PointPathHelpers } from "./victory-util/point-path-helpers";
|
|
@@ -2,7 +2,7 @@ import React from "react";
|
|
|
2
2
|
import PropTypes from "prop-types";
|
|
3
3
|
import { assign } from "lodash";
|
|
4
4
|
import * as Helpers from "../victory-util/helpers";
|
|
5
|
-
import pathHelpers from "
|
|
5
|
+
import pathHelpers from "../victory-util/point-path-helpers";
|
|
6
6
|
import * as CommonProps from "../victory-util/common-props";
|
|
7
7
|
import Path from "./path";
|
|
8
8
|
|
|
@@ -1,16 +1,8 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { defaults, some } from "lodash";
|
|
3
3
|
|
|
4
|
-
import * as Collection from "
|
|
5
|
-
import * as Transitions from "
|
|
6
|
-
|
|
7
|
-
export const usePreviousProps = (props) => {
|
|
8
|
-
const ref = React.useRef();
|
|
9
|
-
React.useEffect(() => {
|
|
10
|
-
ref.current = props;
|
|
11
|
-
});
|
|
12
|
-
return ref.current || {};
|
|
13
|
-
};
|
|
4
|
+
import * as Collection from "../collection";
|
|
5
|
+
import * as Transitions from "../transitions";
|
|
14
6
|
|
|
15
7
|
const INITIAL_STATE = {
|
|
16
8
|
nodesShouldLoad: false,
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import * as d3Shape from "d3-shape";
|
|
2
|
+
|
|
3
|
+
const defined = (d) => {
|
|
4
|
+
const y = d._y1 !== undefined ? d._y1 : d._y;
|
|
5
|
+
return y !== null && y !== undefined && d._y0 !== null;
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
const getXAccessor = (scale) => {
|
|
9
|
+
return (d) => scale.x(d._x1 !== undefined ? d._x1 : d._x);
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const getYAccessor = (scale) => {
|
|
13
|
+
return (d) => scale.y(d._y1 !== undefined ? d._y1 : d._y);
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
const getAngleAccessor = (scale) => {
|
|
17
|
+
return (d) => {
|
|
18
|
+
const x = scale.x(d._x1 !== undefined ? d._x1 : d._x);
|
|
19
|
+
return -1 * x + Math.PI / 2;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
const toNewName = (interpolation) => {
|
|
24
|
+
// d3 shape changed the naming scheme for interpolators from "basis" -> "curveBasis" etc.
|
|
25
|
+
const capitalize = (s) => s && s[0].toUpperCase() + s.slice(1);
|
|
26
|
+
return `curve${capitalize(interpolation)}`;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export const getLineFunction = (props) => {
|
|
30
|
+
const { polar, scale, horizontal } = props;
|
|
31
|
+
const defaultOpenCurve = polar ? false : true;
|
|
32
|
+
const openCurve =
|
|
33
|
+
props.openCurve === undefined ? defaultOpenCurve : props.openCurve;
|
|
34
|
+
const interpolationFunction =
|
|
35
|
+
typeof props.interpolation === "function" && props.interpolation;
|
|
36
|
+
const interpolationName =
|
|
37
|
+
typeof props.interpolation === "string" &&
|
|
38
|
+
(!openCurve
|
|
39
|
+
? `${toNewName(props.interpolation)}Closed`
|
|
40
|
+
: toNewName(props.interpolation));
|
|
41
|
+
return polar
|
|
42
|
+
? d3Shape
|
|
43
|
+
.lineRadial()
|
|
44
|
+
.defined(defined)
|
|
45
|
+
.curve(interpolationFunction || d3Shape[interpolationName])
|
|
46
|
+
.angle(getAngleAccessor(scale))
|
|
47
|
+
.radius(getYAccessor(scale))
|
|
48
|
+
: d3Shape
|
|
49
|
+
.line()
|
|
50
|
+
.defined(defined)
|
|
51
|
+
.curve(interpolationFunction || d3Shape[interpolationName])
|
|
52
|
+
.x(horizontal ? getYAccessor(scale) : getXAccessor(scale))
|
|
53
|
+
.y(horizontal ? getXAccessor(scale) : getYAccessor(scale));
|
|
54
|
+
};
|
|
File without changes
|