@amazon-devices/react-native-screens 3.0.9000000000 → 3.0.9000000003

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 (274) hide show
  1. package/SystemModules/amzn__react-native-screens-3.private.modules.txt +116 -61
  2. package/kepler-compatibility.json +5 -2
  3. package/lib/commonjs/TransitionProgressContext.js.map +1 -1
  4. package/lib/commonjs/components/DebugContainer.js.map +1 -1
  5. package/lib/commonjs/components/DebugContainer.web.js.map +1 -1
  6. package/lib/commonjs/components/Screen.web.js.map +1 -1
  7. package/lib/commonjs/components/ScreenStackHeaderConfig.js.map +1 -1
  8. package/lib/commonjs/components/ScreenStackHeaderConfig.web.js.map +1 -1
  9. package/lib/commonjs/components/ScreenStackItem.js.map +1 -1
  10. package/lib/commonjs/components/SearchBar.js.map +1 -1
  11. package/lib/commonjs/components/helpers/usePrevious.js.map +1 -1
  12. package/lib/commonjs/gesture-handler/ScreenGestureDetector.js.map +1 -1
  13. package/lib/commonjs/index.js +0 -210
  14. package/lib/commonjs/index.js.map +1 -1
  15. package/lib/commonjs/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
  16. package/lib/commonjs/native-stack/utils/AnimatedHeaderHeightContext.js.map +1 -1
  17. package/lib/commonjs/native-stack/utils/HeaderHeightContext.js.map +1 -1
  18. package/lib/commonjs/native-stack/utils/SafeAreaProviderCompat.js.map +1 -1
  19. package/lib/commonjs/native-stack/utils/useAnimatedHeaderHeight.js.map +1 -1
  20. package/lib/commonjs/native-stack/utils/useBackPressSubscription.js.map +1 -1
  21. package/lib/commonjs/native-stack/utils/useHeaderHeight.js.map +1 -1
  22. package/lib/commonjs/native-stack/views/HeaderConfig.js.map +1 -1
  23. package/lib/commonjs/native-stack/views/NativeStackView.js.map +1 -1
  24. package/lib/commonjs/reanimated/ReanimatedHeaderHeightContext.js.map +1 -1
  25. package/lib/commonjs/reanimated/ReanimatedNativeStackScreen.js.map +1 -1
  26. package/lib/commonjs/reanimated/ReanimatedTransitionProgressContext.js.map +1 -1
  27. package/lib/commonjs/reanimated/useReanimatedHeaderHeight.js.map +1 -1
  28. package/lib/commonjs/reanimated/useReanimatedTransitionProgress.js.map +1 -1
  29. package/lib/commonjs/useTransitionProgress.js.map +1 -1
  30. package/lib/module/components/Screen.web.js.map +1 -1
  31. package/lib/module/components/ScreenStackHeaderConfig.js.map +1 -1
  32. package/lib/module/components/ScreenStackHeaderConfig.web.js.map +1 -1
  33. package/lib/module/components/SearchBar.js.map +1 -1
  34. package/lib/module/components/helpers/usePrevious.js.map +1 -1
  35. package/lib/module/native-stack/utils/useBackPressSubscription.js.map +1 -1
  36. package/lib/module/native-stack/views/HeaderConfig.js.map +1 -1
  37. package/lib/module/native-stack/views/NativeStackView.js.map +1 -1
  38. package/lib/typescript/components/Screen.web.d.ts +1 -1
  39. package/lib/typescript/components/Screen.web.d.ts.map +1 -1
  40. package/lib/typescript/components/ScreenStackHeaderConfig.d.ts +5 -5
  41. package/lib/typescript/components/ScreenStackHeaderConfig.d.ts.map +1 -1
  42. package/lib/typescript/components/ScreenStackHeaderConfig.web.d.ts +6 -6
  43. package/lib/typescript/components/ScreenStackHeaderConfig.web.d.ts.map +1 -1
  44. package/lib/typescript/components/SearchBar.d.ts.map +1 -1
  45. package/lib/typescript/components/helpers/usePrevious.d.ts.map +1 -1
  46. package/lib/typescript/native-stack/utils/useBackPressSubscription.d.ts.map +1 -1
  47. package/lib/typescript/native-stack/views/HeaderConfig.d.ts +2 -2
  48. package/lib/typescript/native-stack/views/HeaderConfig.d.ts.map +1 -1
  49. package/lib/typescript/native-stack/views/NativeStackView.d.ts.map +1 -1
  50. package/lib/typescript/types.d.ts +2 -2
  51. package/lib/typescript/types.d.ts.map +1 -1
  52. package/oss-attribution/attribution.txt +77 -0
  53. package/oss-attribution/licenseInfos.json +27 -0
  54. package/package.json +1 -1
  55. package/src/index.tsx +0 -55
  56. package/SystemBundles/31d5b6b69618249f6233b73a1de7c4d890c86be7ccb031ce7cf2dcc41783f9f7.bundle +0 -45301
  57. package/SystemBundles/31d5b6b69618249f6233b73a1de7c4d890c86be7ccb031ce7cf2dcc41783f9f7.map +0 -13711
  58. package/lib/commonjs/TransitionProgressContext.js +0 -12
  59. package/lib/commonjs/components/DebugContainer.js +0 -39
  60. package/lib/commonjs/components/DebugContainer.web.js +0 -15
  61. package/lib/commonjs/components/FullWindowOverlay.js +0 -31
  62. package/lib/commonjs/components/FullWindowOverlay.web.js +0 -9
  63. package/lib/commonjs/components/Screen.js +0 -286
  64. package/lib/commonjs/components/Screen.web.js +0 -47
  65. package/lib/commonjs/components/ScreenContainer.js +0 -32
  66. package/lib/commonjs/components/ScreenContainer.web.js +0 -10
  67. package/lib/commonjs/components/ScreenContentWrapper.js +0 -17
  68. package/lib/commonjs/components/ScreenContentWrapper.web.js +0 -10
  69. package/lib/commonjs/components/ScreenFooter.js +0 -25
  70. package/lib/commonjs/components/ScreenFooter.web.js +0 -11
  71. package/lib/commonjs/components/ScreenStack.js +0 -67
  72. package/lib/commonjs/components/ScreenStack.web.js +0 -10
  73. package/lib/commonjs/components/ScreenStackHeaderConfig.js +0 -90
  74. package/lib/commonjs/components/ScreenStackHeaderConfig.web.js +0 -27
  75. package/lib/commonjs/components/ScreenStackItem.js +0 -107
  76. package/lib/commonjs/components/SearchBar.js +0 -63
  77. package/lib/commonjs/components/SearchBar.web.js +0 -10
  78. package/lib/commonjs/components/helpers/DelayedFreeze.js +0 -31
  79. package/lib/commonjs/components/helpers/usePrevious.js +0 -15
  80. package/lib/commonjs/contexts.js +0 -11
  81. package/lib/commonjs/core.js +0 -40
  82. package/lib/commonjs/fabric/FullWindowOverlayNativeComponent.js +0 -26
  83. package/lib/commonjs/fabric/ModalScreenNativeComponent.js +0 -14
  84. package/lib/commonjs/fabric/NativeScreensModule.js +0 -10
  85. package/lib/commonjs/fabric/NativeScreensModule.web.js +0 -8
  86. package/lib/commonjs/fabric/ScreenContainerNativeComponent.js +0 -30
  87. package/lib/commonjs/fabric/ScreenContentWrapperNativeComponent.js +0 -18
  88. package/lib/commonjs/fabric/ScreenFooterNativeComponent.js +0 -10
  89. package/lib/commonjs/fabric/ScreenNativeComponent.js +0 -70
  90. package/lib/commonjs/fabric/ScreenNavigationContainerNativeComponent.js +0 -12
  91. package/lib/commonjs/fabric/ScreenStackHeaderConfigNativeComponent.js +0 -32
  92. package/lib/commonjs/fabric/ScreenStackHeaderSubviewNativeComponent.js +0 -15
  93. package/lib/commonjs/fabric/ScreenStackNativeComponent.js +0 -32
  94. package/lib/commonjs/fabric/SearchBarNativeComponent.js +0 -18
  95. package/lib/commonjs/gesture-handler/GestureDetectorProvider.js +0 -19
  96. package/lib/commonjs/gesture-handler/RNScreensTurboModule.js +0 -8
  97. package/lib/commonjs/gesture-handler/ScreenGestureDetector.js +0 -201
  98. package/lib/commonjs/gesture-handler/constraints.js +0 -64
  99. package/lib/commonjs/gesture-handler/defaults.js +0 -45
  100. package/lib/commonjs/gesture-handler/fabricUtils.js +0 -66
  101. package/lib/commonjs/gesture-handler/fabricUtils.web.js +0 -17
  102. package/lib/commonjs/gesture-handler/index.js +0 -14
  103. package/lib/commonjs/native-stack/contexts/GHContext.js +0 -12
  104. package/lib/commonjs/native-stack/index.js +0 -49
  105. package/lib/commonjs/native-stack/navigators/createNativeStackNavigator.js +0 -76
  106. package/lib/commonjs/native-stack/types.js +0 -6
  107. package/lib/commonjs/native-stack/utils/AnimatedHeaderHeightContext.js +0 -12
  108. package/lib/commonjs/native-stack/utils/HeaderHeightContext.js +0 -12
  109. package/lib/commonjs/native-stack/utils/SafeAreaProviderCompat.js +0 -75
  110. package/lib/commonjs/native-stack/utils/getDefaultHeaderHeight.js +0 -35
  111. package/lib/commonjs/native-stack/utils/getStatusBarHeight.js +0 -22
  112. package/lib/commonjs/native-stack/utils/useAnimatedHeaderHeight.js +0 -19
  113. package/lib/commonjs/native-stack/utils/useBackPressSubscription.js +0 -52
  114. package/lib/commonjs/native-stack/utils/useHeaderHeight.js +0 -19
  115. package/lib/commonjs/native-stack/views/FontProcessor.js +0 -19
  116. package/lib/commonjs/native-stack/views/FooterComponent.js +0 -17
  117. package/lib/commonjs/native-stack/views/HeaderConfig.js +0 -149
  118. package/lib/commonjs/native-stack/views/NativeStackView.js +0 -420
  119. package/lib/commonjs/reanimated/ReanimatedHeaderHeightContext.js +0 -12
  120. package/lib/commonjs/reanimated/ReanimatedNativeStackScreen.js +0 -95
  121. package/lib/commonjs/reanimated/ReanimatedScreen.js +0 -22
  122. package/lib/commonjs/reanimated/ReanimatedScreenProvider.js +0 -39
  123. package/lib/commonjs/reanimated/ReanimatedTransitionProgressContext.js +0 -12
  124. package/lib/commonjs/reanimated/index.js +0 -28
  125. package/lib/commonjs/reanimated/useReanimatedHeaderHeight.js +0 -19
  126. package/lib/commonjs/reanimated/useReanimatedTransitionProgress.js +0 -19
  127. package/lib/commonjs/types.js +0 -6
  128. package/lib/commonjs/useTransitionProgress.js +0 -19
  129. package/lib/commonjs/utils.js +0 -43
  130. package/lib/module/TransitionProgressContext.js +0 -5
  131. package/lib/module/components/DebugContainer.js +0 -30
  132. package/lib/module/components/DebugContainer.web.js +0 -6
  133. package/lib/module/components/FullWindowOverlay.js +0 -24
  134. package/lib/module/components/FullWindowOverlay.web.js +0 -3
  135. package/lib/module/components/Screen.js +0 -282
  136. package/lib/module/components/Screen.web.js +0 -40
  137. package/lib/module/components/ScreenContainer.js +0 -26
  138. package/lib/module/components/ScreenContainer.web.js +0 -4
  139. package/lib/module/components/ScreenContentWrapper.js +0 -10
  140. package/lib/module/components/ScreenContentWrapper.web.js +0 -4
  141. package/lib/module/components/ScreenFooter.js +0 -18
  142. package/lib/module/components/ScreenFooter.web.js +0 -6
  143. package/lib/module/components/ScreenStack.js +0 -63
  144. package/lib/module/components/ScreenStack.web.js +0 -4
  145. package/lib/module/components/ScreenStackHeaderConfig.js +0 -81
  146. package/lib/module/components/ScreenStackHeaderConfig.web.js +0 -14
  147. package/lib/module/components/ScreenStackItem.js +0 -98
  148. package/lib/module/components/SearchBar.js +0 -57
  149. package/lib/module/components/SearchBar.web.js +0 -4
  150. package/lib/module/components/helpers/DelayedFreeze.js +0 -24
  151. package/lib/module/components/helpers/usePrevious.js +0 -9
  152. package/lib/module/contexts.js +0 -4
  153. package/lib/module/core.js +0 -31
  154. package/lib/module/fabric/FullWindowOverlayNativeComponent.js +0 -20
  155. package/lib/module/fabric/ModalScreenNativeComponent.js +0 -10
  156. package/lib/module/fabric/NativeScreensModule.js +0 -5
  157. package/lib/module/fabric/NativeScreensModule.web.js +0 -2
  158. package/lib/module/fabric/ScreenContainerNativeComponent.js +0 -24
  159. package/lib/module/fabric/ScreenContentWrapperNativeComponent.js +0 -10
  160. package/lib/module/fabric/ScreenFooterNativeComponent.js +0 -3
  161. package/lib/module/fabric/ScreenNativeComponent.js +0 -66
  162. package/lib/module/fabric/ScreenNavigationContainerNativeComponent.js +0 -6
  163. package/lib/module/fabric/ScreenStackHeaderConfigNativeComponent.js +0 -29
  164. package/lib/module/fabric/ScreenStackHeaderSubviewNativeComponent.js +0 -11
  165. package/lib/module/fabric/ScreenStackNativeComponent.js +0 -28
  166. package/lib/module/fabric/SearchBarNativeComponent.js +0 -12
  167. package/lib/module/gesture-handler/GestureDetectorProvider.js +0 -12
  168. package/lib/module/gesture-handler/RNScreensTurboModule.js +0 -2
  169. package/lib/module/gesture-handler/ScreenGestureDetector.js +0 -193
  170. package/lib/module/gesture-handler/constraints.js +0 -56
  171. package/lib/module/gesture-handler/defaults.js +0 -39
  172. package/lib/module/gesture-handler/fabricUtils.js +0 -61
  173. package/lib/module/gesture-handler/fabricUtils.web.js +0 -10
  174. package/lib/module/gesture-handler/index.js +0 -5
  175. package/lib/module/index.js +0 -33
  176. package/lib/module/native-stack/contexts/GHContext.js +0 -6
  177. package/lib/module/native-stack/index.js +0 -22
  178. package/lib/module/native-stack/navigators/createNativeStackNavigator.js +0 -73
  179. package/lib/module/native-stack/types.js +0 -2
  180. package/lib/module/native-stack/utils/AnimatedHeaderHeightContext.js +0 -4
  181. package/lib/module/native-stack/utils/HeaderHeightContext.js +0 -4
  182. package/lib/module/native-stack/utils/SafeAreaProviderCompat.js +0 -68
  183. package/lib/module/native-stack/utils/getDefaultHeaderHeight.js +0 -29
  184. package/lib/module/native-stack/utils/getStatusBarHeight.js +0 -16
  185. package/lib/module/native-stack/utils/useAnimatedHeaderHeight.js +0 -10
  186. package/lib/module/native-stack/utils/useBackPressSubscription.js +0 -45
  187. package/lib/module/native-stack/utils/useHeaderHeight.js +0 -10
  188. package/lib/module/native-stack/views/FontProcessor.js +0 -12
  189. package/lib/module/native-stack/views/FooterComponent.js +0 -10
  190. package/lib/module/native-stack/views/HeaderConfig.js +0 -139
  191. package/lib/module/native-stack/views/NativeStackView.js +0 -423
  192. package/lib/module/reanimated/ReanimatedHeaderHeightContext.js +0 -5
  193. package/lib/module/reanimated/ReanimatedNativeStackScreen.js +0 -93
  194. package/lib/module/reanimated/ReanimatedScreen.js +0 -16
  195. package/lib/module/reanimated/ReanimatedScreenProvider.js +0 -32
  196. package/lib/module/reanimated/ReanimatedTransitionProgressContext.js +0 -5
  197. package/lib/module/reanimated/index.js +0 -4
  198. package/lib/module/reanimated/useReanimatedHeaderHeight.js +0 -10
  199. package/lib/module/reanimated/useReanimatedTransitionProgress.js +0 -10
  200. package/lib/module/types.js +0 -2
  201. package/lib/module/useTransitionProgress.js +0 -10
  202. package/lib/module/utils.js +0 -35
  203. package/src/TransitionProgressContext.tsx +0 -14
  204. package/src/components/DebugContainer.tsx +0 -46
  205. package/src/components/DebugContainer.web.tsx +0 -7
  206. package/src/components/FullWindowOverlay.tsx +0 -33
  207. package/src/components/FullWindowOverlay.web.tsx +0 -6
  208. package/src/components/Screen.tsx +0 -392
  209. package/src/components/Screen.web.tsx +0 -46
  210. package/src/components/ScreenContainer.tsx +0 -28
  211. package/src/components/ScreenContainer.web.tsx +0 -5
  212. package/src/components/ScreenContentWrapper.tsx +0 -9
  213. package/src/components/ScreenContentWrapper.web.tsx +0 -5
  214. package/src/components/ScreenFooter.tsx +0 -20
  215. package/src/components/ScreenFooter.web.tsx +0 -7
  216. package/src/components/ScreenStack.tsx +0 -112
  217. package/src/components/ScreenStack.web.tsx +0 -5
  218. package/src/components/ScreenStackHeaderConfig.tsx +0 -122
  219. package/src/components/ScreenStackHeaderConfig.web.tsx +0 -39
  220. package/src/components/ScreenStackItem.tsx +0 -174
  221. package/src/components/SearchBar.tsx +0 -102
  222. package/src/components/SearchBar.web.tsx +0 -5
  223. package/src/components/helpers/DelayedFreeze.tsx +0 -27
  224. package/src/components/helpers/usePrevious.tsx +0 -11
  225. package/src/contexts.tsx +0 -9
  226. package/src/core.ts +0 -45
  227. package/src/fabric/FullWindowOverlayNativeComponent.ts +0 -23
  228. package/src/fabric/ModalScreenNativeComponent.ts +0 -115
  229. package/src/fabric/NativeScreensModule.ts +0 -8
  230. package/src/fabric/NativeScreensModule.web.ts +0 -1
  231. package/src/fabric/ScreenContainerNativeComponent.ts +0 -28
  232. package/src/fabric/ScreenContentWrapperNativeComponent.ts +0 -14
  233. package/src/fabric/ScreenFooterNativeComponent.ts +0 -6
  234. package/src/fabric/ScreenNativeComponent.ts +0 -171
  235. package/src/fabric/ScreenNavigationContainerNativeComponent.ts +0 -12
  236. package/src/fabric/ScreenStackHeaderConfigNativeComponent.ts +0 -97
  237. package/src/fabric/ScreenStackHeaderSubviewNativeComponent.ts +0 -26
  238. package/src/fabric/ScreenStackNativeComponent.ts +0 -34
  239. package/src/fabric/SearchBarNativeComponent.ts +0 -83
  240. package/src/gesture-handler/GestureDetectorProvider.tsx +0 -16
  241. package/src/gesture-handler/RNScreensTurboModule.ts +0 -13
  242. package/src/gesture-handler/ScreenGestureDetector.tsx +0 -241
  243. package/src/gesture-handler/constraints.ts +0 -87
  244. package/src/gesture-handler/defaults.ts +0 -46
  245. package/src/gesture-handler/fabricUtils.ts +0 -86
  246. package/src/gesture-handler/fabricUtils.web.ts +0 -10
  247. package/src/gesture-handler/index.tsx +0 -4
  248. package/src/native-stack/contexts/GHContext.tsx +0 -9
  249. package/src/native-stack/index.tsx +0 -27
  250. package/src/native-stack/navigators/createNativeStackNavigator.tsx +0 -110
  251. package/src/native-stack/types.tsx +0 -659
  252. package/src/native-stack/utils/AnimatedHeaderHeightContext.tsx +0 -8
  253. package/src/native-stack/utils/HeaderHeightContext.tsx +0 -5
  254. package/src/native-stack/utils/SafeAreaProviderCompat.tsx +0 -78
  255. package/src/native-stack/utils/getDefaultHeaderHeight.tsx +0 -41
  256. package/src/native-stack/utils/getStatusBarHeight.tsx +0 -22
  257. package/src/native-stack/utils/useAnimatedHeaderHeight.tsx +0 -15
  258. package/src/native-stack/utils/useBackPressSubscription.tsx +0 -66
  259. package/src/native-stack/utils/useHeaderHeight.tsx +0 -15
  260. package/src/native-stack/views/FontProcessor.tsx +0 -14
  261. package/src/native-stack/views/FooterComponent.tsx +0 -10
  262. package/src/native-stack/views/HeaderConfig.tsx +0 -202
  263. package/src/native-stack/views/NativeStackView.tsx +0 -550
  264. package/src/reanimated/ReanimatedHeaderHeightContext.tsx +0 -7
  265. package/src/reanimated/ReanimatedNativeStackScreen.tsx +0 -132
  266. package/src/reanimated/ReanimatedScreen.tsx +0 -26
  267. package/src/reanimated/ReanimatedScreenProvider.tsx +0 -43
  268. package/src/reanimated/ReanimatedTransitionProgressContext.tsx +0 -13
  269. package/src/reanimated/index.tsx +0 -3
  270. package/src/reanimated/useReanimatedHeaderHeight.tsx +0 -14
  271. package/src/reanimated/useReanimatedTransitionProgress.tsx +0 -14
  272. package/src/types.tsx +0 -869
  273. package/src/useTransitionProgress.tsx +0 -15
  274. package/src/utils.ts +0 -40
@@ -1,19 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = useReanimatedTransitionProgress;
7
- var React = _interopRequireWildcard(require("react"));
8
- var _ReanimatedTransitionProgressContext = _interopRequireDefault(require("./ReanimatedTransitionProgressContext"));
9
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
- 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); }
11
- 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 && {}.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; }
12
- function useReanimatedTransitionProgress() {
13
- const progress = React.useContext(_ReanimatedTransitionProgressContext.default);
14
- if (progress === undefined) {
15
- throw new Error("Couldn't find values for reanimated transition progress. Are you inside a screen in Native Stack?");
16
- }
17
- return progress;
18
- }
19
- //# sourceMappingURL=useReanimatedTransitionProgress.js.map
@@ -1,6 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- //# sourceMappingURL=types.js.map
@@ -1,19 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = useTransitionProgress;
7
- var React = _interopRequireWildcard(require("react"));
8
- var _TransitionProgressContext = _interopRequireDefault(require("./TransitionProgressContext"));
9
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
- 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); }
11
- 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 && {}.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; }
12
- function useTransitionProgress() {
13
- const progress = React.useContext(_TransitionProgressContext.default);
14
- if (progress === undefined) {
15
- throw new Error("Couldn't find values for transition progress. Are you inside a screen in Native Stack?");
16
- }
17
- return progress;
18
- }
19
- //# sourceMappingURL=useTransitionProgress.js.map
@@ -1,43 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.compatibilityFlags = void 0;
7
- exports.executeNativeBackPress = executeNativeBackPress;
8
- exports.isSearchBarAvailableForCurrentPlatform = void 0;
9
- var _reactNative = require("react-native");
10
- const isSearchBarAvailableForCurrentPlatform = exports.isSearchBarAvailableForCurrentPlatform = ['ios', 'android'].includes(_reactNative.Platform.OS);
11
- function executeNativeBackPress() {
12
- // This function invokes the native back press event
13
- _reactNative.BackHandler.exitApp();
14
- return true;
15
- }
16
-
17
- /**
18
- * Exposes information useful for downstream navigation library implementers,
19
- * so they can keep reasonable backward compatibility, if desired.
20
- *
21
- * We don't mean for this object to only grow in number of fields, however at the same time
22
- * we won't be very hasty to reduce it. Expect gradual changes.
23
- */
24
- const compatibilityFlags = exports.compatibilityFlags = {
25
- /**
26
- * Because of a bug introduced in https://github.com/software-mansion/react-native-screens/pull/1646
27
- * react-native-screens v3.21 changed how header's backTitle handles whitespace strings in https://github.com/software-mansion/react-native-screens/pull/1726
28
- * To allow for backwards compatibility in @react-navigation/native-stack we need a way to check if this version or newer is used.
29
- * See https://github.com/react-navigation/react-navigation/pull/11423 for more context.
30
- */
31
- isNewBackTitleImplementation: true,
32
- /**
33
- * With version 4.0.0 the header implementation has been changed. To allow for backward compat
34
- * with native-stack@v6 we want to expose a way to check whether the new implementation
35
- * is in use or not.
36
- *
37
- * See:
38
- * * https://github.com/software-mansion/react-native-screens/pull/2325
39
- * * https://github.com/react-navigation/react-navigation/pull/12125
40
- */
41
- usesHeaderFlexboxImplementation: true
42
- };
43
- //# sourceMappingURL=utils.js.map
@@ -1,5 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- export default /*#__PURE__*/React.createContext(undefined);
5
- //# sourceMappingURL=TransitionProgressContext.js.map
@@ -1,30 +0,0 @@
1
- import * as React from 'react';
2
- import { Platform } from 'react-native';
3
- // @ts-expect-error importing private component
4
-
5
- import AppContainer from 'react-native/Libraries/ReactNative/AppContainer';
6
- import ScreenContentWrapper from './ScreenContentWrapper';
7
- /**
8
- * This view must *not* be flattened.
9
- * See https://github.com/software-mansion/react-native-screens/pull/1825
10
- * for detailed explanation.
11
- */
12
- let DebugContainer = props => {
13
- return /*#__PURE__*/React.createElement(ScreenContentWrapper, props);
14
- };
15
- if (process.env.NODE_ENV !== 'production') {
16
- DebugContainer = props => {
17
- const {
18
- stackPresentation,
19
- ...rest
20
- } = props;
21
- if (Platform.OS === 'ios' && stackPresentation !== 'push' && stackPresentation !== 'formSheet') {
22
- // This is necessary for LogBox
23
- return /*#__PURE__*/React.createElement(AppContainer, null, /*#__PURE__*/React.createElement(ScreenContentWrapper, rest));
24
- }
25
- return /*#__PURE__*/React.createElement(ScreenContentWrapper, rest);
26
- };
27
- DebugContainer.displayName = 'DebugContainer';
28
- }
29
- export default DebugContainer;
30
- //# sourceMappingURL=DebugContainer.js.map
@@ -1,6 +0,0 @@
1
- import * as React from 'react';
2
- import ScreenContentWrapper from './ScreenContentWrapper';
3
- export default function DebugContainer(props) {
4
- return /*#__PURE__*/React.createElement(ScreenContentWrapper, props);
5
- }
6
- //# sourceMappingURL=DebugContainer.web.js.map
@@ -1,24 +0,0 @@
1
- import React from 'react';
2
- import { Platform, StyleSheet, View, useWindowDimensions } from 'react-native';
3
-
4
- // Native components
5
- import FullWindowOverlayNativeComponent from '../fabric/FullWindowOverlayNativeComponent';
6
- const NativeFullWindowOverlay = FullWindowOverlayNativeComponent;
7
- function FullWindowOverlay(props) {
8
- const {
9
- width,
10
- height
11
- } = useWindowDimensions();
12
- if (Platform.OS !== 'ios') {
13
- console.warn('Using FullWindowOverlay is only valid on iOS devices.');
14
- return /*#__PURE__*/React.createElement(View, props);
15
- }
16
- return /*#__PURE__*/React.createElement(NativeFullWindowOverlay, {
17
- style: [StyleSheet.absoluteFill, {
18
- width,
19
- height
20
- }]
21
- }, props.children);
22
- }
23
- export default FullWindowOverlay;
24
- //# sourceMappingURL=FullWindowOverlay.js.map
@@ -1,3 +0,0 @@
1
- import { View } from 'react-native';
2
- export default View;
3
- //# sourceMappingURL=FullWindowOverlay.web.js.map
@@ -1,282 +0,0 @@
1
- 'use client';
2
-
3
- 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); }
4
- import React from 'react';
5
- import { Animated, Platform } from 'react-native';
6
- import TransitionProgressContext from '../TransitionProgressContext';
7
- import DelayedFreeze from './helpers/DelayedFreeze';
8
- import { freezeEnabled, isNativePlatformSupported, screensEnabled } from '../core';
9
-
10
- // Native components
11
- import ScreenNativeComponent from '../fabric/ScreenNativeComponent';
12
- import ModalScreenNativeComponent from '../fabric/ModalScreenNativeComponent';
13
- import { usePrevious } from './helpers/usePrevious';
14
- const AnimatedNativeScreen = Animated.createAnimatedComponent(ScreenNativeComponent);
15
- const AnimatedNativeModalScreen = Animated.createAnimatedComponent(ModalScreenNativeComponent);
16
-
17
- // Incomplete type, all accessible properties available at:
18
- // react-native/Libraries/Components/View/ReactNativeViewViewConfig.js
19
-
20
- // This value must be kept in sync with native side.
21
- const SHEET_FIT_TO_CONTENTS = [-1];
22
- const SHEET_COMPAT_LARGE = [1.0];
23
- const SHEET_COMPAT_MEDIUM = [0.5];
24
- const SHEET_COMPAT_ALL = [0.5, 1.0];
25
- const SHEET_DIMMED_ALWAYS = -1;
26
- // const SHEET_DIMMED_NEVER = 9999;
27
-
28
- function assertDetentsArrayIsSorted(array) {
29
- for (let i = 1; i < array.length; i++) {
30
- if (array[i - 1] > array[i]) {
31
- throw new Error('[RNScreens] The detent array is not sorted in ascending order!');
32
- }
33
- }
34
- }
35
-
36
- // These exist to transform old 'legacy' values used by the formsheet API to the new API shape.
37
- // We can get rid of it, once we get rid of support for legacy values: 'large', 'medium', 'all'.
38
- function resolveSheetAllowedDetents(allowedDetentsCompat) {
39
- if (Array.isArray(allowedDetentsCompat)) {
40
- if (Platform.OS === 'android' && allowedDetentsCompat.length > 3) {
41
- if (__DEV__) {
42
- console.warn('[RNScreens] Sheets API on Android do accept only up to 3 values. Any surplus value are ignored.');
43
- }
44
- allowedDetentsCompat = allowedDetentsCompat.slice(0, 3);
45
- }
46
- if (__DEV__) {
47
- assertDetentsArrayIsSorted(allowedDetentsCompat);
48
- }
49
- return allowedDetentsCompat;
50
- } else if (allowedDetentsCompat === 'fitToContents') {
51
- return SHEET_FIT_TO_CONTENTS;
52
- } else if (allowedDetentsCompat === 'large') {
53
- return SHEET_COMPAT_LARGE;
54
- } else if (allowedDetentsCompat === 'medium') {
55
- return SHEET_COMPAT_MEDIUM;
56
- } else if (allowedDetentsCompat === 'all') {
57
- return SHEET_COMPAT_ALL;
58
- } else {
59
- // Safe default, only large detent is allowed.
60
- return [1.0];
61
- }
62
- }
63
- function resolveSheetLargestUndimmedDetent(lud, lastDetentIndex) {
64
- if (typeof lud === 'number') {
65
- if (!isIndexInClosedRange(lud, SHEET_DIMMED_ALWAYS, lastDetentIndex)) {
66
- if (__DEV__) {
67
- throw new Error("[RNScreens] Provided value of 'sheetLargestUndimmedDetentIndex' prop is out of bounds of 'sheetAllowedDetents' array.");
68
- }
69
- // Return default in production
70
- return SHEET_DIMMED_ALWAYS;
71
- }
72
- return lud;
73
- } else if (lud === 'last') {
74
- return lastDetentIndex;
75
- } else if (lud === 'none' || lud === 'all') {
76
- return SHEET_DIMMED_ALWAYS;
77
- } else if (lud === 'large') {
78
- return 1;
79
- } else if (lud === 'medium') {
80
- return 0;
81
- } else {
82
- // Safe default, every detent is dimmed
83
- return SHEET_DIMMED_ALWAYS;
84
- }
85
- }
86
- function resolveSheetInitialDetentIndex(index, lastDetentIndex) {
87
- if (index === 'last') {
88
- index = lastDetentIndex;
89
- } else if (index == null) {
90
- // Intentional check for undefined & null ^
91
- index = 0;
92
- }
93
- if (!isIndexInClosedRange(index, 0, lastDetentIndex)) {
94
- if (__DEV__) {
95
- throw new Error("[RNScreens] Provided value of 'sheetInitialDetentIndex' prop is out of bounds of 'sheetAllowedDetents' array.");
96
- }
97
- // Return default in production
98
- return 0;
99
- }
100
- return index;
101
- }
102
- function isIndexInClosedRange(value, lowerBound, upperBound) {
103
- return Number.isInteger(value) && value >= lowerBound && value <= upperBound;
104
- }
105
- export const InnerScreen = /*#__PURE__*/React.forwardRef(function InnerScreen(props, ref) {
106
- const innerRef = React.useRef(null);
107
- React.useImperativeHandle(ref, () => innerRef.current, []);
108
- const prevActivityState = usePrevious(props.activityState);
109
- const setRef = ref => {
110
- innerRef.current = ref;
111
- props.onComponentRef?.(ref);
112
- };
113
- const closing = React.useRef(new Animated.Value(0)).current;
114
- const progress = React.useRef(new Animated.Value(0)).current;
115
- const goingForward = React.useRef(new Animated.Value(0)).current;
116
- const {
117
- enabled = screensEnabled(),
118
- freezeOnBlur = freezeEnabled(),
119
- shouldFreeze,
120
- ...rest
121
- } = props;
122
-
123
- // To maintain default behavior of formSheet stack presentation style and to have reasonable
124
- // defaults for new medium-detent iOS API we need to set defaults here
125
- const {
126
- // formSheet presentation related props
127
- sheetAllowedDetents = [1.0],
128
- sheetLargestUndimmedDetentIndex = SHEET_DIMMED_ALWAYS,
129
- sheetGrabberVisible = false,
130
- sheetCornerRadius = -1.0,
131
- sheetExpandsWhenScrolledToEdge = true,
132
- sheetElevation = 24,
133
- sheetInitialDetentIndex = 0,
134
- // Other
135
- stackPresentation,
136
- // Events for override
137
- onAppear,
138
- onDisappear,
139
- onWillAppear,
140
- onWillDisappear
141
- } = rest;
142
- if (enabled && isNativePlatformSupported) {
143
- const resolvedSheetAllowedDetents = resolveSheetAllowedDetents(sheetAllowedDetents);
144
- const resolvedSheetLargestUndimmedDetent = resolveSheetLargestUndimmedDetent(sheetLargestUndimmedDetentIndex, resolvedSheetAllowedDetents.length - 1);
145
- const resolvedSheetInitialDetentIndex = resolveSheetInitialDetentIndex(sheetInitialDetentIndex, resolvedSheetAllowedDetents.length - 1);
146
- // Due to how Yoga resolves layout, we need to have different components for modal nad non-modal screens
147
- const AnimatedScreen = Platform.OS === 'android' ||
148
- // amznmod_react - disable NativeModalScreen on kepler because native component is not implemented yet
149
- // @ts-ignore
150
- Platform.OS === 'kepler' || stackPresentation === undefined || stackPresentation === 'push' || stackPresentation === 'containedModal' || stackPresentation === 'containedTransparentModal' ? AnimatedNativeScreen : AnimatedNativeModalScreen;
151
- let {
152
- // Filter out active prop in this case because it is unused and
153
- // can cause problems depending on react-native version:
154
- // https://github.com/react-navigation/react-navigation/issues/4886
155
- active,
156
- activityState,
157
- children,
158
- isNativeStack,
159
- gestureResponseDistance,
160
- onGestureCancel,
161
- style,
162
- ...props
163
- } = rest;
164
- if (active !== undefined && activityState === undefined) {
165
- console.warn('It appears that you are using old version of react-navigation library. Please update @react-navigation/bottom-tabs, @react-navigation/stack and @react-navigation/drawer to version 5.10.0 or above to take full advantage of new functionality added to react-native-screens');
166
- activityState = active !== 0 ? 2 : 0; // in the new version, we need one of the screens to have value of 2 after the transition
167
- }
168
- if (isNativeStack && prevActivityState !== undefined && activityState !== undefined) {
169
- if (prevActivityState > activityState) {
170
- throw new Error('[RNScreens] activityState cannot be decreased in NativeStack');
171
- }
172
- }
173
- const handleRef = ref => {
174
- if (ref?.viewConfig?.validAttributes?.style) {
175
- ref.viewConfig.validAttributes.style = {
176
- ...ref.viewConfig.validAttributes.style,
177
- display: false
178
- };
179
- setRef(ref);
180
- } else if (ref?._viewConfig?.validAttributes?.style) {
181
- ref._viewConfig.validAttributes.style = {
182
- ...ref._viewConfig.validAttributes.style,
183
- display: false
184
- };
185
- setRef(ref);
186
- }
187
- };
188
- const freeze = freezeOnBlur && (shouldFreeze !== undefined ? shouldFreeze : activityState === 0);
189
- return /*#__PURE__*/React.createElement(DelayedFreeze, {
190
- freeze: freeze
191
- }, /*#__PURE__*/React.createElement(AnimatedScreen, _extends({}, props, {
192
- /**
193
- * This messy override is to conform NativeProps used by codegen and
194
- * our Public API. To see reasoning go to this PR:
195
- * https://github.com/software-mansion/react-native-screens/pull/2423#discussion_r1810616995
196
- */
197
- onAppear: onAppear,
198
- onDisappear: onDisappear,
199
- onWillAppear: onWillAppear,
200
- onWillDisappear: onWillDisappear,
201
- onGestureCancel: onGestureCancel ?? (() => {
202
- // for internal use
203
- })
204
- //
205
- // Hierarchy of screens is handled on the native side and setting zIndex value causes this issue:
206
- // https://github.com/software-mansion/react-native-screens/issues/2345
207
- // With below change of zIndex, we force RN diffing mechanism to NOT include detaching and attaching mutation in one transaction.
208
- // Detailed information can be found here https://github.com/software-mansion/react-native-screens/pull/2351
209
- ,
210
- style: [style, {
211
- zIndex: undefined
212
- }],
213
- activityState: activityState,
214
- sheetAllowedDetents: resolvedSheetAllowedDetents,
215
- sheetLargestUndimmedDetent: resolvedSheetLargestUndimmedDetent,
216
- sheetElevation: sheetElevation,
217
- sheetGrabberVisible: sheetGrabberVisible,
218
- sheetCornerRadius: sheetCornerRadius,
219
- sheetExpandsWhenScrolledToEdge: sheetExpandsWhenScrolledToEdge,
220
- sheetInitialDetent: resolvedSheetInitialDetentIndex,
221
- gestureResponseDistance: {
222
- start: gestureResponseDistance?.start ?? -1,
223
- end: gestureResponseDistance?.end ?? -1,
224
- top: gestureResponseDistance?.top ?? -1,
225
- bottom: gestureResponseDistance?.bottom ?? -1
226
- }
227
- // This prevents showing blank screen when navigating between multiple screens with freezing
228
- // https://github.com/software-mansion/react-native-screens/pull/1208
229
- ,
230
- ref: handleRef,
231
- onTransitionProgress: !isNativeStack ? undefined : Animated.event([{
232
- nativeEvent: {
233
- progress,
234
- closing,
235
- goingForward
236
- }
237
- }], {
238
- useNativeDriver: true
239
- })
240
- }), !isNativeStack ?
241
- // see comment of this prop in types.tsx for information why it is needed
242
- children : /*#__PURE__*/React.createElement(TransitionProgressContext.Provider, {
243
- value: {
244
- progress,
245
- closing,
246
- goingForward
247
- }
248
- }, children)));
249
- } else {
250
- // same reason as above
251
- let {
252
- active,
253
- activityState,
254
- style,
255
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
256
- onComponentRef,
257
- ...props
258
- } = rest;
259
- if (active !== undefined && activityState === undefined) {
260
- activityState = active !== 0 ? 2 : 0;
261
- }
262
- return /*#__PURE__*/React.createElement(Animated.View, _extends({
263
- style: [style, {
264
- display: activityState !== 0 ? 'flex' : 'none'
265
- }],
266
- ref: setRef
267
- }, props));
268
- }
269
- });
270
-
271
- // context to be used when the user wants to use enhanced implementation
272
- // e.g. to use `useReanimatedTransitionProgress` (see `reanimated` folder in repo)
273
- export const ScreenContext = /*#__PURE__*/React.createContext(InnerScreen);
274
- const Screen = /*#__PURE__*/React.forwardRef((props, ref) => {
275
- const ScreenWrapper = React.useContext(ScreenContext) || InnerScreen;
276
- return /*#__PURE__*/React.createElement(ScreenWrapper, _extends({}, props, {
277
- ref: ref
278
- }));
279
- });
280
- Screen.displayName = 'Screen';
281
- export default Screen;
282
- //# sourceMappingURL=Screen.js.map
@@ -1,40 +0,0 @@
1
- 'use client';
2
-
3
- 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); }
4
- import { Animated, View } from 'react-native';
5
- import React from 'react';
6
- import { screensEnabled } from '../core';
7
- export const InnerScreen = View;
8
-
9
- // We're using class component here because of the error from reanimated:
10
- // createAnimatedComponent` does not support stateless functional components; use a class component instead.
11
- // NOTE: React Server Components do not support class components.
12
- export class NativeScreen extends React.Component {
13
- render() {
14
- let {
15
- active,
16
- activityState,
17
- style,
18
- enabled = screensEnabled(),
19
- ...rest
20
- } = this.props;
21
- if (enabled) {
22
- if (active !== undefined && activityState === undefined) {
23
- activityState = active !== 0 ? 2 : 0; // change taken from index.native.tsx
24
- }
25
- return /*#__PURE__*/React.createElement(View
26
- // @ts-expect-error: hidden exists on web, but not in React Native
27
- , _extends({
28
- hidden: activityState === 0,
29
- style: [style, {
30
- display: activityState !== 0 ? 'flex' : 'none'
31
- }]
32
- }, rest));
33
- }
34
- return /*#__PURE__*/React.createElement(View, rest);
35
- }
36
- }
37
- const Screen = Animated.createAnimatedComponent(NativeScreen);
38
- export const ScreenContext = /*#__PURE__*/React.createContext(Screen);
39
- export default Screen;
40
- //# sourceMappingURL=Screen.web.js.map
@@ -1,26 +0,0 @@
1
- 'use client';
2
-
3
- import { Platform, View } from 'react-native';
4
- import React from 'react';
5
- import { isNativePlatformSupported, screensEnabled } from '../core';
6
-
7
- // Native components
8
- import ScreenContainerNativeComponent from '../fabric/ScreenContainerNativeComponent';
9
- import ScreenNavigationContainerNativeComponent from '../fabric/ScreenNavigationContainerNativeComponent';
10
- function ScreenContainer(props) {
11
- const {
12
- enabled = screensEnabled(),
13
- hasTwoStates,
14
- ...rest
15
- } = props;
16
- if (enabled && isNativePlatformSupported) {
17
- if (hasTwoStates) {
18
- const ScreenNavigationContainer = Platform.OS === 'ios' ? ScreenNavigationContainerNativeComponent : ScreenContainerNativeComponent;
19
- return /*#__PURE__*/React.createElement(ScreenNavigationContainer, rest);
20
- }
21
- return /*#__PURE__*/React.createElement(ScreenContainerNativeComponent, rest);
22
- }
23
- return /*#__PURE__*/React.createElement(View, rest);
24
- }
25
- export default ScreenContainer;
26
- //# sourceMappingURL=ScreenContainer.js.map
@@ -1,4 +0,0 @@
1
- import { View } from 'react-native';
2
- const ScreenContainer = View;
3
- export default ScreenContainer;
4
- //# sourceMappingURL=ScreenContainer.web.js.map
@@ -1,10 +0,0 @@
1
- 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); }
2
- import React from 'react';
3
- import ScreenContentWrapperNativeComponent from '../fabric/ScreenContentWrapperNativeComponent';
4
- function ScreenContentWrapper(props) {
5
- return /*#__PURE__*/React.createElement(ScreenContentWrapperNativeComponent, _extends({
6
- collapsable: false
7
- }, props));
8
- }
9
- export default ScreenContentWrapper;
10
- //# sourceMappingURL=ScreenContentWrapper.js.map
@@ -1,4 +0,0 @@
1
- import { View } from 'react-native';
2
- const ScreenContentWrapper = View;
3
- export default ScreenContentWrapper;
4
- //# sourceMappingURL=ScreenContentWrapper.web.js.map
@@ -1,18 +0,0 @@
1
- import React from 'react';
2
- import ScreenFooterNativeComponent from '../fabric/ScreenFooterNativeComponent';
3
-
4
- /**
5
- * Unstable API
6
- */
7
- function ScreenFooter(props) {
8
- return /*#__PURE__*/React.createElement(ScreenFooterNativeComponent, props);
9
- }
10
- export function FooterComponent({
11
- children
12
- }) {
13
- return /*#__PURE__*/React.createElement(ScreenFooter, {
14
- collapsable: false
15
- }, children);
16
- }
17
- export default ScreenFooter;
18
- //# sourceMappingURL=ScreenFooter.js.map
@@ -1,6 +0,0 @@
1
- import { View } from 'react-native';
2
- const ScreenFooter = View;
3
- const FooterComponent = View;
4
- export default ScreenFooter;
5
- export { FooterComponent };
6
- //# sourceMappingURL=ScreenFooter.web.js.map
@@ -1,63 +0,0 @@
1
- 'use client';
2
-
3
- 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); }
4
- import React from 'react';
5
- import { GHContext, RNSScreensRefContext } from '../contexts';
6
- import warnOnce from 'warn-once';
7
-
8
- // Native components
9
- import ScreenStackNativeComponent from '../fabric/ScreenStackNativeComponent';
10
- const assertGHProvider = (ScreenGestureDetector, goBackGesture) => {
11
- const isGestureDetectorProviderNotDetected = ScreenGestureDetector.name !== 'GHWrapper' && goBackGesture !== undefined;
12
- warnOnce(isGestureDetectorProviderNotDetected, 'Cannot detect GestureDetectorProvider in a screen that uses `goBackGesture`. Make sure your navigator is wrapped in GestureDetectorProvider.');
13
- };
14
- const assertCustomScreenTransitionsProps = (screensRefs, currentScreenId, goBackGesture) => {
15
- const isGestureDetectorNotConfiguredProperly = goBackGesture !== undefined && screensRefs === null && currentScreenId === undefined;
16
- warnOnce(isGestureDetectorNotConfiguredProperly, 'Custom Screen Transition require screensRefs and currentScreenId to be provided.');
17
- };
18
- function ScreenStack(props) {
19
- const {
20
- goBackGesture,
21
- screensRefs: passedScreenRefs,
22
- // TODO: For compatibility with v5, remove once v5 is removed
23
- currentScreenId,
24
- transitionAnimation,
25
- screenEdgeGesture,
26
- onFinishTransitioning,
27
- children,
28
- ...rest
29
- } = props;
30
- const screensRefs = React.useRef(passedScreenRefs?.current ?? {});
31
- const ref = React.useRef(null);
32
- const ScreenGestureDetector = React.useContext(GHContext);
33
- const gestureDetectorBridge = React.useRef({
34
- stackUseEffectCallback: _stackRef => {
35
- // this method will be overriden in GestureDetector
36
- }
37
- });
38
- React.useEffect(() => {
39
- gestureDetectorBridge.current.stackUseEffectCallback(ref);
40
- });
41
- assertGHProvider(ScreenGestureDetector, goBackGesture);
42
- assertCustomScreenTransitionsProps(screensRefs, currentScreenId, goBackGesture);
43
- return /*#__PURE__*/React.createElement(RNSScreensRefContext.Provider, {
44
- value: screensRefs
45
- }, /*#__PURE__*/React.createElement(ScreenGestureDetector, {
46
- gestureDetectorBridge: gestureDetectorBridge,
47
- goBackGesture: goBackGesture,
48
- transitionAnimation: transitionAnimation,
49
- screenEdgeGesture: screenEdgeGesture ?? false,
50
- screensRefs: screensRefs,
51
- currentScreenId: currentScreenId
52
- }, /*#__PURE__*/React.createElement(ScreenStackNativeComponent, _extends({}, rest, {
53
- /**
54
- * This messy override is to conform NativeProps used by codegen and
55
- * our Public API. To see reasoning go to this PR:
56
- * https://github.com/software-mansion/react-native-screens/pull/2423#discussion_r1810616995
57
- */
58
- onFinishTransitioning: onFinishTransitioning,
59
- ref: ref
60
- }), children)));
61
- }
62
- export default ScreenStack;
63
- //# sourceMappingURL=ScreenStack.js.map
@@ -1,4 +0,0 @@
1
- import { View } from 'react-native';
2
- const ScreenStack = View;
3
- export default ScreenStack;
4
- //# sourceMappingURL=ScreenStack.web.js.map