@react-navigation/stack 8.0.0-alpha.5 → 8.0.0-alpha.50

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 (133) hide show
  1. package/lib/module/TransitionConfigs/CardStyleInterpolators.js +36 -0
  2. package/lib/module/TransitionConfigs/CardStyleInterpolators.js.map +1 -1
  3. package/lib/module/index.js +2 -2
  4. package/lib/module/index.js.map +1 -1
  5. package/lib/module/navigators/createStackNavigator.js +3 -7
  6. package/lib/module/navigators/createStackNavigator.js.map +1 -1
  7. package/lib/module/utils/GestureHandlerContext.js +5 -0
  8. package/lib/module/utils/GestureHandlerContext.js.map +1 -0
  9. package/lib/module/utils/gestureActivationCriteria.js +10 -8
  10. package/lib/module/utils/gestureActivationCriteria.js.map +1 -1
  11. package/lib/module/utils/useCardAnimation.js +1 -1
  12. package/lib/module/utils/useCardAnimation.js.map +1 -1
  13. package/lib/module/utils/useGestureHandler.js +9 -0
  14. package/lib/module/utils/useGestureHandler.js.map +1 -0
  15. package/lib/module/utils/useKeyboardManager.js +71 -26
  16. package/lib/module/utils/useKeyboardManager.js.map +1 -1
  17. package/lib/module/views/GestureHandler.js +15 -14
  18. package/lib/module/views/GestureHandler.js.map +1 -1
  19. package/lib/module/views/GestureHandlerNative.js +16 -10
  20. package/lib/module/views/GestureHandlerNative.js.map +1 -1
  21. package/lib/module/views/Header/Header.js +2 -2
  22. package/lib/module/views/Header/Header.js.map +1 -1
  23. package/lib/module/views/Header/HeaderContainer.js +52 -18
  24. package/lib/module/views/Header/HeaderContainer.js.map +1 -1
  25. package/lib/module/views/Header/HeaderSegment.js +3 -3
  26. package/lib/module/views/Header/HeaderSegment.js.map +1 -1
  27. package/lib/module/views/Stack/Card.js +101 -92
  28. package/lib/module/views/Stack/Card.js.map +1 -1
  29. package/lib/module/views/Stack/CardContainer.js +72 -98
  30. package/lib/module/views/Stack/CardContainer.js.map +1 -1
  31. package/lib/module/views/Stack/CardContent.js +2 -0
  32. package/lib/module/views/Stack/CardContent.js.map +1 -1
  33. package/lib/module/views/Stack/CardStack.js +183 -132
  34. package/lib/module/views/Stack/CardStack.js.map +1 -1
  35. package/lib/module/views/Stack/StackView.js +103 -54
  36. package/lib/module/views/Stack/StackView.js.map +1 -1
  37. package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts +1 -1
  38. package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts.map +1 -1
  39. package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts +1 -1
  40. package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts.map +1 -1
  41. package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts +1 -1
  42. package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -1
  43. package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts +1 -1
  44. package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -1
  45. package/lib/typescript/src/index.d.ts +12 -12
  46. package/lib/typescript/src/index.d.ts.map +1 -1
  47. package/lib/typescript/src/navigators/createStackNavigator.d.ts +10 -15
  48. package/lib/typescript/src/navigators/createStackNavigator.d.ts.map +1 -1
  49. package/lib/typescript/src/types.d.ts +52 -55
  50. package/lib/typescript/src/types.d.ts.map +1 -1
  51. package/lib/typescript/src/utils/CardAnimationContext.d.ts +1 -1
  52. package/lib/typescript/src/utils/CardAnimationContext.d.ts.map +1 -1
  53. package/lib/typescript/src/utils/GestureHandlerContext.d.ts +3 -0
  54. package/lib/typescript/src/utils/GestureHandlerContext.d.ts.map +1 -0
  55. package/lib/typescript/src/utils/gestureActivationCriteria.d.ts +4 -51
  56. package/lib/typescript/src/utils/gestureActivationCriteria.d.ts.map +1 -1
  57. package/lib/typescript/src/utils/getDistanceForDirection.d.ts +1 -1
  58. package/lib/typescript/src/utils/getDistanceForDirection.d.ts.map +1 -1
  59. package/lib/typescript/src/utils/getInvertedMultiplier.d.ts +1 -1
  60. package/lib/typescript/src/utils/getInvertedMultiplier.d.ts.map +1 -1
  61. package/lib/typescript/src/utils/getModalRoutesKeys.d.ts +1 -1
  62. package/lib/typescript/src/utils/getModalRoutesKeys.d.ts.map +1 -1
  63. package/lib/typescript/src/utils/getShadowStyle.d.ts +5 -5
  64. package/lib/typescript/src/utils/useCardAnimation.d.ts +1 -1
  65. package/lib/typescript/src/utils/useCardAnimation.d.ts.map +1 -1
  66. package/lib/typescript/src/utils/useGestureHandler.d.ts +2 -0
  67. package/lib/typescript/src/utils/useGestureHandler.d.ts.map +1 -0
  68. package/lib/typescript/src/utils/useKeyboardManager.d.ts +12 -2
  69. package/lib/typescript/src/utils/useKeyboardManager.d.ts.map +1 -1
  70. package/lib/typescript/src/views/GestureHandler.android.d.ts +1 -1
  71. package/lib/typescript/src/views/GestureHandler.android.d.ts.map +1 -1
  72. package/lib/typescript/src/views/GestureHandler.d.ts +7 -11
  73. package/lib/typescript/src/views/GestureHandler.d.ts.map +1 -1
  74. package/lib/typescript/src/views/GestureHandler.ios.d.ts +1 -1
  75. package/lib/typescript/src/views/GestureHandler.ios.d.ts.map +1 -1
  76. package/lib/typescript/src/views/GestureHandlerNative.d.ts +9 -4
  77. package/lib/typescript/src/views/GestureHandlerNative.d.ts.map +1 -1
  78. package/lib/typescript/src/views/Header/Header.d.ts +2 -2
  79. package/lib/typescript/src/views/Header/Header.d.ts.map +1 -1
  80. package/lib/typescript/src/views/Header/HeaderContainer.d.ts +9 -3
  81. package/lib/typescript/src/views/Header/HeaderContainer.d.ts.map +1 -1
  82. package/lib/typescript/src/views/Header/HeaderSegment.d.ts +5 -4
  83. package/lib/typescript/src/views/Header/HeaderSegment.d.ts.map +1 -1
  84. package/lib/typescript/src/views/Stack/Card.d.ts +5 -5
  85. package/lib/typescript/src/views/Stack/Card.d.ts.map +1 -1
  86. package/lib/typescript/src/views/Stack/CardContainer.d.ts +5 -7
  87. package/lib/typescript/src/views/Stack/CardContainer.d.ts.map +1 -1
  88. package/lib/typescript/src/views/Stack/CardContent.d.ts +1 -1
  89. package/lib/typescript/src/views/Stack/CardContent.d.ts.map +1 -1
  90. package/lib/typescript/src/views/Stack/CardStack.d.ts +9 -6
  91. package/lib/typescript/src/views/Stack/CardStack.d.ts.map +1 -1
  92. package/lib/typescript/src/views/Stack/StackView.d.ts +14 -17
  93. package/lib/typescript/src/views/Stack/StackView.d.ts.map +1 -1
  94. package/package.json +23 -24
  95. package/src/TransitionConfigs/CardStyleInterpolators.tsx +44 -0
  96. package/src/index.tsx +3 -2
  97. package/src/navigators/createStackNavigator.tsx +9 -40
  98. package/src/types.tsx +79 -75
  99. package/src/utils/GestureHandlerContext.tsx +5 -0
  100. package/src/utils/gestureActivationCriteria.tsx +14 -10
  101. package/src/utils/useCardAnimation.tsx +1 -1
  102. package/src/utils/useGestureHandler.tsx +9 -0
  103. package/src/utils/useKeyboardManager.tsx +96 -33
  104. package/src/views/GestureHandler.tsx +27 -16
  105. package/src/views/GestureHandlerNative.tsx +26 -12
  106. package/src/views/Header/Header.tsx +2 -2
  107. package/src/views/Header/HeaderContainer.tsx +69 -33
  108. package/src/views/Header/HeaderSegment.tsx +6 -7
  109. package/src/views/Stack/Card.tsx +147 -118
  110. package/src/views/Stack/CardContainer.tsx +86 -127
  111. package/src/views/Stack/CardContent.tsx +1 -0
  112. package/src/views/Stack/CardStack.tsx +409 -330
  113. package/src/views/Stack/StackView.tsx +176 -79
  114. package/lib/module/utils/GestureHandlerRefContext.js +0 -5
  115. package/lib/module/utils/GestureHandlerRefContext.js.map +0 -1
  116. package/lib/module/utils/findLastIndex.js +0 -11
  117. package/lib/module/utils/findLastIndex.js.map +0 -1
  118. package/lib/module/utils/useGestureHandlerRef.js +0 -12
  119. package/lib/module/utils/useGestureHandlerRef.js.map +0 -1
  120. package/lib/module/views/Stack/CardA11yWrapper.js +0 -43
  121. package/lib/module/views/Stack/CardA11yWrapper.js.map +0 -1
  122. package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts +0 -3
  123. package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts.map +0 -1
  124. package/lib/typescript/src/utils/findLastIndex.d.ts +0 -2
  125. package/lib/typescript/src/utils/findLastIndex.d.ts.map +0 -1
  126. package/lib/typescript/src/utils/useGestureHandlerRef.d.ts +0 -3
  127. package/lib/typescript/src/utils/useGestureHandlerRef.d.ts.map +0 -1
  128. package/lib/typescript/src/views/Stack/CardA11yWrapper.d.ts +0 -15
  129. package/lib/typescript/src/views/Stack/CardA11yWrapper.d.ts.map +0 -1
  130. package/src/utils/GestureHandlerRefContext.tsx +0 -5
  131. package/src/utils/findLastIndex.tsx +0 -9
  132. package/src/utils/useGestureHandlerRef.tsx +0 -15
  133. package/src/views/Stack/CardA11yWrapper.tsx +0 -67
@@ -2,7 +2,7 @@ import type { LocaleDirection } from '@react-navigation/native';
2
2
  import * as React from 'react';
3
3
  import { Animated, type StyleProp, type ViewStyle } from 'react-native';
4
4
  import type { EdgeInsets } from 'react-native-safe-area-context';
5
- import type { GestureDirection, Layout, StackCardStyleInterpolator, TransitionSpec } from '../../types';
5
+ import type { GestureDirection, Layout, StackCardStyleInterpolator, TransitionSpec } from '../../types.js';
6
6
  type Props = {
7
7
  animated: boolean;
8
8
  interpolationIndex: number;
@@ -32,7 +32,7 @@ type Props = {
32
32
  overlayEnabled: boolean;
33
33
  shadowEnabled: boolean | undefined;
34
34
  gestureEnabled: boolean;
35
- gestureResponseDistance?: number;
35
+ gestureResponseDistance?: number | undefined;
36
36
  gestureVelocityImpact: number | undefined;
37
37
  transitionSpec: {
38
38
  open: TransitionSpec;
@@ -40,9 +40,9 @@ type Props = {
40
40
  };
41
41
  preloaded: boolean;
42
42
  styleInterpolator: StackCardStyleInterpolator;
43
- containerStyle?: StyleProp<ViewStyle>;
44
- contentStyle?: StyleProp<ViewStyle>;
43
+ containerStyle?: StyleProp<ViewStyle> | undefined;
44
+ contentStyle?: StyleProp<ViewStyle> | undefined;
45
45
  };
46
- declare function Card({ shadowEnabled, gestureEnabled, gestureVelocityImpact, overlay, animated, interpolationIndex, opening, closing, next, current, gesture, layout, insets, direction, pageOverflowEnabled, gestureDirection, onOpen, onClose, onTransition, onGestureBegin, onGestureCanceled, onGestureEnd, children, overlayEnabled, gestureResponseDistance, transitionSpec, preloaded, styleInterpolator, containerStyle: customContainerStyle, contentStyle, }: Props): import("react/jsx-runtime").JSX.Element;
46
+ declare function Card({ shadowEnabled, gestureEnabled, gestureVelocityImpact, overlay, animated, interpolationIndex, opening, closing, next, current, gesture, layout, insets, direction, pageOverflowEnabled, gestureDirection, onOpen, onClose, onTransition, onGestureBegin, onGestureCanceled, onGestureEnd, children, overlayEnabled, gestureResponseDistance, transitionSpec, preloaded, styleInterpolator, containerStyle: customContainerStyle, contentStyle, }: Props): React.JSX.Element;
47
47
  export { Card };
48
48
  //# sourceMappingURL=Card.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/Card.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,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,aAAa,CAAC;AAarB,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;AAmDF,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,2CA4ZP;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/Card.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,QAAQ,EAER,KAAK,SAAS,EAGd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAGjE,OAAO,KAAK,EACV,gBAAgB,EAChB,MAAM,EACN,0BAA0B,EAC1B,cAAc,EACf,MAAM,gBAAa,CAAC;AASrB,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,GAAG,SAAS,CAAC;IAC7C,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,GAAG,SAAS,CAAC;IAClD,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;CACjD,CAAC;AAuDF,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,qBAmbP;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import { type Route } from '@react-navigation/native';
2
2
  import * as React from 'react';
3
3
  import { Animated } from 'react-native';
4
- import type { Layout, Scene } from '../../types';
5
- import type { Props as HeaderContainerProps } from '../Header/HeaderContainer';
4
+ import type { Layout, Scene } from '../../types.js';
5
+ import type { HeaderHeight, Props as HeaderContainerProps } from '../Header/HeaderContainer.js';
6
6
  type Props = {
7
7
  interpolationIndex: number;
8
8
  index: number;
@@ -45,17 +45,15 @@ type Props = {
45
45
  onGestureCancel: (props: {
46
46
  route: Route<string>;
47
47
  }) => void;
48
- hasAbsoluteFloatHeader: boolean;
49
- headerHeight: number;
48
+ headerHeight: HeaderHeight | undefined;
50
49
  onHeaderHeightChange: (props: {
51
50
  route: Route<string>;
52
51
  height: number;
53
52
  }) => void;
54
53
  isParentHeaderShown: boolean;
55
- isNextScreenTransparent: boolean;
56
- detachCurrentScreen: boolean;
54
+ children: React.ReactNode;
57
55
  };
58
- declare function CardContainerInner({ interpolationIndex, index, active, opening, closing, gesture, focused, modal, getPreviousScene, getFocusedRoute, hasAbsoluteFloatHeader, headerHeight, onHeaderHeightChange, isParentHeaderShown, isNextScreenTransparent, detachCurrentScreen, layout, onCloseRoute, onOpenRoute, onGestureCancel, onGestureEnd, onGestureStart, onTransitionEnd, onTransitionStart, preloaded, renderHeader, safeAreaInsetBottom, safeAreaInsetLeft, safeAreaInsetRight, safeAreaInsetTop, scene, }: Props): import("react/jsx-runtime").JSX.Element;
56
+ declare function CardContainerInner({ interpolationIndex, index, active, opening, closing, gesture, focused, modal, getPreviousScene, getFocusedRoute, headerHeight, onHeaderHeightChange, isParentHeaderShown, layout, onCloseRoute, onOpenRoute, onGestureCancel, onGestureEnd, onGestureStart, onTransitionEnd, onTransitionStart, preloaded, renderHeader, safeAreaInsetBottom, safeAreaInsetLeft, safeAreaInsetRight, safeAreaInsetTop, scene, children, }: Props): React.JSX.Element;
59
57
  export declare const CardContainer: React.MemoExoticComponent<typeof CardContainerInner>;
60
58
  export {};
61
59
  //# sourceMappingURL=CardContainer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardContainer.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/CardContainer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CardContainer.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/CardContainer.tsx"],"names":[],"mappings":"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"}
@@ -8,6 +8,6 @@ type Props = ViewProps & {
8
8
  };
9
9
  children: React.ReactNode;
10
10
  };
11
- export declare function CardContent({ enabled, layout, style, ...rest }: Props): import("react/jsx-runtime").JSX.Element;
11
+ export declare function CardContent({ enabled, layout, style, ...rest }: Props): React.JSX.Element;
12
12
  export {};
13
13
  //# sourceMappingURL=CardContent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardContent.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/CardContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAEhE,KAAK,KAAK,GAAG,SAAS,GAAG;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAMF,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,KAAK,2CAuErE"}
1
+ {"version":3,"file":"CardContent.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/CardContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAEhE,KAAK,KAAK,GAAG,SAAS,GAAG;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAMF,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,KAAK,qBAwErE"}
@@ -2,11 +2,12 @@ import type { LocaleDirection, ParamListBase, Route, StackNavigationState } from
2
2
  import * as React from 'react';
3
3
  import { Animated } from 'react-native';
4
4
  import type { EdgeInsets } from 'react-native-safe-area-context';
5
- import type { Layout, Scene, StackAnimationName, StackDescriptorMap } from '../../types';
6
- import type { Props as HeaderContainerProps } from '../Header/HeaderContainer';
5
+ import type { Layout, Scene, StackAnimationName, StackDescriptorMap } from '../../types.js';
6
+ import type { HeaderHeight, Props as HeaderContainerProps } from '../Header/HeaderContainer.js';
7
7
  type GestureValues = {
8
8
  [key: string]: Animated.Value;
9
9
  };
10
+ type HeaderHeights = Record<string, HeaderHeight>;
10
11
  type Props = {
11
12
  direction: LocaleDirection;
12
13
  insets: EdgeInsets;
@@ -15,6 +16,7 @@ type Props = {
15
16
  routes: Route<string>[];
16
17
  openingRouteKeys: string[];
17
18
  closingRouteKeys: string[];
19
+ replacingRouteKeys: string[];
18
20
  onOpenRoute: (props: {
19
21
  route: Route<string>;
20
22
  }) => void;
@@ -47,11 +49,12 @@ type Props = {
47
49
  type State = {
48
50
  routes: Route<string>[];
49
51
  descriptors: StackDescriptorMap;
50
- scenes: Scene[];
52
+ scenes: (Scene & {
53
+ __memo: unknown[];
54
+ })[];
51
55
  gestures: GestureValues;
52
56
  layout: Layout;
53
- activeStates: (0 | 1 | Animated.AnimatedInterpolation<0 | 1>)[];
54
- headerHeights: Record<string, number>;
57
+ headerHeights: HeaderHeights;
55
58
  };
56
59
  export declare function getAnimationEnabled(animation: StackAnimationName | undefined): boolean;
57
60
  export declare class CardStack extends React.Component<Props, State> {
@@ -61,7 +64,7 @@ export declare class CardStack extends React.Component<Props, State> {
61
64
  private handleHeaderLayout;
62
65
  private getFocusedRoute;
63
66
  private getPreviousScene;
64
- render(): import("react/jsx-runtime").JSX.Element;
67
+ render(): React.JSX.Element;
65
68
  }
66
69
  export {};
67
70
  //# sourceMappingURL=CardStack.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardStack.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/CardStack.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CardStack.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/CardStack.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { type LocaleDirection, type ParamListBase, type Route, type StackNavigationState } from '@react-navigation/native';
2
2
  import * as React from 'react';
3
- import type { StackDescriptorMap, StackNavigationConfig, StackNavigationHelpers } from '../../types';
3
+ import type { StackDescriptorMap, StackNavigationConfig, StackNavigationHelpers } from '../../types.js';
4
4
  type Props = StackNavigationConfig & {
5
5
  direction: LocaleDirection;
6
6
  state: StackNavigationState<ParamListBase>;
@@ -9,8 +9,7 @@ type Props = StackNavigationConfig & {
9
9
  };
10
10
  type State = {
11
11
  routes: Route<string>[];
12
- previousRoutes: Route<string>[];
13
- previousDescriptors: StackDescriptorMap;
12
+ previousState: StackNavigationState<ParamListBase> | undefined;
14
13
  openingRouteKeys: string[];
15
14
  closingRouteKeys: string[];
16
15
  replacingRouteKeys: string[];
@@ -18,27 +17,25 @@ type State = {
18
17
  };
19
18
  export declare class StackView extends React.Component<Props, State> {
20
19
  static getDerivedStateFromProps(props: Readonly<Props>, state: Readonly<State>): {
21
- routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
22
- previousRoutes: Readonly<{
20
+ routes: Readonly<{
23
21
  key: string;
24
22
  name: string;
25
- path?: string;
23
+ path?: string | undefined;
26
24
  history?: {
27
25
  type: "params";
28
- params: object;
29
- }[];
30
- } & Readonly<{
26
+ params: Readonly<object | undefined>;
27
+ }[] | undefined;
28
+ } & {
31
29
  params?: Readonly<object | undefined>;
32
- }>>[];
30
+ }>[];
31
+ previousState: StackNavigationState<ParamListBase>;
33
32
  descriptors: StackDescriptorMap;
34
- previousDescriptors: StackDescriptorMap;
35
- openingRouteKeys?: undefined;
36
- closingRouteKeys?: undefined;
37
- replacingRouteKeys?: undefined;
33
+ openingRouteKeys?: never;
34
+ closingRouteKeys?: never;
35
+ replacingRouteKeys?: never;
38
36
  } | {
39
37
  routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
40
- previousRoutes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
41
- previousDescriptors: StackDescriptorMap;
38
+ previousState: StackNavigationState<ParamListBase>;
42
39
  openingRouteKeys: string[];
43
40
  closingRouteKeys: string[];
44
41
  replacingRouteKeys: string[];
@@ -54,7 +51,7 @@ export declare class StackView extends React.Component<Props, State> {
54
51
  private handleGestureStart;
55
52
  private handleGestureEnd;
56
53
  private handleGestureCancel;
57
- render(): import("react/jsx-runtime").JSX.Element;
54
+ render(): React.JSX.Element;
58
55
  }
59
56
  export {};
60
57
  //# sourceMappingURL=StackView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StackView.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/StackView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,KAAK,EAEV,KAAK,oBAAoB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,aAAa,CAAC;AASrB,KAAK,KAAK,GAAG,qBAAqB,GAAG;IACnC,SAAS,EAAE,eAAe,CAAC;IAC3B,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,UAAU,EAAE,sBAAsB,CAAC;IACnC,WAAW,EAAE,kBAAkB,CAAC;CACjC,CAAC;AAEF,KAAK,KAAK,GAAG;IAEX,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;IAExB,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;IAEhC,mBAAmB,EAAE,kBAAkB,CAAC;IAExC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAE3B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAE3B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAG7B,WAAW,EAAE,kBAAkB,CAAC;CACjC,CAAC;AAWF,qBAAa,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IAC1D,MAAM,CAAC,wBAAwB,CAC7B,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,EACtB,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqNxB,KAAK,EAAE,KAAK,CAQV;IAEF,OAAO,CAAC,gBAAgB,CAYtB;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,eAAe,CAwCrB;IAEF,OAAO,CAAC,gBAAgB,CAwBtB;IAEF,OAAO,CAAC,qBAAqB,CAQxB;IAEL,OAAO,CAAC,mBAAmB,CAQtB;IAEL,OAAO,CAAC,kBAAkB,CAKxB;IAEF,OAAO,CAAC,gBAAgB,CAKtB;IAEF,OAAO,CAAC,mBAAmB,CAKzB;IAEF,MAAM;CAkDP"}
1
+ {"version":3,"file":"StackView.d.ts","sourceRoot":"","sources":["../../../../../src/views/Stack/StackView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,KAAK,EAEV,KAAK,oBAAoB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,gBAAa,CAAC;AASrB,KAAK,KAAK,GAAG,qBAAqB,GAAG;IACnC,SAAS,EAAE,eAAe,CAAC;IAC3B,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,UAAU,EAAE,sBAAsB,CAAC;IACnC,WAAW,EAAE,kBAAkB,CAAC;CACjC,CAAC;AAEF,KAAK,KAAK,GAAG;IAEX,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;IAExB,aAAa,EAAE,oBAAoB,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;IAE/D,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAE3B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAE3B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAG7B,WAAW,EAAE,kBAAkB,CAAC;CACjC,CAAC;AAWF,qBAAa,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IAC1D,MAAM,CAAC,wBAAwB,CAC7B,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,EACtB,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;IA+Rf,KAAK,EAAE,KAAK,CAOnB;IAEF,OAAO,CAAC,gBAAgB,CAYtB;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,eAAe,CA+DrB;IAEF,OAAO,CAAC,gBAAgB,CA0BtB;IAEF,OAAO,CAAC,qBAAqB,CAQxB;IAEL,OAAO,CAAC,mBAAmB,CAQtB;IAEL,OAAO,CAAC,kBAAkB,CAKxB;IAEF,OAAO,CAAC,gBAAgB,CAKtB;IAEF,OAAO,CAAC,mBAAmB,CAKzB;IAEO,MAAM;CAmDhB"}
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": "8.0.0-alpha.5",
4
+ "version": "8.0.0-alpha.50",
5
5
  "keywords": [
6
6
  "react-native-component",
7
7
  "react-component",
@@ -25,7 +25,7 @@
25
25
  "types": "./lib/typescript/src/index.d.ts",
26
26
  "exports": {
27
27
  ".": {
28
- "source": "./src/index.tsx",
28
+ "@react-navigation/source": "./src/index.tsx",
29
29
  "types": "./lib/typescript/src/index.d.ts",
30
30
  "default": "./lib/module/index.js"
31
31
  },
@@ -45,33 +45,32 @@
45
45
  "clean": "del lib"
46
46
  },
47
47
  "dependencies": {
48
- "@react-navigation/elements": "^3.0.0-alpha.5",
49
- "color": "^4.2.3",
50
- "use-latest-callback": "^0.3.2"
48
+ "@react-navigation/elements": "^3.0.0-alpha.45",
49
+ "use-latest-callback": "^0.3.5"
51
50
  },
52
51
  "devDependencies": {
53
- "@jest/globals": "^30.0.0",
54
- "@react-navigation/native": "^8.0.0-alpha.5",
55
- "@testing-library/react-native": "^13.2.1",
56
- "@types/color": "^4.2.0",
57
- "@types/react": "~19.1.10",
58
- "del-cli": "^6.0.0",
59
- "react": "19.1.0",
60
- "react-native": "0.81.4",
61
- "react-native-builder-bob": "^0.40.12",
62
- "react-native-gesture-handler": "~2.28.0",
63
- "react-native-safe-area-context": "~5.6.0",
64
- "react-native-screens": "^4.20.0",
65
- "react-test-renderer": "19.1.0",
66
- "typescript": "^5.9.2"
52
+ "@jest/globals": "^30.4.1",
53
+ "@react-navigation/native": "^8.0.0-alpha.41",
54
+ "@testing-library/react-native": "^14.0.0",
55
+ "@types/react": "~19.2.17",
56
+ "del-cli": "^7.0.0",
57
+ "react": "19.2.3",
58
+ "react-native": "0.85.3",
59
+ "react-native-builder-bob": "^0.43.0",
60
+ "react-native-gesture-handler": "^3.0.2",
61
+ "react-native-safe-area-context": "~5.7.0",
62
+ "react-native-screens": "^4.26.2",
63
+ "react-native-web": "~0.21.2",
64
+ "test-renderer": "1.2.0",
65
+ "typescript": "^6.0.3"
67
66
  },
68
67
  "peerDependencies": {
69
- "@react-navigation/native": "^8.0.0-alpha.5",
70
- "react": ">= 19.0.0",
68
+ "@react-navigation/native": "^8.0.0-alpha.41",
69
+ "react": ">= 19.2.0",
71
70
  "react-native": "*",
72
- "react-native-gesture-handler": ">= 2.0.0",
71
+ "react-native-gesture-handler": ">= 3.0.0",
73
72
  "react-native-safe-area-context": ">= 5.5.0",
74
- "react-native-screens": ">= 4.19.0"
73
+ "react-native-screens": ">= 4.25.0"
75
74
  },
76
75
  "react-native-builder-bob": {
77
76
  "source": "src",
@@ -91,5 +90,5 @@
91
90
  ]
92
91
  ]
93
92
  },
94
- "gitHead": "e70fcf951732df83d28fe5157408974346a1abbc"
93
+ "gitHead": "a92d33a7bff634f9a217a9b017afe4c920696b89"
95
94
  }
@@ -138,6 +138,50 @@ export function forModalPresentationIOS({
138
138
 
139
139
  const isFirst = index === 0;
140
140
 
141
+ if (Platform.OS !== 'ios' || parseInt(Platform.Version, 10) >= 26) {
142
+ const scaleValue = screen.width ? 1 - (topOffset * 3) / screen.width : 1;
143
+ const recede = ((screen.height - statusBarHeight) * (1 - scaleValue)) / 2;
144
+
145
+ const translateY = multiply(
146
+ progress.interpolate({
147
+ inputRange: [0, 1, 2],
148
+ outputRange: [
149
+ screen.height,
150
+ // The front modal rests below the one behind it to reveal a peek.
151
+ index > 1 ? topOffset : 0,
152
+ isFirst ? 0 : -recede,
153
+ ],
154
+ }),
155
+ inverted
156
+ );
157
+
158
+ const scale = isFirst
159
+ ? 1
160
+ : progress.interpolate({
161
+ inputRange: [0, 1, 2],
162
+ outputRange: [1, 1, scaleValue],
163
+ });
164
+
165
+ const dimOpacity = progress.interpolate({
166
+ inputRange: [0, 1, 2],
167
+ outputRange: [0, 0, isFirst ? 0.2 : 0.12],
168
+ });
169
+
170
+ const borderRadius = isFirst ? 0 : 38;
171
+
172
+ return {
173
+ cardStyle: {
174
+ overflow: 'hidden',
175
+ borderCurve: 'continuous',
176
+ borderTopLeftRadius: borderRadius,
177
+ borderTopRightRadius: borderRadius,
178
+ marginTop: isFirst ? 0 : statusBarHeight,
179
+ transform: [{ translateY }, { scale }],
180
+ },
181
+ dimStyle: { opacity: dimOpacity },
182
+ };
183
+ }
184
+
141
185
  const translateY = multiply(
142
186
  progress.interpolate({
143
187
  inputRange: [0, 1, 2],
package/src/index.tsx CHANGED
@@ -9,6 +9,7 @@ import * as TransitionSpecs from './TransitionConfigs/TransitionSpecs';
9
9
  export {
10
10
  createStackNavigator,
11
11
  createStackScreen,
12
+ type StackTypeBag,
12
13
  } from './navigators/createStackNavigator';
13
14
 
14
15
  /**
@@ -31,9 +32,9 @@ export {
31
32
  * Utilities
32
33
  */
33
34
  export { CardAnimationContext } from './utils/CardAnimationContext';
34
- export { GestureHandlerRefContext } from './utils/GestureHandlerRefContext';
35
+ export { GestureHandlerContext } from './utils/GestureHandlerContext';
35
36
  export { useCardAnimation } from './utils/useCardAnimation';
36
- export { useGestureHandlerRef } from './utils/useGestureHandlerRef';
37
+ export { useGestureHandler } from './utils/useGestureHandler';
37
38
 
38
39
  /**
39
40
  * Types
@@ -1,18 +1,14 @@
1
1
  import {
2
2
  createNavigatorFactory,
3
+ createScreenFactory,
3
4
  type EventArg,
5
+ type NavigatorTypeBagBase,
4
6
  type ParamListBase,
5
7
  type StackActionHelpers,
6
8
  StackActions,
7
9
  type StackNavigationState,
8
10
  StackRouter,
9
11
  type StackRouterOptions,
10
- type StaticConfig,
11
- type StaticParamList,
12
- type StaticScreenConfig,
13
- type StaticScreenConfigLinking,
14
- type StaticScreenConfigScreen,
15
- type TypedNavigator,
16
12
  useLocale,
17
13
  useNavigationBuilder,
18
14
  } from '@react-navigation/native';
@@ -21,7 +17,6 @@ import * as React from 'react';
21
17
  import type {
22
18
  StackNavigationEventMap,
23
19
  StackNavigationOptions,
24
- StackNavigationProp,
25
20
  StackNavigatorProps,
26
21
  } from '../types';
27
22
  import { StackView } from '../views/Stack/StackView';
@@ -96,41 +91,15 @@ function StackNavigator({
96
91
  );
97
92
  }
98
93
 
99
- type StackTypeBag<ParamList extends {}> = {
100
- ParamList: ParamList;
101
- State: StackNavigationState<ParamList>;
94
+ export interface StackTypeBag extends NavigatorTypeBagBase {
95
+ State: StackNavigationState<this['ParamList']>;
102
96
  ScreenOptions: StackNavigationOptions;
103
97
  EventMap: StackNavigationEventMap;
104
- NavigationList: {
105
- [RouteName in keyof ParamList]: StackNavigationProp<ParamList, RouteName>;
106
- };
98
+ ActionHelpers: StackActionHelpers<this['ParamList']>;
107
99
  Navigator: typeof StackNavigator;
108
- };
109
-
110
- export function createStackNavigator<
111
- const ParamList extends ParamListBase,
112
- >(): TypedNavigator<StackTypeBag<ParamList>, undefined>;
113
- export function createStackNavigator<
114
- const Config extends StaticConfig<StackTypeBag<ParamListBase>>,
115
- >(
116
- config: Config
117
- ): TypedNavigator<StackTypeBag<StaticParamList<{ config: Config }>>, Config>;
118
- export function createStackNavigator(config?: unknown) {
119
- return createNavigatorFactory(StackNavigator)(config);
120
100
  }
121
101
 
122
- export function createStackScreen<
123
- const Linking extends StaticScreenConfigLinking,
124
- const Screen extends StaticScreenConfigScreen,
125
- >(
126
- config: StaticScreenConfig<
127
- Linking,
128
- Screen,
129
- StackNavigationState<ParamListBase>,
130
- StackNavigationOptions,
131
- StackNavigationEventMap,
132
- StackNavigationProp<ParamListBase>
133
- >
134
- ) {
135
- return config;
136
- }
102
+ export const createStackNavigator =
103
+ createNavigatorFactory<StackTypeBag>(StackNavigator);
104
+
105
+ export const createStackScreen = createScreenFactory<StackTypeBag>();