react-native-screen-transitions 3.3.0-beta.3 → 3.3.0-beta.4
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 +95 -31
- package/lib/commonjs/shared/animation/snap-to.js +2 -0
- package/lib/commonjs/shared/animation/snap-to.js.map +1 -1
- package/lib/commonjs/shared/components/create-transition-aware-component.js +20 -18
- package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container.js +59 -6
- package/lib/commonjs/shared/components/screen-container.js.map +1 -1
- package/lib/commonjs/shared/constants.js +8 -1
- package/lib/commonjs/shared/constants.js.map +1 -1
- package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js +49 -39
- package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js.map +1 -1
- package/lib/commonjs/shared/hooks/gestures/use-screen-gesture-handlers.js +110 -61
- package/lib/commonjs/shared/hooks/gestures/use-screen-gesture-handlers.js.map +1 -1
- package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.js +67 -70
- package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.js.map +1 -1
- package/lib/commonjs/shared/providers/gestures.provider.js +112 -5
- package/lib/commonjs/shared/providers/gestures.provider.js.map +1 -1
- package/lib/commonjs/shared/types/ownership.types.js +71 -0
- package/lib/commonjs/shared/types/ownership.types.js.map +1 -0
- package/lib/commonjs/shared/utils/gesture/check-gesture-activation.js +72 -128
- package/lib/commonjs/shared/utils/gesture/check-gesture-activation.js.map +1 -1
- package/lib/commonjs/shared/utils/gesture/compute-claimed-directions.js +81 -0
- package/lib/commonjs/shared/utils/gesture/compute-claimed-directions.js.map +1 -0
- package/lib/commonjs/shared/utils/gesture/determine-snap-target.js +1 -1
- package/lib/commonjs/shared/utils/gesture/determine-snap-target.js.map +1 -1
- package/lib/commonjs/shared/utils/gesture/find-collapse-target.js +48 -0
- package/lib/commonjs/shared/utils/gesture/find-collapse-target.js.map +1 -0
- package/lib/commonjs/shared/utils/gesture/resolve-ownership.js +87 -0
- package/lib/commonjs/shared/utils/gesture/resolve-ownership.js.map +1 -0
- package/lib/commonjs/shared/utils/gesture/velocity.js +16 -5
- package/lib/commonjs/shared/utils/gesture/velocity.js.map +1 -1
- package/lib/module/shared/animation/snap-to.js +1 -0
- package/lib/module/shared/animation/snap-to.js.map +1 -1
- package/lib/module/shared/components/create-transition-aware-component.js +20 -18
- package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
- package/lib/module/shared/components/screen-container.js +59 -7
- package/lib/module/shared/components/screen-container.js.map +1 -1
- package/lib/module/shared/constants.js +7 -0
- package/lib/module/shared/constants.js.map +1 -1
- package/lib/module/shared/hooks/gestures/use-build-gestures.js +49 -39
- package/lib/module/shared/hooks/gestures/use-build-gestures.js.map +1 -1
- package/lib/module/shared/hooks/gestures/use-screen-gesture-handlers.js +112 -63
- package/lib/module/shared/hooks/gestures/use-screen-gesture-handlers.js.map +1 -1
- package/lib/module/shared/hooks/gestures/use-scroll-registry.js +68 -70
- package/lib/module/shared/hooks/gestures/use-scroll-registry.js.map +1 -1
- package/lib/module/shared/providers/gestures.provider.js +112 -5
- package/lib/module/shared/providers/gestures.provider.js.map +1 -1
- package/lib/module/shared/types/ownership.types.js +67 -0
- package/lib/module/shared/types/ownership.types.js.map +1 -0
- package/lib/module/shared/utils/gesture/check-gesture-activation.js +70 -126
- package/lib/module/shared/utils/gesture/check-gesture-activation.js.map +1 -1
- package/lib/module/shared/utils/gesture/compute-claimed-directions.js +77 -0
- package/lib/module/shared/utils/gesture/compute-claimed-directions.js.map +1 -0
- package/lib/module/shared/utils/gesture/determine-snap-target.js +1 -1
- package/lib/module/shared/utils/gesture/determine-snap-target.js.map +1 -1
- package/lib/module/shared/utils/gesture/find-collapse-target.js +44 -0
- package/lib/module/shared/utils/gesture/find-collapse-target.js.map +1 -0
- package/lib/module/shared/utils/gesture/resolve-ownership.js +83 -0
- package/lib/module/shared/utils/gesture/resolve-ownership.js.map +1 -0
- package/lib/module/shared/utils/gesture/velocity.js +16 -5
- package/lib/module/shared/utils/gesture/velocity.js.map +1 -1
- package/lib/typescript/shared/animation/snap-to.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container.d.ts.map +1 -1
- package/lib/typescript/shared/constants.d.ts +6 -0
- package/lib/typescript/shared/constants.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/gestures/use-build-gestures.d.ts +15 -3
- package/lib/typescript/shared/hooks/gestures/use-build-gestures.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/gestures/use-screen-gesture-handlers.d.ts +52 -2
- package/lib/typescript/shared/hooks/gestures/use-screen-gesture-handlers.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/gestures/use-scroll-registry.d.ts +11 -6
- package/lib/typescript/shared/hooks/gestures/use-scroll-registry.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/use-backdrop-pointer-events.d.ts +1 -1
- package/lib/typescript/shared/hooks/use-backdrop-pointer-events.d.ts.map +1 -1
- package/lib/typescript/shared/providers/gestures.provider.d.ts +27 -2
- package/lib/typescript/shared/providers/gestures.provider.d.ts.map +1 -1
- package/lib/typescript/shared/types/ownership.types.d.ts +52 -0
- package/lib/typescript/shared/types/ownership.types.d.ts.map +1 -0
- package/lib/typescript/shared/types/screen.types.d.ts +22 -1
- package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
- package/lib/typescript/shared/utils/gesture/check-gesture-activation.d.ts +23 -19
- package/lib/typescript/shared/utils/gesture/check-gesture-activation.d.ts.map +1 -1
- package/lib/typescript/shared/utils/gesture/compute-claimed-directions.d.ts +23 -0
- package/lib/typescript/shared/utils/gesture/compute-claimed-directions.d.ts.map +1 -0
- package/lib/typescript/shared/utils/gesture/determine-snap-target.d.ts +5 -1
- package/lib/typescript/shared/utils/gesture/determine-snap-target.d.ts.map +1 -1
- package/lib/typescript/shared/utils/gesture/find-collapse-target.d.ts +17 -0
- package/lib/typescript/shared/utils/gesture/find-collapse-target.d.ts.map +1 -0
- package/lib/typescript/shared/utils/gesture/resolve-ownership.d.ts +36 -0
- package/lib/typescript/shared/utils/gesture/resolve-ownership.d.ts.map +1 -0
- package/lib/typescript/shared/utils/gesture/velocity.d.ts.map +1 -1
- package/package.json +121 -120
- package/src/shared/animation/snap-to.ts +1 -0
- package/src/shared/components/create-transition-aware-component.tsx +28 -25
- package/src/shared/components/screen-container.tsx +69 -7
- package/src/shared/constants.ts +7 -0
- package/src/shared/hooks/gestures/use-build-gestures.tsx +80 -44
- package/src/shared/hooks/gestures/use-screen-gesture-handlers.ts +147 -71
- package/src/shared/hooks/gestures/use-scroll-registry.tsx +94 -86
- package/src/shared/hooks/use-backdrop-pointer-events.ts +1 -1
- package/src/shared/providers/gestures.provider.tsx +166 -5
- package/src/shared/types/ownership.types.ts +77 -0
- package/src/shared/types/screen.types.ts +24 -1
- package/src/shared/utils/gesture/check-gesture-activation.ts +82 -116
- package/src/shared/utils/gesture/compute-claimed-directions.ts +93 -0
- package/src/shared/utils/gesture/determine-snap-target.ts +6 -2
- package/src/shared/utils/gesture/find-collapse-target.ts +42 -0
- package/src/shared/utils/gesture/resolve-ownership.ts +110 -0
- package/src/shared/utils/gesture/velocity.ts +16 -6
- package/src/shared/__tests__/bounds.store.test.ts +0 -394
- package/src/shared/__tests__/derivations.test.ts +0 -156
- package/src/shared/__tests__/determine-dismissal.test.ts +0 -111
- package/src/shared/__tests__/determine-snap-target.test.ts +0 -268
- package/src/shared/__tests__/geometry.test.ts +0 -130
- package/src/shared/__tests__/gesture-activation.test.ts +0 -471
- package/src/shared/__tests__/gesture.velocity.test.ts +0 -131
- package/src/shared/__tests__/history.store.test.ts +0 -550
- package/src/shared/__tests__/sync-routes-with-removed.test.ts +0 -137
- package/src/shared/__tests__/validate-snap-points.test.ts +0 -125
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_native","require","_react","_reactNativeGestureHandler","_keys","_gesture","_useScreenGestureHandlers","useBuildGestures","scrollConfig","
|
|
1
|
+
{"version":3,"names":["_native","require","_react","_reactNativeGestureHandler","_keys","_gesture","_computeClaimedDirections","_resolveOwnership","_useScreenGestureHandlers","DIRECTIONS","findShadowedAncestorPanGestures","selfClaims","ancestorContext","isIsolated","shadowedGestures","ancestor","shadowsAncestor","some","dir","claimedDirections","panGesture","push","useBuildGestures","scrollConfig","childDirectionClaims","current","useKeys","navState","navigation","getState","isFirstScreen","useMemo","routes","findIndex","r","key","route","panGestureRef","useRef","undefined","gestureAnimationValues","GestureStore","getRouteGestures","snapPoints","options","canDismiss","Boolean","gestureEnabled","hasSnapPoints","Array","isArray","length","ownershipStatus","resolveOwnership","selfClaimsAny","claimsAnyDirection","handleDismiss","useCallback","isDismissing","value","state","routeStillPresent","dispatch","StackActions","pop","source","target","onTouchesDown","onTouchesMove","onStart","onUpdate","onEnd","useScreenGestureHandlers","ancestorIsDismissing","Gesture","Pan","withRef","enabled","manualActivation","shadowedAncestorGestures","ancestorPan","blocksExternalGesture","exports"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-build-gestures.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -24,11 +24,60 @@ var _velocity = require("../../utils/gesture/velocity");
|
|
|
24
24
|
var _logger = require("../../utils/logger");
|
|
25
25
|
var _useStableCallbackValue = _interopRequireDefault(require("../use-stable-callback-value"));
|
|
26
26
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
27
|
+
/**
|
|
28
|
+
* Gesture Handlers for Screen Dismissal and Snap Navigation
|
|
29
|
+
*
|
|
30
|
+
* ## Mental Model
|
|
31
|
+
*
|
|
32
|
+
* This hook implements the touch handling logic for the gesture ownership system.
|
|
33
|
+
* Each screen has a pan gesture handler that runs through this decision flow:
|
|
34
|
+
*
|
|
35
|
+
* ```
|
|
36
|
+
* onTouchesMove (for each touch move event):
|
|
37
|
+
* 1. ANCESTOR CHECK: If ancestor is dismissing → fail (avoid racing)
|
|
38
|
+
* 2. DIRECTION DETECTION: Determine swipe direction from touch delta
|
|
39
|
+
* 3. OWNERSHIP CHECK: Do we own this direction? (ownershipStatus)
|
|
40
|
+
* - "self" → continue
|
|
41
|
+
* - "ancestor" or null → fail (let it bubble up)
|
|
42
|
+
* 4. CHILD CLAIM CHECK: Has a child pre-registered a claim for this direction?
|
|
43
|
+
* - Yes → fail immediately (child shadows us, no delay)
|
|
44
|
+
* - No → continue
|
|
45
|
+
* 5. OFFSET THRESHOLD: Wait for sufficient touch movement
|
|
46
|
+
* 6. SCROLLVIEW CHECK: If touch is on ScrollView, is it at boundary?
|
|
47
|
+
* 7. EXPAND CHECK (snap sheets): If expanding via ScrollView, is expandViaScrollView enabled?
|
|
48
|
+
* 8. ACTIVATE!
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
51
|
+
* ## Key Concepts
|
|
52
|
+
*
|
|
53
|
+
* **Ownership**: Pre-computed at render time. "self" means this screen handles
|
|
54
|
+
* the direction, "ancestor" means bubble up, null means no handler exists.
|
|
55
|
+
*
|
|
56
|
+
* **Child Claims**: Registered at mount time via useEffect in gestures.provider.tsx.
|
|
57
|
+
* When a child shadows our direction, it pre-registers a claim so we know to defer.
|
|
58
|
+
* IMPORTANT: This check happens BEFORE offset threshold to ensure the parent fails
|
|
59
|
+
* immediately when shadowed, avoiding any perceptible delay.
|
|
60
|
+
* ALSO: Claims from dismissing children are ignored, allowing the parent to handle
|
|
61
|
+
* new gestures while the child is animating out.
|
|
62
|
+
*
|
|
63
|
+
* **ScrollView Boundaries**: Per spec, a ScrollView must be at its boundary before
|
|
64
|
+
* yielding to gestures. The boundary depends on sheet type:
|
|
65
|
+
* - Bottom sheet (vertical): scrollY = 0 (top)
|
|
66
|
+
* - Top sheet (vertical-inverted): scrollY >= maxY (bottom)
|
|
67
|
+
*
|
|
68
|
+
* **Snap Points**: Sheets with snapPoints claim BOTH directions on their axis
|
|
69
|
+
* (e.g., vertical sheet claims vertical AND vertical-inverted). This allows
|
|
70
|
+
* expand (drag up) and collapse/dismiss (drag down) gestures.
|
|
71
|
+
*/
|
|
27
72
|
const useScreenGestureHandlers = ({
|
|
28
73
|
scrollConfig,
|
|
29
74
|
ancestorIsDismissing,
|
|
30
75
|
canDismiss,
|
|
31
|
-
handleDismiss
|
|
76
|
+
handleDismiss,
|
|
77
|
+
ownershipStatus,
|
|
78
|
+
claimedDirections,
|
|
79
|
+
ancestorContext,
|
|
80
|
+
childDirectionClaims
|
|
32
81
|
}) => {
|
|
33
82
|
const dimensions = (0, _reactNative.useWindowDimensions)();
|
|
34
83
|
const {
|
|
@@ -40,10 +89,12 @@ const useScreenGestureHandlers = ({
|
|
|
40
89
|
gestureDirection = _constants.DEFAULT_GESTURE_DIRECTION,
|
|
41
90
|
gestureDrivesProgress = _constants.DEFAULT_GESTURE_DRIVES_PROGRESS,
|
|
42
91
|
gestureVelocityImpact = _constants.GESTURE_VELOCITY_IMPACT,
|
|
92
|
+
snapVelocityImpact = _constants.SNAP_VELOCITY_IMPACT,
|
|
43
93
|
gestureActivationArea = _constants.DEFAULT_GESTURE_ACTIVATION_AREA,
|
|
44
94
|
gestureResponseDistance,
|
|
45
95
|
transitionSpec,
|
|
46
|
-
snapPoints: rawSnapPoints
|
|
96
|
+
snapPoints: rawSnapPoints,
|
|
97
|
+
expandViaScrollView = true
|
|
47
98
|
} = current.options;
|
|
48
99
|
const {
|
|
49
100
|
hasSnapPoints,
|
|
@@ -99,10 +150,11 @@ const useScreenGestureHandlers = ({
|
|
|
99
150
|
};
|
|
100
151
|
gestureOffsetState.value = _gesture2.GestureOffsetState.PENDING;
|
|
101
152
|
});
|
|
153
|
+
const routeKey = current.route.key;
|
|
102
154
|
const onTouchesMove = (0, _useStableCallbackValue.default)((e, manager) => {
|
|
103
155
|
"worklet";
|
|
104
156
|
|
|
105
|
-
//
|
|
157
|
+
// Step 1: Ancestor dismissing check
|
|
106
158
|
if (ancestorIsDismissing?.value) {
|
|
107
159
|
gestureOffsetState.value = _gesture2.GestureOffsetState.FAILED;
|
|
108
160
|
manager.fail();
|
|
@@ -128,62 +180,70 @@ const useScreenGestureHandlers = ({
|
|
|
128
180
|
manager.fail();
|
|
129
181
|
return;
|
|
130
182
|
}
|
|
131
|
-
|
|
132
|
-
// Keep pending until thresholds are met; no eager activation.
|
|
133
183
|
if (gestureAnimationValues.isDragging?.value) {
|
|
134
184
|
manager.activate();
|
|
135
185
|
return;
|
|
136
186
|
}
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
if (
|
|
141
|
-
|
|
142
|
-
const canActivate = recognizedDirection && gestureOffsetState.value === _gesture2.GestureOffsetState.PASSED && !gestureAnimationValues.isDismissing?.value;
|
|
143
|
-
if (!canActivate) {
|
|
144
|
-
return;
|
|
145
|
-
}
|
|
146
|
-
if (isSwipingDown) {
|
|
147
|
-
gestureAnimationValues.direction.value = "vertical";
|
|
148
|
-
} else if (isSwipingUp) {
|
|
149
|
-
gestureAnimationValues.direction.value = "vertical-inverted";
|
|
150
|
-
} else if (isSwipingRight) {
|
|
151
|
-
gestureAnimationValues.direction.value = "horizontal";
|
|
152
|
-
} else if (isSwipingLeft) {
|
|
153
|
-
gestureAnimationValues.direction.value = "horizontal-inverted";
|
|
154
|
-
}
|
|
155
|
-
manager.activate();
|
|
187
|
+
|
|
188
|
+
// Step 2: Direction detection
|
|
189
|
+
let swipeDirection = null;
|
|
190
|
+
if (isSwipingDown) swipeDirection = "vertical";else if (isSwipingUp) swipeDirection = "vertical-inverted";else if (isSwipingRight) swipeDirection = "horizontal";else if (isSwipingLeft) swipeDirection = "horizontal-inverted";
|
|
191
|
+
if (!swipeDirection) {
|
|
156
192
|
return;
|
|
157
193
|
}
|
|
158
194
|
|
|
159
|
-
//
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
const canExpandMore = hasSnapPoints && animations.progress.value < maxSnapPoint - _constants.EPSILON && animations.targetProgress.value < maxSnapPoint - _constants.EPSILON;
|
|
163
|
-
const {
|
|
164
|
-
shouldActivate,
|
|
165
|
-
direction: activatedDirection
|
|
166
|
-
} = (0, _checkGestureActivation.checkScrollAwareActivation)({
|
|
167
|
-
swipeInfo: {
|
|
168
|
-
isSwipingDown,
|
|
169
|
-
isSwipingUp,
|
|
170
|
-
isSwipingRight,
|
|
171
|
-
isSwipingLeft
|
|
172
|
-
},
|
|
173
|
-
directions,
|
|
174
|
-
scrollConfig: scrollCfg,
|
|
175
|
-
hasSnapPoints,
|
|
176
|
-
canExpandMore
|
|
177
|
-
});
|
|
178
|
-
if (recognizedDirection && !shouldActivate) {
|
|
195
|
+
// Step 3: Ownership check - fail if we don't own this direction
|
|
196
|
+
const ownership = ownershipStatus[swipeDirection];
|
|
197
|
+
if (ownership !== "self") {
|
|
179
198
|
manager.fail();
|
|
180
199
|
return;
|
|
181
200
|
}
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
201
|
+
|
|
202
|
+
// Step 4: Child claim check - fail EARLY if a child shadows this direction
|
|
203
|
+
// This MUST happen before offset threshold to avoid delay when shadowing
|
|
204
|
+
// ALSO: Ignore claims from children that are currently dismissing
|
|
205
|
+
const childClaim = childDirectionClaims.value[swipeDirection];
|
|
206
|
+
if (childClaim && childClaim.routeKey !== routeKey && !childClaim.isDismissing.value) {
|
|
207
|
+
manager.fail();
|
|
185
208
|
return;
|
|
186
209
|
}
|
|
210
|
+
if (gestureOffsetState.value !== _gesture2.GestureOffsetState.PASSED) {
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
// Snap sheets can interrupt their own animation; non-snap cannot
|
|
215
|
+
if (!hasSnapPoints && gestureAnimationValues.isDismissing?.value) {
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
// Step 6: ScrollView boundary check
|
|
220
|
+
const scrollCfg = scrollConfig.value;
|
|
221
|
+
const isTouchingScrollView = scrollCfg?.isTouched ?? false;
|
|
222
|
+
if (isTouchingScrollView) {
|
|
223
|
+
const atBoundary = (0, _checkGestureActivation.checkScrollBoundary)(scrollCfg, swipeDirection, hasSnapPoints ? directions.snapAxisInverted : undefined);
|
|
224
|
+
if (!atBoundary) {
|
|
225
|
+
manager.fail();
|
|
226
|
+
return;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
// Step 7: Expand check for snap sheets
|
|
230
|
+
if (hasSnapPoints) {
|
|
231
|
+
const isExpandGesture = directions.snapAxisInverted && swipeDirection === "vertical" || !directions.snapAxisInverted && swipeDirection === "vertical-inverted" || directions.snapAxisInverted && swipeDirection === "horizontal" || !directions.snapAxisInverted && swipeDirection === "horizontal-inverted";
|
|
232
|
+
if (isExpandGesture) {
|
|
233
|
+
if (!expandViaScrollView) {
|
|
234
|
+
manager.fail();
|
|
235
|
+
return;
|
|
236
|
+
}
|
|
237
|
+
const canExpandMore = animations.progress.value < maxSnapPoint - _constants.EPSILON && animations.targetProgress.value < maxSnapPoint - _constants.EPSILON;
|
|
238
|
+
if (!canExpandMore) {
|
|
239
|
+
manager.fail();
|
|
240
|
+
return;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
gestureAnimationValues.direction.value = swipeDirection;
|
|
246
|
+
manager.activate();
|
|
187
247
|
});
|
|
188
248
|
const onStart = (0, _useStableCallbackValue.default)(() => {
|
|
189
249
|
"worklet";
|
|
@@ -213,15 +273,10 @@ const useScreenGestureHandlers = ({
|
|
|
213
273
|
const translation = isHorizontal ? translationX : translationY;
|
|
214
274
|
const dimension = isHorizontal ? width : height;
|
|
215
275
|
|
|
216
|
-
// Map translation to progress
|
|
217
|
-
// - Positive translation (down/right) = decrease progress (dismiss)
|
|
218
|
-
// - Negative translation (up/left) = increase progress (expand)
|
|
219
|
-
// Inverted directions flip this behavior
|
|
276
|
+
// Map translation to progress: positive = dismiss, negative = expand
|
|
220
277
|
const baseSign = -1;
|
|
221
278
|
const sign = directions.snapAxisInverted ? -baseSign : baseSign;
|
|
222
279
|
const progressDelta = sign * translation / dimension;
|
|
223
|
-
|
|
224
|
-
// Use pre-computed bounds (minSnapPoint already accounts for canDismiss)
|
|
225
280
|
animations.progress.value = Math.max(minSnapPoint, Math.min(maxSnapPoint, gestureStartProgress.value + progressDelta));
|
|
226
281
|
} else if (gestureDrivesProgress) {
|
|
227
282
|
let maxProgress = 0;
|
|
@@ -260,15 +315,14 @@ const useScreenGestureHandlers = ({
|
|
|
260
315
|
const axisVelocity = isHorizontal ? event.velocityX : event.velocityY;
|
|
261
316
|
const axisDimension = isHorizontal ? dimensions.width : dimensions.height;
|
|
262
317
|
|
|
263
|
-
//
|
|
264
|
-
// Positive velocity (down/right) = dismiss for non-inverted
|
|
265
|
-
// Inverted directions need velocity flipped
|
|
318
|
+
// Normalize velocity: positive = toward dismiss
|
|
266
319
|
const snapVelocity = directions.snapAxisInverted ? -axisVelocity : axisVelocity;
|
|
267
320
|
const result = (0, _determineSnapTarget.determineSnapTarget)({
|
|
268
321
|
currentProgress: animations.progress.value,
|
|
269
322
|
snapPoints,
|
|
270
323
|
velocity: snapVelocity,
|
|
271
324
|
dimension: axisDimension,
|
|
325
|
+
velocityFactor: snapVelocityImpact,
|
|
272
326
|
canDismiss: canDismiss
|
|
273
327
|
});
|
|
274
328
|
const shouldDismiss = result.shouldDismiss;
|
|
@@ -286,10 +340,6 @@ const useScreenGestureHandlers = ({
|
|
|
286
340
|
event,
|
|
287
341
|
dimensions
|
|
288
342
|
});
|
|
289
|
-
|
|
290
|
-
// For snap transitions, velocity should match gesture direction
|
|
291
|
-
// Positive gesture velocity (down/right) = collapsing (negative progress velocity)
|
|
292
|
-
// Inverted directions flip this
|
|
293
343
|
const velocitySign = directions.snapAxisInverted ? 1 : -1;
|
|
294
344
|
const initialVelocity = velocitySign * _velocity.velocity.normalize(axisVelocity, axisDimension);
|
|
295
345
|
(0, _animateToProgress.animateToProgress)({
|
|
@@ -307,7 +357,6 @@ const useScreenGestureHandlers = ({
|
|
|
307
357
|
gestureVelocityImpact
|
|
308
358
|
});
|
|
309
359
|
const shouldDismiss = result.shouldDismiss;
|
|
310
|
-
// Without snap points, always animate to fully visible (1) when not dismissing
|
|
311
360
|
const targetProgress = shouldDismiss ? 0 : 1;
|
|
312
361
|
(0, _resetGestureValues.resetGestureValues)({
|
|
313
362
|
spec: shouldDismiss ? transitionSpec?.close : transitionSpec?.open,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_specs","_constants","_keys","_animation","_gesture","_gesture2","_animateToProgress","_checkGestureActivation","_determineDismissal","_determineSnapTarget","_mapGestureToProgress","_resetGestureValues","_validateSnapPoints","_velocity","_logger","_useStableCallbackValue","_interopRequireDefault","e","__esModule","default","useScreenGestureHandlers","scrollConfig","ancestorIsDismissing","canDismiss","handleDismiss","dimensions","useWindowDimensions","current","useKeys","animations","AnimationStore","getAll","route","key","gestureAnimationValues","GestureStore","getRouteGestures","gestureDirection","DEFAULT_GESTURE_DIRECTION","gestureDrivesProgress","DEFAULT_GESTURE_DRIVES_PROGRESS","gestureVelocityImpact","GESTURE_VELOCITY_IMPACT","gestureActivationArea","DEFAULT_GESTURE_ACTIVATION_AREA","gestureResponseDistance","transitionSpec","snapPoints","rawSnapPoints","options","hasSnapPoints","minSnapPoint","maxSnapPoint","useMemo","validateSnapPoints","directions","Array","isArray","logger","warn","effectiveDirection","directionsArray","isBidirectional","includes","hasHorizontalDirection","isSnapAxisInverted","enableBothVertical","enableBothHorizontal","vertical","verticalInverted","horizontal","horizontalInverted","snapAxisInverted","snapAxis","initialTouch","useSharedValue","x","y","gestureOffsetState","GestureOffsetState","PENDING","gestureStartProgress","onTouchesDown","useStableCallbackValue","firstTouch","changedTouches","value","onTouchesMove","manager","FAILED","fail","touch","isSwipingDown","isSwipingUp","isSwipingRight","isSwipingLeft","applyOffsetRules","activationArea","responseDistance","isDragging","activate","recognizedDirection","scrollCfg","isTouchingScrollView","isTouched","canActivate","PASSED","isDismissing","direction","canExpandMore","progress","EPSILON","targetProgress","shouldActivate","activatedDirection","checkScrollAwareActivation","swipeInfo","onStart","TRUE","FALSE","animating","onUpdate","event","translationX","translationY","width","height","normalizedX","velocity","normalizeTranslation","normalizedY","isHorizontal","translation","dimension","baseSign","sign","progressDelta","Math","max","min","maxProgress","mapGestureToProgress","onEnd","axisVelocity","velocityX","velocityY","axisDimension","snapVelocity","result","determineSnapTarget","currentProgress","shouldDismiss","isSnapping","spec","close","open","effectiveSpec","expand","DefaultSnapSpec","collapse","resetGestureValues","gestures","velocitySign","initialVelocity","normalize","animateToProgress","target","onAnimationFinish","undefined","determineDismissal","calculateProgressVelocity","exports"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-screen-gesture-handlers.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_specs","_constants","_keys","_animation","_gesture","_gesture2","_animateToProgress","_checkGestureActivation","_determineDismissal","_determineSnapTarget","_mapGestureToProgress","_resetGestureValues","_validateSnapPoints","_velocity","_logger","_useStableCallbackValue","_interopRequireDefault","e","__esModule","default","useScreenGestureHandlers","scrollConfig","ancestorIsDismissing","canDismiss","handleDismiss","ownershipStatus","claimedDirections","ancestorContext","childDirectionClaims","dimensions","useWindowDimensions","current","useKeys","animations","AnimationStore","getAll","route","key","gestureAnimationValues","GestureStore","getRouteGestures","gestureDirection","DEFAULT_GESTURE_DIRECTION","gestureDrivesProgress","DEFAULT_GESTURE_DRIVES_PROGRESS","gestureVelocityImpact","GESTURE_VELOCITY_IMPACT","snapVelocityImpact","SNAP_VELOCITY_IMPACT","gestureActivationArea","DEFAULT_GESTURE_ACTIVATION_AREA","gestureResponseDistance","transitionSpec","snapPoints","rawSnapPoints","expandViaScrollView","options","hasSnapPoints","minSnapPoint","maxSnapPoint","useMemo","validateSnapPoints","directions","Array","isArray","logger","warn","effectiveDirection","directionsArray","isBidirectional","includes","hasHorizontalDirection","isSnapAxisInverted","enableBothVertical","enableBothHorizontal","vertical","verticalInverted","horizontal","horizontalInverted","snapAxisInverted","snapAxis","initialTouch","useSharedValue","x","y","gestureOffsetState","GestureOffsetState","PENDING","gestureStartProgress","onTouchesDown","useStableCallbackValue","firstTouch","changedTouches","value","routeKey","onTouchesMove","manager","FAILED","fail","touch","isSwipingDown","isSwipingUp","isSwipingRight","isSwipingLeft","applyOffsetRules","activationArea","responseDistance","isDragging","activate","swipeDirection","ownership","childClaim","isDismissing","PASSED","scrollCfg","isTouchingScrollView","isTouched","atBoundary","checkScrollBoundary","undefined","isExpandGesture","canExpandMore","progress","EPSILON","targetProgress","direction","onStart","TRUE","FALSE","animating","onUpdate","event","translationX","translationY","width","height","normalizedX","velocity","normalizeTranslation","normalizedY","isHorizontal","translation","dimension","baseSign","sign","progressDelta","Math","max","min","maxProgress","mapGestureToProgress","onEnd","axisVelocity","velocityX","velocityY","axisDimension","snapVelocity","result","determineSnapTarget","currentProgress","velocityFactor","shouldDismiss","isSnapping","spec","close","open","effectiveSpec","expand","DefaultSnapSpec","collapse","resetGestureValues","gestures","velocitySign","initialVelocity","normalize","animateToProgress","target","onAnimationFinish","determineDismissal","calculateProgressVelocity","exports"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-screen-gesture-handlers.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,33 +5,78 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.useScrollRegistry = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
|
+
var _reactNativeGestureHandler = require("react-native-gesture-handler");
|
|
8
9
|
var _reactNativeReanimated = require("react-native-reanimated");
|
|
9
10
|
var _gestures = require("../../providers/gestures.provider");
|
|
10
11
|
var _useStableCallback = _interopRequireDefault(require("../use-stable-callback"));
|
|
11
12
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
-
/**
|
|
13
|
+
/**
|
|
14
|
+
* Connects ScrollViews to the gesture ownership system.
|
|
15
|
+
* Finds the gesture owner for the scroll axis and coordinates with their panGesture.
|
|
16
|
+
*/
|
|
13
17
|
|
|
18
|
+
/** Walks up context tree to find the screen that owns this scroll axis. */
|
|
19
|
+
function findGestureOwnerForAxis(context, axis) {
|
|
20
|
+
let current = context;
|
|
21
|
+
const startIsolated = context?.isIsolated;
|
|
22
|
+
while (current) {
|
|
23
|
+
if (startIsolated !== undefined && current.isIsolated !== startIsolated) {
|
|
24
|
+
break;
|
|
25
|
+
}
|
|
26
|
+
const ownsAxis = axis === "vertical" ? current.claimedDirections?.vertical || current.claimedDirections?.["vertical-inverted"] : current.claimedDirections?.horizontal || current.claimedDirections?.["horizontal-inverted"];
|
|
27
|
+
if (ownsAxis) {
|
|
28
|
+
return {
|
|
29
|
+
scrollConfig: current.scrollConfig,
|
|
30
|
+
panGesture: current.panGesture
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
current = current.ancestorContext;
|
|
34
|
+
}
|
|
35
|
+
return {
|
|
36
|
+
scrollConfig: null,
|
|
37
|
+
panGesture: null
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Returns scroll handlers and a native gesture for ScrollView coordination.
|
|
42
|
+
* Automatically finds the gesture owner for the scroll axis.
|
|
43
|
+
*/
|
|
14
44
|
const useScrollRegistry = props => {
|
|
15
45
|
const context = (0, _gestures.useGestureContext)();
|
|
46
|
+
const scrollDirection = props.direction ?? "vertical";
|
|
16
47
|
const {
|
|
17
48
|
scrollConfig,
|
|
18
|
-
|
|
19
|
-
} = context;
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
49
|
+
panGesture
|
|
50
|
+
} = findGestureOwnerForAxis(context, scrollDirection);
|
|
51
|
+
const nativeGesture = (0, _react.useMemo)(() => {
|
|
52
|
+
if (!panGesture || !scrollConfig) return null;
|
|
53
|
+
const setIsTouched = () => {
|
|
54
|
+
"worklet";
|
|
55
|
+
|
|
56
|
+
if (scrollConfig.value) {
|
|
57
|
+
scrollConfig.value = {
|
|
58
|
+
...scrollConfig.value,
|
|
59
|
+
isTouched: true
|
|
60
|
+
};
|
|
26
61
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
62
|
+
};
|
|
63
|
+
const clearIsTouched = () => {
|
|
64
|
+
"worklet";
|
|
65
|
+
|
|
66
|
+
if (scrollConfig.value) {
|
|
67
|
+
scrollConfig.value = {
|
|
68
|
+
...scrollConfig.value,
|
|
69
|
+
isTouched: false
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
return _reactNativeGestureHandler.Gesture.Native().onTouchesDown(setIsTouched).onTouchesUp(clearIsTouched).onTouchesCancelled(clearIsTouched).requireExternalGestureToFail(panGesture);
|
|
74
|
+
}, [panGesture, scrollConfig]);
|
|
31
75
|
const scrollHandler = (0, _reactNativeReanimated.useAnimatedScrollHandler)({
|
|
32
76
|
onScroll: event => {
|
|
33
77
|
props.onScroll?.(event);
|
|
34
|
-
|
|
78
|
+
if (!scrollConfig) return;
|
|
79
|
+
const update = v => {
|
|
35
80
|
"worklet";
|
|
36
81
|
|
|
37
82
|
if (v === null) {
|
|
@@ -49,17 +94,13 @@ const useScrollRegistry = props => {
|
|
|
49
94
|
v.y = event.contentOffset.y;
|
|
50
95
|
return v;
|
|
51
96
|
};
|
|
52
|
-
scrollConfig.modify(
|
|
53
|
-
|
|
54
|
-
// Sync to ALL ancestors, not just immediate parent
|
|
55
|
-
for (const ancestorConfig of ancestorScrollConfigs) {
|
|
56
|
-
ancestorConfig.modify(updateScrollPosition);
|
|
57
|
-
}
|
|
97
|
+
scrollConfig.modify(update);
|
|
58
98
|
}
|
|
59
99
|
});
|
|
60
100
|
const onContentSizeChange = (0, _useStableCallback.default)((width, height) => {
|
|
61
101
|
props.onContentSizeChange?.(width, height);
|
|
62
|
-
|
|
102
|
+
if (!scrollConfig) return;
|
|
103
|
+
const update = v => {
|
|
63
104
|
"worklet";
|
|
64
105
|
|
|
65
106
|
if (v === null) {
|
|
@@ -77,18 +118,16 @@ const useScrollRegistry = props => {
|
|
|
77
118
|
v.contentHeight = height;
|
|
78
119
|
return v;
|
|
79
120
|
};
|
|
80
|
-
scrollConfig.modify(
|
|
81
|
-
for (const ancestorConfig of ancestorScrollConfigs) {
|
|
82
|
-
ancestorConfig.modify(updateContentSize);
|
|
83
|
-
}
|
|
121
|
+
scrollConfig.modify(update);
|
|
84
122
|
});
|
|
85
123
|
const onLayout = (0, _useStableCallback.default)(event => {
|
|
86
124
|
props.onLayout?.(event);
|
|
125
|
+
if (!scrollConfig) return;
|
|
87
126
|
const {
|
|
88
127
|
width,
|
|
89
128
|
height
|
|
90
129
|
} = event.nativeEvent.layout;
|
|
91
|
-
const
|
|
130
|
+
const update = v => {
|
|
92
131
|
"worklet";
|
|
93
132
|
|
|
94
133
|
if (v === null) {
|
|
@@ -106,55 +145,13 @@ const useScrollRegistry = props => {
|
|
|
106
145
|
v.layoutWidth = width;
|
|
107
146
|
return v;
|
|
108
147
|
};
|
|
109
|
-
scrollConfig.modify(
|
|
110
|
-
for (const ancestorConfig of ancestorScrollConfigs) {
|
|
111
|
-
ancestorConfig.modify(updateLayout);
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
const onTouchStart = (0, _useStableCallback.default)(event => {
|
|
115
|
-
props.onTouchStart?.(event);
|
|
116
|
-
const setTouched = v => {
|
|
117
|
-
"worklet";
|
|
118
|
-
|
|
119
|
-
if (v === null) {
|
|
120
|
-
return {
|
|
121
|
-
x: 0,
|
|
122
|
-
y: 0,
|
|
123
|
-
contentHeight: 0,
|
|
124
|
-
contentWidth: 0,
|
|
125
|
-
layoutHeight: 0,
|
|
126
|
-
layoutWidth: 0,
|
|
127
|
-
isTouched: true
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
v.isTouched = true;
|
|
131
|
-
return v;
|
|
132
|
-
};
|
|
133
|
-
scrollConfig.modify(setTouched);
|
|
134
|
-
for (const ancestorConfig of ancestorScrollConfigs) {
|
|
135
|
-
ancestorConfig.modify(setTouched);
|
|
136
|
-
}
|
|
137
|
-
});
|
|
138
|
-
const onTouchEnd = (0, _useStableCallback.default)(event => {
|
|
139
|
-
props.onTouchEnd?.(event);
|
|
140
|
-
const clearTouched = v => {
|
|
141
|
-
"worklet";
|
|
142
|
-
|
|
143
|
-
if (v === null) return v;
|
|
144
|
-
v.isTouched = false;
|
|
145
|
-
return v;
|
|
146
|
-
};
|
|
147
|
-
scrollConfig.modify(clearTouched);
|
|
148
|
-
for (const ancestorConfig of ancestorScrollConfigs) {
|
|
149
|
-
ancestorConfig.modify(clearTouched);
|
|
150
|
-
}
|
|
148
|
+
scrollConfig.modify(update);
|
|
151
149
|
});
|
|
152
150
|
return {
|
|
153
151
|
scrollHandler,
|
|
154
152
|
onContentSizeChange,
|
|
155
153
|
onLayout,
|
|
156
|
-
|
|
157
|
-
onTouchEnd
|
|
154
|
+
nativeGesture
|
|
158
155
|
};
|
|
159
156
|
};
|
|
160
157
|
exports.useScrollRegistry = useScrollRegistry;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNativeReanimated","_gestures","_useStableCallback","_interopRequireDefault","e","__esModule","default","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNativeGestureHandler","_reactNativeReanimated","_gestures","_useStableCallback","_interopRequireDefault","e","__esModule","default","findGestureOwnerForAxis","context","axis","current","startIsolated","isIsolated","undefined","ownsAxis","claimedDirections","vertical","horizontal","scrollConfig","panGesture","ancestorContext","useScrollRegistry","props","useGestureContext","scrollDirection","direction","nativeGesture","useMemo","setIsTouched","value","isTouched","clearIsTouched","Gesture","Native","onTouchesDown","onTouchesUp","onTouchesCancelled","requireExternalGestureToFail","scrollHandler","useAnimatedScrollHandler","onScroll","event","update","v","x","contentOffset","y","contentHeight","contentWidth","layoutHeight","layoutWidth","modify","onContentSizeChange","useStableCallback","width","height","onLayout","nativeEvent","layout","exports"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-scroll-registry.tsx"],"mappings":"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","ignoreList":[]}
|