react-native-screen-transitions 3.0.0-rc.1 → 3.0.0-rc.3

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 (233) hide show
  1. package/README.md +421 -371
  2. package/lib/commonjs/blank-stack/components/{Overlay.js → overlay.js} +11 -12
  3. package/lib/commonjs/blank-stack/components/overlay.js.map +1 -0
  4. package/lib/commonjs/blank-stack/components/{Screens.js → screens.js} +8 -10
  5. package/lib/commonjs/blank-stack/components/screens.js.map +1 -0
  6. package/lib/commonjs/blank-stack/components/stack-view.js +95 -0
  7. package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -0
  8. package/lib/commonjs/blank-stack/hooks/use-overlay-animation.js +2 -3
  9. package/lib/commonjs/blank-stack/hooks/use-overlay-animation.js.map +1 -1
  10. package/lib/commonjs/blank-stack/index.js +1 -8
  11. package/lib/commonjs/blank-stack/index.js.map +1 -1
  12. package/lib/commonjs/blank-stack/navigators/{createBlankStackNavigator.js → create-blank-stack-navigator.js} +3 -3
  13. package/lib/commonjs/blank-stack/navigators/create-blank-stack-navigator.js.map +1 -0
  14. package/lib/commonjs/blank-stack/utils/with-stack-navigation/helpers/are-descriptors-equal.js.map +1 -0
  15. package/lib/{module/blank-stack/utils/with-stack-navigation/_utils → commonjs/blank-stack/utils/with-stack-navigation/helpers}/calculate-active-screens-limit.js.map +1 -1
  16. package/lib/commonjs/blank-stack/utils/with-stack-navigation/helpers/compose-descriptors.js +15 -0
  17. package/lib/commonjs/blank-stack/utils/with-stack-navigation/helpers/compose-descriptors.js.map +1 -0
  18. package/lib/commonjs/blank-stack/utils/with-stack-navigation/helpers/have-same-route-keys.js.map +1 -0
  19. package/lib/commonjs/blank-stack/utils/with-stack-navigation/helpers/routes-are-identical.js.map +1 -0
  20. package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-closing-route-keys.js +1 -12
  21. package/lib/commonjs/blank-stack/utils/with-stack-navigation/hooks/use-closing-route-keys.js.map +1 -0
  22. package/lib/commonjs/blank-stack/utils/with-stack-navigation/hooks/use-previous.js.map +1 -0
  23. package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-stack-navigation-state.js +4 -4
  24. package/lib/commonjs/blank-stack/utils/with-stack-navigation/hooks/use-stack-navigation-state.js.map +1 -0
  25. package/lib/commonjs/blank-stack/utils/with-stack-navigation/index.js +50 -56
  26. package/lib/commonjs/blank-stack/utils/with-stack-navigation/index.js.map +1 -1
  27. package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_types.js → types.js} +1 -1
  28. package/lib/commonjs/blank-stack/utils/with-stack-navigation/types.js.map +1 -0
  29. package/lib/commonjs/shared/configs/presets.js +8 -2
  30. package/lib/commonjs/shared/configs/presets.js.map +1 -1
  31. package/lib/commonjs/shared/hooks/animation/use-screen-animation.js +42 -21
  32. package/lib/commonjs/shared/hooks/animation/use-screen-animation.js.map +1 -1
  33. package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js.map +1 -1
  34. package/lib/commonjs/shared/providers/flags.provider.js +25 -0
  35. package/lib/commonjs/shared/providers/flags.provider.js.map +1 -0
  36. package/lib/commonjs/shared/providers/register-bounds.provider.js +71 -45
  37. package/lib/commonjs/shared/providers/register-bounds.provider.js.map +1 -1
  38. package/lib/commonjs/shared/stores/bounds.store.js +91 -47
  39. package/lib/commonjs/shared/stores/bounds.store.js.map +1 -1
  40. package/lib/commonjs/shared/utils/bounds/helpers/is-bounds-equal.js +1 -1
  41. package/lib/commonjs/shared/utils/bounds/helpers/is-bounds-equal.js.map +1 -1
  42. package/lib/commonjs/shared/utils/bounds/index.js +4 -5
  43. package/lib/commonjs/shared/utils/bounds/index.js.map +1 -1
  44. package/lib/commonjs/shared/utils/create-provider.js +20 -1
  45. package/lib/commonjs/shared/utils/create-provider.js.map +1 -1
  46. package/lib/commonjs/shared/utils/reset-stores-for-screen.js +2 -0
  47. package/lib/commonjs/shared/utils/reset-stores-for-screen.js.map +1 -1
  48. package/lib/module/blank-stack/components/{Overlay.js → overlay.js} +11 -12
  49. package/lib/module/blank-stack/components/overlay.js.map +1 -0
  50. package/lib/module/blank-stack/components/{Screens.js → screens.js} +8 -10
  51. package/lib/module/blank-stack/components/screens.js.map +1 -0
  52. package/lib/module/blank-stack/components/stack-view.js +90 -0
  53. package/lib/module/blank-stack/components/stack-view.js.map +1 -0
  54. package/lib/module/blank-stack/hooks/use-overlay-animation.js +2 -3
  55. package/lib/module/blank-stack/hooks/use-overlay-animation.js.map +1 -1
  56. package/lib/module/blank-stack/index.js +1 -2
  57. package/lib/module/blank-stack/index.js.map +1 -1
  58. package/lib/module/blank-stack/navigators/{createBlankStackNavigator.js → create-blank-stack-navigator.js} +2 -2
  59. package/lib/module/blank-stack/navigators/create-blank-stack-navigator.js.map +1 -0
  60. package/lib/module/blank-stack/utils/with-stack-navigation/helpers/are-descriptors-equal.js.map +1 -0
  61. package/lib/module/blank-stack/utils/with-stack-navigation/helpers/calculate-active-screens-limit.js.map +1 -0
  62. package/lib/module/blank-stack/utils/with-stack-navigation/helpers/compose-descriptors.js +10 -0
  63. package/lib/module/blank-stack/utils/with-stack-navigation/helpers/compose-descriptors.js.map +1 -0
  64. package/lib/module/blank-stack/utils/with-stack-navigation/helpers/have-same-route-keys.js.map +1 -0
  65. package/lib/module/blank-stack/utils/with-stack-navigation/helpers/routes-are-identical.js.map +1 -0
  66. package/lib/module/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-closing-route-keys.js +1 -12
  67. package/lib/module/blank-stack/utils/with-stack-navigation/hooks/use-closing-route-keys.js.map +1 -0
  68. package/lib/module/blank-stack/utils/with-stack-navigation/hooks/use-previous.js.map +1 -0
  69. package/lib/module/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-stack-navigation-state.js +4 -4
  70. package/lib/module/blank-stack/utils/with-stack-navigation/hooks/use-stack-navigation-state.js.map +1 -0
  71. package/lib/module/blank-stack/utils/with-stack-navigation/index.js +49 -55
  72. package/lib/module/blank-stack/utils/with-stack-navigation/index.js.map +1 -1
  73. package/lib/module/blank-stack/utils/with-stack-navigation/types.js +4 -0
  74. package/lib/module/blank-stack/utils/with-stack-navigation/types.js.map +1 -0
  75. package/lib/module/shared/configs/presets.js +8 -2
  76. package/lib/module/shared/configs/presets.js.map +1 -1
  77. package/lib/module/shared/hooks/animation/use-screen-animation.js +42 -21
  78. package/lib/module/shared/hooks/animation/use-screen-animation.js.map +1 -1
  79. package/lib/module/shared/hooks/gestures/use-build-gestures.js.map +1 -1
  80. package/lib/module/shared/providers/flags.provider.js +19 -0
  81. package/lib/module/shared/providers/flags.provider.js.map +1 -0
  82. package/lib/module/shared/providers/register-bounds.provider.js +71 -45
  83. package/lib/module/shared/providers/register-bounds.provider.js.map +1 -1
  84. package/lib/module/shared/stores/bounds.store.js +91 -47
  85. package/lib/module/shared/stores/bounds.store.js.map +1 -1
  86. package/lib/module/shared/utils/bounds/helpers/is-bounds-equal.js +1 -1
  87. package/lib/module/shared/utils/bounds/helpers/is-bounds-equal.js.map +1 -1
  88. package/lib/module/shared/utils/bounds/index.js +4 -5
  89. package/lib/module/shared/utils/bounds/index.js.map +1 -1
  90. package/lib/module/shared/utils/create-provider.js +20 -1
  91. package/lib/module/shared/utils/create-provider.js.map +1 -1
  92. package/lib/module/shared/utils/reset-stores-for-screen.js +2 -0
  93. package/lib/module/shared/utils/reset-stores-for-screen.js.map +1 -1
  94. package/lib/typescript/blank-stack/components/{Overlay.d.ts → overlay.d.ts} +1 -1
  95. package/lib/typescript/blank-stack/components/overlay.d.ts.map +1 -0
  96. package/lib/typescript/blank-stack/components/{Screens.d.ts → screens.d.ts} +1 -1
  97. package/lib/typescript/blank-stack/components/{Screens.d.ts.map → screens.d.ts.map} +1 -1
  98. package/lib/typescript/blank-stack/components/stack-view.d.ts +3 -0
  99. package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -0
  100. package/lib/typescript/blank-stack/index.d.ts +1 -2
  101. package/lib/typescript/blank-stack/index.d.ts.map +1 -1
  102. package/lib/typescript/blank-stack/navigators/{createBlankStackNavigator.d.ts → create-blank-stack-navigator.d.ts} +1 -1
  103. package/lib/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts.map +1 -0
  104. package/lib/typescript/blank-stack/types.d.ts +23 -105
  105. package/lib/typescript/blank-stack/types.d.ts.map +1 -1
  106. package/lib/typescript/blank-stack/utils/with-stack-navigation/helpers/are-descriptors-equal.d.ts.map +1 -0
  107. package/lib/typescript/blank-stack/utils/with-stack-navigation/helpers/calculate-active-screens-limit.d.ts.map +1 -0
  108. package/lib/typescript/blank-stack/utils/with-stack-navigation/helpers/compose-descriptors.d.ts.map +1 -0
  109. package/lib/typescript/blank-stack/utils/with-stack-navigation/helpers/have-same-route-keys.d.ts.map +1 -0
  110. package/lib/typescript/blank-stack/utils/with-stack-navigation/helpers/routes-are-identical.d.ts.map +1 -0
  111. package/lib/typescript/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-closing-route-keys.d.ts.map +1 -1
  112. package/lib/typescript/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-previous.d.ts.map +1 -1
  113. package/lib/typescript/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-stack-navigation-state.d.ts +1 -1
  114. package/lib/typescript/blank-stack/utils/with-stack-navigation/hooks/use-stack-navigation-state.d.ts.map +1 -0
  115. package/lib/typescript/blank-stack/utils/with-stack-navigation/index.d.ts +3 -5
  116. package/lib/typescript/blank-stack/utils/with-stack-navigation/index.d.ts.map +1 -1
  117. package/lib/typescript/blank-stack/utils/with-stack-navigation/{_types.d.ts → types.d.ts} +1 -1
  118. package/lib/typescript/blank-stack/utils/with-stack-navigation/types.d.ts.map +1 -0
  119. package/lib/typescript/native-stack/types.d.ts +7 -1
  120. package/lib/typescript/native-stack/types.d.ts.map +1 -1
  121. package/lib/typescript/shared/configs/index.d.ts.map +1 -1
  122. package/lib/typescript/shared/configs/presets.d.ts.map +1 -1
  123. package/lib/typescript/shared/hooks/animation/use-screen-animation.d.ts.map +1 -1
  124. package/lib/typescript/shared/hooks/gestures/use-build-gestures.d.ts.map +1 -1
  125. package/lib/typescript/shared/index.d.ts +32 -32
  126. package/lib/typescript/shared/index.d.ts.map +1 -1
  127. package/lib/typescript/shared/providers/flags.provider.d.ts +10 -0
  128. package/lib/typescript/shared/providers/flags.provider.d.ts.map +1 -0
  129. package/lib/typescript/shared/providers/register-bounds.provider.d.ts.map +1 -1
  130. package/lib/typescript/shared/stores/bounds.store.d.ts +23 -11
  131. package/lib/typescript/shared/stores/bounds.store.d.ts.map +1 -1
  132. package/lib/typescript/shared/types/bounds.types.d.ts +2 -2
  133. package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
  134. package/lib/typescript/shared/types/core.types.d.ts +0 -4
  135. package/lib/typescript/shared/types/core.types.d.ts.map +1 -1
  136. package/lib/typescript/shared/utils/bounds/index.d.ts.map +1 -1
  137. package/lib/typescript/shared/utils/create-provider.d.ts +2 -2
  138. package/lib/typescript/shared/utils/create-provider.d.ts.map +1 -1
  139. package/lib/typescript/shared/utils/reset-stores-for-screen.d.ts.map +1 -1
  140. package/package.json +2 -1
  141. package/src/blank-stack/components/{Overlay.tsx → overlay.tsx} +9 -12
  142. package/src/blank-stack/components/{Screens.tsx → screens.tsx} +7 -9
  143. package/src/blank-stack/components/stack-view.tsx +104 -0
  144. package/src/blank-stack/hooks/use-overlay-animation.tsx +11 -11
  145. package/src/blank-stack/index.ts +1 -2
  146. package/src/blank-stack/navigators/{createBlankStackNavigator.tsx → create-blank-stack-navigator.tsx} +1 -1
  147. package/src/blank-stack/types.ts +31 -109
  148. package/src/blank-stack/utils/with-stack-navigation/{_utils → helpers}/compose-descriptors.ts +1 -8
  149. package/src/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-closing-route-keys.tsx +1 -12
  150. package/src/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-stack-navigation-state.tsx +5 -5
  151. package/src/blank-stack/utils/with-stack-navigation/index.tsx +43 -63
  152. package/src/native-stack/types.ts +8 -1
  153. package/src/shared/__tests__/bounds.store.test.ts +398 -167
  154. package/src/shared/__tests__/determine-dismissal.test.ts +2 -12
  155. package/src/shared/__tests__/geometry.test.ts +1 -1
  156. package/src/shared/__tests__/gesture.velocity.test.ts +2 -10
  157. package/src/shared/configs/presets.ts +8 -2
  158. package/src/shared/hooks/animation/use-screen-animation.tsx +65 -31
  159. package/src/shared/hooks/gestures/use-build-gestures.tsx +4 -1
  160. package/src/shared/providers/flags.provider.tsx +21 -0
  161. package/src/shared/providers/register-bounds.provider.tsx +85 -54
  162. package/src/shared/stores/bounds.store.ts +90 -54
  163. package/src/shared/types/bounds.types.ts +2 -2
  164. package/src/shared/types/core.types.ts +4 -6
  165. package/src/shared/utils/bounds/helpers/is-bounds-equal.ts +1 -1
  166. package/src/shared/utils/bounds/index.ts +7 -10
  167. package/src/shared/utils/create-provider.tsx +35 -1
  168. package/src/shared/utils/reset-stores-for-screen.ts +2 -0
  169. package/lib/commonjs/blank-stack/components/Overlay.js.map +0 -1
  170. package/lib/commonjs/blank-stack/components/Screens.js.map +0 -1
  171. package/lib/commonjs/blank-stack/components/StackView.js +0 -93
  172. package/lib/commonjs/blank-stack/components/StackView.js.map +0 -1
  173. package/lib/commonjs/blank-stack/navigators/createBlankStackNavigator.js.map +0 -1
  174. package/lib/commonjs/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.js.map +0 -1
  175. package/lib/commonjs/blank-stack/utils/with-stack-navigation/_hooks/use-previous.js.map +0 -1
  176. package/lib/commonjs/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.js.map +0 -1
  177. package/lib/commonjs/blank-stack/utils/with-stack-navigation/_types.js.map +0 -1
  178. package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.js.map +0 -1
  179. package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/calculate-active-screens-limit.js.map +0 -1
  180. package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js +0 -25
  181. package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js.map +0 -1
  182. package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.js.map +0 -1
  183. package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.js.map +0 -1
  184. package/lib/module/blank-stack/components/Overlay.js.map +0 -1
  185. package/lib/module/blank-stack/components/Screens.js.map +0 -1
  186. package/lib/module/blank-stack/components/StackView.js +0 -88
  187. package/lib/module/blank-stack/components/StackView.js.map +0 -1
  188. package/lib/module/blank-stack/navigators/createBlankStackNavigator.js.map +0 -1
  189. package/lib/module/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.js.map +0 -1
  190. package/lib/module/blank-stack/utils/with-stack-navigation/_hooks/use-previous.js.map +0 -1
  191. package/lib/module/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.js.map +0 -1
  192. package/lib/module/blank-stack/utils/with-stack-navigation/_types.js +0 -4
  193. package/lib/module/blank-stack/utils/with-stack-navigation/_types.js.map +0 -1
  194. package/lib/module/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.js.map +0 -1
  195. package/lib/module/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js +0 -20
  196. package/lib/module/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js.map +0 -1
  197. package/lib/module/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.js.map +0 -1
  198. package/lib/module/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.js.map +0 -1
  199. package/lib/typescript/blank-stack/components/Overlay.d.ts.map +0 -1
  200. package/lib/typescript/blank-stack/components/StackView.d.ts +0 -2
  201. package/lib/typescript/blank-stack/components/StackView.d.ts.map +0 -1
  202. package/lib/typescript/blank-stack/navigators/createBlankStackNavigator.d.ts.map +0 -1
  203. package/lib/typescript/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.d.ts.map +0 -1
  204. package/lib/typescript/blank-stack/utils/with-stack-navigation/_types.d.ts.map +0 -1
  205. package/lib/typescript/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.d.ts.map +0 -1
  206. package/lib/typescript/blank-stack/utils/with-stack-navigation/_utils/calculate-active-screens-limit.d.ts.map +0 -1
  207. package/lib/typescript/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.d.ts.map +0 -1
  208. package/lib/typescript/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.d.ts.map +0 -1
  209. package/lib/typescript/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.d.ts.map +0 -1
  210. package/src/blank-stack/components/StackView.tsx +0 -108
  211. /package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_utils → helpers}/are-descriptors-equal.js +0 -0
  212. /package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_utils → helpers}/calculate-active-screens-limit.js +0 -0
  213. /package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_utils → helpers}/have-same-route-keys.js +0 -0
  214. /package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_utils → helpers}/routes-are-identical.js +0 -0
  215. /package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-previous.js +0 -0
  216. /package/lib/module/blank-stack/utils/with-stack-navigation/{_utils → helpers}/are-descriptors-equal.js +0 -0
  217. /package/lib/module/blank-stack/utils/with-stack-navigation/{_utils → helpers}/calculate-active-screens-limit.js +0 -0
  218. /package/lib/module/blank-stack/utils/with-stack-navigation/{_utils → helpers}/have-same-route-keys.js +0 -0
  219. /package/lib/module/blank-stack/utils/with-stack-navigation/{_utils → helpers}/routes-are-identical.js +0 -0
  220. /package/lib/module/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-previous.js +0 -0
  221. /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_utils → helpers}/are-descriptors-equal.d.ts +0 -0
  222. /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_utils → helpers}/calculate-active-screens-limit.d.ts +0 -0
  223. /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_utils → helpers}/compose-descriptors.d.ts +0 -0
  224. /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_utils → helpers}/have-same-route-keys.d.ts +0 -0
  225. /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_utils → helpers}/routes-are-identical.d.ts +0 -0
  226. /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-closing-route-keys.d.ts +0 -0
  227. /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-previous.d.ts +0 -0
  228. /package/src/blank-stack/utils/with-stack-navigation/{_utils → helpers}/are-descriptors-equal.ts +0 -0
  229. /package/src/blank-stack/utils/with-stack-navigation/{_utils → helpers}/calculate-active-screens-limit.ts +0 -0
  230. /package/src/blank-stack/utils/with-stack-navigation/{_utils → helpers}/have-same-route-keys.ts +0 -0
  231. /package/src/blank-stack/utils/with-stack-navigation/{_utils → helpers}/routes-are-identical.ts +0 -0
  232. /package/src/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-previous.tsx +0 -0
  233. /package/src/blank-stack/utils/with-stack-navigation/{_types.ts → types.ts} +0 -0
@@ -8,51 +8,42 @@ import type { Any } from "../types/utils.types";
8
8
  type TagID = string;
9
9
  type ScreenKey = string;
10
10
 
11
- export type TagData = {
11
+ export type Snapshot = {
12
12
  bounds: MeasuredDimensions;
13
13
  styles: StyleProps;
14
14
  };
15
15
 
16
16
  type ScreenIdentifier = {
17
17
  screenKey: ScreenKey;
18
- parentScreenKey?: ScreenKey;
18
+ ancestorKeys?: ScreenKey[];
19
19
  };
20
20
 
21
21
  type TagLink = {
22
- source: ScreenIdentifier & TagData;
23
- destination: (ScreenIdentifier & TagData) | null;
22
+ source: ScreenIdentifier & Snapshot;
23
+ destination: (ScreenIdentifier & Snapshot) | null;
24
24
  };
25
25
 
26
26
  type TagState = {
27
- occurrences: Record<ScreenKey, TagData>;
27
+ snapshots: Record<ScreenKey, Snapshot & { ancestorKeys?: ScreenKey[] }>;
28
28
  linkStack: TagLink[];
29
29
  };
30
30
 
31
- /**
32
- * Note on cleanup: We intentionally skip automatic cleanup of old links.
33
- * The linkStack grows by one entry per navigation, but `getActiveLink`
34
- * finds the correct link via screenKey matching regardless of stack size.
35
- * This is unlikely to cause performance issues in typical apps, but if
36
- * memory becomes a concern in apps with heavy navigation (hundreds of
37
- * transitions), we should consider implementing cleanup on screen unmount using
38
- * screenKey filtering.
39
- */
40
-
41
31
  const registry = makeMutable<Record<TagID, TagState>>({});
42
32
 
43
- function registerOccurrence(
33
+ function registerSnapshot(
44
34
  tag: TagID,
45
35
  screenKey: ScreenKey,
46
36
  bounds: MeasuredDimensions,
47
37
  styles: StyleProps = {},
38
+ ancestorKeys?: ScreenKey[],
48
39
  ) {
49
40
  "worklet";
50
41
  registry.modify((state: Any) => {
51
42
  "worklet";
52
43
  if (!state[tag]) {
53
- state[tag] = { occurrences: {}, linkStack: [] };
44
+ state[tag] = { snapshots: {}, linkStack: [] };
54
45
  }
55
- state[tag].occurrences[screenKey] = { bounds, styles };
46
+ state[tag].snapshots[screenKey] = { bounds, styles, ancestorKeys };
56
47
  return state;
57
48
  });
58
49
  }
@@ -62,16 +53,15 @@ function setLinkSource(
62
53
  screenKey: ScreenKey,
63
54
  bounds: MeasuredDimensions,
64
55
  styles: StyleProps = {},
65
- parentScreenKey?: ScreenKey,
56
+ ancestorKeys?: ScreenKey[],
66
57
  ) {
67
58
  "worklet";
68
59
  registry.modify((state: Any) => {
69
60
  "worklet";
70
- if (!state[tag]) state[tag] = { occurrences: {}, linkStack: [] };
61
+ if (!state[tag]) state[tag] = { snapshots: {}, linkStack: [] };
71
62
 
72
- // Push new link onto stack
73
63
  state[tag].linkStack.push({
74
- source: { screenKey, parentScreenKey, bounds, styles },
64
+ source: { screenKey, ancestorKeys, bounds, styles },
75
65
  destination: null,
76
66
  });
77
67
  return state;
@@ -83,7 +73,7 @@ function setLinkDestination(
83
73
  screenKey: ScreenKey,
84
74
  bounds: MeasuredDimensions,
85
75
  styles: StyleProps = {},
86
- parentScreenKey?: ScreenKey,
76
+ ancestorKeys?: ScreenKey[],
87
77
  ) {
88
78
  "worklet";
89
79
  registry.modify((state: Any) => {
@@ -94,7 +84,7 @@ function setLinkDestination(
94
84
  // Find the topmost link without a destination
95
85
  for (let i = stack.length - 1; i >= 0; i--) {
96
86
  if (stack[i].destination === null) {
97
- stack[i].destination = { screenKey, parentScreenKey, bounds, styles };
87
+ stack[i].destination = { screenKey, ancestorKeys, bounds, styles };
98
88
  break;
99
89
  }
100
90
  }
@@ -102,22 +92,53 @@ function setLinkDestination(
102
92
  });
103
93
  }
104
94
 
105
- function getOccurrence(tag: TagID, key: ScreenKey) {
106
- "worklet";
107
- return registry.value[tag]?.occurrences[key] ?? null;
108
- }
109
-
110
- // Helper to check if a screen identifier matches a given key
95
+ /**
96
+ * Helper to check if a screen identifier matches a given key.
97
+ * Checks both direct screenKey match and ancestor chain.
98
+ */
111
99
  function matchesScreenKey(
112
100
  identifier: ScreenIdentifier | null | undefined,
113
101
  key: ScreenKey,
114
102
  ): boolean {
115
103
  "worklet";
116
104
  if (!identifier) return false;
117
- return identifier.screenKey === key || identifier.parentScreenKey === key;
105
+
106
+ // Direct match
107
+ if (identifier.screenKey === key) return true;
108
+
109
+ // Check ancestor chain
110
+ return identifier.ancestorKeys?.includes(key) ?? false;
111
+ }
112
+
113
+ /**
114
+ * Get snapshot by tag and optional key.
115
+ * If key is provided, supports ancestor matching - if the key matches any ancestor
116
+ * of a stored snapshot, that snapshot will be returned.
117
+ * If key is omitted, returns the most recently registered snapshot.
118
+ */
119
+ function getSnapshot(tag: TagID, key: ScreenKey): Snapshot | null {
120
+ "worklet";
121
+ const tagState = registry.value[tag];
122
+ if (!tagState) return null;
123
+
124
+ // Direct match in occurrences
125
+ if (tagState.snapshots[key]) {
126
+ const snap = tagState.snapshots[key];
127
+ return { bounds: snap.bounds, styles: snap.styles };
128
+ }
129
+
130
+ // Ancestor match
131
+ for (const screenKey in tagState.snapshots) {
132
+ const snap = tagState.snapshots[screenKey];
133
+ if (snap.ancestorKeys?.includes(key)) {
134
+ return { bounds: snap.bounds, styles: snap.styles };
135
+ }
136
+ }
137
+
138
+ return null;
118
139
  }
119
140
 
120
- function getActiveLink(tag: TagID, screenKey?: ScreenKey, isClosing?: boolean) {
141
+ function getActiveLink(tag: TagID, screenKey?: ScreenKey): TagLink | null {
121
142
  "worklet";
122
143
  const stack = registry.value[tag]?.linkStack;
123
144
 
@@ -127,40 +148,55 @@ function getActiveLink(tag: TagID, screenKey?: ScreenKey, isClosing?: boolean) {
127
148
 
128
149
  // If screenKey provided, find link involving that screen
129
150
  if (screenKey) {
130
- // When closing (backward nav), we want the link where this screen is the DESTINATION
131
- // When opening (forward nav), we want the link where this screen is the DESTINATION too
132
- // The source is always the "from" screen, destination is the "to" screen
133
-
134
- if (isClosing) {
135
- // Backward: find link where I am the destination (I'm going back to source)
136
- for (let i = stack.length - 1; i >= 0; i--) {
137
- const link = stack[i];
138
- if (matchesScreenKey(link.destination, screenKey)) {
139
- return link;
140
- }
141
- }
142
- }
143
-
144
- // Forward or fallback: find any link involving this screen
145
151
  for (let i = stack.length - 1; i >= 0; i--) {
146
152
  const link = stack[i];
147
- if (
148
- matchesScreenKey(link.source, screenKey) ||
149
- matchesScreenKey(link.destination, screenKey)
150
- ) {
153
+ if (!link.destination) continue;
154
+
155
+ const isSource = matchesScreenKey(link.source, screenKey);
156
+ const isDestination = matchesScreenKey(link.destination, screenKey);
157
+
158
+ if (isSource || isDestination) {
159
+ // If I match the source, I'm closing (going back to where I came from)
151
160
  return link;
152
161
  }
153
162
  }
154
163
  return null;
155
164
  }
156
165
 
157
- return stack[stack.length - 1] ?? null;
166
+ const lastLink = stack[stack.length - 1];
167
+ return lastLink ? lastLink : null;
168
+ }
169
+
170
+ /**
171
+ * Clear all snapshots and links for a screen across all tags.
172
+ * Called when a screen unmounts.
173
+ */
174
+ function clear(screenKey: ScreenKey) {
175
+ "worklet";
176
+ registry.modify((state: Any) => {
177
+ "worklet";
178
+ for (const tag in state) {
179
+ // Remove snapshot
180
+ if (state[tag].snapshots[screenKey]) {
181
+ delete state[tag].snapshots[screenKey];
182
+ }
183
+
184
+ // Remove links involving this screen
185
+ state[tag].linkStack = state[tag].linkStack.filter((link: TagLink) => {
186
+ const sourceMatches = matchesScreenKey(link.source, screenKey);
187
+ const destMatches = matchesScreenKey(link.destination, screenKey);
188
+ return !sourceMatches && !destMatches;
189
+ });
190
+ }
191
+ return state;
192
+ });
158
193
  }
159
194
 
160
195
  export const BoundStore = {
161
- registerOccurrence,
196
+ registerSnapshot,
162
197
  setLinkSource,
163
198
  setLinkDestination,
164
199
  getActiveLink,
165
- getOccurrence,
200
+ getSnapshot,
201
+ clear,
166
202
  };
@@ -1,5 +1,5 @@
1
1
  import type { MeasuredDimensions, StyleProps } from "react-native-reanimated";
2
- import type { TagData } from "../stores/bounds.store";
2
+ import type { Snapshot } from "../stores/bounds.store";
3
3
  import type {
4
4
  BoundsBuilderOptions,
5
5
  BoundsReturnType,
@@ -21,5 +21,5 @@ export type BoundEntry = {
21
21
 
22
22
  export type BoundsAccessor = {
23
23
  <T extends BoundsBuilderOptions>(options: T): BoundsReturnType<T>;
24
- getOccurrence: (id: string, key: string) => TagData;
24
+ getSnapshot: (id: string, key?: string) => Snapshot | null;
25
25
  };
@@ -1,5 +1,8 @@
1
1
  import type { AnimatedProps } from "react-native-reanimated";
2
- import type { ScreenStyleInterpolator, TransitionSpec } from "./animation.types";
2
+ import type {
3
+ ScreenStyleInterpolator,
4
+ TransitionSpec,
5
+ } from "./animation.types";
3
6
  import type { GestureActivationArea, GestureDirection } from "./gesture.types";
4
7
 
5
8
  export type Layout = {
@@ -97,9 +100,4 @@ export type ScreenTransitionConfig = {
97
100
  * The area of the screen where the gesture is activated.
98
101
  */
99
102
  gestureActivationArea?: GestureActivationArea;
100
-
101
- /**
102
- * Whether to enable transitions. It sets the presentation to containedTransparentModal, animation none, and headerShown to false.
103
- */
104
- enableTransitions?: boolean;
105
103
  };
@@ -11,7 +11,7 @@ export const isBoundsEqual = ({
11
11
  sharedBoundTag: string;
12
12
  }) => {
13
13
  "worklet";
14
- const existing = BoundStore.getOccurrence(sharedBoundTag, key)?.bounds;
14
+ const existing = BoundStore.getSnapshot(sharedBoundTag, key)?.bounds;
15
15
  return (
16
16
  !!existing &&
17
17
  existing.width === measured.width &&
@@ -6,7 +6,7 @@ import {
6
6
  EXIT_RANGE,
7
7
  FULLSCREEN_DIMENSIONS,
8
8
  } from "../../constants";
9
- import { BoundStore, type TagData } from "../../stores/bounds.store";
9
+ import { BoundStore, type Snapshot } from "../../stores/bounds.store";
10
10
  import type {
11
11
  ScreenInterpolationProps,
12
12
  ScreenTransitionState,
@@ -50,16 +50,11 @@ const resolveBounds = (props: {
50
50
  "worklet";
51
51
  const entering = !props.next;
52
52
  const fullscreen = FULLSCREEN_DIMENSIONS(props.dimensions);
53
- const isClosing = props.current?.closing === 1;
54
53
 
55
54
  const isFullscreenTarget = props.computeOptions.target === "fullscreen";
56
55
 
57
56
  // Try exact match first (strict matching for nested stacks)
58
- let link = BoundStore.getActiveLink(
59
- props.id,
60
- props.current?.route.key,
61
- isClosing,
62
- );
57
+ let link = BoundStore.getActiveLink(props.id, props.current?.route.key);
63
58
 
64
59
  // For fullscreen target, fall back to most recent link for this tag
65
60
  // (destination screen might not have a matching element)
@@ -207,10 +202,12 @@ export const createBounds = (
207
202
  );
208
203
  };
209
204
 
210
- const getOccurrence = (tag: string, key: string): TagData => {
205
+ const getSnapshot = (tag: string, key: string): Snapshot | null => {
211
206
  "worklet";
212
- return BoundStore.getOccurrence(tag, key);
207
+ return BoundStore.getSnapshot(tag, key);
213
208
  };
214
209
 
215
- return Object.assign(boundsFunction, { getOccurrence }) as BoundsAccessor;
210
+ return Object.assign(boundsFunction, {
211
+ getSnapshot,
212
+ }) as BoundsAccessor;
216
213
  };
@@ -3,7 +3,13 @@
3
3
  * https://github.com/MatiPl01/react-native-sortables/blob/main/packages/react-native-sortables/src/providers/utils/createProvider.tsx
4
4
  * SUPER COOL AMAZING UTILITY
5
5
  */
6
- import { createContext, type ReactNode, useContext, useMemo } from "react";
6
+ import {
7
+ type ComponentType,
8
+ createContext,
9
+ type ReactNode,
10
+ useContext,
11
+ useMemo,
12
+ } from "react";
7
13
 
8
14
  export default function createProvider<
9
15
  ProviderName extends string,
@@ -54,10 +60,34 @@ export default function createProvider<
54
60
  return context;
55
61
  };
56
62
 
63
+ const withProvider = (Component: ComponentType<ContextValue>) => {
64
+ return function WithProviderWrapper(props: ProviderProps) {
65
+ const { enabled = true, value } = factory(props);
66
+
67
+ if (!value) {
68
+ throw new Error(
69
+ `${name}Context value must be provided. You likely forgot to return it from the factory function.`,
70
+ );
71
+ }
72
+
73
+ const memoValue = useMemo(
74
+ () => (enabled ? value : null),
75
+ [enabled, value],
76
+ );
77
+
78
+ return (
79
+ <Context.Provider value={memoValue}>
80
+ <Component {...value} />
81
+ </Context.Provider>
82
+ );
83
+ };
84
+ };
85
+
57
86
  return {
58
87
  [`${name}Context`]: Context,
59
88
  [`${name}Provider`]: Provider,
60
89
  [`use${name}Context`]: useEnhancedContext,
90
+ [`with${name}Provider`]: withProvider,
61
91
  } as {
62
92
  [P in ProviderName as `${P}Context`]: React.Context<ContextValue>;
63
93
  } & {
@@ -66,6 +96,10 @@ export default function createProvider<
66
96
  [P in ProviderName as `use${P}Context`]: () => Guarded extends true
67
97
  ? ContextValue
68
98
  : ContextValue | null;
99
+ } & {
100
+ [P in ProviderName as `with${P}Provider`]: (
101
+ Component: ComponentType<ContextValue>,
102
+ ) => React.FC<ProviderProps>;
69
103
  };
70
104
  };
71
105
  }
@@ -1,5 +1,6 @@
1
1
  import type { TransitionDescriptor } from "../providers/keys.provider";
2
2
  import { AnimationStore } from "../stores/animation.store";
3
+ import { BoundStore } from "../stores/bounds.store";
3
4
  import { GestureStore } from "../stores/gesture.store";
4
5
 
5
6
  /**
@@ -8,4 +9,5 @@ import { GestureStore } from "../stores/gesture.store";
8
9
  export const resetStoresForScreen = (current: TransitionDescriptor) => {
9
10
  AnimationStore.clear(current.route.key);
10
11
  GestureStore.clear(current.route.key);
12
+ BoundStore.clear(current.route.key);
11
13
  };
@@ -1 +0,0 @@
1
- {"version":3,"names":["_native","require","_react","_reactNative","_reactNativeSafeAreaContext","_useScreenAnimation","_keys","_transitionStyles","_useOverlayAnimation","_withStackNavigation","_jsxRuntime","getActiveFloatOverlay","scenes","index","length","startIndex","Math","max","i","scene","options","descriptor","overlayMode","overlayShown","overlayIndex","OverlayHost","isFloating","insets","useSafeAreaInsets","OverlayComponent","overlay","overlayAnimation","optimisticActiveIndex","useOverlayAnimation","useStackNavigationContext","overlaySceneIndex","useMemo","findIndex","stackScene","route","key","focusedRoute","maxOffset","normalizedIndex","min","screenAnimation","useScreenAnimation","overlayProps","navigation","focusedIndex","jsx","Animated","View","pointerEvents","style","styles","container","floating","zIndex","absolute","children","NavigationContext","Provider","value","NavigationRouteContext","FloatOverlay","activeOverlay","previous","current","next","KeysProvider","TransitionStylesProvider","ScreenOverlay","useKeys","Overlay","exports","Float","Screen","StyleSheet","create","absoluteFillObject","flex"],"sourceRoot":"../../../../src","sources":["blank-stack/components/Overlay.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactNative","require","_reactNativeReanimated","_interopRequireWildcard","_reactNativeScreens","_animation","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","EPSILON","STATE_INACTIVE","STATE_TRANSITIONING_OR_BELOW_TOP","STATE_ON_TOP","AnimatedScreen","Animated","createAnimatedComponent","RNSScreen","Screen","routeKey","index","routesLength","isPreloaded","activeScreensLimit","children","freezeOnBlur","shouldFreeze","sceneProgress","AnimationStore","getAnimation","screenActivity","useSharedValue","useDerivedValue","value","outputValue","v","interpolate","next","Math","trunc","animatedProps","useAnimatedProps","activityState","jsx","enabled","style","StyleSheet","absoluteFill","pointerEvents","exports"],"sourceRoot":"../../../../src","sources":["blank-stack/components/Screens.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,93 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.StackView = void 0;
7
- var _elements = require("@react-navigation/elements");
8
- var _native = require("@react-navigation/native");
9
- var React = _interopRequireWildcard(require("react"));
10
- var _reactNative = require("react-native");
11
- var _reactNativeGestureHandler = require("react-native-gesture-handler");
12
- var _reactNativeScreens = require("react-native-screens");
13
- var _screenLifecycle = require("../../shared/components/controllers/screen-lifecycle");
14
- var _screenTransition = require("../../shared/providers/screen-transition.provider");
15
- var _withStackNavigation = require("../utils/with-stack-navigation");
16
- var _Overlay = require("./Overlay");
17
- var _Screens = require("./Screens");
18
- var _jsxRuntime = require("react/jsx-runtime");
19
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
20
- function isFabric() {
21
- return "nativeFabricUIManager" in global;
22
- }
23
- const SceneView = /*#__PURE__*/React.memo(({
24
- descriptor
25
- }) => {
26
- const {
27
- route,
28
- navigation,
29
- render
30
- } = descriptor;
31
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_native.NavigationContext.Provider, {
32
- value: navigation,
33
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_native.NavigationRouteContext.Provider, {
34
- value: route,
35
- children: [descriptor.options.overlayMode === "screen" && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Overlay.Overlay.Screen, {}), render()]
36
- })
37
- });
38
- });
39
- const StackView = exports.StackView = (0, _withStackNavigation.withStackNavigationProvider)(({
40
- activeScreensLimit,
41
- descriptors,
42
- focusedIndex,
43
- routes,
44
- scenes,
45
- shouldShowFloatOverlay
46
- }) => {
47
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeGestureHandler.GestureHandlerRootView, {
48
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_elements.SafeAreaProviderCompat, {
49
- children: [shouldShowFloatOverlay ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Overlay.Overlay.Float, {}) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeScreens.ScreenContainer, {
50
- style: styles.container,
51
- children: scenes.map((scene, sceneIndex) => {
52
- const descriptor = scene.descriptor;
53
- const route = scene.route;
54
- const isFocused = focusedIndex === sceneIndex;
55
- const isBelowFocused = focusedIndex - 1 === sceneIndex;
56
- const previousDescriptor = scenes[sceneIndex - 1]?.descriptor ?? undefined;
57
- const nextDescriptor = scenes[sceneIndex + 1]?.descriptor ?? undefined;
58
- const isPreloaded = descriptors[route.key] === undefined;
59
-
60
- // On Fabric, when screen is frozen, animated and reanimated values are not updated
61
- // due to component being unmounted. To avoid this, we don't freeze the previous screen there
62
- const shouldFreeze = isFabric() ? !isPreloaded && !isFocused && !isBelowFocused : !isPreloaded && !isFocused;
63
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Screens.Screen, {
64
- isPreloaded: isPreloaded,
65
- index: sceneIndex,
66
- activeScreensLimit: activeScreensLimit,
67
- routeKey: route.key,
68
- routesLength: routes.length,
69
- shouldFreeze: shouldFreeze,
70
- freezeOnBlur: descriptor.options.freezeOnBlur,
71
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_screenTransition.ScreenTransitionProvider, {
72
- previous: previousDescriptor,
73
- current: descriptor,
74
- next: nextDescriptor,
75
- LifecycleController: _screenLifecycle.BlankStackScreenLifecycleController,
76
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(SceneView, {
77
- isFocused: isFocused,
78
- sceneIndex: sceneIndex,
79
- descriptor: descriptor
80
- }, route.key)
81
- })
82
- }, route.key);
83
- })
84
- })]
85
- })
86
- });
87
- });
88
- const styles = _reactNative.StyleSheet.create({
89
- container: {
90
- flex: 1
91
- }
92
- });
93
- //# sourceMappingURL=StackView.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_elements","require","_native","React","_interopRequireWildcard","_reactNative","_reactNativeGestureHandler","_reactNativeScreens","_screenLifecycle","_screenTransition","_withStackNavigation","_Overlay","_Screens","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","isFabric","global","SceneView","memo","descriptor","route","navigation","render","jsx","NavigationContext","Provider","value","children","jsxs","NavigationRouteContext","options","overlayMode","Overlay","Screen","StackView","exports","withStackNavigationProvider","activeScreensLimit","descriptors","focusedIndex","routes","scenes","shouldShowFloatOverlay","GestureHandlerRootView","SafeAreaProviderCompat","Float","ScreenContainer","style","styles","container","map","scene","sceneIndex","isFocused","isBelowFocused","previousDescriptor","undefined","nextDescriptor","isPreloaded","key","shouldFreeze","index","routeKey","routesLength","length","freezeOnBlur","ScreenTransitionProvider","previous","current","next","LifecycleController","BlankStackScreenLifecycleController","StyleSheet","create","flex"],"sourceRoot":"../../../../src","sources":["blank-stack/components/StackView.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_native","require","React","_interopRequireWildcard","_StackView","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","BlankStackNavigator","id","initialRouteName","children","layout","screenListeners","screenOptions","screenLayout","rest","state","describe","descriptors","navigation","NavigationContent","useNavigationBuilder","StackRouter","useEffect","addListener","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","StackActions","popToTop","target","key","jsx","StackView","createBlankStackNavigator","config","createNavigatorFactory"],"sourceRoot":"../../../../src","sources":["blank-stack/navigators/createBlankStackNavigator.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_react","require","_reactNativeReanimated","_useStableCallback","_interopRequireDefault","e","__esModule","default","useClosingRouteKeys","keysRef","useRef","Set","finishedRef","shared","useSharedValue","add","useStableCallback","key","keys","current","has","delete","modify","prev","includes","push","remove","index","indexOf","splice","clear","size","length","useMemo","ref","exports"],"sourceRoot":"../../../../../../src","sources":["blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,kBAAA,GAAAC,sBAAA,CAAAH,OAAA;AAA6E,SAAAG,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEtE,MAAMG,mBAAmB,GAAGA,CAAA,KAAM;EACxC,MAAMC,OAAO,GAAG,IAAAC,aAAM,EAAc,IAAIC,GAAG,CAAC,CAAC,CAAC;EAC9C,MAAMC,WAAW,GAAG,IAAAF,aAAM,EAAc,IAAIC,GAAG,CAAC,CAAC,CAAC;EAClD,MAAME,MAAM,GAAG,IAAAC,qCAAc,EAAW,EAAE,CAAC;EAE3C,MAAMC,GAAG,GAAG,IAAAC,0BAAiB,EAAEC,GAAW,IAAK;IAC9C,MAAMC,IAAI,GAAGT,OAAO,CAACU,OAAO;IAC5B,IAAID,IAAI,CAACE,GAAG,CAACH,GAAG,CAAC,EAAE;MAClB;IACD;IAEAL,WAAW,CAACO,OAAO,CAACE,MAAM,CAACJ,GAAG,CAAC;IAC/BC,IAAI,CAACH,GAAG,CAACE,GAAG,CAAC;IACbJ,MAAM,CAACS,MAAM,CAAEC,IAAI,IAAK;MACvB,SAAS;;MACT,IAAI,CAACA,IAAI,CAACC,QAAQ,CAACP,GAAG,CAAC,EAAE;QACxBM,IAAI,CAACE,IAAI,CAACR,GAAG,CAAC;MACf;MACA,OAAOM,IAAI;IACZ,CAAC,CAAC;EACH,CAAC,CAAC;EAEF,MAAMG,MAAM,GAAG,IAAAV,0BAAiB,EAAEC,GAAW,IAAK;IACjD,MAAMC,IAAI,GAAGT,OAAO,CAACU,OAAO;IAC5B,IAAI,CAACD,IAAI,CAACG,MAAM,CAACJ,GAAG,CAAC,EAAE;MACtBL,WAAW,CAACO,OAAO,CAACE,MAAM,CAACJ,GAAG,CAAC;MAC/B;IACD;IAEAL,WAAW,CAACO,OAAO,CAACE,MAAM,CAACJ,GAAG,CAAC;IAC/BJ,MAAM,CAACS,MAAM,CAAEC,IAAI,IAAK;MACvB,SAAS;;MACT,MAAMI,KAAK,GAAGJ,IAAI,CAACK,OAAO,CAACX,GAAG,CAAC;MAC/B,IAAIU,KAAK,KAAK,CAAC,CAAC,EAAE;QACjBJ,IAAI,CAACM,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;MACtB;MACA,OAAOJ,IAAI;IACZ,CAAC,CAAC;EACH,CAAC,CAAC;EAEF,MAAMO,KAAK,GAAG,IAAAd,0BAAiB,EAAC,MAAM;IACrC,MAAME,IAAI,GAAGT,OAAO,CAACU,OAAO;IAC5B,IAAI,CAACD,IAAI,CAACa,IAAI,EAAE;MACfnB,WAAW,CAACO,OAAO,CAACW,KAAK,CAAC,CAAC;MAC3B;IACD;IAEAZ,IAAI,CAACY,KAAK,CAAC,CAAC;IACZlB,WAAW,CAACO,OAAO,CAACW,KAAK,CAAC,CAAC;IAC3BjB,MAAM,CAACS,MAAM,CAAEC,IAAI,IAAK;MACvB,SAAS;;MACTA,IAAI,CAACS,MAAM,GAAG,CAAC;MACf,OAAOT,IAAI;IACZ,CAAC,CAAC;EACH,CAAC,CAAC;EAEF,OAAO,IAAAU,cAAO,EACb,OAAO;IACNC,GAAG,EAAEzB,OAAO;IACZI,MAAM;IACNE,GAAG;IACHW,MAAM;IACNI;EACD,CAAC,CAAC,EACF,CAACjB,MAAM,EAAEE,GAAG,EAAEW,MAAM,EAAEI,KAAK,CAC5B,CAAC;AACF,CAAC;AAACK,OAAA,CAAA3B,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_react","require","usePrevious","value","ref","useRef","useEffect","current","exports"],"sourceRoot":"../../../../../../src","sources":["blank-stack/utils/with-stack-navigation/_hooks/use-previous.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,MAAMC,WAAW,GAAQC,KAAQ,IAAe;EACtD,MAAMC,GAAG,GAAG,IAAAC,aAAM,EAAI,IAAI,CAAC;EAE3B,IAAAC,gBAAS,EAAC,MAAM;IACfF,GAAG,CAACG,OAAO,GAAGJ,KAAK;EACpB,CAAC,CAAC;EAEF,OAAOC,GAAG,CAACG,OAAO;AACnB,CAAC;AAACC,OAAA,CAAAN,WAAA,GAAAA,WAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_native","require","_react","_useStableCallback","_interopRequireDefault","_areDescriptorsEqual","_composeDescriptors","_haveSameRouteKeys","_routesAreIdentical","_useClosingRouteKeys","_usePrevious","e","__esModule","default","alignRoutesWithLatest","currentRoutes","currentDescriptors","nextRoutes","nextDescriptors","length","routes","descriptors","composeDescriptors","nextRouteLookup","Map","route","set","key","didChange","alignedRoutes","map","nextRoute","get","routesResult","syncRoutesWithRemoved","prevRoutes","prevDescriptors","closingRouteKeys","clear","derivedRoutes","slice","previousFocusedRoute","nextFocusedRoute","nextRouteWasPresent","some","previousRouteStillPresent","add","push","remove","insertIndex","Math","max","splice","activeKeys","Set","Array","from","ref","current","has","useStackNavigationState","props","previousRoutes","usePrevious","state","useClosingRouteKeys","localState","setLocalState","useState","useLayoutEffect","nextRoutesSnapshot","previousRoutesSnapshot","routeKeysUnchanged","haveSameRouteKeys","derivedDescriptors","result","fallbackRoutes","routesChanged","routesAreIdentical","descriptorsChanged","areDescriptorsEqual","handleCloseRoute","useStableCallback","r","navigation","dispatch","StackActions","pop","source","target","candidate","filter","exports"],"sourceRoot":"../../../../../../src","sources":["blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["blank-stack/utils/with-stack-navigation/_types.ts"],"mappings":"","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["areDescriptorsEqual","a","b","aKeys","Object","keys","bKeys","length","every","key","exports"],"sourceRoot":"../../../../../../src","sources":["blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.ts"],"mappings":";;;;;;AAEO,MAAMA,mBAAmB,GAAGA,CAClCC,CAA0B,EAC1BC,CAA0B,KACb;EACb,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;AAC/C,CAAC;AAACC,OAAA,CAAAV,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["calculateActiveScreensLimit","routes","descriptors","length","limit","i","route","shouldKeepPrevious","key","options","detachPreviousScreen","Math","min"],"sourceRoot":"../../../../../../src","sources":["blank-stack/utils/with-stack-navigation/_utils/calculate-active-screens-limit.ts"],"mappings":";;;;;;AAGO,SAASA,2BAA2BA,CAC1CC,MAAgD,EAChDC,WAAoC,EAC3B;EACT,IAAID,MAAM,CAACE,MAAM,KAAK,CAAC,EAAE;IACxB,OAAO,CAAC;EACT;EAEA,IAAIC,KAAK,GAAG,CAAC;EAEb,KAAK,IAAIC,CAAC,GAAGJ,MAAM,CAACE,MAAM,GAAG,CAAC,EAAEE,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IAC5C,MAAMC,KAAK,GAAGL,MAAM,CAACI,CAAC,CAAC;IAEvB,MAAME,kBAAkB,GACvBL,WAAW,GAAGI,KAAK,CAACE,GAAG,CAAC,EAAEC,OAAO,EAAEC,oBAAoB,KAAK,IAAI;IAEjE,IAAIH,kBAAkB,EAAE;MACvBH,KAAK,EAAE;MACP;IACD;IAEA;EACD;EAEA,OAAOO,IAAI,CAACC,GAAG,CAACR,KAAK,EAAEH,MAAM,CAACE,MAAM,CAAC;AACtC","ignoreList":[]}
@@ -1,25 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.composeDescriptors = void 0;
7
- const composeDescriptors = (routes, nextDescriptors, currentDescriptors) => {
8
- const composed = {};
9
- for (const route of routes) {
10
- const adjusted = nextDescriptors[route.key] ?? currentDescriptors[route.key];
11
-
12
- // useScreenAnimation depends on this, however with blank-stack, this should be enabled by default
13
- const withEnableTransitions = {
14
- ...adjusted,
15
- options: {
16
- ...adjusted.options,
17
- enableTransitions: true
18
- }
19
- };
20
- composed[route.key] = withEnableTransitions;
21
- }
22
- return composed;
23
- };
24
- exports.composeDescriptors = composeDescriptors;
25
- //# sourceMappingURL=compose-descriptors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["composeDescriptors","routes","nextDescriptors","currentDescriptors","composed","route","adjusted","key","withEnableTransitions","options","enableTransitions","exports"],"sourceRoot":"../../../../../../src","sources":["blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.ts"],"mappings":";;;;;;AAGO,MAAMA,kBAAkB,GAAGA,CACjCC,MAAuB,EACvBC,eAAwC,EACxCC,kBAA2C,KACd;EAC7B,MAAMC,QAAiC,GAAG,CAAC,CAAC;EAE5C,KAAK,MAAMC,KAAK,IAAIJ,MAAM,EAAE;IAC3B,MAAMK,QAAQ,GACbJ,eAAe,CAACG,KAAK,CAACE,GAAG,CAAC,IAAIJ,kBAAkB,CAACE,KAAK,CAACE,GAAG,CAAC;;IAE5D;IACA,MAAMC,qBAAqB,GAAG;MAC7B,GAAGF,QAAQ;MACXG,OAAO,EAAE;QAAE,GAAGH,QAAQ,CAACG,OAAO;QAAEC,iBAAiB,EAAE;MAAK;IACzD,CAAC;IACDN,QAAQ,CAACC,KAAK,CAACE,GAAG,CAAC,GAAGC,qBAAqB;EAC5C;EAEA,OAAOJ,QAAQ;AAChB,CAAC;AAACO,OAAA,CAAAX,kBAAA,GAAAA,kBAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["haveSameRouteKeys","previous","next","length","every","route","index","key","exports"],"sourceRoot":"../../../../../../src","sources":["blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.ts"],"mappings":";;;;;;AAEO,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;AAACC,OAAA,CAAAR,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["routesAreIdentical","a","b","length","every","route","index","exports"],"sourceRoot":"../../../../../../src","sources":["blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.ts"],"mappings":";;;;;;AAEO,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;AAACC,OAAA,CAAAP,kBAAA,GAAAA,kBAAA","ignoreList":[]}