@obitrain/charts 0.10.4 → 0.12.0
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/README.md +6 -4
- package/lib/commonjs/Charts/BottomAxis/AxisLine.js +1 -1
- package/lib/commonjs/Charts/BottomAxis/BottomAxis.js +54 -14
- package/lib/commonjs/Charts/BottomAxis/BottomAxis.js.map +1 -1
- package/lib/commonjs/Charts/BottomAxis/Tick.js +29 -13
- package/lib/commonjs/Charts/BottomAxis/Tick.js.map +1 -1
- package/lib/commonjs/Charts/BottomAxis/index.js.map +1 -1
- package/lib/commonjs/Charts/Cursor.js +33 -13
- package/lib/commonjs/Charts/Cursor.js.map +1 -1
- package/lib/commonjs/Charts/Dot.js +51 -0
- package/lib/commonjs/Charts/Dot.js.map +1 -0
- package/lib/commonjs/Charts/Dots.js +74 -0
- package/lib/commonjs/Charts/Dots.js.map +1 -0
- package/lib/commonjs/Charts/Linechart/index.js +1 -1
- package/lib/commonjs/Charts/YAxis.js +77 -0
- package/lib/commonjs/Charts/YAxis.js.map +1 -0
- package/lib/commonjs/Charts/ZoomableLinechart/ScalablePath.js +5 -4
- package/lib/commonjs/Charts/ZoomableLinechart/ScalablePath.js.map +1 -1
- package/lib/commonjs/Charts/ZoomableLinechart/index.js +1 -1
- package/lib/commonjs/Charts/gesture.js +90 -38
- package/lib/commonjs/Charts/gesture.js.map +1 -1
- package/lib/commonjs/Charts/graphUtils.js +69 -16
- package/lib/commonjs/Charts/graphUtils.js.map +1 -1
- package/lib/commonjs/Charts/index.js +39 -0
- package/lib/commonjs/Charts/index.js.map +1 -1
- package/lib/commonjs/Charts/maths.js +107 -16
- package/lib/commonjs/Charts/maths.js.map +1 -1
- package/lib/module/Charts/BottomAxis/AxisLine.js +1 -1
- package/lib/module/Charts/BottomAxis/AxisLine.js.map +1 -1
- package/lib/module/Charts/BottomAxis/BottomAxis.js +56 -15
- package/lib/module/Charts/BottomAxis/BottomAxis.js.map +1 -1
- package/lib/module/Charts/BottomAxis/Tick.js +29 -11
- package/lib/module/Charts/BottomAxis/Tick.js.map +1 -1
- package/lib/module/Charts/BottomAxis/index.js.map +1 -1
- package/lib/module/Charts/Cursor.js +35 -15
- package/lib/module/Charts/Cursor.js.map +1 -1
- package/lib/module/Charts/Dot.js +47 -0
- package/lib/module/Charts/Dot.js.map +1 -0
- package/lib/module/Charts/Dots.js +70 -0
- package/lib/module/Charts/Dots.js.map +1 -0
- package/lib/module/Charts/Linechart/index.js +1 -1
- package/lib/module/Charts/Linechart/index.js.map +1 -1
- package/lib/module/Charts/YAxis.js +73 -0
- package/lib/module/Charts/YAxis.js.map +1 -0
- package/lib/module/Charts/ZoomableLinechart/ScalablePath.js +5 -4
- package/lib/module/Charts/ZoomableLinechart/ScalablePath.js.map +1 -1
- package/lib/module/Charts/ZoomableLinechart/index.js +1 -1
- package/lib/module/Charts/ZoomableLinechart/index.js.map +1 -1
- package/lib/module/Charts/gesture.js +90 -39
- package/lib/module/Charts/gesture.js.map +1 -1
- package/lib/module/Charts/graphUtils.js +71 -18
- package/lib/module/Charts/graphUtils.js.map +1 -1
- package/lib/module/Charts/index.js +5 -2
- package/lib/module/Charts/index.js.map +1 -1
- package/lib/module/Charts/maths.js +101 -14
- package/lib/module/Charts/maths.js.map +1 -1
- package/lib/typescript/commonjs/src/Charts/BottomAxis/AxisLine.d.ts +1 -1
- package/lib/typescript/commonjs/src/Charts/BottomAxis/AxisLine.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Charts/BottomAxis/BottomAxis.d.ts +26 -3
- package/lib/typescript/commonjs/src/Charts/BottomAxis/BottomAxis.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Charts/BottomAxis/Tick.d.ts +16 -3
- package/lib/typescript/commonjs/src/Charts/BottomAxis/Tick.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Charts/BottomAxis/index.d.ts +1 -1
- package/lib/typescript/commonjs/src/Charts/BottomAxis/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Charts/Cursor.d.ts +5 -2
- package/lib/typescript/commonjs/src/Charts/Cursor.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Charts/Dot.d.ts +22 -0
- package/lib/typescript/commonjs/src/Charts/Dot.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/Charts/Dots.d.ts +28 -0
- package/lib/typescript/commonjs/src/Charts/Dots.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/Charts/Linechart/index.d.ts +1 -1
- package/lib/typescript/commonjs/src/Charts/Linechart/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Charts/YAxis.d.ts +21 -0
- package/lib/typescript/commonjs/src/Charts/YAxis.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/Charts/ZoomableLinechart/ScalablePath.d.ts +2 -2
- package/lib/typescript/commonjs/src/Charts/ZoomableLinechart/ScalablePath.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Charts/ZoomableLinechart/index.d.ts +1 -1
- package/lib/typescript/commonjs/src/Charts/ZoomableLinechart/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Charts/gesture.d.ts +6 -0
- package/lib/typescript/commonjs/src/Charts/gesture.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Charts/graphUtils.d.ts +1 -1
- package/lib/typescript/commonjs/src/Charts/graphUtils.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Charts/index.d.ts +9 -3
- package/lib/typescript/commonjs/src/Charts/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Charts/maths.d.ts +15 -1
- package/lib/typescript/commonjs/src/Charts/maths.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/BottomAxis/AxisLine.d.ts +1 -1
- package/lib/typescript/module/src/Charts/BottomAxis/AxisLine.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/BottomAxis/BottomAxis.d.ts +26 -3
- package/lib/typescript/module/src/Charts/BottomAxis/BottomAxis.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/BottomAxis/Tick.d.ts +16 -3
- package/lib/typescript/module/src/Charts/BottomAxis/Tick.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/BottomAxis/index.d.ts +1 -1
- package/lib/typescript/module/src/Charts/BottomAxis/index.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/Cursor.d.ts +5 -2
- package/lib/typescript/module/src/Charts/Cursor.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/Dot.d.ts +22 -0
- package/lib/typescript/module/src/Charts/Dot.d.ts.map +1 -0
- package/lib/typescript/module/src/Charts/Dots.d.ts +28 -0
- package/lib/typescript/module/src/Charts/Dots.d.ts.map +1 -0
- package/lib/typescript/module/src/Charts/Linechart/index.d.ts +1 -1
- package/lib/typescript/module/src/Charts/Linechart/index.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/YAxis.d.ts +21 -0
- package/lib/typescript/module/src/Charts/YAxis.d.ts.map +1 -0
- package/lib/typescript/module/src/Charts/ZoomableLinechart/ScalablePath.d.ts +2 -2
- package/lib/typescript/module/src/Charts/ZoomableLinechart/ScalablePath.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/ZoomableLinechart/index.d.ts +1 -1
- package/lib/typescript/module/src/Charts/ZoomableLinechart/index.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/gesture.d.ts +6 -0
- package/lib/typescript/module/src/Charts/gesture.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/graphUtils.d.ts +1 -1
- package/lib/typescript/module/src/Charts/graphUtils.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/index.d.ts +9 -3
- package/lib/typescript/module/src/Charts/index.d.ts.map +1 -1
- package/lib/typescript/module/src/Charts/maths.d.ts +15 -1
- package/lib/typescript/module/src/Charts/maths.d.ts.map +1 -1
- package/package.json +5 -5
- package/src/Charts/BottomAxis/AxisLine.tsx +1 -1
- package/src/Charts/BottomAxis/BottomAxis.tsx +100 -19
- package/src/Charts/BottomAxis/Tick.tsx +61 -15
- package/src/Charts/BottomAxis/index.tsx +5 -1
- package/src/Charts/Cursor.tsx +38 -10
- package/src/Charts/Dot.tsx +64 -0
- package/src/Charts/Dots.tsx +96 -0
- package/src/Charts/Linechart/index.tsx +1 -1
- package/src/Charts/YAxis.tsx +103 -0
- package/src/Charts/ZoomableLinechart/ScalablePath.tsx +8 -9
- package/src/Charts/ZoomableLinechart/index.tsx +1 -1
- package/src/Charts/gesture.ts +132 -71
- package/src/Charts/graphUtils.ts +78 -16
- package/src/Charts/index.tsx +9 -0
- package/src/Charts/maths.ts +107 -16
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.useUpdateAxis = exports.useScalableGesture = exports.useCursorGesture = exports.getPositionWl = exports.getClosestPoint = void 0;
|
|
7
|
-
var _reactNativeSkia = require("
|
|
6
|
+
exports.useUpdateAxis = exports.useScalableGesture = exports.useCursorGesture = exports.getPositionWl = exports.getOffsetBoundsWl = exports.getClosestPoint = void 0;
|
|
7
|
+
var _reactNativeSkia = require("react-native-skia");
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _reactNativeGestureHandler = require("react-native-gesture-handler");
|
|
10
10
|
var _reactNativeReanimated = require("react-native-reanimated");
|
|
@@ -18,7 +18,21 @@ const getPositionWl = function (position, focalX, scale, offsetX) {
|
|
|
18
18
|
|
|
19
19
|
return (position - focalX) * scale + focalX + offsetX;
|
|
20
20
|
};
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Offset range keeping the content edges pinned to the viewport:
|
|
24
|
+
* leftBound (position 0) <= startOffset and rightBound (position width)
|
|
25
|
+
* >= width + startOffset. Collapses to [startOffset, startOffset] at scale 1.
|
|
26
|
+
*/
|
|
21
27
|
exports.getPositionWl = getPositionWl;
|
|
28
|
+
const getOffsetBoundsWl = function (width, startOffset, focalX, scale) {
|
|
29
|
+
'worklet';
|
|
30
|
+
|
|
31
|
+
const maxOffset = startOffset + focalX * (scale - 1);
|
|
32
|
+
const minOffset = startOffset + (1 - scale) * (width - focalX);
|
|
33
|
+
return [minOffset, maxOffset];
|
|
34
|
+
};
|
|
35
|
+
exports.getOffsetBoundsWl = getOffsetBoundsWl;
|
|
22
36
|
/**
|
|
23
37
|
* Return utilities for zooming and panning the axis
|
|
24
38
|
*/
|
|
@@ -37,6 +51,8 @@ const useScalableGesture = props => {
|
|
|
37
51
|
// For panning
|
|
38
52
|
const offsetX = (0, _reactNativeReanimated.useSharedValue)(startOffset);
|
|
39
53
|
const lastOffsetX = (0, _reactNativeReanimated.useSharedValue)(startOffset);
|
|
54
|
+
// Pinch pivot bookkeeping (see pinchGesture)
|
|
55
|
+
const needsPivot = (0, _reactNativeReanimated.useSharedValue)(true);
|
|
40
56
|
const reset = (0, _react.useCallback)(() => {
|
|
41
57
|
scale.value = startScale;
|
|
42
58
|
lastScale.value = startScale;
|
|
@@ -45,37 +61,56 @@ const useScalableGesture = props => {
|
|
|
45
61
|
offsetX.value = startOffset;
|
|
46
62
|
lastOffsetX.value = startOffset;
|
|
47
63
|
}, [focalX, lastFocalX, lastOffsetX, lastScale, offsetX, scale, startOffset, startScale]);
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
64
|
+
|
|
65
|
+
// Memoized: handing a new gesture instance to GestureDetector mid-gesture
|
|
66
|
+
// resets the active pan and makes the chart jump
|
|
67
|
+
const panGesture = (0, _react.useMemo)(() => _reactNativeGestureHandler.Gesture.Pan()
|
|
68
|
+
// Single-finger only: two fingers belong to the pinch, whose focal
|
|
69
|
+
// rebase would otherwise fight the pan over offsetX
|
|
70
|
+
.maxPointers(1)
|
|
71
|
+
// Incremental deltas (changeX) with a live clamp keep the content
|
|
72
|
+
// edges pinned: no overscroll, no snap-back to interrupt
|
|
73
|
+
.onChange(event => {
|
|
74
|
+
const [minOffset, maxOffset] = getOffsetBoundsWl(width, startOffset, focalX.value, scale.value);
|
|
75
|
+
offsetX.value = (0, _reactNativeSkia.clamp)(offsetX.value + event.changeX, minOffset, maxOffset);
|
|
51
76
|
}).onEnd(() => {
|
|
52
77
|
lastScale.value = scale.value;
|
|
53
78
|
lastFocalX.value = focalX.value;
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
79
|
+
lastOffsetX.value = offsetX.value;
|
|
80
|
+
}), [focalX, lastFocalX, lastOffsetX, lastScale, offsetX, scale, startOffset, width]);
|
|
81
|
+
const pinchGesture = (0, _react.useMemo)(() => _reactNativeGestureHandler.Gesture.Pinch().onStart(() => {
|
|
82
|
+
needsPivot.value = true;
|
|
83
|
+
}).onUpdate(event => {
|
|
84
|
+
// The pinch can keep firing in the single-finger tail of the
|
|
85
|
+
// gesture, tracking the remaining finger as its focal: ignore it
|
|
86
|
+
// (numberOfPointers is missing on web — let those through)
|
|
87
|
+
if ((event.numberOfPointers ?? 2) < 2) {
|
|
88
|
+
needsPivot.value = true;
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
const prevScale = scale.value;
|
|
92
|
+
const newScale = (0, _reactNativeSkia.clamp)(lastScale.value * event.scale, 1, Infinity);
|
|
93
|
+
if (needsPivot.value) {
|
|
94
|
+
// New pivot: rebase offsetX so re-anchoring under the fingers
|
|
95
|
+
// doesn't shift the content
|
|
96
|
+
const rebased = offsetX.value + (focalX.value - event.focalX) * (1 - prevScale);
|
|
97
|
+
offsetX.value = rebased * newScale / prevScale;
|
|
98
|
+
needsPivot.value = false;
|
|
61
99
|
} else {
|
|
62
|
-
|
|
100
|
+
// Keep the content glued to both fingers: the offset follows the
|
|
101
|
+
// focal translation and rescales with the zoom
|
|
102
|
+
offsetX.value = (event.focalX - focalX.value + offsetX.value / prevScale) * newScale;
|
|
63
103
|
}
|
|
64
|
-
offsetX.value = (0, _reactNativeReanimated.withTiming)(newOffset, {
|
|
65
|
-
duration: 300
|
|
66
|
-
});
|
|
67
|
-
lastOffsetX.value = newOffset;
|
|
68
|
-
});
|
|
69
|
-
const pinchGesture = _reactNativeGestureHandler.Gesture.Pinch().onUpdate(event => {
|
|
70
|
-
// Rebase offsetX so moving the focal point doesn't shift the content
|
|
71
|
-
offsetX.value += (focalX.value - event.focalX) * (1 - scale.value);
|
|
72
104
|
focalX.value = event.focalX;
|
|
73
|
-
scale.value =
|
|
105
|
+
scale.value = newScale;
|
|
106
|
+
// Zooming moves the bounds: keep the content edges pinned
|
|
107
|
+
const [minOffset, maxOffset] = getOffsetBoundsWl(width, startOffset, focalX.value, scale.value);
|
|
108
|
+
offsetX.value = (0, _reactNativeSkia.clamp)(offsetX.value, minOffset, maxOffset);
|
|
74
109
|
}).onEnd(() => {
|
|
75
110
|
lastScale.value = scale.value;
|
|
76
111
|
lastFocalX.value = focalX.value;
|
|
77
112
|
lastOffsetX.value = offsetX.value;
|
|
78
|
-
});
|
|
113
|
+
}), [focalX, lastFocalX, lastOffsetX, lastScale, needsPivot, offsetX, scale, startOffset, width]);
|
|
79
114
|
return {
|
|
80
115
|
scale,
|
|
81
116
|
focalX,
|
|
@@ -93,6 +128,14 @@ const useUpdateAxis = function (props) {
|
|
|
93
128
|
onScaleChange
|
|
94
129
|
} = props;
|
|
95
130
|
const currentIndex = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
131
|
+
|
|
132
|
+
// Stable dispatcher so an inline onScaleChange doesn't re-register the
|
|
133
|
+
// reaction (and disturb the UI thread) on every render
|
|
134
|
+
const onScaleChangeRef = (0, _react.useRef)(onScaleChange);
|
|
135
|
+
onScaleChangeRef.current = onScaleChange;
|
|
136
|
+
const dispatchScaleChange = (0, _react.useCallback)(index => {
|
|
137
|
+
onScaleChangeRef.current?.(index);
|
|
138
|
+
}, []);
|
|
96
139
|
(0, _reactNativeReanimated.useAnimatedReaction)(() => scale.value, (currentScale, _) => {
|
|
97
140
|
for (let i = 0; i < scales.length; i++) {
|
|
98
141
|
const _prevScale = scales[i - 1] ?? 0;
|
|
@@ -100,11 +143,11 @@ const useUpdateAxis = function (props) {
|
|
|
100
143
|
if (_curScale === undefined || _prevScale === undefined) throw new Error('Got undefined scale');
|
|
101
144
|
if (currentScale >= _prevScale && currentScale < _curScale && currentIndex.value !== i) {
|
|
102
145
|
currentIndex.value = i;
|
|
103
|
-
|
|
146
|
+
(0, _reactNativeWorklets.scheduleOnRN)(dispatchScaleChange, i);
|
|
104
147
|
break;
|
|
105
148
|
}
|
|
106
149
|
}
|
|
107
|
-
});
|
|
150
|
+
}, [scales, dispatchScaleChange]);
|
|
108
151
|
return {
|
|
109
152
|
currentIndex
|
|
110
153
|
};
|
|
@@ -146,20 +189,29 @@ const useCursorGesture = function (props) {
|
|
|
146
189
|
if (!isContinuous && points === undefined) console.warn('Points must be defined for non-continuous mode');
|
|
147
190
|
const xPosition = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
148
191
|
const yPosition = (0, _reactNativeReanimated.useSharedValue)(height);
|
|
149
|
-
const setPosition = (x, y) => {
|
|
150
|
-
'worklet';
|
|
151
192
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
const
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
193
|
+
// Memoized: a new gesture instance on every render can reset an active pan
|
|
194
|
+
const {
|
|
195
|
+
panGesture,
|
|
196
|
+
tapGesture
|
|
197
|
+
} = (0, _react.useMemo)(() => {
|
|
198
|
+
const setPosition = (x, y) => {
|
|
199
|
+
'worklet';
|
|
200
|
+
|
|
201
|
+
yPosition.value = (0, _reactNativeSkia.clamp)(y, 0, height);
|
|
202
|
+
if (isContinuous || points === undefined) {
|
|
203
|
+
xPosition.value = (0, _reactNativeSkia.clamp)(x, 0, width);
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
206
|
+
const _closestDot = getClosestPoint((0, _reactNativeSkia.clamp)(x, 0, width), points.value);
|
|
207
|
+
if (closestDataPoint !== undefined) closestDataPoint.value = _closestDot;
|
|
208
|
+
xPosition.value = _closestDot.x;
|
|
209
|
+
};
|
|
210
|
+
return {
|
|
211
|
+
panGesture: _reactNativeGestureHandler.Gesture.Pan().onBegin(event => setPosition(event.x, event.y)).onUpdate(event => setPosition(event.x, event.y)),
|
|
212
|
+
tapGesture: _reactNativeGestureHandler.Gesture.Tap().onBegin(event => setPosition(event.x, event.y))
|
|
213
|
+
};
|
|
214
|
+
}, [width, height, isContinuous, points, closestDataPoint, xPosition, yPosition]);
|
|
163
215
|
|
|
164
216
|
// Re-snap the cursor when the data points change (e.g. switching graphs)
|
|
165
217
|
(0, _reactNativeReanimated.useAnimatedReaction)(() => points?.value, _points => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeSkia","require","_react","_reactNativeGestureHandler","_reactNativeReanimated","_reactNativeWorklets","getPositionWl","position","focalX","scale","offsetX","exports","
|
|
1
|
+
{"version":3,"names":["_reactNativeSkia","require","_react","_reactNativeGestureHandler","_reactNativeReanimated","_reactNativeWorklets","getPositionWl","position","focalX","scale","offsetX","exports","getOffsetBoundsWl","width","startOffset","maxOffset","minOffset","useScalableGesture","props","startScale","useSharedValue","lastScale","lastFocalX","lastOffsetX","needsPivot","reset","useCallback","value","panGesture","useMemo","Gesture","Pan","maxPointers","onChange","event","clamp","changeX","onEnd","pinchGesture","Pinch","onStart","onUpdate","numberOfPointers","prevScale","newScale","Infinity","rebased","useUpdateAxis","scales","onScaleChange","currentIndex","onScaleChangeRef","useRef","current","dispatchScaleChange","index","useAnimatedReaction","currentScale","_","i","length","_prevScale","_curScale","undefined","Error","scheduleOnRN","getClosestPoint","x","dataPoints","closestPoint","minDistance","Math","abs","point","distance","useCursorGesture","height","points","closestDataPoint","isContinuous","console","warn","xPosition","yPosition","tapGesture","setPosition","y","_closestDot","onBegin","Tap","_points"],"sourceRoot":"../../../src","sources":["Charts/gesture.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.useDotsTransition = exports.scaleCommands = exports.defaultTranslateTransitionWl = exports.defaultOpacityTransitionWl = exports.buildGraph = void 0;
|
|
7
|
-
var _reactNativeSkia = require("
|
|
7
|
+
var _reactNativeSkia = require("react-native-skia");
|
|
8
|
+
var _react = require("react");
|
|
8
9
|
var _d3Scale = require("d3-scale");
|
|
9
10
|
var shape = _interopRequireWildcard(require("d3-shape"));
|
|
10
11
|
var _reactNativeReanimated = require("react-native-reanimated");
|
|
@@ -15,11 +16,23 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
|
|
|
15
16
|
|
|
16
17
|
const buildGraph = function (data, width, height, config) {
|
|
17
18
|
if (data.length === 0) throw new Error('buildGraph requires at least one data point');
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
|
|
20
|
+
// Loops rather than Math.min(...data): spreading a long series can exceed the engine's argument limit
|
|
21
|
+
let dataMinX = Infinity;
|
|
22
|
+
let dataMaxX = -Infinity;
|
|
23
|
+
let dataMinY = Infinity;
|
|
24
|
+
let dataMaxY = -Infinity;
|
|
25
|
+
for (const [x, y] of data) {
|
|
26
|
+
if (x < dataMinX) dataMinX = x;
|
|
27
|
+
if (x > dataMaxX) dataMaxX = x;
|
|
28
|
+
if (y < dataMinY) dataMinY = y;
|
|
29
|
+
if (y > dataMaxY) dataMaxY = y;
|
|
30
|
+
}
|
|
31
|
+
const minX = config?.minX ?? dataMinX;
|
|
32
|
+
const maxX = config?.maxX ?? dataMaxX;
|
|
20
33
|
const scaleX = (0, _d3Scale.scaleLinear)().domain([minX, maxX]).range([0, width]);
|
|
21
|
-
const minY = config?.minY ??
|
|
22
|
-
const maxY = config?.maxY ??
|
|
34
|
+
const minY = config?.minY ?? dataMinY;
|
|
35
|
+
const maxY = config?.maxY ?? dataMaxY;
|
|
23
36
|
const scaleY = (0, _d3Scale.scaleLinear)().domain([minY, maxY]).range([height, 0]);
|
|
24
37
|
const path = shape.line().x(([x]) => scaleX(x)).y(([, y]) => scaleY(y)).curve(config?.curve ?? shape.curveBasis)(data);
|
|
25
38
|
if (path === null) throw new Error('Failed to build the line path');
|
|
@@ -103,18 +116,33 @@ const useDotsTransition = function (props) {
|
|
|
103
116
|
opacityWl = defaultOpacityTransitionWl,
|
|
104
117
|
translateWl = defaultTranslateTransitionWl
|
|
105
118
|
} = props;
|
|
119
|
+
|
|
120
|
+
// Normalized once per path change, not per dot per frame
|
|
121
|
+
const commands = (0, _reactNativeReanimated.useSharedValue)([]);
|
|
122
|
+
const visibleCount = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
123
|
+
// Bumped when the data or the dots are replaced, so they get retargeted
|
|
124
|
+
// even if the graph index is unchanged
|
|
125
|
+
const generationRef = (0, _react.useRef)(0);
|
|
126
|
+
const generation = (0, _react.useMemo)(() => generationRef.current += 1,
|
|
127
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
128
|
+
[dataPoints, dots]);
|
|
129
|
+
|
|
130
|
+
// Retarget on graph or data change only: re-assigning x while it animates
|
|
131
|
+
// would restart the animation every frame
|
|
106
132
|
(0, _reactNativeReanimated.useAnimatedReaction)(() => ({
|
|
107
133
|
_currentGraph: currentGraph.value,
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
// even when the path is swapped instantly or tweens on another duration
|
|
111
|
-
_xs: dots.map(d => d.x.value)
|
|
134
|
+
_path: path.value,
|
|
135
|
+
_generation: generation
|
|
112
136
|
}), ({
|
|
113
137
|
_currentGraph,
|
|
114
|
-
|
|
115
|
-
|
|
138
|
+
_path,
|
|
139
|
+
_generation
|
|
140
|
+
}, previous) => {
|
|
141
|
+
commands.value = (0, _maths.commandsToBezier)(_path.toCmds());
|
|
142
|
+
if (previous !== null && previous._currentGraph === _currentGraph && previous._generation === _generation) return;
|
|
116
143
|
const newDataPoints = dataPoints[_currentGraph];
|
|
117
144
|
if (newDataPoints === undefined) throw new Error('Data points cannot be undefined');
|
|
145
|
+
visibleCount.value = newDataPoints.length;
|
|
118
146
|
dots.forEach((_dot, i) => {
|
|
119
147
|
const _newDot = newDataPoints[i];
|
|
120
148
|
if (!_newDot) {
|
|
@@ -122,13 +150,38 @@ const useDotsTransition = function (props) {
|
|
|
122
150
|
return;
|
|
123
151
|
}
|
|
124
152
|
_dot.x.value = translateWl(_newDot.x);
|
|
125
|
-
const newY = (0, _maths.getYForX)(_currentCommands, _dot.x.value);
|
|
126
|
-
if (newY !== undefined) {
|
|
127
|
-
_dot.y.value = newY;
|
|
128
|
-
}
|
|
129
153
|
_dot.opacity.value = opacityWl(1);
|
|
130
154
|
});
|
|
131
|
-
}
|
|
155
|
+
},
|
|
156
|
+
// Explicit deps: without them the reaction re-registers and re-fires on
|
|
157
|
+
// every parent render, restarting every dot animation on the UI thread
|
|
158
|
+
[currentGraph, path, dataPoints, dots, opacityWl, translateWl, generation]);
|
|
159
|
+
|
|
160
|
+
// Keep y glued to the curve while x animates or the path tweens
|
|
161
|
+
(0, _reactNativeReanimated.useAnimatedReaction)(() => ({
|
|
162
|
+
_cmds: commands.value,
|
|
163
|
+
_xs: dots.map(d => d.x.value)
|
|
164
|
+
}), ({
|
|
165
|
+
_cmds,
|
|
166
|
+
_xs
|
|
167
|
+
}) => {
|
|
168
|
+
const count = Math.min(visibleCount.value, dots.length);
|
|
169
|
+
// Dots are in x order, so one forward walk over the segments serves them all
|
|
170
|
+
let segment = 0;
|
|
171
|
+
for (let i = 0; i < count; i++) {
|
|
172
|
+
const x = _xs[i];
|
|
173
|
+
let index = (0, _maths.findBezierIndex)(_cmds, x, segment);
|
|
174
|
+
if (index === -1 && segment > 1) index = (0, _maths.findBezierIndex)(_cmds, x);
|
|
175
|
+
let newY;
|
|
176
|
+
if (index === -1) {
|
|
177
|
+
newY = (0, _maths.getYBeyondPathEnds)(_cmds, x);
|
|
178
|
+
} else {
|
|
179
|
+
segment = index;
|
|
180
|
+
newY = (0, _maths.getYOnBezier)(_cmds, index, x);
|
|
181
|
+
}
|
|
182
|
+
if (newY !== undefined) dots[i].y.value = newY;
|
|
183
|
+
}
|
|
184
|
+
}, [dots]);
|
|
132
185
|
};
|
|
133
186
|
exports.useDotsTransition = useDotsTransition;
|
|
134
187
|
//# sourceMappingURL=graphUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeSkia","require","_d3Scale","shape","_interopRequireWildcard","_reactNativeReanimated","_gesture","_maths","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","buildGraph","data","width","height","config","length","Error","
|
|
1
|
+
{"version":3,"names":["_reactNativeSkia","require","_react","_d3Scale","shape","_interopRequireWildcard","_reactNativeReanimated","_gesture","_maths","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","buildGraph","data","width","height","config","length","Error","dataMinX","Infinity","dataMaxX","dataMinY","dataMaxY","x","y","minX","maxX","scaleX","scaleLinear","domain","range","minY","maxY","scaleY","path","line","curve","curveBasis","dataPoints","map","value","skiaPath","Skia","Path","MakeFromSVGString","exports","scaleCommands","commands","focalX","offsetX","_scaleY","command","commandType","undefined","PathVerb","Line","getPositionWl","Move","Quad","Cubic","Close","defaultOpacityTransitionWl","opacity","withTiming","duration","defaultTranslateTransitionWl","position","useDotsTransition","props","currentGraph","dots","opacityWl","translateWl","useSharedValue","visibleCount","generationRef","useRef","generation","useMemo","current","useAnimatedReaction","_currentGraph","_path","_generation","previous","commandsToBezier","toCmds","newDataPoints","forEach","_dot","_newDot","_cmds","_xs","d","count","Math","min","segment","index","findBezierIndex","newY","getYBeyondPathEnds","getYOnBezier"],"sourceRoot":"../../../src","sources":["Charts/graphUtils.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -21,6 +21,18 @@ Object.defineProperty(exports, "Cursor", {
|
|
|
21
21
|
return _Cursor.Cursor;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
|
+
Object.defineProperty(exports, "Dot", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _Dot.Dot;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
Object.defineProperty(exports, "Dots", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () {
|
|
33
|
+
return _Dots.Dots;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
24
36
|
Object.defineProperty(exports, "LineChart", {
|
|
25
37
|
enumerable: true,
|
|
26
38
|
get: function () {
|
|
@@ -39,6 +51,12 @@ Object.defineProperty(exports, "Tick", {
|
|
|
39
51
|
return _index.Tick;
|
|
40
52
|
}
|
|
41
53
|
});
|
|
54
|
+
Object.defineProperty(exports, "YAxis", {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function () {
|
|
57
|
+
return _YAxis.YAxis;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
42
60
|
Object.defineProperty(exports, "ZoomableLineChart", {
|
|
43
61
|
enumerable: true,
|
|
44
62
|
get: function () {
|
|
@@ -81,6 +99,18 @@ Object.defineProperty(exports, "getClosestPoint", {
|
|
|
81
99
|
return _gesture.getClosestPoint;
|
|
82
100
|
}
|
|
83
101
|
});
|
|
102
|
+
Object.defineProperty(exports, "getOffsetBoundsWl", {
|
|
103
|
+
enumerable: true,
|
|
104
|
+
get: function () {
|
|
105
|
+
return _gesture.getOffsetBoundsWl;
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
Object.defineProperty(exports, "getPaddedTicks", {
|
|
109
|
+
enumerable: true,
|
|
110
|
+
get: function () {
|
|
111
|
+
return _YAxis.getPaddedTicks;
|
|
112
|
+
}
|
|
113
|
+
});
|
|
84
114
|
Object.defineProperty(exports, "getPositionWl", {
|
|
85
115
|
enumerable: true,
|
|
86
116
|
get: function () {
|
|
@@ -93,6 +123,12 @@ Object.defineProperty(exports, "getYForX", {
|
|
|
93
123
|
return _maths.getYForX;
|
|
94
124
|
}
|
|
95
125
|
});
|
|
126
|
+
Object.defineProperty(exports, "getYForXOnBeziers", {
|
|
127
|
+
enumerable: true,
|
|
128
|
+
get: function () {
|
|
129
|
+
return _maths.getYForXOnBeziers;
|
|
130
|
+
}
|
|
131
|
+
});
|
|
96
132
|
Object.defineProperty(exports, "magnitude", {
|
|
97
133
|
enumerable: true,
|
|
98
134
|
get: function () {
|
|
@@ -143,6 +179,9 @@ Object.defineProperty(exports, "useUpdateAxis", {
|
|
|
143
179
|
});
|
|
144
180
|
var _index = require("./BottomAxis/index.js");
|
|
145
181
|
var _Cursor = require("./Cursor.js");
|
|
182
|
+
var _Dot = require("./Dot.js");
|
|
183
|
+
var _Dots = require("./Dots.js");
|
|
184
|
+
var _YAxis = require("./YAxis.js");
|
|
146
185
|
var _index2 = require("./Linechart/index.js");
|
|
147
186
|
var _index3 = require("./ZoomableLinechart/index.js");
|
|
148
187
|
var _gesture = require("./gesture.js");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_index","require","_Cursor","_index2","_index3","_gesture","_graphUtils","_maths"],"sourceRoot":"../../../src","sources":["Charts/index.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_index","require","_Cursor","_Dot","_Dots","_YAxis","_index2","_index3","_gesture","_graphUtils","_maths"],"sourceRoot":"../../../src","sources":["Charts/index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAOA,IAAAC,OAAA,GAAAD,OAAA;AAEA,IAAAE,IAAA,GAAAF,OAAA;AAEA,IAAAG,KAAA,GAAAH,OAAA;AAEA,IAAAI,MAAA,GAAAJ,OAAA;AAEA,IAAAK,OAAA,GAAAL,OAAA;AAEA,IAAAM,OAAA,GAAAN,OAAA;AAKA,IAAAO,QAAA,GAAAP,OAAA;AAcA,IAAAQ,WAAA,GAAAR,OAAA;AAcA,IAAAS,MAAA,GAAAT,OAAA","ignoreList":[]}
|