aniview 1.0.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/CHANGELOG.md +21 -0
- package/LICENSE +21 -0
- package/README.md +130 -0
- package/dist/Aniview.d.ts +63 -0
- package/dist/Aniview.d.ts.map +1 -0
- package/dist/Aniview.js +831 -0
- package/dist/Aniview.js.map +1 -0
- package/dist/AniviewPanel.d.ts +33 -0
- package/dist/AniviewPanel.d.ts.map +1 -0
- package/dist/AniviewPanel.js +66 -0
- package/dist/AniviewPanel.js.map +1 -0
- package/dist/GestureStressTest.d.ts +3 -0
- package/dist/GestureStressTest.d.ts.map +1 -0
- package/dist/GestureStressTest.js +125 -0
- package/dist/GestureStressTest.js.map +1 -0
- package/dist/aniviewConfig.d.ts +175 -0
- package/dist/aniviewConfig.d.ts.map +1 -0
- package/dist/aniviewConfig.js +568 -0
- package/dist/aniviewConfig.js.map +1 -0
- package/dist/aniviewProvider.d.ts +93 -0
- package/dist/aniviewProvider.d.ts.map +1 -0
- package/dist/aniviewProvider.js +229 -0
- package/dist/aniviewProvider.js.map +1 -0
- package/dist/core/AniviewLock.d.ts +16 -0
- package/dist/core/AniviewLock.d.ts.map +1 -0
- package/dist/core/AniviewLock.js +18 -0
- package/dist/core/AniviewLock.js.map +1 -0
- package/dist/core/AniviewMath.d.ts +41 -0
- package/dist/core/AniviewMath.d.ts.map +1 -0
- package/dist/core/AniviewMath.js +69 -0
- package/dist/core/AniviewMath.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/useAniview.d.ts +39 -0
- package/dist/useAniview.d.ts.map +1 -0
- package/dist/useAniview.js +32 -0
- package/dist/useAniview.js.map +1 -0
- package/dist/useAniviewContext.d.ts +156 -0
- package/dist/useAniviewContext.d.ts.map +1 -0
- package/dist/useAniviewContext.js +3 -0
- package/dist/useAniviewContext.js.map +1 -0
- package/dist/useAniviewLock.d.ts +20 -0
- package/dist/useAniviewLock.d.ts.map +1 -0
- package/dist/useAniviewLock.js +32 -0
- package/dist/useAniviewLock.js.map +1 -0
- package/package.json +60 -0
- package/src/Aniview.tsx +868 -0
- package/src/AniviewPanel.tsx +141 -0
- package/src/GestureStressTest.tsx +144 -0
- package/src/__tests__/AniviewLock.test.ts +58 -0
- package/src/__tests__/AniviewMath.test.ts +211 -0
- package/src/__tests__/AniviewSnapshot.test.tsx +85 -0
- package/src/__tests__/__snapshots__/AniviewSnapshot.test.tsx.snap +7 -0
- package/src/__tests__/aniviewConfig.test.ts +70 -0
- package/src/aniviewConfig.tsx +688 -0
- package/src/aniviewProvider.tsx +307 -0
- package/src/core/AniviewLock.ts +23 -0
- package/src/core/AniviewMath.ts +107 -0
- package/src/index.ts +6 -0
- package/src/useAniview.tsx +75 -0
- package/src/useAniviewContext.tsx +170 -0
- package/src/useAniviewLock.tsx +37 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Aniview.js","sourceRoot":"","sources":["../src/Aniview.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { ViewStyle } from 'react-native';
|
|
3
|
+
import { AniviewProps, AniviewFrame } from './useAniviewContext';
|
|
4
|
+
/**
|
|
5
|
+
* PANEL FRAME (Visual Only)
|
|
6
|
+
*/
|
|
7
|
+
interface PanelFrameProps {
|
|
8
|
+
width?: number | string;
|
|
9
|
+
height?: number | string;
|
|
10
|
+
backgroundColor?: string;
|
|
11
|
+
children?: React.ReactNode;
|
|
12
|
+
style?: ViewStyle;
|
|
13
|
+
clipContent?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export declare const PanelFrame: ({ width, height, backgroundColor, children, style, clipContent }: PanelFrameProps) => React.JSX.Element;
|
|
16
|
+
/**
|
|
17
|
+
* ANIVIEW PANEL (Animated component)
|
|
18
|
+
*/
|
|
19
|
+
export interface AniviewPanelProps extends AniviewProps {
|
|
20
|
+
pageId: number | string;
|
|
21
|
+
width: number;
|
|
22
|
+
height: number;
|
|
23
|
+
marginTop?: number;
|
|
24
|
+
marginLeft?: number;
|
|
25
|
+
backgroundColor?: string;
|
|
26
|
+
frames?: Record<string, AniviewFrame> | AniviewFrame[];
|
|
27
|
+
style?: ViewStyle;
|
|
28
|
+
children?: React.ReactNode;
|
|
29
|
+
clipContent?: boolean;
|
|
30
|
+
}
|
|
31
|
+
export declare const AniviewPanel: (props: AniviewPanelProps) => React.JSX.Element;
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=AniviewPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AniviewPanel.d.ts","sourceRoot":"","sources":["../src/AniviewPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAQ,SAAS,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAYjE;;GAEG;AACH,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,UAAU,qEAOpB,eAAe,sBA0CjB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,YAAY,EAAE,CAAC;IACvD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,YAAY,UAAW,iBAAiB,sBA8CpD,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { View } from 'react-native';
|
|
3
|
+
import Aniview from './Aniview';
|
|
4
|
+
const DEFAULT_LAYOUT = {
|
|
5
|
+
CONTENT_BG: '#FFFFFF',
|
|
6
|
+
FRAME_INK: '#2D2D2D',
|
|
7
|
+
FRAME_WOOD: '#C19A6B',
|
|
8
|
+
BORR: 8,
|
|
9
|
+
FRAME_WIDTH: 2,
|
|
10
|
+
OUTLINE_WIDTH: 1,
|
|
11
|
+
GUTTER_H: 16
|
|
12
|
+
};
|
|
13
|
+
export const PanelFrame = ({ width, height, backgroundColor = DEFAULT_LAYOUT.CONTENT_BG, children, style, clipContent = true }) => {
|
|
14
|
+
const frameWidth = DEFAULT_LAYOUT.FRAME_WIDTH;
|
|
15
|
+
const inkWidth = DEFAULT_LAYOUT.OUTLINE_WIDTH;
|
|
16
|
+
return (<View style={{
|
|
17
|
+
width: width,
|
|
18
|
+
height: height,
|
|
19
|
+
borderWidth: inkWidth,
|
|
20
|
+
borderColor: DEFAULT_LAYOUT.FRAME_INK,
|
|
21
|
+
borderRadius: DEFAULT_LAYOUT.BORR,
|
|
22
|
+
backgroundColor: 'transparent',
|
|
23
|
+
overflow: clipContent ? 'hidden' : 'visible',
|
|
24
|
+
...style
|
|
25
|
+
}}>
|
|
26
|
+
<View style={{
|
|
27
|
+
flex: 1,
|
|
28
|
+
borderWidth: frameWidth,
|
|
29
|
+
borderColor: DEFAULT_LAYOUT.FRAME_WOOD,
|
|
30
|
+
backgroundColor: 'transparent',
|
|
31
|
+
overflow: clipContent ? 'hidden' : 'visible'
|
|
32
|
+
}}>
|
|
33
|
+
<View style={{
|
|
34
|
+
flex: 1,
|
|
35
|
+
backgroundColor: 'transparent',
|
|
36
|
+
borderWidth: inkWidth,
|
|
37
|
+
borderColor: DEFAULT_LAYOUT.FRAME_INK,
|
|
38
|
+
borderRadius: Math.max(0, DEFAULT_LAYOUT.BORR - frameWidth - inkWidth),
|
|
39
|
+
overflow: clipContent ? 'hidden' : 'visible'
|
|
40
|
+
}}>
|
|
41
|
+
{children}
|
|
42
|
+
</View>
|
|
43
|
+
</View>
|
|
44
|
+
</View>);
|
|
45
|
+
};
|
|
46
|
+
export const AniviewPanel = (props) => {
|
|
47
|
+
const { pageId, width, height, marginTop = 0, marginLeft = 0, backgroundColor, frames, children, style, clipContent = true, ...rest } = props;
|
|
48
|
+
const hasExternalBg = !!style?.backgroundColor ||
|
|
49
|
+
(frames && (Array.isArray(frames)
|
|
50
|
+
? frames.some(f => f.style?.backgroundColor)
|
|
51
|
+
: Object.values(frames).some(f => f.style?.backgroundColor)));
|
|
52
|
+
const innerBg = hasExternalBg ? 'transparent' : (backgroundColor || 'transparent');
|
|
53
|
+
return (<Aniview pageId={pageId} frames={frames} style={{
|
|
54
|
+
width,
|
|
55
|
+
height,
|
|
56
|
+
marginTop,
|
|
57
|
+
marginLeft,
|
|
58
|
+
backgroundColor: backgroundColor || style?.backgroundColor,
|
|
59
|
+
...style
|
|
60
|
+
}} {...rest}>
|
|
61
|
+
<PanelFrame width="100%" height="100%" backgroundColor={innerBg} clipContent={clipContent}>
|
|
62
|
+
{children}
|
|
63
|
+
</PanelFrame>
|
|
64
|
+
</Aniview>);
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=AniviewPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AniviewPanel.js","sourceRoot":"","sources":["../src/AniviewPanel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GestureStressTest.d.ts","sourceRoot":"","sources":["../src/GestureStressTest.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAe/B,MAAM,CAAC,OAAO,UAAU,iBAAiB,sBA4ExC"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { StyleSheet, View, Text } from 'react-native';
|
|
3
|
+
import { GestureDetector, Gesture, } from 'react-native-gesture-handler';
|
|
4
|
+
import Animated, { useAnimatedStyle, useSharedValue, withSpring, runOnJS } from 'react-native-reanimated';
|
|
5
|
+
import { useAniview } from './useAniview';
|
|
6
|
+
export default function GestureStressTest() {
|
|
7
|
+
const { lock } = useAniview();
|
|
8
|
+
const translateX = useSharedValue(0);
|
|
9
|
+
const translateY = useSharedValue(0);
|
|
10
|
+
const scale = useSharedValue(1);
|
|
11
|
+
const opacity = useSharedValue(1);
|
|
12
|
+
// LOGGING UTILITY
|
|
13
|
+
const logGesture = (name, state, x, y) => {
|
|
14
|
+
console.log(`[GESTURE: ${name}] State: ${state} | X: ${Math.round(x || 0)} Y: ${Math.round(y || 0)}`);
|
|
15
|
+
};
|
|
16
|
+
const panGesture = Gesture.Pan()
|
|
17
|
+
.onStart((event) => {
|
|
18
|
+
runOnJS(lock)(1); // 1 = Horizontal Lock
|
|
19
|
+
runOnJS(logGesture)('PAN', 'START', event.x, event.y);
|
|
20
|
+
opacity.value = 0.8;
|
|
21
|
+
})
|
|
22
|
+
.onUpdate((event) => {
|
|
23
|
+
translateX.value = event.translationX;
|
|
24
|
+
translateY.value = event.translationY;
|
|
25
|
+
})
|
|
26
|
+
.onEnd((event) => {
|
|
27
|
+
runOnJS(lock)(0); // Unlock
|
|
28
|
+
runOnJS(logGesture)('PAN', 'END', event.x, event.y);
|
|
29
|
+
translateX.value = withSpring(0);
|
|
30
|
+
translateY.value = withSpring(0);
|
|
31
|
+
opacity.value = withSpring(1);
|
|
32
|
+
});
|
|
33
|
+
const tapGesture = Gesture.Tap()
|
|
34
|
+
.numberOfTaps(2)
|
|
35
|
+
.onEnd((event) => {
|
|
36
|
+
runOnJS(logGesture)('DOUBLE_TAP', 'END', event.x, event.y);
|
|
37
|
+
scale.value = withSpring(1.5, {}, () => {
|
|
38
|
+
scale.value = withSpring(1);
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
const longPressGesture = Gesture.LongPress()
|
|
42
|
+
.onEnd((event, success) => {
|
|
43
|
+
if (success) {
|
|
44
|
+
runOnJS(logGesture)('LONG_PRESS', 'SUCCESS', event.x, event.y);
|
|
45
|
+
opacity.value = withSpring(0.3, {}, () => {
|
|
46
|
+
opacity.value = withSpring(1);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
const composed = Gesture.Simultaneous(panGesture, tapGesture, longPressGesture);
|
|
51
|
+
const animatedStyle = useAnimatedStyle(() => ({
|
|
52
|
+
transform: [
|
|
53
|
+
{ translateX: translateX.value },
|
|
54
|
+
{ translateY: translateY.value },
|
|
55
|
+
{ scale: scale.value }
|
|
56
|
+
],
|
|
57
|
+
opacity: opacity.value
|
|
58
|
+
}));
|
|
59
|
+
return (<View style={styles.container}>
|
|
60
|
+
<Text style={styles.title}>GESTURE ORCHESTRATION 2.0</Text>
|
|
61
|
+
|
|
62
|
+
<GestureDetector gesture={composed}>
|
|
63
|
+
<Animated.View style={[styles.box, animatedStyle]}>
|
|
64
|
+
<Text style={styles.boxText}>PAN / DOUBLE-TAP / LONG-PRESS</Text>
|
|
65
|
+
<Text style={styles.hint}>Testing Parallel Dispatch (Simultaneous)</Text>
|
|
66
|
+
</Animated.View>
|
|
67
|
+
</GestureDetector>
|
|
68
|
+
|
|
69
|
+
<View style={styles.logIndicator}>
|
|
70
|
+
<Text style={styles.logText}>Check Console for Orchestration Traces</Text>
|
|
71
|
+
</View>
|
|
72
|
+
</View>);
|
|
73
|
+
}
|
|
74
|
+
const styles = StyleSheet.create({
|
|
75
|
+
container: {
|
|
76
|
+
padding: 20,
|
|
77
|
+
alignItems: 'center',
|
|
78
|
+
justifyContent: 'center',
|
|
79
|
+
},
|
|
80
|
+
title: {
|
|
81
|
+
color: '#fff',
|
|
82
|
+
fontSize: 14,
|
|
83
|
+
fontWeight: 'bold',
|
|
84
|
+
marginBottom: 20,
|
|
85
|
+
opacity: 0.6,
|
|
86
|
+
},
|
|
87
|
+
box: {
|
|
88
|
+
width: 300,
|
|
89
|
+
height: 300,
|
|
90
|
+
backgroundColor: '#1c1c1e',
|
|
91
|
+
borderRadius: 30,
|
|
92
|
+
borderWidth: 1,
|
|
93
|
+
borderColor: '#38383a',
|
|
94
|
+
justifyContent: 'center',
|
|
95
|
+
alignItems: 'center',
|
|
96
|
+
padding: 20,
|
|
97
|
+
elevation: 10,
|
|
98
|
+
shadowColor: '#000',
|
|
99
|
+
shadowOffset: { width: 0, height: 10 },
|
|
100
|
+
shadowOpacity: 0.5,
|
|
101
|
+
shadowRadius: 15,
|
|
102
|
+
},
|
|
103
|
+
boxText: {
|
|
104
|
+
color: '#0a84ff',
|
|
105
|
+
fontSize: 18,
|
|
106
|
+
fontWeight: '800',
|
|
107
|
+
textAlign: 'center',
|
|
108
|
+
},
|
|
109
|
+
hint: {
|
|
110
|
+
color: '#8e8e93',
|
|
111
|
+
marginTop: 10,
|
|
112
|
+
fontSize: 12,
|
|
113
|
+
},
|
|
114
|
+
logIndicator: {
|
|
115
|
+
marginTop: 30,
|
|
116
|
+
padding: 10,
|
|
117
|
+
backgroundColor: 'rgba(255,255,255,0.05)',
|
|
118
|
+
borderRadius: 10,
|
|
119
|
+
},
|
|
120
|
+
logText: {
|
|
121
|
+
color: '#636366',
|
|
122
|
+
fontSize: 11,
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
//# sourceMappingURL=GestureStressTest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GestureStressTest.js","sourceRoot":"","sources":["../src/GestureStressTest.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { AniviewContextType, AniviewFrame, BakedFrame, IAniviewConfig } from "./useAniviewContext";
|
|
2
|
+
import { SharedValue } from "react-native-reanimated";
|
|
3
|
+
import * as AniviewMath from './core/AniviewMath';
|
|
4
|
+
export type AdjacencyMap = Record<number, Record<number, number>>;
|
|
5
|
+
/**
|
|
6
|
+
* **AniviewConfig** — Layout Engine & Gesture Orchestrator
|
|
7
|
+
*
|
|
8
|
+
* Holds the page grid definition, overlap ratios, spring physics, and
|
|
9
|
+
* adjacency rules. It provides two critical pipelines:
|
|
10
|
+
*
|
|
11
|
+
* ### 1. Coordinate Mapping (`getPageOffset`, `register`)
|
|
12
|
+
* Converts a `pageId` into (x, y) world coordinates by walking the layout
|
|
13
|
+
* matrix and accumulating page widths/heights minus overlap ratios. The
|
|
14
|
+
* `register()` method is called during the Aniview bake phase to pre-compute
|
|
15
|
+
* keyframe target positions in world space.
|
|
16
|
+
*
|
|
17
|
+
* ### 2. Gesture Generation (`generateGesture`)
|
|
18
|
+
* Produces a RNGH Pan gesture with:
|
|
19
|
+
* - Axis locking (first-movement direction wins)
|
|
20
|
+
* - Bitmask-based directional locks (1=left, 2=right, 4=up, 8=down)
|
|
21
|
+
* - Edge resistance at world boundaries
|
|
22
|
+
* - Velocity-sensitive neighbor snapping with configurable thresholds
|
|
23
|
+
* - Spring-based snap animation with boundary dampening
|
|
24
|
+
*
|
|
25
|
+
* ### Overlaps
|
|
26
|
+
* The `overlaps` parameter reduces the gap between adjacent pages by a
|
|
27
|
+
* fraction of the viewport size. `{ cols: [0.5] }` means the first and
|
|
28
|
+
* second columns share 50% of the screen width, creating a drawer effect.
|
|
29
|
+
* Each element in the array corresponds to the gap between adjacent
|
|
30
|
+
* rows/columns (so `cols` needs `numCols - 1` values).
|
|
31
|
+
*
|
|
32
|
+
* ### Layout Cache
|
|
33
|
+
* Components can unmount and remount without losing their measured position
|
|
34
|
+
* thanks to `registerLayout()`/`getLayout()`. This enables true virtualization.
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```tsx
|
|
38
|
+
* // 3 horizontal pages with the middle one as default
|
|
39
|
+
* const config = new AniviewConfig(
|
|
40
|
+
* [[1, 1, 1]],
|
|
41
|
+
* 1,
|
|
42
|
+
* { LEFT: 0, CENTER: 1, RIGHT: 2 },
|
|
43
|
+
* {},
|
|
44
|
+
* { cols: [0, 0] }, // no overlap
|
|
45
|
+
* );
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
48
|
+
* @see {@link AniviewProvider} which consumes this config
|
|
49
|
+
*/
|
|
50
|
+
export declare class AniviewConfig implements IAniviewConfig {
|
|
51
|
+
/** The grid layout matrix. `1` = valid page, `0` = empty slot. Rows are vertical, columns are horizontal. */
|
|
52
|
+
readonly layout: number[][];
|
|
53
|
+
/** Current viewport dimensions */
|
|
54
|
+
/** The numeric page ID that serves as the world origin (camera starts here) */
|
|
55
|
+
readonly defaultPage: number;
|
|
56
|
+
/** Optional custom adjacency rules for snapping (overrides grid-based neighbors) */
|
|
57
|
+
readonly adjacencyGraph: AdjacencyMap;
|
|
58
|
+
/** Map of semantic names to numeric page IDs (e.g., `{ HOME: 0 }`) */
|
|
59
|
+
readonly pageMap: Record<string, number>;
|
|
60
|
+
/**
|
|
61
|
+
* Overlap ratios between adjacent rows, expressed as fractions of viewport height (0–1).
|
|
62
|
+
* Length should be `numRows - 1`. A value of 0.3 means 30% vertical overlap.
|
|
63
|
+
* @internal
|
|
64
|
+
*/
|
|
65
|
+
private readonly rowOverlaps;
|
|
66
|
+
/**
|
|
67
|
+
* Overlap ratios between adjacent columns, expressed as fractions of viewport width (0–1).
|
|
68
|
+
* Length should be `numCols - 1`. A value of 0.5 means 50% horizontal overlap.
|
|
69
|
+
* @internal
|
|
70
|
+
*/
|
|
71
|
+
private readonly colOverlaps;
|
|
72
|
+
/** Standard physics for snapping animations */
|
|
73
|
+
private springConfig;
|
|
74
|
+
/** Internal dimension state - mutable for onLayout updates */
|
|
75
|
+
private _contextDims;
|
|
76
|
+
/**
|
|
77
|
+
* CACHE: Stores measured positions of components.
|
|
78
|
+
* This is critical for TRUE VIRTUALIZATION (unmounting).
|
|
79
|
+
* Key: pageId_componentIndex (or similar unique key)
|
|
80
|
+
*/
|
|
81
|
+
private layoutCache;
|
|
82
|
+
/**
|
|
83
|
+
* @param layout - Grid matrix defining page positions (e.g., `[[1, 1]]` for 2 horizontal pages)
|
|
84
|
+
* @param defaultPage - Initial page (numeric ID or semantic name). Defaults to `0`.
|
|
85
|
+
* @param pageMap - Semantic name → numeric ID mapping
|
|
86
|
+
* @param initialDims - Initial viewport dimensions (usually set later via `onLayout`)
|
|
87
|
+
* @param overlaps - Ratio-based overlaps between adjacent pages: `{ cols?: number[], rows?: number[] }`
|
|
88
|
+
* @param providedGraph - Custom adjacency graph for non-grid snapping behavior
|
|
89
|
+
*/
|
|
90
|
+
constructor(layout: number[][], defaultPage?: number | string | null, pageMap?: Record<string, number>, initialDims?: Partial<AniviewContextType['dimensions']>, overlaps?: {
|
|
91
|
+
cols?: number[];
|
|
92
|
+
rows?: number[];
|
|
93
|
+
}, providedGraph?: AdjacencyMap | null);
|
|
94
|
+
registerLayout(componentId: string, layout: {
|
|
95
|
+
x: number;
|
|
96
|
+
y: number;
|
|
97
|
+
}): void;
|
|
98
|
+
getLayout(componentId: string): {
|
|
99
|
+
x: number;
|
|
100
|
+
y: number;
|
|
101
|
+
};
|
|
102
|
+
get contextDims(): {
|
|
103
|
+
width: number;
|
|
104
|
+
height: number;
|
|
105
|
+
offsetX: number;
|
|
106
|
+
offsetY: number;
|
|
107
|
+
};
|
|
108
|
+
updateDimensions(dims: AniviewContextType['dimensions']): void;
|
|
109
|
+
updateSpringConfig(config: any): void;
|
|
110
|
+
/**
|
|
111
|
+
* Returns the shared physics configuration for snap animations.
|
|
112
|
+
*/
|
|
113
|
+
getSpringConfig(): {
|
|
114
|
+
damping: number;
|
|
115
|
+
stiffness: number;
|
|
116
|
+
mass: number;
|
|
117
|
+
overshootClamping: boolean;
|
|
118
|
+
restDisplacementThreshold: number;
|
|
119
|
+
restSpeedThreshold: number;
|
|
120
|
+
};
|
|
121
|
+
/** Gets the global (x, y) offset for a specific page relative to origin. */
|
|
122
|
+
getPageOffset(pageId: number | string, dims: AniviewContextType['dimensions']): {
|
|
123
|
+
x: number;
|
|
124
|
+
y: number;
|
|
125
|
+
};
|
|
126
|
+
resolvePageId(pageId: number | string): number;
|
|
127
|
+
private _currentPageSV;
|
|
128
|
+
getCurrentPage(): SharedValue<number | string>;
|
|
129
|
+
_setCurrentPageSV(sv: SharedValue<number | string>): void;
|
|
130
|
+
/**
|
|
131
|
+
* Pre-calculates absolute coordinates for a component's keyframes.
|
|
132
|
+
* Segregates Spatial (X/Y) frames from Event-based (1D) frames.
|
|
133
|
+
*/
|
|
134
|
+
register(pageId: number | string, dims: AniviewContextType['dimensions'], keyframes?: AniviewFrame[] | Record<string, AniviewFrame>, localLayout?: {
|
|
135
|
+
x: number;
|
|
136
|
+
y: number;
|
|
137
|
+
}): {
|
|
138
|
+
homeOffset: {
|
|
139
|
+
x: number;
|
|
140
|
+
y: number;
|
|
141
|
+
};
|
|
142
|
+
bakedFrames: Record<string, BakedFrame>;
|
|
143
|
+
eventLanes: Record<string, BakedFrame[]>;
|
|
144
|
+
localLayout: {
|
|
145
|
+
x: number;
|
|
146
|
+
y: number;
|
|
147
|
+
};
|
|
148
|
+
};
|
|
149
|
+
/** Minimal offset context for direct page references */
|
|
150
|
+
registerPage(pageId: number | string, dims: AniviewContextType['dimensions']): {
|
|
151
|
+
offset: {
|
|
152
|
+
x: number;
|
|
153
|
+
y: number;
|
|
154
|
+
};
|
|
155
|
+
dimensions: {
|
|
156
|
+
width: number;
|
|
157
|
+
height: number;
|
|
158
|
+
};
|
|
159
|
+
};
|
|
160
|
+
/** Returns all valid page IDs defined in the layout matrix */
|
|
161
|
+
getPages(): number[];
|
|
162
|
+
/** Map of PageID -> (x, y) coordinates */
|
|
163
|
+
getPagesMap(dims: AniviewContextType['dimensions']): Record<number, {
|
|
164
|
+
x: number;
|
|
165
|
+
y: number;
|
|
166
|
+
}>;
|
|
167
|
+
/** Returns calculated min/max world boundaries for gesture clamping */
|
|
168
|
+
getWorldBounds(dims: AniviewContextType['dimensions']): AniviewMath.WorldBounds;
|
|
169
|
+
/**
|
|
170
|
+
* Generates the core Pan Gesture logic.
|
|
171
|
+
* Uses local closures to ensure UI-thread safety and prevent context loss.
|
|
172
|
+
*/
|
|
173
|
+
generateGesture(x: SharedValue<number>, y: SharedValue<number>, onPageChange?: (pageId: number | string) => void, lockMask?: SharedValue<number>, simultaneousHandlers?: any, gestureEnabled?: SharedValue<boolean>, dims?: AniviewContextType['dimensions'], isSnapping?: SharedValue<boolean>, lastTargetId?: SharedValue<number | string>): import("react-native-gesture-handler/lib/typescript/handlers/gestures/panGesture").PanGesture;
|
|
174
|
+
}
|
|
175
|
+
//# sourceMappingURL=aniviewConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aniviewConfig.d.ts","sourceRoot":"","sources":["../src/aniviewConfig.tsx"],"names":[],"mappings":"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"}
|