react-native-screens 4.0.0-beta.9 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (268) hide show
  1. package/README.md +9 -2
  2. package/android/CMakeLists.txt +28 -19
  3. package/android/src/main/cpp/jni-adapter.cpp +3 -0
  4. package/android/src/main/java/com/swmansion/rnscreens/CustomToolbar.kt +13 -3
  5. package/android/src/main/java/com/swmansion/rnscreens/NativeDismissalObserver.kt +12 -0
  6. package/android/src/main/java/com/swmansion/rnscreens/Screen.kt +4 -0
  7. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackFragment.kt +64 -68
  8. package/android/src/main/java/com/swmansion/rnscreens/bottomsheet/BottomSheetBehaviorExt.kt +42 -0
  9. package/android/src/main/java/com/swmansion/rnscreens/bottomsheet/DimmingFragment.kt +24 -19
  10. package/android/src/main/java/com/swmansion/rnscreens/bottomsheet/SheetUtils.kt +8 -0
  11. package/android/src/main/java/com/swmansion/rnscreens/ext/ViewExt.kt +10 -3
  12. package/android/src/main/jni/CMakeLists.txt +28 -19
  13. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSScreenManagerDelegate.java +2 -2
  14. package/common/cpp/react/renderer/components/rnscreens/RNSScreenShadowNode.cpp +1 -1
  15. package/ios/RNSConvert.h +13 -6
  16. package/ios/RNSConvert.mm +130 -94
  17. package/ios/RNSEnums.h +47 -0
  18. package/ios/RNSFullWindowOverlay.mm +4 -0
  19. package/ios/RNSPercentDrivenInteractiveTransition.h +12 -0
  20. package/ios/RNSPercentDrivenInteractiveTransition.mm +69 -0
  21. package/ios/RNSScreen.h +14 -0
  22. package/ios/RNSScreen.mm +35 -9
  23. package/ios/RNSScreenContainer.mm +5 -0
  24. package/ios/RNSScreenFooter.mm +24 -25
  25. package/ios/RNSScreenStack.mm +79 -8
  26. package/ios/RNSScreenStackAnimator.h +13 -1
  27. package/ios/RNSScreenStackAnimator.mm +233 -130
  28. package/ios/RNSScreenStackHeaderConfig.h +10 -7
  29. package/ios/RNSScreenStackHeaderConfig.mm +49 -30
  30. package/ios/RNSScreenStackHeaderSubview.mm +4 -0
  31. package/ios/utils/RNSDefines.h +7 -0
  32. package/lib/commonjs/components/DebugContainer.js +40 -0
  33. package/lib/commonjs/components/DebugContainer.js.map +1 -0
  34. package/lib/commonjs/components/DebugContainer.web.js +15 -0
  35. package/lib/commonjs/components/DebugContainer.web.js.map +1 -0
  36. package/lib/commonjs/components/FullWindowOverlay.js +8 -5
  37. package/lib/commonjs/components/FullWindowOverlay.js.map +1 -1
  38. package/lib/commonjs/components/Screen.js +28 -10
  39. package/lib/commonjs/components/Screen.js.map +1 -1
  40. package/lib/commonjs/components/ScreenContainer.js +3 -5
  41. package/lib/commonjs/components/ScreenContainer.js.map +1 -1
  42. package/lib/commonjs/components/ScreenContainer.web.js +3 -4
  43. package/lib/commonjs/components/ScreenContainer.web.js.map +1 -1
  44. package/lib/commonjs/components/ScreenContentWrapper.js +2 -4
  45. package/lib/commonjs/components/ScreenContentWrapper.js.map +1 -1
  46. package/lib/commonjs/components/ScreenContentWrapper.web.js +1 -2
  47. package/lib/commonjs/components/ScreenContentWrapper.web.js.map +1 -1
  48. package/lib/commonjs/components/ScreenFooter.js +2 -8
  49. package/lib/commonjs/components/ScreenFooter.js.map +1 -1
  50. package/lib/commonjs/components/ScreenFooter.web.js +1 -2
  51. package/lib/commonjs/components/ScreenFooter.web.js.map +1 -1
  52. package/lib/commonjs/components/ScreenStack.js +47 -9
  53. package/lib/commonjs/components/ScreenStack.js.map +1 -1
  54. package/lib/commonjs/components/ScreenStack.web.js +2 -1
  55. package/lib/commonjs/components/ScreenStack.web.js.map +1 -1
  56. package/lib/commonjs/components/ScreenStackHeaderConfig.js +10 -10
  57. package/lib/commonjs/components/ScreenStackHeaderConfig.js.map +1 -1
  58. package/lib/commonjs/components/ScreenStackItem.js +99 -0
  59. package/lib/commonjs/components/ScreenStackItem.js.map +1 -0
  60. package/lib/commonjs/components/SearchBar.js +5 -5
  61. package/lib/commonjs/components/SearchBar.js.map +1 -1
  62. package/lib/commonjs/components/SearchBar.web.js +3 -4
  63. package/lib/commonjs/components/SearchBar.web.js.map +1 -1
  64. package/lib/commonjs/contexts.js +11 -0
  65. package/lib/commonjs/contexts.js.map +1 -0
  66. package/lib/commonjs/core.js +0 -3
  67. package/lib/commonjs/core.js.map +1 -1
  68. package/lib/commonjs/fabric/ModalScreenNativeComponent.js.map +1 -1
  69. package/lib/commonjs/fabric/ScreenStackHeaderConfigNativeComponent.js.map +1 -1
  70. package/lib/commonjs/gesture-handler/GestureDetectorProvider.js +2 -2
  71. package/lib/commonjs/gesture-handler/GestureDetectorProvider.js.map +1 -1
  72. package/lib/commonjs/gesture-handler/ScreenGestureDetector.js +3 -3
  73. package/lib/commonjs/gesture-handler/ScreenGestureDetector.js.map +1 -1
  74. package/lib/commonjs/gesture-handler/fabricUtils.js +54 -18
  75. package/lib/commonjs/gesture-handler/fabricUtils.js.map +1 -1
  76. package/lib/commonjs/index.js +23 -86
  77. package/lib/commonjs/index.js.map +1 -1
  78. package/lib/commonjs/native-stack/navigators/createNativeStackNavigator.js +4 -0
  79. package/lib/commonjs/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
  80. package/lib/commonjs/native-stack/views/FooterComponent.js +2 -2
  81. package/lib/commonjs/native-stack/views/FooterComponent.js.map +1 -1
  82. package/lib/commonjs/native-stack/views/HeaderConfig.js +10 -8
  83. package/lib/commonjs/native-stack/views/HeaderConfig.js.map +1 -1
  84. package/lib/commonjs/native-stack/views/NativeStackView.js +34 -39
  85. package/lib/commonjs/native-stack/views/NativeStackView.js.map +1 -1
  86. package/lib/commonjs/reanimated/ReanimatedNativeStackScreen.js +2 -2
  87. package/lib/commonjs/reanimated/ReanimatedNativeStackScreen.js.map +1 -1
  88. package/lib/commonjs/reanimated/ReanimatedScreen.js +2 -2
  89. package/lib/commonjs/reanimated/ReanimatedScreen.js.map +1 -1
  90. package/lib/commonjs/reanimated/ReanimatedScreenProvider.js +2 -2
  91. package/lib/commonjs/reanimated/ReanimatedScreenProvider.js.map +1 -1
  92. package/lib/commonjs/utils.js +28 -6
  93. package/lib/commonjs/utils.js.map +1 -1
  94. package/lib/module/components/DebugContainer.js +31 -0
  95. package/lib/module/components/DebugContainer.js.map +1 -0
  96. package/lib/module/components/DebugContainer.web.js +6 -0
  97. package/lib/module/components/DebugContainer.web.js.map +1 -0
  98. package/lib/module/components/FullWindowOverlay.js +9 -6
  99. package/lib/module/components/FullWindowOverlay.js.map +1 -1
  100. package/lib/module/components/Screen.js +27 -9
  101. package/lib/module/components/Screen.js.map +1 -1
  102. package/lib/module/components/ScreenContainer.js +2 -4
  103. package/lib/module/components/ScreenContainer.js.map +1 -1
  104. package/lib/module/components/ScreenContainer.web.js +2 -3
  105. package/lib/module/components/ScreenContainer.web.js.map +1 -1
  106. package/lib/module/components/ScreenContentWrapper.js +1 -3
  107. package/lib/module/components/ScreenContentWrapper.js.map +1 -1
  108. package/lib/module/components/ScreenContentWrapper.web.js +0 -1
  109. package/lib/module/components/ScreenContentWrapper.web.js.map +1 -1
  110. package/lib/module/components/ScreenFooter.js +1 -7
  111. package/lib/module/components/ScreenFooter.js.map +1 -1
  112. package/lib/module/components/ScreenFooter.web.js +0 -1
  113. package/lib/module/components/ScreenFooter.web.js.map +1 -1
  114. package/lib/module/components/ScreenStack.js +46 -8
  115. package/lib/module/components/ScreenStack.js.map +1 -1
  116. package/lib/module/components/ScreenStack.web.js +2 -1
  117. package/lib/module/components/ScreenStack.web.js.map +1 -1
  118. package/lib/module/components/ScreenStackHeaderConfig.js +10 -8
  119. package/lib/module/components/ScreenStackHeaderConfig.js.map +1 -1
  120. package/lib/module/components/ScreenStackItem.js +90 -0
  121. package/lib/module/components/ScreenStackItem.js.map +1 -0
  122. package/lib/module/components/SearchBar.js +3 -3
  123. package/lib/module/components/SearchBar.js.map +1 -1
  124. package/lib/module/components/SearchBar.web.js +2 -3
  125. package/lib/module/components/SearchBar.web.js.map +1 -1
  126. package/lib/module/contexts.js +4 -0
  127. package/lib/module/contexts.js.map +1 -0
  128. package/lib/module/core.js +0 -3
  129. package/lib/module/core.js.map +1 -1
  130. package/lib/module/fabric/ModalScreenNativeComponent.js.map +1 -1
  131. package/lib/module/fabric/ScreenStackHeaderConfigNativeComponent.js.map +1 -1
  132. package/lib/module/gesture-handler/GestureDetectorProvider.js +1 -1
  133. package/lib/module/gesture-handler/GestureDetectorProvider.js.map +1 -1
  134. package/lib/module/gesture-handler/ScreenGestureDetector.js +3 -3
  135. package/lib/module/gesture-handler/ScreenGestureDetector.js.map +1 -1
  136. package/lib/module/gesture-handler/fabricUtils.js +55 -17
  137. package/lib/module/gesture-handler/fabricUtils.js.map +1 -1
  138. package/lib/module/index.js +12 -18
  139. package/lib/module/index.js.map +1 -1
  140. package/lib/module/native-stack/navigators/createNativeStackNavigator.js +4 -0
  141. package/lib/module/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
  142. package/lib/module/native-stack/views/FooterComponent.js +1 -1
  143. package/lib/module/native-stack/views/FooterComponent.js.map +1 -1
  144. package/lib/module/native-stack/views/HeaderConfig.js +3 -1
  145. package/lib/module/native-stack/views/HeaderConfig.js.map +1 -1
  146. package/lib/module/native-stack/views/NativeStackView.js +28 -33
  147. package/lib/module/native-stack/views/NativeStackView.js.map +1 -1
  148. package/lib/module/reanimated/ReanimatedNativeStackScreen.js +1 -2
  149. package/lib/module/reanimated/ReanimatedNativeStackScreen.js.map +1 -1
  150. package/lib/module/reanimated/ReanimatedScreen.js +1 -2
  151. package/lib/module/reanimated/ReanimatedScreen.js.map +1 -1
  152. package/lib/module/reanimated/ReanimatedScreenProvider.js +1 -1
  153. package/lib/module/reanimated/ReanimatedScreenProvider.js.map +1 -1
  154. package/lib/module/utils.js +26 -5
  155. package/lib/module/utils.js.map +1 -1
  156. package/lib/typescript/components/DebugContainer.d.ts +15 -0
  157. package/lib/typescript/components/DebugContainer.d.ts.map +1 -0
  158. package/lib/typescript/components/DebugContainer.web.d.ts +4 -0
  159. package/lib/typescript/components/DebugContainer.web.d.ts.map +1 -0
  160. package/lib/typescript/components/FullWindowOverlay.d.ts.map +1 -1
  161. package/lib/typescript/components/Screen.d.ts +2 -7
  162. package/lib/typescript/components/Screen.d.ts.map +1 -1
  163. package/lib/typescript/components/Screen.web.d.ts +1 -1
  164. package/lib/typescript/components/Screen.web.d.ts.map +1 -1
  165. package/lib/typescript/components/ScreenContainer.d.ts +1 -3
  166. package/lib/typescript/components/ScreenContainer.d.ts.map +1 -1
  167. package/lib/typescript/components/ScreenContainer.web.d.ts +2 -3
  168. package/lib/typescript/components/ScreenContainer.web.d.ts.map +1 -1
  169. package/lib/typescript/components/ScreenContentWrapper.d.ts +0 -1
  170. package/lib/typescript/components/ScreenContentWrapper.d.ts.map +1 -1
  171. package/lib/typescript/components/ScreenContentWrapper.web.d.ts +0 -1
  172. package/lib/typescript/components/ScreenContentWrapper.web.d.ts.map +1 -1
  173. package/lib/typescript/components/ScreenFooter.d.ts +0 -4
  174. package/lib/typescript/components/ScreenFooter.d.ts.map +1 -1
  175. package/lib/typescript/components/ScreenFooter.web.d.ts +0 -1
  176. package/lib/typescript/components/ScreenFooter.web.d.ts.map +1 -1
  177. package/lib/typescript/components/ScreenStack.d.ts +1 -1
  178. package/lib/typescript/components/ScreenStack.d.ts.map +1 -1
  179. package/lib/typescript/components/ScreenStack.web.d.ts +2 -1
  180. package/lib/typescript/components/ScreenStack.web.d.ts.map +1 -1
  181. package/lib/typescript/components/ScreenStackHeaderConfig.d.ts +3 -3
  182. package/lib/typescript/components/ScreenStackHeaderConfig.d.ts.map +1 -1
  183. package/lib/typescript/components/ScreenStackHeaderConfig.web.d.ts +1 -1
  184. package/lib/typescript/components/ScreenStackHeaderConfig.web.d.ts.map +1 -1
  185. package/lib/typescript/components/ScreenStackItem.d.ts +11 -0
  186. package/lib/typescript/components/ScreenStackItem.d.ts.map +1 -0
  187. package/lib/typescript/components/SearchBar.d.ts +1 -15
  188. package/lib/typescript/components/SearchBar.d.ts.map +1 -1
  189. package/lib/typescript/components/SearchBar.web.d.ts +2 -3
  190. package/lib/typescript/components/SearchBar.web.d.ts.map +1 -1
  191. package/lib/typescript/contexts.d.ts +5 -0
  192. package/lib/typescript/contexts.d.ts.map +1 -0
  193. package/lib/typescript/core.d.ts +0 -1
  194. package/lib/typescript/core.d.ts.map +1 -1
  195. package/lib/typescript/fabric/ModalScreenNativeComponent.d.ts +9 -3
  196. package/lib/typescript/fabric/ModalScreenNativeComponent.d.ts.map +1 -1
  197. package/lib/typescript/fabric/ScreenNativeComponent.d.ts +2 -2
  198. package/lib/typescript/fabric/ScreenNativeComponent.d.ts.map +1 -1
  199. package/lib/typescript/fabric/ScreenStackHeaderConfigNativeComponent.d.ts +2 -2
  200. package/lib/typescript/fabric/ScreenStackHeaderConfigNativeComponent.d.ts.map +1 -1
  201. package/lib/typescript/fabric/ScreenStackNativeComponent.d.ts +1 -1
  202. package/lib/typescript/fabric/ScreenStackNativeComponent.d.ts.map +1 -1
  203. package/lib/typescript/gesture-handler/ScreenGestureDetector.d.ts +2 -2
  204. package/lib/typescript/gesture-handler/ScreenGestureDetector.d.ts.map +1 -1
  205. package/lib/typescript/gesture-handler/fabricUtils.d.ts +7 -5
  206. package/lib/typescript/gesture-handler/fabricUtils.d.ts.map +1 -1
  207. package/lib/typescript/index.d.ts +10 -16
  208. package/lib/typescript/index.d.ts.map +1 -1
  209. package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts +3 -0
  210. package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts.map +1 -1
  211. package/lib/typescript/native-stack/types.d.ts +58 -12
  212. package/lib/typescript/native-stack/types.d.ts.map +1 -1
  213. package/lib/typescript/native-stack/utils/getDefaultHeaderHeight.d.ts +1 -1
  214. package/lib/typescript/native-stack/utils/getDefaultHeaderHeight.d.ts.map +1 -1
  215. package/lib/typescript/native-stack/views/HeaderConfig.d.ts.map +1 -1
  216. package/lib/typescript/native-stack/views/NativeStackView.d.ts.map +1 -1
  217. package/lib/typescript/reanimated/ReanimatedNativeStackScreen.d.ts +1 -1
  218. package/lib/typescript/reanimated/ReanimatedNativeStackScreen.d.ts.map +1 -1
  219. package/lib/typescript/reanimated/ReanimatedScreen.d.ts +1 -1
  220. package/lib/typescript/reanimated/ReanimatedScreen.d.ts.map +1 -1
  221. package/lib/typescript/reanimated/ReanimatedScreenProvider.d.ts.map +1 -1
  222. package/lib/typescript/types.d.ts +52 -16
  223. package/lib/typescript/types.d.ts.map +1 -1
  224. package/lib/typescript/utils.d.ts +26 -1
  225. package/lib/typescript/utils.d.ts.map +1 -1
  226. package/native-stack/README.md +5 -4
  227. package/native-stack/package.json +4 -4
  228. package/package.json +1 -1
  229. package/react-native.config.js +16 -28
  230. package/src/components/DebugContainer.tsx +47 -0
  231. package/src/components/DebugContainer.web.tsx +7 -0
  232. package/src/components/FullWindowOverlay.tsx +10 -2
  233. package/src/components/Screen.tsx +38 -24
  234. package/src/components/Screen.web.tsx +1 -1
  235. package/src/components/ScreenContainer.tsx +4 -11
  236. package/src/components/ScreenContainer.web.tsx +2 -3
  237. package/src/components/ScreenContentWrapper.tsx +2 -5
  238. package/src/components/ScreenContentWrapper.web.tsx +1 -2
  239. package/src/components/ScreenFooter.tsx +2 -8
  240. package/src/components/ScreenFooter.web.tsx +1 -2
  241. package/src/components/ScreenStack.tsx +99 -12
  242. package/src/components/ScreenStack.web.tsx +3 -1
  243. package/src/components/ScreenStackHeaderConfig.tsx +25 -14
  244. package/src/components/ScreenStackHeaderConfig.web.tsx +1 -1
  245. package/src/components/ScreenStackItem.tsx +162 -0
  246. package/src/components/SearchBar.tsx +4 -7
  247. package/src/components/SearchBar.web.tsx +2 -3
  248. package/src/contexts.tsx +9 -0
  249. package/src/core.ts +0 -3
  250. package/src/fabric/ModalScreenNativeComponent.ts +11 -3
  251. package/src/fabric/ScreenNativeComponent.ts +2 -2
  252. package/src/fabric/ScreenStackHeaderConfigNativeComponent.ts +2 -1
  253. package/src/fabric/ScreenStackNativeComponent.ts +1 -1
  254. package/src/gesture-handler/GestureDetectorProvider.tsx +2 -2
  255. package/src/gesture-handler/ScreenGestureDetector.tsx +4 -4
  256. package/src/gesture-handler/fabricUtils.ts +74 -27
  257. package/src/index.tsx +11 -37
  258. package/src/native-stack/navigators/createNativeStackNavigator.tsx +3 -0
  259. package/src/native-stack/types.tsx +60 -17
  260. package/src/native-stack/utils/getDefaultHeaderHeight.tsx +1 -1
  261. package/src/native-stack/views/FooterComponent.tsx +1 -1
  262. package/src/native-stack/views/HeaderConfig.tsx +7 -5
  263. package/src/native-stack/views/NativeStackView.tsx +48 -67
  264. package/src/reanimated/ReanimatedNativeStackScreen.tsx +2 -2
  265. package/src/reanimated/ReanimatedScreen.tsx +2 -1
  266. package/src/reanimated/ReanimatedScreenProvider.tsx +2 -1
  267. package/src/types.tsx +72 -15
  268. package/src/utils.ts +27 -5
@@ -1,4 +1,4 @@
1
- import { StackPresentationTypes } from 'react-native-screens';
1
+ import { StackPresentationTypes } from '../../types';
2
2
  type Layout = {
3
3
  width: number;
4
4
  height: number;
@@ -1 +1 @@
1
- {"version":3,"file":"getDefaultHeaderHeight.d.ts","sourceRoot":"","sources":["../../../../src/native-stack/utils/getDefaultHeaderHeight.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,KAAK,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAIhD,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,iBAAiB,EAAE,sBAAsB,EACzC,aAAa,UAAQ,GACpB,MAAM,CA6BR"}
1
+ {"version":3,"file":"getDefaultHeaderHeight.d.ts","sourceRoot":"","sources":["../../../../src/native-stack/utils/getDefaultHeaderHeight.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,KAAK,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAIhD,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,iBAAiB,EAAE,sBAAsB,EACzC,aAAa,UAAQ,GACpB,MAAM,CA6BR"}
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderConfig.d.ts","sourceRoot":"","sources":["../../../../src/native-stack/views/HeaderConfig.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAY,MAAM,0BAA0B,CAAC;AAe3D,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAKxD,KAAK,KAAK,GAAG,4BAA4B,GAAG;IAC1C,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACtB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,eAAe,EACf,sBAAsB,EACtB,SAAS,EACT,qBAAqB,EACrB,qBAAiC,EACjC,eAAe,EACf,oBAAyB,EACzB,sBAA6B,EAC7B,YAAY,EACZ,oBAAoB,EACpB,gBAAgB,EAChB,gBAAqB,EACrB,gBAAgB,EAChB,0BAA0B,EAC1B,qBAA0B,EAC1B,UAAU,EACV,WAAW,EACX,WAAW,EACX,WAAgB,EAChB,eAAe,EACf,WAAW,EACX,gBAAqB,EACrB,qBAA4B,EAC5B,iBAAiB,EACjB,KAAK,EACL,SAAS,EACT,KAAK,GACN,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAqIrB"}
1
+ {"version":3,"file":"HeaderConfig.d.ts","sourceRoot":"","sources":["../../../../src/native-stack/views/HeaderConfig.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAY,MAAM,0BAA0B,CAAC;AAiB3D,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAKxD,KAAK,KAAK,GAAG,4BAA4B,GAAG;IAC1C,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACtB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,eAAe,EACf,sBAAsB,EACtB,SAAS,EACT,qBAAqB,EACrB,qBAAiC,EACjC,eAAe,EACf,oBAAyB,EACzB,sBAA6B,EAC7B,YAAY,EACZ,oBAAoB,EACpB,gBAAgB,EAChB,gBAAqB,EACrB,gBAAgB,EAChB,0BAA0B,EAC1B,qBAA0B,EAC1B,UAAU,EACV,WAAW,EACX,WAAW,EACX,WAAgB,EAChB,eAAe,EACf,WAAW,EACX,gBAAqB,EACrB,qBAA4B,EAC5B,iBAAiB,EACjB,KAAK,EACL,SAAS,EACT,KAAK,GACN,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAqIrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"NativeStackView.d.ts","sourceRoot":"","sources":["../../../../src/native-stack/views/NativeStackView.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAc/B,OAAO,EACL,aAAa,EAEb,oBAAoB,EAKrB,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAI7B,MAAM,UAAU,CAAC;AAsalB,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,UAAU,EAAE,4BAA4B,CAAC;IACzC,WAAW,EAAE,wBAAwB,CAAC;CACvC,CAAC;AA8DF,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,KAAK,qBAMnD"}
1
+ {"version":3,"file":"NativeStackView.d.ts","sourceRoot":"","sources":["../../../../src/native-stack/views/NativeStackView.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgB/B,OAAO,EACL,aAAa,EAEb,oBAAoB,EAKrB,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAE7B,MAAM,UAAU,CAAC;AA2alB,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,UAAU,EAAE,4BAA4B,CAAC;IACzC,WAAW,EAAE,wBAAwB,CAAC;CACvC,CAAC;AAsCF,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,KAAK,qBAMnD"}
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { ScreenProps } from 'react-native-screens';
2
+ import { ScreenProps } from '../types';
3
3
  declare const ReanimatedNativeStackScreen: React.ForwardRefExoticComponent<Omit<ScreenProps, "ref"> & React.RefAttributes<React.ComponentClass<import("react-native-reanimated").AnimateProps<{}>, any>>>;
4
4
  export default ReanimatedNativeStackScreen;
5
5
  //# sourceMappingURL=ReanimatedNativeStackScreen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReanimatedNativeStackScreen.d.ts","sourceRoot":"","sources":["../../../src/reanimated/ReanimatedNativeStackScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAGL,WAAW,EAEZ,MAAM,sBAAsB,CAAC;AAsB9B,QAAA,MAAM,2BAA2B,gKAoF/B,CAAC;AAIH,eAAe,2BAA2B,CAAC"}
1
+ {"version":3,"file":"ReanimatedNativeStackScreen.d.ts","sourceRoot":"","sources":["../../../src/reanimated/ReanimatedNativeStackScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAEL,WAAW,EAEZ,MAAM,UAAU,CAAC;AAsBlB,QAAA,MAAM,2BAA2B,gKAoF/B,CAAC;AAIH,eAAe,2BAA2B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { ScreenProps } from 'react-native-screens';
2
+ import { ScreenProps } from '../types';
3
3
  declare const ReanimatedScreen: React.ForwardRefExoticComponent<Omit<ScreenProps, "ref"> & React.RefAttributes<React.ComponentClass<import("react-native-reanimated").AnimateProps<{}>, any>>>;
4
4
  export default ReanimatedScreen;
5
5
  //# sourceMappingURL=ReanimatedScreen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReanimatedScreen.d.ts","sourceRoot":"","sources":["../../../src/reanimated/ReanimatedScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAe,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAShE,QAAA,MAAM,gBAAgB,gKAUrB,CAAC;AAIF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"ReanimatedScreen.d.ts","sourceRoot":"","sources":["../../../src/reanimated/ReanimatedScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AASvC,QAAA,MAAM,gBAAgB,gKAUrB,CAAC;AAIF,eAAe,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ReanimatedScreenProvider.d.ts","sourceRoot":"","sources":["../../../src/reanimated/ReanimatedScreenProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAgCjD,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAC9C,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,qBAQlC"}
1
+ {"version":3,"file":"ReanimatedScreenProvider.d.ts","sourceRoot":"","sources":["../../../src/reanimated/ReanimatedScreenProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAiCjD,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAC9C,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,qBAQlC"}
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { Animated, NativeSyntheticEvent, ViewProps, View, TargetedEvent, TextInputFocusEventData, ColorValue, ViewStyle } from 'react-native';
2
+ import { Animated, NativeSyntheticEvent, ViewProps, View, TargetedEvent, TextInputFocusEventData, ColorValue } from 'react-native';
3
3
  import { NativeStackNavigatorProps } from './native-stack/types';
4
4
  export type SearchBarCommands = {
5
5
  focus: () => void;
@@ -12,7 +12,7 @@ export type SearchBarCommands = {
12
12
  export type BackButtonDisplayMode = 'default' | 'generic' | 'minimal';
13
13
  export type StackPresentationTypes = 'push' | 'modal' | 'transparentModal' | 'containedModal' | 'containedTransparentModal' | 'fullScreenModal' | 'formSheet';
14
14
  export type StackAnimationTypes = 'default' | 'fade' | 'fade_from_bottom' | 'flip' | 'none' | 'simple_push' | 'slide_from_bottom' | 'slide_from_right' | 'slide_from_left' | 'ios_from_right' | 'ios_from_left';
15
- export type BlurEffectTypes = 'extraLight' | 'light' | 'dark' | 'regular' | 'prominent' | 'systemUltraThinMaterial' | 'systemThinMaterial' | 'systemMaterial' | 'systemThickMaterial' | 'systemChromeMaterial' | 'systemUltraThinMaterialLight' | 'systemThinMaterialLight' | 'systemMaterialLight' | 'systemThickMaterialLight' | 'systemChromeMaterialLight' | 'systemUltraThinMaterialDark' | 'systemThinMaterialDark' | 'systemMaterialDark' | 'systemThickMaterialDark' | 'systemChromeMaterialDark';
15
+ export type BlurEffectTypes = 'none' | 'extraLight' | 'light' | 'dark' | 'regular' | 'prominent' | 'systemUltraThinMaterial' | 'systemThinMaterial' | 'systemMaterial' | 'systemThickMaterial' | 'systemChromeMaterial' | 'systemUltraThinMaterialLight' | 'systemThinMaterialLight' | 'systemMaterialLight' | 'systemThickMaterialLight' | 'systemChromeMaterialLight' | 'systemUltraThinMaterialDark' | 'systemThinMaterialDark' | 'systemMaterialDark' | 'systemThickMaterialDark' | 'systemChromeMaterialDark';
16
16
  export type ScreenReplaceTypes = 'push' | 'pop';
17
17
  export type SwipeDirectionTypes = 'vertical' | 'horizontal';
18
18
  export type ScreenOrientationTypes = 'default' | 'all' | 'portrait' | 'portrait_up' | 'portrait_down' | 'landscape' | 'landscape_left' | 'landscape_right';
@@ -68,9 +68,9 @@ export interface ScreenProps extends ViewProps {
68
68
  */
69
69
  fullScreenSwipeEnabled?: boolean;
70
70
  /**
71
- * Whether the full screen dismiss gesture has shadow under view during transition. The gesture uses custom transition and thus
72
- * doesn't have a shadow by default. When enabled, a custom shadow view is added during the transition which tries to mimic the
73
- * default iOS shadow. Defaults to `false`.
71
+ * Whether the full screen dismiss gesture has shadow under view during transition.
72
+ * When enabled, a custom shadow view is added during the transition which tries to mimic the
73
+ * default iOS shadow. Defaults to `true`.
74
74
  *
75
75
  * This does not affect the behavior of transitions that don't use gestures, enabled by `fullScreenGestureEnabled` prop.
76
76
  *
@@ -212,13 +212,6 @@ export interface ScreenProps extends ViewProps {
212
212
  * - "landscape_right" – landscape-right orientation is permitted
213
213
  */
214
214
  screenOrientation?: ScreenOrientationTypes;
215
- /**
216
- * Allows to set background color for the `Screen` component itself.
217
- * This might come handy when using `formSheet` stack presentation, when the content view is clipped.
218
- *
219
- * We plan to get rid of this prop once the workaround is no longer needed.
220
- */
221
- unstable_screenStyle?: Pick<ViewStyle, 'backgroundColor'>;
222
215
  /**
223
216
  * Describes heights where a sheet can rest.
224
217
  * Works only when `presentation` is set to `formSheet`.
@@ -325,7 +318,7 @@ export interface ScreenProps extends ViewProps {
325
318
  * - "fade" – fades screen in or out
326
319
  * - "fade_from_bottom" – performs a fade from bottom animation
327
320
  * - "flip" – flips the screen, requires stackPresentation: "modal" (iOS only)
328
- * - "simple_push" – performs a default animation, but without shadow and native header transition (iOS only)
321
+ * - "simple_push" – performs a default animation, but without native header transition (iOS only)
329
322
  * - `slide_from_bottom` – performs a slide from bottom animation
330
323
  * - "slide_from_right" - slide in the new screen from right to left (Android only, resolves to default transition on iOS)
331
324
  * - "slide_from_left" - slide in the new screen from left to right
@@ -381,7 +374,7 @@ export interface ScreenProps extends ViewProps {
381
374
  */
382
375
  swipeDirection?: SwipeDirectionTypes;
383
376
  /**
384
- * Changes the duration (in milliseconds) of `slide_from_bottom`, `fade_from_bottom`, `fade` and `simple_push` transitions on iOS. Defaults to `350`.
377
+ * Changes the duration (in milliseconds) of `slide_from_bottom`, `fade_from_bottom`, `fade` and `simple_push` transitions on iOS. Defaults to `500`.
385
378
  * The duration of `default` and `flip` transitions isn't customizable.
386
379
  *
387
380
  * @platform ios
@@ -415,13 +408,12 @@ export interface ScreenContainerProps extends ViewProps {
415
408
  export interface GestureDetectorBridge {
416
409
  stackUseEffectCallback: (stackRef: React.MutableRefObject<React.Ref<NativeStackNavigatorProps>>) => void;
417
410
  }
418
- export interface ScreenStackProps extends ViewProps {
411
+ export interface ScreenStackProps extends ViewProps, GestureProps {
419
412
  children?: React.ReactNode;
420
413
  /**
421
414
  * A callback that gets called when the current screen finishes its transition.
422
415
  */
423
416
  onFinishTransitioning?: (e: NativeSyntheticEvent<TargetedEvent>) => void;
424
- gestureDetectorBridge?: React.MutableRefObject<GestureDetectorBridge>;
425
417
  ref?: React.MutableRefObject<React.Ref<View>>;
426
418
  }
427
419
  export interface ScreenStackHeaderConfigProps extends ViewProps {
@@ -719,4 +711,48 @@ export interface SearchBarProps {
719
711
  */
720
712
  shouldShowHintSearchIcon?: boolean;
721
713
  }
714
+ /**
715
+ * Custom Screen Transition
716
+ */
717
+ /**
718
+ * copy from GestureHandler to avoid strong dependency
719
+ */
720
+ export type PanGestureHandlerEventPayload = {
721
+ x: number;
722
+ y: number;
723
+ absoluteX: number;
724
+ absoluteY: number;
725
+ translationX: number;
726
+ translationY: number;
727
+ velocityX: number;
728
+ velocityY: number;
729
+ };
730
+ /**
731
+ * copy from Reanimated to avoid strong dependency
732
+ */
733
+ export type GoBackGesture = 'swipeRight' | 'swipeLeft' | 'swipeUp' | 'swipeDown' | 'verticalSwipe' | 'horizontalSwipe' | 'twoDimensionalSwipe';
734
+ export interface MeasuredDimensions {
735
+ x: number;
736
+ y: number;
737
+ width: number;
738
+ height: number;
739
+ pageX: number;
740
+ pageY: number;
741
+ }
742
+ export type AnimatedScreenTransition = {
743
+ topScreenStyle: (event: PanGestureHandlerEventPayload, screenSize: MeasuredDimensions) => Record<string, unknown>;
744
+ belowTopScreenStyle: (event: PanGestureHandlerEventPayload, screenSize: MeasuredDimensions) => Record<string, unknown>;
745
+ };
746
+ export type ScreensRefsHolder = Record<string, React.RefObject<View>>;
747
+ export interface GestureProps {
748
+ screensRefs?: React.MutableRefObject<ScreensRefsHolder>;
749
+ currentScreenId?: string;
750
+ goBackGesture?: GoBackGesture;
751
+ transitionAnimation?: AnimatedScreenTransition;
752
+ screenEdgeGesture?: boolean;
753
+ }
754
+ export interface GestureProviderProps extends GestureProps {
755
+ children?: React.ReactNode;
756
+ gestureDetectorBridge: React.MutableRefObject<GestureDetectorBridge>;
757
+ }
722
758
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,29 @@
1
1
  export declare const isSearchBarAvailableForCurrentPlatform: boolean;
2
2
  export declare function executeNativeBackPress(): boolean;
3
- export declare const isNewBackTitleImplementation = true;
3
+ /**
4
+ * Exposes information useful for downstream navigation library implementers,
5
+ * so they can keep reasonable backward compatibility, if desired.
6
+ *
7
+ * We don't mean for this object to only grow in number of fields, however at the same time
8
+ * we won't be very hasty to reduce it. Expect gradual changes.
9
+ */
10
+ export declare const compatibilityFlags: {
11
+ /**
12
+ * Because of a bug introduced in https://github.com/software-mansion/react-native-screens/pull/1646
13
+ * react-native-screens v3.21 changed how header's backTitle handles whitespace strings in https://github.com/software-mansion/react-native-screens/pull/1726
14
+ * To allow for backwards compatibility in @react-navigation/native-stack we need a way to check if this version or newer is used.
15
+ * See https://github.com/react-navigation/react-navigation/pull/11423 for more context.
16
+ */
17
+ isNewBackTitleImplementation: boolean;
18
+ /**
19
+ * With version 4.0.0 the header implementation has been changed. To allow for backward compat
20
+ * with native-stack@v6 we want to expose a way to check whether the new implementation
21
+ * is in use or not.
22
+ *
23
+ * See:
24
+ * * https://github.com/software-mansion/react-native-screens/pull/2325
25
+ * * https://github.com/react-navigation/react-navigation/pull/12125
26
+ */
27
+ usesHeaderFlexboxImplementation: boolean;
28
+ };
4
29
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,sCAAsC,SAG5B,CAAC;AAExB,wBAAgB,sBAAsB,YAIrC;AAMD,eAAO,MAAM,4BAA4B,OAAO,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,sCAAsC,SAG5B,CAAC;AAExB,wBAAgB,sBAAsB,YAIrC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB;IAC7B;;;;;OAKG;;IAGH;;;;;;;;OAQG;;CAEJ,CAAC"}
@@ -1,6 +1,7 @@
1
1
  # Native Stack Navigator
2
2
 
3
- > **_NOTE:_** This README is dedicated for using `native-stack` with React Navigation **v5**. For using `native-stack` in React Navigation **v6** please refer to the [Native Stack Navigator part of React Navigation documentation](https://reactnavigation.org/docs/native-stack-navigator).
3
+ > [!CAUTION]
4
+ > NativeStack has been moved from react-native-screens/native-stack to @react-navigation/native since version v6. With react-native-screens v4 native stack v5 (react-native-screens/native-stack) is deprecated and marked for removal in the upcoming minor release, react-native-screens v4 will support only @react-navigation/native-stack v7.
4
5
 
5
6
  Provides a way for your app to transition between screens where each new screen is placed on top of a stack.
6
7
 
@@ -95,7 +96,7 @@ Boolean indicating whether the swipe gesture should work on whole screen. Swipin
95
96
 
96
97
  Boolean indicating whether the full screen dismiss gesture has shadow under view during transition. The gesture uses custom transition and thus
97
98
  doesn't have a shadow by default. When enabled, a custom shadow view is added during the transition which tries to mimic the
98
- default iOS shadow. Defaults to `false`.
99
+ default iOS shadow. Defaults to `true`.
99
100
 
100
101
  #### `gestureEnabled` (iOS only)
101
102
 
@@ -324,7 +325,7 @@ How the given screen should appear/disappear when pushed or popped at the top of
324
325
  - `fade` - fades screen in or out.
325
326
  - `fade_from_bottom` – performs a fade from bottom animation
326
327
  - `flip` – flips the screen, requires stackPresentation: `modal` (iOS only)
327
- - `simple_push` – performs a default animation, but without shadow and native header transition (iOS only)
328
+ - `simple_push` – performs a default animation, but without native header transition (iOS only)
328
329
  - `slide_from_bottom` – performs a slide from bottom animation
329
330
  - `slide_from_right` - slide in the new screen from right to left (Android only, resolves to default transition on iOS)
330
331
  - `slide_from_left` - slide in the new screen from left to right
@@ -365,7 +366,7 @@ A string that can be used as a fallback for `headerTitle`.
365
366
 
366
367
  #### `transitionDuration` (iOS only)
367
368
 
368
- Changes the duration (in milliseconds) of `slide_from_bottom`, `fade_from_bottom`, `fade` and `simple_push` transitions on iOS. Defaults to `350`.
369
+ Changes the duration (in milliseconds) of `slide_from_bottom`, `fade_from_bottom`, `fade` and `simple_push` transitions on iOS. Defaults to `500`.
369
370
 
370
371
  The duration of `default` and `flip` transitions isn't customizable.
371
372
 
@@ -1,6 +1,6 @@
1
1
  {
2
- "main": "../lib/commonjs/native-stack/index",
3
- "module": "../lib/module/native-stack/index",
4
- "react-native": "../src/native-stack/index",
5
- "types": "../lib/typescript/native-stack/index.d.ts"
2
+ "main": "../lib/commonjs/native-stack/index",
3
+ "module": "../lib/module/native-stack/index",
4
+ "react-native": "../src/native-stack/index",
5
+ "types": "../lib/typescript/native-stack/index.d.ts"
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-screens",
3
- "version": "4.0.0-beta.9",
3
+ "version": "4.1.0",
4
4
  "description": "Native navigation primitives for your React Native app.",
5
5
  "scripts": {
6
6
  "submodules": "git submodule update --init --recursive && (cd react-navigation && yarn)",
@@ -1,34 +1,22 @@
1
- let supportsCodegenConfig = false;
2
- try {
3
- const rnCliAndroidVersion =
4
- require('@react-native-community/cli-platform-android/package.json').version;
5
- const [major] = rnCliAndroidVersion.split('.');
6
- supportsCodegenConfig = major >= 9;
7
- } catch (e) {
8
- // ignore
9
- }
10
-
11
1
  module.exports = {
12
2
  dependency: {
13
3
  platforms: {
14
- android: supportsCodegenConfig
15
- ? {
16
- componentDescriptors: [
17
- "RNSFullWindowOverlayComponentDescriptor",
18
- "RNSScreenContainerComponentDescriptor",
19
- "RNSScreenNavigationContainerComponentDescriptor",
20
- "RNSScreenStackHeaderConfigComponentDescriptor",
21
- "RNSScreenStackHeaderSubviewComponentDescriptor",
22
- "RNSScreenStackComponentDescriptor",
23
- "RNSSearchBarComponentDescriptor",
24
- 'RNSScreenComponentDescriptor',
25
- "RNSScreenFooterComponentDescriptor",
26
- "RNSScreenContentWrapperComponentDescriptor",
27
- 'RNSModalScreenComponentDescriptor'
28
- ],
29
- cmakeListsPath: "../android/src/main/jni/CMakeLists.txt"
30
- }
31
- : {},
4
+ android: {
5
+ componentDescriptors: [
6
+ "RNSFullWindowOverlayComponentDescriptor",
7
+ "RNSScreenContainerComponentDescriptor",
8
+ "RNSScreenNavigationContainerComponentDescriptor",
9
+ "RNSScreenStackHeaderConfigComponentDescriptor",
10
+ "RNSScreenStackHeaderSubviewComponentDescriptor",
11
+ "RNSScreenStackComponentDescriptor",
12
+ "RNSSearchBarComponentDescriptor",
13
+ 'RNSScreenComponentDescriptor',
14
+ "RNSScreenFooterComponentDescriptor",
15
+ "RNSScreenContentWrapperComponentDescriptor",
16
+ 'RNSModalScreenComponentDescriptor'
17
+ ],
18
+ cmakeListsPath: "../android/src/main/jni/CMakeLists.txt"
19
+ },
32
20
  },
33
21
  },
34
22
  };
@@ -0,0 +1,47 @@
1
+ import * as React from 'react';
2
+ import { Platform, type ViewProps } from 'react-native';
3
+ // @ts-expect-error importing private component
4
+ // eslint-disable-next-line import/namespace, import/default, import/no-named-as-default, import/no-named-as-default-member
5
+ import AppContainer from 'react-native/Libraries/ReactNative/AppContainer';
6
+ import ScreenContentWrapper from './ScreenContentWrapper';
7
+ import { StackPresentationTypes } from '../types';
8
+
9
+ type ContainerProps = ViewProps & {
10
+ stackPresentation: StackPresentationTypes;
11
+ children: React.ReactNode;
12
+ };
13
+
14
+ /**
15
+ * This view must *not* be flattened.
16
+ * See https://github.com/software-mansion/react-native-screens/pull/1825
17
+ * for detailed explanation.
18
+ */
19
+ let DebugContainer: React.ComponentType<ContainerProps> = props => {
20
+ return <ScreenContentWrapper {...props} />;
21
+ };
22
+
23
+ if (process.env.NODE_ENV !== 'production') {
24
+ // eslint-disable-next-line react/display-name
25
+ DebugContainer = (props: ContainerProps) => {
26
+ const { stackPresentation, ...rest } = props;
27
+
28
+ if (
29
+ Platform.OS === 'ios' &&
30
+ stackPresentation !== 'push' &&
31
+ stackPresentation !== 'formSheet'
32
+ ) {
33
+ // This is necessary for LogBox
34
+ return (
35
+ <AppContainer>
36
+ <ScreenContentWrapper {...rest} />
37
+ </AppContainer>
38
+ );
39
+ }
40
+
41
+ return <ScreenContentWrapper {...rest} />;
42
+ };
43
+
44
+ DebugContainer.displayName = 'DebugContainer';
45
+ }
46
+
47
+ export default DebugContainer;
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ import { type ViewProps } from 'react-native';
3
+ import ScreenContentWrapper from './ScreenContentWrapper';
4
+
5
+ export default function DebugContainer(props: ViewProps) {
6
+ return <ScreenContentWrapper {...props} />;
7
+ }
@@ -1,5 +1,12 @@
1
1
  import React, { PropsWithChildren, ReactNode } from 'react';
2
- import { Platform, StyleProp, View, ViewStyle } from 'react-native';
2
+ import {
3
+ Platform,
4
+ StyleProp,
5
+ StyleSheet,
6
+ View,
7
+ ViewStyle,
8
+ useWindowDimensions,
9
+ } from 'react-native';
3
10
 
4
11
  // Native components
5
12
  import FullWindowOverlayNativeComponent from '../fabric/FullWindowOverlayNativeComponent';
@@ -10,13 +17,14 @@ const NativeFullWindowOverlay: React.ComponentType<
10
17
  > = FullWindowOverlayNativeComponent as any;
11
18
 
12
19
  function FullWindowOverlay(props: { children: ReactNode }) {
20
+ const { width, height } = useWindowDimensions();
13
21
  if (Platform.OS !== 'ios') {
14
22
  console.warn('Using FullWindowOverlay is only valid on iOS devices.');
15
23
  return <View {...props} />;
16
24
  }
17
25
  return (
18
26
  <NativeFullWindowOverlay
19
- style={{ position: 'absolute', width: '100%', height: '100%' }}>
27
+ style={[StyleSheet.absoluteFill, { width, height }]}>
20
28
  {props.children}
21
29
  </NativeFullWindowOverlay>
22
30
  );
@@ -5,7 +5,7 @@ import { Animated, View, Platform } from 'react-native';
5
5
 
6
6
  import TransitionProgressContext from '../TransitionProgressContext';
7
7
  import DelayedFreeze from './helpers/DelayedFreeze';
8
- import { ScreenProps } from 'react-native-screens';
8
+ import { ScreenProps } from '../types';
9
9
 
10
10
  import {
11
11
  freezeEnabled,
@@ -14,23 +14,20 @@ import {
14
14
  } from '../core';
15
15
 
16
16
  // Native components
17
- import ScreenNativeComponent from '../fabric/ScreenNativeComponent';
18
- import ModalScreenNativeComponent from '../fabric/ModalScreenNativeComponent';
17
+ import ScreenNativeComponent, {
18
+ NativeProps as ScreenNativeComponentProps,
19
+ } from '../fabric/ScreenNativeComponent';
20
+ import ModalScreenNativeComponent, {
21
+ NativeProps as ModalScreenNativeComponentProps,
22
+ } from '../fabric/ModalScreenNativeComponent';
19
23
  import { usePrevious } from './helpers/usePrevious';
20
24
 
21
- type NativeScreenProps = Omit<
22
- ScreenProps,
23
- 'sheetInitialDetentIndex' | 'sheetLargestUndimmedDetentIndex'
24
- > & {
25
- sheetInitialDetent: number;
26
- sheetLargestUndimmedDetent: number;
27
- };
28
-
29
- export const NativeScreen: React.ComponentType<NativeScreenProps> =
30
- ScreenNativeComponent as React.ComponentType<NativeScreenProps>;
31
- const AnimatedNativeScreen = Animated.createAnimatedComponent(NativeScreen);
25
+ type NativeProps = ScreenNativeComponentProps | ModalScreenNativeComponentProps;
26
+ const AnimatedNativeScreen = Animated.createAnimatedComponent(
27
+ ScreenNativeComponent,
28
+ );
32
29
  const AnimatedNativeModalScreen = Animated.createAnimatedComponent(
33
- ModalScreenNativeComponent as React.ComponentType<NativeScreenProps>,
30
+ ModalScreenNativeComponent,
34
31
  );
35
32
 
36
33
  // Incomplete type, all accessible properties available at:
@@ -196,6 +193,11 @@ export const InnerScreen = React.forwardRef<View, ScreenProps>(
196
193
  sheetInitialDetentIndex = 0,
197
194
  // Other
198
195
  stackPresentation,
196
+ // Events for override
197
+ onAppear,
198
+ onDisappear,
199
+ onWillAppear,
200
+ onWillDisappear,
199
201
  } = rest;
200
202
 
201
203
  if (enabled && isNativePlatformSupported) {
@@ -273,6 +275,22 @@ export const InnerScreen = React.forwardRef<View, ScreenProps>(
273
275
  <DelayedFreeze freeze={freezeOnBlur && activityState === 0}>
274
276
  <AnimatedScreen
275
277
  {...props}
278
+ /**
279
+ * This messy override is to conform NativeProps used by codegen and
280
+ * our Public API. To see reasoning go to this PR:
281
+ * https://github.com/software-mansion/react-native-screens/pull/2423#discussion_r1810616995
282
+ */
283
+ onAppear={onAppear as NativeProps['onAppear']}
284
+ onDisappear={onDisappear as NativeProps['onDisappear']}
285
+ onWillAppear={onWillAppear as NativeProps['onWillAppear']}
286
+ onWillDisappear={onWillDisappear as NativeProps['onWillDisappear']}
287
+ onGestureCancel={
288
+ (onGestureCancel as NativeProps['onGestureCancel']) ??
289
+ (() => {
290
+ // for internal use
291
+ })
292
+ }
293
+ //
276
294
  // Hierarchy of screens is handled on the native side and setting zIndex value causes this issue:
277
295
  // https://github.com/software-mansion/react-native-screens/issues/2345
278
296
  // With below change of zIndex, we force RN diffing mechanism to NOT include detaching and attaching mutation in one transaction.
@@ -310,12 +328,6 @@ export const InnerScreen = React.forwardRef<View, ScreenProps>(
310
328
  ],
311
329
  { useNativeDriver: true },
312
330
  )
313
- }
314
- onGestureCancel={
315
- onGestureCancel ??
316
- (() => {
317
- // for internal use
318
- })
319
331
  }>
320
332
  {!isNativeStack ? ( // see comment of this prop in types.tsx for information why it is needed
321
333
  children
@@ -361,10 +373,12 @@ export const InnerScreen = React.forwardRef<View, ScreenProps>(
361
373
  // e.g. to use `useReanimatedTransitionProgress` (see `reanimated` folder in repo)
362
374
  export const ScreenContext = React.createContext(InnerScreen);
363
375
 
364
- const Screen: React.FC<ScreenProps> = props => {
376
+ const Screen = React.forwardRef<View, ScreenProps>((props, ref) => {
365
377
  const ScreenWrapper = React.useContext(ScreenContext) || InnerScreen;
366
378
 
367
- return <ScreenWrapper {...props} />;
368
- };
379
+ return <ScreenWrapper {...props} ref={ref} />;
380
+ });
381
+
382
+ Screen.displayName = 'Screen';
369
383
 
370
384
  export default Screen;
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
 
3
- import { ScreenProps } from 'react-native-screens';
3
+ import { ScreenProps } from '../types';
4
4
  import { Animated, View } from 'react-native';
5
5
  import React from 'react';
6
6
 
@@ -2,20 +2,13 @@
2
2
 
3
3
  import { Platform, View } from 'react-native';
4
4
  import React from 'react';
5
- import { ScreenContainerProps } from 'react-native-screens';
5
+ import { ScreenContainerProps } from '../types';
6
6
  import { isNativePlatformSupported, screensEnabled } from '../core';
7
7
 
8
8
  // Native components
9
9
  import ScreenContainerNativeComponent from '../fabric/ScreenContainerNativeComponent';
10
10
  import ScreenNavigationContainerNativeComponent from '../fabric/ScreenNavigationContainerNativeComponent';
11
11
 
12
- export const NativeScreenContainer: React.ComponentType<ScreenContainerProps> =
13
- Platform.OS !== 'web' ? (ScreenContainerNativeComponent as any) : View;
14
- export const NativeScreenNavigationContainer: React.ComponentType<ScreenContainerProps> =
15
- Platform.OS !== 'web'
16
- ? (ScreenNavigationContainerNativeComponent as any)
17
- : View;
18
-
19
12
  function ScreenContainer(props: ScreenContainerProps) {
20
13
  const { enabled = screensEnabled(), hasTwoStates, ...rest } = props;
21
14
 
@@ -23,11 +16,11 @@ function ScreenContainer(props: ScreenContainerProps) {
23
16
  if (hasTwoStates) {
24
17
  const ScreenNavigationContainer =
25
18
  Platform.OS === 'ios'
26
- ? NativeScreenNavigationContainer
27
- : NativeScreenContainer;
19
+ ? ScreenNavigationContainerNativeComponent
20
+ : ScreenContainerNativeComponent;
28
21
  return <ScreenNavigationContainer {...rest} />;
29
22
  }
30
- return <NativeScreenContainer {...rest} />;
23
+ return <ScreenContainerNativeComponent {...rest} />;
31
24
  }
32
25
  return <View {...rest} />;
33
26
  }
@@ -1,6 +1,5 @@
1
1
  import { View } from 'react-native';
2
2
 
3
- export const NativeScreenContainer = View;
4
- export const NativeScreenNavigationContainer = View;
3
+ const ScreenContainer = View;
5
4
 
6
- export default View;
5
+ export default ScreenContainer;