react-native-screen-transitions 2.4.1 → 2.4.2-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (252) hide show
  1. package/lib/commonjs/__configs__/presets.js.map +1 -1
  2. package/lib/commonjs/components/root-transition-aware.js.map +1 -1
  3. package/lib/commonjs/constants.js.map +1 -1
  4. package/lib/commonjs/hooks/animation/use-screen-animation.js +9 -5
  5. package/lib/commonjs/hooks/animation/use-screen-animation.js.map +1 -1
  6. package/lib/commonjs/index.js +7 -0
  7. package/lib/commonjs/index.js.map +1 -1
  8. package/lib/commonjs/integrations/blank-stack/components/Header.js +142 -0
  9. package/lib/commonjs/integrations/blank-stack/components/Header.js.map +1 -0
  10. package/lib/commonjs/integrations/blank-stack/components/Screens.js +64 -0
  11. package/lib/commonjs/integrations/blank-stack/components/Screens.js.map +1 -0
  12. package/lib/commonjs/integrations/blank-stack/components/StackView.js +94 -0
  13. package/lib/commonjs/integrations/blank-stack/components/StackView.js.map +1 -0
  14. package/lib/commonjs/integrations/blank-stack/navigators/createBlankStackNavigator.js +74 -0
  15. package/lib/commonjs/integrations/blank-stack/navigators/createBlankStackNavigator.js.map +1 -0
  16. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.js +66 -0
  17. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.js.map +1 -0
  18. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-previous.js +16 -0
  19. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-previous.js.map +1 -0
  20. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.js +208 -0
  21. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.js.map +1 -0
  22. package/lib/commonjs/{types/navigator.js → integrations/blank-stack/utils/with-stack-navigation/_types.js} +1 -1
  23. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_types.js.map +1 -0
  24. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.js +15 -0
  25. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.js.map +1 -0
  26. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_utils/calculateActiveScreensLimit.js +23 -0
  27. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_utils/calculateActiveScreensLimit.js.map +1 -0
  28. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js +15 -0
  29. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js.map +1 -0
  30. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.js +14 -0
  31. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.js.map +1 -0
  32. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.js +13 -0
  33. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.js.map +1 -0
  34. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/index.js +71 -0
  35. package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/index.js.map +1 -0
  36. package/lib/commonjs/integrations/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
  37. package/lib/commonjs/integrations/native-stack/utils/getModalRoutesKeys.js.map +1 -1
  38. package/lib/commonjs/integrations/native-stack/utils/useInvalidPreventRemoveError.js.map +1 -1
  39. package/lib/commonjs/integrations/native-stack/views/NativeStackView.js.map +1 -1
  40. package/lib/commonjs/integrations/native-stack/views/NativeStackView.native.js.map +1 -1
  41. package/lib/commonjs/integrations/native-stack/views/useHeaderConfigProps.js.map +1 -1
  42. package/lib/commonjs/providers/keys.js.map +1 -1
  43. package/lib/commonjs/providers/screen-transition-provider.js.map +1 -1
  44. package/lib/commonjs/providers/transition-styles.js +18 -4
  45. package/lib/commonjs/providers/transition-styles.js.map +1 -1
  46. package/lib/commonjs/stores/animations.js.map +1 -1
  47. package/lib/commonjs/stores/bounds/index.js.map +1 -1
  48. package/lib/commonjs/stores/gestures.js.map +1 -1
  49. package/lib/commonjs/stores/utils/reset-stores-for-screen.js.map +1 -1
  50. package/lib/commonjs/types/blank-stack.navigator.js +6 -0
  51. package/lib/commonjs/types/{navigator.js.map → blank-stack.navigator.js.map} +1 -1
  52. package/lib/commonjs/types/native-stack.navigator.js +6 -0
  53. package/lib/commonjs/types/native-stack.navigator.js.map +1 -0
  54. package/lib/commonjs/utils/animation/derivations.js +1 -14
  55. package/lib/commonjs/utils/animation/derivations.js.map +1 -1
  56. package/lib/commonjs/utils/bounds/constants.js.map +1 -1
  57. package/lib/commonjs/utils/bounds/index.js +23 -90
  58. package/lib/commonjs/utils/bounds/index.js.map +1 -1
  59. package/lib/commonjs/utils/gesture/apply-offset-rules.js.map +1 -1
  60. package/lib/commonjs/utils/gesture/check-gesture-activation.js.map +1 -1
  61. package/lib/module/__configs__/presets.js.map +1 -1
  62. package/lib/module/components/root-transition-aware.js.map +1 -1
  63. package/lib/module/constants.js.map +1 -1
  64. package/lib/module/hooks/animation/use-screen-animation.js +9 -5
  65. package/lib/module/hooks/animation/use-screen-animation.js.map +1 -1
  66. package/lib/module/index.js +1 -0
  67. package/lib/module/index.js.map +1 -1
  68. package/lib/module/integrations/blank-stack/components/Header.js +138 -0
  69. package/lib/module/integrations/blank-stack/components/Header.js.map +1 -0
  70. package/lib/module/integrations/blank-stack/components/Screens.js +58 -0
  71. package/lib/module/integrations/blank-stack/components/Screens.js.map +1 -0
  72. package/lib/module/integrations/blank-stack/components/StackView.js +90 -0
  73. package/lib/module/integrations/blank-stack/components/StackView.js.map +1 -0
  74. package/lib/module/integrations/blank-stack/navigators/createBlankStackNavigator.js +68 -0
  75. package/lib/module/integrations/blank-stack/navigators/createBlankStackNavigator.js.map +1 -0
  76. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.js +60 -0
  77. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.js.map +1 -0
  78. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-previous.js +11 -0
  79. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-previous.js.map +1 -0
  80. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.js +202 -0
  81. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.js.map +1 -0
  82. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_types.js +4 -0
  83. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_types.js.map +1 -0
  84. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.js +10 -0
  85. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.js.map +1 -0
  86. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_utils/calculateActiveScreensLimit.js +19 -0
  87. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_utils/calculateActiveScreensLimit.js.map +1 -0
  88. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js +10 -0
  89. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js.map +1 -0
  90. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.js +9 -0
  91. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.js.map +1 -0
  92. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.js +8 -0
  93. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.js.map +1 -0
  94. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/index.js +65 -0
  95. package/lib/module/integrations/blank-stack/utils/with-stack-navigation/index.js.map +1 -0
  96. package/lib/module/integrations/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
  97. package/lib/module/integrations/native-stack/utils/getModalRoutesKeys.js.map +1 -1
  98. package/lib/module/integrations/native-stack/utils/useInvalidPreventRemoveError.js.map +1 -1
  99. package/lib/module/integrations/native-stack/views/NativeStackView.js.map +1 -1
  100. package/lib/module/integrations/native-stack/views/NativeStackView.native.js.map +1 -1
  101. package/lib/module/integrations/native-stack/views/useHeaderConfigProps.js.map +1 -1
  102. package/lib/module/providers/keys.js.map +1 -1
  103. package/lib/module/providers/screen-transition-provider.js.map +1 -1
  104. package/lib/module/providers/transition-styles.js +19 -5
  105. package/lib/module/providers/transition-styles.js.map +1 -1
  106. package/lib/module/stores/animations.js.map +1 -1
  107. package/lib/module/stores/bounds/index.js.map +1 -1
  108. package/lib/module/stores/gestures.js.map +1 -1
  109. package/lib/module/stores/utils/reset-stores-for-screen.js.map +1 -1
  110. package/lib/module/types/blank-stack.navigator.js +4 -0
  111. package/lib/module/types/{navigator.js.map → blank-stack.navigator.js.map} +1 -1
  112. package/lib/module/types/native-stack.navigator.js +4 -0
  113. package/lib/module/types/native-stack.navigator.js.map +1 -0
  114. package/lib/module/utils/animation/derivations.js +1 -14
  115. package/lib/module/utils/animation/derivations.js.map +1 -1
  116. package/lib/module/utils/bounds/constants.js.map +1 -1
  117. package/lib/module/utils/bounds/index.js +24 -91
  118. package/lib/module/utils/bounds/index.js.map +1 -1
  119. package/lib/module/utils/gesture/apply-offset-rules.js.map +1 -1
  120. package/lib/module/utils/gesture/check-gesture-activation.js.map +1 -1
  121. package/lib/typescript/__configs__/index.d.ts +9 -9
  122. package/lib/typescript/__configs__/index.d.ts.map +1 -1
  123. package/lib/typescript/__configs__/presets.d.ts +1 -1
  124. package/lib/typescript/__configs__/presets.d.ts.map +1 -1
  125. package/lib/typescript/components/root-transition-aware.d.ts.map +1 -1
  126. package/lib/typescript/constants.d.ts +2 -2
  127. package/lib/typescript/constants.d.ts.map +1 -1
  128. package/lib/typescript/hooks/animation/use-screen-animation.d.ts +1 -1
  129. package/lib/typescript/hooks/animation/use-screen-animation.d.ts.map +1 -1
  130. package/lib/typescript/index.d.ts +20 -18
  131. package/lib/typescript/index.d.ts.map +1 -1
  132. package/lib/typescript/integrations/blank-stack/components/Header.d.ts +5 -0
  133. package/lib/typescript/integrations/blank-stack/components/Header.d.ts.map +1 -0
  134. package/lib/typescript/integrations/blank-stack/components/Screens.d.ts +15 -0
  135. package/lib/typescript/integrations/blank-stack/components/Screens.d.ts.map +1 -0
  136. package/lib/typescript/integrations/blank-stack/components/StackView.d.ts +2 -0
  137. package/lib/typescript/integrations/blank-stack/components/StackView.d.ts.map +1 -0
  138. package/lib/typescript/integrations/blank-stack/navigators/createBlankStackNavigator.d.ts +109 -0
  139. package/lib/typescript/integrations/blank-stack/navigators/createBlankStackNavigator.d.ts.map +1 -0
  140. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.d.ts +8 -0
  141. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.d.ts.map +1 -0
  142. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-previous.d.ts +2 -0
  143. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-previous.d.ts.map +1 -0
  144. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.d.ts +20 -0
  145. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.d.ts.map +1 -0
  146. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_types.d.ts +23 -0
  147. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_types.d.ts.map +1 -0
  148. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.d.ts +3 -0
  149. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.d.ts.map +1 -0
  150. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_utils/calculateActiveScreensLimit.d.ts +4 -0
  151. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_utils/calculateActiveScreensLimit.d.ts.map +1 -0
  152. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.d.ts +4 -0
  153. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.d.ts.map +1 -0
  154. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.d.ts +3 -0
  155. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.d.ts.map +1 -0
  156. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.d.ts +3 -0
  157. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.d.ts.map +1 -0
  158. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/index.d.ts +6 -0
  159. package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/index.d.ts.map +1 -0
  160. package/lib/typescript/integrations/native-stack/navigators/createNativeStackNavigator.d.ts +1 -1
  161. package/lib/typescript/integrations/native-stack/navigators/createNativeStackNavigator.d.ts.map +1 -1
  162. package/lib/typescript/integrations/native-stack/utils/getModalRoutesKeys.d.ts +1 -1
  163. package/lib/typescript/integrations/native-stack/utils/getModalRoutesKeys.d.ts.map +1 -1
  164. package/lib/typescript/integrations/native-stack/utils/useInvalidPreventRemoveError.d.ts +1 -1
  165. package/lib/typescript/integrations/native-stack/utils/useInvalidPreventRemoveError.d.ts.map +1 -1
  166. package/lib/typescript/integrations/native-stack/views/NativeStackView.d.ts +1 -1
  167. package/lib/typescript/integrations/native-stack/views/NativeStackView.d.ts.map +1 -1
  168. package/lib/typescript/integrations/native-stack/views/NativeStackView.native.d.ts +1 -1
  169. package/lib/typescript/integrations/native-stack/views/NativeStackView.native.d.ts.map +1 -1
  170. package/lib/typescript/integrations/native-stack/views/useHeaderConfigProps.d.ts +1 -1
  171. package/lib/typescript/integrations/native-stack/views/useHeaderConfigProps.d.ts.map +1 -1
  172. package/lib/typescript/providers/keys.d.ts +1 -1
  173. package/lib/typescript/providers/keys.d.ts.map +1 -1
  174. package/lib/typescript/providers/screen-transition-provider.d.ts +1 -1
  175. package/lib/typescript/providers/screen-transition-provider.d.ts.map +1 -1
  176. package/lib/typescript/providers/transition-styles.d.ts.map +1 -1
  177. package/lib/typescript/stores/animations.d.ts +1 -1
  178. package/lib/typescript/stores/animations.d.ts.map +1 -1
  179. package/lib/typescript/stores/bounds/index.d.ts +1 -1
  180. package/lib/typescript/stores/bounds/index.d.ts.map +1 -1
  181. package/lib/typescript/stores/gestures.d.ts +1 -1
  182. package/lib/typescript/stores/gestures.d.ts.map +1 -1
  183. package/lib/typescript/stores/utils/reset-stores-for-screen.d.ts +1 -1
  184. package/lib/typescript/stores/utils/reset-stores-for-screen.d.ts.map +1 -1
  185. package/lib/typescript/types/animation.d.ts +2 -4
  186. package/lib/typescript/types/animation.d.ts.map +1 -1
  187. package/lib/typescript/types/blank-stack.navigator.d.ts +219 -0
  188. package/lib/typescript/types/blank-stack.navigator.d.ts.map +1 -0
  189. package/lib/typescript/types/bounds.d.ts +0 -57
  190. package/lib/typescript/types/bounds.d.ts.map +1 -1
  191. package/lib/typescript/types/{navigator.d.ts → native-stack.navigator.d.ts} +5 -1
  192. package/lib/typescript/types/native-stack.navigator.d.ts.map +1 -0
  193. package/lib/typescript/utils/animation/derivations.d.ts +1 -4
  194. package/lib/typescript/utils/animation/derivations.d.ts.map +1 -1
  195. package/lib/typescript/utils/bounds/_types/builder.d.ts +2 -2
  196. package/lib/typescript/utils/bounds/_types/builder.d.ts.map +1 -1
  197. package/lib/typescript/utils/bounds/_utils/geometry.d.ts +2 -2
  198. package/lib/typescript/utils/bounds/_utils/geometry.d.ts.map +1 -1
  199. package/lib/typescript/utils/bounds/constants.d.ts +2 -2
  200. package/lib/typescript/utils/bounds/constants.d.ts.map +1 -1
  201. package/lib/typescript/utils/bounds/index.d.ts +4 -4
  202. package/lib/typescript/utils/bounds/index.d.ts.map +1 -1
  203. package/lib/typescript/utils/gesture/apply-offset-rules.d.ts +2 -2
  204. package/lib/typescript/utils/gesture/apply-offset-rules.d.ts.map +1 -1
  205. package/lib/typescript/utils/gesture/check-gesture-activation.d.ts +2 -2
  206. package/lib/typescript/utils/gesture/check-gesture-activation.d.ts.map +1 -1
  207. package/package.json +1 -1
  208. package/src/__configs__/presets.ts +590 -590
  209. package/src/components/root-transition-aware.tsx +27 -27
  210. package/src/constants.ts +47 -47
  211. package/src/hooks/animation/use-screen-animation.tsx +52 -47
  212. package/src/index.ts +33 -22
  213. package/src/integrations/blank-stack/components/Header.tsx +143 -0
  214. package/src/integrations/blank-stack/components/Screens.tsx +96 -0
  215. package/src/integrations/blank-stack/components/StackView.tsx +106 -0
  216. package/src/integrations/blank-stack/navigators/createBlankStackNavigator.tsx +122 -0
  217. package/src/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.tsx +62 -0
  218. package/src/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-previous.tsx +11 -0
  219. package/src/integrations/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.tsx +280 -0
  220. package/src/integrations/blank-stack/utils/with-stack-navigation/_types.ts +36 -0
  221. package/src/integrations/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.ts +15 -0
  222. package/src/integrations/blank-stack/utils/with-stack-navigation/_utils/calculateActiveScreensLimit.ts +29 -0
  223. package/src/integrations/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.ts +17 -0
  224. package/src/integrations/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.ts +12 -0
  225. package/src/integrations/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.ts +11 -0
  226. package/src/integrations/blank-stack/utils/with-stack-navigation/index.tsx +93 -0
  227. package/src/integrations/native-stack/navigators/createNativeStackNavigator.tsx +95 -95
  228. package/src/integrations/native-stack/utils/getModalRoutesKeys.ts +14 -14
  229. package/src/integrations/native-stack/utils/useInvalidPreventRemoveError.tsx +23 -23
  230. package/src/integrations/native-stack/views/NativeStackView.native.tsx +608 -608
  231. package/src/integrations/native-stack/views/NativeStackView.tsx +188 -188
  232. package/src/integrations/native-stack/views/useHeaderConfigProps.tsx +260 -260
  233. package/src/providers/keys.tsx +22 -22
  234. package/src/providers/screen-transition-provider.tsx +20 -20
  235. package/src/providers/transition-styles.tsx +24 -11
  236. package/src/stores/animations.ts +23 -23
  237. package/src/stores/bounds/index.ts +82 -82
  238. package/src/stores/gestures.ts +36 -36
  239. package/src/stores/utils/reset-stores-for-screen.ts +4 -4
  240. package/src/types/animation.ts +2 -4
  241. package/src/types/blank-stack.navigator.ts +271 -0
  242. package/src/types/bounds.ts +0 -64
  243. package/src/types/{navigator.ts → native-stack.navigator.ts} +5 -0
  244. package/src/utils/animation/derivations.ts +3 -20
  245. package/src/utils/bounds/_types/builder.ts +111 -111
  246. package/src/utils/bounds/_utils/geometry.ts +2 -2
  247. package/src/utils/bounds/constants.ts +29 -29
  248. package/src/utils/bounds/index.ts +35 -105
  249. package/src/utils/gesture/apply-offset-rules.ts +271 -271
  250. package/src/utils/gesture/check-gesture-activation.ts +260 -260
  251. package/lib/module/types/navigator.js +0 -4
  252. package/lib/typescript/types/navigator.d.ts.map +0 -1
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ import { useRef } from "react";
4
+ import { useSharedValue } from "react-native-reanimated";
5
+ import useStableCallback from "../../../../../hooks/use-stable-callback";
6
+ export const useClosingRouteKeys = () => {
7
+ const keysRef = useRef(new Set());
8
+ const shared = useSharedValue([]);
9
+ const add = useStableCallback(key => {
10
+ const keys = keysRef.current;
11
+ if (keys.has(key)) {
12
+ return;
13
+ }
14
+ keys.add(key);
15
+ shared.modify(prev => {
16
+ "worklet";
17
+
18
+ if (!prev.includes(key)) {
19
+ prev.push(key);
20
+ }
21
+ return prev;
22
+ });
23
+ });
24
+ const remove = useStableCallback(key => {
25
+ const keys = keysRef.current;
26
+ if (!keys.delete(key)) {
27
+ return;
28
+ }
29
+ shared.modify(prev => {
30
+ "worklet";
31
+
32
+ const index = prev.indexOf(key);
33
+ if (index !== -1) {
34
+ prev.splice(index, 1);
35
+ }
36
+ return prev;
37
+ });
38
+ });
39
+ const clear = useStableCallback(() => {
40
+ const keys = keysRef.current;
41
+ if (!keys.size) {
42
+ return;
43
+ }
44
+ keys.clear();
45
+ shared.modify(prev => {
46
+ "worklet";
47
+
48
+ prev.length = 0;
49
+ return prev;
50
+ });
51
+ });
52
+ return {
53
+ ref: keysRef,
54
+ shared,
55
+ add,
56
+ remove,
57
+ clear
58
+ };
59
+ };
60
+ //# sourceMappingURL=use-closing-route-keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useRef","useSharedValue","useStableCallback","useClosingRouteKeys","keysRef","Set","shared","add","key","keys","current","has","modify","prev","includes","push","remove","delete","index","indexOf","splice","clear","size","length","ref"],"sourceRoot":"../../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.tsx"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,SAASC,cAAc,QAAQ,yBAAyB;AACxD,OAAOC,iBAAiB,MAAM,0CAA0C;AAExE,OAAO,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMC,OAAO,GAAGJ,MAAM,CAAc,IAAIK,GAAG,CAAC,CAAC,CAAC;EAC9C,MAAMC,MAAM,GAAGL,cAAc,CAAW,EAAE,CAAC;EAE3C,MAAMM,GAAG,GAAGL,iBAAiB,CAAEM,GAAW,IAAK;IAC7C,MAAMC,IAAI,GAAGL,OAAO,CAACM,OAAO;IAC5B,IAAID,IAAI,CAACE,GAAG,CAACH,GAAG,CAAC,EAAE;MACjB;IACF;IAEAC,IAAI,CAACF,GAAG,CAACC,GAAG,CAAC;IACbF,MAAM,CAACM,MAAM,CAAEC,IAAI,IAAK;MACtB,SAAS;;MACT,IAAI,CAACA,IAAI,CAACC,QAAQ,CAACN,GAAG,CAAC,EAAE;QACvBK,IAAI,CAACE,IAAI,CAACP,GAAG,CAAC;MAChB;MACA,OAAOK,IAAI;IACb,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,MAAMG,MAAM,GAAGd,iBAAiB,CAAEM,GAAW,IAAK;IAChD,MAAMC,IAAI,GAAGL,OAAO,CAACM,OAAO;IAC5B,IAAI,CAACD,IAAI,CAACQ,MAAM,CAACT,GAAG,CAAC,EAAE;MACrB;IACF;IAEAF,MAAM,CAACM,MAAM,CAAEC,IAAI,IAAK;MACtB,SAAS;;MACT,MAAMK,KAAK,GAAGL,IAAI,CAACM,OAAO,CAACX,GAAG,CAAC;MAC/B,IAAIU,KAAK,KAAK,CAAC,CAAC,EAAE;QAChBL,IAAI,CAACO,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;MACvB;MACA,OAAOL,IAAI;IACb,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,MAAMQ,KAAK,GAAGnB,iBAAiB,CAAC,MAAM;IACpC,MAAMO,IAAI,GAAGL,OAAO,CAACM,OAAO;IAC5B,IAAI,CAACD,IAAI,CAACa,IAAI,EAAE;MACd;IACF;IAEAb,IAAI,CAACY,KAAK,CAAC,CAAC;IACZf,MAAM,CAACM,MAAM,CAAEC,IAAI,IAAK;MACtB,SAAS;;MACTA,IAAI,CAACU,MAAM,GAAG,CAAC;MACf,OAAOV,IAAI;IACb,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,OAAO;IACLW,GAAG,EAAEpB,OAAO;IACZE,MAAM;IACNC,GAAG;IACHS,MAAM;IACNK;EACF,CAAC;AACH,CAAC","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ import { useEffect, useRef } from "react";
4
+ export const usePrevious = value => {
5
+ const ref = useRef(null);
6
+ useEffect(() => {
7
+ ref.current = value;
8
+ });
9
+ return ref.current;
10
+ };
11
+ //# sourceMappingURL=use-previous.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useRef","usePrevious","value","ref","current"],"sourceRoot":"../../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/_hooks/use-previous.tsx"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AAEzC,OAAO,MAAMC,WAAW,GAAQC,KAAQ,IAAe;EACtD,MAAMC,GAAG,GAAGH,MAAM,CAAI,IAAI,CAAC;EAE3BD,SAAS,CAAC,MAAM;IACfI,GAAG,CAACC,OAAO,GAAGF,KAAK;EACpB,CAAC,CAAC;EAEF,OAAOC,GAAG,CAACC,OAAO;AACnB,CAAC","ignoreList":[]}
@@ -0,0 +1,202 @@
1
+ "use strict";
2
+
3
+ import { StackActions } from "@react-navigation/native";
4
+ import { useLayoutEffect, useState } from "react";
5
+ import useStableCallback from "../../../../../hooks/use-stable-callback";
6
+ import { areDescriptorsEqual } from "../_utils/are-descriptors-equal";
7
+ import { composeDescriptors } from "../_utils/compose-descriptors";
8
+ import { haveSameRouteKeys } from "../_utils/have-same-route-keys";
9
+ import { routesAreIdentical } from "../_utils/routes-are-identical";
10
+ import { useClosingRouteKeys } from "./use-closing-route-keys";
11
+ import { usePrevious } from "./use-previous";
12
+ /**
13
+ * Aligns current routes with the latest route data while preserving references
14
+ * when possible for performance optimization
15
+ */
16
+ const alignRoutesWithLatest = (currentRoutes, currentDescriptors, nextRoutes, nextDescriptors) => {
17
+ // Early return for empty current routes
18
+ if (currentRoutes.length === 0) {
19
+ return {
20
+ routes: nextRoutes,
21
+ descriptors: composeDescriptors(nextRoutes, nextDescriptors, currentDescriptors)
22
+ };
23
+ }
24
+
25
+ // Create lookup map for efficient route finding
26
+ const nextRouteLookup = new Map();
27
+ for (const route of nextRoutes) {
28
+ nextRouteLookup.set(route.key, route);
29
+ }
30
+
31
+ // Track if any changes occurred
32
+ let didChange = currentRoutes.length !== nextRoutes.length;
33
+
34
+ // Align routes, updating references where needed
35
+ const alignedRoutes = currentRoutes.map(route => {
36
+ const nextRoute = nextRouteLookup.get(route.key);
37
+ if (!nextRoute) {
38
+ return route; // Keep current route if not in next
39
+ }
40
+ if (nextRoute !== route) {
41
+ didChange = true;
42
+ return nextRoute; // Update to new route reference
43
+ }
44
+ return route; // Keep current route reference
45
+ });
46
+
47
+ // Only create new array if changes occurred
48
+ const routesResult = didChange ? alignedRoutes : currentRoutes;
49
+ return {
50
+ routes: routesResult,
51
+ descriptors: composeDescriptors(routesResult, nextDescriptors, currentDescriptors)
52
+ };
53
+ };
54
+
55
+ /**
56
+ * Synchronizes routes while handling removed routes that may still be animating out.
57
+ * This manages the complex logic of keeping closing routes visible during transitions.
58
+ */
59
+ const syncRoutesWithRemoved = ({
60
+ prevRoutes,
61
+ prevDescriptors,
62
+ nextRoutes,
63
+ nextDescriptors,
64
+ closingRouteKeys
65
+ }) => {
66
+ if (nextRoutes.length === 0) {
67
+ closingRouteKeys.clear();
68
+ return {
69
+ routes: nextRoutes,
70
+ descriptors: {}
71
+ };
72
+ }
73
+
74
+ // Start with next routes, will mutate if needed
75
+ let derivedRoutes = nextRoutes;
76
+ let mutated = false;
77
+
78
+ // Helper to ensure we're working with a mutable copy
79
+ const ensureMutable = () => {
80
+ if (!mutated) {
81
+ derivedRoutes = derivedRoutes.slice();
82
+ mutated = true;
83
+ }
84
+ };
85
+
86
+ // Get focused (last) routes for comparison
87
+ const previousFocusedRoute = prevRoutes[prevRoutes.length - 1];
88
+ const nextFocusedRoute = nextRoutes[nextRoutes.length - 1];
89
+
90
+ // Handle focus changes between routes
91
+ if (previousFocusedRoute && nextFocusedRoute && previousFocusedRoute.key !== nextFocusedRoute.key) {
92
+ const nextRouteWasPresent = prevRoutes.some(route => route.key === nextFocusedRoute.key);
93
+ const previousRouteStillPresent = nextRoutes.some(route => route.key === previousFocusedRoute.key);
94
+ if (nextRouteWasPresent && !previousRouteStillPresent) {
95
+ // Previous route was removed, mark as closing
96
+ closingRouteKeys.add(previousFocusedRoute.key);
97
+ ensureMutable();
98
+ derivedRoutes.push(previousFocusedRoute);
99
+ } else {
100
+ // Next route is now active, not closing
101
+ closingRouteKeys.remove(nextFocusedRoute.key);
102
+ if (!previousRouteStillPresent) {
103
+ // Previous route needs to be inserted for transition
104
+ closingRouteKeys.remove(previousFocusedRoute.key);
105
+ ensureMutable();
106
+ const insertIndex = Math.max(derivedRoutes.length - 1, 0);
107
+ derivedRoutes.splice(insertIndex, 0, previousFocusedRoute);
108
+ }
109
+ }
110
+ } else if (nextFocusedRoute) {
111
+ // Same focused route, ensure it's not marked as closing
112
+ closingRouteKeys.remove(nextFocusedRoute.key);
113
+ }
114
+
115
+ // Clean up closing keys that are no longer in the route list
116
+ const activeKeys = new Set(derivedRoutes.map(route => route.key));
117
+ for (const key of Array.from(closingRouteKeys.ref.current)) {
118
+ if (!activeKeys.has(key)) {
119
+ closingRouteKeys.remove(key);
120
+ }
121
+ }
122
+ const routesResult = mutated ? derivedRoutes : nextRoutes;
123
+ return {
124
+ routes: routesResult,
125
+ descriptors: composeDescriptors(routesResult, nextDescriptors, prevDescriptors)
126
+ };
127
+ };
128
+ export const useStackNavigationState = props => {
129
+ const previousRoutes = usePrevious(props.state.routes) ?? [];
130
+ const closingRouteKeys = useClosingRouteKeys();
131
+ const [localState, setLocalState] = useState(() => ({
132
+ routes: props.state.routes,
133
+ descriptors: props.descriptors
134
+ }));
135
+ useLayoutEffect(() => {
136
+ const nextRoutesSnapshot = props.state.routes;
137
+ const previousRoutesSnapshot = previousRoutes;
138
+ setLocalState(current => {
139
+ const routeKeysUnchanged = haveSameRouteKeys(previousRoutesSnapshot, nextRoutesSnapshot);
140
+ let derivedRoutes;
141
+ let derivedDescriptors;
142
+ if (routeKeysUnchanged) {
143
+ const result = alignRoutesWithLatest(current.routes, current.descriptors, nextRoutesSnapshot, props.descriptors);
144
+ derivedRoutes = result.routes;
145
+ derivedDescriptors = result.descriptors;
146
+ } else {
147
+ const fallbackRoutes = previousRoutesSnapshot.length > 0 ? previousRoutesSnapshot : current.routes;
148
+ const result = syncRoutesWithRemoved({
149
+ prevRoutes: fallbackRoutes,
150
+ prevDescriptors: current.descriptors,
151
+ nextRoutes: nextRoutesSnapshot,
152
+ nextDescriptors: props.descriptors,
153
+ closingRouteKeys
154
+ });
155
+ derivedRoutes = result.routes;
156
+ derivedDescriptors = result.descriptors;
157
+ }
158
+ const routesChanged = !routesAreIdentical(current.routes, derivedRoutes);
159
+ const descriptorsChanged = !areDescriptorsEqual(current.descriptors, derivedDescriptors);
160
+ if (!routesChanged && !descriptorsChanged) {
161
+ return current;
162
+ }
163
+ return {
164
+ routes: routesChanged ? derivedRoutes : current.routes,
165
+ descriptors: descriptorsChanged ? derivedDescriptors : current.descriptors
166
+ };
167
+ });
168
+ }, [props.state.routes, props.descriptors, previousRoutes, closingRouteKeys]);
169
+ const handleCloseRoute = useStableCallback(({
170
+ route
171
+ }) => {
172
+ if (props.state.routes.some(r => r.key === route.key)) {
173
+ props.navigation.dispatch({
174
+ ...StackActions.pop(),
175
+ source: route.key,
176
+ target: props.state.key
177
+ });
178
+ return;
179
+ }
180
+ closingRouteKeys.remove(route.key);
181
+ setLocalState(current => {
182
+ if (!current.routes.some(candidate => candidate.key === route.key)) {
183
+ return current;
184
+ }
185
+ const nextRoutes = current.routes.filter(candidate => candidate.key !== route.key);
186
+ const nextDescriptors = {
187
+ ...current.descriptors
188
+ };
189
+ delete nextDescriptors[route.key];
190
+ return {
191
+ routes: nextRoutes,
192
+ descriptors: nextDescriptors
193
+ };
194
+ });
195
+ });
196
+ return {
197
+ state: localState,
198
+ handleCloseRoute,
199
+ closingRouteKeys
200
+ };
201
+ };
202
+ //# sourceMappingURL=use-stack-navigation-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["StackActions","useLayoutEffect","useState","useStableCallback","areDescriptorsEqual","composeDescriptors","haveSameRouteKeys","routesAreIdentical","useClosingRouteKeys","usePrevious","alignRoutesWithLatest","currentRoutes","currentDescriptors","nextRoutes","nextDescriptors","length","routes","descriptors","nextRouteLookup","Map","route","set","key","didChange","alignedRoutes","map","nextRoute","get","routesResult","syncRoutesWithRemoved","prevRoutes","prevDescriptors","closingRouteKeys","clear","derivedRoutes","mutated","ensureMutable","slice","previousFocusedRoute","nextFocusedRoute","nextRouteWasPresent","some","previousRouteStillPresent","add","push","remove","insertIndex","Math","max","splice","activeKeys","Set","Array","from","ref","current","has","useStackNavigationState","props","previousRoutes","state","localState","setLocalState","nextRoutesSnapshot","previousRoutesSnapshot","routeKeysUnchanged","derivedDescriptors","result","fallbackRoutes","routesChanged","descriptorsChanged","handleCloseRoute","r","navigation","dispatch","pop","source","target","candidate","filter"],"sourceRoot":"../../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=_types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/_types.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ export const areDescriptorsEqual = (a, b) => {
4
+ if (a === b) return true;
5
+ const aKeys = Object.keys(a);
6
+ const bKeys = Object.keys(b);
7
+ if (aKeys.length !== bKeys.length) return false;
8
+ return aKeys.every(key => a[key] === b[key]);
9
+ };
10
+ //# sourceMappingURL=are-descriptors-equal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["areDescriptorsEqual","a","b","aKeys","Object","keys","bKeys","length","every","key"],"sourceRoot":"../../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.ts"],"mappings":";;AAEA,OAAO,MAAMA,mBAAmB,GAAGA,CACjCC,CAA0B,EAC1BC,CAA0B,KACd;EACZ,IAAID,CAAC,KAAKC,CAAC,EAAE,OAAO,IAAI;EAExB,MAAMC,KAAK,GAAGC,MAAM,CAACC,IAAI,CAACJ,CAAC,CAAC;EAC5B,MAAMK,KAAK,GAAGF,MAAM,CAACC,IAAI,CAACH,CAAC,CAAC;EAE5B,IAAIC,KAAK,CAACI,MAAM,KAAKD,KAAK,CAACC,MAAM,EAAE,OAAO,KAAK;EAE/C,OAAOJ,KAAK,CAACK,KAAK,CAAEC,GAAG,IAAKR,CAAC,CAACQ,GAAG,CAAC,KAAKP,CAAC,CAACO,GAAG,CAAC,CAAC;AAChD,CAAC","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ export function calculateActiveScreensLimit(routes, descriptors) {
4
+ if (routes.length === 0) {
5
+ return 1;
6
+ }
7
+ let limit = 1;
8
+ for (let i = routes.length - 1; i >= 0; i--) {
9
+ const route = routes[i];
10
+ const shouldKeepPrevious = descriptors?.[route.key]?.options?.detachPreviousScreen !== true;
11
+ if (shouldKeepPrevious) {
12
+ limit++;
13
+ continue;
14
+ }
15
+ break;
16
+ }
17
+ return Math.min(limit, routes.length);
18
+ }
19
+ //# sourceMappingURL=calculateActiveScreensLimit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["calculateActiveScreensLimit","routes","descriptors","length","limit","i","route","shouldKeepPrevious","key","options","detachPreviousScreen","Math","min"],"sourceRoot":"../../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/_utils/calculateActiveScreensLimit.ts"],"mappings":";;AAGA,OAAO,SAASA,2BAA2BA,CACzCC,MAAgD,EAChDC,WAAoC,EAC5B;EACR,IAAID,MAAM,CAACE,MAAM,KAAK,CAAC,EAAE;IACvB,OAAO,CAAC;EACV;EAEA,IAAIC,KAAK,GAAG,CAAC;EAEb,KAAK,IAAIC,CAAC,GAAGJ,MAAM,CAACE,MAAM,GAAG,CAAC,EAAEE,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IAC3C,MAAMC,KAAK,GAAGL,MAAM,CAACI,CAAC,CAAC;IAEvB,MAAME,kBAAkB,GACtBL,WAAW,GAAGI,KAAK,CAACE,GAAG,CAAC,EAAEC,OAAO,EAAEC,oBAAoB,KAAK,IAAI;IAElE,IAAIH,kBAAkB,EAAE;MACtBH,KAAK,EAAE;MACP;IACF;IAEA;EACF;EAEA,OAAOO,IAAI,CAACC,GAAG,CAACR,KAAK,EAAEH,MAAM,CAACE,MAAM,CAAC;AACvC","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ export const composeDescriptors = (routes, nextDescriptors, currentDescriptors) => {
4
+ const composed = {};
5
+ for (const route of routes) {
6
+ composed[route.key] = nextDescriptors[route.key] ?? currentDescriptors[route.key];
7
+ }
8
+ return composed;
9
+ };
10
+ //# sourceMappingURL=compose-descriptors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["composeDescriptors","routes","nextDescriptors","currentDescriptors","composed","route","key"],"sourceRoot":"../../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.ts"],"mappings":";;AAGA,OAAO,MAAMA,kBAAkB,GAAGA,CAChCC,MAAuB,EACvBC,eAAwC,EACxCC,kBAA2C,KACf;EAC5B,MAAMC,QAAiC,GAAG,CAAC,CAAC;EAE5C,KAAK,MAAMC,KAAK,IAAIJ,MAAM,EAAE;IAC1BG,QAAQ,CAACC,KAAK,CAACC,GAAG,CAAC,GACjBJ,eAAe,CAACG,KAAK,CAACC,GAAG,CAAC,IAAIH,kBAAkB,CAACE,KAAK,CAACC,GAAG,CAAC;EAC/D;EAEA,OAAOF,QAAQ;AACjB,CAAC","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ export const haveSameRouteKeys = (previous, next) => {
4
+ if (previous.length !== next.length) {
5
+ return false;
6
+ }
7
+ return previous.every((route, index) => route?.key === next[index]?.key);
8
+ };
9
+ //# sourceMappingURL=have-same-route-keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["haveSameRouteKeys","previous","next","length","every","route","index","key"],"sourceRoot":"../../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.ts"],"mappings":";;AAEA,OAAO,MAAMA,iBAAiB,GAAGA,CAChCC,QAAyB,EACzBC,IAAqB,KACR;EACb,IAAID,QAAQ,CAACE,MAAM,KAAKD,IAAI,CAACC,MAAM,EAAE;IACpC,OAAO,KAAK;EACb;EAEA,OAAOF,QAAQ,CAACG,KAAK,CAAC,CAACC,KAAK,EAAEC,KAAK,KAAKD,KAAK,EAAEE,GAAG,KAAKL,IAAI,CAACI,KAAK,CAAC,EAAEC,GAAG,CAAC;AACzE,CAAC","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ export const routesAreIdentical = (a, b) => {
4
+ if (a === b) return true;
5
+ if (a.length !== b.length) return false;
6
+ return a.every((route, index) => route === b[index]);
7
+ };
8
+ //# sourceMappingURL=routes-are-identical.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["routesAreIdentical","a","b","length","every","route","index"],"sourceRoot":"../../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.ts"],"mappings":";;AAEA,OAAO,MAAMA,kBAAkB,GAAGA,CACjCC,CAAkB,EAClBC,CAAkB,KACL;EACb,IAAID,CAAC,KAAKC,CAAC,EAAE,OAAO,IAAI;EACxB,IAAID,CAAC,CAACE,MAAM,KAAKD,CAAC,CAACC,MAAM,EAAE,OAAO,KAAK;EAEvC,OAAOF,CAAC,CAACG,KAAK,CAAC,CAACC,KAAK,EAAEC,KAAK,KAAKD,KAAK,KAAKH,CAAC,CAACI,KAAK,CAAC,CAAC;AACrD,CAAC","ignoreList":[]}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+
3
+ import { createContext, memo, useContext, useMemo } from "react";
4
+ import { Header } from "../../components/Header";
5
+ import { useStackNavigationState } from "./_hooks/use-stack-navigation-state";
6
+ import { calculateActiveScreensLimit } from "./_utils/calculateActiveScreensLimit";
7
+ import { jsx as _jsx } from "react/jsx-runtime";
8
+ export const StackNavigationContext = /*#__PURE__*/createContext(null);
9
+ export function withStackNavigationProvider(Component) {
10
+ return function StackNavigationWrapper(props) {
11
+ const {
12
+ state,
13
+ handleCloseRoute,
14
+ closingRouteKeys
15
+ } = useStackNavigationState(props);
16
+ const scenes = useMemo(() => {
17
+ return state.routes.reduce((acc, route) => {
18
+ acc.push({
19
+ route,
20
+ descriptor: state.descriptors[route.key]
21
+ });
22
+ return acc;
23
+ }, []);
24
+ }, [state.routes, state.descriptors]);
25
+ const activeScreensLimit = useMemo(() => {
26
+ return calculateActiveScreensLimit(state.routes, state.descriptors);
27
+ }, [state.routes, state.descriptors]);
28
+ const FloatHeader = /*#__PURE__*/memo(() => {
29
+ const shouldShowFloatHeader = props.state.routes.some(route => {
30
+ const options = props.descriptors[route.key]?.options;
31
+ return options?.headerMode === "float" && options?.headerShown;
32
+ });
33
+ if (!shouldShowFloatHeader) {
34
+ return null;
35
+ }
36
+ return /*#__PURE__*/_jsx(Header.Float, {});
37
+ });
38
+ const contextValue = useMemo(() => {
39
+ return {
40
+ routes: state.routes,
41
+ focusedIndex: props.state.index,
42
+ descriptors: state.descriptors,
43
+ closingRouteKeysShared: closingRouteKeys.shared,
44
+ activeScreensLimit,
45
+ handleCloseRoute,
46
+ scenes,
47
+ FloatHeader
48
+ };
49
+ }, [state, scenes, activeScreensLimit, closingRouteKeys, handleCloseRoute, props.state.index, FloatHeader]);
50
+ return /*#__PURE__*/_jsx(StackNavigationContext.Provider, {
51
+ value: contextValue,
52
+ children: /*#__PURE__*/_jsx(Component, {
53
+ ...contextValue
54
+ })
55
+ });
56
+ };
57
+ }
58
+ export const useStackNavigationContext = () => {
59
+ const context = useContext(StackNavigationContext);
60
+ if (!context) {
61
+ throw new Error("StackNavigationContext.Provider is missing in the component tree.");
62
+ }
63
+ return context;
64
+ };
65
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","memo","useContext","useMemo","Header","useStackNavigationState","calculateActiveScreensLimit","jsx","_jsx","StackNavigationContext","withStackNavigationProvider","Component","StackNavigationWrapper","props","state","handleCloseRoute","closingRouteKeys","scenes","routes","reduce","acc","route","push","descriptor","descriptors","key","activeScreensLimit","FloatHeader","shouldShowFloatHeader","some","options","headerMode","headerShown","Float","contextValue","focusedIndex","index","closingRouteKeysShared","shared","Provider","value","children","useStackNavigationContext","context","Error"],"sourceRoot":"../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["createNavigatorFactory","StackActions","StackRouter","useNavigationBuilder","React","NativeStackView","jsx","_jsx","NativeStackNavigator","id","initialRouteName","children","layout","screenListeners","screenOptions","screenLayout","rest","state","describe","descriptors","navigation","NavigationContent","useEffect","addListener","e","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","popToTop","target","key","createNativeStackNavigator","config"],"sourceRoot":"../../../../../src","sources":["integrations/native-stack/navigators/createNativeStackNavigator.tsx"],"mappings":";;AAAA,SACCA,sBAAsB,EAKtBC,YAAY,EAEZC,WAAW,EAIXC,oBAAoB,QACd,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAQ9B,SAASC,eAAe,QAAQ,0BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE3D,SAASC,oBAAoBA,CAAC;EAC7BC,EAAE;EACFC,gBAAgB;EAChBC,QAAQ;EACRC,MAAM;EACNC,eAAe;EACfC,aAAa;EACbC,YAAY;EACZ,GAAGC;AACuB,CAAC,EAAE;EAC7B,MAAM;IAAEC,KAAK;IAAEC,QAAQ;IAAEC,WAAW;IAAEC,UAAU;IAAEC;EAAkB,CAAC,GACpElB,oBAAoB,CAMlBD,WAAW,EAAE;IACdO,EAAE;IACFC,gBAAgB;IAChBC,QAAQ;IACRC,MAAM;IACNC,eAAe;IACfC,aAAa;IACbC;EACD,CAAC,CAAC;EAEHX,KAAK,CAACkB,SAAS,CACd;EACC;EACAF,UAAU,EAAEG,WAAW,GAAG,UAAU,EAAGC,CAAM,IAAK;IACjD,MAAMC,SAAS,GAAGL,UAAU,CAACK,SAAS,CAAC,CAAC;;IAExC;IACA;IACAC,qBAAqB,CAAC,MAAM;MAC3B,IACCT,KAAK,CAACU,KAAK,GAAG,CAAC,IACfF,SAAS,IACT,CAAED,CAAC,CAAgCI,gBAAgB,EAClD;QACD;QACA;QACAR,UAAU,CAACS,QAAQ,CAAC;UACnB,GAAG5B,YAAY,CAAC6B,QAAQ,CAAC,CAAC;UAC1BC,MAAM,EAAEd,KAAK,CAACe;QACf,CAAC,CAAC;MACH;IACD,CAAC,CAAC;EACH,CAAC,CAAC,EACH,CAACZ,UAAU,EAAEH,KAAK,CAACU,KAAK,EAAEV,KAAK,CAACe,GAAG,CACpC,CAAC;EAED,oBACCzB,IAAA,CAACc,iBAAiB;IAAAV,QAAA,eACjBJ,IAAA,CAACF,eAAe;MAAA,GACXW,IAAI;MACRC,KAAK,EAAEA,KAAM;MACbG,UAAU,EAAEA,UAAW;MACvBD,WAAW,EAAEA,WAAY;MACzBD,QAAQ,EAAEA;IAAS,CACnB;EAAC,CACgB,CAAC;AAEtB;AAEA,OAAO,SAASe,0BAA0BA,CAmBxCC,MAAe,EAAmC;EACnD,OAAOlC,sBAAsB,CAACQ,oBAAoB,CAAC,CAAC0B,MAAM,CAAC;AAC5D","ignoreList":[]}
1
+ {"version":3,"names":["createNavigatorFactory","StackActions","StackRouter","useNavigationBuilder","React","NativeStackView","jsx","_jsx","NativeStackNavigator","id","initialRouteName","children","layout","screenListeners","screenOptions","screenLayout","rest","state","describe","descriptors","navigation","NavigationContent","useEffect","addListener","e","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","popToTop","target","key","createNativeStackNavigator","config"],"sourceRoot":"../../../../../src","sources":["integrations/native-stack/navigators/createNativeStackNavigator.tsx"],"mappings":";;AAAA,SACEA,sBAAsB,EAKtBC,YAAY,EAEZC,WAAW,EAIXC,oBAAoB,QACf,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAQ9B,SAASC,eAAe,QAAQ,0BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE3D,SAASC,oBAAoBA,CAAC;EAC5BC,EAAE;EACFC,gBAAgB;EAChBC,QAAQ;EACRC,MAAM;EACNC,eAAe;EACfC,aAAa;EACbC,YAAY;EACZ,GAAGC;AACsB,CAAC,EAAE;EAC5B,MAAM;IAAEC,KAAK;IAAEC,QAAQ;IAAEC,WAAW;IAAEC,UAAU;IAAEC;EAAkB,CAAC,GACnElB,oBAAoB,CAMlBD,WAAW,EAAE;IACbO,EAAE;IACFC,gBAAgB;IAChBC,QAAQ;IACRC,MAAM;IACNC,eAAe;IACfC,aAAa;IACbC;EACF,CAAC,CAAC;EAEJX,KAAK,CAACkB,SAAS,CACb;EACE;EACAF,UAAU,EAAEG,WAAW,GAAG,UAAU,EAAGC,CAAM,IAAK;IAChD,MAAMC,SAAS,GAAGL,UAAU,CAACK,SAAS,CAAC,CAAC;;IAExC;IACA;IACAC,qBAAqB,CAAC,MAAM;MAC1B,IACET,KAAK,CAACU,KAAK,GAAG,CAAC,IACfF,SAAS,IACT,CAAED,CAAC,CAAgCI,gBAAgB,EACnD;QACA;QACA;QACAR,UAAU,CAACS,QAAQ,CAAC;UAClB,GAAG5B,YAAY,CAAC6B,QAAQ,CAAC,CAAC;UAC1BC,MAAM,EAAEd,KAAK,CAACe;QAChB,CAAC,CAAC;MACJ;IACF,CAAC,CAAC;EACJ,CAAC,CAAC,EACJ,CAACZ,UAAU,EAAEH,KAAK,CAACU,KAAK,EAAEV,KAAK,CAACe,GAAG,CACrC,CAAC;EAED,oBACEzB,IAAA,CAACc,iBAAiB;IAAAV,QAAA,eAChBJ,IAAA,CAACF,eAAe;MAAA,GACVW,IAAI;MACRC,KAAK,EAAEA,KAAM;MACbG,UAAU,EAAEA,UAAW;MACvBD,WAAW,EAAEA,WAAY;MACzBD,QAAQ,EAAEA;IAAS,CACpB;EAAC,CACe,CAAC;AAExB;AAEA,OAAO,SAASe,0BAA0BA,CAmBxCC,MAAe,EAAmC;EAClD,OAAOlC,sBAAsB,CAACQ,oBAAoB,CAAC,CAAC0B,MAAM,CAAC;AAC7D","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["getModalRouteKeys","routes","descriptors","reduce","acc","route","presentation","key","options","length","push"],"sourceRoot":"../../../../../src","sources":["integrations/native-stack/utils/getModalRoutesKeys.ts"],"mappings":";;AAIA,OAAO,MAAMA,iBAAiB,GAAGA,CAChCC,MAAuB,EACvBC,WAAqC,KAErCD,MAAM,CAACE,MAAM,CAAW,CAACC,GAAG,EAAEC,KAAK,KAAK;EACvC,MAAM;IAAEC;EAAa,CAAC,GAAGJ,WAAW,CAACG,KAAK,CAACE,GAAG,CAAC,EAAEC,OAAO,IAAI,CAAC,CAAC;EAE9D,IACEJ,GAAG,CAACK,MAAM,IAAI,CAACH,YAAY,IAC5BA,YAAY,KAAK,OAAO,IACxBA,YAAY,KAAK,kBAAkB,EAClC;IACDF,GAAG,CAACM,IAAI,CAACL,KAAK,CAACE,GAAG,CAAC;EACpB;EAEA,OAAOH,GAAG;AACX,CAAC,EAAE,EAAE,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["getModalRouteKeys","routes","descriptors","reduce","acc","route","presentation","key","options","length","push"],"sourceRoot":"../../../../../src","sources":["integrations/native-stack/utils/getModalRoutesKeys.ts"],"mappings":";;AAIA,OAAO,MAAMA,iBAAiB,GAAGA,CAC/BC,MAAuB,EACvBC,WAAqC,KAErCD,MAAM,CAACE,MAAM,CAAW,CAACC,GAAG,EAAEC,KAAK,KAAK;EACtC,MAAM;IAAEC;EAAa,CAAC,GAAGJ,WAAW,CAACG,KAAK,CAACE,GAAG,CAAC,EAAEC,OAAO,IAAI,CAAC,CAAC;EAE9D,IACGJ,GAAG,CAACK,MAAM,IAAI,CAACH,YAAY,IAC5BA,YAAY,KAAK,OAAO,IACxBA,YAAY,KAAK,kBAAkB,EACnC;IACAF,GAAG,CAACM,IAAI,CAACL,KAAK,CAACE,GAAG,CAAC;EACrB;EAEA,OAAOH,GAAG;AACZ,CAAC,EAAE,EAAE,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["usePreventRemoveContext","React","useInvalidPreventRemoveError","descriptors","preventedRoutes","preventedRouteKey","Object","keys","preventedDescriptor","isHeaderBackButtonMenuEnabledOnPreventedScreen","options","headerBackButtonMenuEnabled","preventedRouteName","route","name","useEffect","message","console","error"],"sourceRoot":"../../../../../src","sources":["integrations/native-stack/utils/useInvalidPreventRemoveError.tsx"],"mappings":";;AAAA,SAASA,uBAAuB,QAAQ,0BAA0B;AAClE,OAAO,KAAKC,KAAK,MAAM,OAAO;AAI9B,OAAO,SAASC,4BAA4BA,CAC3CC,WAAqC,EACpC;EACD,MAAM;IAAEC;EAAgB,CAAC,GAAGJ,uBAAuB,CAAC,CAAC;EACrD,MAAMK,iBAAiB,GAAGC,MAAM,CAACC,IAAI,CAACH,eAAe,CAAC,CAAC,CAAC,CAAC;EACzD,MAAMI,mBAAmB,GAAGL,WAAW,CAACE,iBAAiB,CAAC;EAC1D,MAAMI,8CAA8C,GACnDD,mBAAmB,EAAEE,OAAO,EAAEC,2BAA2B;EAC1D,MAAMC,kBAAkB,GAAGJ,mBAAmB,EAAEK,KAAK,EAAEC,IAAI;EAE3Db,KAAK,CAACc,SAAS,CAAC,MAAM;IACrB,IACCV,iBAAiB,IAAI,IAAI,IACzBI,8CAA8C,EAC7C;MACD,MAAMO,OAAO,GACZ,cAAcJ,kBAAkB,2GAA2G,GAC3I,8DAA8DA,kBAAkB,mCAAmC;MACpHK,OAAO,CAACC,KAAK,CAACF,OAAO,CAAC;IACvB;EACD,CAAC,EAAE,CACFX,iBAAiB,EACjBI,8CAA8C,EAC9CG,kBAAkB,CAClB,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["usePreventRemoveContext","React","useInvalidPreventRemoveError","descriptors","preventedRoutes","preventedRouteKey","Object","keys","preventedDescriptor","isHeaderBackButtonMenuEnabledOnPreventedScreen","options","headerBackButtonMenuEnabled","preventedRouteName","route","name","useEffect","message","console","error"],"sourceRoot":"../../../../../src","sources":["integrations/native-stack/utils/useInvalidPreventRemoveError.tsx"],"mappings":";;AAAA,SAASA,uBAAuB,QAAQ,0BAA0B;AAClE,OAAO,KAAKC,KAAK,MAAM,OAAO;AAI9B,OAAO,SAASC,4BAA4BA,CAC1CC,WAAqC,EACrC;EACA,MAAM;IAAEC;EAAgB,CAAC,GAAGJ,uBAAuB,CAAC,CAAC;EACrD,MAAMK,iBAAiB,GAAGC,MAAM,CAACC,IAAI,CAACH,eAAe,CAAC,CAAC,CAAC,CAAC;EACzD,MAAMI,mBAAmB,GAAGL,WAAW,CAACE,iBAAiB,CAAC;EAC1D,MAAMI,8CAA8C,GAClDD,mBAAmB,EAAEE,OAAO,EAAEC,2BAA2B;EAC3D,MAAMC,kBAAkB,GAAGJ,mBAAmB,EAAEK,KAAK,EAAEC,IAAI;EAE3Db,KAAK,CAACc,SAAS,CAAC,MAAM;IACpB,IACEV,iBAAiB,IAAI,IAAI,IACzBI,8CAA8C,EAC9C;MACA,MAAMO,OAAO,GACX,cAAcJ,kBAAkB,2GAA2G,GAC3I,8DAA8DA,kBAAkB,mCAAmC;MACrHK,OAAO,CAACC,KAAK,CAACF,OAAO,CAAC;IACxB;EACF,CAAC,EAAE,CACDX,iBAAiB,EACjBI,8CAA8C,EAC9CG,kBAAkB,CACnB,CAAC;AACJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["getHeaderTitle","Header","HeaderBackButton","HeaderBackContext","SafeAreaProviderCompat","Screen","useHeaderHeight","useLinkBuilder","React","Animated","Image","StyleSheet","View","AnimatedHeaderHeightContext","jsx","_jsx","TRANSPARENT_PRESENTATIONS","NativeStackView","state","descriptors","describe","parentHeaderBack","useContext","buildHref","preloadedDescriptors","preloadedRoutes","reduce","acc","route","key","children","routes","concat","map","i","isFocused","index","previousKey","nextKey","previousDescriptor","undefined","nextDescriptor","options","navigation","render","headerBack","title","name","href","params","canGoBack","header","headerShown","headerBackImageSource","headerLeft","headerTransparent","headerBackTitle","presentation","contentStyle","rest","nextPresentation","isPreloaded","focused","back","label","tintColor","backImage","source","resizeMode","style","styles","onPress","goBack","absoluteFill","display","includes","backgroundColor","Provider","value","AnimatedHeaderHeightProvider","contentContainer","headerHeight","animatedHeaderHeight","useState","Value","useEffect","setValue","create","flex","height","width","margin"],"sourceRoot":"../../../../../src","sources":["integrations/native-stack/views/NativeStackView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["getHeaderTitle","Header","HeaderBackButton","HeaderBackContext","SafeAreaProviderCompat","Screen","useHeaderHeight","useLinkBuilder","React","Animated","Image","StyleSheet","View","AnimatedHeaderHeightContext","jsx","_jsx","TRANSPARENT_PRESENTATIONS","NativeStackView","state","descriptors","describe","parentHeaderBack","useContext","buildHref","preloadedDescriptors","preloadedRoutes","reduce","acc","route","key","children","routes","concat","map","i","isFocused","index","previousKey","nextKey","previousDescriptor","undefined","nextDescriptor","options","navigation","render","headerBack","title","name","href","params","canGoBack","header","headerShown","headerBackImageSource","headerLeft","headerTransparent","headerBackTitle","presentation","contentStyle","rest","nextPresentation","isPreloaded","focused","back","label","tintColor","backImage","source","resizeMode","style","styles","onPress","goBack","absoluteFill","display","includes","backgroundColor","Provider","value","AnimatedHeaderHeightProvider","contentContainer","headerHeight","animatedHeaderHeight","useState","Value","useEffect","setValue","create","flex","height","width","margin"],"sourceRoot":"../../../../../src","sources":["integrations/native-stack/views/NativeStackView.tsx"],"mappings":"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","ignoreList":[]}