@amazon-devices/react-native-screens 2.0.9000000000 → 3.0.9000000000-rn-83

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 (685) hide show
  1. package/README.md +57 -18
  2. package/RNScreens.podspec +12 -30
  3. package/SystemBundles/d557bc3ccca761f329c4a0be9f40c5edeceaeb72783a7971e6e3dcf80a6bedb0.bundle +45130 -0
  4. package/SystemBundles/d557bc3ccca761f329c4a0be9f40c5edeceaeb72783a7971e6e3dcf80a6bedb0.map +13686 -0
  5. package/SystemModules/amzn__react-native-screens-3.modules.txt +158 -0
  6. package/SystemModules/amzn__react-native-screens-3.private.modules.txt +376 -0
  7. package/SystemModules/keplerscript-system-bundle-config.json +4 -4
  8. package/android/CMakeLists.txt +80 -0
  9. package/android/build.gradle +96 -17
  10. package/android/src/fabric/java/com/swmansion/rnscreens/FabricEnabledHeaderConfigViewGroup.kt +61 -0
  11. package/android/src/fabric/java/com/swmansion/rnscreens/FabricEnabledViewGroup.kt +38 -25
  12. package/android/src/fabric/java/com/swmansion/rnscreens/NativeProxy.kt +53 -0
  13. package/android/src/main/cpp/NativeProxy.cpp +51 -0
  14. package/android/src/main/cpp/NativeProxy.h +35 -0
  15. package/android/src/main/cpp/OnLoad.cpp +8 -0
  16. package/android/src/main/cpp/jni-adapter.cpp +106 -0
  17. package/android/src/main/java/com/swmansion/rnscreens/CustomSearchView.kt +20 -10
  18. package/android/src/main/java/com/swmansion/rnscreens/CustomToolbar.kt +69 -1
  19. package/android/src/main/java/com/swmansion/rnscreens/FragmentBackPressOverrider.kt +8 -8
  20. package/android/src/main/java/com/swmansion/rnscreens/InsetsObserverProxy.kt +104 -0
  21. package/android/src/main/java/com/swmansion/rnscreens/ModalScreenViewManager.kt +12 -0
  22. package/android/src/main/java/com/swmansion/rnscreens/NativeDismissalObserver.kt +12 -0
  23. package/android/src/main/java/com/swmansion/rnscreens/RNScreensPackage.kt +65 -7
  24. package/android/src/main/java/com/swmansion/rnscreens/Screen.kt +327 -84
  25. package/android/src/main/java/com/swmansion/rnscreens/ScreenContainer.kt +122 -72
  26. package/android/src/main/java/com/swmansion/rnscreens/ScreenContainerViewManager.kt +27 -4
  27. package/android/src/main/java/com/swmansion/rnscreens/ScreenContentWrapper.kt +38 -0
  28. package/android/src/main/java/com/swmansion/rnscreens/ScreenContentWrapperManager.kt +25 -0
  29. package/android/src/main/java/com/swmansion/rnscreens/ScreenEventDispatcher.kt +10 -2
  30. package/android/src/main/java/com/swmansion/rnscreens/ScreenFooter.kt +299 -0
  31. package/android/src/main/java/com/swmansion/rnscreens/ScreenFooterManager.kt +25 -0
  32. package/android/src/main/java/com/swmansion/rnscreens/ScreenFragment.kt +91 -67
  33. package/android/src/main/java/com/swmansion/rnscreens/ScreenFragmentWrapper.kt +12 -1
  34. package/android/src/main/java/com/swmansion/rnscreens/ScreenModalFragment.kt +281 -0
  35. package/android/src/main/java/com/swmansion/rnscreens/ScreenStack.kt +184 -81
  36. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackFragment.kt +467 -80
  37. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackFragmentWrapper.kt +8 -1
  38. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.kt +156 -124
  39. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfigShadowNode.kt +25 -0
  40. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfigViewManager.kt +159 -39
  41. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderSubview.kt +24 -9
  42. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderSubviewManager.kt +19 -13
  43. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackViewManager.kt +31 -28
  44. package/android/src/main/java/com/swmansion/rnscreens/ScreenViewManager.kt +276 -71
  45. package/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt +124 -64
  46. package/android/src/main/java/com/swmansion/rnscreens/ScreensModule.kt +127 -0
  47. package/android/src/main/java/com/swmansion/rnscreens/ScreensShadowNode.kt +4 -2
  48. package/android/src/main/java/com/swmansion/rnscreens/SearchBarManager.kt +160 -53
  49. package/android/src/main/java/com/swmansion/rnscreens/SearchBarView.kt +57 -32
  50. package/android/src/main/java/com/swmansion/rnscreens/SearchViewFormatter.kt +15 -10
  51. package/android/src/main/java/com/swmansion/rnscreens/bottomsheet/BottomSheetBehaviorExt.kt +42 -0
  52. package/android/src/main/java/com/swmansion/rnscreens/bottomsheet/BottomSheetDialogRootView.kt +104 -0
  53. package/android/src/main/java/com/swmansion/rnscreens/bottomsheet/BottomSheetDialogScreen.kt +26 -0
  54. package/android/src/main/java/com/swmansion/rnscreens/bottomsheet/DimmingFragment.kt +493 -0
  55. package/android/src/main/java/com/swmansion/rnscreens/bottomsheet/DimmingView.kt +66 -0
  56. package/android/src/main/java/com/swmansion/rnscreens/bottomsheet/GestureTransparentViewGroup.kt +24 -0
  57. package/android/src/main/java/com/swmansion/rnscreens/bottomsheet/SheetUtils.kt +135 -0
  58. package/android/src/main/java/com/swmansion/rnscreens/events/HeaderAttachedEvent.kt +7 -8
  59. package/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt +8 -9
  60. package/android/src/main/java/com/swmansion/rnscreens/events/HeaderDetachedEvent.kt +7 -8
  61. package/android/src/main/java/com/swmansion/rnscreens/events/HeaderHeightChangeEvent.kt +9 -10
  62. package/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt +4 -1
  63. package/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt +4 -1
  64. package/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt +8 -4
  65. package/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt +13 -16
  66. package/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt +4 -1
  67. package/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt +4 -1
  68. package/android/src/main/java/com/swmansion/rnscreens/events/SearchBarBlurEvent.kt +8 -9
  69. package/android/src/main/java/com/swmansion/rnscreens/events/SearchBarChangeTextEvent.kt +8 -11
  70. package/android/src/main/java/com/swmansion/rnscreens/events/SearchBarCloseEvent.kt +7 -8
  71. package/android/src/main/java/com/swmansion/rnscreens/events/SearchBarFocusEvent.kt +8 -9
  72. package/android/src/main/java/com/swmansion/rnscreens/events/SearchBarOpenEvent.kt +7 -8
  73. package/android/src/main/java/com/swmansion/rnscreens/events/SearchBarSearchButtonPressEvent.kt +12 -11
  74. package/android/src/main/java/com/swmansion/rnscreens/events/SheetDetentChangedEvent.kt +27 -0
  75. package/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt +4 -1
  76. package/android/src/main/java/com/swmansion/rnscreens/ext/NumericExt.kt +12 -0
  77. package/android/src/main/java/com/swmansion/rnscreens/ext/ViewExt.kt +32 -0
  78. package/android/src/main/java/com/swmansion/rnscreens/utils/DeviceUtils.kt +1 -5
  79. package/android/src/main/java/com/swmansion/rnscreens/utils/PaddingBundle.kt +8 -0
  80. package/android/src/main/java/com/swmansion/rnscreens/utils/ScreenDummyLayoutHelper.kt +282 -0
  81. package/android/src/main/jni/CMakeLists.txt +35 -23
  82. package/android/src/main/jni/rnscreens.h +3 -0
  83. package/android/src/main/res/base/anim/rns_ios_from_left_background_close.xml +5 -0
  84. package/android/src/main/res/base/anim/rns_ios_from_left_background_open.xml +5 -0
  85. package/android/src/main/res/base/anim/rns_ios_from_left_foreground_close.xml +6 -0
  86. package/android/src/main/res/base/anim/rns_ios_from_left_foreground_open.xml +6 -0
  87. package/android/src/main/res/base/anim/rns_ios_from_right_background_close.xml +5 -0
  88. package/android/src/main/res/base/anim/rns_ios_from_right_background_open.xml +5 -0
  89. package/android/src/main/res/base/anim/rns_ios_from_right_foreground_close.xml +6 -0
  90. package/android/src/main/res/base/anim/rns_ios_from_right_foreground_open.xml +6 -0
  91. package/android/src/main/res/base/drawable/rns_rounder_top_corners_shape.xml +8 -0
  92. package/android/src/main/res/v33/anim-v33/rns_default_enter_in.xml +0 -1
  93. package/android/src/main/res/v33/anim-v33/rns_default_enter_out.xml +2 -2
  94. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSScreenContainerManagerDelegate.java +25 -0
  95. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSScreenContainerManagerInterface.java +16 -0
  96. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSScreenContentWrapperManagerDelegate.java +25 -0
  97. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSScreenContentWrapperManagerInterface.java +16 -0
  98. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSScreenFooterManagerDelegate.java +25 -0
  99. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSScreenFooterManagerInterface.java +16 -0
  100. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSScreenManagerDelegate.java +16 -3
  101. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSScreenManagerInterface.java +7 -2
  102. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSScreenStackHeaderConfigManagerDelegate.java +6 -0
  103. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSScreenStackHeaderConfigManagerInterface.java +2 -0
  104. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSSearchBarManagerDelegate.java +99 -0
  105. package/android/src/paper/java/com/facebook/react/viewmanagers/RNSSearchBarManagerInterface.java +37 -0
  106. package/android/src/paper/java/com/swmansion/rnscreens/FabricEnabledHeaderConfigViewGroup.kt +39 -0
  107. package/android/src/paper/java/com/swmansion/rnscreens/FabricEnabledViewGroup.kt +11 -2
  108. package/android/src/paper/java/com/swmansion/rnscreens/NativeProxy.kt +19 -0
  109. package/android/src/paper/java/com/swmansion/rnscreens/NativeScreensModuleSpec.java +36 -0
  110. package/common/cpp/react/renderer/components/rnscreens/FrameCorrectionModes.h +51 -0
  111. package/common/cpp/react/renderer/components/rnscreens/RNSModalScreenComponentDescriptor.h +40 -0
  112. package/common/cpp/react/renderer/components/rnscreens/RNSModalScreenShadowNode.cpp +16 -0
  113. package/common/cpp/react/renderer/components/rnscreens/RNSModalScreenShadowNode.h +32 -0
  114. package/common/cpp/react/renderer/components/rnscreens/RNSScreenComponentDescriptor.h +55 -12
  115. package/common/cpp/react/renderer/components/rnscreens/RNSScreenShadowNode.cpp +157 -0
  116. package/common/cpp/react/renderer/components/rnscreens/RNSScreenShadowNode.h +31 -11
  117. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderConfigComponentDescriptor.h +49 -0
  118. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderConfigShadowNode.cpp +22 -0
  119. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderConfigShadowNode.h +40 -0
  120. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderConfigState.cpp +34 -0
  121. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderConfigState.h +57 -0
  122. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderSubviewComponentDescriptor.h +27 -0
  123. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderSubviewShadowNode.cpp +8 -0
  124. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderSubviewShadowNode.h +31 -0
  125. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderSubviewState.cpp +15 -0
  126. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderSubviewState.h +39 -0
  127. package/common/cpp/react/renderer/components/rnscreens/RNSScreenState.cpp +23 -2
  128. package/common/cpp/react/renderer/components/rnscreens/RNSScreenState.h +33 -8
  129. package/common/cpp/react/renderer/components/rnscreens/utils/RectUtil.h +36 -0
  130. package/cpp/RNSScreenRemovalListener.cpp +25 -0
  131. package/cpp/RNSScreenRemovalListener.h +20 -0
  132. package/cpp/RNScreensTurboModule.cpp +115 -0
  133. package/cpp/RNScreensTurboModule.h +40 -0
  134. package/gesture-handler/package.json +6 -0
  135. package/ios/RNSConvert.h +24 -4
  136. package/ios/RNSConvert.mm +180 -55
  137. package/ios/RNSEnums.h +48 -0
  138. package/ios/RNSFullWindowOverlay.mm +12 -2
  139. package/ios/RNSModalScreen.h +8 -0
  140. package/ios/RNSModalScreen.mm +65 -0
  141. package/ios/RNSModule.h +19 -0
  142. package/ios/RNSModule.mm +173 -0
  143. package/ios/RNSPercentDrivenInteractiveTransition.h +12 -0
  144. package/ios/RNSPercentDrivenInteractiveTransition.mm +69 -0
  145. package/ios/RNSScreen.h +24 -5
  146. package/ios/RNSScreen.mm +652 -173
  147. package/ios/RNSScreenContainer.mm +12 -1
  148. package/ios/RNSScreenContentWrapper.h +44 -0
  149. package/ios/RNSScreenContentWrapper.mm +67 -0
  150. package/ios/RNSScreenFooter.h +30 -0
  151. package/ios/RNSScreenFooter.mm +142 -0
  152. package/ios/RNSScreenNavigationContainer.mm +7 -0
  153. package/ios/RNSScreenStack.h +6 -0
  154. package/ios/RNSScreenStack.mm +333 -109
  155. package/ios/RNSScreenStackAnimator.h +15 -1
  156. package/ios/RNSScreenStackAnimator.mm +380 -115
  157. package/ios/RNSScreenStackHeaderConfig.h +74 -6
  158. package/ios/RNSScreenStackHeaderConfig.mm +338 -69
  159. package/ios/RNSScreenStackHeaderSubview.h +0 -7
  160. package/ios/RNSScreenStackHeaderSubview.mm +61 -24
  161. package/ios/RNSScreenWindowTraits.h +1 -1
  162. package/ios/RNSScreenWindowTraits.mm +24 -50
  163. package/ios/RNSSearchBar.h +5 -5
  164. package/ios/RNSSearchBar.mm +42 -11
  165. package/ios/events/RNSHeaderHeightChangeEvent.h +0 -1
  166. package/ios/events/RNSHeaderHeightChangeEvent.mm +15 -0
  167. package/ios/events/RNSScreenViewEvent.h +0 -1
  168. package/ios/utils/RCTSurfaceTouchHandler+RNSUtility.h +15 -0
  169. package/ios/utils/RCTSurfaceTouchHandler+RNSUtility.mm +14 -0
  170. package/ios/utils/RCTTouchHandler+RNSUtility.h +15 -0
  171. package/ios/utils/RCTTouchHandler+RNSUtility.mm +15 -0
  172. package/ios/utils/RNSDefines.h +7 -0
  173. package/ios/utils/RNSUIBarButtonItem.h +2 -0
  174. package/ios/utils/UINavigationBar+RNSUtility.h +37 -0
  175. package/ios/utils/UINavigationBar+RNSUtility.mm +44 -0
  176. package/ios/utils/UIView+RNSUtility.h +23 -0
  177. package/ios/utils/UIView+RNSUtility.mm +54 -0
  178. package/kepler-compatibility.json +2 -2
  179. package/lib/commonjs/TransitionProgressContext.js +2 -2
  180. package/lib/commonjs/TransitionProgressContext.js.map +1 -1
  181. package/lib/commonjs/components/DebugContainer.js +38 -0
  182. package/lib/commonjs/components/DebugContainer.js.map +1 -0
  183. package/lib/commonjs/components/DebugContainer.web.js +14 -0
  184. package/lib/commonjs/components/DebugContainer.web.js.map +1 -0
  185. package/lib/commonjs/components/FullWindowOverlay.js +31 -0
  186. package/lib/commonjs/components/FullWindowOverlay.js.map +1 -0
  187. package/lib/commonjs/components/FullWindowOverlay.web.js +9 -0
  188. package/lib/commonjs/components/FullWindowOverlay.web.js.map +1 -0
  189. package/lib/commonjs/components/Screen.js +286 -0
  190. package/lib/commonjs/components/Screen.js.map +1 -0
  191. package/lib/commonjs/components/Screen.web.js +48 -0
  192. package/lib/commonjs/components/Screen.web.js.map +1 -0
  193. package/lib/commonjs/components/ScreenContainer.js +32 -0
  194. package/lib/commonjs/components/ScreenContainer.js.map +1 -0
  195. package/lib/commonjs/components/ScreenContainer.web.js +10 -0
  196. package/lib/commonjs/components/ScreenContainer.web.js.map +1 -0
  197. package/lib/commonjs/components/ScreenContentWrapper.js +17 -0
  198. package/lib/commonjs/components/ScreenContentWrapper.js.map +1 -0
  199. package/lib/commonjs/components/ScreenContentWrapper.web.js +10 -0
  200. package/lib/commonjs/components/ScreenContentWrapper.web.js.map +1 -0
  201. package/lib/commonjs/components/ScreenFooter.js +25 -0
  202. package/lib/commonjs/components/ScreenFooter.js.map +1 -0
  203. package/lib/commonjs/components/ScreenFooter.web.js +11 -0
  204. package/lib/commonjs/components/ScreenFooter.web.js.map +1 -0
  205. package/lib/commonjs/components/ScreenStack.js +67 -0
  206. package/lib/commonjs/components/ScreenStack.js.map +1 -0
  207. package/lib/commonjs/components/ScreenStack.web.js +10 -0
  208. package/lib/commonjs/components/ScreenStack.web.js.map +1 -0
  209. package/lib/commonjs/components/ScreenStackHeaderConfig.js +100 -0
  210. package/lib/commonjs/components/ScreenStackHeaderConfig.js.map +1 -0
  211. package/lib/commonjs/components/ScreenStackHeaderConfig.web.js +39 -0
  212. package/lib/commonjs/components/ScreenStackHeaderConfig.web.js.map +1 -0
  213. package/lib/commonjs/components/ScreenStackItem.js +106 -0
  214. package/lib/commonjs/components/ScreenStackItem.js.map +1 -0
  215. package/lib/commonjs/components/SearchBar.js +67 -0
  216. package/lib/commonjs/components/SearchBar.js.map +1 -0
  217. package/lib/commonjs/components/SearchBar.web.js +10 -0
  218. package/lib/commonjs/components/SearchBar.web.js.map +1 -0
  219. package/lib/commonjs/components/helpers/DelayedFreeze.js +31 -0
  220. package/lib/commonjs/components/helpers/DelayedFreeze.js.map +1 -0
  221. package/lib/commonjs/components/helpers/usePrevious.js +16 -0
  222. package/lib/commonjs/components/helpers/usePrevious.js.map +1 -0
  223. package/lib/commonjs/contexts.js +11 -0
  224. package/lib/commonjs/contexts.js.map +1 -0
  225. package/lib/commonjs/core.js +40 -0
  226. package/lib/commonjs/core.js.map +1 -0
  227. package/lib/commonjs/fabric/FullWindowOverlayNativeComponent.js +17 -2
  228. package/lib/commonjs/fabric/FullWindowOverlayNativeComponent.js.map +1 -1
  229. package/lib/commonjs/fabric/ModalScreenNativeComponent.js +14 -0
  230. package/lib/commonjs/fabric/ModalScreenNativeComponent.js.map +1 -0
  231. package/lib/commonjs/fabric/NativeScreensModule.js +10 -0
  232. package/lib/commonjs/fabric/NativeScreensModule.js.map +1 -0
  233. package/lib/commonjs/fabric/NativeScreensModule.web.js +8 -0
  234. package/lib/commonjs/fabric/NativeScreensModule.web.js.map +1 -0
  235. package/lib/commonjs/fabric/ScreenContainerNativeComponent.js +8 -11
  236. package/lib/commonjs/fabric/ScreenContainerNativeComponent.js.map +1 -1
  237. package/lib/commonjs/fabric/ScreenContentWrapperNativeComponent.js +18 -0
  238. package/lib/commonjs/fabric/ScreenContentWrapperNativeComponent.js.map +1 -0
  239. package/lib/commonjs/fabric/ScreenFooterNativeComponent.js +10 -0
  240. package/lib/commonjs/fabric/ScreenFooterNativeComponent.js.map +1 -0
  241. package/lib/commonjs/fabric/ScreenNativeComponent.js +13 -15
  242. package/lib/commonjs/fabric/ScreenNativeComponent.js.map +1 -1
  243. package/lib/commonjs/fabric/ScreenNavigationContainerNativeComponent.js +3 -2
  244. package/lib/commonjs/fabric/ScreenNavigationContainerNativeComponent.js.map +1 -1
  245. package/lib/commonjs/fabric/ScreenStackHeaderConfigNativeComponent.js +10 -9
  246. package/lib/commonjs/fabric/ScreenStackHeaderConfigNativeComponent.js.map +1 -1
  247. package/lib/commonjs/fabric/ScreenStackHeaderSubviewNativeComponent.js +6 -3
  248. package/lib/commonjs/fabric/ScreenStackHeaderSubviewNativeComponent.js.map +1 -1
  249. package/lib/commonjs/fabric/ScreenStackNativeComponent.js +8 -11
  250. package/lib/commonjs/fabric/ScreenStackNativeComponent.js.map +1 -1
  251. package/lib/commonjs/fabric/SearchBarNativeComponent.js +5 -6
  252. package/lib/commonjs/fabric/SearchBarNativeComponent.js.map +1 -1
  253. package/lib/commonjs/gesture-handler/GestureDetectorProvider.js +19 -0
  254. package/lib/commonjs/gesture-handler/GestureDetectorProvider.js.map +1 -0
  255. package/lib/commonjs/gesture-handler/RNScreensTurboModule.js +8 -0
  256. package/lib/commonjs/gesture-handler/RNScreensTurboModule.js.map +1 -0
  257. package/lib/commonjs/gesture-handler/ScreenGestureDetector.js +200 -0
  258. package/lib/commonjs/gesture-handler/ScreenGestureDetector.js.map +1 -0
  259. package/lib/commonjs/gesture-handler/constraints.js +64 -0
  260. package/lib/commonjs/gesture-handler/constraints.js.map +1 -0
  261. package/lib/commonjs/gesture-handler/defaults.js +45 -0
  262. package/lib/commonjs/gesture-handler/defaults.js.map +1 -0
  263. package/lib/commonjs/gesture-handler/fabricUtils.js +66 -0
  264. package/lib/commonjs/gesture-handler/fabricUtils.js.map +1 -0
  265. package/lib/commonjs/gesture-handler/fabricUtils.web.js +17 -0
  266. package/lib/commonjs/gesture-handler/fabricUtils.web.js.map +1 -0
  267. package/lib/commonjs/gesture-handler/index.js +14 -0
  268. package/lib/commonjs/gesture-handler/index.js.map +1 -0
  269. package/lib/commonjs/index.js +157 -95
  270. package/lib/commonjs/index.js.map +1 -1
  271. package/lib/commonjs/native-stack/contexts/GHContext.js +12 -0
  272. package/lib/commonjs/native-stack/contexts/GHContext.js.map +1 -0
  273. package/lib/commonjs/native-stack/index.js +1 -1
  274. package/lib/commonjs/native-stack/index.js.map +1 -1
  275. package/lib/commonjs/native-stack/navigators/createNativeStackNavigator.js +24 -24
  276. package/lib/commonjs/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
  277. package/lib/commonjs/native-stack/types.js.map +1 -1
  278. package/lib/commonjs/native-stack/utils/AnimatedHeaderHeightContext.js +1 -2
  279. package/lib/commonjs/native-stack/utils/AnimatedHeaderHeightContext.js.map +1 -1
  280. package/lib/commonjs/native-stack/utils/HeaderHeightContext.js +1 -2
  281. package/lib/commonjs/native-stack/utils/HeaderHeightContext.js.map +1 -1
  282. package/lib/commonjs/native-stack/utils/SafeAreaProviderCompat.js +1 -2
  283. package/lib/commonjs/native-stack/utils/SafeAreaProviderCompat.js.map +1 -1
  284. package/lib/commonjs/native-stack/utils/getDefaultHeaderHeight.js.map +1 -1
  285. package/lib/commonjs/native-stack/utils/getStatusBarHeight.js +22 -0
  286. package/lib/commonjs/native-stack/utils/getStatusBarHeight.js.map +1 -0
  287. package/lib/commonjs/native-stack/utils/useAnimatedHeaderHeight.js +2 -3
  288. package/lib/commonjs/native-stack/utils/useAnimatedHeaderHeight.js.map +1 -1
  289. package/lib/commonjs/native-stack/utils/useBackPressSubscription.js +5 -6
  290. package/lib/commonjs/native-stack/utils/useBackPressSubscription.js.map +1 -1
  291. package/lib/commonjs/native-stack/utils/useHeaderHeight.js +2 -3
  292. package/lib/commonjs/native-stack/utils/useHeaderHeight.js.map +1 -1
  293. package/lib/commonjs/native-stack/views/FontProcessor.js +2 -4
  294. package/lib/commonjs/native-stack/views/FontProcessor.js.map +1 -1
  295. package/lib/commonjs/native-stack/views/FooterComponent.js +17 -0
  296. package/lib/commonjs/native-stack/views/FooterComponent.js.map +1 -0
  297. package/lib/commonjs/native-stack/views/HeaderConfig.js +23 -15
  298. package/lib/commonjs/native-stack/views/HeaderConfig.js.map +1 -1
  299. package/lib/commonjs/native-stack/views/NativeStackView.js +124 -56
  300. package/lib/commonjs/native-stack/views/NativeStackView.js.map +1 -1
  301. package/lib/commonjs/reanimated/ReanimatedHeaderHeightContext.js +1 -2
  302. package/lib/commonjs/reanimated/ReanimatedHeaderHeightContext.js.map +1 -1
  303. package/lib/commonjs/reanimated/ReanimatedNativeStackScreen.js +14 -21
  304. package/lib/commonjs/reanimated/ReanimatedNativeStackScreen.js.map +1 -1
  305. package/lib/commonjs/reanimated/ReanimatedScreen.js +4 -4
  306. package/lib/commonjs/reanimated/ReanimatedScreen.js.map +1 -1
  307. package/lib/commonjs/reanimated/ReanimatedScreenProvider.js +10 -18
  308. package/lib/commonjs/reanimated/ReanimatedScreenProvider.js.map +1 -1
  309. package/lib/commonjs/reanimated/ReanimatedTransitionProgressContext.js +1 -2
  310. package/lib/commonjs/reanimated/ReanimatedTransitionProgressContext.js.map +1 -1
  311. package/lib/commonjs/reanimated/index.js +1 -1
  312. package/lib/commonjs/reanimated/index.js.map +1 -1
  313. package/lib/commonjs/reanimated/useReanimatedHeaderHeight.js +4 -5
  314. package/lib/commonjs/reanimated/useReanimatedHeaderHeight.js.map +1 -1
  315. package/lib/commonjs/reanimated/useReanimatedTransitionProgress.js +2 -3
  316. package/lib/commonjs/reanimated/useReanimatedTransitionProgress.js.map +1 -1
  317. package/lib/commonjs/types.js.map +1 -1
  318. package/lib/commonjs/useTransitionProgress.js +2 -3
  319. package/lib/commonjs/useTransitionProgress.js.map +1 -1
  320. package/lib/commonjs/utils.js +28 -6
  321. package/lib/commonjs/utils.js.map +1 -1
  322. package/lib/module/TransitionProgressContext.js +2 -0
  323. package/lib/module/TransitionProgressContext.js.map +1 -1
  324. package/lib/module/components/DebugContainer.js +30 -0
  325. package/lib/module/components/DebugContainer.js.map +1 -0
  326. package/lib/module/components/DebugContainer.web.js +6 -0
  327. package/lib/module/components/DebugContainer.web.js.map +1 -0
  328. package/lib/module/components/FullWindowOverlay.js +24 -0
  329. package/lib/module/components/FullWindowOverlay.js.map +1 -0
  330. package/lib/module/components/FullWindowOverlay.web.js +3 -0
  331. package/lib/module/components/FullWindowOverlay.web.js.map +1 -0
  332. package/lib/module/components/Screen.js +282 -0
  333. package/lib/module/components/Screen.js.map +1 -0
  334. package/lib/module/components/Screen.web.js +41 -0
  335. package/lib/module/components/Screen.web.js.map +1 -0
  336. package/lib/module/components/ScreenContainer.js +26 -0
  337. package/lib/module/components/ScreenContainer.js.map +1 -0
  338. package/lib/module/components/ScreenContainer.web.js +4 -0
  339. package/lib/module/components/ScreenContainer.web.js.map +1 -0
  340. package/lib/module/components/ScreenContentWrapper.js +10 -0
  341. package/lib/module/components/ScreenContentWrapper.js.map +1 -0
  342. package/lib/module/components/ScreenContentWrapper.web.js +4 -0
  343. package/lib/module/components/ScreenContentWrapper.web.js.map +1 -0
  344. package/lib/module/components/ScreenFooter.js +18 -0
  345. package/lib/module/components/ScreenFooter.js.map +1 -0
  346. package/lib/module/components/ScreenFooter.web.js +6 -0
  347. package/lib/module/components/ScreenFooter.web.js.map +1 -0
  348. package/lib/module/components/ScreenStack.js +63 -0
  349. package/lib/module/components/ScreenStack.js.map +1 -0
  350. package/lib/module/components/ScreenStack.web.js +4 -0
  351. package/lib/module/components/ScreenStack.web.js.map +1 -0
  352. package/lib/module/components/ScreenStackHeaderConfig.js +91 -0
  353. package/lib/module/components/ScreenStackHeaderConfig.js.map +1 -0
  354. package/lib/module/components/ScreenStackHeaderConfig.web.js +26 -0
  355. package/lib/module/components/ScreenStackHeaderConfig.web.js.map +1 -0
  356. package/lib/module/components/ScreenStackItem.js +98 -0
  357. package/lib/module/components/ScreenStackItem.js.map +1 -0
  358. package/lib/module/components/SearchBar.js +62 -0
  359. package/lib/module/components/SearchBar.js.map +1 -0
  360. package/lib/module/components/SearchBar.web.js +4 -0
  361. package/lib/module/components/SearchBar.web.js.map +1 -0
  362. package/lib/module/components/helpers/DelayedFreeze.js +24 -0
  363. package/lib/module/components/helpers/DelayedFreeze.js.map +1 -0
  364. package/lib/module/components/helpers/usePrevious.js +10 -0
  365. package/lib/module/components/helpers/usePrevious.js.map +1 -0
  366. package/lib/module/contexts.js +4 -0
  367. package/lib/module/contexts.js.map +1 -0
  368. package/lib/module/core.js +31 -0
  369. package/lib/module/core.js.map +1 -0
  370. package/lib/module/fabric/FullWindowOverlayNativeComponent.js +16 -0
  371. package/lib/module/fabric/FullWindowOverlayNativeComponent.js.map +1 -1
  372. package/lib/module/fabric/ModalScreenNativeComponent.js +10 -0
  373. package/lib/module/fabric/ModalScreenNativeComponent.js.map +1 -0
  374. package/lib/module/fabric/NativeScreensModule.js +5 -0
  375. package/lib/module/fabric/NativeScreensModule.js.map +1 -0
  376. package/lib/module/fabric/NativeScreensModule.web.js +2 -0
  377. package/lib/module/fabric/NativeScreensModule.web.js.map +1 -0
  378. package/lib/module/fabric/ScreenContainerNativeComponent.js +3 -4
  379. package/lib/module/fabric/ScreenContainerNativeComponent.js.map +1 -1
  380. package/lib/module/fabric/ScreenContentWrapperNativeComponent.js +10 -0
  381. package/lib/module/fabric/ScreenContentWrapperNativeComponent.js.map +1 -0
  382. package/lib/module/fabric/ScreenFooterNativeComponent.js +3 -0
  383. package/lib/module/fabric/ScreenFooterNativeComponent.js.map +1 -0
  384. package/lib/module/fabric/ScreenNativeComponent.js +8 -7
  385. package/lib/module/fabric/ScreenNativeComponent.js.map +1 -1
  386. package/lib/module/fabric/ScreenNavigationContainerNativeComponent.js +2 -0
  387. package/lib/module/fabric/ScreenNavigationContainerNativeComponent.js.map +1 -1
  388. package/lib/module/fabric/ScreenStackHeaderConfigNativeComponent.js +8 -2
  389. package/lib/module/fabric/ScreenStackHeaderConfigNativeComponent.js.map +1 -1
  390. package/lib/module/fabric/ScreenStackHeaderSubviewNativeComponent.js +5 -1
  391. package/lib/module/fabric/ScreenStackHeaderSubviewNativeComponent.js.map +1 -1
  392. package/lib/module/fabric/ScreenStackNativeComponent.js +3 -3
  393. package/lib/module/fabric/ScreenStackNativeComponent.js.map +1 -1
  394. package/lib/module/fabric/SearchBarNativeComponent.js +3 -1
  395. package/lib/module/fabric/SearchBarNativeComponent.js.map +1 -1
  396. package/lib/module/gesture-handler/GestureDetectorProvider.js +12 -0
  397. package/lib/module/gesture-handler/GestureDetectorProvider.js.map +1 -0
  398. package/lib/module/gesture-handler/RNScreensTurboModule.js +2 -0
  399. package/lib/module/gesture-handler/RNScreensTurboModule.js.map +1 -0
  400. package/lib/module/gesture-handler/ScreenGestureDetector.js +193 -0
  401. package/lib/module/gesture-handler/ScreenGestureDetector.js.map +1 -0
  402. package/lib/module/gesture-handler/constraints.js +56 -0
  403. package/lib/module/gesture-handler/constraints.js.map +1 -0
  404. package/lib/module/gesture-handler/defaults.js +39 -0
  405. package/lib/module/gesture-handler/defaults.js.map +1 -0
  406. package/lib/module/gesture-handler/fabricUtils.js +61 -0
  407. package/lib/module/gesture-handler/fabricUtils.js.map +1 -0
  408. package/lib/module/gesture-handler/fabricUtils.web.js +10 -0
  409. package/lib/module/gesture-handler/fabricUtils.web.js.map +1 -0
  410. package/lib/module/gesture-handler/index.js +5 -0
  411. package/lib/module/gesture-handler/index.js.map +1 -0
  412. package/lib/module/index.js +29 -64
  413. package/lib/module/index.js.map +1 -1
  414. package/lib/module/native-stack/contexts/GHContext.js +6 -0
  415. package/lib/module/native-stack/contexts/GHContext.js.map +1 -0
  416. package/lib/module/native-stack/index.js.map +1 -1
  417. package/lib/module/native-stack/navigators/createNativeStackNavigator.js +22 -21
  418. package/lib/module/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
  419. package/lib/module/native-stack/types.js.map +1 -1
  420. package/lib/module/native-stack/utils/AnimatedHeaderHeightContext.js.map +1 -1
  421. package/lib/module/native-stack/utils/HeaderHeightContext.js.map +1 -1
  422. package/lib/module/native-stack/utils/SafeAreaProviderCompat.js.map +1 -1
  423. package/lib/module/native-stack/utils/getDefaultHeaderHeight.js.map +1 -1
  424. package/lib/module/native-stack/utils/getStatusBarHeight.js +16 -0
  425. package/lib/module/native-stack/utils/getStatusBarHeight.js.map +1 -0
  426. package/lib/module/native-stack/utils/useAnimatedHeaderHeight.js.map +1 -1
  427. package/lib/module/native-stack/utils/useBackPressSubscription.js +4 -5
  428. package/lib/module/native-stack/utils/useBackPressSubscription.js.map +1 -1
  429. package/lib/module/native-stack/utils/useHeaderHeight.js.map +1 -1
  430. package/lib/module/native-stack/views/FontProcessor.js +2 -3
  431. package/lib/module/native-stack/views/FontProcessor.js.map +1 -1
  432. package/lib/module/native-stack/views/FooterComponent.js +10 -0
  433. package/lib/module/native-stack/views/FooterComponent.js.map +1 -0
  434. package/lib/module/native-stack/views/HeaderConfig.js +14 -6
  435. package/lib/module/native-stack/views/HeaderConfig.js.map +1 -1
  436. package/lib/module/native-stack/views/NativeStackView.js +118 -47
  437. package/lib/module/native-stack/views/NativeStackView.js.map +1 -1
  438. package/lib/module/reanimated/ReanimatedHeaderHeightContext.js.map +1 -1
  439. package/lib/module/reanimated/ReanimatedNativeStackScreen.js +9 -13
  440. package/lib/module/reanimated/ReanimatedNativeStackScreen.js.map +1 -1
  441. package/lib/module/reanimated/ReanimatedScreen.js +2 -3
  442. package/lib/module/reanimated/ReanimatedScreen.js.map +1 -1
  443. package/lib/module/reanimated/ReanimatedScreenProvider.js +8 -16
  444. package/lib/module/reanimated/ReanimatedScreenProvider.js.map +1 -1
  445. package/lib/module/reanimated/ReanimatedTransitionProgressContext.js.map +1 -1
  446. package/lib/module/reanimated/index.js.map +1 -1
  447. package/lib/module/reanimated/useReanimatedHeaderHeight.js +1 -1
  448. package/lib/module/reanimated/useReanimatedHeaderHeight.js.map +1 -1
  449. package/lib/module/reanimated/useReanimatedTransitionProgress.js.map +1 -1
  450. package/lib/module/types.js.map +1 -1
  451. package/lib/module/useTransitionProgress.js.map +1 -1
  452. package/lib/module/utils.js +26 -5
  453. package/lib/module/utils.js.map +1 -1
  454. package/lib/typescript/TransitionProgressContext.d.ts +2 -1
  455. package/lib/typescript/TransitionProgressContext.d.ts.map +1 -0
  456. package/lib/typescript/components/DebugContainer.d.ts +15 -0
  457. package/lib/typescript/components/DebugContainer.d.ts.map +1 -0
  458. package/lib/typescript/components/DebugContainer.web.d.ts +4 -0
  459. package/lib/typescript/components/DebugContainer.web.d.ts.map +1 -0
  460. package/lib/typescript/components/FullWindowOverlay.d.ts +6 -0
  461. package/lib/typescript/components/FullWindowOverlay.d.ts.map +1 -0
  462. package/lib/typescript/components/FullWindowOverlay.web.d.ts +6 -0
  463. package/lib/typescript/components/FullWindowOverlay.web.d.ts.map +1 -0
  464. package/lib/typescript/components/Screen.d.ts +8 -0
  465. package/lib/typescript/components/Screen.d.ts.map +1 -0
  466. package/lib/typescript/components/Screen.web.d.ts +11 -0
  467. package/lib/typescript/components/Screen.web.d.ts.map +1 -0
  468. package/lib/typescript/components/ScreenContainer.d.ts +5 -0
  469. package/lib/typescript/components/ScreenContainer.d.ts.map +1 -0
  470. package/lib/typescript/components/ScreenContainer.web.d.ts +4 -0
  471. package/lib/typescript/components/ScreenContainer.web.d.ts.map +1 -0
  472. package/lib/typescript/components/ScreenContentWrapper.d.ts +5 -0
  473. package/lib/typescript/components/ScreenContentWrapper.d.ts.map +1 -0
  474. package/lib/typescript/components/ScreenContentWrapper.web.d.ts +4 -0
  475. package/lib/typescript/components/ScreenContentWrapper.web.d.ts.map +1 -0
  476. package/lib/typescript/components/ScreenFooter.d.ts +12 -0
  477. package/lib/typescript/components/ScreenFooter.d.ts.map +1 -0
  478. package/lib/typescript/components/ScreenFooter.web.d.ts +6 -0
  479. package/lib/typescript/components/ScreenFooter.web.d.ts.map +1 -0
  480. package/lib/typescript/components/ScreenStack.d.ts +5 -0
  481. package/lib/typescript/components/ScreenStack.d.ts.map +1 -0
  482. package/lib/typescript/components/ScreenStack.web.d.ts +4 -0
  483. package/lib/typescript/components/ScreenStack.web.d.ts.map +1 -0
  484. package/lib/typescript/components/ScreenStackHeaderConfig.d.ts +13 -0
  485. package/lib/typescript/components/ScreenStackHeaderConfig.d.ts.map +1 -0
  486. package/lib/typescript/components/ScreenStackHeaderConfig.web.d.ts +13 -0
  487. package/lib/typescript/components/ScreenStackHeaderConfig.web.d.ts.map +1 -0
  488. package/lib/typescript/components/ScreenStackItem.d.ts +11 -0
  489. package/lib/typescript/components/ScreenStackItem.d.ts.map +1 -0
  490. package/lib/typescript/components/SearchBar.d.ts +5 -0
  491. package/lib/typescript/components/SearchBar.d.ts.map +1 -0
  492. package/lib/typescript/components/SearchBar.web.d.ts +4 -0
  493. package/lib/typescript/components/SearchBar.web.d.ts.map +1 -0
  494. package/lib/typescript/components/helpers/DelayedFreeze.d.ts +8 -0
  495. package/lib/typescript/components/helpers/DelayedFreeze.d.ts.map +1 -0
  496. package/lib/typescript/components/helpers/usePrevious.d.ts +2 -0
  497. package/lib/typescript/components/helpers/usePrevious.d.ts.map +1 -0
  498. package/lib/typescript/contexts.d.ts +5 -0
  499. package/lib/typescript/contexts.d.ts.map +1 -0
  500. package/lib/typescript/core.d.ts +6 -0
  501. package/lib/typescript/core.d.ts.map +1 -0
  502. package/lib/typescript/fabric/FullWindowOverlayNativeComponent.d.ts +1 -1
  503. package/lib/typescript/fabric/FullWindowOverlayNativeComponent.d.ts.map +1 -0
  504. package/lib/typescript/fabric/ModalScreenNativeComponent.d.ts +76 -0
  505. package/lib/typescript/fabric/ModalScreenNativeComponent.d.ts.map +1 -0
  506. package/lib/typescript/fabric/NativeScreensModule.d.ts +6 -0
  507. package/lib/typescript/fabric/NativeScreensModule.d.ts.map +1 -0
  508. package/lib/typescript/fabric/NativeScreensModule.web.d.ts +3 -0
  509. package/lib/typescript/fabric/NativeScreensModule.web.d.ts.map +1 -0
  510. package/lib/typescript/fabric/ScreenContainerNativeComponent.d.ts +1 -0
  511. package/lib/typescript/fabric/ScreenContainerNativeComponent.d.ts.map +1 -0
  512. package/lib/typescript/fabric/ScreenContentWrapperNativeComponent.d.ts +6 -0
  513. package/lib/typescript/fabric/ScreenContentWrapperNativeComponent.d.ts.map +1 -0
  514. package/lib/typescript/fabric/ScreenFooterNativeComponent.d.ts +7 -0
  515. package/lib/typescript/fabric/ScreenFooterNativeComponent.d.ts.map +1 -0
  516. package/lib/typescript/fabric/ScreenNativeComponent.d.ts +34 -24
  517. package/lib/typescript/fabric/ScreenNativeComponent.d.ts.map +1 -0
  518. package/lib/typescript/fabric/ScreenNavigationContainerNativeComponent.d.ts +1 -1
  519. package/lib/typescript/fabric/ScreenNavigationContainerNativeComponent.d.ts.map +1 -0
  520. package/lib/typescript/fabric/ScreenStackHeaderConfigNativeComponent.d.ts +12 -2
  521. package/lib/typescript/fabric/ScreenStackHeaderConfigNativeComponent.d.ts.map +1 -0
  522. package/lib/typescript/fabric/ScreenStackHeaderSubviewNativeComponent.d.ts +2 -2
  523. package/lib/typescript/fabric/ScreenStackHeaderSubviewNativeComponent.d.ts.map +1 -0
  524. package/lib/typescript/fabric/ScreenStackNativeComponent.d.ts +4 -2
  525. package/lib/typescript/fabric/ScreenStackNativeComponent.d.ts.map +1 -0
  526. package/lib/typescript/fabric/SearchBarNativeComponent.d.ts +17 -16
  527. package/lib/typescript/fabric/SearchBarNativeComponent.d.ts.map +1 -0
  528. package/lib/typescript/gesture-handler/GestureDetectorProvider.d.ts +5 -0
  529. package/lib/typescript/gesture-handler/GestureDetectorProvider.d.ts.map +1 -0
  530. package/lib/typescript/gesture-handler/RNScreensTurboModule.d.ts +13 -0
  531. package/lib/typescript/gesture-handler/RNScreensTurboModule.d.ts.map +1 -0
  532. package/lib/typescript/gesture-handler/ScreenGestureDetector.d.ts +5 -0
  533. package/lib/typescript/gesture-handler/ScreenGestureDetector.d.ts.map +1 -0
  534. package/lib/typescript/gesture-handler/constraints.d.ts +6 -0
  535. package/lib/typescript/gesture-handler/constraints.d.ts.map +1 -0
  536. package/lib/typescript/gesture-handler/defaults.d.ts +20 -0
  537. package/lib/typescript/gesture-handler/defaults.d.ts.map +1 -0
  538. package/lib/typescript/gesture-handler/fabricUtils.d.ts +10 -0
  539. package/lib/typescript/gesture-handler/fabricUtils.d.ts.map +1 -0
  540. package/lib/typescript/gesture-handler/fabricUtils.web.d.ts +6 -0
  541. package/lib/typescript/gesture-handler/fabricUtils.web.d.ts.map +1 -0
  542. package/lib/typescript/gesture-handler/index.d.ts +2 -0
  543. package/lib/typescript/gesture-handler/index.d.ts.map +1 -0
  544. package/lib/typescript/index.d.ts +25 -31
  545. package/lib/typescript/index.d.ts.map +1 -0
  546. package/lib/typescript/native-stack/contexts/GHContext.d.ts +4 -0
  547. package/lib/typescript/native-stack/contexts/GHContext.d.ts.map +1 -0
  548. package/lib/typescript/native-stack/index.d.ts +1 -0
  549. package/lib/typescript/native-stack/index.d.ts.map +1 -0
  550. package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts +4 -0
  551. package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts.map +1 -0
  552. package/lib/typescript/native-stack/types.d.ts +191 -33
  553. package/lib/typescript/native-stack/types.d.ts.map +1 -0
  554. package/lib/typescript/native-stack/utils/AnimatedHeaderHeightContext.d.ts +1 -0
  555. package/lib/typescript/native-stack/utils/AnimatedHeaderHeightContext.d.ts.map +1 -0
  556. package/lib/typescript/native-stack/utils/HeaderHeightContext.d.ts +1 -0
  557. package/lib/typescript/native-stack/utils/HeaderHeightContext.d.ts.map +1 -0
  558. package/lib/typescript/native-stack/utils/SafeAreaProviderCompat.d.ts +2 -1
  559. package/lib/typescript/native-stack/utils/SafeAreaProviderCompat.d.ts.map +1 -0
  560. package/lib/typescript/native-stack/utils/getDefaultHeaderHeight.d.ts +3 -2
  561. package/lib/typescript/native-stack/utils/getDefaultHeaderHeight.d.ts.map +1 -0
  562. package/lib/typescript/native-stack/utils/getStatusBarHeight.d.ts +3 -0
  563. package/lib/typescript/native-stack/utils/getStatusBarHeight.d.ts.map +1 -0
  564. package/lib/typescript/native-stack/utils/useAnimatedHeaderHeight.d.ts +2 -1
  565. package/lib/typescript/native-stack/utils/useAnimatedHeaderHeight.d.ts.map +1 -0
  566. package/lib/typescript/native-stack/utils/useBackPressSubscription.d.ts +1 -0
  567. package/lib/typescript/native-stack/utils/useBackPressSubscription.d.ts.map +1 -0
  568. package/lib/typescript/native-stack/utils/useHeaderHeight.d.ts +1 -0
  569. package/lib/typescript/native-stack/utils/useHeaderHeight.d.ts.map +1 -0
  570. package/lib/typescript/native-stack/views/FontProcessor.d.ts +1 -0
  571. package/lib/typescript/native-stack/views/FontProcessor.d.ts.map +1 -0
  572. package/lib/typescript/native-stack/views/FooterComponent.d.ts +7 -0
  573. package/lib/typescript/native-stack/views/FooterComponent.d.ts.map +1 -0
  574. package/lib/typescript/native-stack/views/HeaderConfig.d.ts +4 -3
  575. package/lib/typescript/native-stack/views/HeaderConfig.d.ts.map +1 -0
  576. package/lib/typescript/native-stack/views/NativeStackView.d.ts +2 -1
  577. package/lib/typescript/native-stack/views/NativeStackView.d.ts.map +1 -0
  578. package/lib/typescript/reanimated/ReanimatedHeaderHeightContext.d.ts +1 -0
  579. package/lib/typescript/reanimated/ReanimatedHeaderHeightContext.d.ts.map +1 -0
  580. package/lib/typescript/reanimated/ReanimatedNativeStackScreen.d.ts +3 -3
  581. package/lib/typescript/reanimated/ReanimatedNativeStackScreen.d.ts.map +1 -0
  582. package/lib/typescript/reanimated/ReanimatedScreen.d.ts +3 -3
  583. package/lib/typescript/reanimated/ReanimatedScreen.d.ts.map +1 -0
  584. package/lib/typescript/reanimated/ReanimatedScreenProvider.d.ts +1 -0
  585. package/lib/typescript/reanimated/ReanimatedScreenProvider.d.ts.map +1 -0
  586. package/lib/typescript/reanimated/ReanimatedTransitionProgressContext.d.ts +2 -1
  587. package/lib/typescript/reanimated/ReanimatedTransitionProgressContext.d.ts.map +1 -0
  588. package/lib/typescript/reanimated/index.d.ts +1 -0
  589. package/lib/typescript/reanimated/index.d.ts.map +1 -0
  590. package/lib/typescript/reanimated/useReanimatedHeaderHeight.d.ts +2 -3
  591. package/lib/typescript/reanimated/useReanimatedHeaderHeight.d.ts.map +1 -0
  592. package/lib/typescript/reanimated/useReanimatedTransitionProgress.d.ts +4 -9
  593. package/lib/typescript/reanimated/useReanimatedTransitionProgress.d.ts.map +1 -0
  594. package/lib/typescript/types.d.ts +187 -37
  595. package/lib/typescript/types.d.ts.map +1 -0
  596. package/lib/typescript/useTransitionProgress.d.ts +4 -3
  597. package/lib/typescript/useTransitionProgress.d.ts.map +1 -0
  598. package/lib/typescript/utils.d.ts +27 -1
  599. package/lib/typescript/utils.d.ts.map +1 -0
  600. package/native-stack/README.md +156 -108
  601. package/native-stack/package.json +4 -4
  602. package/oss-attribution/attribution.txt +77 -0
  603. package/oss-attribution/licenseInfos.json +27 -0
  604. package/package.json +196 -1
  605. package/react-native.config.js +19 -16
  606. package/reanimated/package.json +1 -1
  607. package/src/TransitionProgressContext.tsx +3 -1
  608. package/src/components/DebugContainer.tsx +46 -0
  609. package/src/components/DebugContainer.web.tsx +7 -0
  610. package/src/components/FullWindowOverlay.tsx +33 -0
  611. package/src/components/FullWindowOverlay.web.tsx +6 -0
  612. package/src/components/Screen.tsx +392 -0
  613. package/src/components/Screen.web.tsx +47 -0
  614. package/src/components/ScreenContainer.tsx +28 -0
  615. package/src/components/ScreenContainer.web.tsx +5 -0
  616. package/src/components/ScreenContentWrapper.tsx +9 -0
  617. package/src/components/ScreenContentWrapper.web.tsx +5 -0
  618. package/src/components/ScreenFooter.tsx +20 -0
  619. package/src/components/ScreenFooter.web.tsx +7 -0
  620. package/src/components/ScreenStack.tsx +112 -0
  621. package/src/components/ScreenStack.web.tsx +5 -0
  622. package/src/components/ScreenStackHeaderConfig.tsx +127 -0
  623. package/src/components/ScreenStackHeaderConfig.web.tsx +45 -0
  624. package/src/components/ScreenStackItem.tsx +174 -0
  625. package/src/components/SearchBar.tsx +105 -0
  626. package/src/components/SearchBar.web.tsx +5 -0
  627. package/src/components/helpers/DelayedFreeze.tsx +27 -0
  628. package/src/components/helpers/usePrevious.tsx +12 -0
  629. package/src/contexts.tsx +9 -0
  630. package/src/core.ts +45 -0
  631. package/src/fabric/FullWindowOverlayNativeComponent.ts +16 -0
  632. package/src/fabric/ModalScreenNativeComponent.ts +115 -0
  633. package/src/fabric/NativeScreensModule.ts +8 -0
  634. package/src/fabric/NativeScreensModule.web.ts +1 -0
  635. package/src/fabric/ScreenContainerNativeComponent.ts +3 -3
  636. package/src/fabric/ScreenContentWrapperNativeComponent.ts +14 -0
  637. package/src/fabric/ScreenFooterNativeComponent.ts +6 -0
  638. package/src/fabric/ScreenNativeComponent.ts +34 -23
  639. package/src/fabric/ScreenNavigationContainerNativeComponent.ts +3 -1
  640. package/src/fabric/ScreenStackHeaderConfigNativeComponent.ts +38 -2
  641. package/src/fabric/ScreenStackHeaderSubviewNativeComponent.ts +5 -1
  642. package/src/fabric/ScreenStackNativeComponent.ts +3 -2
  643. package/src/fabric/SearchBarNativeComponent.ts +17 -13
  644. package/src/gesture-handler/GestureDetectorProvider.tsx +16 -0
  645. package/src/gesture-handler/RNScreensTurboModule.ts +13 -0
  646. package/src/gesture-handler/ScreenGestureDetector.tsx +241 -0
  647. package/src/gesture-handler/constraints.ts +87 -0
  648. package/src/gesture-handler/defaults.ts +46 -0
  649. package/src/gesture-handler/fabricUtils.ts +86 -0
  650. package/src/gesture-handler/fabricUtils.web.ts +10 -0
  651. package/src/gesture-handler/index.tsx +4 -0
  652. package/src/index.tsx +49 -113
  653. package/src/native-stack/contexts/GHContext.tsx +9 -0
  654. package/src/native-stack/navigators/createNativeStackNavigator.tsx +6 -3
  655. package/src/native-stack/types.tsx +204 -31
  656. package/src/native-stack/utils/getDefaultHeaderHeight.tsx +2 -2
  657. package/src/native-stack/utils/getStatusBarHeight.tsx +22 -0
  658. package/src/native-stack/utils/useAnimatedHeaderHeight.tsx +1 -1
  659. package/src/native-stack/utils/useBackPressSubscription.tsx +3 -2
  660. package/src/native-stack/utils/useHeaderHeight.tsx +1 -1
  661. package/src/native-stack/views/FontProcessor.tsx +2 -2
  662. package/src/native-stack/views/FooterComponent.tsx +10 -0
  663. package/src/native-stack/views/HeaderConfig.tsx +22 -6
  664. package/src/native-stack/views/NativeStackView.tsx +141 -54
  665. package/src/reanimated/ReanimatedHeaderHeightContext.tsx +1 -1
  666. package/src/reanimated/ReanimatedNativeStackScreen.tsx +15 -13
  667. package/src/reanimated/ReanimatedScreen.tsx +4 -3
  668. package/src/reanimated/ReanimatedScreenProvider.tsx +3 -2
  669. package/src/reanimated/useReanimatedHeaderHeight.tsx +2 -2
  670. package/src/reanimated/useReanimatedTransitionProgress.tsx +1 -1
  671. package/src/types.tsx +213 -41
  672. package/src/useTransitionProgress.tsx +1 -1
  673. package/src/utils.ts +27 -5
  674. package/windows/README.md +4 -1
  675. package/windows/RNScreens/Screen.h +3 -1
  676. package/SystemBundles/3d72c1ccdc1866604203e2067a94f7ab2c45408da644bb242aa980ffea58a74d.bundle +0 -33190
  677. package/SystemBundles/3d72c1ccdc1866604203e2067a94f7ab2c45408da644bb242aa980ffea58a74d.map +0 -10181
  678. package/SystemModules/amzn__react-native-screens.modules.txt +0 -101
  679. package/SystemModules/amzn__react-native-screens.private.modules.txt +0 -243
  680. package/lib/commonjs/index.native.js +0 -409
  681. package/lib/commonjs/index.native.js.map +0 -1
  682. package/lib/module/index.native.js +0 -412
  683. package/lib/module/index.native.js.map +0 -1
  684. package/lib/typescript/index.native.d.ts +0 -2
  685. package/src/index.native.tsx +0 -601
@@ -8,18 +8,21 @@ var React = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _AppContainer = _interopRequireDefault(require("react-native/Libraries/ReactNative/AppContainer"));
10
10
  var _warnOnce = _interopRequireDefault(require("warn-once"));
11
- var _reactNativeScreens = require("@amazon-devices/react-native-screens");
11
+ var _ScreenStack = _interopRequireDefault(require("../../components/ScreenStack"));
12
+ var _ScreenContentWrapper = _interopRequireDefault(require("../../components/ScreenContentWrapper"));
13
+ var _Screen = require("../../components/Screen");
12
14
  var _reactNavigation__native = require("@amazon-devices/react-navigation__native");
13
15
  var _reactNativeSafeAreaContext = require("@amazon-devices/react-native-safe-area-context");
14
16
  var _HeaderConfig = _interopRequireDefault(require("./HeaderConfig"));
15
17
  var _SafeAreaProviderCompat = _interopRequireDefault(require("../utils/SafeAreaProviderCompat"));
16
18
  var _getDefaultHeaderHeight = _interopRequireDefault(require("../utils/getDefaultHeaderHeight"));
19
+ var _getStatusBarHeight = _interopRequireDefault(require("../utils/getStatusBarHeight"));
17
20
  var _HeaderHeightContext = _interopRequireDefault(require("../utils/HeaderHeightContext"));
18
21
  var _AnimatedHeaderHeightContext = _interopRequireDefault(require("../utils/AnimatedHeaderHeightContext"));
19
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
21
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
22
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /*
22
+ var _FooterComponent = _interopRequireDefault(require("./FooterComponent"));
23
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
24
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
25
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /*
23
26
  * Portions of this file are copyright (c) 2023 Amazon.com, Inc. or its affiliates. All rights reserved.
24
27
  *
25
28
  * PORTIONS OF THIS FILE ARE AMAZON PROPRIETARY/CONFIDENTIAL. USE IS SUBJECT TO LICENSE TERMS.
@@ -28,20 +31,23 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
28
31
  */ /*
29
32
  * Changelog:
30
33
  * Set up react-native-screens package to build for Kepler
31
- */ // @ts-ignore Getting private component
32
- // eslint-disable-next-line import/no-named-as-default, import/default, import/no-named-as-default-member, import/namespace
34
+ */ /* eslint-disable camelcase */ // amznmod_react - add support for react 19
35
+ // @ts-ignore Getting private component
33
36
  const isAndroid = _reactNative.Platform.OS === 'android';
34
- let Container = _reactNative.View;
37
+ // amznmod_react - add isKepler flag
38
+ // @ts-ignore
39
+ const isKepler = _reactNative.Platform.OS === 'kepler';
40
+ let Container = _ScreenContentWrapper.default;
35
41
  if (__DEV__) {
36
42
  const DebugContainer = props => {
37
43
  const {
38
44
  stackPresentation,
39
45
  ...rest
40
46
  } = props;
41
- if (_reactNative.Platform.OS === 'ios' && stackPresentation !== 'push') {
42
- return /*#__PURE__*/React.createElement(_AppContainer.default, null, /*#__PURE__*/React.createElement(_reactNative.View, rest));
47
+ if (_reactNative.Platform.OS === 'ios' && stackPresentation !== 'push' && stackPresentation !== 'formSheet') {
48
+ return /*#__PURE__*/React.createElement(_AppContainer.default, null, /*#__PURE__*/React.createElement(_ScreenContentWrapper.default, rest));
43
49
  }
44
- return /*#__PURE__*/React.createElement(_reactNative.View, rest);
50
+ return /*#__PURE__*/React.createElement(_ScreenContentWrapper.default, rest);
45
51
  };
46
52
  // @ts-ignore Wrong props
47
53
  Container = DebugContainer;
@@ -50,9 +56,9 @@ const MaybeNestedStack = ({
50
56
  options,
51
57
  route,
52
58
  stackPresentation,
53
- children
59
+ children,
60
+ internalScreenStyle
54
61
  }) => {
55
- var _options$statusBarTra, _options$headerLargeT;
56
62
  const {
57
63
  colors
58
64
  } = (0, _reactNavigation__native.useTheme)();
@@ -60,15 +66,17 @@ const MaybeNestedStack = ({
60
66
  headerShown = true,
61
67
  contentStyle
62
68
  } = options;
63
- const Screen = React.useContext(_reactNativeScreens.ScreenContext);
64
- const isHeaderInModal = isAndroid ? false : stackPresentation !== 'push' && headerShown === true;
69
+ const Screen = React.useContext(_Screen.ScreenContext);
70
+
71
+ // amznmod_react - return false for Modal on kepler because native component is not implemented yet
72
+ const isHeaderInModal = isAndroid || isKepler ? false : stackPresentation !== 'push' && headerShown === true;
65
73
  const headerShownPreviousRef = React.useRef(headerShown);
66
74
  React.useEffect(() => {
67
75
  (0, _warnOnce.default)(!isAndroid && stackPresentation !== 'push' && headerShownPreviousRef.current !== headerShown, `Dynamically changing 'headerShown' in modals will result in remounting the screen and losing all local state. See options for the screen '${route.name}'.`);
68
76
  headerShownPreviousRef.current = headerShown;
69
77
  }, [headerShown, stackPresentation, route.name]);
70
78
  const content = /*#__PURE__*/React.createElement(Container, {
71
- style: [styles.container, stackPresentation !== 'transparentModal' && stackPresentation !== 'containedTransparentModal' && {
79
+ style: [stackPresentation === 'formSheet' ? _reactNative.Platform.OS === 'ios' ? styles.absoluteFillNoBottom : null : styles.container, stackPresentation !== 'transparentModal' && stackPresentation !== 'containedTransparentModal' && {
72
80
  backgroundColor: colors.background
73
81
  }, contentStyle]
74
82
  // @ts-ignore Wrong props passed to View
@@ -82,17 +90,18 @@ const MaybeNestedStack = ({
82
90
  }, children);
83
91
  const dimensions = (0, _reactNativeSafeAreaContext.useSafeAreaFrame)();
84
92
  const topInset = (0, _reactNativeSafeAreaContext.useSafeAreaInsets)().top;
85
- const isStatusBarTranslucent = (_options$statusBarTra = options.statusBarTranslucent) !== null && _options$statusBarTra !== void 0 ? _options$statusBarTra : false;
86
- const statusBarHeight = getStatusBarHeight(topInset, dimensions, isStatusBarTranslucent);
87
- const isLargeHeader = (_options$headerLargeT = options.headerLargeTitle) !== null && _options$headerLargeT !== void 0 ? _options$headerLargeT : false;
88
- const headerHeight = (0, _getDefaultHeaderHeight.default)(dimensions, statusBarHeight, stackPresentation, isLargeHeader);
93
+ const isStatusBarTranslucent = options.statusBarTranslucent ?? false;
94
+ const statusBarHeight = (0, _getStatusBarHeight.default)(topInset, dimensions, isStatusBarTranslucent);
95
+ const hasLargeHeader = options.headerLargeTitle ?? false;
96
+ const headerHeight = (0, _getDefaultHeaderHeight.default)(dimensions, statusBarHeight, stackPresentation, hasLargeHeader);
89
97
  if (isHeaderInModal) {
90
- return /*#__PURE__*/React.createElement(_reactNativeScreens.ScreenStack, {
98
+ return /*#__PURE__*/React.createElement(_ScreenStack.default, {
91
99
  style: styles.container
92
100
  }, /*#__PURE__*/React.createElement(Screen, {
93
101
  enabled: true,
94
102
  isNativeStack: true,
95
- style: _reactNative.StyleSheet.absoluteFill
103
+ hasLargeHeader: hasLargeHeader,
104
+ style: [_reactNative.StyleSheet.absoluteFill, internalScreenStyle]
96
105
  }, /*#__PURE__*/React.createElement(_HeaderHeightContext.default.Provider, {
97
106
  value: headerHeight
98
107
  }, /*#__PURE__*/React.createElement(_HeaderConfig.default, _extends({}, options, {
@@ -106,25 +115,28 @@ const RouteView = ({
106
115
  route,
107
116
  index,
108
117
  navigation,
109
- stateKey
118
+ stateKey,
119
+ screensRefs
110
120
  }) => {
111
- var _options$statusBarTra2, _options$headerLargeT2;
112
121
  const {
113
122
  options,
114
123
  render: renderScene
115
124
  } = descriptors[route.key];
116
125
  const {
126
+ fullScreenSwipeShadowEnabled = true,
117
127
  gestureEnabled,
118
128
  headerShown,
119
129
  hideKeyboardOnSwipe,
120
130
  homeIndicatorHidden,
121
- sheetAllowedDetents = 'large',
122
- sheetLargestUndimmedDetent = 'all',
131
+ sheetLargestUndimmedDetentIndex = 'none',
123
132
  sheetGrabberVisible = false,
124
133
  sheetCornerRadius = -1.0,
134
+ sheetElevation = 24,
125
135
  sheetExpandsWhenScrolledToEdge = true,
136
+ sheetInitialDetentIndex = 0,
126
137
  nativeBackButtonDismissalEnabled = false,
127
138
  navigationBarColor,
139
+ navigationBarTranslucent,
128
140
  navigationBarHidden,
129
141
  replaceAnimation = 'pop',
130
142
  screenOrientation,
@@ -135,15 +147,32 @@ const RouteView = ({
135
147
  statusBarTranslucent,
136
148
  swipeDirection = 'horizontal',
137
149
  transitionDuration,
138
- freezeOnBlur
150
+ freezeOnBlur,
151
+ unstable_sheetFooter = null,
152
+ contentStyle
139
153
  } = options;
140
154
  let {
155
+ sheetAllowedDetents = [1.0],
141
156
  customAnimationOnSwipe,
142
157
  fullScreenSwipeEnabled,
143
158
  gestureResponseDistance,
144
159
  stackAnimation,
145
160
  stackPresentation = 'push'
146
161
  } = options;
162
+
163
+ // We take backgroundColor from contentStyle and apply it on Screen.
164
+ // This allows to workaround one issue with truncated
165
+ // content with formSheet presentation.
166
+ let internalScreenStyle;
167
+ if (stackPresentation === 'formSheet' && contentStyle) {
168
+ const flattenContentStyles = _reactNative.StyleSheet.flatten(contentStyle);
169
+ internalScreenStyle = {
170
+ backgroundColor: flattenContentStyles?.backgroundColor
171
+ };
172
+ }
173
+ if (sheetAllowedDetents === 'fitToContents') {
174
+ sheetAllowedDetents = [-1];
175
+ }
147
176
  if (swipeDirection === 'vertical') {
148
177
  // for `vertical` direction to work, we need to set `fullScreenSwipeEnabled` to `true`
149
178
  // so the screen can be dismissed from any point on screen.
@@ -167,47 +196,62 @@ const RouteView = ({
167
196
  }
168
197
  const dimensions = (0, _reactNativeSafeAreaContext.useSafeAreaFrame)();
169
198
  const topInset = (0, _reactNativeSafeAreaContext.useSafeAreaInsets)().top;
170
- const isStatusBarTranslucent = (_options$statusBarTra2 = options.statusBarTranslucent) !== null && _options$statusBarTra2 !== void 0 ? _options$statusBarTra2 : false;
171
- const statusBarHeight = getStatusBarHeight(topInset, dimensions, isStatusBarTranslucent);
172
- const isLargeHeader = (_options$headerLargeT2 = options.headerLargeTitle) !== null && _options$headerLargeT2 !== void 0 ? _options$headerLargeT2 : false;
173
- const defaultHeaderHeight = (0, _getDefaultHeaderHeight.default)(dimensions, statusBarHeight, stackPresentation, isLargeHeader);
199
+ const isStatusBarTranslucent = options.statusBarTranslucent ?? false;
200
+ const statusBarHeight = (0, _getStatusBarHeight.default)(topInset, dimensions, isStatusBarTranslucent);
201
+ const hasLargeHeader = options.headerLargeTitle ?? false;
202
+ const defaultHeaderHeight = (0, _getDefaultHeaderHeight.default)(dimensions, statusBarHeight, stackPresentation, hasLargeHeader);
174
203
  const parentHeaderHeight = React.useContext(_HeaderHeightContext.default);
175
204
  const isHeaderInPush = isAndroid ? headerShown : stackPresentation === 'push' && headerShown !== false;
176
- const staticHeaderHeight = isHeaderInPush !== false ? defaultHeaderHeight : parentHeaderHeight !== null && parentHeaderHeight !== void 0 ? parentHeaderHeight : 0;
205
+ const staticHeaderHeight = isHeaderInPush !== false ? defaultHeaderHeight : parentHeaderHeight ?? 0;
177
206
 
178
207
  // We need to ensure the first retrieved header height will be cached and set in animatedHeaderHeight.
179
208
  // We're caching the header height here, as on iOS native side events are not always coming to the JS on first notify.
180
209
  // TODO: Check why first event is not being received once it is cached on the native side.
181
- const cachedAnimatedHeaderHeight = React.useRef(statusBarHeight);
210
+ const cachedAnimatedHeaderHeight = React.useRef(defaultHeaderHeight);
182
211
  const animatedHeaderHeight = React.useRef(
183
212
  // amznmod_react - change imports to kepler packages
184
213
  // @ts-ignore
185
214
  new _reactNative.Animated.Value(staticHeaderHeight, {
186
215
  useNativeDriver: true
187
216
  })).current;
188
- const Screen = React.useContext(_reactNativeScreens.ScreenContext);
217
+ const Screen = React.useContext(_Screen.ScreenContext);
189
218
  const {
190
219
  dark
191
220
  } = (0, _reactNavigation__native.useTheme)();
221
+ // amznmod_react - add support for react 19
222
+ const screenRef = React.useRef(null);
223
+ React.useEffect(() => {
224
+ screensRefs.current[route.key] = screenRef;
225
+ return () => {
226
+ // eslint-disable-next-line @typescript-eslint/no-dynamic-delete
227
+ delete screensRefs.current[route.key];
228
+ };
229
+ });
192
230
  return /*#__PURE__*/React.createElement(Screen, {
193
231
  key: route.key,
232
+ ref: screenRef,
194
233
  enabled: true,
195
234
  isNativeStack: true,
196
- style: _reactNative.StyleSheet.absoluteFill,
235
+ hasLargeHeader: hasLargeHeader,
236
+ style: [_reactNative.StyleSheet.absoluteFill, internalScreenStyle],
197
237
  sheetAllowedDetents: sheetAllowedDetents,
198
- sheetLargestUndimmedDetent: sheetLargestUndimmedDetent,
238
+ sheetLargestUndimmedDetentIndex: sheetLargestUndimmedDetentIndex,
199
239
  sheetGrabberVisible: sheetGrabberVisible,
240
+ sheetInitialDetentIndex: sheetInitialDetentIndex,
200
241
  sheetCornerRadius: sheetCornerRadius,
242
+ sheetElevation: sheetElevation,
201
243
  sheetExpandsWhenScrolledToEdge: sheetExpandsWhenScrolledToEdge,
202
244
  customAnimationOnSwipe: customAnimationOnSwipe,
203
245
  freezeOnBlur: freezeOnBlur,
204
246
  fullScreenSwipeEnabled: fullScreenSwipeEnabled,
247
+ fullScreenSwipeShadowEnabled: fullScreenSwipeShadowEnabled,
205
248
  hideKeyboardOnSwipe: hideKeyboardOnSwipe,
206
249
  homeIndicatorHidden: homeIndicatorHidden,
207
250
  gestureEnabled: isAndroid ? false : gestureEnabled,
208
251
  gestureResponseDistance: gestureResponseDistance,
209
252
  nativeBackButtonDismissalEnabled: nativeBackButtonDismissalEnabled,
210
253
  navigationBarColor: navigationBarColor,
254
+ navigationBarTranslucent: navigationBarTranslucent,
211
255
  navigationBarHidden: navigationBarHidden,
212
256
  replaceAnimation: replaceAnimation,
213
257
  screenOrientation: screenOrientation,
@@ -216,7 +260,7 @@ const RouteView = ({
216
260
  statusBarAnimation: statusBarAnimation,
217
261
  statusBarColor: statusBarColor,
218
262
  statusBarHidden: statusBarHidden,
219
- statusBarStyle: statusBarStyle !== null && statusBarStyle !== void 0 ? statusBarStyle : dark ? 'light' : 'dark',
263
+ statusBarStyle: statusBarStyle ?? (dark ? 'light' : 'dark'),
220
264
  statusBarTranslucent: statusBarTranslucent,
221
265
  swipeDirection: swipeDirection,
222
266
  transitionDuration: transitionDuration,
@@ -290,6 +334,16 @@ const RouteView = ({
290
334
  target: stateKey
291
335
  });
292
336
  },
337
+ onSheetDetentChanged: e => {
338
+ navigation.emit({
339
+ type: 'sheetDetentChange',
340
+ target: route.key,
341
+ data: {
342
+ index: e.nativeEvent.index,
343
+ isStable: e.nativeEvent.isStable
344
+ }
345
+ });
346
+ },
293
347
  onGestureCancel: () => {
294
348
  navigation.emit({
295
349
  type: 'gestureCancel',
@@ -303,52 +357,66 @@ const RouteView = ({
303
357
  }, /*#__PURE__*/React.createElement(MaybeNestedStack, {
304
358
  options: options,
305
359
  route: route,
306
- stackPresentation: stackPresentation
360
+ stackPresentation: stackPresentation,
361
+ internalScreenStyle: internalScreenStyle
307
362
  }, renderScene()), /*#__PURE__*/React.createElement(_HeaderConfig.default, _extends({}, options, {
308
363
  route: route,
309
364
  headerShown: isHeaderInPush
310
- })))));
365
+ })), stackPresentation === 'formSheet' && unstable_sheetFooter && /*#__PURE__*/React.createElement(_FooterComponent.default, null, unstable_sheetFooter()))));
311
366
  };
312
367
  function NativeStackViewInner({
313
368
  state,
314
369
  navigation,
315
370
  descriptors
371
+ // amznmod_react - add support for react 19
316
372
  }) {
317
373
  const {
318
374
  key,
319
375
  routes
320
376
  } = state;
321
- return /*#__PURE__*/React.createElement(_reactNativeScreens.ScreenStack, {
322
- style: styles.container
377
+ const currentRouteKey = routes[state.index].key;
378
+ const {
379
+ goBackGesture,
380
+ transitionAnimation,
381
+ screenEdgeGesture
382
+ } = descriptors[currentRouteKey].options;
383
+ const screensRefs = React.useRef({});
384
+ return /*#__PURE__*/React.createElement(_ScreenStack.default, {
385
+ style: styles.container,
386
+ goBackGesture: goBackGesture,
387
+ transitionAnimation: transitionAnimation,
388
+ screenEdgeGesture: screenEdgeGesture ?? false,
389
+ screensRefs: screensRefs,
390
+ currentScreenId: currentRouteKey
323
391
  }, routes.map((route, index) => /*#__PURE__*/React.createElement(RouteView, {
324
392
  key: route.key,
325
393
  descriptors: descriptors,
326
394
  route: route,
327
395
  index: index,
328
396
  navigation: navigation,
329
- stateKey: key
397
+ stateKey: key,
398
+ screensRefs: screensRefs
330
399
  })));
331
400
  }
332
401
  function NativeStackView(props) {
333
402
  return /*#__PURE__*/React.createElement(_SafeAreaProviderCompat.default, null, /*#__PURE__*/React.createElement(NativeStackViewInner, props));
334
403
  }
335
- function getStatusBarHeight(topInset, dimensions, isStatusBarTranslucent) {
336
- if (_reactNative.Platform.OS === 'ios') {
337
- // It looks like some iOS devices don't have strictly set status bar height to 44.
338
- // Thus, if the top inset is higher than 50, then the device should have a dynamic island.
339
- // On models with Dynamic Island the status bar height is smaller than the safe area top inset by 5 pixels.
340
- // See https://developer.apple.com/forums/thread/662466 for more details about status bar height.
341
- const hasDynamicIsland = topInset > 50;
342
- return hasDynamicIsland ? topInset - 5 : topInset;
343
- } else if (_reactNative.Platform.OS === 'android') {
344
- // On Android we should also rely on frame's y-axis position, as topInset is 0 on visible status bar.
345
- return isStatusBarTranslucent ? topInset : dimensions.y;
346
- }
347
- return topInset;
348
- }
349
404
  const styles = _reactNative.StyleSheet.create({
350
405
  container: {
351
406
  flex: 1
407
+ },
408
+ absoluteFill: {
409
+ position: 'absolute',
410
+ top: 0,
411
+ left: 0,
412
+ right: 0,
413
+ bottom: 0
414
+ },
415
+ absoluteFillNoBottom: {
416
+ position: 'absolute',
417
+ top: 0,
418
+ left: 0,
419
+ right: 0
352
420
  }
353
421
  });
354
422
  //# sourceMappingURL=NativeStackView.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_AppContainer","_interopRequireDefault","_warnOnce","_reactNativeScreens","_reactNavigation__native","_reactNativeSafeAreaContext","_HeaderConfig","_SafeAreaProviderCompat","_getDefaultHeaderHeight","_HeaderHeightContext","_AnimatedHeaderHeightContext","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","isAndroid","Platform","OS","Container","View","__DEV__","DebugContainer","props","stackPresentation","rest","createElement","MaybeNestedStack","options","route","children","_options$statusBarTra","_options$headerLargeT","colors","useTheme","headerShown","contentStyle","Screen","useContext","ScreenContext","isHeaderInModal","headerShownPreviousRef","useRef","useEffect","warnOnce","current","name","content","style","styles","container","backgroundColor","background","collapsable","dimensions","useSafeAreaFrame","topInset","useSafeAreaInsets","top","isStatusBarTranslucent","statusBarTranslucent","statusBarHeight","getStatusBarHeight","isLargeHeader","headerLargeTitle","headerHeight","getDefaultHeaderHeight","ScreenStack","enabled","isNativeStack","StyleSheet","absoluteFill","Provider","value","RouteView","descriptors","index","navigation","stateKey","_options$statusBarTra2","_options$headerLargeT2","render","renderScene","gestureEnabled","hideKeyboardOnSwipe","homeIndicatorHidden","sheetAllowedDetents","sheetLargestUndimmedDetent","sheetGrabberVisible","sheetCornerRadius","sheetExpandsWhenScrolledToEdge","nativeBackButtonDismissalEnabled","navigationBarColor","navigationBarHidden","replaceAnimation","screenOrientation","statusBarAnimation","statusBarColor","statusBarHidden","statusBarStyle","swipeDirection","transitionDuration","freezeOnBlur","customAnimationOnSwipe","fullScreenSwipeEnabled","gestureResponseDistance","stackAnimation","undefined","defaultHeaderHeight","parentHeaderHeight","HeaderHeightContext","isHeaderInPush","staticHeaderHeight","cachedAnimatedHeaderHeight","animatedHeaderHeight","Animated","Value","useNativeDriver","dark","onHeaderBackButtonClicked","dispatch","StackActions","pop","onWillAppear","emit","type","data","closing","onWillDisappear","onAppear","onDisappear","onHeaderHeightChange","nativeEvent","setValue","onDismissed","dismissCount","onGestureCancel","NativeStackViewInner","state","routes","map","NativeStackView","hasDynamicIsland","y","create","flex"],"sources":["NativeStackView.tsx"],"sourcesContent":["/*\n * Portions of this file are copyright (c) 2023 Amazon.com, Inc. or its affiliates. All rights reserved.\n *\n * PORTIONS OF THIS FILE ARE AMAZON PROPRIETARY/CONFIDENTIAL. USE IS SUBJECT TO LICENSE TERMS.\n *\n * Amazon modifications are indicated by [amznmod_* comments].\n */\n\n/*\n * Changelog:\n * Set up react-native-screens package to build for Kepler\n */\n\nimport * as React from 'react';\nimport { Animated, Platform, StyleSheet, View, ViewProps } from 'react-native';\n// @ts-ignore Getting private component\n// eslint-disable-next-line import/no-named-as-default, import/default, import/no-named-as-default-member, import/namespace\nimport AppContainer from 'react-native/Libraries/ReactNative/AppContainer';\nimport warnOnce from 'warn-once';\nimport {\n ScreenStack,\n StackPresentationTypes,\n ScreenContext,\n} from '@amazon-devices/react-native-screens';\nimport {\n ParamListBase,\n StackActions,\n StackNavigationState,\n useTheme,\n Route,\n NavigationState,\n PartialState,\n// amznmod_react - change imports to kepler packages\n} from '@amazon-devices/react-navigation__native';\nimport {\n Rect,\n useSafeAreaFrame,\n useSafeAreaInsets,\n// amznmod_react - change imports to kepler packages\n} from '@amazon-devices/react-native-safe-area-context';\nimport {\n NativeStackDescriptorMap,\n NativeStackNavigationHelpers,\n NativeStackNavigationOptions,\n} from '../types';\nimport HeaderConfig from './HeaderConfig';\nimport SafeAreaProviderCompat from '../utils/SafeAreaProviderCompat';\nimport getDefaultHeaderHeight from '../utils/getDefaultHeaderHeight';\nimport HeaderHeightContext from '../utils/HeaderHeightContext';\nimport AnimatedHeaderHeightContext from '../utils/AnimatedHeaderHeightContext';\n\nconst isAndroid = Platform.OS === 'android';\n\nlet Container = View;\n\nif (__DEV__) {\n const DebugContainer = (\n props: ViewProps & { stackPresentation: StackPresentationTypes }\n ) => {\n const { stackPresentation, ...rest } = props;\n if (Platform.OS === 'ios' && stackPresentation !== 'push') {\n return (\n <AppContainer>\n <View {...rest} />\n </AppContainer>\n );\n }\n return <View {...rest} />;\n };\n // @ts-ignore Wrong props\n Container = DebugContainer;\n}\n\nconst MaybeNestedStack = ({\n options,\n route,\n stackPresentation,\n children,\n}: {\n options: NativeStackNavigationOptions;\n route: Route<string>;\n stackPresentation: StackPresentationTypes;\n children: React.ReactNode;\n}) => {\n const { colors } = useTheme();\n const { headerShown = true, contentStyle } = options;\n\n const Screen = React.useContext(ScreenContext);\n\n const isHeaderInModal = isAndroid\n ? false\n : stackPresentation !== 'push' && headerShown === true;\n\n const headerShownPreviousRef = React.useRef(headerShown);\n\n React.useEffect(() => {\n warnOnce(\n !isAndroid &&\n stackPresentation !== 'push' &&\n headerShownPreviousRef.current !== headerShown,\n `Dynamically changing 'headerShown' in modals will result in remounting the screen and losing all local state. See options for the screen '${route.name}'.`\n );\n\n headerShownPreviousRef.current = headerShown;\n }, [headerShown, stackPresentation, route.name]);\n\n const content = (\n <Container\n style={[\n styles.container,\n stackPresentation !== 'transparentModal' &&\n stackPresentation !== 'containedTransparentModal' && {\n backgroundColor: colors.background,\n },\n contentStyle,\n ]}\n // @ts-ignore Wrong props passed to View\n stackPresentation={stackPresentation}\n // This view must *not* be flattened.\n // See https://github.com/software-mansion/react-native-screens/pull/1825\n // for detailed explanation.\n collapsable={false}>\n {children}\n </Container>\n );\n\n const dimensions = useSafeAreaFrame();\n const topInset = useSafeAreaInsets().top;\n const isStatusBarTranslucent = options.statusBarTranslucent ?? false;\n const statusBarHeight = getStatusBarHeight(\n topInset,\n dimensions,\n isStatusBarTranslucent\n );\n\n const isLargeHeader = options.headerLargeTitle ?? false;\n\n const headerHeight = getDefaultHeaderHeight(\n dimensions,\n statusBarHeight,\n stackPresentation,\n isLargeHeader\n );\n\n if (isHeaderInModal) {\n return (\n <ScreenStack style={styles.container}>\n <Screen enabled isNativeStack style={StyleSheet.absoluteFill}>\n <HeaderHeightContext.Provider value={headerHeight}>\n <HeaderConfig {...options} route={route} />\n {content}\n </HeaderHeightContext.Provider>\n </Screen>\n </ScreenStack>\n );\n }\n return content;\n};\n\ntype NavigationRoute<\n ParamList extends ParamListBase,\n RouteName extends keyof ParamList\n> = Route<Extract<RouteName, string>, ParamList[RouteName]> & {\n state?: NavigationState | PartialState<NavigationState>;\n};\n\nconst RouteView = ({\n descriptors,\n route,\n index,\n navigation,\n stateKey,\n}: {\n descriptors: NativeStackDescriptorMap;\n route: NavigationRoute<ParamListBase, string>;\n index: number;\n navigation: NativeStackNavigationHelpers;\n stateKey: string;\n}) => {\n const { options, render: renderScene } = descriptors[route.key];\n const {\n gestureEnabled,\n headerShown,\n hideKeyboardOnSwipe,\n homeIndicatorHidden,\n sheetAllowedDetents = 'large',\n sheetLargestUndimmedDetent = 'all',\n sheetGrabberVisible = false,\n sheetCornerRadius = -1.0,\n sheetExpandsWhenScrolledToEdge = true,\n nativeBackButtonDismissalEnabled = false,\n navigationBarColor,\n navigationBarHidden,\n replaceAnimation = 'pop',\n screenOrientation,\n statusBarAnimation,\n statusBarColor,\n statusBarHidden,\n statusBarStyle,\n statusBarTranslucent,\n swipeDirection = 'horizontal',\n transitionDuration,\n freezeOnBlur,\n } = options;\n\n let {\n customAnimationOnSwipe,\n fullScreenSwipeEnabled,\n gestureResponseDistance,\n stackAnimation,\n stackPresentation = 'push',\n } = options;\n\n if (swipeDirection === 'vertical') {\n // for `vertical` direction to work, we need to set `fullScreenSwipeEnabled` to `true`\n // so the screen can be dismissed from any point on screen.\n // `customAnimationOnSwipe` needs to be set to `true` so the `stackAnimation` set by user can be used,\n // otherwise `simple_push` will be used.\n // Also, the default animation for this direction seems to be `slide_from_bottom`.\n if (fullScreenSwipeEnabled === undefined) {\n fullScreenSwipeEnabled = true;\n }\n if (customAnimationOnSwipe === undefined) {\n customAnimationOnSwipe = true;\n }\n if (stackAnimation === undefined) {\n stackAnimation = 'slide_from_bottom';\n }\n }\n\n if (index === 0) {\n // first screen should always be treated as `push`, it resolves problems with no header animation\n // for navigator with first screen as `modal` and the next as `push`\n stackPresentation = 'push';\n }\n\n const dimensions = useSafeAreaFrame();\n const topInset = useSafeAreaInsets().top;\n const isStatusBarTranslucent = options.statusBarTranslucent ?? false;\n const statusBarHeight = getStatusBarHeight(\n topInset,\n dimensions,\n isStatusBarTranslucent\n );\n\n const isLargeHeader = options.headerLargeTitle ?? false;\n\n const defaultHeaderHeight = getDefaultHeaderHeight(\n dimensions,\n statusBarHeight,\n stackPresentation,\n isLargeHeader\n );\n\n const parentHeaderHeight = React.useContext(HeaderHeightContext);\n const isHeaderInPush = isAndroid\n ? headerShown\n : stackPresentation === 'push' && headerShown !== false;\n\n const staticHeaderHeight =\n isHeaderInPush !== false ? defaultHeaderHeight : parentHeaderHeight ?? 0;\n\n // We need to ensure the first retrieved header height will be cached and set in animatedHeaderHeight.\n // We're caching the header height here, as on iOS native side events are not always coming to the JS on first notify.\n // TODO: Check why first event is not being received once it is cached on the native side.\n const cachedAnimatedHeaderHeight = React.useRef(statusBarHeight);\n const animatedHeaderHeight = React.useRef(\n // amznmod_react - change imports to kepler packages\n // @ts-ignore\n new Animated.Value(staticHeaderHeight, {\n useNativeDriver: true,\n })\n ).current;\n\n const Screen = React.useContext(ScreenContext);\n\n const { dark } = useTheme();\n\n return (\n <Screen\n key={route.key}\n enabled\n isNativeStack\n style={StyleSheet.absoluteFill}\n sheetAllowedDetents={sheetAllowedDetents}\n sheetLargestUndimmedDetent={sheetLargestUndimmedDetent}\n sheetGrabberVisible={sheetGrabberVisible}\n sheetCornerRadius={sheetCornerRadius}\n sheetExpandsWhenScrolledToEdge={sheetExpandsWhenScrolledToEdge}\n customAnimationOnSwipe={customAnimationOnSwipe}\n freezeOnBlur={freezeOnBlur}\n fullScreenSwipeEnabled={fullScreenSwipeEnabled}\n hideKeyboardOnSwipe={hideKeyboardOnSwipe}\n homeIndicatorHidden={homeIndicatorHidden}\n gestureEnabled={isAndroid ? false : gestureEnabled}\n gestureResponseDistance={gestureResponseDistance}\n nativeBackButtonDismissalEnabled={nativeBackButtonDismissalEnabled}\n navigationBarColor={navigationBarColor}\n navigationBarHidden={navigationBarHidden}\n replaceAnimation={replaceAnimation}\n screenOrientation={screenOrientation}\n stackAnimation={stackAnimation}\n stackPresentation={stackPresentation}\n statusBarAnimation={statusBarAnimation}\n statusBarColor={statusBarColor}\n statusBarHidden={statusBarHidden}\n statusBarStyle={statusBarStyle ?? (dark ? 'light' : 'dark')}\n statusBarTranslucent={statusBarTranslucent}\n swipeDirection={swipeDirection}\n transitionDuration={transitionDuration}\n onHeaderBackButtonClicked={() => {\n navigation.dispatch({\n ...StackActions.pop(),\n source: route.key,\n target: stateKey,\n });\n }}\n onWillAppear={() => {\n navigation.emit({\n type: 'transitionStart',\n data: { closing: false },\n target: route.key,\n });\n }}\n onWillDisappear={() => {\n navigation.emit({\n type: 'transitionStart',\n data: { closing: true },\n target: route.key,\n });\n }}\n onAppear={() => {\n navigation.emit({\n type: 'appear',\n target: route.key,\n });\n navigation.emit({\n type: 'transitionEnd',\n data: { closing: false },\n target: route.key,\n });\n }}\n onDisappear={() => {\n navigation.emit({\n type: 'transitionEnd',\n data: { closing: true },\n target: route.key,\n });\n }}\n onHeaderHeightChange={e => {\n const headerHeight = e.nativeEvent.headerHeight;\n\n if (cachedAnimatedHeaderHeight.current !== headerHeight) {\n // Currently, we're setting value by Animated#setValue, because we want to cache animated value.\n // Also, in React Native 0.72 there was a bug on Fabric causing a large delay between the screen transition,\n // which should not occur.\n // TODO: Check if it's possible to replace animated#setValue to Animated#event.\n animatedHeaderHeight.setValue(headerHeight);\n cachedAnimatedHeaderHeight.current = headerHeight;\n }\n }}\n onDismissed={e => {\n navigation.emit({\n type: 'dismiss',\n target: route.key,\n });\n\n const dismissCount =\n e.nativeEvent.dismissCount > 0 ? e.nativeEvent.dismissCount : 1;\n\n navigation.dispatch({\n ...StackActions.pop(dismissCount),\n source: route.key,\n target: stateKey,\n });\n }}\n onGestureCancel={() => {\n navigation.emit({\n type: 'gestureCancel',\n target: route.key,\n });\n }}>\n <AnimatedHeaderHeightContext.Provider value={animatedHeaderHeight}>\n <HeaderHeightContext.Provider value={staticHeaderHeight}>\n <MaybeNestedStack\n options={options}\n route={route}\n stackPresentation={stackPresentation}>\n {renderScene()}\n </MaybeNestedStack>\n {/* HeaderConfig must not be first child of a Screen.\n See https://github.com/software-mansion/react-native-screens/pull/1825\n for detailed explanation */}\n <HeaderConfig\n {...options}\n route={route}\n headerShown={isHeaderInPush}\n />\n </HeaderHeightContext.Provider>\n </AnimatedHeaderHeightContext.Provider>\n </Screen>\n );\n};\n\ntype Props = {\n state: StackNavigationState<ParamListBase>;\n navigation: NativeStackNavigationHelpers;\n descriptors: NativeStackDescriptorMap;\n};\n\nfunction NativeStackViewInner({\n state,\n navigation,\n descriptors,\n}: Props): JSX.Element {\n const { key, routes } = state;\n\n return (\n <ScreenStack style={styles.container}>\n {routes.map((route, index) => (\n <RouteView\n key={route.key}\n descriptors={descriptors}\n route={route}\n index={index}\n navigation={navigation}\n stateKey={key}\n />\n ))}\n </ScreenStack>\n );\n}\n\nexport default function NativeStackView(props: Props) {\n return (\n <SafeAreaProviderCompat>\n <NativeStackViewInner {...props} />\n </SafeAreaProviderCompat>\n );\n}\n\nfunction getStatusBarHeight(\n topInset: number,\n dimensions: Rect,\n isStatusBarTranslucent: boolean\n) {\n if (Platform.OS === 'ios') {\n // It looks like some iOS devices don't have strictly set status bar height to 44.\n // Thus, if the top inset is higher than 50, then the device should have a dynamic island.\n // On models with Dynamic Island the status bar height is smaller than the safe area top inset by 5 pixels.\n // See https://developer.apple.com/forums/thread/662466 for more details about status bar height.\n const hasDynamicIsland = topInset > 50;\n return hasDynamicIsland ? topInset - 5 : topInset;\n } else if (Platform.OS === 'android') {\n // On Android we should also rely on frame's y-axis position, as topInset is 0 on visible status bar.\n return isStatusBarTranslucent ? topInset : dimensions.y;\n }\n\n return topInset;\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_AppContainer","_interopRequireDefault","_warnOnce","_ScreenStack","_ScreenContentWrapper","_Screen","_reactNavigation__native","_reactNativeSafeAreaContext","_HeaderConfig","_SafeAreaProviderCompat","_getDefaultHeaderHeight","_getStatusBarHeight","_HeaderHeightContext","_AnimatedHeaderHeightContext","_FooterComponent","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","isAndroid","Platform","OS","isKepler","Container","ScreenContentWrapper","__DEV__","DebugContainer","props","stackPresentation","rest","createElement","MaybeNestedStack","options","route","children","internalScreenStyle","colors","useTheme","headerShown","contentStyle","Screen","useContext","ScreenContext","isHeaderInModal","headerShownPreviousRef","useRef","useEffect","warnOnce","current","name","content","style","styles","absoluteFillNoBottom","container","backgroundColor","background","collapsable","dimensions","useSafeAreaFrame","topInset","useSafeAreaInsets","top","isStatusBarTranslucent","statusBarTranslucent","statusBarHeight","getStatusBarHeight","hasLargeHeader","headerLargeTitle","headerHeight","getDefaultHeaderHeight","enabled","isNativeStack","StyleSheet","absoluteFill","Provider","value","RouteView","descriptors","index","navigation","stateKey","screensRefs","render","renderScene","key","fullScreenSwipeShadowEnabled","gestureEnabled","hideKeyboardOnSwipe","homeIndicatorHidden","sheetLargestUndimmedDetentIndex","sheetGrabberVisible","sheetCornerRadius","sheetElevation","sheetExpandsWhenScrolledToEdge","sheetInitialDetentIndex","nativeBackButtonDismissalEnabled","navigationBarColor","navigationBarTranslucent","navigationBarHidden","replaceAnimation","screenOrientation","statusBarAnimation","statusBarColor","statusBarHidden","statusBarStyle","swipeDirection","transitionDuration","freezeOnBlur","unstable_sheetFooter","sheetAllowedDetents","customAnimationOnSwipe","fullScreenSwipeEnabled","gestureResponseDistance","stackAnimation","flattenContentStyles","flatten","undefined","defaultHeaderHeight","parentHeaderHeight","HeaderHeightContext","isHeaderInPush","staticHeaderHeight","cachedAnimatedHeaderHeight","animatedHeaderHeight","Animated","Value","useNativeDriver","dark","screenRef","ref","onHeaderBackButtonClicked","dispatch","StackActions","pop","source","target","onWillAppear","emit","type","data","closing","onWillDisappear","onAppear","onDisappear","onHeaderHeightChange","nativeEvent","setValue","onDismissed","dismissCount","onSheetDetentChanged","isStable","onGestureCancel","NativeStackViewInner","state","routes","currentRouteKey","goBackGesture","transitionAnimation","screenEdgeGesture","currentScreenId","map","NativeStackView","create","flex","position","left","right","bottom"],"sourceRoot":"../../../../src","sources":["native-stack/views/NativeStackView.tsx"],"mappings":"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","ignoreList":[]}
@@ -5,8 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var React = _interopRequireWildcard(require("react"));
8
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
9
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
8
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
10
9
  // @ts-ignore file to be used only if `react-native-reanimated` available in the project
11
10
  var _default = exports.default = /*#__PURE__*/React.createContext(undefined);
12
11
  //# sourceMappingURL=ReanimatedHeaderHeightContext.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_default","exports","createContext","undefined"],"sources":["ReanimatedHeaderHeightContext.tsx"],"sourcesContent":["import * as React from 'react';\n// @ts-ignore file to be used only if `react-native-reanimated` available in the project\nimport Animated from 'react-native-reanimated';\n\nexport default React.createContext<Animated.SharedValue<number> | undefined>(\n undefined\n);\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAA+B,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAC/B;AAAA,IAAAY,QAAA,GAAAC,OAAA,CAAAhB,OAAA,gBAGeT,KAAK,CAAC0B,aAAa,CAChCC,SACF,CAAC"}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_default","exports","createContext","undefined"],"sourceRoot":"../../../src","sources":["reanimated/ReanimatedHeaderHeightContext.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAA+B,SAAAD,wBAAAE,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAJ,uBAAA,YAAAA,CAAAE,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAC/B;AAAA,IAAAkB,QAAA,GAAAC,OAAA,CAAAV,OAAA,gBAGeb,KAAK,CAACwB,aAAa,CAChCC,SACF,CAAC","ignoreList":[]}
@@ -6,55 +6,48 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _reactNative = require("react-native");
9
- var _reactNativeScreens = require("@amazon-devices/react-native-screens");
9
+ var _Screen = require("../components/Screen");
10
10
  var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
11
11
  var _ReanimatedTransitionProgressContext = _interopRequireDefault(require("./ReanimatedTransitionProgressContext"));
12
12
  var _reactNativeSafeAreaContext = require("@amazon-devices/react-native-safe-area-context");
13
13
  var _getDefaultHeaderHeight = _interopRequireDefault(require("../native-stack/utils/getDefaultHeaderHeight"));
14
+ var _getStatusBarHeight = _interopRequireDefault(require("../native-stack/utils/getStatusBarHeight"));
14
15
  var _ReanimatedHeaderHeightContext = _interopRequireDefault(require("./ReanimatedHeaderHeightContext"));
15
- var _global;
16
- /*
16
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
17
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /*
17
19
  * Portions of this file are copyright (c) 2023 Amazon.com, Inc. or its affiliates. All rights reserved.
18
20
  *
19
21
  * PORTIONS OF THIS FILE ARE AMAZON PROPRIETARY/CONFIDENTIAL. USE IS SUBJECT TO LICENSE TERMS.
20
22
  *
21
23
  * Amazon modifications are indicated by [amznmod_* comments].
22
- */
23
- /*
24
+ */ /*
24
25
  * Changelog:
25
26
  * Set up react-native-screens package to build for Kepler
26
- */
27
- // @ts-ignore file to be used only if `react-native-reanimated` available in the project
28
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
29
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
30
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
32
- const AnimatedScreen = _reactNativeReanimated.default.createAnimatedComponent(_reactNativeScreens.InnerScreen);
27
+ */ // @ts-ignore file to be used only if `react-native-reanimated` available in the project
28
+ const AnimatedScreen = _reactNativeReanimated.default.createAnimatedComponent(_Screen.InnerScreen);
33
29
 
34
30
  // We use prop added to global by reanimated since it seems safer than the one from RN. See:
35
31
  // https://github.com/software-mansion/react-native-reanimated/blob/3fe8b35b05e82b2f2aefda1fb97799cf81e4b7bb/src/reanimated2/UpdateProps.ts#L46
36
32
  // @ts-expect-error nativeFabricUIManager is not yet included in the RN types
37
- const ENABLE_FABRIC = !!((_global = global) !== null && _global !== void 0 && _global._IS_FABRIC);
33
+ const ENABLE_FABRIC = !!global?._IS_FABRIC;
38
34
  const ReanimatedNativeStackScreen = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
39
35
  const {
40
36
  children,
41
37
  ...rest
42
38
  } = props;
43
39
  const {
44
- stackPresentation = 'push'
40
+ stackPresentation = 'push',
41
+ hasLargeHeader
45
42
  } = rest;
46
43
  const dimensions = (0, _reactNativeSafeAreaContext.useSafeAreaFrame)();
47
44
  const topInset = (0, _reactNativeSafeAreaContext.useSafeAreaInsets)().top;
48
- let statusBarHeight = topInset;
49
- const hasDynamicIsland = _reactNative.Platform.OS === 'ios' && topInset === 59;
50
- if (hasDynamicIsland) {
51
- // On models with Dynamic Island the status bar height is smaller than the safe area top inset.
52
- statusBarHeight = 54;
53
- }
45
+ const isStatusBarTranslucent = rest.statusBarTranslucent ?? false;
46
+ const statusBarHeight = (0, _getStatusBarHeight.default)(topInset, dimensions, isStatusBarTranslucent);
54
47
 
55
48
  // Default header height, normally used in `useHeaderHeight` hook.
56
49
  // Here, it is used for returning a default value for shared value.
57
- const defaultHeaderHeight = (0, _getDefaultHeaderHeight.default)(dimensions, statusBarHeight, stackPresentation);
50
+ const defaultHeaderHeight = (0, _getDefaultHeaderHeight.default)(dimensions, statusBarHeight, stackPresentation, hasLargeHeader);
58
51
  const cachedHeaderHeight = _react.default.useRef(defaultHeaderHeight);
59
52
  const headerHeight = (0, _reactNativeReanimated.useSharedValue)(defaultHeaderHeight);
60
53
  const progress = (0, _reactNativeReanimated.useSharedValue)(0);