react-native-screen-transitions 3.6.0-beta.0 → 3.7.0-alpha.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 (381) hide show
  1. package/README.md +2 -2
  2. package/lib/commonjs/blank-stack/components/stack-view.js +35 -39
  3. package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -1
  4. package/lib/commonjs/blank-stack/navigators/create-blank-stack-navigator.js +7 -14
  5. package/lib/commonjs/blank-stack/navigators/create-blank-stack-navigator.js.map +1 -1
  6. package/lib/commonjs/component-stack/components/stack-view.js +4 -11
  7. package/lib/commonjs/component-stack/components/stack-view.js.map +1 -1
  8. package/lib/commonjs/component-stack/navigators/create-component-stack-navigator.js +1 -1
  9. package/lib/commonjs/native-stack/navigators/createNativeStackNavigator.js +6 -0
  10. package/lib/commonjs/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
  11. package/lib/commonjs/shared/adapters/with-screen-transitions/context.js +28 -0
  12. package/lib/commonjs/shared/adapters/with-screen-transitions/context.js.map +1 -0
  13. package/lib/commonjs/shared/adapters/with-screen-transitions/index.js +75 -0
  14. package/lib/commonjs/shared/adapters/with-screen-transitions/index.js.map +1 -0
  15. package/lib/commonjs/shared/adapters/with-screen-transitions/options.js +103 -0
  16. package/lib/commonjs/shared/adapters/with-screen-transitions/options.js.map +1 -0
  17. package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js +143 -0
  18. package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -0
  19. package/lib/commonjs/shared/adapters/with-screen-transitions/types.js +6 -0
  20. package/lib/commonjs/shared/adapters/with-screen-transitions/types.js.map +1 -0
  21. package/lib/commonjs/shared/components/activity/helpers.js +9 -0
  22. package/lib/commonjs/shared/components/activity/helpers.js.map +1 -0
  23. package/lib/commonjs/shared/components/activity/index.js +20 -0
  24. package/lib/commonjs/shared/components/activity/index.js.map +1 -0
  25. package/lib/commonjs/shared/components/activity/variants/activity-container.js +29 -0
  26. package/lib/commonjs/shared/components/activity/variants/activity-container.js.map +1 -0
  27. package/lib/commonjs/shared/components/activity/variants/activity-screen.js +107 -0
  28. package/lib/commonjs/shared/components/activity/variants/activity-screen.js.map +1 -0
  29. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js +10 -4
  30. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js.map +1 -1
  31. package/lib/commonjs/shared/components/create-boundary-component/utils/measured-bounds.js +13 -1
  32. package/lib/commonjs/shared/components/create-boundary-component/utils/measured-bounds.js.map +1 -1
  33. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +8 -17
  34. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  35. package/lib/commonjs/shared/components/screen-lifecycle/index.js +1 -1
  36. package/lib/commonjs/shared/components/screen-lifecycle/index.js.map +1 -1
  37. package/lib/commonjs/shared/hooks/navigation/use-navigation-helpers.js +10 -4
  38. package/lib/commonjs/shared/hooks/navigation/use-navigation-helpers.js.map +1 -1
  39. package/lib/commonjs/shared/hooks/navigation/use-stack.js +63 -6
  40. package/lib/commonjs/shared/hooks/navigation/use-stack.js.map +1 -1
  41. package/lib/commonjs/shared/index.js +8 -0
  42. package/lib/commonjs/shared/index.js.map +1 -1
  43. package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js +18 -29
  44. package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  45. package/lib/commonjs/shared/providers/screen/descriptors/index.js +6 -0
  46. package/lib/commonjs/shared/providers/screen/descriptors/index.js.map +1 -1
  47. package/lib/commonjs/shared/providers/screen/gestures/ownership/resolve-ownership.js +2 -1
  48. package/lib/commonjs/shared/providers/screen/gestures/ownership/resolve-ownership.js.map +1 -1
  49. package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +1 -1
  50. package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
  51. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-lifecycle.js +4 -1
  52. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +1 -1
  53. package/lib/commonjs/shared/providers/screen/gestures/pan/use-pan-behavior.js +4 -3
  54. package/lib/commonjs/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +1 -1
  55. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-lifecycle.js +4 -1
  56. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +1 -1
  57. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-pinch-behavior.js +4 -3
  58. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +1 -1
  59. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +16 -1
  60. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  61. package/lib/commonjs/shared/providers/stack/direct.provider.js +4 -3
  62. package/lib/commonjs/shared/providers/stack/direct.provider.js.map +1 -1
  63. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js +199 -0
  64. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js.map +1 -0
  65. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js +62 -0
  66. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js.map +1 -0
  67. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js +81 -0
  68. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js.map +1 -0
  69. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js +123 -0
  70. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js.map +1 -0
  71. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/types.js +6 -0
  72. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/types.js.map +1 -0
  73. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/index.js +24 -0
  74. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/index.js.map +1 -0
  75. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js +131 -0
  76. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js.map +1 -0
  77. package/lib/commonjs/shared/providers/stack/managed.provider.js +18 -29
  78. package/lib/commonjs/shared/providers/stack/managed.provider.js.map +1 -1
  79. package/lib/commonjs/shared/types/stack.types.js.map +1 -1
  80. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +47 -50
  81. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  82. package/lib/commonjs/shared/utils/bounds/navigation/zoom/config.js +1 -1
  83. package/lib/commonjs/shared/utils/create-provider.js +99 -10
  84. package/lib/commonjs/shared/utils/create-provider.js.map +1 -1
  85. package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js +8 -5
  86. package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js.map +1 -1
  87. package/lib/commonjs/shared/utils/navigation/sync-routes-with-removed.js +23 -6
  88. package/lib/commonjs/shared/utils/navigation/sync-routes-with-removed.js.map +1 -1
  89. package/lib/commonjs/shared/utils/visibility-block-offset.js +13 -0
  90. package/lib/commonjs/shared/utils/visibility-block-offset.js.map +1 -0
  91. package/lib/module/blank-stack/components/stack-view.js +36 -40
  92. package/lib/module/blank-stack/components/stack-view.js.map +1 -1
  93. package/lib/module/blank-stack/navigators/create-blank-stack-navigator.js +7 -14
  94. package/lib/module/blank-stack/navigators/create-blank-stack-navigator.js.map +1 -1
  95. package/lib/module/component-stack/components/stack-view.js +4 -11
  96. package/lib/module/component-stack/components/stack-view.js.map +1 -1
  97. package/lib/module/component-stack/navigators/create-component-stack-navigator.js +1 -1
  98. package/lib/module/native-stack/navigators/createNativeStackNavigator.js +6 -0
  99. package/lib/module/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
  100. package/lib/module/shared/adapters/with-screen-transitions/context.js +23 -0
  101. package/lib/module/shared/adapters/with-screen-transitions/context.js.map +1 -0
  102. package/lib/module/shared/adapters/with-screen-transitions/index.js +66 -0
  103. package/lib/module/shared/adapters/with-screen-transitions/index.js.map +1 -0
  104. package/lib/module/shared/adapters/with-screen-transitions/options.js +98 -0
  105. package/lib/module/shared/adapters/with-screen-transitions/options.js.map +1 -0
  106. package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js +138 -0
  107. package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -0
  108. package/lib/module/shared/adapters/with-screen-transitions/types.js +4 -0
  109. package/lib/module/shared/adapters/with-screen-transitions/types.js.map +1 -0
  110. package/lib/module/shared/components/activity/helpers.js +5 -0
  111. package/lib/module/shared/components/activity/helpers.js.map +1 -0
  112. package/lib/module/shared/components/activity/index.js +5 -0
  113. package/lib/module/shared/components/activity/index.js.map +1 -0
  114. package/lib/module/shared/components/activity/variants/activity-container.js +24 -0
  115. package/lib/module/shared/components/activity/variants/activity-container.js.map +1 -0
  116. package/lib/module/shared/components/activity/variants/activity-screen.js +103 -0
  117. package/lib/module/shared/components/activity/variants/activity-screen.js.map +1 -0
  118. package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js +11 -5
  119. package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js.map +1 -1
  120. package/lib/module/shared/components/create-boundary-component/utils/measured-bounds.js +11 -0
  121. package/lib/module/shared/components/create-boundary-component/utils/measured-bounds.js.map +1 -1
  122. package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +8 -17
  123. package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  124. package/lib/module/shared/components/screen-lifecycle/index.js +1 -1
  125. package/lib/module/shared/components/screen-lifecycle/index.js.map +1 -1
  126. package/lib/module/shared/hooks/navigation/use-navigation-helpers.js +11 -5
  127. package/lib/module/shared/hooks/navigation/use-navigation-helpers.js.map +1 -1
  128. package/lib/module/shared/hooks/navigation/use-stack.js +63 -6
  129. package/lib/module/shared/hooks/navigation/use-stack.js.map +1 -1
  130. package/lib/module/shared/index.js +3 -0
  131. package/lib/module/shared/index.js.map +1 -1
  132. package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js +17 -29
  133. package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  134. package/lib/module/shared/providers/screen/descriptors/index.js +1 -1
  135. package/lib/module/shared/providers/screen/descriptors/index.js.map +1 -1
  136. package/lib/module/shared/providers/screen/gestures/ownership/resolve-ownership.js +2 -1
  137. package/lib/module/shared/providers/screen/gestures/ownership/resolve-ownership.js.map +1 -1
  138. package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +2 -2
  139. package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
  140. package/lib/module/shared/providers/screen/gestures/pan/pan-lifecycle.js +5 -2
  141. package/lib/module/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +1 -1
  142. package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js +4 -3
  143. package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +1 -1
  144. package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js +5 -2
  145. package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +1 -1
  146. package/lib/module/shared/providers/screen/gestures/pinch/use-pinch-behavior.js +4 -3
  147. package/lib/module/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +1 -1
  148. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +16 -1
  149. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  150. package/lib/module/shared/providers/stack/direct.provider.js +5 -4
  151. package/lib/module/shared/providers/stack/direct.provider.js.map +1 -1
  152. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js +194 -0
  153. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js.map +1 -0
  154. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js +57 -0
  155. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js.map +1 -0
  156. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js +69 -0
  157. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js.map +1 -0
  158. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js +118 -0
  159. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js.map +1 -0
  160. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/types.js +4 -0
  161. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/types.js.map +1 -0
  162. package/lib/module/shared/providers/stack/helpers/managed-stack-state/index.js +19 -0
  163. package/lib/module/shared/providers/stack/helpers/managed-stack-state/index.js.map +1 -0
  164. package/lib/module/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js +126 -0
  165. package/lib/module/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js.map +1 -0
  166. package/lib/module/shared/providers/stack/managed.provider.js +19 -30
  167. package/lib/module/shared/providers/stack/managed.provider.js.map +1 -1
  168. package/lib/module/shared/types/stack.types.js.map +1 -1
  169. package/lib/module/shared/utils/bounds/navigation/zoom/build.js +45 -48
  170. package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  171. package/lib/module/shared/utils/bounds/navigation/zoom/config.js +1 -1
  172. package/lib/module/shared/utils/create-provider.js +100 -11
  173. package/lib/module/shared/utils/create-provider.js.map +1 -1
  174. package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js +8 -5
  175. package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js.map +1 -1
  176. package/lib/module/shared/utils/navigation/sync-routes-with-removed.js +23 -6
  177. package/lib/module/shared/utils/navigation/sync-routes-with-removed.js.map +1 -1
  178. package/lib/module/shared/utils/visibility-block-offset.js +8 -0
  179. package/lib/module/shared/utils/visibility-block-offset.js.map +1 -0
  180. package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
  181. package/lib/typescript/blank-stack/index.d.ts +1 -1
  182. package/lib/typescript/blank-stack/index.d.ts.map +1 -1
  183. package/lib/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts +4 -6
  184. package/lib/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts.map +1 -1
  185. package/lib/typescript/blank-stack/types.d.ts +41 -29
  186. package/lib/typescript/blank-stack/types.d.ts.map +1 -1
  187. package/lib/typescript/component-stack/components/stack-view.d.ts.map +1 -1
  188. package/lib/typescript/component-stack/navigators/create-component-stack-navigator.d.ts +1 -1
  189. package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts +5 -0
  190. package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts.map +1 -1
  191. package/lib/typescript/native-stack/types.d.ts +25 -0
  192. package/lib/typescript/native-stack/types.d.ts.map +1 -1
  193. package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts +15 -0
  194. package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts.map +1 -0
  195. package/lib/typescript/shared/adapters/with-screen-transitions/index.d.ts +11 -0
  196. package/lib/typescript/shared/adapters/with-screen-transitions/index.d.ts.map +1 -0
  197. package/lib/typescript/shared/adapters/with-screen-transitions/options.d.ts +16 -0
  198. package/lib/typescript/shared/adapters/with-screen-transitions/options.d.ts.map +1 -0
  199. package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts +12 -0
  200. package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -0
  201. package/lib/typescript/shared/adapters/with-screen-transitions/types.d.ts +24 -0
  202. package/lib/typescript/shared/adapters/with-screen-transitions/types.d.ts.map +1 -0
  203. package/lib/typescript/shared/components/activity/helpers.d.ts +4 -0
  204. package/lib/typescript/shared/components/activity/helpers.d.ts.map +1 -0
  205. package/lib/typescript/shared/components/activity/index.d.ts +3 -0
  206. package/lib/typescript/shared/components/activity/index.d.ts.map +1 -0
  207. package/lib/typescript/shared/components/activity/variants/activity-container.d.ts +6 -0
  208. package/lib/typescript/shared/components/activity/variants/activity-container.d.ts.map +1 -0
  209. package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts +13 -0
  210. package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts.map +1 -0
  211. package/lib/typescript/shared/components/create-boundary-component/hooks/use-measurer.d.ts.map +1 -1
  212. package/lib/typescript/shared/components/create-boundary-component/index.d.ts +2 -2
  213. package/lib/typescript/shared/components/create-boundary-component/utils/measured-bounds.d.ts +1 -0
  214. package/lib/typescript/shared/components/create-boundary-component/utils/measured-bounds.d.ts.map +1 -1
  215. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts +1 -2
  216. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts.map +1 -1
  217. package/lib/typescript/shared/hooks/navigation/use-navigation-helpers.d.ts +1 -0
  218. package/lib/typescript/shared/hooks/navigation/use-navigation-helpers.d.ts.map +1 -1
  219. package/lib/typescript/shared/hooks/navigation/use-stack.d.ts +13 -1
  220. package/lib/typescript/shared/hooks/navigation/use-stack.d.ts.map +1 -1
  221. package/lib/typescript/shared/index.d.ts +15 -11
  222. package/lib/typescript/shared/index.d.ts.map +1 -1
  223. package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts +11 -3
  224. package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
  225. package/lib/typescript/shared/providers/screen/descriptors/index.d.ts +1 -1
  226. package/lib/typescript/shared/providers/screen/descriptors/index.d.ts.map +1 -1
  227. package/lib/typescript/shared/providers/screen/gestures/ownership/resolve-ownership.d.ts.map +1 -1
  228. package/lib/typescript/shared/providers/screen/gestures/pan/pan-lifecycle.d.ts +1 -1
  229. package/lib/typescript/shared/providers/screen/gestures/pan/pan-lifecycle.d.ts.map +1 -1
  230. package/lib/typescript/shared/providers/screen/gestures/pan/use-pan-behavior.d.ts.map +1 -1
  231. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-lifecycle.d.ts +1 -1
  232. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-lifecycle.d.ts.map +1 -1
  233. package/lib/typescript/shared/providers/screen/gestures/pinch/use-pinch-behavior.d.ts.map +1 -1
  234. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +3 -1
  235. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  236. package/lib/typescript/shared/providers/stack/direct.provider.d.ts.map +1 -1
  237. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.d.ts +13 -0
  238. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.d.ts.map +1 -0
  239. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.d.ts +12 -0
  240. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.d.ts.map +1 -0
  241. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.d.ts +11 -0
  242. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.d.ts.map +1 -0
  243. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.d.ts +12 -0
  244. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.d.ts.map +1 -0
  245. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/types.d.ts +40 -0
  246. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/types.d.ts.map +1 -0
  247. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/index.d.ts +12 -0
  248. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/index.d.ts.map +1 -0
  249. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.d.ts +13 -0
  250. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.d.ts.map +1 -0
  251. package/lib/typescript/shared/providers/stack/managed.provider.d.ts.map +1 -1
  252. package/lib/typescript/shared/types/bounds.types.d.ts +27 -0
  253. package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
  254. package/lib/typescript/shared/types/index.d.ts +2 -2
  255. package/lib/typescript/shared/types/index.d.ts.map +1 -1
  256. package/lib/typescript/shared/types/providers/managed-stack.types.d.ts +3 -9
  257. package/lib/typescript/shared/types/providers/managed-stack.types.d.ts.map +1 -1
  258. package/lib/typescript/shared/types/screen.types.d.ts +24 -0
  259. package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
  260. package/lib/typescript/shared/types/stack.types.d.ts +7 -0
  261. package/lib/typescript/shared/types/stack.types.d.ts.map +1 -1
  262. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  263. package/lib/typescript/shared/utils/bounds/navigation/zoom/config.d.ts +1 -1
  264. package/lib/typescript/shared/utils/create-provider.d.ts +17 -3
  265. package/lib/typescript/shared/utils/create-provider.d.ts.map +1 -1
  266. package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts +2 -1
  267. package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts.map +1 -1
  268. package/lib/typescript/shared/utils/navigation/sync-routes-with-removed.d.ts +2 -1
  269. package/lib/typescript/shared/utils/navigation/sync-routes-with-removed.d.ts.map +1 -1
  270. package/lib/typescript/shared/utils/visibility-block-offset.d.ts +2 -0
  271. package/lib/typescript/shared/utils/visibility-block-offset.d.ts.map +1 -0
  272. package/package.json +11 -1
  273. package/src/blank-stack/components/stack-view.tsx +54 -48
  274. package/src/blank-stack/index.ts +1 -0
  275. package/src/blank-stack/navigators/create-blank-stack-navigator.tsx +7 -15
  276. package/src/blank-stack/types.ts +44 -29
  277. package/src/component-stack/components/stack-view.tsx +4 -11
  278. package/src/component-stack/navigators/create-component-stack-navigator.tsx +1 -1
  279. package/src/native-stack/navigators/createNativeStackNavigator.tsx +5 -0
  280. package/src/native-stack/types.ts +25 -0
  281. package/src/shared/adapters/with-screen-transitions/context.tsx +42 -0
  282. package/src/shared/adapters/with-screen-transitions/index.tsx +155 -0
  283. package/src/shared/adapters/with-screen-transitions/options.ts +172 -0
  284. package/src/shared/adapters/with-screen-transitions/stack-layout.tsx +233 -0
  285. package/src/shared/adapters/with-screen-transitions/types.ts +28 -0
  286. package/src/shared/components/activity/helpers.ts +8 -0
  287. package/src/shared/components/activity/index.tsx +2 -0
  288. package/src/shared/components/activity/variants/activity-container.tsx +25 -0
  289. package/src/shared/components/activity/variants/activity-screen.tsx +133 -0
  290. package/src/shared/components/create-boundary-component/hooks/use-measurer.ts +23 -4
  291. package/src/shared/components/create-boundary-component/utils/measured-bounds.ts +15 -0
  292. package/src/shared/components/screen-lifecycle/hooks/use-close-transition-intent.ts +9 -26
  293. package/src/shared/components/screen-lifecycle/index.tsx +1 -1
  294. package/src/shared/hooks/navigation/use-navigation-helpers.ts +9 -3
  295. package/src/shared/hooks/navigation/use-stack.tsx +115 -6
  296. package/src/shared/index.ts +9 -0
  297. package/src/shared/providers/screen/descriptors/descriptors.provider.tsx +31 -31
  298. package/src/shared/providers/screen/descriptors/index.tsx +1 -0
  299. package/src/shared/providers/screen/gestures/ownership/resolve-ownership.ts +2 -1
  300. package/src/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.ts +2 -2
  301. package/src/shared/providers/screen/gestures/pan/pan-lifecycle.ts +7 -2
  302. package/src/shared/providers/screen/gestures/pan/use-pan-behavior.ts +10 -2
  303. package/src/shared/providers/screen/gestures/pinch/pinch-lifecycle.ts +7 -2
  304. package/src/shared/providers/screen/gestures/pinch/use-pinch-behavior.ts +8 -3
  305. package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +17 -1
  306. package/src/shared/providers/stack/direct.provider.tsx +13 -4
  307. package/src/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.ts +368 -0
  308. package/src/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.ts +129 -0
  309. package/src/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.ts +139 -0
  310. package/src/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.ts +198 -0
  311. package/src/shared/providers/stack/helpers/managed-stack-state/helpers/types.ts +57 -0
  312. package/src/shared/providers/stack/helpers/managed-stack-state/index.ts +40 -0
  313. package/src/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.ts +160 -0
  314. package/src/shared/providers/stack/managed.provider.tsx +23 -39
  315. package/src/shared/types/bounds.types.ts +27 -0
  316. package/src/shared/types/index.ts +3 -0
  317. package/src/shared/types/providers/managed-stack.types.ts +6 -8
  318. package/src/shared/types/screen.types.ts +25 -0
  319. package/src/shared/types/stack.types.ts +11 -0
  320. package/src/shared/utils/bounds/navigation/zoom/build.ts +62 -71
  321. package/src/shared/utils/bounds/navigation/zoom/config.ts +1 -1
  322. package/src/shared/utils/create-provider.tsx +183 -8
  323. package/src/shared/utils/navigation/resolve-scene-neighbors.ts +9 -4
  324. package/src/shared/utils/navigation/sync-routes-with-removed.ts +38 -7
  325. package/src/shared/utils/visibility-block-offset.ts +4 -0
  326. package/lib/commonjs/blank-stack/components/stack-view.native.js +0 -64
  327. package/lib/commonjs/blank-stack/components/stack-view.native.js.map +0 -1
  328. package/lib/commonjs/shared/components/native-screen-container.js +0 -42
  329. package/lib/commonjs/shared/components/native-screen-container.js.map +0 -1
  330. package/lib/commonjs/shared/components/native-screen.js +0 -125
  331. package/lib/commonjs/shared/components/native-screen.js.map +0 -1
  332. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js +0 -51
  333. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js.map +0 -1
  334. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js +0 -15
  335. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js.map +0 -1
  336. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js +0 -14
  337. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js.map +0 -1
  338. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js +0 -13
  339. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js.map +0 -1
  340. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/index.js +0 -101
  341. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/index.js.map +0 -1
  342. package/lib/module/blank-stack/components/stack-view.native.js +0 -60
  343. package/lib/module/blank-stack/components/stack-view.native.js.map +0 -1
  344. package/lib/module/shared/components/native-screen-container.js +0 -37
  345. package/lib/module/shared/components/native-screen-container.js.map +0 -1
  346. package/lib/module/shared/components/native-screen.js +0 -119
  347. package/lib/module/shared/components/native-screen.js.map +0 -1
  348. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js +0 -47
  349. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js.map +0 -1
  350. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js +0 -10
  351. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js.map +0 -1
  352. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js +0 -9
  353. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js.map +0 -1
  354. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js +0 -8
  355. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js.map +0 -1
  356. package/lib/module/shared/providers/stack/helpers/use-local-routes/index.js +0 -95
  357. package/lib/module/shared/providers/stack/helpers/use-local-routes/index.js.map +0 -1
  358. package/lib/typescript/blank-stack/components/stack-view.native.d.ts +0 -3
  359. package/lib/typescript/blank-stack/components/stack-view.native.d.ts.map +0 -1
  360. package/lib/typescript/shared/components/native-screen-container.d.ts +0 -6
  361. package/lib/typescript/shared/components/native-screen-container.d.ts.map +0 -1
  362. package/lib/typescript/shared/components/native-screen.d.ts +0 -12
  363. package/lib/typescript/shared/components/native-screen.d.ts.map +0 -1
  364. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.d.ts +0 -10
  365. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.d.ts.map +0 -1
  366. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.d.ts +0 -2
  367. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.d.ts.map +0 -1
  368. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.d.ts +0 -3
  369. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.d.ts.map +0 -1
  370. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.d.ts +0 -3
  371. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.d.ts.map +0 -1
  372. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/index.d.ts +0 -19
  373. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/index.d.ts.map +0 -1
  374. package/src/blank-stack/components/stack-view.native.tsx +0 -74
  375. package/src/shared/components/native-screen-container.tsx +0 -33
  376. package/src/shared/components/native-screen.tsx +0 -176
  377. package/src/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.ts +0 -65
  378. package/src/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.ts +0 -15
  379. package/src/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.ts +0 -12
  380. package/src/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.ts +0 -11
  381. package/src/shared/providers/stack/helpers/use-local-routes/index.ts +0 -147
@@ -12,13 +12,46 @@ var _jsxRuntime = require("react/jsx-runtime");
12
12
  * SUPER COOL AMAZING UTILITY
13
13
  */
14
14
 
15
+ const NullProviderStore = {
16
+ getSnapshot: () => null,
17
+ subscribe: () => () => {}
18
+ };
19
+ const createProviderStore = initialSnapshot => {
20
+ let snapshot = initialSnapshot;
21
+ const listeners = new Set();
22
+ return {
23
+ getSnapshot: () => snapshot,
24
+ notify: () => {
25
+ for (const listener of listeners) {
26
+ listener();
27
+ }
28
+ },
29
+ setSnapshot: nextSnapshot => {
30
+ if (Object.is(snapshot, nextSnapshot)) {
31
+ return false;
32
+ }
33
+ snapshot = nextSnapshot;
34
+ return true;
35
+ },
36
+ subscribe: listener => {
37
+ listeners.add(listener);
38
+ return () => {
39
+ listeners.delete(listener);
40
+ };
41
+ }
42
+ };
43
+ };
15
44
  function createProvider(name, options) {
16
45
  return factory => {
17
46
  const {
18
47
  guarded = true
19
48
  } = options ?? {};
49
+ const providerDisplayName = `${name}Provider`;
50
+ const innerProviderDisplayName = `${name}InnerProvider`;
20
51
  const Context = /*#__PURE__*/(0, _react.createContext)(null);
21
52
  Context.displayName = name;
53
+ const StoreContext = /*#__PURE__*/(0, _react.createContext)(null);
54
+ StoreContext.displayName = `${name}Store`;
22
55
  const Provider = props => {
23
56
  const {
24
57
  children = props.children,
@@ -29,27 +62,52 @@ function createProvider(name, options) {
29
62
  throw new Error(`${name}Context value must be provided. You likely forgot to return it from the factory function.`);
30
63
  }
31
64
  const memoValue = (0, _react.useMemo)(() => enabled ? value : null, [enabled, value]);
65
+ const storeRef = (0, _react.useRef)(null);
66
+ const pendingNotifyRef = (0, _react.useRef)(false);
67
+ if (storeRef.current === null) {
68
+ storeRef.current = createProviderStore(memoValue);
69
+ }
70
+ const store = storeRef.current;
71
+ pendingNotifyRef.current = store.setSnapshot(memoValue) || pendingNotifyRef.current;
72
+ (0, _react.useLayoutEffect)(() => {
73
+ if (!pendingNotifyRef.current) {
74
+ return;
75
+ }
76
+ pendingNotifyRef.current = false;
77
+ store.notify();
78
+ });
32
79
 
33
80
  // Per-instance ref ensures InnerProvider reads latest value while keeping
34
81
  // a stable component reference.
35
82
  const valueRef = (0, _react.useRef)(memoValue);
36
83
  valueRef.current = memoValue;
37
- const InnerProvider = (0, _react.useMemo)(() => ({
38
- children
39
- }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(Context.Provider, {
40
- value: valueRef.current,
41
- children: children
42
- }), []);
84
+ const InnerProvider = (0, _react.useMemo)(() => {
85
+ const NamedInnerProvider = ({
86
+ children
87
+ }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(StoreContext.Provider, {
88
+ value: store,
89
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Context.Provider, {
90
+ value: valueRef.current,
91
+ children: children
92
+ })
93
+ });
94
+ NamedInnerProvider.displayName = innerProviderDisplayName;
95
+ return NamedInnerProvider;
96
+ }, [store]);
43
97
  if (typeof children === "function") {
44
98
  return children({
45
99
  [`${name}Provider`]: InnerProvider
46
100
  });
47
101
  }
48
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(Context.Provider, {
49
- value: memoValue,
50
- children: children
102
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(StoreContext.Provider, {
103
+ value: store,
104
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Context.Provider, {
105
+ value: memoValue,
106
+ children: children
107
+ })
51
108
  });
52
109
  };
110
+ Provider.displayName = providerDisplayName;
53
111
  const useEnhancedContext = () => {
54
112
  const context = (0, _react.useContext)(Context);
55
113
  if (guarded && context === null) {
@@ -57,10 +115,41 @@ function createProvider(name, options) {
57
115
  }
58
116
  return context;
59
117
  };
118
+ const useStoreSelector = selector => {
119
+ const store = (0, _react.useContext)(StoreContext);
120
+ const resolvedStore = store ?? NullProviderStore;
121
+ const selectorRef = (0, _react.useRef)(selector);
122
+ selectorRef.current = selector;
123
+ const getSelectedSnapshot = (0, _react.useCallback)(() => {
124
+ if (guarded && store === null) {
125
+ throw new Error(`${name} store must be used within a ${name}Provider`);
126
+ }
127
+ const snapshot = resolvedStore.getSnapshot();
128
+ if (guarded && snapshot === null) {
129
+ throw new Error(`${name} store must be used within an enabled ${name}Provider`);
130
+ }
131
+ return selectorRef.current ? selectorRef.current(snapshot) : snapshot;
132
+ }, [resolvedStore, store]);
133
+ return (0, _react.useSyncExternalStore)(resolvedStore.subscribe, getSelectedSnapshot, getSelectedSnapshot);
134
+ };
135
+ const useOptionalStoreSelector = selector => {
136
+ const store = (0, _react.useContext)(StoreContext);
137
+ const resolvedStore = store ?? NullProviderStore;
138
+ const selectorRef = (0, _react.useRef)(selector);
139
+ selectorRef.current = selector;
140
+ const getSelectedSnapshot = (0, _react.useCallback)(() => {
141
+ const snapshot = resolvedStore.getSnapshot();
142
+ return selectorRef.current ? selectorRef.current(snapshot) : snapshot;
143
+ }, [resolvedStore]);
144
+ return (0, _react.useSyncExternalStore)(resolvedStore.subscribe, getSelectedSnapshot, getSelectedSnapshot);
145
+ };
60
146
  return {
61
147
  [`${name}Context`]: Context,
148
+ [`${name}StoreContext`]: StoreContext,
62
149
  [`${name}Provider`]: Provider,
63
- [`use${name}Context`]: useEnhancedContext
150
+ [`use${name}Context`]: useEnhancedContext,
151
+ [`use${name}Store`]: useStoreSelector,
152
+ [`use${name}OptionalStore`]: useOptionalStoreSelector
64
153
  };
65
154
  };
66
155
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_jsxRuntime","createProvider","name","options","factory","guarded","Context","createContext","displayName","Provider","props","children","enabled","value","Error","memoValue","useMemo","valueRef","useRef","current","InnerProvider","jsx","useEnhancedContext","context","useContext"],"sourceRoot":"../../../../src","sources":["shared/utils/create-provider.tsx"],"mappings":";;;;;;AAKA,IAAAA,MAAA,GAAAC,OAAA;AAMe,IAAAC,WAAA,GAAAD,OAAA;AAXf;AACA;AACA;AACA;AACA;;AAWe,SAASE,cAAcA,CAGpCC,IAAkB,EAAEC,OAA+B,EAAE;EACtD,OACCC,OAUC,IACG;IACJ,MAAM;MAAEC,OAAO,GAAG;IAAK,CAAC,GAAGF,OAAO,IAAI,CAAC,CAAC;IAExC,MAAMG,OAAO,gBAAG,IAAAC,oBAAa,EAAsB,IAAI,CAAC;IACxDD,OAAO,CAACE,WAAW,GAAGN,IAAI;IAE1B,MAAMO,QAAiC,GAAIC,KAAK,IAAK;MACpD,MAAM;QACLC,QAAQ,GAAID,KAAK,CAA8BC,QAAQ;QACvDC,OAAO,GAAG,IAAI;QACdC;MACD,CAAC,GAAGT,OAAO,CAACM,KAAK,CAAC;MAElB,IAAI,CAACG,KAAK,EAAE;QACX,MAAM,IAAIC,KAAK,CACd,GAAGZ,IAAI,2FACR,CAAC;MACF;MAEA,MAAMa,SAAS,GAAG,IAAAC,cAAO,EACxB,MAAOJ,OAAO,GAAGC,KAAK,GAAG,IAAK,EAC9B,CAACD,OAAO,EAAEC,KAAK,CAChB,CAAC;;MAED;MACA;MACA,MAAMI,QAAQ,GAAG,IAAAC,aAAM,EAAsBH,SAAS,CAAC;MACvDE,QAAQ,CAACE,OAAO,GAAGJ,SAAS;MAE5B,MAAMK,aAAa,GAAG,IAAAJ,cAAO,EAC5B,MACC,CAAC;QAAEL;MAAS,CAAC,kBACZ,IAAAX,WAAA,CAAAqB,GAAA,EAACf,OAAO,CAACG,QAAQ;QAACI,KAAK,EAAEI,QAAQ,CAACE,OAAQ;QAAAR,QAAA,EACxCA;MAAQ,CACQ,CAClB,EACF,EACD,CAAC;MAED,IAAI,OAAOA,QAAQ,KAAK,UAAU,EAAE;QACnC,OAAOA,QAAQ,CAAC;UACf,CAAC,GAAGT,IAAI,UAAU,GAAGkB;QACtB,CAAsE,CAAC;MACxE;MAEA,oBAAO,IAAApB,WAAA,CAAAqB,GAAA,EAACf,OAAO,CAACG,QAAQ;QAACI,KAAK,EAAEE,SAAU;QAAAJ,QAAA,EAAEA;MAAQ,CAAmB,CAAC;IACzE,CAAC;IAED,MAAMW,kBAAkB,GAAGA,CAAA,KAA2B;MACrD,MAAMC,OAAO,GAAG,IAAAC,iBAAU,EAAClB,OAAO,CAAC;MAEnC,IAAID,OAAO,IAAIkB,OAAO,KAAK,IAAI,EAAE;QAChC,MAAM,IAAIT,KAAK,CACd,GAAGZ,IAAI,kCAAkCA,IAAI,UAC9C,CAAC;MACF;MAEA,OAAOqB,OAAO;IACf,CAAC;IAED,OAAO;MACN,CAAC,GAAGrB,IAAI,SAAS,GAAGI,OAAO;MAC3B,CAAC,GAAGJ,IAAI,UAAU,GAAGO,QAAQ;MAC7B,CAAC,MAAMP,IAAI,SAAS,GAAGoB;IACxB,CAAC;EASF,CAAC;AACF","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_jsxRuntime","NullProviderStore","getSnapshot","subscribe","createProviderStore","initialSnapshot","snapshot","listeners","Set","notify","listener","setSnapshot","nextSnapshot","Object","is","add","delete","createProvider","name","options","factory","guarded","providerDisplayName","innerProviderDisplayName","Context","createContext","displayName","StoreContext","Provider","props","children","enabled","value","Error","memoValue","useMemo","storeRef","useRef","pendingNotifyRef","current","store","useLayoutEffect","valueRef","InnerProvider","NamedInnerProvider","jsx","useEnhancedContext","context","useContext","useStoreSelector","selector","resolvedStore","selectorRef","getSelectedSnapshot","useCallback","useSyncExternalStore","useOptionalStoreSelector"],"sourceRoot":"../../../../src","sources":["shared/utils/create-provider.tsx"],"mappings":"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","ignoreList":[]}
@@ -32,7 +32,7 @@ const findPreviousDescriptor = (scenes, sceneIndex, isRouteClosing) => {
32
32
  * - If there is no non-closing neighbor above/below, we fall back to the first
33
33
  * closing neighbor (needed for normal back transitions).
34
34
  */
35
- function resolveSceneNeighbors(scenes, sceneIndex, isRouteClosing) {
35
+ function resolveSceneNeighbors(scenes, sceneIndex, isRouteClosing, getRouteClosingOrder) {
36
36
  const current = scenes[sceneIndex];
37
37
  if (!current) {
38
38
  return {
@@ -47,7 +47,8 @@ function resolveSceneNeighbors(scenes, sceneIndex, isRouteClosing) {
47
47
  };
48
48
  }
49
49
  let nextDescriptor;
50
- let firstClosingAbove;
50
+ let latestClosingAbove;
51
+ let latestClosingAboveOrder = Number.NEGATIVE_INFINITY;
51
52
  for (let i = sceneIndex + 1; i < scenes.length; i++) {
52
53
  const candidate = scenes[i];
53
54
  if (!candidate) continue;
@@ -55,12 +56,14 @@ function resolveSceneNeighbors(scenes, sceneIndex, isRouteClosing) {
55
56
  nextDescriptor = candidate.descriptor;
56
57
  break;
57
58
  }
58
- if (firstClosingAbove === undefined) {
59
- firstClosingAbove = candidate.descriptor;
59
+ const closeOrder = getRouteClosingOrder?.(candidate.route.key) ?? i;
60
+ if (closeOrder >= latestClosingAboveOrder) {
61
+ latestClosingAbove = candidate.descriptor;
62
+ latestClosingAboveOrder = closeOrder;
60
63
  }
61
64
  }
62
65
  if (nextDescriptor === undefined) {
63
- nextDescriptor = firstClosingAbove;
66
+ nextDescriptor = latestClosingAbove;
64
67
  }
65
68
  const previousDescriptor = findPreviousDescriptor(scenes, sceneIndex, isRouteClosing);
66
69
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["findPreviousDescriptor","scenes","sceneIndex","isRouteClosing","firstClosingBelow","i","candidate","route","key","descriptor","undefined","resolveSceneNeighbors","current","previousDescriptor","nextDescriptor","firstClosingAbove","length"],"sourceRoot":"../../../../../src","sources":["shared/utils/navigation/resolve-scene-neighbors.ts"],"mappings":";;;;;;AAOA,MAAMA,sBAAsB,GAAGA,CAC9BC,MAAW,EACXC,UAAkB,EAClBC,cAA8B,KACG;EACjC,IAAIC,iBAA8C;EAElD,KAAK,IAAIC,CAAC,GAAGH,UAAU,GAAG,CAAC,EAAEG,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IACzC,MAAMC,SAAS,GAAGL,MAAM,CAACI,CAAC,CAAC;IAC3B,IAAI,CAACC,SAAS,EAAE;IAEhB,IAAI,CAACH,cAAc,CAACG,SAAS,CAACC,KAAK,CAACC,GAAG,CAAC,EAAE;MACzC,OAAOF,SAAS,CAACG,UAAU;IAC5B;IAEA,IAAIL,iBAAiB,KAAKM,SAAS,EAAE;MACpCN,iBAAiB,GAAGE,SAAS,CAACG,UAAU;IACzC;EACD;EAEA,OAAOL,iBAAiB;AACzB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASO,qBAAqBA,CACpCV,MAAW,EACXC,UAAkB,EAClBC,cAA8B,EAI7B;EACD,MAAMS,OAAO,GAAGX,MAAM,CAACC,UAAU,CAAC;EAClC,IAAI,CAACU,OAAO,EAAE;IACb,OAAO;MACNC,kBAAkB,EAAEH,SAAS;MAC7BI,cAAc,EAAEJ;IACjB,CAAC;EACF;EAEA,IAAIP,cAAc,CAACS,OAAO,CAACL,KAAK,CAACC,GAAG,CAAC,EAAE;IACtC,OAAO;MACNK,kBAAkB,EAAEb,sBAAsB,CACzCC,MAAM,EACNC,UAAU,EACVC,cACD,CAAC;MACDW,cAAc,EAAEJ;IACjB,CAAC;EACF;EAEA,IAAII,cAA2C;EAC/C,IAAIC,iBAA8C;EAElD,KAAK,IAAIV,CAAC,GAAGH,UAAU,GAAG,CAAC,EAAEG,CAAC,GAAGJ,MAAM,CAACe,MAAM,EAAEX,CAAC,EAAE,EAAE;IACpD,MAAMC,SAAS,GAAGL,MAAM,CAACI,CAAC,CAAC;IAC3B,IAAI,CAACC,SAAS,EAAE;IAEhB,IAAI,CAACH,cAAc,CAACG,SAAS,CAACC,KAAK,CAACC,GAAG,CAAC,EAAE;MACzCM,cAAc,GAAGR,SAAS,CAACG,UAAU;MACrC;IACD;IAEA,IAAIM,iBAAiB,KAAKL,SAAS,EAAE;MACpCK,iBAAiB,GAAGT,SAAS,CAACG,UAAU;IACzC;EACD;EAEA,IAAIK,cAAc,KAAKJ,SAAS,EAAE;IACjCI,cAAc,GAAGC,iBAAiB;EACnC;EAEA,MAAMF,kBAAkB,GAAGb,sBAAsB,CAChDC,MAAM,EACNC,UAAU,EACVC,cACD,CAAC;EAED,OAAO;IACNU,kBAAkB;IAClBC;EACD,CAAC;AACF","ignoreList":[]}
1
+ {"version":3,"names":["findPreviousDescriptor","scenes","sceneIndex","isRouteClosing","firstClosingBelow","i","candidate","route","key","descriptor","undefined","resolveSceneNeighbors","getRouteClosingOrder","current","previousDescriptor","nextDescriptor","latestClosingAbove","latestClosingAboveOrder","Number","NEGATIVE_INFINITY","length","closeOrder"],"sourceRoot":"../../../../../src","sources":["shared/utils/navigation/resolve-scene-neighbors.ts"],"mappings":";;;;;;AAQA,MAAMA,sBAAsB,GAAGA,CAC9BC,MAAW,EACXC,UAAkB,EAClBC,cAA8B,KACG;EACjC,IAAIC,iBAA8C;EAElD,KAAK,IAAIC,CAAC,GAAGH,UAAU,GAAG,CAAC,EAAEG,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IACzC,MAAMC,SAAS,GAAGL,MAAM,CAACI,CAAC,CAAC;IAC3B,IAAI,CAACC,SAAS,EAAE;IAEhB,IAAI,CAACH,cAAc,CAACG,SAAS,CAACC,KAAK,CAACC,GAAG,CAAC,EAAE;MACzC,OAAOF,SAAS,CAACG,UAAU;IAC5B;IAEA,IAAIL,iBAAiB,KAAKM,SAAS,EAAE;MACpCN,iBAAiB,GAAGE,SAAS,CAACG,UAAU;IACzC;EACD;EAEA,OAAOL,iBAAiB;AACzB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASO,qBAAqBA,CACpCV,MAAW,EACXC,UAAkB,EAClBC,cAA8B,EAC9BS,oBAA2C,EAI1C;EACD,MAAMC,OAAO,GAAGZ,MAAM,CAACC,UAAU,CAAC;EAClC,IAAI,CAACW,OAAO,EAAE;IACb,OAAO;MACNC,kBAAkB,EAAEJ,SAAS;MAC7BK,cAAc,EAAEL;IACjB,CAAC;EACF;EAEA,IAAIP,cAAc,CAACU,OAAO,CAACN,KAAK,CAACC,GAAG,CAAC,EAAE;IACtC,OAAO;MACNM,kBAAkB,EAAEd,sBAAsB,CACzCC,MAAM,EACNC,UAAU,EACVC,cACD,CAAC;MACDY,cAAc,EAAEL;IACjB,CAAC;EACF;EAEA,IAAIK,cAA2C;EAC/C,IAAIC,kBAA+C;EACnD,IAAIC,uBAAuB,GAAGC,MAAM,CAACC,iBAAiB;EAEtD,KAAK,IAAId,CAAC,GAAGH,UAAU,GAAG,CAAC,EAAEG,CAAC,GAAGJ,MAAM,CAACmB,MAAM,EAAEf,CAAC,EAAE,EAAE;IACpD,MAAMC,SAAS,GAAGL,MAAM,CAACI,CAAC,CAAC;IAC3B,IAAI,CAACC,SAAS,EAAE;IAEhB,IAAI,CAACH,cAAc,CAACG,SAAS,CAACC,KAAK,CAACC,GAAG,CAAC,EAAE;MACzCO,cAAc,GAAGT,SAAS,CAACG,UAAU;MACrC;IACD;IAEA,MAAMY,UAAU,GAAGT,oBAAoB,GAAGN,SAAS,CAACC,KAAK,CAACC,GAAG,CAAC,IAAIH,CAAC;IACnE,IAAIgB,UAAU,IAAIJ,uBAAuB,EAAE;MAC1CD,kBAAkB,GAAGV,SAAS,CAACG,UAAU;MACzCQ,uBAAuB,GAAGI,UAAU;IACrC;EACD;EAEA,IAAIN,cAAc,KAAKL,SAAS,EAAE;IACjCK,cAAc,GAAGC,kBAAkB;EACpC;EAEA,MAAMF,kBAAkB,GAAGd,sBAAsB,CAChDC,MAAM,EACNC,UAAU,EACVC,cACD,CAAC;EAED,OAAO;IACNW,kBAAkB;IAClBC;EACD,CAAC;AACF","ignoreList":[]}
@@ -5,6 +5,23 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.syncRoutesWithRemoved = void 0;
7
7
  var _composeDescriptors = require("./compose-descriptors");
8
+ const addClosingRouteKey = (closingRouteKeys, key) => {
9
+ closingRouteKeys.add(key);
10
+ };
11
+ const deleteClosingRouteKey = (closingRouteKeys, key) => {
12
+ if (closingRouteKeys instanceof Set) {
13
+ closingRouteKeys.delete(key);
14
+ return;
15
+ }
16
+ closingRouteKeys.remove(key);
17
+ };
18
+ const getClosingRouteKeyValues = closingRouteKeys => {
19
+ if (closingRouteKeys instanceof Set) {
20
+ return closingRouteKeys;
21
+ }
22
+ return closingRouteKeys.ref.current;
23
+ };
24
+
8
25
  /**
9
26
  * Synchronizes routes while handling removed routes that may still be animating out.
10
27
  * This manages the complex logic of keeping closing routes visible during transitions.
@@ -37,28 +54,28 @@ const syncRoutesWithRemoved = ({
37
54
  const previousRouteStillPresent = nextRoutes.some(route => route.key === previousFocusedRoute.key);
38
55
  if (nextRouteWasPresent && !previousRouteStillPresent) {
39
56
  // Previous route was removed, mark as closing
40
- closingRouteKeys.add(previousFocusedRoute.key);
57
+ addClosingRouteKey(closingRouteKeys, previousFocusedRoute.key);
41
58
  derivedRoutes.push(previousFocusedRoute);
42
59
  } else {
43
60
  // Next route is now active, not closing
44
- closingRouteKeys.remove(nextFocusedRoute.key);
61
+ deleteClosingRouteKey(closingRouteKeys, nextFocusedRoute.key);
45
62
  if (!previousRouteStillPresent) {
46
63
  // Previous route needs to be inserted for transition
47
- closingRouteKeys.remove(previousFocusedRoute.key);
64
+ deleteClosingRouteKey(closingRouteKeys, previousFocusedRoute.key);
48
65
  const insertIndex = Math.max(derivedRoutes.length - 1, 0);
49
66
  derivedRoutes.splice(insertIndex, 0, previousFocusedRoute);
50
67
  }
51
68
  }
52
69
  } else if (nextFocusedRoute) {
53
70
  // Same focused route, ensure it's not marked as closing
54
- closingRouteKeys.remove(nextFocusedRoute.key);
71
+ deleteClosingRouteKey(closingRouteKeys, nextFocusedRoute.key);
55
72
  }
56
73
 
57
74
  // Clean up closing keys that are no longer in the route list
58
75
  const activeKeys = new Set(derivedRoutes.map(route => route.key));
59
- for (const key of Array.from(closingRouteKeys.ref.current)) {
76
+ for (const key of Array.from(getClosingRouteKeyValues(closingRouteKeys))) {
60
77
  if (!activeKeys.has(key)) {
61
- closingRouteKeys.remove(key);
78
+ deleteClosingRouteKey(closingRouteKeys, key);
62
79
  }
63
80
  }
64
81
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["_composeDescriptors","require","syncRoutesWithRemoved","prevRoutes","prevDescriptors","nextRoutes","nextDescriptors","closingRouteKeys","length","clear","routes","descriptors","derivedRoutes","slice","previousFocusedRoute","nextFocusedRoute","key","nextRouteWasPresent","some","route","previousRouteStillPresent","add","push","remove","insertIndex","Math","max","splice","activeKeys","Set","map","Array","from","ref","current","has","composeDescriptors","exports"],"sourceRoot":"../../../../../src","sources":["shared/utils/navigation/sync-routes-with-removed.ts"],"mappings":";;;;;;AAEA,IAAAA,mBAAA,GAAAC,OAAA;AAaA;AACA;AACA;AACA;AACO,MAAMC,qBAAqB,GAAGA,CAGnC;EACDC,UAAU;EACVC,eAAe;EACfC,UAAU;EACVC,eAAe;EACfC;AACkD,CAAC,KAG/C;EACJ,IAAIF,UAAU,CAACG,MAAM,KAAK,CAAC,EAAE;IAC5BD,gBAAgB,CAACE,KAAK,CAAC,CAAC;IACxB,OAAO;MACNC,MAAM,EAAEL,UAAU;MAClBM,WAAW,EAAE,CAAC;IACf,CAAC;EACF;;EAEA;EACA,MAAMC,aAAsB,GAAGP,UAAU,CAACQ,KAAK,CAAC,CAAC;;EAEjD;EACA,MAAMC,oBAAoB,GAAGX,UAAU,CAACA,UAAU,CAACK,MAAM,GAAG,CAAC,CAAC;EAC9D,MAAMO,gBAAgB,GAAGV,UAAU,CAACA,UAAU,CAACG,MAAM,GAAG,CAAC,CAAC;;EAE1D;EACA,IACCM,oBAAoB,IACpBC,gBAAgB,IAChBD,oBAAoB,CAACE,GAAG,KAAKD,gBAAgB,CAACC,GAAG,EAChD;IACD,MAAMC,mBAAmB,GAAGd,UAAU,CAACe,IAAI,CACzCC,KAAK,IAAKA,KAAK,CAACH,GAAG,KAAKD,gBAAgB,CAACC,GAC3C,CAAC;IACD,MAAMI,yBAAyB,GAAGf,UAAU,CAACa,IAAI,CAC/CC,KAAK,IAAKA,KAAK,CAACH,GAAG,KAAKF,oBAAoB,CAACE,GAC/C,CAAC;IAED,IAAIC,mBAAmB,IAAI,CAACG,yBAAyB,EAAE;MACtD;MACAb,gBAAgB,CAACc,GAAG,CAACP,oBAAoB,CAACE,GAAG,CAAC;MAE9CJ,aAAa,CAACU,IAAI,CAACR,oBAAoB,CAAC;IACzC,CAAC,MAAM;MACN;MACAP,gBAAgB,CAACgB,MAAM,CAACR,gBAAgB,CAACC,GAAG,CAAC;MAE7C,IAAI,CAACI,yBAAyB,EAAE;QAC/B;QACAb,gBAAgB,CAACgB,MAAM,CAACT,oBAAoB,CAACE,GAAG,CAAC;QAEjD,MAAMQ,WAAW,GAAGC,IAAI,CAACC,GAAG,CAACd,aAAa,CAACJ,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;QACzDI,aAAa,CAACe,MAAM,CAACH,WAAW,EAAE,CAAC,EAAEV,oBAAoB,CAAC;MAC3D;IACD;EACD,CAAC,MAAM,IAAIC,gBAAgB,EAAE;IAC5B;IACAR,gBAAgB,CAACgB,MAAM,CAACR,gBAAgB,CAACC,GAAG,CAAC;EAC9C;;EAEA;EACA,MAAMY,UAAU,GAAG,IAAIC,GAAG,CAACjB,aAAa,CAACkB,GAAG,CAAEX,KAAK,IAAKA,KAAK,CAACH,GAAG,CAAC,CAAC;EACnE,KAAK,MAAMA,GAAG,IAAIe,KAAK,CAACC,IAAI,CAACzB,gBAAgB,CAAC0B,GAAG,CAACC,OAAO,CAAC,EAAE;IAC3D,IAAI,CAACN,UAAU,CAACO,GAAG,CAACnB,GAAG,CAAC,EAAE;MACzBT,gBAAgB,CAACgB,MAAM,CAACP,GAAG,CAAC;IAC7B;EACD;EAEA,OAAO;IACNN,MAAM,EAAEE,aAAa;IACrBD,WAAW,EAAE,IAAAyB,sCAAkB,EAC9BxB,aAAa,EACbN,eAAe,EACfF,eACD;EACD,CAAC;AACF,CAAC;AAACiC,OAAA,CAAAnC,qBAAA,GAAAA,qBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_composeDescriptors","require","addClosingRouteKey","closingRouteKeys","key","add","deleteClosingRouteKey","Set","delete","remove","getClosingRouteKeyValues","ref","current","syncRoutesWithRemoved","prevRoutes","prevDescriptors","nextRoutes","nextDescriptors","length","clear","routes","descriptors","derivedRoutes","slice","previousFocusedRoute","nextFocusedRoute","nextRouteWasPresent","some","route","previousRouteStillPresent","push","insertIndex","Math","max","splice","activeKeys","map","Array","from","has","composeDescriptors","exports"],"sourceRoot":"../../../../../src","sources":["shared/utils/navigation/sync-routes-with-removed.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getVisibilityBlockOffset = void 0;
7
+ const getVisibilityBlockOffset = viewportHeight => {
8
+ "worklet";
9
+
10
+ return viewportHeight * 2 + 1;
11
+ };
12
+ exports.getVisibilityBlockOffset = getVisibilityBlockOffset;
13
+ //# sourceMappingURL=visibility-block-offset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getVisibilityBlockOffset","viewportHeight","exports"],"sourceRoot":"../../../../src","sources":["shared/utils/visibility-block-offset.ts"],"mappings":";;;;;;AAAO,MAAMA,wBAAwB,GAAIC,cAAsB,IAAa;EAC3E,SAAS;;EACT,OAAOA,cAAc,GAAG,CAAC,GAAG,CAAC;AAC9B,CAAC;AAACC,OAAA,CAAAF,wBAAA,GAAAA,wBAAA","ignoreList":[]}
@@ -1,57 +1,53 @@
1
1
  "use strict";
2
2
 
3
- import { Fragment } from "react";
4
- import { NativeScreen } from "../../shared/components/native-screen";
5
- import { NativeScreenContainer } from "../../shared/components/native-screen-container";
3
+ import { NavigationContext, NavigationRouteContext } from "@react-navigation/native";
4
+ import { Fragment, memo } from "react";
5
+ import { ActivityContainer, ActivityScreen } from "../../shared/components/activity";
6
6
  import { Overlay } from "../../shared/components/overlay";
7
- import { SceneView } from "../../shared/components/scene-view";
8
7
  import { ScreenComposer } from "../../shared/providers/screen/screen-composer";
9
8
  import { withStackCore } from "../../shared/providers/stack/core.provider";
10
9
  import { withManagedStack } from "../../shared/providers/stack/managed.provider";
11
- import { resolveSceneNeighbors } from "../../shared/utils/navigation/resolve-scene-neighbors";
12
- import { isFabric } from "../../shared/utils/platform";
13
10
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
+ const BlankSceneRow = /*#__PURE__*/memo(function BlankSceneRow({
12
+ scene,
13
+ paintDriverRouteKey
14
+ }) {
15
+ const descriptor = scene.descriptor;
16
+ const route = scene.route;
17
+ return /*#__PURE__*/_jsx(NavigationContext.Provider, {
18
+ value: descriptor.navigation,
19
+ children: /*#__PURE__*/_jsx(NavigationRouteContext.Provider, {
20
+ value: route,
21
+ children: /*#__PURE__*/_jsx(ActivityScreen, {
22
+ activity: descriptor.activity,
23
+ inactiveBehavior: descriptor.options.inactiveBehavior,
24
+ paintDriverRouteKey: paintDriverRouteKey,
25
+ hasNestedState: "state" in route,
26
+ children: /*#__PURE__*/_jsx(ScreenComposer, {
27
+ previous: scene.previousDescriptor,
28
+ current: descriptor,
29
+ next: scene.nextDescriptor,
30
+ children: descriptor.render?.()
31
+ })
32
+ })
33
+ })
34
+ });
35
+ });
14
36
  export const StackView = withStackCore({
15
37
  TRANSITIONS_ALWAYS_ON: true,
16
- DISABLE_NATIVE_SCREENS: true
38
+ DISABLE_NATIVE_SCREENS: false
17
39
  }, withManagedStack(({
18
- descriptors,
19
- focusedIndex,
20
40
  scenes,
21
- shouldShowFloatOverlay,
22
- closingRouteMap
41
+ shouldShowFloatOverlay
23
42
  }) => {
24
- const isRouteClosing = routeKey => Boolean(closingRouteMap.current[routeKey]);
25
43
  return /*#__PURE__*/_jsxs(Fragment, {
26
- children: [shouldShowFloatOverlay ? /*#__PURE__*/_jsx(Overlay.Float, {}) : null, /*#__PURE__*/_jsx(NativeScreenContainer, {
27
- children: scenes.map((scene, sceneIndex) => {
28
- const descriptor = scene.descriptor;
44
+ children: [shouldShowFloatOverlay ? /*#__PURE__*/_jsx(Overlay.Float, {}) : null, /*#__PURE__*/_jsx(ActivityContainer, {
45
+ children: scenes.map((scene, index) => {
29
46
  const route = scene.route;
30
- const isFocused = focusedIndex === sceneIndex;
31
- const isBelowFocused = focusedIndex - 1 === sceneIndex;
32
- const {
33
- previousDescriptor,
34
- nextDescriptor
35
- } = resolveSceneNeighbors(scenes, sceneIndex, isRouteClosing);
36
- const isPreloaded = descriptors[route.key] === undefined;
37
-
38
- // On Fabric, when screen is frozen, animated and reanimated values are not updated
39
- // due to component being unmounted. To avoid this, we don't freeze the previous screen there
40
- const shouldFreeze = isFabric() ? !isPreloaded && !isFocused && !isBelowFocused : !isPreloaded && !isFocused;
41
- return /*#__PURE__*/_jsx(NativeScreen, {
42
- isPreloaded: isPreloaded,
43
- index: sceneIndex,
44
- routeKey: route.key,
45
- shouldFreeze: shouldFreeze,
46
- freezeOnBlur: descriptor.options.freezeOnBlur,
47
- children: /*#__PURE__*/_jsx(ScreenComposer, {
48
- previous: previousDescriptor,
49
- current: descriptor,
50
- next: nextDescriptor,
51
- children: /*#__PURE__*/_jsx(SceneView, {
52
- descriptor: descriptor
53
- }, route.key)
54
- })
47
+ const paintDriverRouteKey = scenes[index + 2]?.route.key;
48
+ return /*#__PURE__*/_jsx(BlankSceneRow, {
49
+ scene: scene,
50
+ paintDriverRouteKey: paintDriverRouteKey
55
51
  }, route.key);
56
52
  })
57
53
  })]
@@ -1 +1 @@
1
- {"version":3,"names":["Fragment","NativeScreen","NativeScreenContainer","Overlay","SceneView","ScreenComposer","withStackCore","withManagedStack","resolveSceneNeighbors","isFabric","jsx","_jsx","jsxs","_jsxs","StackView","TRANSITIONS_ALWAYS_ON","DISABLE_NATIVE_SCREENS","descriptors","focusedIndex","scenes","shouldShowFloatOverlay","closingRouteMap","isRouteClosing","routeKey","Boolean","current","children","Float","map","scene","sceneIndex","descriptor","route","isFocused","isBelowFocused","previousDescriptor","nextDescriptor","isPreloaded","key","undefined","shouldFreeze","index","freezeOnBlur","options","previous","next"],"sourceRoot":"../../../../src","sources":["blank-stack/components/stack-view.tsx"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,OAAO;AAChC,SAASC,YAAY,QAAQ,uCAAuC;AACpE,SAASC,qBAAqB,QAAQ,iDAAiD;AACvF,SAASC,OAAO,QAAQ,iCAAiC;AACzD,SAASC,SAAS,QAAQ,oCAAoC;AAC9D,SAASC,cAAc,QAAQ,+CAA+C;AAC9E,SAASC,aAAa,QAAQ,4CAA4C;AAC1E,SAASC,gBAAgB,QAAQ,+CAA+C;AAChF,SAASC,qBAAqB,QAAQ,uDAAuD;AAC7F,SAASC,QAAQ,QAAQ,6BAA6B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAMvD,OAAO,MAAMC,SAAS,GAAGR,aAAa,CACrC;EAAES,qBAAqB,EAAE,IAAI;EAAEC,sBAAsB,EAAE;AAAK,CAAC,EAC7DT,gBAAgB,CACf,CAAC;EACAU,WAAW;EACXC,YAAY;EACZC,MAAM;EACNC,sBAAsB;EACtBC;AACD,CAAC,KAAK;EACL,MAAMC,cAAc,GAAIC,QAAgB,IACvCC,OAAO,CAACH,eAAe,CAACI,OAAO,CAACF,QAAQ,CAAC,CAAC;EAE3C,oBACCV,KAAA,CAACb,QAAQ;IAAA0B,QAAA,GACPN,sBAAsB,gBAAGT,IAAA,CAACR,OAAO,CAACwB,KAAK,IAAE,CAAC,GAAG,IAAI,eAElDhB,IAAA,CAACT,qBAAqB;MAAAwB,QAAA,EACpBP,MAAM,CAACS,GAAG,CAAC,CAACC,KAAK,EAAEC,UAAU,KAAK;QAClC,MAAMC,UAAU,GAAGF,KAAK,CAACE,UAAU;QACnC,MAAMC,KAAK,GAAGH,KAAK,CAACG,KAAK;QACzB,MAAMC,SAAS,GAAGf,YAAY,KAAKY,UAAU;QAC7C,MAAMI,cAAc,GAAGhB,YAAY,GAAG,CAAC,KAAKY,UAAU;QAEtD,MAAM;UAAEK,kBAAkB;UAAEC;QAAe,CAAC,GAC3C5B,qBAAqB,CAACW,MAAM,EAAEW,UAAU,EAAER,cAAc,CAAC;QAE1D,MAAMe,WAAW,GAAGpB,WAAW,CAACe,KAAK,CAACM,GAAG,CAAC,KAAKC,SAAS;;QAExD;QACA;QACA,MAAMC,YAAY,GAAG/B,QAAQ,CAAC,CAAC,GAC5B,CAAC4B,WAAW,IAAI,CAACJ,SAAS,IAAI,CAACC,cAAc,GAC7C,CAACG,WAAW,IAAI,CAACJ,SAAS;QAC7B,oBACCtB,IAAA,CAACV,YAAY;UAEZoC,WAAW,EAAEA,WAAY;UACzBI,KAAK,EAAEX,UAAW;UAClBP,QAAQ,EAAES,KAAK,CAACM,GAAI;UACpBE,YAAY,EAAEA,YAAa;UAC3BE,YAAY,EAAEX,UAAU,CAACY,OAAO,CAACD,YAAa;UAAAhB,QAAA,eAE9Cf,IAAA,CAACN,cAAc;YACduC,QAAQ,EAAET,kBAAmB;YAC7BV,OAAO,EAAEM,UAAW;YACpBc,IAAI,EAAET,cAAe;YAAAV,QAAA,eAErBf,IAAA,CAACP,SAAS;cAAiB2B,UAAU,EAAEA;YAAW,GAAlCC,KAAK,CAACM,GAA8B;UAAC,CACtC;QAAC,GAbZN,KAAK,CAACM,GAcE,CAAC;MAEjB,CAAC;IAAC,CACoB,CAAC;EAAA,CACf,CAAC;AAEb,CACD,CACD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["NavigationContext","NavigationRouteContext","Fragment","memo","ActivityContainer","ActivityScreen","Overlay","ScreenComposer","withStackCore","withManagedStack","jsx","_jsx","jsxs","_jsxs","BlankSceneRow","scene","paintDriverRouteKey","descriptor","route","Provider","value","navigation","children","activity","inactiveBehavior","options","hasNestedState","previous","previousDescriptor","current","next","nextDescriptor","render","StackView","TRANSITIONS_ALWAYS_ON","DISABLE_NATIVE_SCREENS","scenes","shouldShowFloatOverlay","Float","map","index","key"],"sourceRoot":"../../../../src","sources":["blank-stack/components/stack-view.tsx"],"mappings":";;AAAA,SACCA,iBAAiB,EACjBC,sBAAsB,QAChB,0BAA0B;AACjC,SAASC,QAAQ,EAAEC,IAAI,QAAQ,OAAO;AACtC,SACCC,iBAAiB,EACjBC,cAAc,QACR,kCAAkC;AACzC,SAASC,OAAO,QAAQ,iCAAiC;AACzD,SAASC,cAAc,QAAQ,+CAA+C;AAC9E,SAASC,aAAa,QAAQ,4CAA4C;AAC1E,SAASC,gBAAgB,QAAQ,+CAA+C;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAYjF,MAAMC,aAAa,gBAAGX,IAAI,CAAC,SAASW,aAAaA,CAAC;EACjDC,KAAK;EACLC;AACmB,CAAC,EAAE;EACtB,MAAMC,UAAU,GAAGF,KAAK,CAACE,UAAU;EACnC,MAAMC,KAAK,GAAGH,KAAK,CAACG,KAAK;EAEzB,oBACCP,IAAA,CAACX,iBAAiB,CAACmB,QAAQ;IAACC,KAAK,EAAEH,UAAU,CAACI,UAAW;IAAAC,QAAA,eACxDX,IAAA,CAACV,sBAAsB,CAACkB,QAAQ;MAACC,KAAK,EAAEF,KAAM;MAAAI,QAAA,eAC7CX,IAAA,CAACN,cAAc;QACdkB,QAAQ,EAAEN,UAAU,CAACM,QAAS;QAC9BC,gBAAgB,EAAEP,UAAU,CAACQ,OAAO,CAACD,gBAAiB;QACtDR,mBAAmB,EAAEA,mBAAoB;QACzCU,cAAc,EAAE,OAAO,IAAIR,KAAM;QAAAI,QAAA,eAEjCX,IAAA,CAACJ,cAAc;UACdoB,QAAQ,EAAEZ,KAAK,CAACa,kBAAmB;UACnCC,OAAO,EAAEZ,UAAW;UACpBa,IAAI,EAAEf,KAAK,CAACgB,cAAe;UAAAT,QAAA,EAE1BL,UAAU,CAACe,MAAM,GAAG;QAAC,CACP;MAAC,CACF;IAAC,CACe;EAAC,CACP,CAAC;AAE/B,CAAC,CAAC;AAEF,OAAO,MAAMC,SAAS,GAAGzB,aAAa,CACrC;EAAE0B,qBAAqB,EAAE,IAAI;EAAEC,sBAAsB,EAAE;AAAM,CAAC,EAC9D1B,gBAAgB,CACf,CAAC;EAAE2B,MAAM;EAAEC;AAAuB,CAAC,KAAK;EACvC,oBACCxB,KAAA,CAACX,QAAQ;IAAAoB,QAAA,GACPe,sBAAsB,gBAAG1B,IAAA,CAACL,OAAO,CAACgC,KAAK,IAAE,CAAC,GAAG,IAAI,eAElD3B,IAAA,CAACP,iBAAiB;MAAAkB,QAAA,EAChBc,MAAM,CAACG,GAAG,CAAC,CAACxB,KAAK,EAAEyB,KAAK,KAAK;QAC7B,MAAMtB,KAAK,GAAGH,KAAK,CAACG,KAAK;QACzB,MAAMF,mBAAmB,GAAGoB,MAAM,CAACI,KAAK,GAAG,CAAC,CAAC,EAAEtB,KAAK,CAACuB,GAAG;QAExD,oBACC9B,IAAA,CAACG,aAAa;UAEbC,KAAK,EAAEA,KAAM;UACbC,mBAAmB,EAAEA;QAAoB,GAFpCE,KAAK,CAACuB,GAGX,CAAC;MAEJ,CAAC;IAAC,CACgB,CAAC;EAAA,CACX,CAAC;AAEb,CACD,CACD,CAAC","ignoreList":[]}
@@ -15,8 +15,6 @@ function BlankStackNavigatorInner({
15
15
  screenListeners,
16
16
  screenOptions,
17
17
  screenLayout,
18
- DISABLE_NATIVE_SCREENS,
19
- DISABLE_NATIVE_SCREEN_CONTAINER,
20
18
  ...rest
21
19
  }) {
22
20
  const {
@@ -38,8 +36,6 @@ function BlankStackNavigatorInner({
38
36
  return /*#__PURE__*/_jsx(NavigationContent, {
39
37
  children: /*#__PURE__*/_jsx(StackView, {
40
38
  ...rest,
41
- DISABLE_NATIVE_SCREENS: DISABLE_NATIVE_SCREENS,
42
- DISABLE_NATIVE_SCREEN_CONTAINER: DISABLE_NATIVE_SCREEN_CONTAINER,
43
39
  state: state,
44
40
  navigation: navigation,
45
41
  descriptors: descriptors,
@@ -48,17 +44,16 @@ function BlankStackNavigatorInner({
48
44
  });
49
45
  }
50
46
  function BlankStackNavigator({
47
+ enableNativeScreens,
51
48
  independent = false,
52
- enableNativeScreens = true,
49
+ nativeScreens,
53
50
  ...rest
54
51
  }) {
55
52
  const isNested = React.useContext(BlankStackContext);
53
+ const nativeScreensEnabled = nativeScreens ?? enableNativeScreens ?? true;
56
54
  const navigator = /*#__PURE__*/_jsx(BlankStackNavigatorInner, {
57
55
  ...rest,
58
- ...(!enableNativeScreens && {
59
- DISABLE_NATIVE_SCREENS: true
60
- }),
61
- DISABLE_NATIVE_SCREEN_CONTAINER: independent
56
+ DISABLE_NATIVE_SCREENS: !nativeScreensEnabled
62
57
  });
63
58
  if (!independent || isNested) {
64
59
  return navigator;
@@ -77,14 +72,12 @@ BlankStackNavigator.displayName = "BlankStackNavigator";
77
72
  * Creates a blank stack navigator with gesture-driven transitions.
78
73
  *
79
74
  * By default, blank stack behaves like the existing top-level blank stack:
80
- * it participates in the current navigation tree and uses native screen
81
- * primitives on supported native platforms.
75
+ * it participates in the current navigation tree and renders screens with
76
+ * react-native-screens.
82
77
  *
83
78
  * Blank stack also accepts navigator-specific props for embedded-flow behavior:
79
+ * - `nativeScreens: false` renders blank-stack screens as regular React Native views
84
80
  * - `independent: true` creates an isolated navigator for nested flows
85
- * - `enableNativeScreens: false` renders the stack with regular views instead
86
- * of `react-native-screens`
87
- *
88
81
  * In the dynamic API, pass these to `<Stack.Navigator />`.
89
82
  * In the static API, pass them in the same config object as `screens`.
90
83
  */
@@ -1 +1 @@
1
- {"version":3,"names":["createNavigatorFactory","NavigationContainer","NavigationIndependentTree","StackRouter","useNavigationBuilder","React","useTabPressReset","StackView","jsx","_jsx","BlankStackContext","createContext","displayName","BlankStackNavigatorInner","id","initialRouteName","children","layout","screenListeners","screenOptions","screenLayout","DISABLE_NATIVE_SCREENS","DISABLE_NATIVE_SCREEN_CONTAINER","rest","state","describe","descriptors","navigation","NavigationContent","index","key","BlankStackNavigator","independent","enableNativeScreens","isNested","useContext","navigator","Provider","value","createBlankStackNavigator","config"],"sourceRoot":"../../../../src","sources":["blank-stack/navigators/create-blank-stack-navigator.tsx"],"mappings":";;AAAA,SACCA,sBAAsB,EACtBC,mBAAmB,EACnBC,yBAAyB,EAKzBC,WAAW,EAIXC,oBAAoB,QACd,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAASC,gBAAgB,QAAQ,mDAAmD;AACpF,SAASC,SAAS,QAAQ,0BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAiBrD,MAAMC,iBAAiB,gBAAGL,KAAK,CAACM,aAAa,CAAU,KAAK,CAAC;AAC7DD,iBAAiB,CAACE,WAAW,GAAG,mBAAmB;AAEnD,SAASC,wBAAwBA,CAAC;EACjCC,EAAE;EACFC,gBAAgB;EAChBC,QAAQ;EACRC,MAAM;EACNC,eAAe;EACfC,aAAa;EACbC,YAAY;EACZC,sBAAsB;EACtBC,+BAA+B;EAC/B,GAAGC;AAC2B,CAAC,EAAE;EACjC,MAAM;IAAEC,KAAK;IAAEC,QAAQ;IAAEC,WAAW;IAAEC,UAAU;IAAEC;EAAkB,CAAC,GACpExB,oBAAoB,CAMlBD,WAAW,EAAE;IACdW,EAAE;IACFC,gBAAgB;IAChBC,QAAQ;IACRC,MAAM;IACNC,eAAe;IACfC,aAAa;IACbC;EACD,CAAC,CAAC;EAEHd,gBAAgB,CAACqB,UAAU,EAAEH,KAAK,CAACK,KAAK,EAAEL,KAAK,CAACM,GAAG,CAAC;EAEpD,oBACCrB,IAAA,CAACmB,iBAAiB;IAAAZ,QAAA,eACjBP,IAAA,CAACF,SAAS;MAAA,GACLgB,IAAI;MACRF,sBAAsB,EAAEA,sBAAuB;MAC/CC,+BAA+B,EAAEA,+BAAgC;MACjEE,KAAK,EAAEA,KAAM;MACbG,UAAU,EAAEA,UAAW;MACvBD,WAAW,EAAEA,WAAY;MACzBD,QAAQ,EAAEA;IAAS,CACnB;EAAC,CACgB,CAAC;AAEtB;AAEA,SAASM,mBAAmBA,CAAC;EAC5BC,WAAW,GAAG,KAAK;EACnBC,mBAAmB,GAAG,IAAI;EAC1B,GAAGV;AACsB,CAAC,EAAE;EAC5B,MAAMW,QAAQ,GAAG7B,KAAK,CAAC8B,UAAU,CAACzB,iBAAiB,CAAC;EAEpD,MAAM0B,SAAS,gBACd3B,IAAA,CAACI,wBAAwB;IAAA,GACpBU,IAAI;IAAA,IACH,CAACU,mBAAmB,IAAI;MAC5BZ,sBAAsB,EAAE;IACzB,CAAC;IACDC,+BAA+B,EAAEU;EAAY,CAC7C,CACD;EAED,IAAI,CAACA,WAAW,IAAIE,QAAQ,EAAE;IAC7B,OAAOE,SAAS;EACjB;EAEA,oBACC3B,IAAA,CAACP,yBAAyB;IAAAc,QAAA,eACzBP,IAAA,CAACR,mBAAmB;MAAAe,QAAA,eACnBP,IAAA,CAACC,iBAAiB,CAAC2B,QAAQ;QAACC,KAAK,EAAE,IAAK;QAAAtB,QAAA,EACtCoB;MAAS,CACiB;IAAC,CACT;EAAC,CACI,CAAC;AAE9B;AAEAL,mBAAmB,CAACnB,WAAW,GAAG,qBAAqB;AAqBvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAAS2B,yBAAyBA,CAQvCC,MAAe,EAAmC;EACnD,OAAOxC,sBAAsB,CAAC+B,mBAAmB,CAAC,CAACS,MAAM,CAAC;AAC3D","ignoreList":[]}
1
+ {"version":3,"names":["createNavigatorFactory","NavigationContainer","NavigationIndependentTree","StackRouter","useNavigationBuilder","React","useTabPressReset","StackView","jsx","_jsx","BlankStackContext","createContext","displayName","BlankStackNavigatorInner","id","initialRouteName","children","layout","screenListeners","screenOptions","screenLayout","rest","state","describe","descriptors","navigation","NavigationContent","index","key","BlankStackNavigator","enableNativeScreens","independent","nativeScreens","isNested","useContext","nativeScreensEnabled","navigator","DISABLE_NATIVE_SCREENS","Provider","value","createBlankStackNavigator","config"],"sourceRoot":"../../../../src","sources":["blank-stack/navigators/create-blank-stack-navigator.tsx"],"mappings":";;AAAA,SACCA,sBAAsB,EACtBC,mBAAmB,EACnBC,yBAAyB,EAKzBC,WAAW,EAIXC,oBAAoB,QACd,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAASC,gBAAgB,QAAQ,mDAAmD;AACpF,SAASC,SAAS,QAAQ,0BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAgBrD,MAAMC,iBAAiB,gBAAGL,KAAK,CAACM,aAAa,CAAU,KAAK,CAAC;AAC7DD,iBAAiB,CAACE,WAAW,GAAG,mBAAmB;AAEnD,SAASC,wBAAwBA,CAAC;EACjCC,EAAE;EACFC,gBAAgB;EAChBC,QAAQ;EACRC,MAAM;EACNC,eAAe;EACfC,aAAa;EACbC,YAAY;EACZ,GAAGC;AAC2B,CAAC,EAAE;EACjC,MAAM;IAAEC,KAAK;IAAEC,QAAQ;IAAEC,WAAW;IAAEC,UAAU;IAAEC;EAAkB,CAAC,GACpEtB,oBAAoB,CAMlBD,WAAW,EAAE;IACdW,EAAE;IACFC,gBAAgB;IAChBC,QAAQ;IACRC,MAAM;IACNC,eAAe;IACfC,aAAa;IACbC;EACD,CAAC,CAAC;EAEHd,gBAAgB,CAACmB,UAAU,EAAEH,KAAK,CAACK,KAAK,EAAEL,KAAK,CAACM,GAAG,CAAC;EAEpD,oBACCnB,IAAA,CAACiB,iBAAiB;IAAAV,QAAA,eACjBP,IAAA,CAACF,SAAS;MAAA,GACLc,IAAI;MACRC,KAAK,EAAEA,KAAM;MACbG,UAAU,EAAEA,UAAW;MACvBD,WAAW,EAAEA,WAAY;MACzBD,QAAQ,EAAEA;IAAS,CACnB;EAAC,CACgB,CAAC;AAEtB;AAEA,SAASM,mBAAmBA,CAAC;EAC5BC,mBAAmB;EACnBC,WAAW,GAAG,KAAK;EACnBC,aAAa;EACb,GAAGX;AACsB,CAAC,EAAE;EAC5B,MAAMY,QAAQ,GAAG5B,KAAK,CAAC6B,UAAU,CAACxB,iBAAiB,CAAC;EACpD,MAAMyB,oBAAoB,GAAGH,aAAa,IAAIF,mBAAmB,IAAI,IAAI;EAEzE,MAAMM,SAAS,gBACd3B,IAAA,CAACI,wBAAwB;IAAA,GACpBQ,IAAI;IACRgB,sBAAsB,EAAE,CAACF;EAAqB,CAC9C,CACD;EAED,IAAI,CAACJ,WAAW,IAAIE,QAAQ,EAAE;IAC7B,OAAOG,SAAS;EACjB;EAEA,oBACC3B,IAAA,CAACP,yBAAyB;IAAAc,QAAA,eACzBP,IAAA,CAACR,mBAAmB;MAAAe,QAAA,eACnBP,IAAA,CAACC,iBAAiB,CAAC4B,QAAQ;QAACC,KAAK,EAAE,IAAK;QAAAvB,QAAA,EACtCoB;MAAS,CACiB;IAAC,CACT;EAAC,CACI,CAAC;AAE9B;AAEAP,mBAAmB,CAACjB,WAAW,GAAG,qBAAqB;AAqBvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAAS4B,yBAAyBA,CAQvCC,MAAe,EAAmC;EACnD,OAAOzC,sBAAsB,CAAC6B,mBAAmB,CAAC,CAACY,MAAM,CAAC;AAC3D","ignoreList":[]}
@@ -7,7 +7,6 @@ import { ScreenComposer } from "../../shared/providers/screen/screen-composer";
7
7
  import { withStackCore } from "../../shared/providers/stack/core.provider";
8
8
  import { withManagedStack } from "../../shared/providers/stack/managed.provider";
9
9
  import { StackType } from "../../shared/types/stack.types";
10
- import { resolveSceneNeighbors } from "../../shared/utils/navigation/resolve-scene-neighbors";
11
10
  import { ComponentScreen } from "./component-screen";
12
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
12
  export const StackView = withStackCore({
@@ -15,24 +14,18 @@ export const StackView = withStackCore({
15
14
  STACK_TYPE: StackType.COMPONENT
16
15
  }, withManagedStack(({
17
16
  scenes,
18
- shouldShowFloatOverlay,
19
- closingRouteMap
17
+ shouldShowFloatOverlay
20
18
  }) => {
21
- const isRouteClosing = routeKey => Boolean(closingRouteMap.current[routeKey]);
22
19
  return /*#__PURE__*/_jsxs(Fragment, {
23
- children: [shouldShowFloatOverlay ? /*#__PURE__*/_jsx(Overlay.Float, {}) : null, scenes.map((scene, sceneIndex) => {
20
+ children: [shouldShowFloatOverlay ? /*#__PURE__*/_jsx(Overlay.Float, {}) : null, scenes.map(scene => {
24
21
  const descriptor = scene.descriptor;
25
22
  const route = scene.route;
26
- const {
27
- previousDescriptor,
28
- nextDescriptor
29
- } = resolveSceneNeighbors(scenes, sceneIndex, isRouteClosing);
30
23
  return /*#__PURE__*/_jsx(ComponentScreen, {
31
24
  routeKey: route.key,
32
25
  children: /*#__PURE__*/_jsx(ScreenComposer, {
33
- previous: previousDescriptor,
26
+ previous: scene.previousDescriptor,
34
27
  current: descriptor,
35
- next: nextDescriptor,
28
+ next: scene.nextDescriptor,
36
29
  children: /*#__PURE__*/_jsx(SceneView, {
37
30
  descriptor: descriptor
38
31
  }, route.key)
@@ -1 +1 @@
1
- {"version":3,"names":["Fragment","Overlay","SceneView","ScreenComposer","withStackCore","withManagedStack","StackType","resolveSceneNeighbors","ComponentScreen","jsx","_jsx","jsxs","_jsxs","StackView","TRANSITIONS_ALWAYS_ON","STACK_TYPE","COMPONENT","scenes","shouldShowFloatOverlay","closingRouteMap","isRouteClosing","routeKey","Boolean","current","children","Float","map","scene","sceneIndex","descriptor","route","previousDescriptor","nextDescriptor","key","previous","next"],"sourceRoot":"../../../../src","sources":["component-stack/components/stack-view.tsx"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,OAAO;AAChC,SAASC,OAAO,QAAQ,iCAAiC;AACzD,SAASC,SAAS,QAAQ,oCAAoC;AAC9D,SAASC,cAAc,QAAQ,+CAA+C;AAC9E,SAASC,aAAa,QAAQ,4CAA4C;AAC1E,SAASC,gBAAgB,QAAQ,+CAA+C;AAChF,SAASC,SAAS,QAAQ,gCAAgC;AAC1D,SAASC,qBAAqB,QAAQ,uDAAuD;AAK7F,SAASC,eAAe,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAErD,OAAO,MAAMC,SAAS,GAAGT,aAAa,CACrC;EAAEU,qBAAqB,EAAE,IAAI;EAAEC,UAAU,EAAET,SAAS,CAACU;AAAU,CAAC,EAChEX,gBAAgB,CACf,CAAC;EAAEY,MAAM;EAAEC,sBAAsB;EAAEC;AAAgB,CAAC,KAAK;EACxD,MAAMC,cAAc,GAAIC,QAAgB,IACvCC,OAAO,CAACH,eAAe,CAACI,OAAO,CAACF,QAAQ,CAAC,CAAC;EAE3C,oBACCT,KAAA,CAACZ,QAAQ;IAAAwB,QAAA,GACPN,sBAAsB,gBAAGR,IAAA,CAACT,OAAO,CAACwB,KAAK,IAAE,CAAC,GAAG,IAAI,EAEjDR,MAAM,CAACS,GAAG,CAAC,CAACC,KAAK,EAAEC,UAAU,KAAK;MAClC,MAAMC,UAAU,GAAGF,KAAK,CAACE,UAAU;MACnC,MAAMC,KAAK,GAAGH,KAAK,CAACG,KAAK;MAEzB,MAAM;QAAEC,kBAAkB;QAAEC;MAAe,CAAC,GAC3CzB,qBAAqB,CAACU,MAAM,EAAEW,UAAU,EAAER,cAAc,CAAC;MAE1D,oBACCV,IAAA,CAACF,eAAe;QAAiBa,QAAQ,EAAES,KAAK,CAACG,GAAI;QAAAT,QAAA,eACpDd,IAAA,CAACP,cAAc;UACd+B,QAAQ,EAAEH,kBAAmB;UAC7BR,OAAO,EAAEM,UAAW;UACpBM,IAAI,EAAEH,cAAe;UAAAR,QAAA,eAErBd,IAAA,CAACR,SAAS;YAAiB2B,UAAU,EAAEA;UAAW,GAAlCC,KAAK,CAACG,GAA8B;QAAC,CACtC;MAAC,GAPIH,KAAK,CAACG,GAQX,CAAC;IAEpB,CAAC,CAAC;EAAA,CACO,CAAC;AAEb,CACD,CACD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Fragment","Overlay","SceneView","ScreenComposer","withStackCore","withManagedStack","StackType","ComponentScreen","jsx","_jsx","jsxs","_jsxs","StackView","TRANSITIONS_ALWAYS_ON","STACK_TYPE","COMPONENT","scenes","shouldShowFloatOverlay","children","Float","map","scene","descriptor","route","routeKey","key","previous","previousDescriptor","current","next","nextDescriptor"],"sourceRoot":"../../../../src","sources":["component-stack/components/stack-view.tsx"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,OAAO;AAChC,SAASC,OAAO,QAAQ,iCAAiC;AACzD,SAASC,SAAS,QAAQ,oCAAoC;AAC9D,SAASC,cAAc,QAAQ,+CAA+C;AAC9E,SAASC,aAAa,QAAQ,4CAA4C;AAC1E,SAASC,gBAAgB,QAAQ,+CAA+C;AAChF,SAASC,SAAS,QAAQ,gCAAgC;AAK1D,SAASC,eAAe,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAErD,OAAO,MAAMC,SAAS,GAAGR,aAAa,CACrC;EAAES,qBAAqB,EAAE,IAAI;EAAEC,UAAU,EAAER,SAAS,CAACS;AAAU,CAAC,EAChEV,gBAAgB,CACf,CAAC;EAAEW,MAAM;EAAEC;AAAuB,CAAC,KAAK;EACvC,oBACCN,KAAA,CAACX,QAAQ;IAAAkB,QAAA,GACPD,sBAAsB,gBAAGR,IAAA,CAACR,OAAO,CAACkB,KAAK,IAAE,CAAC,GAAG,IAAI,EAEjDH,MAAM,CAACI,GAAG,CAAEC,KAAK,IAAK;MACtB,MAAMC,UAAU,GAAGD,KAAK,CAACC,UAAU;MACnC,MAAMC,KAAK,GAAGF,KAAK,CAACE,KAAK;MAEzB,oBACCd,IAAA,CAACF,eAAe;QAAiBiB,QAAQ,EAAED,KAAK,CAACE,GAAI;QAAAP,QAAA,eACpDT,IAAA,CAACN,cAAc;UACduB,QAAQ,EAAEL,KAAK,CAACM,kBAAmB;UACnCC,OAAO,EAAEN,UAAW;UACpBO,IAAI,EAAER,KAAK,CAACS,cAAe;UAAAZ,QAAA,eAE3BT,IAAA,CAACP,SAAS;YAAiBoB,UAAU,EAAEA;UAAW,GAAlCC,KAAK,CAACE,GAA8B;QAAC,CACtC;MAAC,GAPIF,KAAK,CAACE,GAQX,CAAC;IAEpB,CAAC,CAAC;EAAA,CACO,CAAC;AAEb,CACD,CACD,CAAC","ignoreList":[]}
@@ -76,7 +76,7 @@ function IsolatedComponentStackNavigator(props) {
76
76
  * @deprecated Component stack was originally introduced for independent,
77
77
  * embedded navigation flows. Blank stack now supports that use case directly
78
78
  * via navigator props such as `<BlankStack.Navigator independent />`, with
79
- * `enableNativeScreens` available when you need to switch between native
79
+ * `nativeScreens` available when you need to switch between native
80
80
  * screens and regular views. Prefer blank stack for new work; component stack
81
81
  * will be removed in a future release.
82
82
  */
@@ -40,6 +40,12 @@ function NativeStackNavigator({
40
40
  })
41
41
  });
42
42
  }
43
+
44
+ /**
45
+ * @deprecated The bundled native-stack integration is deprecated and will be removed in a future major release.
46
+ * Use `@react-navigation/native-stack` or Expo Router's native stack with
47
+ * `withScreenTransitions` from `react-native-screen-transitions` instead.
48
+ */
43
49
  export function createNativeStackNavigator(config) {
44
50
  return createNavigatorFactory(NativeStackNavigator)(config);
45
51
  }
@@ -1 +1 @@
1
- {"version":3,"names":["createNavigatorFactory","StackRouter","useNavigationBuilder","useTabPressReset","NativeStackView","jsx","_jsx","NativeStackNavigator","id","initialRouteName","children","layout","screenListeners","screenOptions","screenLayout","rest","state","describe","descriptors","navigation","NavigationContent","index","key","createNativeStackNavigator","config"],"sourceRoot":"../../../../src","sources":["native-stack/navigators/createNativeStackNavigator.tsx"],"mappings":";;AAAA,SACCA,sBAAsB,EAKtBC,WAAW,EAIXC,oBAAoB,QACd,0BAA0B;AACjC,SAASC,gBAAgB,QAAQ,mDAAmD;AAQpF,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,gBAAgB,CAACgB,UAAU,EAAEH,KAAK,CAACK,KAAK,EAAEL,KAAK,CAACM,GAAG,CAAC;EAEpD,oBACChB,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,SAASM,0BAA0BA,CAmBxCC,MAAe,EAAmC;EACnD,OAAOxB,sBAAsB,CAACO,oBAAoB,CAAC,CAACiB,MAAM,CAAC;AAC5D","ignoreList":[]}
1
+ {"version":3,"names":["createNavigatorFactory","StackRouter","useNavigationBuilder","useTabPressReset","NativeStackView","jsx","_jsx","NativeStackNavigator","id","initialRouteName","children","layout","screenListeners","screenOptions","screenLayout","rest","state","describe","descriptors","navigation","NavigationContent","index","key","createNativeStackNavigator","config"],"sourceRoot":"../../../../src","sources":["native-stack/navigators/createNativeStackNavigator.tsx"],"mappings":";;AAAA,SACCA,sBAAsB,EAKtBC,WAAW,EAIXC,oBAAoB,QACd,0BAA0B;AACjC,SAASC,gBAAgB,QAAQ,mDAAmD;AAQpF,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,gBAAgB,CAACgB,UAAU,EAAEH,KAAK,CAACK,KAAK,EAAEL,KAAK,CAACM,GAAG,CAAC;EAEpD,oBACChB,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;AACA;AACA;AACA;AACA;AACA,OAAO,SAASM,0BAA0BA,CAmBxCC,MAAe,EAAmC;EACnD,OAAOxB,sBAAsB,CAACO,oBAAoB,CAAC,CAACiB,MAAM,CAAC;AAC5D","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ import { createContext, useContext } from "react";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ const ScreenTransitionsAdapterContext = /*#__PURE__*/createContext(null);
6
+ ScreenTransitionsAdapterContext.displayName = "ScreenTransitionsAdapter";
7
+ export function ScreenTransitionsAdapterProvider({
8
+ children,
9
+ value
10
+ }) {
11
+ return /*#__PURE__*/_jsx(ScreenTransitionsAdapterContext.Provider, {
12
+ value: value,
13
+ children: children
14
+ });
15
+ }
16
+ export function useScreenTransitionsAdapterContext() {
17
+ const context = useContext(ScreenTransitionsAdapterContext);
18
+ if (!context) {
19
+ throw new Error("useScreenTransitionsAdapterContext must be used within withScreenTransitions");
20
+ }
21
+ return context;
22
+ }
23
+ //# sourceMappingURL=context.js.map