@react-navigation/stack 7.10.22 → 7.10.24

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.
@@ -36,24 +36,33 @@ function StackNavigator({
36
36
  screenLayout,
37
37
  UNSTABLE_router
38
38
  });
39
- React.useEffect(() =>
40
- // @ts-expect-error: there may not be a tab navigator in parent
41
- navigation.addListener?.('tabPress', e => {
42
- const isFocused = navigation.isFocused();
39
+ React.useEffect(() => {
40
+ let handle;
43
41
 
44
- // Run the operation in the next frame so we're sure all listeners have been run
45
- // This is necessary to know if preventDefault() has been called
46
- requestAnimationFrame(() => {
47
- if (state.index > 0 && isFocused && !e.defaultPrevented) {
48
- // When user taps on already focused tab and we're inside the tab,
49
- // reset the stack to replicate native behaviour
50
- navigation.dispatch({
51
- ...StackActions.popToTop(),
52
- target: state.key
53
- });
54
- }
42
+ // @ts-expect-error: there may not be a tab navigator in parent
43
+ const unsubscribe = navigation.addListener?.('tabPress', e => {
44
+ const isFocused = navigation.isFocused();
45
+ cancelAnimationFrame(handle);
46
+
47
+ // Run the operation in the next frame so we're sure all listeners have been run
48
+ // This is necessary to know if preventDefault() has been called
49
+ handle = requestAnimationFrame(() => {
50
+ const currentState = navigation.getState();
51
+ if (isFocused && currentState.index > 0 && !e.defaultPrevented) {
52
+ // When user taps on already focused tab and we're inside the tab,
53
+ // reset the stack to replicate native behaviour
54
+ navigation.dispatch({
55
+ ...StackActions.popToTop(),
56
+ target: currentState.key
57
+ });
58
+ }
59
+ });
55
60
  });
56
- }), [navigation, state.index, state.key]);
61
+ return () => {
62
+ cancelAnimationFrame(handle);
63
+ unsubscribe?.();
64
+ };
65
+ }, [navigation]);
57
66
  return /*#__PURE__*/_jsx(NavigationContent, {
58
67
  children: /*#__PURE__*/_jsx(StackView, {
59
68
  ...rest,
@@ -1 +1 @@
1
- {"version":3,"names":["createNavigatorFactory","createScreenFactory","StackActions","StackRouter","useLocale","useNavigationBuilder","React","StackView","jsx","_jsx","StackNavigator","id","initialRouteName","UNSTABLE_routeNamesChangeBehavior","children","layout","screenListeners","screenOptions","screenLayout","UNSTABLE_router","rest","direction","state","describe","descriptors","navigation","NavigationContent","useEffect","addListener","e","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","popToTop","target","key","createStackNavigator","config","createStackScreen"],"sourceRoot":"../../../src","sources":["navigators/createStackNavigator.tsx"],"mappings":";;AAAA,SACEA,sBAAsB,EACtBC,mBAAmB,EAKnBC,YAAY,EAEZC,WAAW,EAIXC,SAAS,EACTC,oBAAoB,QACf,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAQ9B,SAASC,SAAS,QAAQ,6BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAErD,SAASC,cAAcA,CAAC;EACtBC,EAAE;EACFC,gBAAgB;EAChBC,iCAAiC;EACjCC,QAAQ;EACRC,MAAM;EACNC,eAAe;EACfC,aAAa;EACbC,YAAY;EACZC,eAAe;EACf,GAAGC;AACgB,CAAC,EAAE;EACtB,MAAM;IAAEC;EAAU,CAAC,GAAGjB,SAAS,CAAC,CAAC;EAEjC,MAAM;IAAEkB,KAAK;IAAEC,QAAQ;IAAEC,WAAW;IAAEC,UAAU;IAAEC;EAAkB,CAAC,GACnErB,oBAAoB,CAMlBF,WAAW,EAAE;IACbQ,EAAE;IACFC,gBAAgB;IAChBC,iCAAiC;IACjCC,QAAQ;IACRC,MAAM;IACNC,eAAe;IACfC,aAAa;IACbC,YAAY;IACZC;EACF,CAAC,CAAC;EAEJb,KAAK,CAACqB,SAAS,CACb;EACE;EACAF,UAAU,CAACG,WAAW,GAAG,UAAU,EAAGC,CAAC,IAAK;IAC1C,MAAMC,SAAS,GAAGL,UAAU,CAACK,SAAS,CAAC,CAAC;;IAExC;IACA;IACAC,qBAAqB,CAAC,MAAM;MAC1B,IACET,KAAK,CAACU,KAAK,GAAG,CAAC,IACfF,SAAS,IACT,CAAED,CAAC,CAA2CI,gBAAgB,EAC9D;QACA;QACA;QACAR,UAAU,CAACS,QAAQ,CAAC;UAClB,GAAGhC,YAAY,CAACiC,QAAQ,CAAC,CAAC;UAC1BC,MAAM,EAAEd,KAAK,CAACe;QAChB,CAAC,CAAC;MACJ;IACF,CAAC,CAAC;EACJ,CAAC,CAAC,EACJ,CAACZ,UAAU,EAAEH,KAAK,CAACU,KAAK,EAAEV,KAAK,CAACe,GAAG,CACrC,CAAC;EAED,oBACE5B,IAAA,CAACiB,iBAAiB;IAAAZ,QAAA,eAChBL,IAAA,CAACF,SAAS;MAAA,GACJa,IAAI;MACRC,SAAS,EAAEA,SAAU;MACrBC,KAAK,EAAEA,KAAM;MACbC,QAAQ,EAAEA,QAAS;MACnBC,WAAW,EAAEA,WAAY;MACzBC,UAAU,EAAEA;IAAW,CACxB;EAAC,CACe,CAAC;AAExB;AAqBA,OAAO,SAASa,oBAAoBA,CAQlCC,MAAe,EAAmC;EAClD,OAAOvC,sBAAsB,CAACU,cAAc,CAAC,CAAC6B,MAAM,CAAC;AACvD;AAEA,OAAO,MAAMC,iBAAiB,GAAGvC,mBAAmB,CAAe,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createNavigatorFactory","createScreenFactory","StackActions","StackRouter","useLocale","useNavigationBuilder","React","StackView","jsx","_jsx","StackNavigator","id","initialRouteName","UNSTABLE_routeNamesChangeBehavior","children","layout","screenListeners","screenOptions","screenLayout","UNSTABLE_router","rest","direction","state","describe","descriptors","navigation","NavigationContent","useEffect","handle","unsubscribe","addListener","e","isFocused","cancelAnimationFrame","requestAnimationFrame","currentState","getState","index","defaultPrevented","dispatch","popToTop","target","key","createStackNavigator","config","createStackScreen"],"sourceRoot":"../../../src","sources":["navigators/createStackNavigator.tsx"],"mappings":";;AAAA,SACEA,sBAAsB,EACtBC,mBAAmB,EAKnBC,YAAY,EAEZC,WAAW,EAIXC,SAAS,EACTC,oBAAoB,QACf,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAQ9B,SAASC,SAAS,QAAQ,6BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAErD,SAASC,cAAcA,CAAC;EACtBC,EAAE;EACFC,gBAAgB;EAChBC,iCAAiC;EACjCC,QAAQ;EACRC,MAAM;EACNC,eAAe;EACfC,aAAa;EACbC,YAAY;EACZC,eAAe;EACf,GAAGC;AACgB,CAAC,EAAE;EACtB,MAAM;IAAEC;EAAU,CAAC,GAAGjB,SAAS,CAAC,CAAC;EAEjC,MAAM;IAAEkB,KAAK;IAAEC,QAAQ;IAAEC,WAAW;IAAEC,UAAU;IAAEC;EAAkB,CAAC,GACnErB,oBAAoB,CAMlBF,WAAW,EAAE;IACbQ,EAAE;IACFC,gBAAgB;IAChBC,iCAAiC;IACjCC,QAAQ;IACRC,MAAM;IACNC,eAAe;IACfC,aAAa;IACbC,YAAY;IACZC;EACF,CAAC,CAAC;EAEJb,KAAK,CAACqB,SAAS,CAAC,MAAM;IACpB,IAAIC,MAA4D;;IAEhE;IACA,MAAMC,WAAW,GAAGJ,UAAU,CAACK,WAAW,GAAG,UAAU,EAAGC,CAAC,IAAK;MAC9D,MAAMC,SAAS,GAAGP,UAAU,CAACO,SAAS,CAAC,CAAC;MAExCC,oBAAoB,CAACL,MAAM,CAAC;;MAE5B;MACA;MACAA,MAAM,GAAGM,qBAAqB,CAAC,MAAM;QACnC,MAAMC,YAAY,GAAGV,UAAU,CAACW,QAAQ,CAAC,CAAC;QAE1C,IACEJ,SAAS,IACTG,YAAY,CAACE,KAAK,GAAG,CAAC,IACtB,CAAEN,CAAC,CAAgCO,gBAAgB,EACnD;UACA;UACA;UACAb,UAAU,CAACc,QAAQ,CAAC;YAClB,GAAGrC,YAAY,CAACsC,QAAQ,CAAC,CAAC;YAC1BC,MAAM,EAAEN,YAAY,CAACO;UACvB,CAAC,CAAC;QACJ;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,MAAM;MACXT,oBAAoB,CAACL,MAAM,CAAC;MAC5BC,WAAW,GAAG,CAAC;IACjB,CAAC;EACH,CAAC,EAAE,CAACJ,UAAU,CAAC,CAAC;EAEhB,oBACEhB,IAAA,CAACiB,iBAAiB;IAAAZ,QAAA,eAChBL,IAAA,CAACF,SAAS;MAAA,GACJa,IAAI;MACRC,SAAS,EAAEA,SAAU;MACrBC,KAAK,EAAEA,KAAM;MACbC,QAAQ,EAAEA,QAAS;MACnBC,WAAW,EAAEA,WAAY;MACzBC,UAAU,EAAEA;IAAW,CACxB;EAAC,CACe,CAAC;AAExB;AAqBA,OAAO,SAASkB,oBAAoBA,CAQlCC,MAAe,EAAmC;EAClD,OAAO5C,sBAAsB,CAACU,cAAc,CAAC,CAACkC,MAAM,CAAC;AACvD;AAEA,OAAO,MAAMC,iBAAiB,GAAG5C,mBAAmB,CAAe,CAAC","ignoreList":[]}
@@ -75,11 +75,15 @@ function Card({
75
75
  contentStyle
76
76
  }) {
77
77
  const didInitiallyAnimate = React.useRef(false);
78
+ const isClosingValueLockedRef = React.useRef(false);
78
79
  const lastToValueRef = React.useRef(undefined);
80
+ const isAnimatingRef = React.useRef(false);
81
+ const animationIdRef = React.useRef(0);
79
82
  const interactionHandleRef = React.useRef(undefined);
80
83
  const animationHandleRef = React.useRef(undefined);
81
84
  const pendingGestureCallbackRef = React.useRef(undefined);
82
85
  const pendingOnCloseCallbackRef = React.useRef(undefined);
86
+ const timeoutRef = React.useRef(undefined);
83
87
  const [isClosing] = React.useState(() => new Animated.Value(FALSE));
84
88
  const [inverted] = React.useState(() => new Animated.Value(getInvertedMultiplier(gestureDirection, direction === 'rtl')));
85
89
  const [layoutAnim] = React.useState(() => ({
@@ -102,6 +106,7 @@ function Card({
102
106
  closing: isClosingParam,
103
107
  velocity
104
108
  }) => {
109
+ const id = ++animationIdRef.current;
105
110
  const toValue = getAnimateToValue({
106
111
  closing: isClosingParam,
107
112
  layout,
@@ -110,7 +115,13 @@ function Card({
110
115
  preloaded
111
116
  });
112
117
  lastToValueRef.current = toValue;
113
- isClosing.setValue(isClosingParam ? TRUE : FALSE);
118
+
119
+ // Switching between open and close mid-gesture and animation can cause a visible jump.
120
+ // So we lock the closing value until the animation is finished.
121
+ if (!isClosingValueLockedRef.current) {
122
+ isClosingValueLockedRef.current = true;
123
+ isClosing.setValue(isClosingParam ? TRUE : FALSE);
124
+ }
114
125
  const spec = isClosingParam ? transitionSpec.close : transitionSpec.open;
115
126
  const animation = spec.animation === 'spring' ? Animated.spring : Animated.timing;
116
127
  clearTimeout(pendingGestureCallbackRef.current);
@@ -122,6 +133,8 @@ function Card({
122
133
  gesture: velocity !== undefined
123
134
  });
124
135
  const onFinish = () => {
136
+ isClosing.setValue(isClosingParam ? TRUE : FALSE);
137
+ isClosingValueLockedRef.current = false;
125
138
  if (isClosingParam) {
126
139
  onClose();
127
140
  } else {
@@ -133,6 +146,7 @@ function Card({
133
146
  });
134
147
  };
135
148
  if (animated) {
149
+ isAnimatingRef.current = true;
136
150
  onStartInteraction();
137
151
  animation(gesture, {
138
152
  ...spec.config,
@@ -143,6 +157,10 @@ function Card({
143
157
  }).start(({
144
158
  finished
145
159
  }) => {
160
+ if (id !== animationIdRef.current) {
161
+ return;
162
+ }
163
+ isAnimatingRef.current = false;
146
164
  onEndInteraction();
147
165
  clearTimeout(pendingGestureCallbackRef.current);
148
166
  if (finished) {
@@ -150,6 +168,8 @@ function Card({
150
168
  }
151
169
  });
152
170
  } else {
171
+ isAnimatingRef.current = false;
172
+ gesture.setValue(toValue);
153
173
  onFinish();
154
174
  }
155
175
  });
@@ -161,6 +181,10 @@ function Card({
161
181
  clearTimeout(pendingGestureCallbackRef.current);
162
182
  clearTimeout(pendingOnCloseCallbackRef.current);
163
183
  isSwiping.setValue(TRUE);
184
+ if (!isClosingValueLockedRef.current) {
185
+ isClosingValueLockedRef.current = true;
186
+ isClosing.setValue(TRUE);
187
+ }
164
188
  onStartInteraction();
165
189
  onGestureBegin?.();
166
190
  break;
@@ -223,19 +247,21 @@ function Card({
223
247
  }, [gestureDirection, direction, inverted, layoutAnim.width, layoutAnim.height, layout.width, layout.height]);
224
248
  const previousPropsRef = React.useRef(null);
225
249
  React.useEffect(() => {
250
+ const animationIdRefForCleanup = animationIdRef;
226
251
  return () => {
252
+ // Increment the animation ID when the card unmounts.
253
+ // This makes pending callbacks return because their IDs no longer match.
254
+ animationIdRefForCleanup.current++;
255
+ gesture.stopAnimation();
227
256
  onEndInteraction();
228
257
  if (animationHandleRef.current) {
229
258
  cancelAnimationFrame(animationHandleRef.current);
230
259
  }
231
260
  clearTimeout(pendingGestureCallbackRef.current);
232
261
  clearTimeout(pendingOnCloseCallbackRef.current);
262
+ clearTimeout(timeoutRef.current);
233
263
  };
234
-
235
- // We only want to clean up the animation on unmount
236
- // eslint-disable-next-line react-hooks/exhaustive-deps
237
- }, []);
238
- const timeoutRef = React.useRef(undefined);
264
+ }, [gesture, onEndInteraction]);
239
265
  const maybeAnimate = useLatestCallback(() => {
240
266
  clearTimeout(pendingGestureCallbackRef.current);
241
267
  clearTimeout(pendingOnCloseCallbackRef.current);
@@ -268,9 +294,12 @@ function Card({
268
294
  // When route was closed due to a gesture, the animation would've happened already
269
295
  // It's still important to trigger the animation so that `onClose` is called
270
296
  // If `onClose` is not called, cleanup step won't be performed for gestures
271
- animate({
272
- closing
273
- });
297
+ // We also check if animation was already running so we don't restart it unnecessarily
298
+ if (!isAnimatingRef.current || lastToValueRef.current !== toValue) {
299
+ animate({
300
+ closing
301
+ });
302
+ }
274
303
  } else if (typeof previousOpening === 'boolean' && opening && !previousOpening) {
275
304
  // This can happen when screen somewhere below in the stack comes into focus via rearranging
276
305
  // Also reset the animated value to make sure that the animation starts from the beginning
@@ -1 +1 @@
1
- {"version":3,"names":["Color","React","Animated","Platform","StyleSheet","View","useLatestCallback","CardAnimationContext","gestureActivationCriteria","getDistanceForDirection","getInvertedMultiplier","getShadowStyle","GestureState","PanGestureHandler","InteractionManager","CardContent","jsx","_jsx","jsxs","_jsxs","GESTURE_VELOCITY_IMPACT","TRUE","FALSE","useNativeDriver","OS","hasOpacityStyle","style","flattenedStyle","flatten","opacity","getAnimateToValue","closing","isClosing","layout","currentLayout","gestureDirection","currentGestureDirection","direction","currentDirection","preloaded","isPreloaded","defaultOverlay","pointerEvents","styles","overlay","Card","shadowEnabled","gestureEnabled","gestureVelocityImpact","animated","interpolationIndex","opening","next","current","gesture","insets","pageOverflowEnabled","onOpen","onClose","onTransition","onGestureBegin","onGestureCanceled","onGestureEnd","children","overlayEnabled","gestureResponseDistance","transitionSpec","styleInterpolator","containerStyle","customContainerStyle","contentStyle","didInitiallyAnimate","useRef","lastToValueRef","undefined","interactionHandleRef","animationHandleRef","pendingGestureCallbackRef","pendingOnCloseCallbackRef","useState","Value","inverted","layoutAnim","width","height","isSwiping","onStartInteraction","createInteractionHandle","onEndInteraction","clearInteractionHandle","animate","isClosingParam","velocity","toValue","setValue","spec","close","open","animation","spring","timing","clearTimeout","cancelAnimationFrame","onFinish","requestAnimationFrame","maybeAnimate","config","isInteraction","start","finished","onGestureStateChange","nativeEvent","state","ACTIVE","CANCELLED","FAILED","velocityY","velocityX","END","distance","translation","translationY","translationX","shouldClose","setTimeout","useLayoutEffect","previousPropsRef","useEffect","timeoutRef","previousOpening","previousToValue","interpolationProps","useMemo","index","progress","swiping","layouts","screen","top","right","bottom","left","cardStyle","overlayStyle","shadowStyle","onGestureEvent","event","backgroundColor","isTransparent","alpha","Provider","value","collapsable","absoluteFill","container","enabled","onHandlerStateChange","needsOffscreenAlphaCompositing","shadow","shadowHorizontal","shadowStart","shadowEnd","shadowVertical","shadowTop","shadowBottom","create","flex","position","offset","radius","end"],"sourceRoot":"../../../../src","sources":["views/Stack/Card.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Color","React","Animated","Platform","StyleSheet","View","useLatestCallback","CardAnimationContext","gestureActivationCriteria","getDistanceForDirection","getInvertedMultiplier","getShadowStyle","GestureState","PanGestureHandler","InteractionManager","CardContent","jsx","_jsx","jsxs","_jsxs","GESTURE_VELOCITY_IMPACT","TRUE","FALSE","useNativeDriver","OS","hasOpacityStyle","style","flattenedStyle","flatten","opacity","getAnimateToValue","closing","isClosing","layout","currentLayout","gestureDirection","currentGestureDirection","direction","currentDirection","preloaded","isPreloaded","defaultOverlay","pointerEvents","styles","overlay","Card","shadowEnabled","gestureEnabled","gestureVelocityImpact","animated","interpolationIndex","opening","next","current","gesture","insets","pageOverflowEnabled","onOpen","onClose","onTransition","onGestureBegin","onGestureCanceled","onGestureEnd","children","overlayEnabled","gestureResponseDistance","transitionSpec","styleInterpolator","containerStyle","customContainerStyle","contentStyle","didInitiallyAnimate","useRef","isClosingValueLockedRef","lastToValueRef","undefined","isAnimatingRef","animationIdRef","interactionHandleRef","animationHandleRef","pendingGestureCallbackRef","pendingOnCloseCallbackRef","timeoutRef","useState","Value","inverted","layoutAnim","width","height","isSwiping","onStartInteraction","createInteractionHandle","onEndInteraction","clearInteractionHandle","animate","isClosingParam","velocity","id","toValue","setValue","spec","close","open","animation","spring","timing","clearTimeout","cancelAnimationFrame","onFinish","requestAnimationFrame","maybeAnimate","config","isInteraction","start","finished","onGestureStateChange","nativeEvent","state","ACTIVE","CANCELLED","FAILED","velocityY","velocityX","END","distance","translation","translationY","translationX","shouldClose","setTimeout","useLayoutEffect","previousPropsRef","useEffect","animationIdRefForCleanup","stopAnimation","previousOpening","previousToValue","interpolationProps","useMemo","index","progress","swiping","layouts","screen","top","right","bottom","left","cardStyle","overlayStyle","shadowStyle","onGestureEvent","event","backgroundColor","isTransparent","alpha","Provider","value","collapsable","absoluteFill","container","enabled","onHandlerStateChange","needsOffscreenAlphaCompositing","shadow","shadowHorizontal","shadowStart","shadowEnd","shadowVertical","shadowTop","shadowBottom","create","flex","position","offset","radius","end"],"sourceRoot":"../../../../src","sources":["views/Stack/Card.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"createStackNavigator.d.ts","sourceRoot":"","sources":["../../../../src/navigators/createStackNavigator.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAGlB,KAAK,oBAAoB,EAGzB,KAAK,YAAY,EACjB,KAAK,cAAc,EAGpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EACV,uBAAuB,EACvB,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,aAAU,CAAC;AAGlB,iBAAS,cAAc,CAAC,EACtB,EAAE,EACF,gBAAgB,EAChB,iCAAiC,EACjC,QAAQ,EACR,MAAM,EACN,eAAe,EACf,aAAa,EACb,YAAY,EACZ,eAAe,EACf,GAAG,IAAI,EACR,EAAE,mBAAmB,qBA4DrB;AAED,MAAM,MAAM,YAAY,CACtB,SAAS,SAAS,aAAa,GAAG,aAAa,EAC/C,WAAW,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACzD;IACF,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACvC,aAAa,EAAE,sBAAsB,CAAC;IACtC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,cAAc,EAAE;SACb,SAAS,IAAI,MAAM,SAAS,GAAG,mBAAmB,CACjD,SAAS,EACT,SAAS,EACT,WAAW,CACZ;KACF,CAAC;IACF,SAAS,EAAE,OAAO,cAAc,CAAC;CAClC,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,KAAK,CAAC,SAAS,SAAS,aAAa,EACrC,KAAK,CAAC,WAAW,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,EACjE,KAAK,CAAC,OAAO,SAAS,oBAAoB,GAAG,YAAY,CACvD,SAAS,EACT,WAAW,CACZ,EACD,KAAK,CAAC,MAAM,SAAS,YAAY,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,EAClE,MAAM,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAElD;AAED,eAAO,MAAM,iBAAiB,uGAAsC,CAAC"}
1
+ {"version":3,"file":"createStackNavigator.d.ts","sourceRoot":"","sources":["../../../../src/navigators/createStackNavigator.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAGlB,KAAK,oBAAoB,EAGzB,KAAK,YAAY,EACjB,KAAK,cAAc,EAGpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EACV,uBAAuB,EACvB,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,aAAU,CAAC;AAGlB,iBAAS,cAAc,CAAC,EACtB,EAAE,EACF,gBAAgB,EAChB,iCAAiC,EACjC,QAAQ,EACR,MAAM,EACN,eAAe,EACf,aAAa,EACb,YAAY,EACZ,eAAe,EACf,GAAG,IAAI,EACR,EAAE,mBAAmB,qBAqErB;AAED,MAAM,MAAM,YAAY,CACtB,SAAS,SAAS,aAAa,GAAG,aAAa,EAC/C,WAAW,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACzD;IACF,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACvC,aAAa,EAAE,sBAAsB,CAAC;IACtC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,cAAc,EAAE;SACb,SAAS,IAAI,MAAM,SAAS,GAAG,mBAAmB,CACjD,SAAS,EACT,SAAS,EACT,WAAW,CACZ;KACF,CAAC;IACF,SAAS,EAAE,OAAO,cAAc,CAAC;CAClC,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,KAAK,CAAC,SAAS,SAAS,aAAa,EACrC,KAAK,CAAC,WAAW,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,EACjE,KAAK,CAAC,OAAO,SAAS,oBAAoB,GAAG,YAAY,CACvD,SAAS,EACT,WAAW,CACZ,EACD,KAAK,CAAC,MAAM,SAAS,YAAY,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,EAClE,MAAM,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAElD;AAED,eAAO,MAAM,iBAAiB,uGAAsC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,QAAQ,EAER,KAAK,SAAS,EAGd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAGjE,OAAO,KAAK,EACV,gBAAgB,EAChB,MAAM,EACN,0BAA0B,EAC1B,cAAc,EACf,MAAM,gBAAa,CAAC;AAcrB,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,OAAO,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IACzD,OAAO,EAAE,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAChD,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,eAAe,CAAC;IAC3B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACtE,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,EACH,CAAC,CAAC,KAAK,EAAE;QACP,KAAK,EAAE,QAAQ,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;KACzD,KAAK,KAAK,CAAC,SAAS,CAAC,GACtB,SAAS,CAAC;IACd,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,cAAc,EAAE,OAAO,CAAC;IACxB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,cAAc,EAAE;QACd,IAAI,EAAE,cAAc,CAAC;QACrB,KAAK,EAAE,cAAc,CAAC;KACvB,CAAC;IACF,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,0BAA0B,CAAC;IAC9C,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACtC,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CACrC,CAAC;AAsDF,iBAAS,IAAI,CAAC,EACZ,aAAqB,EACrB,cAAqB,EACrB,qBAA+C,EAC/C,OAAwB,EACxB,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,OAAO,EACP,IAAI,EACJ,OAAO,EACP,OAAO,EACP,MAAM,EACN,MAAM,EACN,SAAS,EACT,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,EACN,OAAO,EACP,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,uBAAuB,EACvB,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,cAAc,EAAE,oBAAoB,EACpC,YAAY,GACb,EAAE,KAAK,qBAicP;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,QAAQ,EAER,KAAK,SAAS,EAGd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAGjE,OAAO,KAAK,EACV,gBAAgB,EAChB,MAAM,EACN,0BAA0B,EAC1B,cAAc,EACf,MAAM,gBAAa,CAAC;AAcrB,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,OAAO,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IACzD,OAAO,EAAE,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAChD,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,eAAe,CAAC;IAC3B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACtE,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,EACH,CAAC,CAAC,KAAK,EAAE;QACP,KAAK,EAAE,QAAQ,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;KACzD,KAAK,KAAK,CAAC,SAAS,CAAC,GACtB,SAAS,CAAC;IACd,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,cAAc,EAAE,OAAO,CAAC;IACxB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,cAAc,EAAE;QACd,IAAI,EAAE,cAAc,CAAC;QACrB,KAAK,EAAE,cAAc,CAAC;KACvB,CAAC;IACF,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,0BAA0B,CAAC;IAC9C,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACtC,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CACrC,CAAC;AAsDF,iBAAS,IAAI,CAAC,EACZ,aAAqB,EACrB,cAAqB,EACrB,qBAA+C,EAC/C,OAAwB,EACxB,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,OAAO,EACP,IAAI,EACJ,OAAO,EACP,OAAO,EACP,MAAM,EACN,MAAM,EACN,SAAS,EACT,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,EACN,OAAO,EACP,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,uBAAuB,EACvB,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,cAAc,EAAE,oBAAoB,EACpC,YAAY,GACb,EAAE,KAAK,qBAqeP;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@react-navigation/stack",
3
3
  "description": "Stack navigator component for iOS and Android with animated transitions and gestures",
4
- "version": "7.10.22",
4
+ "version": "7.10.24",
5
5
  "keywords": [
6
6
  "react-native-component",
7
7
  "react-component",
@@ -45,13 +45,13 @@
45
45
  "clean": "del lib"
46
46
  },
47
47
  "dependencies": {
48
- "@react-navigation/elements": "^2.9.38",
48
+ "@react-navigation/elements": "^2.9.40",
49
49
  "color": "^4.2.3",
50
50
  "use-latest-callback": "^0.2.4"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@jest/globals": "^30.0.0",
54
- "@react-navigation/native": "^7.3.16",
54
+ "@react-navigation/native": "^7.3.18",
55
55
  "@testing-library/react-native": "^13.2.1",
56
56
  "@types/color": "^4.2.0",
57
57
  "@types/react": "~19.2.4",
@@ -66,7 +66,7 @@
66
66
  "typescript": "~6.0.3"
67
67
  },
68
68
  "peerDependencies": {
69
- "@react-navigation/native": "^7.3.16",
69
+ "@react-navigation/native": "^7.3.18",
70
70
  "react": ">= 18.2.0",
71
71
  "react-native": "*",
72
72
  "react-native-gesture-handler": ">= 2.0.0",
@@ -91,5 +91,5 @@
91
91
  ]
92
92
  ]
93
93
  },
94
- "gitHead": "a9b8fac19c980b1ddb7ab9afbfc2efbfa0eb24c6"
94
+ "gitHead": "5555d32c0a07622c822c036def83987cf4f77f4d"
95
95
  }
@@ -57,31 +57,40 @@ function StackNavigator({
57
57
  UNSTABLE_router,
58
58
  });
59
59
 
60
- React.useEffect(
61
- () =>
62
- // @ts-expect-error: there may not be a tab navigator in parent
63
- navigation.addListener?.('tabPress', (e) => {
64
- const isFocused = navigation.isFocused();
60
+ React.useEffect(() => {
61
+ let handle: ReturnType<typeof requestAnimationFrame> | undefined;
65
62
 
66
- // Run the operation in the next frame so we're sure all listeners have been run
67
- // This is necessary to know if preventDefault() has been called
68
- requestAnimationFrame(() => {
69
- if (
70
- state.index > 0 &&
71
- isFocused &&
72
- !(e as unknown as EventArg<'tabPress', true>).defaultPrevented
73
- ) {
74
- // When user taps on already focused tab and we're inside the tab,
75
- // reset the stack to replicate native behaviour
76
- navigation.dispatch({
77
- ...StackActions.popToTop(),
78
- target: state.key,
79
- });
80
- }
81
- });
82
- }),
83
- [navigation, state.index, state.key]
84
- );
63
+ // @ts-expect-error: there may not be a tab navigator in parent
64
+ const unsubscribe = navigation.addListener?.('tabPress', (e) => {
65
+ const isFocused = navigation.isFocused();
66
+
67
+ cancelAnimationFrame(handle);
68
+
69
+ // Run the operation in the next frame so we're sure all listeners have been run
70
+ // This is necessary to know if preventDefault() has been called
71
+ handle = requestAnimationFrame(() => {
72
+ const currentState = navigation.getState();
73
+
74
+ if (
75
+ isFocused &&
76
+ currentState.index > 0 &&
77
+ !(e as EventArg<'tabPress', true>).defaultPrevented
78
+ ) {
79
+ // When user taps on already focused tab and we're inside the tab,
80
+ // reset the stack to replicate native behaviour
81
+ navigation.dispatch({
82
+ ...StackActions.popToTop(),
83
+ target: currentState.key,
84
+ });
85
+ }
86
+ });
87
+ });
88
+
89
+ return () => {
90
+ cancelAnimationFrame(handle);
91
+ unsubscribe?.();
92
+ };
93
+ }, [navigation]);
85
94
 
86
95
  return (
87
96
  <NavigationContent>
@@ -156,7 +156,10 @@ function Card({
156
156
  contentStyle,
157
157
  }: Props) {
158
158
  const didInitiallyAnimate = React.useRef(false);
159
+ const isClosingValueLockedRef = React.useRef(false);
159
160
  const lastToValueRef = React.useRef<number | undefined>(undefined);
161
+ const isAnimatingRef = React.useRef(false);
162
+ const animationIdRef = React.useRef(0);
160
163
 
161
164
  const interactionHandleRef = React.useRef<number | undefined>(undefined);
162
165
  const animationHandleRef = React.useRef<number | undefined>(undefined);
@@ -164,6 +167,7 @@ function Card({
164
167
  React.useRef<ReturnType<typeof setTimeout>>(undefined);
165
168
  const pendingOnCloseCallbackRef =
166
169
  React.useRef<ReturnType<typeof setTimeout>>(undefined);
170
+ const timeoutRef = React.useRef<ReturnType<typeof setTimeout>>(undefined);
167
171
 
168
172
  const [isClosing] = React.useState(() => new Animated.Value(FALSE));
169
173
 
@@ -203,6 +207,8 @@ function Card({
203
207
  closing: boolean;
204
208
  velocity?: number;
205
209
  }) => {
210
+ const id = ++animationIdRef.current;
211
+
206
212
  const toValue = getAnimateToValue({
207
213
  closing: isClosingParam,
208
214
  layout,
@@ -212,7 +218,13 @@ function Card({
212
218
  });
213
219
 
214
220
  lastToValueRef.current = toValue;
215
- isClosing.setValue(isClosingParam ? TRUE : FALSE);
221
+
222
+ // Switching between open and close mid-gesture and animation can cause a visible jump.
223
+ // So we lock the closing value until the animation is finished.
224
+ if (!isClosingValueLockedRef.current) {
225
+ isClosingValueLockedRef.current = true;
226
+ isClosing.setValue(isClosingParam ? TRUE : FALSE);
227
+ }
216
228
 
217
229
  const spec = isClosingParam ? transitionSpec.close : transitionSpec.open;
218
230
  const animation =
@@ -230,6 +242,9 @@ function Card({
230
242
  });
231
243
 
232
244
  const onFinish = () => {
245
+ isClosing.setValue(isClosingParam ? TRUE : FALSE);
246
+ isClosingValueLockedRef.current = false;
247
+
233
248
  if (isClosingParam) {
234
249
  onClose();
235
250
  } else {
@@ -243,6 +258,8 @@ function Card({
243
258
  };
244
259
 
245
260
  if (animated) {
261
+ isAnimatingRef.current = true;
262
+
246
263
  onStartInteraction();
247
264
  animation(gesture, {
248
265
  ...spec.config,
@@ -251,6 +268,12 @@ function Card({
251
268
  useNativeDriver,
252
269
  isInteraction: false,
253
270
  }).start(({ finished }) => {
271
+ if (id !== animationIdRef.current) {
272
+ return;
273
+ }
274
+
275
+ isAnimatingRef.current = false;
276
+
254
277
  onEndInteraction();
255
278
  clearTimeout(pendingGestureCallbackRef.current);
256
279
 
@@ -259,6 +282,8 @@ function Card({
259
282
  }
260
283
  });
261
284
  } else {
285
+ isAnimatingRef.current = false;
286
+ gesture.setValue(toValue);
262
287
  onFinish();
263
288
  }
264
289
  }
@@ -271,6 +296,12 @@ function Card({
271
296
  clearTimeout(pendingGestureCallbackRef.current);
272
297
  clearTimeout(pendingOnCloseCallbackRef.current);
273
298
  isSwiping.setValue(TRUE);
299
+
300
+ if (!isClosingValueLockedRef.current) {
301
+ isClosingValueLockedRef.current = true;
302
+ isClosing.setValue(TRUE);
303
+ }
304
+
274
305
  onStartInteraction();
275
306
  onGestureBegin?.();
276
307
  break;
@@ -370,7 +401,13 @@ function Card({
370
401
  } | null>(null);
371
402
 
372
403
  React.useEffect(() => {
404
+ const animationIdRefForCleanup = animationIdRef;
405
+
373
406
  return () => {
407
+ // Increment the animation ID when the card unmounts.
408
+ // This makes pending callbacks return because their IDs no longer match.
409
+ animationIdRefForCleanup.current++;
410
+ gesture.stopAnimation();
374
411
  onEndInteraction();
375
412
 
376
413
  if (animationHandleRef.current) {
@@ -379,13 +416,9 @@ function Card({
379
416
 
380
417
  clearTimeout(pendingGestureCallbackRef.current);
381
418
  clearTimeout(pendingOnCloseCallbackRef.current);
419
+ clearTimeout(timeoutRef.current);
382
420
  };
383
-
384
- // We only want to clean up the animation on unmount
385
- // eslint-disable-next-line react-hooks/exhaustive-deps
386
- }, []);
387
-
388
- const timeoutRef = React.useRef<ReturnType<typeof setTimeout>>(undefined);
421
+ }, [gesture, onEndInteraction]);
389
422
 
390
423
  const maybeAnimate = useLatestCallback(() => {
391
424
  clearTimeout(pendingGestureCallbackRef.current);
@@ -423,7 +456,10 @@ function Card({
423
456
  // When route was closed due to a gesture, the animation would've happened already
424
457
  // It's still important to trigger the animation so that `onClose` is called
425
458
  // If `onClose` is not called, cleanup step won't be performed for gestures
426
- animate({ closing });
459
+ // We also check if animation was already running so we don't restart it unnecessarily
460
+ if (!isAnimatingRef.current || lastToValueRef.current !== toValue) {
461
+ animate({ closing });
462
+ }
427
463
  } else if (
428
464
  typeof previousOpening === 'boolean' &&
429
465
  opening &&