react-native-screen-transitions 3.0.0-rc.3 → 3.0.0-rc.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.
Files changed (120) hide show
  1. package/lib/commonjs/blank-stack/components/screens.js +16 -11
  2. package/lib/commonjs/blank-stack/components/screens.js.map +1 -1
  3. package/lib/commonjs/blank-stack/components/stack-view.js +42 -36
  4. package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -1
  5. package/lib/commonjs/native-stack/views/NativeStackView.native.js +110 -103
  6. package/lib/commonjs/native-stack/views/NativeStackView.native.js.map +1 -1
  7. package/lib/commonjs/shared/components/controllers/blank-stack-lifecycle.js +72 -0
  8. package/lib/commonjs/shared/components/controllers/blank-stack-lifecycle.js.map +1 -0
  9. package/lib/commonjs/shared/components/controllers/native-stack-lifecycle.js +79 -0
  10. package/lib/commonjs/shared/components/controllers/native-stack-lifecycle.js.map +1 -0
  11. package/lib/commonjs/shared/hooks/animation/use-screen-animation.js +11 -1
  12. package/lib/commonjs/shared/hooks/animation/use-screen-animation.js.map +1 -1
  13. package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js +11 -6
  14. package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js.map +1 -1
  15. package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.js +7 -7
  16. package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.js.map +1 -1
  17. package/lib/commonjs/shared/providers/gestures.provider.js +32 -5
  18. package/lib/commonjs/shared/providers/gestures.provider.js.map +1 -1
  19. package/lib/commonjs/shared/providers/register-bounds.provider.js +4 -3
  20. package/lib/commonjs/shared/providers/register-bounds.provider.js.map +1 -1
  21. package/lib/commonjs/shared/providers/routes.provider.js +48 -0
  22. package/lib/commonjs/shared/providers/routes.provider.js.map +1 -0
  23. package/lib/commonjs/shared/providers/screen-transition.provider.js.map +1 -1
  24. package/lib/commonjs/shared/types/state.types.js +9 -0
  25. package/lib/commonjs/shared/types/state.types.js.map +1 -0
  26. package/lib/commonjs/shared/utils/animation/compute-stack-progress.js +20 -0
  27. package/lib/commonjs/shared/utils/animation/compute-stack-progress.js.map +1 -0
  28. package/lib/commonjs/shared/utils/animation/derivations.js +1 -1
  29. package/lib/commonjs/shared/utils/animation/start-screen-transition.js +11 -11
  30. package/lib/commonjs/shared/utils/animation/start-screen-transition.js.map +1 -1
  31. package/lib/module/blank-stack/components/screens.js +16 -11
  32. package/lib/module/blank-stack/components/screens.js.map +1 -1
  33. package/lib/module/blank-stack/components/stack-view.js +42 -36
  34. package/lib/module/blank-stack/components/stack-view.js.map +1 -1
  35. package/lib/module/native-stack/views/NativeStackView.native.js +109 -102
  36. package/lib/module/native-stack/views/NativeStackView.native.js.map +1 -1
  37. package/lib/module/shared/components/controllers/blank-stack-lifecycle.js +66 -0
  38. package/lib/module/shared/components/controllers/blank-stack-lifecycle.js.map +1 -0
  39. package/lib/module/shared/components/controllers/native-stack-lifecycle.js +73 -0
  40. package/lib/module/shared/components/controllers/native-stack-lifecycle.js.map +1 -0
  41. package/lib/module/shared/hooks/animation/use-screen-animation.js +11 -1
  42. package/lib/module/shared/hooks/animation/use-screen-animation.js.map +1 -1
  43. package/lib/module/shared/hooks/gestures/use-build-gestures.js +11 -6
  44. package/lib/module/shared/hooks/gestures/use-build-gestures.js.map +1 -1
  45. package/lib/module/shared/hooks/gestures/use-scroll-registry.js +7 -7
  46. package/lib/module/shared/hooks/gestures/use-scroll-registry.js.map +1 -1
  47. package/lib/module/shared/providers/gestures.provider.js +31 -4
  48. package/lib/module/shared/providers/gestures.provider.js.map +1 -1
  49. package/lib/module/shared/providers/register-bounds.provider.js +4 -3
  50. package/lib/module/shared/providers/register-bounds.provider.js.map +1 -1
  51. package/lib/module/shared/providers/routes.provider.js +42 -0
  52. package/lib/module/shared/providers/routes.provider.js.map +1 -0
  53. package/lib/module/shared/providers/screen-transition.provider.js.map +1 -1
  54. package/lib/module/shared/types/state.types.js +5 -0
  55. package/lib/module/shared/types/state.types.js.map +1 -0
  56. package/lib/module/shared/utils/animation/compute-stack-progress.js +15 -0
  57. package/lib/module/shared/utils/animation/compute-stack-progress.js.map +1 -0
  58. package/lib/module/shared/utils/animation/derivations.js +1 -1
  59. package/lib/module/shared/utils/animation/start-screen-transition.js +11 -11
  60. package/lib/module/shared/utils/animation/start-screen-transition.js.map +1 -1
  61. package/lib/typescript/blank-stack/components/screens.d.ts.map +1 -1
  62. package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
  63. package/lib/typescript/blank-stack/types.d.ts +1 -39
  64. package/lib/typescript/blank-stack/types.d.ts.map +1 -1
  65. package/lib/typescript/native-stack/views/NativeStackView.native.d.ts.map +1 -1
  66. package/lib/typescript/shared/components/controllers/blank-stack-lifecycle.d.ts +8 -0
  67. package/lib/typescript/shared/components/controllers/blank-stack-lifecycle.d.ts.map +1 -0
  68. package/lib/typescript/shared/components/controllers/native-stack-lifecycle.d.ts +8 -0
  69. package/lib/typescript/shared/components/controllers/native-stack-lifecycle.d.ts.map +1 -0
  70. package/lib/typescript/shared/hooks/animation/use-screen-animation.d.ts.map +1 -1
  71. package/lib/typescript/shared/hooks/gestures/use-build-gestures.d.ts +2 -2
  72. package/lib/typescript/shared/hooks/gestures/use-build-gestures.d.ts.map +1 -1
  73. package/lib/typescript/shared/providers/gestures.provider.d.ts +8 -2
  74. package/lib/typescript/shared/providers/gestures.provider.d.ts.map +1 -1
  75. package/lib/typescript/shared/providers/register-bounds.provider.d.ts.map +1 -1
  76. package/lib/typescript/shared/providers/routes.provider.d.ts +19 -0
  77. package/lib/typescript/shared/providers/routes.provider.d.ts.map +1 -0
  78. package/lib/typescript/shared/providers/screen-transition.provider.d.ts +2 -2
  79. package/lib/typescript/shared/providers/screen-transition.provider.d.ts.map +1 -1
  80. package/lib/typescript/shared/types/animation.types.d.ts +12 -0
  81. package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
  82. package/lib/typescript/shared/types/state.types.d.ts +3 -0
  83. package/lib/typescript/shared/types/state.types.d.ts.map +1 -0
  84. package/lib/typescript/shared/utils/animation/compute-stack-progress.d.ts +3 -0
  85. package/lib/typescript/shared/utils/animation/compute-stack-progress.d.ts.map +1 -0
  86. package/lib/typescript/shared/utils/animation/start-screen-transition.d.ts.map +1 -1
  87. package/package.json +1 -1
  88. package/src/blank-stack/components/screens.tsx +21 -15
  89. package/src/blank-stack/components/stack-view.tsx +55 -44
  90. package/src/blank-stack/types.ts +1 -24
  91. package/src/native-stack/views/NativeStackView.native.tsx +121 -112
  92. package/src/shared/__tests__/bounds.store.test.ts +14 -36
  93. package/src/shared/components/controllers/blank-stack-lifecycle.tsx +70 -0
  94. package/src/shared/components/controllers/native-stack-lifecycle.tsx +87 -0
  95. package/src/shared/hooks/animation/use-screen-animation.tsx +11 -6
  96. package/src/shared/hooks/gestures/use-build-gestures.tsx +12 -6
  97. package/src/shared/hooks/gestures/use-scroll-registry.tsx +7 -7
  98. package/src/shared/providers/gestures.provider.tsx +34 -5
  99. package/src/shared/providers/register-bounds.provider.tsx +4 -3
  100. package/src/shared/providers/routes.provider.tsx +54 -0
  101. package/src/shared/providers/screen-transition.provider.tsx +2 -2
  102. package/src/shared/types/animation.types.ts +13 -0
  103. package/src/shared/types/state.types.ts +2 -0
  104. package/src/shared/utils/animation/compute-stack-progress.ts +16 -0
  105. package/src/shared/utils/animation/derivations.ts +1 -1
  106. package/src/shared/utils/animation/start-screen-transition.ts +13 -10
  107. package/lib/commonjs/shared/components/controllers/screen-lifecycle.js +0 -142
  108. package/lib/commonjs/shared/components/controllers/screen-lifecycle.js.map +0 -1
  109. package/lib/commonjs/shared/hooks/gestures/use-parent-gesture-registry.js +0 -28
  110. package/lib/commonjs/shared/hooks/gestures/use-parent-gesture-registry.js.map +0 -1
  111. package/lib/module/shared/components/controllers/screen-lifecycle.js +0 -136
  112. package/lib/module/shared/components/controllers/screen-lifecycle.js.map +0 -1
  113. package/lib/module/shared/hooks/gestures/use-parent-gesture-registry.js +0 -23
  114. package/lib/module/shared/hooks/gestures/use-parent-gesture-registry.js.map +0 -1
  115. package/lib/typescript/shared/components/controllers/screen-lifecycle.d.ts +0 -12
  116. package/lib/typescript/shared/components/controllers/screen-lifecycle.d.ts.map +0 -1
  117. package/lib/typescript/shared/hooks/gestures/use-parent-gesture-registry.d.ts +0 -6
  118. package/lib/typescript/shared/hooks/gestures/use-parent-gesture-registry.d.ts.map +0 -1
  119. package/src/shared/components/controllers/screen-lifecycle.tsx +0 -154
  120. package/src/shared/hooks/gestures/use-parent-gesture-registry.tsx +0 -18
@@ -1 +1 @@
1
- {"version":3,"names":["useFocusEffect","useCallback","useMemo","useRef","measure","runOnJS","runOnUI","useAnimatedReaction","useSharedValue","useStableCallback","useStableCallbackValue","AnimationStore","BoundStore","prepareStyleForBounds","createProvider","useKeys","getAncestorKeys","current","ancestors","nav","navigation","getParent","state","getState","routes","index","undefined","focusedRoute","key","push","useInitialLayoutHandler","params","sharedBoundTag","currentScreenKey","ancestorKeys","maybeMeasureAndStore","isAnimating","getAnimation","ancestorAnimations","map","hasMeasuredOnLayout","get","isAnyAnimating","i","length","shouldSetSource","shouldSetDestination","set","useBlurMeasurement","hasCapturedSource","ancestorClosing","route","maybeMeasureOnBlur","isOneClosing","some","closing","markSourceCaptured","useParentSyncReaction","parentContext","updateSignal","value","RegisterBoundsProvider","useRegisterBoundsContext","guarded","style","onPress","animatedRef","children","ownSignal","preparedStyles","emitUpdate","isRoot","measured","registerSnapshot","existing","getSnapshot","setLinkSource","bounds","setLinkDestination","handleInitialLayout","captureActiveOnPress"],"sourceRoot":"../../../../src","sources":["shared/providers/register-bounds.provider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useFocusEffect","useCallback","useMemo","useRef","measure","runOnJS","runOnUI","useAnimatedReaction","useSharedValue","useStableCallback","useStableCallbackValue","AnimationStore","BoundStore","prepareStyleForBounds","createProvider","useKeys","getAncestorKeys","current","ancestors","nav","navigation","getParent","state","getState","routes","index","undefined","focusedRoute","key","push","useInitialLayoutHandler","params","sharedBoundTag","currentScreenKey","ancestorKeys","maybeMeasureAndStore","isAnimating","getAnimation","ancestorAnimations","map","hasMeasuredOnLayout","get","isAnyAnimating","i","length","shouldSetSource","shouldSetDestination","set","useBlurMeasurement","hasCapturedSource","ancestorClosing","route","maybeMeasureOnBlur","closing","markSourceCaptured","useParentSyncReaction","parentContext","updateSignal","value","RegisterBoundsProvider","useRegisterBoundsContext","guarded","style","onPress","animatedRef","children","ownSignal","preparedStyles","emitUpdate","isRoot","measured","registerSnapshot","existing","getSnapshot","setLinkSource","bounds","setLinkDestination","handleInitialLayout","captureActiveOnPress"],"sourceRoot":"../../../../src","sources":["shared/providers/register-bounds.provider.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ import { useMemo } from "react";
4
+ import { AnimationStore } from "../stores/animation.store";
5
+ import createProvider from "../utils/create-provider";
6
+ const {
7
+ RoutesProvider,
8
+ useRoutesContext
9
+ } = createProvider("Routes", {
10
+ guarded: false
11
+ })(({
12
+ routeKeys
13
+ }) => ({
14
+ value: {
15
+ routeKeys
16
+ }
17
+ }));
18
+ export { RoutesProvider, useRoutesContext };
19
+
20
+ /**
21
+ * Hook to get animation values for all screens from a given index onwards.
22
+ * Useful for computing accumulated progress across multiple screens.
23
+ */
24
+ export function useStackAnimationValues(currentRouteKey) {
25
+ const routesContext = useRoutesContext();
26
+ return useMemo(() => {
27
+ if (!currentRouteKey || !routesContext) {
28
+ return [];
29
+ }
30
+ const {
31
+ routeKeys
32
+ } = routesContext;
33
+ const currentIndex = routeKeys.indexOf(currentRouteKey);
34
+ if (currentIndex === -1) {
35
+ return [];
36
+ }
37
+
38
+ // Get animation values for all screens from current index onwards
39
+ return routeKeys.slice(currentIndex).map(key => AnimationStore.getAll(key));
40
+ }, [currentRouteKey, routesContext]);
41
+ }
42
+ //# sourceMappingURL=routes.provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useMemo","AnimationStore","createProvider","RoutesProvider","useRoutesContext","guarded","routeKeys","value","useStackAnimationValues","currentRouteKey","routesContext","currentIndex","indexOf","slice","map","key","getAll"],"sourceRoot":"../../../../src","sources":["shared/providers/routes.provider.tsx"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SACCC,cAAc,QAER,2BAA2B;AAClC,OAAOC,cAAc,MAAM,0BAA0B;AAcrD,MAAM;EAAEC,cAAc;EAAEC;AAAiB,CAAC,GAAGF,cAAc,CAAC,QAAQ,EAAE;EACrEG,OAAO,EAAE;AACV,CAAC,CAAC,CAA0C,CAAC;EAAEC;AAAU,CAAC,MAAM;EAC/DC,KAAK,EAAE;IAAED;EAAU;AACpB,CAAC,CAAC,CAAC;AAEH,SAASH,cAAc,EAAEC,gBAAgB;;AAEzC;AACA;AACA;AACA;AACA,OAAO,SAASI,uBAAuBA,CACtCC,eAAmC,EACb;EACtB,MAAMC,aAAa,GAAGN,gBAAgB,CAAC,CAAC;EAExC,OAAOJ,OAAO,CAAC,MAAM;IACpB,IAAI,CAACS,eAAe,IAAI,CAACC,aAAa,EAAE;MACvC,OAAO,EAAE;IACV;IAEA,MAAM;MAAEJ;IAAU,CAAC,GAAGI,aAAa;IACnC,MAAMC,YAAY,GAAGL,SAAS,CAACM,OAAO,CAACH,eAAe,CAAC;IAEvD,IAAIE,YAAY,KAAK,CAAC,CAAC,EAAE;MACxB,OAAO,EAAE;IACV;;IAEA;IACA,OAAOL,SAAS,CACdO,KAAK,CAACF,YAAY,CAAC,CACnBG,GAAG,CAAEC,GAAG,IAAKd,cAAc,CAACe,MAAM,CAACD,GAAG,CAAC,CAAC;EAC3C,CAAC,EAAE,CAACN,eAAe,EAAEC,aAAa,CAAC,CAAC;AACrC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["RootTransitionAware","ScreenGestureProvider","KeysProvider","TransitionStylesProvider","jsx","_jsx","ScreenTransitionProvider","previous","current","next","children","LifecycleController"],"sourceRoot":"../../../../src","sources":["shared/providers/screen-transition.provider.tsx"],"mappings":";;AAGA,SAASA,mBAAmB,QAAQ,qCAAqC;AACzE,SAASC,qBAAqB,QAAQ,qBAAqB;AAC3D,SAASC,YAAY,QAAmC,iBAAiB;AACzE,SAASC,wBAAwB,QAAQ,8BAA8B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAUxE,OAAO,SAASC,wBAAwBA,CAEtC;EACDC,QAAQ;EACRC,OAAO;EACPC,IAAI;EACJC,QAAQ;EACRC;AACmB,CAAC,EAAE;EACtB,oBACCN,IAAA,CAACH,YAAY;IACZK,QAAQ,EAAEA,QAAS;IACnBC,OAAO,EAAEA,OAAQ;IACjBC,IAAI,EAAEA,IAAK;IAAAC,QAAA,eAEXL,IAAA,CAACJ,qBAAqB;MAAAS,QAAA,eACrBL,IAAA,CAACM,mBAAmB;QAAAD,QAAA,eACnBL,IAAA,CAACF,wBAAwB;UAAAO,QAAA,eACxBL,IAAA,CAACL,mBAAmB;YAAAU,QAAA,EAAEA;UAAQ,CAAsB;QAAC,CAC5B;MAAC,CACP;IAAC,CACA;EAAC,CACX,CAAC;AAEjB","ignoreList":[]}
1
+ {"version":3,"names":["RootTransitionAware","ScreenGestureProvider","KeysProvider","TransitionStylesProvider","jsx","_jsx","ScreenTransitionProvider","previous","current","next","children","LifecycleController"],"sourceRoot":"../../../../src","sources":["shared/providers/screen-transition.provider.tsx"],"mappings":";;AAEA,SAASA,mBAAmB,QAAQ,qCAAqC;AAEzE,SAASC,qBAAqB,QAAQ,qBAAqB;AAC3D,SAASC,YAAY,QAAmC,iBAAiB;AACzE,SAASC,wBAAwB,QAAQ,8BAA8B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAUxE,OAAO,SAASC,wBAAwBA,CAEtC;EACDC,QAAQ;EACRC,OAAO;EACPC,IAAI;EACJC,QAAQ;EACRC;AACmB,CAAC,EAAE;EACtB,oBACCN,IAAA,CAACH,YAAY;IACZK,QAAQ,EAAEA,QAAS;IACnBC,OAAO,EAAEA,OAAQ;IACjBC,IAAI,EAAEA,IAAK;IAAAC,QAAA,eAEXL,IAAA,CAACJ,qBAAqB;MAAAS,QAAA,eACrBL,IAAA,CAACM,mBAAmB;QAAAD,QAAA,eACnBL,IAAA,CAACF,wBAAwB;UAAAO,QAAA,eACxBL,IAAA,CAACL,mBAAmB;YAAAU,QAAA,EAAEA;UAAQ,CAAsB;QAAC,CAC5B;MAAC,CACP;IAAC,CACA;EAAC,CACX,CAAC;AAEjB","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ export const TRUE = 1;
4
+ export const FALSE = 0;
5
+ //# sourceMappingURL=state.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TRUE","FALSE"],"sourceRoot":"../../../../src","sources":["shared/types/state.types.ts"],"mappings":";;AAAA,OAAO,MAAMA,IAAI,GAAG,CAAC;AACrB,OAAO,MAAMC,KAAK,GAAG,CAAC","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ export const computeStackProgress = (stackAnimationValues, fallback = 0) => {
4
+ "worklet";
5
+
6
+ let computedStackProgress;
7
+ if (stackAnimationValues.length > 0) {
8
+ computedStackProgress = 0;
9
+ for (let i = 0; i < stackAnimationValues.length; i += 1) {
10
+ computedStackProgress += stackAnimationValues[i].progress.value;
11
+ }
12
+ }
13
+ return computedStackProgress ?? fallback;
14
+ };
15
+ //# sourceMappingURL=compute-stack-progress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["computeStackProgress","stackAnimationValues","fallback","computedStackProgress","length","i","progress","value"],"sourceRoot":"../../../../../src","sources":["shared/utils/animation/compute-stack-progress.ts"],"mappings":";;AAEA,OAAO,MAAMA,oBAAoB,GAAGA,CACnCC,oBAAyC,EACzCC,QAAgB,GAAG,CAAC,KAChB;EACJ,SAAS;;EACT,IAAIC,qBAAyC;EAC7C,IAAIF,oBAAoB,CAACG,MAAM,GAAG,CAAC,EAAE;IACpCD,qBAAqB,GAAG,CAAC;IACzB,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGJ,oBAAoB,CAACG,MAAM,EAAEC,CAAC,IAAI,CAAC,EAAE;MACxDF,qBAAqB,IAAIF,oBAAoB,CAACI,CAAC,CAAC,CAACC,QAAQ,CAACC,KAAK;IAChE;EACD;EACA,OAAOJ,qBAAqB,IAAID,QAAQ;AACzC,CAAC","ignoreList":[]}
@@ -9,7 +9,7 @@ export const derivations = ({
9
9
  }) => {
10
10
  "worklet";
11
11
 
12
- // The combined progress
12
+ // The combined progress (current + next, 0-2 range)
13
13
  const progress = current.progress + (next?.progress ?? 0);
14
14
 
15
15
  // Whether the current screen is focused
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import { runOnJS } from "react-native-reanimated";
4
+ import { FALSE, TRUE } from "../../types/state.types";
4
5
  import { animate } from "./animate";
5
6
  export const startScreenTransition = ({
6
7
  target,
@@ -24,26 +25,25 @@ export const startScreenTransition = ({
24
25
  closing
25
26
  } = animations;
26
27
  if (target === "close") {
27
- closing.value = 1;
28
+ closing.set(TRUE);
28
29
  }
29
30
  if (!config) {
30
- animating.value = 0;
31
- progress.value = value;
31
+ animating.set(FALSE);
32
+ progress.set(value);
32
33
  if (onAnimationFinish) {
33
34
  runOnJS(onAnimationFinish)(true);
34
35
  }
35
36
  return;
36
37
  }
37
- animating.value = 1;
38
- progress.value = animate(value, effectiveConfig, finished => {
38
+ animating.set(TRUE); //<-- Do not move this into the callback
39
+ progress.set(animate(value, effectiveConfig, finished => {
39
40
  "worklet";
40
41
 
41
- if (finished) {
42
- if (onAnimationFinish) {
43
- runOnJS(onAnimationFinish)(finished);
44
- }
45
- animating.value = 0;
42
+ if (!finished) return;
43
+ if (onAnimationFinish) {
44
+ runOnJS(onAnimationFinish)(finished);
46
45
  }
47
- });
46
+ animating.set(FALSE);
47
+ }));
48
48
  };
49
49
  //# sourceMappingURL=start-screen-transition.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["runOnJS","animate","startScreenTransition","target","spec","onAnimationFinish","animations","initialVelocity","value","config","open","close","isSpringConfig","effectiveConfig","velocity","progress","animating","closing","finished"],"sourceRoot":"../../../../../src","sources":["shared/utils/animation/start-screen-transition.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,yBAAyB;AAGjD,SAASC,OAAO,QAAQ,WAAW;AAWnC,OAAO,MAAMC,qBAAqB,GAAGA,CAAC;EACrCC,MAAM;EACNC,IAAI;EACJC,iBAAiB;EACjBC,UAAU;EACVC;AAC2B,CAAC,KAAK;EACjC,SAAS;;EACT,MAAMC,KAAK,GAAGL,MAAM,KAAK,MAAM,GAAG,CAAC,GAAG,CAAC;EACvC,MAAMM,MAAM,GAAGN,MAAM,KAAK,MAAM,GAAGC,IAAI,EAAEM,IAAI,GAAGN,IAAI,EAAEO,KAAK;EAE3D,MAAMC,cAAc,GACnB,CAAC,CAACH,MAAM,IAAI,EAAE,UAAU,IAAIA,MAAM,CAAC,IAAI,EAAE,QAAQ,IAAIA,MAAM,CAAC;EAE7D,MAAMI,eAAe,GACpBD,cAAc,IAAI,OAAOL,eAAe,KAAK,QAAQ,GAClD;IAAE,GAAGE,MAAM;IAAEK,QAAQ,EAAEP;EAAgB,CAAC,GACxCE,MAAM;EAEV,MAAM;IAAEM,QAAQ;IAAEC,SAAS;IAAEC;EAAQ,CAAC,GAAGX,UAAU;EAEnD,IAAIH,MAAM,KAAK,OAAO,EAAE;IACvBc,OAAO,CAACT,KAAK,GAAG,CAAC;EAClB;EAEA,IAAI,CAACC,MAAM,EAAE;IACZO,SAAS,CAACR,KAAK,GAAG,CAAC;IACnBO,QAAQ,CAACP,KAAK,GAAGA,KAAK;IAEtB,IAAIH,iBAAiB,EAAE;MACtBL,OAAO,CAACK,iBAAiB,CAAC,CAAC,IAAI,CAAC;IACjC;IACA;EACD;EAEAW,SAAS,CAACR,KAAK,GAAG,CAAC;EAEnBO,QAAQ,CAACP,KAAK,GAAGP,OAAO,CAACO,KAAK,EAAEK,eAAe,EAAGK,QAAQ,IAAK;IAC9D,SAAS;;IACT,IAAIA,QAAQ,EAAE;MACb,IAAIb,iBAAiB,EAAE;QACtBL,OAAO,CAACK,iBAAiB,CAAC,CAACa,QAAQ,CAAC;MACrC;MACAF,SAAS,CAACR,KAAK,GAAG,CAAC;IACpB;EACD,CAAC,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["runOnJS","FALSE","TRUE","animate","startScreenTransition","target","spec","onAnimationFinish","animations","initialVelocity","value","config","open","close","isSpringConfig","effectiveConfig","velocity","progress","animating","closing","set","finished"],"sourceRoot":"../../../../../src","sources":["shared/utils/animation/start-screen-transition.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,yBAAyB;AAGjD,SAASC,KAAK,EAAEC,IAAI,QAAQ,yBAAyB;AACrD,SAASC,OAAO,QAAQ,WAAW;AAWnC,OAAO,MAAMC,qBAAqB,GAAGA,CAAC;EACrCC,MAAM;EACNC,IAAI;EACJC,iBAAiB;EACjBC,UAAU;EACVC;AAC2B,CAAC,KAAK;EACjC,SAAS;;EACT,MAAMC,KAAK,GAAGL,MAAM,KAAK,MAAM,GAAG,CAAC,GAAG,CAAC;EACvC,MAAMM,MAAM,GAAGN,MAAM,KAAK,MAAM,GAAGC,IAAI,EAAEM,IAAI,GAAGN,IAAI,EAAEO,KAAK;EAE3D,MAAMC,cAAc,GACnB,CAAC,CAACH,MAAM,IAAI,EAAE,UAAU,IAAIA,MAAM,CAAC,IAAI,EAAE,QAAQ,IAAIA,MAAM,CAAC;EAE7D,MAAMI,eAAe,GACpBD,cAAc,IAAI,OAAOL,eAAe,KAAK,QAAQ,GAClD;IAAE,GAAGE,MAAM;IAAEK,QAAQ,EAAEP;EAAgB,CAAC,GACxCE,MAAM;EAEV,MAAM;IAAEM,QAAQ;IAAEC,SAAS;IAAEC;EAAQ,CAAC,GAAGX,UAAU;EAEnD,IAAIH,MAAM,KAAK,OAAO,EAAE;IACvBc,OAAO,CAACC,GAAG,CAAClB,IAAI,CAAC;EAClB;EAEA,IAAI,CAACS,MAAM,EAAE;IACZO,SAAS,CAACE,GAAG,CAACnB,KAAK,CAAC;IACpBgB,QAAQ,CAACG,GAAG,CAACV,KAAK,CAAC;IAEnB,IAAIH,iBAAiB,EAAE;MACtBP,OAAO,CAACO,iBAAiB,CAAC,CAAC,IAAI,CAAC;IACjC;IACA;EACD;EAEAW,SAAS,CAACE,GAAG,CAAClB,IAAI,CAAC,CAAC,CAAC;EACrBe,QAAQ,CAACG,GAAG,CACXjB,OAAO,CAACO,KAAK,EAAEK,eAAe,EAAGM,QAAQ,IAAK;IAC7C,SAAS;;IACT,IAAI,CAACA,QAAQ,EAAE;IAEf,IAAId,iBAAiB,EAAE;MACtBP,OAAO,CAACO,iBAAiB,CAAC,CAACc,QAAQ,CAAC;IACrC;IAEAH,SAAS,CAACE,GAAG,CAACnB,KAAK,CAAC;EACrB,CAAC,CACF,CAAC;AACF,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"screens.d.ts","sourceRoot":"","sources":["../../../../src/blank-stack/components/screens.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAWpC,UAAU,WAAW;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC3B;AAUD,eAAO,MAAM,MAAM,GAAI,2GASpB,WAAW,4CAsDb,CAAC"}
1
+ {"version":3,"file":"screens.d.ts","sourceRoot":"","sources":["../../../../src/blank-stack/components/screens.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAWpC,UAAU,WAAW;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC3B;AAWD,eAAO,MAAM,MAAM,GAAI,2GASpB,WAAW,4CA2Db,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"stack-view.d.ts","sourceRoot":"","sources":["../../../../src/blank-stack/components/stack-view.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAiC/B,eAAO,MAAM,SAAS,sFA6DrB,CAAC"}
1
+ {"version":3,"file":"stack-view.d.ts","sourceRoot":"","sources":["../../../../src/blank-stack/components/stack-view.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAkC/B,eAAO,MAAM,SAAS,sFAuErB,CAAC"}
@@ -2,44 +2,7 @@ import type { DefaultNavigatorOptions, Descriptor, NavigationHelpers, Navigation
2
2
  import type { DerivedValue } from "react-native-reanimated";
3
3
  import type { ScreenTransitionConfig } from "../shared";
4
4
  import type { OverlayInterpolationProps, ScreenInterpolationProps } from "../shared/types/animation.types";
5
- export type BlankStackNavigationEventMap = {
6
- /**
7
- * Event which fires when a transition animation starts.
8
- */
9
- transitionStart: {
10
- data: {
11
- closing: boolean;
12
- };
13
- };
14
- /**
15
- * Event which fires when a transition animation ends.
16
- */
17
- transitionEnd: {
18
- data: {
19
- closing: boolean;
20
- };
21
- };
22
- /**
23
- * Event which fires when a swipe back is canceled on iOS.
24
- */
25
- gestureCancel: {
26
- data: undefined;
27
- };
28
- /**
29
- * Event which fires when screen is in sheet presentation & it's detent changes.
30
- *
31
- * In payload it caries two fields:
32
- *
33
- * * `index` - current detent index in the `sheetAllowedDetents` array,
34
- * * `stable` - on Android `false` value means that the user is dragging the sheet or it is settling; on iOS it is always `true`.
35
- */
36
- sheetDetentChange: {
37
- data: {
38
- index: number;
39
- stable: boolean;
40
- };
41
- };
42
- };
5
+ export type BlankStackNavigationEventMap = {};
43
6
  export type BlankStackNavigationProp<ParamList extends ParamListBase, RouteName extends keyof ParamList = string, NavigatorID extends string | undefined = undefined> = NavigationProp<ParamList, RouteName, NavigatorID, StackNavigationState<ParamList>, BlankStackNavigationOptions, BlankStackNavigationEventMap> & StackActionHelpers<ParamList>;
44
7
  export type BlankStackScreenProps<ParamList extends ParamListBase, RouteName extends keyof ParamList = string, NavigatorID extends string | undefined = undefined> = {
45
8
  navigation: BlankStackNavigationProp<ParamList, RouteName, NavigatorID>;
@@ -93,7 +56,6 @@ export type BlankStackScreenTransitionConfig = ScreenTransitionConfig & {
93
56
  * Whether to detach the previous screen from the view hierarchy to save memory.
94
57
  * Set it to `false` if you need the previous screen to be seen through the active screen.
95
58
  * Only applicable if `detachInactiveScreens` isn't set to `false`.
96
- * Defaults to `false` for the last screen for modals, otherwise `true`.
97
59
  */
98
60
  detachPreviousScreen?: boolean;
99
61
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/blank-stack/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/blank-stack/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"NativeStackView.native.d.ts","sourceRoot":"","sources":["../../../../src/native-stack/views/NativeStackView.native.tsx"],"names":[],"mappings":"AASA,OAAO,EAGN,KAAK,aAAa,EAClB,KAAK,SAAS,EAEd,KAAK,oBAAoB,EAGzB,MAAM,0BAA0B,CAAC;AAmBlC,OAAO,KAAK,EACX,qBAAqB,EACrB,wBAAwB,EACxB,4BAA4B,EAC5B,MAAM,UAAU,CAAC;AA8blB,KAAK,KAAK,GAAG;IACZ,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,UAAU,EAAE,4BAA4B,CAAC;IACzC,WAAW,EAAE,wBAAwB,CAAC;IACtC,QAAQ,EAAE,CACT,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,EAC/B,WAAW,EAAE,OAAO,KAChB,qBAAqB,CAAC;CAC3B,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAC/B,KAAK,EACL,UAAU,EACV,WAAW,EACX,QAAQ,GACR,EAAE,KAAK,2CAgIP"}
1
+ {"version":3,"file":"NativeStackView.native.d.ts","sourceRoot":"","sources":["../../../../src/native-stack/views/NativeStackView.native.tsx"],"names":[],"mappings":"AASA,OAAO,EAGN,KAAK,aAAa,EAClB,KAAK,SAAS,EAEd,KAAK,oBAAoB,EAGzB,MAAM,0BAA0B,CAAC;AAoBlC,OAAO,KAAK,EACX,qBAAqB,EACrB,wBAAwB,EACxB,4BAA4B,EAC5B,MAAM,UAAU,CAAC;AA8blB,KAAK,KAAK,GAAG;IACZ,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,UAAU,EAAE,4BAA4B,CAAC;IACzC,WAAW,EAAE,wBAAwB,CAAC;IACtC,QAAQ,EAAE,CACT,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,EAC/B,WAAW,EAAE,OAAO,KAChB,qBAAqB,CAAC;CAC3B,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAC/B,KAAK,EACL,UAAU,EACV,WAAW,EACX,QAAQ,GACR,EAAE,KAAK,2CAwIP"}
@@ -0,0 +1,8 @@
1
+ export interface Props {
2
+ children: React.ReactNode;
3
+ }
4
+ /**
5
+ * Lifecycle controller built out for Blank Stack implementation.
6
+ */
7
+ export declare const BlankStackScreenLifecycleController: ({ children }: Props) => import("react").ReactNode;
8
+ //# sourceMappingURL=blank-stack-lifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blank-stack-lifecycle.d.ts","sourceRoot":"","sources":["../../../../../src/shared/components/controllers/blank-stack-lifecycle.tsx"],"names":[],"mappings":"AAUA,MAAM,WAAW,KAAK;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED;;GAEG;AACH,eAAO,MAAM,mCAAmC,GAAI,cAAc,KAAK,8BAoDtE,CAAC"}
@@ -0,0 +1,8 @@
1
+ export interface Props {
2
+ children: React.ReactNode;
3
+ }
4
+ /**
5
+ * Lifecycle controller built out for Native Stack implementation.
6
+ */
7
+ export declare const NativeStackScreenLifecycleController: ({ children }: Props) => import("react").ReactNode;
8
+ //# sourceMappingURL=native-stack-lifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-stack-lifecycle.d.ts","sourceRoot":"","sources":["../../../../../src/shared/components/controllers/native-stack-lifecycle.tsx"],"names":[],"mappings":"AAYA,MAAM,WAAW,KAAK;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED;;GAEG;AACH,eAAO,MAAM,oCAAoC,GAAI,cAAc,KAAK,8BAmEvE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-screen-animation.d.ts","sourceRoot":"","sources":["../../../../../src/shared/hooks/animation/use-screen-animation.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACX,wBAAwB,EAExB,MAAM,6BAA6B,CAAC;AAiFrC,wBAAgB,mBAAmB;;;EAuDlC;AAED,wBAAgB,kBAAkB,6EAUjC"}
1
+ {"version":3,"file":"use-screen-animation.d.ts","sourceRoot":"","sources":["../../../../../src/shared/hooks/animation/use-screen-animation.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACX,wBAAwB,EAExB,MAAM,6BAA6B,CAAC;AA8ErC,wBAAgB,mBAAmB;;;EA8DlC;AAED,wBAAgB,kBAAkB,6EAUjC"}
@@ -4,9 +4,9 @@ import type { GestureContextType, ScrollConfig } from "../../providers/gestures.
4
4
  import { type GestureStoreMap } from "../../stores/gesture.store";
5
5
  interface BuildGesturesHookProps {
6
6
  scrollConfig: SharedValue<ScrollConfig | null>;
7
- parentContext?: GestureContextType | null;
7
+ ancestorContext?: GestureContextType | null;
8
8
  }
9
- export declare const useBuildGestures: ({ scrollConfig, parentContext, }: BuildGesturesHookProps) => {
9
+ export declare const useBuildGestures: ({ scrollConfig, ancestorContext, }: BuildGesturesHookProps) => {
10
10
  panGesture: GestureType;
11
11
  nativeGesture: GestureType;
12
12
  gestureAnimationValues: GestureStoreMap;
@@ -1 +1 @@
1
- {"version":3,"file":"use-build-gestures.d.ts","sourceRoot":"","sources":["../../../../../src/shared/hooks/gestures/use-build-gestures.tsx"],"names":[],"mappings":"AAGA,OAAO,EAIN,KAAK,WAAW,EAGhB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,yBAAyB,CAAC;AAQ3E,OAAO,KAAK,EACX,kBAAkB,EAClB,YAAY,EACZ,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAgB,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAchF,UAAU,sBAAsB;IAC/B,YAAY,EAAE,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC/C,aAAa,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;CAC1C;AAED,eAAO,MAAM,gBAAgB,GAAI,kCAG9B,sBAAsB,KAAG;IAC3B,UAAU,EAAE,WAAW,CAAC;IACxB,aAAa,EAAE,WAAW,CAAC;IAC3B,sBAAsB,EAAE,eAAe,CAAC;CA+SxC,CAAC"}
1
+ {"version":3,"file":"use-build-gestures.d.ts","sourceRoot":"","sources":["../../../../../src/shared/hooks/gestures/use-build-gestures.tsx"],"names":[],"mappings":"AAGA,OAAO,EAIN,KAAK,WAAW,EAGhB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,yBAAyB,CAAC;AAQ3E,OAAO,KAAK,EACX,kBAAkB,EAClB,YAAY,EACZ,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAgB,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAchF,UAAU,sBAAsB;IAC/B,YAAY,EAAE,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC/C,eAAe,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;CAC5C;AAED,eAAO,MAAM,gBAAgB,GAAI,oCAG9B,sBAAsB,KAAG;IAC3B,UAAU,EAAE,WAAW,CAAC;IACxB,aAAa,EAAE,WAAW,CAAC;IAC3B,sBAAsB,EAAE,eAAe,CAAC;CAqTxC,CAAC"}
@@ -14,12 +14,18 @@ export interface GestureContextType {
14
14
  nativeGesture: GestureType;
15
15
  scrollConfig: SharedValue<ScrollConfig | null>;
16
16
  gestureAnimationValues: GestureStoreMap;
17
- parentContext: GestureContextType | null;
17
+ ancestorContext: GestureContextType | undefined;
18
18
  }
19
19
  type GestureProviderProps = {
20
20
  children: React.ReactNode;
21
21
  };
22
- export declare const ScreenGestureProvider: ({ children }: GestureProviderProps) => import("react/jsx-runtime").JSX.Element;
22
+ /**
23
+ * Provider that creates gesture handling for a screen.
24
+ * If the current screen doesn't have gestures enabled but a parent does,
25
+ * we pass through the parent's context so scrollable children can coordinate
26
+ * with the ancestor's gestures.
27
+ */
28
+ export declare const ScreenGestureProvider: ({ children }: GestureProviderProps) => string | number | bigint | boolean | Iterable<import("react").ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null | undefined;
23
29
  export declare const useGestureContext: () => GestureContextType;
24
30
  export {};
25
31
  //# sourceMappingURL=gestures.provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gestures.provider.d.ts","sourceRoot":"","sources":["../../../../src/shared/providers/gestures.provider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,MAAM,MAAM,YAAY,GAAG;IAC1B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,kBAAkB;IAClC,UAAU,EAAE,WAAW,CAAC;IACxB,aAAa,EAAE,WAAW,CAAC;IAC3B,YAAY,EAAE,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC/C,sBAAsB,EAAE,eAAe,CAAC;IACxC,aAAa,EAAE,kBAAkB,GAAG,IAAI,CAAC;CACzC;AAED,KAAK,oBAAoB,GAAG;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B,CAAC;AAIF,eAAO,MAAM,qBAAqB,GAAI,cAAc,oBAAoB,4CAmCvE,CAAC;AAEF,eAAO,MAAM,iBAAiB,0BAU7B,CAAC"}
1
+ {"version":3,"file":"gestures.provider.d.ts","sourceRoot":"","sources":["../../../../src/shared/providers/gestures.provider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D,MAAM,MAAM,YAAY,GAAG;IAC1B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,kBAAkB;IAClC,UAAU,EAAE,WAAW,CAAC;IACxB,aAAa,EAAE,WAAW,CAAC;IAC3B,YAAY,EAAE,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC/C,sBAAsB,EAAE,eAAe,CAAC;IACxC,eAAe,EAAE,kBAAkB,GAAG,SAAS,CAAC;CAChD;AAED,KAAK,oBAAoB,GAAG;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B,CAAC;AAIF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAAI,cAAc,oBAAoB,4WAiBvE,CAAC;AA0CF,eAAO,MAAM,iBAAiB,0BAU7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"register-bounds.provider.d.ts","sourceRoot":"","sources":["../../../../src/shared/providers/register-bounds.provider.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAgC,MAAM,OAAO,CAAC;AACrE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EACN,KAAK,WAAW,EAIhB,KAAK,UAAU,EAGf,MAAM,yBAAyB,CAAC;AAgBjC,UAAU,yBAAyB;IAClC,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,oBAAoB,EAAE,MAAM,IAAI,CAAC;CACjC;AAED,UAAU,2BAA2B;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACrD,QAAQ,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,SAAS,CAAC;CAC1D;AA4JD,QAAA,MAAQ,sBAAsB,iDA4H7B,CAAC;AAEF,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"register-bounds.provider.d.ts","sourceRoot":"","sources":["../../../../src/shared/providers/register-bounds.provider.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAgC,MAAM,OAAO,CAAC;AACrE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EACN,KAAK,WAAW,EAIhB,KAAK,UAAU,EAGf,MAAM,yBAAyB,CAAC;AAgBjC,UAAU,yBAAyB;IAClC,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,oBAAoB,EAAE,MAAM,IAAI,CAAC;CACjC;AAED,UAAU,2BAA2B;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACrD,QAAQ,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,SAAS,CAAC;CAC1D;AA6JD,QAAA,MAAQ,sBAAsB,iDA4H7B,CAAC;AAEF,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { type AnimationStoreMap } from "../stores/animation.store";
2
+ interface RoutesProviderProps {
3
+ children: React.ReactNode;
4
+ routeKeys: string[];
5
+ }
6
+ interface RoutesContextValue {
7
+ /**
8
+ * Array of route keys for all routes in the stack, in order.
9
+ */
10
+ routeKeys: string[];
11
+ }
12
+ declare const RoutesProvider: import("react").FC<RoutesProviderProps>, useRoutesContext: () => RoutesContextValue | null;
13
+ export { RoutesProvider, useRoutesContext };
14
+ /**
15
+ * Hook to get animation values for all screens from a given index onwards.
16
+ * Useful for computing accumulated progress across multiple screens.
17
+ */
18
+ export declare function useStackAnimationValues(currentRouteKey: string | undefined): AnimationStoreMap[];
19
+ //# sourceMappingURL=routes.provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.provider.d.ts","sourceRoot":"","sources":["../../../../src/shared/providers/routes.provider.tsx"],"names":[],"mappings":"AACA,OAAO,EAEN,KAAK,iBAAiB,EACtB,MAAM,2BAA2B,CAAC;AAGnC,UAAU,mBAAmB;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,UAAU,kBAAkB;IAC3B;;OAEG;IACH,SAAS,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,QAAA,MAAQ,cAAc,2CAAE,gBAAgB,iCAIrC,CAAC;AAEJ,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,CAAC;AAE5C;;;GAGG;AACH,wBAAgB,uBAAuB,CACtC,eAAe,EAAE,MAAM,GAAG,SAAS,GACjC,iBAAiB,EAAE,CAoBrB"}
@@ -1,13 +1,13 @@
1
1
  import type React from "react";
2
2
  import type { ComponentType } from "react";
3
- import type { ScreenLifecycleProps } from "../components/controllers/screen-lifecycle";
3
+ import type { Any } from "../types/utils.types";
4
4
  import { type TransitionDescriptor } from "./keys.provider";
5
5
  type Props<TDescriptor extends TransitionDescriptor> = {
6
6
  previous?: TDescriptor;
7
7
  current: TDescriptor;
8
8
  next?: TDescriptor;
9
9
  children: React.ReactNode;
10
- LifecycleController: ComponentType<ScreenLifecycleProps>;
10
+ LifecycleController: ComponentType<Any>;
11
11
  };
12
12
  export declare function ScreenTransitionProvider<TDescriptor extends TransitionDescriptor>({ previous, current, next, children, LifecycleController, }: Props<TDescriptor>): import("react/jsx-runtime").JSX.Element;
13
13
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"screen-transition.provider.d.ts","sourceRoot":"","sources":["../../../../src/shared/providers/screen-transition.provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAGvF,OAAO,EAAgB,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAG1E,KAAK,KAAK,CAAC,WAAW,SAAS,oBAAoB,IAAI;IACtD,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,mBAAmB,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;CACzD,CAAC;AAEF,wBAAgB,wBAAwB,CACvC,WAAW,SAAS,oBAAoB,EACvC,EACD,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,mBAAmB,GACnB,EAAE,KAAK,CAAC,WAAW,CAAC,2CAgBpB"}
1
+ {"version":3,"file":"screen-transition.provider.d.ts","sourceRoot":"","sources":["../../../../src/shared/providers/screen-transition.provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAgB,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAG1E,KAAK,KAAK,CAAC,WAAW,SAAS,oBAAoB,IAAI;IACtD,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,mBAAmB,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;CACxC,CAAC;AAEF,wBAAgB,wBAAwB,CACvC,WAAW,SAAS,oBAAoB,EACvC,EACD,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,mBAAmB,GACnB,EAAE,KAAK,CAAC,WAAW,CAAC,2CAgBpB"}
@@ -60,6 +60,18 @@ export interface ScreenInterpolationProps {
60
60
  * Combined progress of current and next screen transitions, ranging from 0-2.
61
61
  */
62
62
  progress: number;
63
+ /**
64
+ * Accumulated progress from the current screen's position onwards in the stack.
65
+ * Unlike `progress` (0-2), this ranges from 0-N where N is the number of screens
66
+ * above the current screen. Each screen at index I sees stackProgress as the
67
+ * sum of all progress values from index I to the top of the stack.
68
+ *
69
+ * Example: With 4 screens pushed, screen at index 1 would see stackProgress = 3
70
+ * when all screens are fully transitioned.
71
+ *
72
+ * Falls back to `progress` when not in blank-stack.
73
+ */
74
+ stackProgress: number;
63
75
  /**
64
76
  * Function that provides access to bounds builders for creating shared element transitions.
65
77
  */
@@ -1 +1 @@
1
- {"version":3,"file":"animation.types.d.ts","sourceRoot":"","sources":["../../../../src/shared/types/animation.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,KAAK,EACX,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,WAAW,yBAAyB;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE;QACR;;WAEG;QACH,MAAM,EAAE,MAAM,CAAC;KACf,CAAC;IACF,MAAM,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,MAAM,qBAAqB,GAAG;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,aAAa,CAAC;IACvB,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACxC;;OAEG;IACH,QAAQ,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAE5C;;OAEG;IACH,OAAO,EAAE,qBAAqB,CAAC;IAE/B;;OAEG;IACH,IAAI,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAExC;;OAEG;IACH,OAAO,EAAE;QACR;;WAEG;QACH,MAAM,EAAE,MAAM,CAAC;KACf,CAAC;IAEF;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC;IAEnB;;;OAGG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC;IAEtB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,MAAM,EAAE,cAAc,CAAC;IAEvB;;OAEG;IACH,MAAM,EAAE,qBAAqB,CAAC;IAE9B;;OAEG;IACH,qBAAqB,EAAE,OAAO,CAAC;IAE/B;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,uBAAuB,GAAG,CACrC,KAAK,EAAE,wBAAwB,KAC3B,2BAA2B,CAAC;AAEjC,MAAM,MAAM,2BAA2B,GAAG;IACzC;;OAEG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAE1B;;OAEG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAE1B;;OAEG;IACH,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,eAAe,CAAC;CACxB"}
1
+ {"version":3,"file":"animation.types.d.ts","sourceRoot":"","sources":["../../../../src/shared/types/animation.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,KAAK,EACX,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,WAAW,yBAAyB;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE;QACR;;WAEG;QACH,MAAM,EAAE,MAAM,CAAC;KACf,CAAC;IACF,MAAM,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,MAAM,qBAAqB,GAAG;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,aAAa,CAAC;IACvB,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACxC;;OAEG;IACH,QAAQ,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAE5C;;OAEG;IACH,OAAO,EAAE,qBAAqB,CAAC;IAE/B;;OAEG;IACH,IAAI,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAExC;;OAEG;IACH,OAAO,EAAE;QACR;;WAEG;QACH,MAAM,EAAE,MAAM,CAAC;KACf,CAAC;IAEF;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC;IAEnB;;;OAGG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC;IAEtB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;;;;;;;OAUG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,MAAM,EAAE,cAAc,CAAC;IAEvB;;OAEG;IACH,MAAM,EAAE,qBAAqB,CAAC;IAE9B;;OAEG;IACH,qBAAqB,EAAE,OAAO,CAAC;IAE/B;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,uBAAuB,GAAG,CACrC,KAAK,EAAE,wBAAwB,KAC3B,2BAA2B,CAAC;AAEjC,MAAM,MAAM,2BAA2B,GAAG;IACzC;;OAEG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAE1B;;OAEG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAE1B;;OAEG;IACH,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,eAAe,CAAC;CACxB"}
@@ -0,0 +1,3 @@
1
+ export declare const TRUE = 1;
2
+ export declare const FALSE = 0;
3
+ //# sourceMappingURL=state.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.types.d.ts","sourceRoot":"","sources":["../../../../src/shared/types/state.types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,IAAI,IAAI,CAAC;AACtB,eAAO,MAAM,KAAK,IAAI,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { AnimationStoreMap } from "../../stores/animation.store";
2
+ export declare const computeStackProgress: (stackAnimationValues: AnimationStoreMap[], fallback?: number) => number;
3
+ //# sourceMappingURL=compute-stack-progress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compute-stack-progress.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/animation/compute-stack-progress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,eAAO,MAAM,oBAAoB,GAChC,sBAAsB,iBAAiB,EAAE,EACzC,WAAU,MAAU,WAWpB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"start-screen-transition.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/animation/start-screen-transition.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAGlE,UAAU,0BAA0B;IACnC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,UAAU,EAAE,iBAAiB,CAAC;IAC9B,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,qBAAqB,GAAI,mEAMnC,0BAA0B,SAwC5B,CAAC"}
1
+ {"version":3,"file":"start-screen-transition.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/animation/start-screen-transition.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAIlE,UAAU,0BAA0B;IACnC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,UAAU,EAAE,iBAAiB,CAAC;IAC9B,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,qBAAqB,GAAI,mEAMnC,0BAA0B,SA0C5B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-screen-transitions",
3
- "version": "3.0.0-rc.3",
3
+ "version": "3.0.0-rc.4",
4
4
  "description": "Easy screen transitions for React Native and Expo",
5
5
  "author": "Ed",
6
6
  "license": "MIT",
@@ -19,13 +19,14 @@ interface ScreenProps {
19
19
  shouldFreeze?: boolean;
20
20
  activeScreensLimit: number;
21
21
  }
22
+ enum ScreenActivity {
23
+ INACTIVE = 0,
24
+ TRANSITIONING_OR_BELOW_TOP = 1,
25
+ ON_TOP = 2,
26
+ }
22
27
 
23
28
  const EPSILON = 1e-5;
24
29
 
25
- const STATE_INACTIVE = 0;
26
- const STATE_TRANSITIONING_OR_BELOW_TOP = 1;
27
- const STATE_ON_TOP = 2;
28
-
29
30
  const AnimatedScreen = Animated.createAnimatedComponent(RNSScreen);
30
31
 
31
32
  export const Screen = ({
@@ -39,23 +40,26 @@ export const Screen = ({
39
40
  shouldFreeze,
40
41
  }: ScreenProps) => {
41
42
  const sceneProgress = AnimationStore.getAnimation(routeKey, "progress");
42
- const screenActivity = useSharedValue<0 | 1 | 2>(1);
43
+ const sceneClosing = AnimationStore.getAnimation(routeKey, "closing");
44
+ const screenActivity = useSharedValue<ScreenActivity>(
45
+ ScreenActivity.TRANSITIONING_OR_BELOW_TOP,
46
+ );
43
47
 
44
48
  useDerivedValue(() => {
45
49
  if (!sceneProgress) {
46
- screenActivity.set(STATE_TRANSITIONING_OR_BELOW_TOP);
50
+ screenActivity.set(ScreenActivity.TRANSITIONING_OR_BELOW_TOP);
47
51
  return;
48
52
  }
49
53
 
50
54
  if (index < routesLength - activeScreensLimit - 1 || isPreloaded) {
51
- screenActivity.set(STATE_INACTIVE);
55
+ screenActivity.set(ScreenActivity.INACTIVE);
52
56
  } else {
53
57
  const outputValue =
54
58
  index === routesLength - 1
55
- ? STATE_ON_TOP
59
+ ? ScreenActivity.ON_TOP
56
60
  : index >= routesLength - activeScreensLimit
57
- ? STATE_TRANSITIONING_OR_BELOW_TOP
58
- : STATE_INACTIVE;
61
+ ? ScreenActivity.TRANSITIONING_OR_BELOW_TOP
62
+ : ScreenActivity.INACTIVE;
59
63
 
60
64
  const v = interpolate(
61
65
  sceneProgress.get(),
@@ -64,8 +68,7 @@ export const Screen = ({
64
68
  "clamp",
65
69
  );
66
70
 
67
- const next =
68
- (Math.trunc(v) as 0 | 1 | 2) ?? STATE_TRANSITIONING_OR_BELOW_TOP;
71
+ const next = Math.trunc(v) ?? ScreenActivity.TRANSITIONING_OR_BELOW_TOP;
69
72
 
70
73
  if (next !== screenActivity.get()) {
71
74
  screenActivity.set(next);
@@ -74,9 +77,13 @@ export const Screen = ({
74
77
  });
75
78
 
76
79
  const animatedProps = useAnimatedProps(() => {
80
+ const activity = screenActivity.get();
77
81
  return {
78
- activityState: screenActivity.get(),
79
- shouldFreeze: screenActivity.get() === STATE_INACTIVE && shouldFreeze,
82
+ activityState: activity,
83
+ shouldFreeze: activity === ScreenActivity.INACTIVE && shouldFreeze,
84
+ pointerEvents: sceneClosing.get()
85
+ ? ("none" as const)
86
+ : ("box-none" as const),
80
87
  };
81
88
  });
82
89
 
@@ -84,7 +91,6 @@ export const Screen = ({
84
91
  <AnimatedScreen
85
92
  enabled
86
93
  style={StyleSheet.absoluteFill}
87
- pointerEvents="box-none"
88
94
  freezeOnBlur={freezeOnBlur}
89
95
  animatedProps={animatedProps}
90
96
  >