react-native-screen-transitions 3.6.0 → 3.7.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) 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 +69 -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 +57 -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/helpers/resolve-slot-styles/index.js +7 -28
  60. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  61. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +16 -1
  62. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  63. package/lib/commonjs/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js +2 -14
  64. package/lib/commonjs/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js.map +1 -1
  65. package/lib/commonjs/shared/providers/stack/direct.provider.js +4 -3
  66. package/lib/commonjs/shared/providers/stack/direct.provider.js.map +1 -1
  67. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js +197 -0
  68. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js.map +1 -0
  69. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js +58 -0
  70. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js.map +1 -0
  71. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js +92 -0
  72. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js.map +1 -0
  73. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js +118 -0
  74. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js.map +1 -0
  75. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/types.js +6 -0
  76. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/types.js.map +1 -0
  77. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/index.js +24 -0
  78. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/index.js.map +1 -0
  79. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js +131 -0
  80. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js.map +1 -0
  81. package/lib/commonjs/shared/providers/stack/managed.provider.js +18 -29
  82. package/lib/commonjs/shared/providers/stack/managed.provider.js.map +1 -1
  83. package/lib/commonjs/shared/types/stack.types.js.map +1 -1
  84. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js +4 -4
  85. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  86. package/lib/commonjs/shared/utils/bounds/navigation/reveal/config.js +2 -1
  87. package/lib/commonjs/shared/utils/bounds/navigation/reveal/config.js.map +1 -1
  88. package/lib/commonjs/shared/utils/create-provider.js +99 -10
  89. package/lib/commonjs/shared/utils/create-provider.js.map +1 -1
  90. package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js +8 -5
  91. package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js.map +1 -1
  92. package/lib/commonjs/shared/utils/navigation/sync-routes-with-removed.js +23 -6
  93. package/lib/commonjs/shared/utils/navigation/sync-routes-with-removed.js.map +1 -1
  94. package/lib/commonjs/shared/utils/visibility-block-offset.js +13 -0
  95. package/lib/commonjs/shared/utils/visibility-block-offset.js.map +1 -0
  96. package/lib/module/blank-stack/components/stack-view.js +36 -40
  97. package/lib/module/blank-stack/components/stack-view.js.map +1 -1
  98. package/lib/module/blank-stack/navigators/create-blank-stack-navigator.js +7 -14
  99. package/lib/module/blank-stack/navigators/create-blank-stack-navigator.js.map +1 -1
  100. package/lib/module/component-stack/components/stack-view.js +4 -11
  101. package/lib/module/component-stack/components/stack-view.js.map +1 -1
  102. package/lib/module/component-stack/navigators/create-component-stack-navigator.js +1 -1
  103. package/lib/module/native-stack/navigators/createNativeStackNavigator.js +6 -0
  104. package/lib/module/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
  105. package/lib/module/shared/adapters/with-screen-transitions/context.js +23 -0
  106. package/lib/module/shared/adapters/with-screen-transitions/context.js.map +1 -0
  107. package/lib/module/shared/adapters/with-screen-transitions/index.js +65 -0
  108. package/lib/module/shared/adapters/with-screen-transitions/index.js.map +1 -0
  109. package/lib/module/shared/adapters/with-screen-transitions/options.js +52 -0
  110. package/lib/module/shared/adapters/with-screen-transitions/options.js.map +1 -0
  111. package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js +138 -0
  112. package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -0
  113. package/lib/module/shared/adapters/with-screen-transitions/types.js +4 -0
  114. package/lib/module/shared/adapters/with-screen-transitions/types.js.map +1 -0
  115. package/lib/module/shared/components/activity/helpers.js +5 -0
  116. package/lib/module/shared/components/activity/helpers.js.map +1 -0
  117. package/lib/module/shared/components/activity/index.js +5 -0
  118. package/lib/module/shared/components/activity/index.js.map +1 -0
  119. package/lib/module/shared/components/activity/variants/activity-container.js +24 -0
  120. package/lib/module/shared/components/activity/variants/activity-container.js.map +1 -0
  121. package/lib/module/shared/components/activity/variants/activity-screen.js +103 -0
  122. package/lib/module/shared/components/activity/variants/activity-screen.js.map +1 -0
  123. package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js +11 -5
  124. package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js.map +1 -1
  125. package/lib/module/shared/components/create-boundary-component/utils/measured-bounds.js +11 -0
  126. package/lib/module/shared/components/create-boundary-component/utils/measured-bounds.js.map +1 -1
  127. package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +8 -17
  128. package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  129. package/lib/module/shared/components/screen-lifecycle/index.js +1 -1
  130. package/lib/module/shared/components/screen-lifecycle/index.js.map +1 -1
  131. package/lib/module/shared/hooks/navigation/use-navigation-helpers.js +11 -5
  132. package/lib/module/shared/hooks/navigation/use-navigation-helpers.js.map +1 -1
  133. package/lib/module/shared/hooks/navigation/use-stack.js +63 -6
  134. package/lib/module/shared/hooks/navigation/use-stack.js.map +1 -1
  135. package/lib/module/shared/index.js +3 -0
  136. package/lib/module/shared/index.js.map +1 -1
  137. package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js +17 -29
  138. package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  139. package/lib/module/shared/providers/screen/descriptors/index.js +1 -1
  140. package/lib/module/shared/providers/screen/descriptors/index.js.map +1 -1
  141. package/lib/module/shared/providers/screen/gestures/ownership/resolve-ownership.js +2 -1
  142. package/lib/module/shared/providers/screen/gestures/ownership/resolve-ownership.js.map +1 -1
  143. package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +2 -2
  144. package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
  145. package/lib/module/shared/providers/screen/gestures/pan/pan-lifecycle.js +5 -2
  146. package/lib/module/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +1 -1
  147. package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js +4 -3
  148. package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +1 -1
  149. package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js +5 -2
  150. package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +1 -1
  151. package/lib/module/shared/providers/screen/gestures/pinch/use-pinch-behavior.js +4 -3
  152. package/lib/module/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +1 -1
  153. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +7 -28
  154. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  155. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +16 -1
  156. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  157. package/lib/module/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js +3 -15
  158. package/lib/module/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js.map +1 -1
  159. package/lib/module/shared/providers/stack/direct.provider.js +5 -4
  160. package/lib/module/shared/providers/stack/direct.provider.js.map +1 -1
  161. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js +192 -0
  162. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js.map +1 -0
  163. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js +53 -0
  164. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js.map +1 -0
  165. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js +78 -0
  166. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js.map +1 -0
  167. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js +113 -0
  168. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js.map +1 -0
  169. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/types.js +4 -0
  170. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/types.js.map +1 -0
  171. package/lib/module/shared/providers/stack/helpers/managed-stack-state/index.js +19 -0
  172. package/lib/module/shared/providers/stack/helpers/managed-stack-state/index.js.map +1 -0
  173. package/lib/module/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js +126 -0
  174. package/lib/module/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js.map +1 -0
  175. package/lib/module/shared/providers/stack/managed.provider.js +19 -30
  176. package/lib/module/shared/providers/stack/managed.provider.js.map +1 -1
  177. package/lib/module/shared/types/stack.types.js.map +1 -1
  178. package/lib/module/shared/utils/bounds/navigation/reveal/build.js +5 -5
  179. package/lib/module/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  180. package/lib/module/shared/utils/bounds/navigation/reveal/config.js +1 -0
  181. package/lib/module/shared/utils/bounds/navigation/reveal/config.js.map +1 -1
  182. package/lib/module/shared/utils/create-provider.js +100 -11
  183. package/lib/module/shared/utils/create-provider.js.map +1 -1
  184. package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js +8 -5
  185. package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js.map +1 -1
  186. package/lib/module/shared/utils/navigation/sync-routes-with-removed.js +23 -6
  187. package/lib/module/shared/utils/navigation/sync-routes-with-removed.js.map +1 -1
  188. package/lib/module/shared/utils/visibility-block-offset.js +8 -0
  189. package/lib/module/shared/utils/visibility-block-offset.js.map +1 -0
  190. package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
  191. package/lib/typescript/blank-stack/index.d.ts +1 -1
  192. package/lib/typescript/blank-stack/index.d.ts.map +1 -1
  193. package/lib/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts +4 -6
  194. package/lib/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts.map +1 -1
  195. package/lib/typescript/blank-stack/types.d.ts +41 -29
  196. package/lib/typescript/blank-stack/types.d.ts.map +1 -1
  197. package/lib/typescript/component-stack/components/stack-view.d.ts.map +1 -1
  198. package/lib/typescript/component-stack/navigators/create-component-stack-navigator.d.ts +1 -1
  199. package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts +5 -0
  200. package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts.map +1 -1
  201. package/lib/typescript/native-stack/types.d.ts +25 -0
  202. package/lib/typescript/native-stack/types.d.ts.map +1 -1
  203. package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts +15 -0
  204. package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts.map +1 -0
  205. package/lib/typescript/shared/adapters/with-screen-transitions/index.d.ts +10 -0
  206. package/lib/typescript/shared/adapters/with-screen-transitions/index.d.ts.map +1 -0
  207. package/lib/typescript/shared/adapters/with-screen-transitions/options.d.ts +9 -0
  208. package/lib/typescript/shared/adapters/with-screen-transitions/options.d.ts.map +1 -0
  209. package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts +12 -0
  210. package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -0
  211. package/lib/typescript/shared/adapters/with-screen-transitions/types.d.ts +24 -0
  212. package/lib/typescript/shared/adapters/with-screen-transitions/types.d.ts.map +1 -0
  213. package/lib/typescript/shared/components/activity/helpers.d.ts +4 -0
  214. package/lib/typescript/shared/components/activity/helpers.d.ts.map +1 -0
  215. package/lib/typescript/shared/components/activity/index.d.ts +3 -0
  216. package/lib/typescript/shared/components/activity/index.d.ts.map +1 -0
  217. package/lib/typescript/shared/components/activity/variants/activity-container.d.ts +6 -0
  218. package/lib/typescript/shared/components/activity/variants/activity-container.d.ts.map +1 -0
  219. package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts +13 -0
  220. package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts.map +1 -0
  221. package/lib/typescript/shared/components/create-boundary-component/hooks/use-measurer.d.ts.map +1 -1
  222. package/lib/typescript/shared/components/create-boundary-component/index.d.ts +2 -2
  223. package/lib/typescript/shared/components/create-boundary-component/utils/measured-bounds.d.ts +1 -0
  224. package/lib/typescript/shared/components/create-boundary-component/utils/measured-bounds.d.ts.map +1 -1
  225. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts +1 -2
  226. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts.map +1 -1
  227. package/lib/typescript/shared/hooks/navigation/use-navigation-helpers.d.ts +1 -0
  228. package/lib/typescript/shared/hooks/navigation/use-navigation-helpers.d.ts.map +1 -1
  229. package/lib/typescript/shared/hooks/navigation/use-stack.d.ts +13 -1
  230. package/lib/typescript/shared/hooks/navigation/use-stack.d.ts.map +1 -1
  231. package/lib/typescript/shared/index.d.ts +15 -11
  232. package/lib/typescript/shared/index.d.ts.map +1 -1
  233. package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts +11 -3
  234. package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
  235. package/lib/typescript/shared/providers/screen/descriptors/index.d.ts +1 -1
  236. package/lib/typescript/shared/providers/screen/descriptors/index.d.ts.map +1 -1
  237. package/lib/typescript/shared/providers/screen/gestures/ownership/resolve-ownership.d.ts.map +1 -1
  238. package/lib/typescript/shared/providers/screen/gestures/pan/pan-lifecycle.d.ts +1 -1
  239. package/lib/typescript/shared/providers/screen/gestures/pan/pan-lifecycle.d.ts.map +1 -1
  240. package/lib/typescript/shared/providers/screen/gestures/pan/use-pan-behavior.d.ts.map +1 -1
  241. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-lifecycle.d.ts +1 -1
  242. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-lifecycle.d.ts.map +1 -1
  243. package/lib/typescript/shared/providers/screen/gestures/pinch/use-pinch-behavior.d.ts.map +1 -1
  244. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts +1 -2
  245. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts.map +1 -1
  246. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +3 -1
  247. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  248. package/lib/typescript/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.d.ts.map +1 -1
  249. package/lib/typescript/shared/providers/stack/direct.provider.d.ts.map +1 -1
  250. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.d.ts +13 -0
  251. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.d.ts.map +1 -0
  252. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.d.ts +12 -0
  253. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.d.ts.map +1 -0
  254. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.d.ts +13 -0
  255. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.d.ts.map +1 -0
  256. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.d.ts +12 -0
  257. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.d.ts.map +1 -0
  258. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/types.d.ts +40 -0
  259. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/types.d.ts.map +1 -0
  260. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/index.d.ts +12 -0
  261. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/index.d.ts.map +1 -0
  262. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.d.ts +13 -0
  263. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.d.ts.map +1 -0
  264. package/lib/typescript/shared/providers/stack/managed.provider.d.ts.map +1 -1
  265. package/lib/typescript/shared/types/bounds.types.d.ts +19 -0
  266. package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
  267. package/lib/typescript/shared/types/index.d.ts +2 -2
  268. package/lib/typescript/shared/types/index.d.ts.map +1 -1
  269. package/lib/typescript/shared/types/providers/managed-stack.types.d.ts +3 -9
  270. package/lib/typescript/shared/types/providers/managed-stack.types.d.ts.map +1 -1
  271. package/lib/typescript/shared/types/screen.types.d.ts +24 -0
  272. package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
  273. package/lib/typescript/shared/types/stack.types.d.ts +7 -0
  274. package/lib/typescript/shared/types/stack.types.d.ts.map +1 -1
  275. package/lib/typescript/shared/utils/bounds/navigation/reveal/build.d.ts.map +1 -1
  276. package/lib/typescript/shared/utils/bounds/navigation/reveal/config.d.ts +1 -0
  277. package/lib/typescript/shared/utils/bounds/navigation/reveal/config.d.ts.map +1 -1
  278. package/lib/typescript/shared/utils/create-provider.d.ts +17 -3
  279. package/lib/typescript/shared/utils/create-provider.d.ts.map +1 -1
  280. package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts +2 -1
  281. package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts.map +1 -1
  282. package/lib/typescript/shared/utils/navigation/sync-routes-with-removed.d.ts +2 -1
  283. package/lib/typescript/shared/utils/navigation/sync-routes-with-removed.d.ts.map +1 -1
  284. package/lib/typescript/shared/utils/visibility-block-offset.d.ts +2 -0
  285. package/lib/typescript/shared/utils/visibility-block-offset.d.ts.map +1 -0
  286. package/package.json +11 -1
  287. package/src/blank-stack/components/stack-view.tsx +54 -48
  288. package/src/blank-stack/index.ts +1 -0
  289. package/src/blank-stack/navigators/create-blank-stack-navigator.tsx +7 -15
  290. package/src/blank-stack/types.ts +44 -29
  291. package/src/component-stack/components/stack-view.tsx +4 -11
  292. package/src/component-stack/navigators/create-component-stack-navigator.tsx +1 -1
  293. package/src/native-stack/navigators/createNativeStackNavigator.tsx +5 -0
  294. package/src/native-stack/types.ts +25 -0
  295. package/src/shared/adapters/with-screen-transitions/context.tsx +42 -0
  296. package/src/shared/adapters/with-screen-transitions/index.tsx +150 -0
  297. package/src/shared/adapters/with-screen-transitions/options.ts +101 -0
  298. package/src/shared/adapters/with-screen-transitions/stack-layout.tsx +233 -0
  299. package/src/shared/adapters/with-screen-transitions/types.ts +28 -0
  300. package/src/shared/components/activity/helpers.ts +8 -0
  301. package/src/shared/components/activity/index.tsx +2 -0
  302. package/src/shared/components/activity/variants/activity-container.tsx +25 -0
  303. package/src/shared/components/activity/variants/activity-screen.tsx +133 -0
  304. package/src/shared/components/create-boundary-component/hooks/use-measurer.ts +23 -4
  305. package/src/shared/components/create-boundary-component/utils/measured-bounds.ts +15 -0
  306. package/src/shared/components/screen-lifecycle/hooks/use-close-transition-intent.ts +9 -26
  307. package/src/shared/components/screen-lifecycle/index.tsx +1 -1
  308. package/src/shared/hooks/navigation/use-navigation-helpers.ts +9 -3
  309. package/src/shared/hooks/navigation/use-stack.tsx +115 -6
  310. package/src/shared/index.ts +5 -0
  311. package/src/shared/providers/screen/descriptors/descriptors.provider.tsx +31 -31
  312. package/src/shared/providers/screen/descriptors/index.tsx +1 -0
  313. package/src/shared/providers/screen/gestures/ownership/resolve-ownership.ts +2 -1
  314. package/src/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.ts +2 -2
  315. package/src/shared/providers/screen/gestures/pan/pan-lifecycle.ts +7 -2
  316. package/src/shared/providers/screen/gestures/pan/use-pan-behavior.ts +10 -2
  317. package/src/shared/providers/screen/gestures/pinch/pinch-lifecycle.ts +7 -2
  318. package/src/shared/providers/screen/gestures/pinch/use-pinch-behavior.ts +8 -3
  319. package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/index.ts +12 -53
  320. package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +17 -1
  321. package/src/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.tsx +3 -16
  322. package/src/shared/providers/stack/direct.provider.tsx +13 -4
  323. package/src/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.ts +365 -0
  324. package/src/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.ts +121 -0
  325. package/src/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.ts +158 -0
  326. package/src/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.ts +188 -0
  327. package/src/shared/providers/stack/helpers/managed-stack-state/helpers/types.ts +57 -0
  328. package/src/shared/providers/stack/helpers/managed-stack-state/index.ts +40 -0
  329. package/src/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.ts +160 -0
  330. package/src/shared/providers/stack/managed.provider.tsx +23 -39
  331. package/src/shared/types/bounds.types.ts +19 -0
  332. package/src/shared/types/index.ts +3 -0
  333. package/src/shared/types/providers/managed-stack.types.ts +6 -8
  334. package/src/shared/types/screen.types.ts +25 -0
  335. package/src/shared/types/stack.types.ts +11 -0
  336. package/src/shared/utils/bounds/navigation/reveal/build.ts +10 -6
  337. package/src/shared/utils/bounds/navigation/reveal/config.ts +1 -0
  338. package/src/shared/utils/create-provider.tsx +183 -8
  339. package/src/shared/utils/navigation/resolve-scene-neighbors.ts +9 -4
  340. package/src/shared/utils/navigation/sync-routes-with-removed.ts +38 -7
  341. package/src/shared/utils/visibility-block-offset.ts +4 -0
  342. package/lib/commonjs/blank-stack/components/stack-view.native.js +0 -64
  343. package/lib/commonjs/blank-stack/components/stack-view.native.js.map +0 -1
  344. package/lib/commonjs/shared/components/native-screen-container.js +0 -42
  345. package/lib/commonjs/shared/components/native-screen-container.js.map +0 -1
  346. package/lib/commonjs/shared/components/native-screen.js +0 -125
  347. package/lib/commonjs/shared/components/native-screen.js.map +0 -1
  348. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js +0 -51
  349. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js.map +0 -1
  350. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js +0 -15
  351. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js.map +0 -1
  352. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js +0 -14
  353. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js.map +0 -1
  354. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js +0 -13
  355. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js.map +0 -1
  356. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/index.js +0 -101
  357. package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/index.js.map +0 -1
  358. package/lib/module/blank-stack/components/stack-view.native.js +0 -60
  359. package/lib/module/blank-stack/components/stack-view.native.js.map +0 -1
  360. package/lib/module/shared/components/native-screen-container.js +0 -37
  361. package/lib/module/shared/components/native-screen-container.js.map +0 -1
  362. package/lib/module/shared/components/native-screen.js +0 -119
  363. package/lib/module/shared/components/native-screen.js.map +0 -1
  364. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js +0 -47
  365. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js.map +0 -1
  366. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js +0 -10
  367. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js.map +0 -1
  368. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js +0 -9
  369. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js.map +0 -1
  370. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js +0 -8
  371. package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js.map +0 -1
  372. package/lib/module/shared/providers/stack/helpers/use-local-routes/index.js +0 -95
  373. package/lib/module/shared/providers/stack/helpers/use-local-routes/index.js.map +0 -1
  374. package/lib/typescript/blank-stack/components/stack-view.native.d.ts +0 -3
  375. package/lib/typescript/blank-stack/components/stack-view.native.d.ts.map +0 -1
  376. package/lib/typescript/shared/components/native-screen-container.d.ts +0 -6
  377. package/lib/typescript/shared/components/native-screen-container.d.ts.map +0 -1
  378. package/lib/typescript/shared/components/native-screen.d.ts +0 -12
  379. package/lib/typescript/shared/components/native-screen.d.ts.map +0 -1
  380. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.d.ts +0 -10
  381. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.d.ts.map +0 -1
  382. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.d.ts +0 -2
  383. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.d.ts.map +0 -1
  384. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.d.ts +0 -3
  385. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.d.ts.map +0 -1
  386. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.d.ts +0 -3
  387. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.d.ts.map +0 -1
  388. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/index.d.ts +0 -19
  389. package/lib/typescript/shared/providers/stack/helpers/use-local-routes/index.d.ts.map +0 -1
  390. package/src/blank-stack/components/stack-view.native.tsx +0 -74
  391. package/src/shared/components/native-screen-container.tsx +0 -33
  392. package/src/shared/components/native-screen.tsx +0 -176
  393. package/src/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.ts +0 -65
  394. package/src/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.ts +0 -15
  395. package/src/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.ts +0 -12
  396. package/src/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.ts +0 -11
  397. package/src/shared/providers/stack/helpers/use-local-routes/index.ts +0 -147
@@ -1 +1 @@
1
- {"version":3,"names":["shouldSlotInherit","materializeResolvedSlot","getResolvedSlotState","getForwardedSlot","slot","hasAnyKeys","undefined","hasEitherResetPatch","hasStyleResetPatch","hasPropResetPatch","hasDefinedBucketValue","value","hasResettableDisappearedKeys","previousKeys","previousResetValues","currentKeys","key","getResolvedSlotOutput","previousState","resetDroppedKeys","carryPreviousState","state","styleKeys","styleResetValues","propKeys","propResetValues","hasResetPatch","nextState","resolvedSlot","baseStyle","baseProps","hasAnyStyleKeys","hasAnyPropKeys","hasLocalStyleSource","context","localStylesMaps","length","hasLocalSlot","slotId","index","shouldDeferMissingLocalSlotReset","canInherit","localSlotExists","hasInheritedSlot","ancestorStylesMap","deferLocalSlotResets","mergeBucket","resolvedBucket","source","nextBucket","getMergedLocalSlot","mergedStyle","mergedProps","style","props","getSlotForId","writeResolvedSlotOutput","nextPreviousStyleStatesBySlot","resolvedStylesMap","areTransformItemsEqual","left","right","leftObject","rightObject","areTransformArraysEqual","Array","isArray","i","areFlatObjectsEqual","leftValue","rightValue","areSlotsEqual","reuseEqualResolvedSlots","previousResolvedStylesMap","changed","stableStylesMap","nextSlot","previousSlot","appendResolvedSlot","shouldDeferReset","previousStyleStatesBySlot","appendCurrentSlots","appendedSlotIds","stylesMap","shouldAppendInheritedSlot","appendInheritedSlots","shouldAppendPreviousSlot","inheritedSlotExists","appendPreviousSlots","resolveSlotStyles"],"sourceRoot":"../../../../../../../../src","sources":["shared/providers/screen/styles/helpers/resolve-slot-styles/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["shouldSlotInherit","materializeResolvedSlot","getResolvedSlotState","getForwardedSlot","slot","hasAnyKeys","undefined","hasEitherResetPatch","hasStyleResetPatch","hasPropResetPatch","hasDefinedBucketValue","value","hasResettableDisappearedKeys","previousKeys","previousResetValues","currentKeys","key","getResolvedSlotOutput","previousState","state","styleKeys","styleResetValues","propKeys","propResetValues","hasResetPatch","resolvedSlot","nextState","baseStyle","baseProps","hasAnyStyleKeys","hasAnyPropKeys","hasLocalSlot","context","slotId","index","localStylesMaps","length","mergeBucket","resolvedBucket","source","nextBucket","getMergedLocalSlot","mergedStyle","mergedProps","style","props","getSlotForId","ancestorStylesMap","writeResolvedSlotOutput","nextPreviousStyleStatesBySlot","resolvedStylesMap","areTransformItemsEqual","left","right","leftObject","rightObject","areTransformArraysEqual","Array","isArray","i","areFlatObjectsEqual","leftValue","rightValue","areSlotsEqual","reuseEqualResolvedSlots","previousResolvedStylesMap","changed","stableStylesMap","nextSlot","previousSlot","appendResolvedSlot","previousStyleStatesBySlot","appendCurrentSlots","appendedSlotIds","stylesMap","shouldAppendInheritedSlot","appendInheritedSlots","shouldAppendPreviousSlot","inheritedSlotExists","appendPreviousSlots","resolveSlotStyles"],"sourceRoot":"../../../../../../../../src","sources":["shared/providers/screen/styles/helpers/resolve-slot-styles/index.ts"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,16 @@
1
1
  "use strict";
2
2
 
3
+ import { useWindowDimensions } from "react-native";
3
4
  import { useAnimatedProps, useAnimatedReaction, useAnimatedStyle, useSharedValue } from "react-native-reanimated";
4
5
  import { AnimationStore } from "../../../../stores/animation.store";
5
6
  import { SystemStore } from "../../../../stores/system.store";
7
+ import { getVisibilityBlockOffset } from "../../../../utils/visibility-block-offset";
6
8
  import { useDescriptorDerivations } from "../../descriptors";
7
9
  import { resolveScreenVisibilityGate } from "../helpers/visibility-gate";
8
10
  export const useMaybeBlockVisibility = isFloatingOverlay => {
11
+ const {
12
+ height
13
+ } = useWindowDimensions();
9
14
  const {
10
15
  currentScreenKey
11
16
  } = useDescriptorDerivations();
@@ -51,8 +56,18 @@ export const useMaybeBlockVisibility = isFloatingOverlay => {
51
56
  const animatedStyle = useAnimatedStyle(() => {
52
57
  "worklet";
53
58
 
59
+ /**
60
+ * Keep blocked screens physically offscreen. On physical devices,
61
+ * opacity: 0 can break Liquid Glass sampling.
62
+ *
63
+ * See: https://github.com/expo/expo/issues/41024
64
+ *
65
+ */
66
+ const offset = getVisibilityBlockOffset(height);
54
67
  return {
55
- opacity: shouldBlockVisibility.get() ? 0 : 1
68
+ transform: [{
69
+ translateY: shouldBlockVisibility.get() ? offset : 0
70
+ }]
56
71
  };
57
72
  });
58
73
  const animatedProps = useAnimatedProps(() => {
@@ -1 +1 @@
1
- {"version":3,"names":["useAnimatedProps","useAnimatedReaction","useAnimatedStyle","useSharedValue","AnimationStore","SystemStore","useDescriptorDerivations","resolveScreenVisibilityGate","useMaybeBlockVisibility","isFloatingOverlay","currentScreenKey","entering","progress","getBag","pendingLifecycleStartBlockCount","pendingLifecycleRequestKind","hasVisibilityGateOpened","shouldBlockVisibility","get","gate","shouldOpenGate","set","shouldBlock","animatedStyle","opacity","animatedProps","pointerEvents"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx"],"mappings":";;AAAA,SACCA,gBAAgB,EAChBC,mBAAmB,EACnBC,gBAAgB,EAChBC,cAAc,QACR,yBAAyB;AAChC,SAASC,cAAc,QAAQ,oCAAoC;AACnE,SAASC,WAAW,QAAQ,iCAAiC;AAC7D,SAASC,wBAAwB,QAAQ,mBAAmB;AAC5D,SAASC,2BAA2B,QAAQ,4BAA4B;AAExE,OAAO,MAAMC,uBAAuB,GAAIC,iBAA2B,IAAK;EACvE,MAAM;IAAEC;EAAiB,CAAC,GAAGJ,wBAAwB,CAAC,CAAC;EACvD,MAAM;IAAEK,QAAQ;IAAEC;EAAS,CAAC,GAAGR,cAAc,CAACS,MAAM,CAACH,gBAAgB,CAAC;EAEtE,MAAM;IAAEI,+BAA+B;IAAEC;EAA4B,CAAC,GACrEV,WAAW,CAACQ,MAAM,CAACH,gBAAgB,CAAC;EAErC,MAAMM,uBAAuB,GAAGb,cAAc,CAAC,KAAK,CAAC;EACrD,MAAMc,qBAAqB,GAAGd,cAAc,CAAC,CAACM,iBAAiB,CAAC;;EAEhE;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACCR,mBAAmB,CAClB,MAAM;IACL,SAAS;;IAET,OAAOM,2BAA2B,CAAC;MAClCE,iBAAiB;MACjBO,uBAAuB,EAAEA,uBAAuB,CAACE,GAAG,CAAC,CAAC;MACtDJ,+BAA+B,EAAEA,+BAA+B,CAACI,GAAG,CAAC,CAAC;MACtEH,2BAA2B,EAAEA,2BAA2B,CAACG,GAAG,CAAC,CAAC;MAC9DN,QAAQ,EAAEA,QAAQ,CAACM,GAAG,CAAC,CAAC;MACxBP,QAAQ,EAAEA,QAAQ,CAACO,GAAG,CAAC;IACxB,CAAC,CAAC;EACH,CAAC,EACAC,IAAI,IAAK;IACT,SAAS;;IAET,IAAIA,IAAI,CAACC,cAAc,EAAE;MACxBJ,uBAAuB,CAACK,GAAG,CAAC,IAAI,CAAC;IAClC;IAEAJ,qBAAqB,CAACI,GAAG,CAACF,IAAI,CAACG,WAAW,CAAC;EAC5C,CACD,CAAC;EAED,MAAMC,aAAa,GAAGrB,gBAAgB,CAAC,MAAM;IAC5C,SAAS;;IACT,OAAO;MACNsB,OAAO,EAAEP,qBAAqB,CAACC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG;IAC5C,CAAC;EACF,CAAC,CAAC;EAEF,MAAMO,aAAa,GAAGzB,gBAAgB,CAAC,MAAM;IAC5C,SAAS;;IACT,OAAO;MACN0B,aAAa,EAAET,qBAAqB,CAACC,GAAG,CAAC,CAAC,GACtC,MAAM,GACN;IACL,CAAC;EACF,CAAC,CAAC;EAEF,OAAO;IACNK,aAAa;IACbE;EACD,CAAC;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useWindowDimensions","useAnimatedProps","useAnimatedReaction","useAnimatedStyle","useSharedValue","AnimationStore","SystemStore","getVisibilityBlockOffset","useDescriptorDerivations","resolveScreenVisibilityGate","useMaybeBlockVisibility","isFloatingOverlay","height","currentScreenKey","entering","progress","getBag","pendingLifecycleStartBlockCount","pendingLifecycleRequestKind","hasVisibilityGateOpened","shouldBlockVisibility","get","gate","shouldOpenGate","set","shouldBlock","animatedStyle","offset","transform","translateY","animatedProps","pointerEvents"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx"],"mappings":";;AAAA,SAASA,mBAAmB,QAAQ,cAAc;AAClD,SACCC,gBAAgB,EAChBC,mBAAmB,EACnBC,gBAAgB,EAChBC,cAAc,QACR,yBAAyB;AAChC,SAASC,cAAc,QAAQ,oCAAoC;AACnE,SAASC,WAAW,QAAQ,iCAAiC;AAC7D,SAASC,wBAAwB,QAAQ,2CAA2C;AACpF,SAASC,wBAAwB,QAAQ,mBAAmB;AAC5D,SAASC,2BAA2B,QAAQ,4BAA4B;AAExE,OAAO,MAAMC,uBAAuB,GAAIC,iBAA2B,IAAK;EACvE,MAAM;IAAEC;EAAO,CAAC,GAAGZ,mBAAmB,CAAC,CAAC;EACxC,MAAM;IAAEa;EAAiB,CAAC,GAAGL,wBAAwB,CAAC,CAAC;EACvD,MAAM;IAAEM,QAAQ;IAAEC;EAAS,CAAC,GAAGV,cAAc,CAACW,MAAM,CAACH,gBAAgB,CAAC;EAEtE,MAAM;IAAEI,+BAA+B;IAAEC;EAA4B,CAAC,GACrEZ,WAAW,CAACU,MAAM,CAACH,gBAAgB,CAAC;EAErC,MAAMM,uBAAuB,GAAGf,cAAc,CAAC,KAAK,CAAC;EACrD,MAAMgB,qBAAqB,GAAGhB,cAAc,CAAC,CAACO,iBAAiB,CAAC;;EAEhE;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACCT,mBAAmB,CAClB,MAAM;IACL,SAAS;;IAET,OAAOO,2BAA2B,CAAC;MAClCE,iBAAiB;MACjBQ,uBAAuB,EAAEA,uBAAuB,CAACE,GAAG,CAAC,CAAC;MACtDJ,+BAA+B,EAAEA,+BAA+B,CAACI,GAAG,CAAC,CAAC;MACtEH,2BAA2B,EAAEA,2BAA2B,CAACG,GAAG,CAAC,CAAC;MAC9DN,QAAQ,EAAEA,QAAQ,CAACM,GAAG,CAAC,CAAC;MACxBP,QAAQ,EAAEA,QAAQ,CAACO,GAAG,CAAC;IACxB,CAAC,CAAC;EACH,CAAC,EACAC,IAAI,IAAK;IACT,SAAS;;IAET,IAAIA,IAAI,CAACC,cAAc,EAAE;MACxBJ,uBAAuB,CAACK,GAAG,CAAC,IAAI,CAAC;IAClC;IAEAJ,qBAAqB,CAACI,GAAG,CAACF,IAAI,CAACG,WAAW,CAAC;EAC5C,CACD,CAAC;EAED,MAAMC,aAAa,GAAGvB,gBAAgB,CAAC,MAAM;IAC5C,SAAS;;IACT;AACF;AACA;AACA;AACA;AACA;AACA;IACE,MAAMwB,MAAM,GAAGpB,wBAAwB,CAACK,MAAM,CAAC;IAE/C,OAAO;MACNgB,SAAS,EAAE,CACV;QACCC,UAAU,EAAET,qBAAqB,CAACC,GAAG,CAAC,CAAC,GAAGM,MAAM,GAAG;MACpD,CAAC;IAEH,CAAC;EACF,CAAC,CAAC;EAEF,MAAMG,aAAa,GAAG7B,gBAAgB,CAAC,MAAM;IAC5C,SAAS;;IACT,OAAO;MACN8B,aAAa,EAAEX,qBAAqB,CAACC,GAAG,CAAC,CAAC,GACtC,MAAM,GACN;IACL,CAAC;EACF,CAAC,CAAC;EAEF,OAAO;IACNK,aAAa;IACbI;EACD,CAAC;AACF,CAAC","ignoreList":[]}
@@ -1,36 +1,24 @@
1
1
  "use strict";
2
2
 
3
3
  import { useDerivedValue, useSharedValue } from "react-native-reanimated";
4
- import { NO_STYLES } from "../../../../constants";
5
- import { useScreenAnimationContext } from "../../animation";
4
+ import { NO_PROPS, NO_STYLES } from "../../../../constants";
6
5
  import { resolveSlotStyles, reuseEqualResolvedSlots } from "../helpers/resolve-slot-styles";
7
6
  export const useResolvedStylesMap = ({
8
7
  localStylesMaps,
9
8
  ancestorStylesMap
10
9
  }) => {
11
- const {
12
- screenInterpolatorProps,
13
- screenInterpolatorPropsRevision
14
- } = useScreenAnimationContext();
15
- const previousStyleStatesBySlot = useSharedValue({});
10
+ const previousStyleStatesBySlot = useSharedValue(NO_PROPS);
16
11
  const previousResolvedStylesMap = useSharedValue(NO_STYLES);
17
12
  return useDerivedValue(() => {
18
13
  "worklet";
19
14
 
20
- screenInterpolatorPropsRevision.get();
21
- const props = screenInterpolatorProps.get();
22
- // Keep missing local slots alive only when another route drives this screen
23
- // and no active local style layer is available. Once a current/next layer
24
- // runs, omitted local slots and dropped keys are intentional reset signals.
25
- const deferLocalSlotResets = !props.focused && !props.current.closing;
26
15
  const {
27
16
  resolvedStylesMap,
28
17
  nextPreviousStyleStatesBySlot
29
18
  } = resolveSlotStyles({
30
19
  localStylesMaps: localStylesMaps.get(),
31
20
  ancestorStylesMap: ancestorStylesMap?.get() ?? NO_STYLES,
32
- previousStyleStatesBySlot: previousStyleStatesBySlot.get(),
33
- deferLocalSlotResets
21
+ previousStyleStatesBySlot: previousStyleStatesBySlot.get()
34
22
  });
35
23
  previousStyleStatesBySlot.set(nextPreviousStyleStatesBySlot);
36
24
  const stableResolvedStylesMap = reuseEqualResolvedSlots({
@@ -1 +1 @@
1
- {"version":3,"names":["useDerivedValue","useSharedValue","NO_STYLES","useScreenAnimationContext","resolveSlotStyles","reuseEqualResolvedSlots","useResolvedStylesMap","localStylesMaps","ancestorStylesMap","screenInterpolatorProps","screenInterpolatorPropsRevision","previousStyleStatesBySlot","previousResolvedStylesMap","get","props","deferLocalSlotResets","focused","current","closing","resolvedStylesMap","nextPreviousStyleStatesBySlot","set","stableResolvedStylesMap"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/screen/styles/hooks/use-resolved-slot-style-map.tsx"],"mappings":";;AAAA,SAECA,eAAe,EACfC,cAAc,QACR,yBAAyB;AAChC,SAASC,SAAS,QAAQ,uBAAuB;AAEjD,SAASC,yBAAyB,QAAQ,iBAAiB;AAC3D,SAGCC,iBAAiB,EACjBC,uBAAuB,QACjB,gCAAgC;AAOvC,OAAO,MAAMC,oBAAoB,GAAGA,CAAC;EACpCC,eAAe;EACfC;AAC2B,CAAC,KAAK;EACjC,MAAM;IAAEC,uBAAuB;IAAEC;EAAgC,CAAC,GACjEP,yBAAyB,CAAC,CAAC;EAC5B,MAAMQ,yBAAyB,GAAGV,cAAc,CAC/C,CAAC,CACF,CAAC;EACD,MAAMW,yBAAyB,GAC9BX,cAAc,CAAwCC,SAAS,CAAC;EAEjE,OAAOF,eAAe,CAAC,MAAM;IAC5B,SAAS;;IACTU,+BAA+B,CAACG,GAAG,CAAC,CAAC;IAErC,MAAMC,KAAK,GAAGL,uBAAuB,CAACI,GAAG,CAAC,CAAC;IAC3C;IACA;IACA;IACA,MAAME,oBAAoB,GAAG,CAACD,KAAK,CAACE,OAAO,IAAI,CAACF,KAAK,CAACG,OAAO,CAACC,OAAO;IAErE,MAAM;MAAEC,iBAAiB;MAAEC;IAA8B,CAAC,GACzDhB,iBAAiB,CAAC;MACjBG,eAAe,EAAEA,eAAe,CAACM,GAAG,CAAC,CAAC;MACtCL,iBAAiB,EAAEA,iBAAiB,EAAEK,GAAG,CAAC,CAAC,IAAIX,SAAS;MACxDS,yBAAyB,EAAEA,yBAAyB,CAACE,GAAG,CAAC,CAAC;MAC1DE;IACD,CAAC,CAAC;IAEHJ,yBAAyB,CAACU,GAAG,CAACD,6BAA6B,CAAC;IAC5D,MAAME,uBAAuB,GAAGjB,uBAAuB,CAAC;MACvDc,iBAAiB;MACjBP,yBAAyB,EAAEA,yBAAyB,CAACC,GAAG,CAAC;IAC1D,CAAC,CAAC;IACFD,yBAAyB,CAACS,GAAG,CAACC,uBAAuB,CAAC;IAEtD,OAAOA,uBAAuB;EAC/B,CAAC,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useDerivedValue","useSharedValue","NO_PROPS","NO_STYLES","resolveSlotStyles","reuseEqualResolvedSlots","useResolvedStylesMap","localStylesMaps","ancestorStylesMap","previousStyleStatesBySlot","previousResolvedStylesMap","resolvedStylesMap","nextPreviousStyleStatesBySlot","get","set","stableResolvedStylesMap"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/screen/styles/hooks/use-resolved-slot-style-map.tsx"],"mappings":";;AAAA,SAECA,eAAe,EACfC,cAAc,QACR,yBAAyB;AAChC,SAASC,QAAQ,EAAEC,SAAS,QAAQ,uBAAuB;AAE3D,SAGCC,iBAAiB,EACjBC,uBAAuB,QACjB,gCAAgC;AAOvC,OAAO,MAAMC,oBAAoB,GAAGA,CAAC;EACpCC,eAAe;EACfC;AAC2B,CAAC,KAAK;EACjC,MAAMC,yBAAyB,GAC9BR,cAAc,CAA8BC,QAAQ,CAAC;EACtD,MAAMQ,yBAAyB,GAC9BT,cAAc,CAAwCE,SAAS,CAAC;EAEjE,OAAOH,eAAe,CAAC,MAAM;IAC5B,SAAS;;IACT,MAAM;MAAEW,iBAAiB;MAAEC;IAA8B,CAAC,GACzDR,iBAAiB,CAAC;MACjBG,eAAe,EAAEA,eAAe,CAACM,GAAG,CAAC,CAAC;MACtCL,iBAAiB,EAAEA,iBAAiB,EAAEK,GAAG,CAAC,CAAC,IAAIV,SAAS;MACxDM,yBAAyB,EAAEA,yBAAyB,CAACI,GAAG,CAAC;IAC1D,CAAC,CAAC;IAEHJ,yBAAyB,CAACK,GAAG,CAACF,6BAA6B,CAAC;IAC5D,MAAMG,uBAAuB,GAAGV,uBAAuB,CAAC;MACvDM,iBAAiB;MACjBD,yBAAyB,EAAEA,yBAAyB,CAACG,GAAG,CAAC;IAC1D,CAAC,CAAC;IACFH,yBAAyB,CAACI,GAAG,CAACC,uBAAuB,CAAC;IAEtD,OAAOA,uBAAuB;EAC/B,CAAC,CAAC;AACH,CAAC","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import { useMemo } from "react";
4
- import { StackContext } from "../../hooks/navigation/use-stack";
4
+ import { StackProvider } from "../../hooks/navigation/use-stack";
5
5
  import { AnimationStore } from "../../stores/animation.store";
6
6
  import { isOverlayVisible } from "../../utils/overlay/visibility";
7
7
  import { useStackCoreContext } from "./core.provider";
@@ -75,8 +75,9 @@ function useDirectStackValue(props) {
75
75
  routeKeys,
76
76
  routes: allRoutes,
77
77
  scenes,
78
- optimisticFocusedIndex
79
- }), [flags, navigatorKey, routeKeys, allRoutes, scenes, optimisticFocusedIndex]);
78
+ optimisticFocusedIndex,
79
+ focusedIndex
80
+ }), [flags, navigatorKey, routeKeys, allRoutes, scenes, optimisticFocusedIndex, focusedIndex]);
80
81
 
81
82
  // DirectStack context value
82
83
  const lifecycleValue = useMemo(() => ({
@@ -98,7 +99,7 @@ function withDirectStack(Component) {
98
99
  stackContextValue,
99
100
  ...lifecycleValue
100
101
  } = useDirectStackValue(props);
101
- return /*#__PURE__*/_jsx(StackContext.Provider, {
102
+ return /*#__PURE__*/_jsx(StackProvider, {
102
103
  value: stackContextValue,
103
104
  children: /*#__PURE__*/_jsx(Component, {
104
105
  ...lifecycleValue
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","StackContext","AnimationStore","isOverlayVisible","useStackCoreContext","useStackDerived","jsx","_jsx","useDirectStackValue","props","state","navigation","descriptors","describe","flags","navigatorKey","key","preloadedDescriptors","preloadedRoutes","reduce","acc","route","scenes","shouldShowFloatOverlay","routeKeys","allRoutes","animationMaps","routes","concat","allDescriptors","descriptor","isPreloaded","undefined","push","getBag","options","enableTransitions","optimisticFocusedIndex","focusedIndex","index","stackContextValue","lifecycleValue","withDirectStack","Component","DirectStackProvider","Provider","value","children"],"sourceRoot":"../../../../../src","sources":["shared/providers/stack/direct.provider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","StackProvider","AnimationStore","isOverlayVisible","useStackCoreContext","useStackDerived","jsx","_jsx","useDirectStackValue","props","state","navigation","descriptors","describe","flags","navigatorKey","key","preloadedDescriptors","preloadedRoutes","reduce","acc","route","scenes","shouldShowFloatOverlay","routeKeys","allRoutes","animationMaps","routes","concat","allDescriptors","descriptor","isPreloaded","undefined","push","getBag","options","enableTransitions","optimisticFocusedIndex","focusedIndex","index","stackContextValue","lifecycleValue","withDirectStack","Component","DirectStackProvider","value","children"],"sourceRoot":"../../../../../src","sources":["shared/providers/stack/direct.provider.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,192 @@
1
+ "use strict";
2
+
3
+ import { resolveSceneNeighbors } from "../../../../../utils/navigation/resolve-scene-neighbors";
4
+ import { isOverlayVisible } from "../../../../../utils/overlay/visibility";
5
+ import { areDescriptorSourcesEquivalent, areDescriptorsEqual, areRouteChildStateMapsEqual, getRouteChildState, routeKeyListsAreEqual, setsAreEqual } from "./helpers";
6
+ const resolveStableDescriptorSource = ({
7
+ routeKey,
8
+ sourceDescriptor,
9
+ previousState
10
+ }) => {
11
+ const previousSourceDescriptor = previousState?.sourceDescriptors[routeKey];
12
+ if (previousSourceDescriptor && areDescriptorSourcesEquivalent(previousSourceDescriptor, sourceDescriptor)) {
13
+ return previousSourceDescriptor;
14
+ }
15
+ return sourceDescriptor;
16
+ };
17
+ const getSceneActivity = ({
18
+ focusedIndex,
19
+ isClosing,
20
+ sceneIndex,
21
+ topIndex,
22
+ topIsClosing
23
+ }) => {
24
+ if (isClosing) {
25
+ return "closing";
26
+ }
27
+ if (topIsClosing) {
28
+ return sceneIndex === focusedIndex ? "inert" : "inactive";
29
+ }
30
+ if (sceneIndex === topIndex) {
31
+ return "active";
32
+ }
33
+ if (sceneIndex === topIndex - 1) {
34
+ return "inert";
35
+ }
36
+ return "inactive";
37
+ };
38
+ const getSceneActivityWindow = ({
39
+ props,
40
+ routes,
41
+ closingRouteKeys
42
+ }) => {
43
+ const focusedRouteKey = props.state.routes[props.state.index]?.key;
44
+ let focusedIndex = routes.findIndex(route => route.key === focusedRouteKey);
45
+ if (focusedIndex === -1) {
46
+ throw new Error(`Focused route "${focusedRouteKey}" is missing from routes`);
47
+ }
48
+ while (focusedIndex > 0 && closingRouteKeys.has(routes[focusedIndex]?.key)) {
49
+ focusedIndex--;
50
+ }
51
+ const topIndex = routes.length - 1;
52
+ const topRoute = routes[topIndex];
53
+ const topIsClosing = topRoute !== undefined && closingRouteKeys.has(topRoute.key);
54
+ return {
55
+ focusedIndex,
56
+ topIndex,
57
+ topIsClosing
58
+ };
59
+ };
60
+ const withDescriptorActivityState = (descriptor, activity) => {
61
+ if (descriptor.activity === activity) {
62
+ return descriptor;
63
+ }
64
+ return {
65
+ ...descriptor,
66
+ activity
67
+ };
68
+ };
69
+ const buildBaseScenes = ({
70
+ routes,
71
+ descriptors,
72
+ closingRouteKeys,
73
+ previousState,
74
+ activityWindow
75
+ }) => {
76
+ const routeKeys = [];
77
+ const scenes = [];
78
+ const routeChildStates = {};
79
+ const sourceDescriptors = {};
80
+ const managedDescriptors = {};
81
+ let shouldShowFloatOverlay = false;
82
+ for (let sceneIndex = 0; sceneIndex < routes.length; sceneIndex++) {
83
+ const route = routes[sceneIndex];
84
+ const rawSourceDescriptor = descriptors[route.key];
85
+ if (!rawSourceDescriptor) {
86
+ throw new Error(`Missing descriptor for route "${route.key}"`);
87
+ }
88
+ const routeChildState = getRouteChildState(route);
89
+ const childStateUnchanged = !previousState || Object.is(previousState.routeChildStates[route.key], routeChildState);
90
+ const sourceDescriptor = childStateUnchanged ? resolveStableDescriptorSource({
91
+ routeKey: route.key,
92
+ sourceDescriptor: rawSourceDescriptor,
93
+ previousState
94
+ }) : rawSourceDescriptor;
95
+ const activity = getSceneActivity({
96
+ ...activityWindow,
97
+ isClosing: closingRouteKeys.has(route.key),
98
+ sceneIndex
99
+ });
100
+ const previousDescriptor = previousState?.descriptors[route.key];
101
+ const descriptor = previousDescriptor && childStateUnchanged && previousDescriptor.route === sourceDescriptor.route && previousDescriptor.navigation === sourceDescriptor.navigation && previousDescriptor.options === sourceDescriptor.options && previousDescriptor.activity === activity ? previousDescriptor : withDescriptorActivityState(sourceDescriptor, activity);
102
+ routeKeys.push(route.key);
103
+ routeChildStates[route.key] = routeChildState;
104
+ sourceDescriptors[route.key] = sourceDescriptor;
105
+ managedDescriptors[route.key] = descriptor;
106
+ if (!shouldShowFloatOverlay) {
107
+ shouldShowFloatOverlay = isOverlayVisible(sourceDescriptor?.options);
108
+ }
109
+ scenes.push({
110
+ route: descriptor.route,
111
+ descriptor
112
+ });
113
+ }
114
+ return {
115
+ scenes,
116
+ routeChildStates,
117
+ sourceDescriptors,
118
+ descriptors: managedDescriptors,
119
+ routeKeys,
120
+ shouldShowFloatOverlay
121
+ };
122
+ };
123
+ const withSceneRelationships = ({
124
+ scenes,
125
+ sourceDescriptors,
126
+ closingRouteKeys,
127
+ previousState
128
+ }) => {
129
+ const isRouteClosing = routeKey => closingRouteKeys.has(routeKey);
130
+ const closingRouteOrder = new Map(Array.from(closingRouteKeys, (routeKey, index) => [routeKey, index]));
131
+ const previousScenesByRouteKey = previousState ? new Map(previousState.scenes.map(scene => [scene.route.key, scene])) : undefined;
132
+ let reusedEveryScene = previousState !== undefined && scenes.length === previousState.scenes.length;
133
+ const relationshipScenes = scenes.map(scene => ({
134
+ route: scene.route,
135
+ descriptor: sourceDescriptors[scene.route.key] ?? scene.descriptor
136
+ }));
137
+ const nextScenes = scenes.map((scene, sceneIndex) => {
138
+ const {
139
+ previousDescriptor,
140
+ nextDescriptor
141
+ } = resolveSceneNeighbors(relationshipScenes, sceneIndex, isRouteClosing, routeKey => closingRouteOrder.get(routeKey));
142
+ const nextScene = {
143
+ ...scene,
144
+ previousDescriptor,
145
+ nextDescriptor
146
+ };
147
+ const previousScene = previousState?.scenes[sceneIndex]?.route === scene.route ? previousState.scenes[sceneIndex] : previousScenesByRouteKey?.get(scene.route.key);
148
+ if (previousScene && previousScene.route === nextScene.route && previousScene.descriptor === nextScene.descriptor && previousScene.previousDescriptor === nextScene.previousDescriptor && previousScene.nextDescriptor === nextScene.nextDescriptor) {
149
+ return previousScene;
150
+ }
151
+ reusedEveryScene = false;
152
+ return nextScene;
153
+ });
154
+ if (reusedEveryScene && previousState) {
155
+ return previousState.scenes;
156
+ }
157
+ return nextScenes;
158
+ };
159
+ export const buildManagedStackState = params => {
160
+ const activityWindow = getSceneActivityWindow(params);
161
+ const focusedRouteKey = params.props.state.routes[params.props.state.index]?.key;
162
+ const {
163
+ scenes: baseScenes,
164
+ routeChildStates,
165
+ sourceDescriptors,
166
+ descriptors: managedDescriptors,
167
+ routeKeys,
168
+ shouldShowFloatOverlay
169
+ } = buildBaseScenes({
170
+ ...params,
171
+ activityWindow
172
+ });
173
+ const scenes = withSceneRelationships({
174
+ scenes: baseScenes,
175
+ sourceDescriptors,
176
+ closingRouteKeys: params.closingRouteKeys,
177
+ previousState: params.previousState
178
+ });
179
+ const closingRouteKeys = new Set(params.closingRouteKeys);
180
+ return {
181
+ routes: params.routes,
182
+ descriptors: params.previousState && areDescriptorsEqual(params.previousState.descriptors, managedDescriptors) ? params.previousState.descriptors : managedDescriptors,
183
+ sourceDescriptors: params.previousState && areDescriptorsEqual(params.previousState.sourceDescriptors, sourceDescriptors) ? params.previousState.sourceDescriptors : sourceDescriptors,
184
+ focusedRouteKey,
185
+ routeChildStates: params.previousState && areRouteChildStateMapsEqual(params.previousState.routeChildStates, routeChildStates) ? params.previousState.routeChildStates : routeChildStates,
186
+ scenes,
187
+ routeKeys: params.previousState && routeKeyListsAreEqual(params.previousState.routeKeys, routeKeys) ? params.previousState.routeKeys : routeKeys,
188
+ shouldShowFloatOverlay,
189
+ closingRouteKeys: params.previousState && setsAreEqual(params.previousState.closingRouteKeys, closingRouteKeys) ? params.previousState.closingRouteKeys : closingRouteKeys
190
+ };
191
+ };
192
+ //# sourceMappingURL=build-managed-stack-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["resolveSceneNeighbors","isOverlayVisible","areDescriptorSourcesEquivalent","areDescriptorsEqual","areRouteChildStateMapsEqual","getRouteChildState","routeKeyListsAreEqual","setsAreEqual","resolveStableDescriptorSource","routeKey","sourceDescriptor","previousState","previousSourceDescriptor","sourceDescriptors","getSceneActivity","focusedIndex","isClosing","sceneIndex","topIndex","topIsClosing","getSceneActivityWindow","props","routes","closingRouteKeys","focusedRouteKey","state","index","key","findIndex","route","Error","has","length","topRoute","undefined","withDescriptorActivityState","descriptor","activity","buildBaseScenes","descriptors","activityWindow","routeKeys","scenes","routeChildStates","managedDescriptors","shouldShowFloatOverlay","rawSourceDescriptor","routeChildState","childStateUnchanged","Object","is","previousDescriptor","navigation","options","push","withSceneRelationships","isRouteClosing","closingRouteOrder","Map","Array","from","previousScenesByRouteKey","map","scene","reusedEveryScene","relationshipScenes","nextScenes","nextDescriptor","get","nextScene","previousScene","buildManagedStackState","params","baseScenes","Set"],"sourceRoot":"../../../../../../../../src","sources":["shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ import { buildManagedStackState } from "./build-managed-stack-state";
4
+ import { areDescriptorSourceMapsEquivalent, areDescriptorsEqual, areRouteChildStateMapsEqual, getRouteChildStateMap, routesHaveSameKeys, setsAreEqual } from "./helpers";
5
+ import { reconcileManagedRoutes } from "./reconcile-managed-routes";
6
+ const routesAreIdentical = (a, b) => {
7
+ if (a === b) return true;
8
+ if (a.length !== b.length) return false;
9
+ return a.every((route, index) => route === b[index]);
10
+ };
11
+ export const deriveManagedStackState = ({
12
+ props,
13
+ current,
14
+ previousRoutesSnapshot,
15
+ closingRouteKeys
16
+ }) => {
17
+ const nextRoutesSnapshot = props.state.routes;
18
+ const nextDescriptors = props.descriptors;
19
+ const nextRouteChildStates = getRouteChildStateMap(nextRoutesSnapshot);
20
+ const nextFocusedRouteKey = nextRoutesSnapshot[props.state.index]?.key;
21
+ const focusedRouteUnchanged = current.focusedRouteKey === nextFocusedRouteKey;
22
+ const closingRouteKeysUnchanged = setsAreEqual(current.closingRouteKeys, closingRouteKeys);
23
+ const routeChildStatesUnchanged = areRouteChildStateMapsEqual(current.routeChildStates, nextRouteChildStates);
24
+ const alreadyAligned = focusedRouteUnchanged && closingRouteKeysUnchanged && routeChildStatesUnchanged && routesAreIdentical(current.routes, nextRoutesSnapshot) && areDescriptorsEqual(current.sourceDescriptors, nextDescriptors);
25
+ if (alreadyAligned) {
26
+ return current;
27
+ }
28
+ const logicallyAligned = focusedRouteUnchanged && closingRouteKeysUnchanged && routeChildStatesUnchanged && routesHaveSameKeys(current.routes, nextRoutesSnapshot) && areDescriptorSourceMapsEquivalent(current.sourceDescriptors, nextDescriptors);
29
+ if (logicallyAligned) {
30
+ return current;
31
+ }
32
+ const result = reconcileManagedRoutes({
33
+ current,
34
+ previousRoutesSnapshot,
35
+ nextRoutesSnapshot,
36
+ nextDescriptors,
37
+ closingRouteKeys
38
+ });
39
+ const routesChanged = !routesAreIdentical(current.routes, result.routes);
40
+ const descriptorsChanged = !areDescriptorsEqual(current.sourceDescriptors, result.descriptors);
41
+ const closingRouteKeysChanged = !setsAreEqual(current.closingRouteKeys, closingRouteKeys);
42
+ if (!routesChanged && !descriptorsChanged && !closingRouteKeysChanged) {
43
+ return current;
44
+ }
45
+ return buildManagedStackState({
46
+ props,
47
+ routes: routesChanged ? result.routes : current.routes,
48
+ descriptors: descriptorsChanged ? result.descriptors : current.sourceDescriptors,
49
+ closingRouteKeys,
50
+ previousState: current
51
+ });
52
+ };
53
+ //# sourceMappingURL=derive-managed-stack-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["buildManagedStackState","areDescriptorSourceMapsEquivalent","areDescriptorsEqual","areRouteChildStateMapsEqual","getRouteChildStateMap","routesHaveSameKeys","setsAreEqual","reconcileManagedRoutes","routesAreIdentical","a","b","length","every","route","index","deriveManagedStackState","props","current","previousRoutesSnapshot","closingRouteKeys","nextRoutesSnapshot","state","routes","nextDescriptors","descriptors","nextRouteChildStates","nextFocusedRouteKey","key","focusedRouteUnchanged","focusedRouteKey","closingRouteKeysUnchanged","routeChildStatesUnchanged","routeChildStates","alreadyAligned","sourceDescriptors","logicallyAligned","result","routesChanged","descriptorsChanged","closingRouteKeysChanged","previousState"],"sourceRoot":"../../../../../../../../src","sources":["shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ export const areDescriptorsEqual = (a, b) => {
4
+ if (a === b) return true;
5
+ const aKeys = Object.keys(a);
6
+ const bKeys = Object.keys(b);
7
+ if (aKeys.length !== bKeys.length) return false;
8
+ return aKeys.every(key => a[key] === b[key]);
9
+ };
10
+ export const setsAreEqual = (left, right) => {
11
+ if (left.size !== right.size) {
12
+ return false;
13
+ }
14
+ for (const value of left) {
15
+ if (!right.has(value)) {
16
+ return false;
17
+ }
18
+ }
19
+ return true;
20
+ };
21
+ export const routeKeyListsAreEqual = (a, b) => {
22
+ if (a === b) return true;
23
+ if (a.length !== b.length) return false;
24
+ return a.every((key, index) => key === b[index]);
25
+ };
26
+ export const routesHaveSameKeys = (a, b) => {
27
+ if (a.length !== b.length) return false;
28
+ return a.every((route, index) => route.key === b[index]?.key);
29
+ };
30
+ export const getRouteChildState = route => {
31
+ if (!route || typeof route !== "object") {
32
+ return undefined;
33
+ }
34
+ const childStateSymbol = Object.getOwnPropertySymbols(route).find(symbol => symbol.description === "CHILD_STATE");
35
+ if (childStateSymbol && childStateSymbol in route) {
36
+ return route[childStateSymbol];
37
+ }
38
+ return route.state;
39
+ };
40
+ export const getRouteChildStateMap = routes => {
41
+ const childStates = {};
42
+ for (const route of routes) {
43
+ childStates[route.key] = getRouteChildState(route);
44
+ }
45
+ return childStates;
46
+ };
47
+ export const areRouteChildStateMapsEqual = (previous, next) => {
48
+ if (previous === next) return true;
49
+ const previousKeys = Object.keys(previous);
50
+ const nextKeys = Object.keys(next);
51
+ if (previousKeys.length !== nextKeys.length) return false;
52
+ return previousKeys.every(key => Object.is(previous[key], next[key]));
53
+ };
54
+ export const areRecordsShallowEqual = (a, b) => {
55
+ if (a === b) return true;
56
+ const aKeys = Object.keys(a);
57
+ const bKeys = Object.keys(b);
58
+ if (aKeys.length !== bKeys.length) return false;
59
+ return aKeys.every(key => Object.is(a[key], b[key]));
60
+ };
61
+ export const areDescriptorSourcesEquivalent = (previous, next) => {
62
+ return previous.navigation === next.navigation && areRecordsShallowEqual(previous.route, next.route) && areRecordsShallowEqual(previous.options, next.options);
63
+ };
64
+ export const areDescriptorSourceMapsEquivalent = (previous, next) => {
65
+ if (previous === next) return true;
66
+ const previousKeys = Object.keys(previous);
67
+ const nextKeys = Object.keys(next);
68
+ if (previousKeys.length !== nextKeys.length) return false;
69
+ return previousKeys.every(key => {
70
+ const previousDescriptor = previous[key];
71
+ const nextDescriptor = next[key];
72
+ if (!previousDescriptor || !nextDescriptor) {
73
+ return false;
74
+ }
75
+ return areDescriptorSourcesEquivalent(previousDescriptor, nextDescriptor);
76
+ });
77
+ };
78
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["areDescriptorsEqual","a","b","aKeys","Object","keys","bKeys","length","every","key","setsAreEqual","left","right","size","value","has","routeKeyListsAreEqual","index","routesHaveSameKeys","route","getRouteChildState","undefined","childStateSymbol","getOwnPropertySymbols","find","symbol","description","state","getRouteChildStateMap","routes","childStates","areRouteChildStateMapsEqual","previous","next","previousKeys","nextKeys","is","areRecordsShallowEqual","areDescriptorSourcesEquivalent","navigation","options","areDescriptorSourceMapsEquivalent","previousDescriptor","nextDescriptor"],"sourceRoot":"../../../../../../../../src","sources":["shared/providers/stack/helpers/managed-stack-state/helpers/helpers.ts"],"mappings":"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","ignoreList":[]}