react-native-screen-transitions 4.0.0-alpha.9 → 4.1.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 (586) hide show
  1. package/README.md +5 -10
  2. package/lib/commonjs/adapters/with-screen-transitions/stack-layout.js +1 -3
  3. package/lib/commonjs/adapters/with-screen-transitions/stack-layout.js.map +1 -1
  4. package/lib/commonjs/components/blank-stack-host.js +21 -0
  5. package/lib/commonjs/components/blank-stack-host.js.map +1 -0
  6. package/lib/commonjs/components/blank-stack-runtime.js +33 -0
  7. package/lib/commonjs/components/blank-stack-runtime.js.map +1 -0
  8. package/lib/commonjs/components/blank-stack-scene.js +31 -0
  9. package/lib/commonjs/components/blank-stack-scene.js.map +1 -0
  10. package/lib/commonjs/components/blank-stack-view.js +23 -0
  11. package/lib/commonjs/components/blank-stack-view.js.map +1 -0
  12. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +53 -1
  13. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -1
  14. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +43 -8
  15. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  16. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +2 -3
  17. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  18. package/lib/commonjs/components/boundary/utils/source-signals.js +6 -4
  19. package/lib/commonjs/components/boundary/utils/source-signals.js.map +1 -1
  20. package/lib/commonjs/components/overlay/helpers/get-active-overlay.js +3 -24
  21. package/lib/commonjs/components/overlay/helpers/get-active-overlay.js.map +1 -1
  22. package/lib/commonjs/components/overlay/helpers/retain-ready-overlay-resources.js +4 -3
  23. package/lib/commonjs/components/overlay/helpers/retain-ready-overlay-resources.js.map +1 -1
  24. package/lib/commonjs/components/overlay/helpers/run-overlay-slot-interpolator.js +2 -4
  25. package/lib/commonjs/components/overlay/helpers/run-overlay-slot-interpolator.js.map +1 -1
  26. package/lib/commonjs/components/overlay/hooks/use-overlay-slot.js +2 -18
  27. package/lib/commonjs/components/overlay/hooks/use-overlay-slot.js.map +1 -1
  28. package/lib/commonjs/components/overlay/variations/float-overlay.js +0 -2
  29. package/lib/commonjs/components/overlay/variations/float-overlay.js.map +1 -1
  30. package/lib/commonjs/components/overlay/variations/overlay-host.js +18 -16
  31. package/lib/commonjs/components/overlay/variations/overlay-host.js.map +1 -1
  32. package/lib/commonjs/components/screen-container/layers/content.js +10 -5
  33. package/lib/commonjs/components/screen-container/layers/content.js.map +1 -1
  34. package/lib/commonjs/components/screen-container/layers/surface.js +50 -0
  35. package/lib/commonjs/components/screen-container/layers/surface.js.map +1 -0
  36. package/lib/commonjs/components/screen-lifecycle/index.js +2 -2
  37. package/lib/commonjs/components/screen-lifecycle/index.js.map +1 -1
  38. package/lib/commonjs/components/stack-view.js +7 -29
  39. package/lib/commonjs/components/stack-view.js.map +1 -1
  40. package/lib/commonjs/configs/index.js +1 -4
  41. package/lib/commonjs/configs/index.js.map +1 -1
  42. package/lib/commonjs/configs/presets.js +1 -384
  43. package/lib/commonjs/configs/presets.js.map +1 -1
  44. package/lib/commonjs/custom-navigator.js +41 -0
  45. package/lib/commonjs/custom-navigator.js.map +1 -0
  46. package/lib/commonjs/hooks/navigation/use-blank-stack-state.js +26 -0
  47. package/lib/commonjs/hooks/navigation/use-blank-stack-state.js.map +1 -0
  48. package/lib/commonjs/hooks/navigation/use-navigation-helpers.js +2 -2
  49. package/lib/commonjs/hooks/navigation/use-navigation-helpers.js.map +1 -1
  50. package/lib/commonjs/hooks/navigation/use-screen-state.js +1 -1
  51. package/lib/commonjs/hooks/navigation/use-screen-state.js.map +1 -1
  52. package/lib/commonjs/navigators/create-blank-stack-navigator.js +7 -67
  53. package/lib/commonjs/navigators/create-blank-stack-navigator.js.map +1 -1
  54. package/lib/commonjs/navigators/expo-router/index.js +1 -18
  55. package/lib/commonjs/navigators/expo-router/index.js.map +1 -1
  56. package/lib/commonjs/navigators/react-navigation/index.js +1 -3
  57. package/lib/commonjs/navigators/react-navigation/index.js.map +1 -1
  58. package/lib/commonjs/providers/screen/animation/animation.provider.js +17 -25
  59. package/lib/commonjs/providers/screen/animation/animation.provider.js.map +1 -1
  60. package/lib/commonjs/providers/screen/animation/helpers/pipeline.js +19 -36
  61. package/lib/commonjs/providers/screen/animation/helpers/pipeline.js.map +1 -1
  62. package/lib/commonjs/providers/screen/animation/use-screen-animation.js +16 -19
  63. package/lib/commonjs/providers/screen/animation/use-screen-animation.js.map +1 -1
  64. package/lib/commonjs/providers/screen/descriptors/descriptors.provider.js +31 -64
  65. package/lib/commonjs/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  66. package/lib/commonjs/providers/screen/descriptors/index.js +6 -0
  67. package/lib/commonjs/providers/screen/descriptors/index.js.map +1 -1
  68. package/lib/commonjs/providers/screen/gestures/gestures.provider.js +14 -25
  69. package/lib/commonjs/providers/screen/gestures/gestures.provider.js.map +1 -1
  70. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture-config.js +3 -4
  71. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
  72. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture.js +6 -7
  73. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
  74. package/lib/commonjs/providers/screen/gestures/ownership/gesture-ownership-coordinator.js +149 -0
  75. package/lib/commonjs/providers/screen/gestures/ownership/gesture-ownership-coordinator.js.map +1 -0
  76. package/lib/commonjs/providers/screen/gestures/ownership/use-gesture-scroll-coordination.js +15 -0
  77. package/lib/commonjs/providers/screen/gestures/ownership/use-gesture-scroll-coordination.js.map +1 -0
  78. package/lib/commonjs/providers/screen/gestures/ownership/use-register-gesture-ownership.js +52 -0
  79. package/lib/commonjs/providers/screen/gestures/ownership/use-register-gesture-ownership.js.map +1 -0
  80. package/lib/commonjs/providers/screen/gestures/pan/activation/pan-activation-decision.js +4 -9
  81. package/lib/commonjs/providers/screen/gestures/pan/activation/pan-activation-decision.js.map +1 -1
  82. package/lib/commonjs/providers/screen/gestures/pan/activation/use-pan-activation.js +3 -3
  83. package/lib/commonjs/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  84. package/lib/commonjs/providers/screen/gestures/pan/use-build-pan-gesture.js +2 -2
  85. package/lib/commonjs/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  86. package/lib/commonjs/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +13 -11
  87. package/lib/commonjs/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  88. package/lib/commonjs/providers/screen/gestures/shared/policy.js +4 -9
  89. package/lib/commonjs/providers/screen/gestures/shared/policy.js.map +1 -1
  90. package/lib/commonjs/providers/screen/gestures/types.js +2 -2
  91. package/lib/commonjs/providers/screen/gestures/types.js.map +1 -1
  92. package/lib/commonjs/providers/screen/screen-composer.js +10 -13
  93. package/lib/commonjs/providers/screen/screen-composer.js.map +1 -1
  94. package/lib/commonjs/providers/screen/styles/constants.js +4 -0
  95. package/lib/commonjs/providers/screen/styles/constants.js.map +1 -1
  96. package/lib/commonjs/providers/screen/styles/helpers/create-interpolator-scope.js +3 -15
  97. package/lib/commonjs/providers/screen/styles/helpers/create-interpolator-scope.js.map +1 -1
  98. package/lib/commonjs/providers/screen/styles/hooks/slot-resolvers.js +1 -9
  99. package/lib/commonjs/providers/screen/styles/hooks/slot-resolvers.js.map +1 -1
  100. package/lib/commonjs/providers/screen/styles/hooks/use-interpolated-style-maps.js +4 -25
  101. package/lib/commonjs/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  102. package/lib/commonjs/providers/screen/styles/slot.provider.js +3 -1
  103. package/lib/commonjs/providers/screen/styles/slot.provider.js.map +1 -1
  104. package/lib/commonjs/providers/screen/topology/helpers/create-screen-topology.js +176 -0
  105. package/lib/commonjs/providers/screen/topology/helpers/create-screen-topology.js.map +1 -0
  106. package/lib/commonjs/providers/screen/topology/hooks/use-resolved-transition-key.js +17 -0
  107. package/lib/commonjs/providers/screen/topology/hooks/use-resolved-transition-key.js.map +1 -0
  108. package/lib/commonjs/{factories/screen-topology → providers/screen/topology/hooks}/use-screen-relationships.js +1 -1
  109. package/lib/commonjs/providers/screen/topology/hooks/use-screen-relationships.js.map +1 -0
  110. package/lib/commonjs/{factories/screen-topology → providers/screen/topology}/index.js +16 -15
  111. package/lib/commonjs/providers/screen/topology/index.js.map +1 -0
  112. package/lib/commonjs/providers/screen/topology/topology.provider.js +56 -0
  113. package/lib/commonjs/providers/screen/topology/topology.provider.js.map +1 -0
  114. package/lib/commonjs/providers/screen/topology/types.js.map +1 -0
  115. package/lib/commonjs/providers/screen/use-current-screen-relationships.js +2 -2
  116. package/lib/commonjs/providers/screen/use-current-screen-relationships.js.map +1 -1
  117. package/lib/commonjs/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +10 -4
  118. package/lib/commonjs/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
  119. package/lib/commonjs/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.js +4 -3
  120. package/lib/commonjs/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.js.map +1 -1
  121. package/lib/commonjs/providers/stack/blank-stack-state/helpers/reconcile-blank-stack-routes.js.map +1 -1
  122. package/lib/commonjs/providers/stack/blank-stack-state/helpers/state-equality.js +9 -2
  123. package/lib/commonjs/providers/stack/blank-stack-state/helpers/state-equality.js.map +1 -1
  124. package/lib/commonjs/providers/stack/stack-transition/index.js +20 -0
  125. package/lib/commonjs/providers/stack/stack-transition/index.js.map +1 -0
  126. package/lib/commonjs/providers/stack/stack-transition/stack-transition-controller.js +197 -0
  127. package/lib/commonjs/providers/stack/stack-transition/stack-transition-controller.js.map +1 -0
  128. package/lib/commonjs/providers/stack/stack-transition/stack-transition.provider.js +92 -0
  129. package/lib/commonjs/providers/stack/stack-transition/stack-transition.provider.js.map +1 -0
  130. package/lib/commonjs/providers/stack/stack-transition/use-stack-transition.js +46 -0
  131. package/lib/commonjs/providers/stack/stack-transition/use-stack-transition.js.map +1 -0
  132. package/lib/commonjs/types/ownership.types.js +2 -25
  133. package/lib/commonjs/types/ownership.types.js.map +1 -1
  134. package/lib/commonjs/utils/create-provider.js +14 -3
  135. package/lib/commonjs/utils/create-provider.js.map +1 -1
  136. package/lib/module/adapters/with-screen-transitions/stack-layout.js +1 -3
  137. package/lib/module/adapters/with-screen-transitions/stack-layout.js.map +1 -1
  138. package/lib/module/components/blank-stack-host.js +17 -0
  139. package/lib/module/components/blank-stack-host.js.map +1 -0
  140. package/lib/module/components/blank-stack-runtime.js +29 -0
  141. package/lib/module/components/blank-stack-runtime.js.map +1 -0
  142. package/lib/module/components/blank-stack-scene.js +27 -0
  143. package/lib/module/components/blank-stack-scene.js.map +1 -0
  144. package/lib/module/components/blank-stack-view.js +19 -0
  145. package/lib/module/components/blank-stack-view.js.map +1 -0
  146. package/lib/module/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +50 -0
  147. package/lib/module/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -1
  148. package/lib/module/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +44 -9
  149. package/lib/module/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  150. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +2 -3
  151. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  152. package/lib/module/components/boundary/utils/source-signals.js +6 -4
  153. package/lib/module/components/boundary/utils/source-signals.js.map +1 -1
  154. package/lib/module/components/overlay/helpers/get-active-overlay.js +3 -24
  155. package/lib/module/components/overlay/helpers/get-active-overlay.js.map +1 -1
  156. package/lib/module/components/overlay/helpers/retain-ready-overlay-resources.js +4 -3
  157. package/lib/module/components/overlay/helpers/retain-ready-overlay-resources.js.map +1 -1
  158. package/lib/module/components/overlay/helpers/run-overlay-slot-interpolator.js +2 -4
  159. package/lib/module/components/overlay/helpers/run-overlay-slot-interpolator.js.map +1 -1
  160. package/lib/module/components/overlay/hooks/use-overlay-slot.js +2 -18
  161. package/lib/module/components/overlay/hooks/use-overlay-slot.js.map +1 -1
  162. package/lib/module/components/overlay/variations/float-overlay.js +0 -2
  163. package/lib/module/components/overlay/variations/float-overlay.js.map +1 -1
  164. package/lib/module/components/overlay/variations/overlay-host.js +19 -17
  165. package/lib/module/components/overlay/variations/overlay-host.js.map +1 -1
  166. package/lib/module/components/screen-container/layers/content.js +10 -5
  167. package/lib/module/components/screen-container/layers/content.js.map +1 -1
  168. package/lib/module/components/screen-container/layers/surface.js +45 -0
  169. package/lib/module/components/screen-container/layers/surface.js.map +1 -0
  170. package/lib/module/components/screen-lifecycle/index.js +2 -2
  171. package/lib/module/components/screen-lifecycle/index.js.map +1 -1
  172. package/lib/module/components/stack-view.js +7 -29
  173. package/lib/module/components/stack-view.js.map +1 -1
  174. package/lib/module/configs/index.js +2 -5
  175. package/lib/module/configs/index.js.map +1 -1
  176. package/lib/module/configs/presets.js +0 -380
  177. package/lib/module/configs/presets.js.map +1 -1
  178. package/lib/module/custom-navigator.js +8 -0
  179. package/lib/module/custom-navigator.js.map +1 -0
  180. package/lib/module/hooks/navigation/use-blank-stack-state.js +21 -0
  181. package/lib/module/hooks/navigation/use-blank-stack-state.js.map +1 -0
  182. package/lib/module/hooks/navigation/use-navigation-helpers.js +2 -2
  183. package/lib/module/hooks/navigation/use-navigation-helpers.js.map +1 -1
  184. package/lib/module/hooks/navigation/use-screen-state.js +1 -1
  185. package/lib/module/hooks/navigation/use-screen-state.js.map +1 -1
  186. package/lib/module/navigators/create-blank-stack-navigator.js +7 -66
  187. package/lib/module/navigators/create-blank-stack-navigator.js.map +1 -1
  188. package/lib/module/navigators/expo-router/index.js +1 -18
  189. package/lib/module/navigators/expo-router/index.js.map +1 -1
  190. package/lib/module/navigators/react-navigation/index.js +1 -3
  191. package/lib/module/navigators/react-navigation/index.js.map +1 -1
  192. package/lib/module/providers/screen/animation/animation.provider.js +15 -24
  193. package/lib/module/providers/screen/animation/animation.provider.js.map +1 -1
  194. package/lib/module/providers/screen/animation/helpers/pipeline.js +19 -36
  195. package/lib/module/providers/screen/animation/helpers/pipeline.js.map +1 -1
  196. package/lib/module/providers/screen/animation/use-screen-animation.js +17 -20
  197. package/lib/module/providers/screen/animation/use-screen-animation.js.map +1 -1
  198. package/lib/module/providers/screen/descriptors/descriptors.provider.js +31 -66
  199. package/lib/module/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  200. package/lib/module/providers/screen/descriptors/index.js +1 -1
  201. package/lib/module/providers/screen/descriptors/index.js.map +1 -1
  202. package/lib/module/providers/screen/gestures/gestures.provider.js +16 -27
  203. package/lib/module/providers/screen/gestures/gestures.provider.js.map +1 -1
  204. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture-config.js +3 -4
  205. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
  206. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture.js +6 -7
  207. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
  208. package/lib/module/providers/screen/gestures/ownership/gesture-ownership-coordinator.js +144 -0
  209. package/lib/module/providers/screen/gestures/ownership/gesture-ownership-coordinator.js.map +1 -0
  210. package/lib/module/providers/screen/gestures/ownership/use-gesture-scroll-coordination.js +10 -0
  211. package/lib/module/providers/screen/gestures/ownership/use-gesture-scroll-coordination.js.map +1 -0
  212. package/lib/module/providers/screen/gestures/ownership/use-register-gesture-ownership.js +47 -0
  213. package/lib/module/providers/screen/gestures/ownership/use-register-gesture-ownership.js.map +1 -0
  214. package/lib/module/providers/screen/gestures/pan/activation/pan-activation-decision.js +4 -9
  215. package/lib/module/providers/screen/gestures/pan/activation/pan-activation-decision.js.map +1 -1
  216. package/lib/module/providers/screen/gestures/pan/activation/use-pan-activation.js +3 -3
  217. package/lib/module/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  218. package/lib/module/providers/screen/gestures/pan/use-build-pan-gesture.js +2 -2
  219. package/lib/module/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  220. package/lib/module/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +13 -11
  221. package/lib/module/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  222. package/lib/module/providers/screen/gestures/shared/policy.js +4 -9
  223. package/lib/module/providers/screen/gestures/shared/policy.js.map +1 -1
  224. package/lib/module/providers/screen/gestures/types.js +1 -1
  225. package/lib/module/providers/screen/gestures/types.js.map +1 -1
  226. package/lib/module/providers/screen/screen-composer.js +10 -13
  227. package/lib/module/providers/screen/screen-composer.js.map +1 -1
  228. package/lib/module/providers/screen/styles/constants.js +4 -0
  229. package/lib/module/providers/screen/styles/constants.js.map +1 -1
  230. package/lib/module/providers/screen/styles/helpers/create-interpolator-scope.js +3 -15
  231. package/lib/module/providers/screen/styles/helpers/create-interpolator-scope.js.map +1 -1
  232. package/lib/module/providers/screen/styles/hooks/slot-resolvers.js +2 -10
  233. package/lib/module/providers/screen/styles/hooks/slot-resolvers.js.map +1 -1
  234. package/lib/module/providers/screen/styles/hooks/use-interpolated-style-maps.js +4 -25
  235. package/lib/module/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  236. package/lib/module/providers/screen/styles/slot.provider.js +1 -0
  237. package/lib/module/providers/screen/styles/slot.provider.js.map +1 -1
  238. package/lib/module/providers/screen/topology/helpers/create-screen-topology.js +171 -0
  239. package/lib/module/providers/screen/topology/helpers/create-screen-topology.js.map +1 -0
  240. package/lib/module/providers/screen/topology/hooks/use-resolved-transition-key.js +12 -0
  241. package/lib/module/providers/screen/topology/hooks/use-resolved-transition-key.js.map +1 -0
  242. package/lib/module/{factories/screen-topology → providers/screen/topology/hooks}/use-screen-relationships.js +1 -1
  243. package/lib/module/providers/screen/topology/hooks/use-screen-relationships.js.map +1 -0
  244. package/lib/module/providers/screen/topology/index.js +7 -0
  245. package/lib/module/providers/screen/topology/index.js.map +1 -0
  246. package/lib/module/providers/screen/topology/topology.provider.js +50 -0
  247. package/lib/module/providers/screen/topology/topology.provider.js.map +1 -0
  248. package/lib/module/providers/screen/topology/types.js.map +1 -0
  249. package/lib/module/providers/screen/use-current-screen-relationships.js +1 -1
  250. package/lib/module/providers/screen/use-current-screen-relationships.js.map +1 -1
  251. package/lib/module/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +11 -5
  252. package/lib/module/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
  253. package/lib/module/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.js +5 -4
  254. package/lib/module/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.js.map +1 -1
  255. package/lib/module/providers/stack/blank-stack-state/helpers/reconcile-blank-stack-routes.js.map +1 -1
  256. package/lib/module/providers/stack/blank-stack-state/helpers/state-equality.js +7 -1
  257. package/lib/module/providers/stack/blank-stack-state/helpers/state-equality.js.map +1 -1
  258. package/lib/module/providers/stack/stack-transition/index.js +5 -0
  259. package/lib/module/providers/stack/stack-transition/index.js.map +1 -0
  260. package/lib/module/providers/stack/stack-transition/stack-transition-controller.js +189 -0
  261. package/lib/module/providers/stack/stack-transition/stack-transition-controller.js.map +1 -0
  262. package/lib/module/providers/stack/stack-transition/stack-transition.provider.js +85 -0
  263. package/lib/module/providers/stack/stack-transition/stack-transition.provider.js.map +1 -0
  264. package/lib/module/providers/stack/stack-transition/use-stack-transition.js +41 -0
  265. package/lib/module/providers/stack/stack-transition/use-stack-transition.js.map +1 -0
  266. package/lib/module/types/animation.types.js +10 -0
  267. package/lib/module/types/animation.types.js.map +1 -1
  268. package/lib/module/types/ownership.types.js +1 -24
  269. package/lib/module/types/ownership.types.js.map +1 -1
  270. package/lib/module/utils/create-provider.js +14 -3
  271. package/lib/module/utils/create-provider.js.map +1 -1
  272. package/lib/typescript/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -1
  273. package/lib/typescript/components/blank-stack-host.d.ts +9 -0
  274. package/lib/typescript/components/blank-stack-host.d.ts.map +1 -0
  275. package/lib/typescript/components/blank-stack-runtime.d.ts +8 -0
  276. package/lib/typescript/components/blank-stack-runtime.d.ts.map +1 -0
  277. package/lib/typescript/components/blank-stack-scene.d.ts +5 -0
  278. package/lib/typescript/components/blank-stack-scene.d.ts.map +1 -0
  279. package/lib/typescript/components/blank-stack-view.d.ts +2 -0
  280. package/lib/typescript/components/blank-stack-view.d.ts.map +1 -0
  281. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts +20 -1
  282. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts.map +1 -1
  283. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts.map +1 -1
  284. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts.map +1 -1
  285. package/lib/typescript/components/boundary/utils/source-signals.d.ts.map +1 -1
  286. package/lib/typescript/components/overlay/helpers/get-active-overlay.d.ts +2 -8
  287. package/lib/typescript/components/overlay/helpers/get-active-overlay.d.ts.map +1 -1
  288. package/lib/typescript/components/overlay/helpers/retain-ready-overlay-resources.d.ts +2 -1
  289. package/lib/typescript/components/overlay/helpers/retain-ready-overlay-resources.d.ts.map +1 -1
  290. package/lib/typescript/components/overlay/helpers/run-overlay-slot-interpolator.d.ts +2 -3
  291. package/lib/typescript/components/overlay/helpers/run-overlay-slot-interpolator.d.ts.map +1 -1
  292. package/lib/typescript/components/overlay/hooks/use-overlay-slot.d.ts.map +1 -1
  293. package/lib/typescript/components/overlay/variations/float-overlay.d.ts.map +1 -1
  294. package/lib/typescript/components/overlay/variations/overlay-host.d.ts +2 -3
  295. package/lib/typescript/components/overlay/variations/overlay-host.d.ts.map +1 -1
  296. package/lib/typescript/components/screen-container/layers/content.d.ts.map +1 -1
  297. package/lib/typescript/components/screen-container/layers/surface.d.ts +7 -0
  298. package/lib/typescript/components/screen-container/layers/surface.d.ts.map +1 -0
  299. package/lib/typescript/components/stack-view.d.ts +1 -1
  300. package/lib/typescript/components/stack-view.d.ts.map +1 -1
  301. package/lib/typescript/configs/index.d.ts +0 -9
  302. package/lib/typescript/configs/index.d.ts.map +1 -1
  303. package/lib/typescript/configs/presets.d.ts +0 -9
  304. package/lib/typescript/configs/presets.d.ts.map +1 -1
  305. package/lib/typescript/custom-navigator.d.ts +8 -0
  306. package/lib/typescript/custom-navigator.d.ts.map +1 -0
  307. package/lib/typescript/hooks/navigation/use-blank-stack-state.d.ts +8 -0
  308. package/lib/typescript/hooks/navigation/use-blank-stack-state.d.ts.map +1 -0
  309. package/lib/typescript/hooks/navigation/use-navigation-helpers.d.ts.map +1 -1
  310. package/lib/typescript/index.d.ts +1 -10
  311. package/lib/typescript/index.d.ts.map +1 -1
  312. package/lib/typescript/navigators/create-blank-stack-navigator.d.ts +2 -4
  313. package/lib/typescript/navigators/create-blank-stack-navigator.d.ts.map +1 -1
  314. package/lib/typescript/navigators/expo-router/index.d.ts +3 -3
  315. package/lib/typescript/navigators/expo-router/index.d.ts.map +1 -1
  316. package/lib/typescript/navigators/react-navigation/index.d.ts +1 -1
  317. package/lib/typescript/navigators/react-navigation/index.d.ts.map +1 -1
  318. package/lib/typescript/providers/screen/animation/animation.provider.d.ts +12 -6
  319. package/lib/typescript/providers/screen/animation/animation.provider.d.ts.map +1 -1
  320. package/lib/typescript/providers/screen/animation/helpers/pipeline.d.ts +2 -4
  321. package/lib/typescript/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
  322. package/lib/typescript/providers/screen/animation/types.d.ts +0 -9
  323. package/lib/typescript/providers/screen/animation/types.d.ts.map +1 -1
  324. package/lib/typescript/providers/screen/animation/use-screen-animation.d.ts.map +1 -1
  325. package/lib/typescript/providers/screen/descriptors/descriptors.provider.d.ts +9 -11
  326. package/lib/typescript/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
  327. package/lib/typescript/providers/screen/descriptors/index.d.ts +1 -1
  328. package/lib/typescript/providers/screen/descriptors/index.d.ts.map +1 -1
  329. package/lib/typescript/providers/screen/gestures/gestures.provider.d.ts +9 -12
  330. package/lib/typescript/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
  331. package/lib/typescript/providers/screen/gestures/hooks/use-screen-gesture-config.d.ts +2 -2
  332. package/lib/typescript/providers/screen/gestures/hooks/use-screen-gesture-config.d.ts.map +1 -1
  333. package/lib/typescript/providers/screen/gestures/hooks/use-screen-gesture.d.ts +3 -2
  334. package/lib/typescript/providers/screen/gestures/hooks/use-screen-gesture.d.ts.map +1 -1
  335. package/lib/typescript/providers/screen/gestures/index.d.ts +1 -1
  336. package/lib/typescript/providers/screen/gestures/index.d.ts.map +1 -1
  337. package/lib/typescript/providers/screen/gestures/ownership/gesture-ownership-coordinator.d.ts +26 -0
  338. package/lib/typescript/providers/screen/gestures/ownership/gesture-ownership-coordinator.d.ts.map +1 -0
  339. package/lib/typescript/providers/screen/gestures/ownership/use-gesture-scroll-coordination.d.ts +3 -0
  340. package/lib/typescript/providers/screen/gestures/ownership/use-gesture-scroll-coordination.d.ts.map +1 -0
  341. package/lib/typescript/providers/screen/gestures/ownership/use-register-gesture-ownership.d.ts +9 -0
  342. package/lib/typescript/providers/screen/gestures/ownership/use-register-gesture-ownership.d.ts.map +1 -0
  343. package/lib/typescript/providers/screen/gestures/pan/activation/pan-activation-decision.d.ts +4 -4
  344. package/lib/typescript/providers/screen/gestures/pan/activation/pan-activation-decision.d.ts.map +1 -1
  345. package/lib/typescript/providers/screen/gestures/pan/activation/use-pan-activation.d.ts +3 -3
  346. package/lib/typescript/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -1
  347. package/lib/typescript/providers/screen/gestures/pan/use-build-pan-gesture.d.ts +3 -3
  348. package/lib/typescript/providers/screen/gestures/pan/use-build-pan-gesture.d.ts.map +1 -1
  349. package/lib/typescript/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.d.ts.map +1 -1
  350. package/lib/typescript/providers/screen/gestures/shared/policy.d.ts +2 -3
  351. package/lib/typescript/providers/screen/gestures/shared/policy.d.ts.map +1 -1
  352. package/lib/typescript/providers/screen/gestures/types.d.ts +4 -18
  353. package/lib/typescript/providers/screen/gestures/types.d.ts.map +1 -1
  354. package/lib/typescript/providers/screen/screen-composer.d.ts +2 -6
  355. package/lib/typescript/providers/screen/screen-composer.d.ts.map +1 -1
  356. package/lib/typescript/providers/screen/styles/constants.d.ts.map +1 -1
  357. package/lib/typescript/providers/screen/styles/helpers/create-interpolator-scope.d.ts +2 -3
  358. package/lib/typescript/providers/screen/styles/helpers/create-interpolator-scope.d.ts.map +1 -1
  359. package/lib/typescript/providers/screen/styles/hooks/slot-resolvers.d.ts.map +1 -1
  360. package/lib/typescript/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts.map +1 -1
  361. package/lib/typescript/providers/screen/styles/slot.provider.d.ts +11 -2
  362. package/lib/typescript/providers/screen/styles/slot.provider.d.ts.map +1 -1
  363. package/lib/typescript/{factories/screen-topology → providers/screen/topology/helpers}/create-screen-topology.d.ts +1 -1
  364. package/lib/typescript/providers/screen/topology/helpers/create-screen-topology.d.ts.map +1 -0
  365. package/lib/typescript/providers/screen/topology/hooks/use-resolved-transition-key.d.ts +3 -0
  366. package/lib/typescript/providers/screen/topology/hooks/use-resolved-transition-key.d.ts.map +1 -0
  367. package/lib/typescript/{factories/screen-topology → providers/screen/topology/hooks}/use-screen-relationships.d.ts +1 -0
  368. package/lib/typescript/providers/screen/topology/hooks/use-screen-relationships.d.ts.map +1 -0
  369. package/lib/typescript/providers/screen/topology/index.d.ts +6 -0
  370. package/lib/typescript/providers/screen/topology/index.d.ts.map +1 -0
  371. package/lib/typescript/providers/screen/topology/topology.provider.d.ts +13 -0
  372. package/lib/typescript/providers/screen/topology/topology.provider.d.ts.map +1 -0
  373. package/lib/typescript/{factories/screen-topology → providers/screen/topology}/types.d.ts +7 -1
  374. package/lib/typescript/providers/screen/topology/types.d.ts.map +1 -0
  375. package/lib/typescript/providers/screen/use-current-screen-relationships.d.ts +1 -0
  376. package/lib/typescript/providers/screen/use-current-screen-relationships.d.ts.map +1 -1
  377. package/lib/typescript/providers/stack/blank-stack-state/helpers/build-blank-stack-state.d.ts +3 -3
  378. package/lib/typescript/providers/stack/blank-stack-state/helpers/build-blank-stack-state.d.ts.map +1 -1
  379. package/lib/typescript/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.d.ts.map +1 -1
  380. package/lib/typescript/providers/stack/blank-stack-state/helpers/reconcile-blank-stack-routes.d.ts +3 -2
  381. package/lib/typescript/providers/stack/blank-stack-state/helpers/reconcile-blank-stack-routes.d.ts.map +1 -1
  382. package/lib/typescript/providers/stack/blank-stack-state/helpers/state-equality.d.ts +4 -4
  383. package/lib/typescript/providers/stack/blank-stack-state/helpers/state-equality.d.ts.map +1 -1
  384. package/lib/typescript/providers/stack/blank-stack-state/helpers/types.d.ts +6 -5
  385. package/lib/typescript/providers/stack/blank-stack-state/helpers/types.d.ts.map +1 -1
  386. package/lib/typescript/providers/stack/blank-stack.provider.d.ts +3 -1
  387. package/lib/typescript/providers/stack/blank-stack.provider.d.ts.map +1 -1
  388. package/lib/typescript/providers/stack/stack-transition/index.d.ts +3 -0
  389. package/lib/typescript/providers/stack/stack-transition/index.d.ts.map +1 -0
  390. package/lib/typescript/providers/stack/stack-transition/stack-transition-controller.d.ts +48 -0
  391. package/lib/typescript/providers/stack/stack-transition/stack-transition-controller.d.ts.map +1 -0
  392. package/lib/typescript/providers/stack/stack-transition/stack-transition.provider.d.ts +14 -0
  393. package/lib/typescript/providers/stack/stack-transition/stack-transition.provider.d.ts.map +1 -0
  394. package/lib/typescript/providers/stack/stack-transition/use-stack-transition.d.ts +12 -0
  395. package/lib/typescript/providers/stack/stack-transition/use-stack-transition.d.ts.map +1 -0
  396. package/lib/typescript/types/animation.types.d.ts +16 -22
  397. package/lib/typescript/types/animation.types.d.ts.map +1 -1
  398. package/lib/typescript/types/blank-stack.types.d.ts +2 -23
  399. package/lib/typescript/types/blank-stack.types.d.ts.map +1 -1
  400. package/lib/typescript/types/bounds.types.d.ts +1 -1
  401. package/lib/typescript/types/bounds.types.d.ts.map +1 -1
  402. package/lib/typescript/types/index.d.ts +2 -2
  403. package/lib/typescript/types/index.d.ts.map +1 -1
  404. package/lib/typescript/types/ownership.types.d.ts +1 -18
  405. package/lib/typescript/types/ownership.types.d.ts.map +1 -1
  406. package/lib/typescript/types/providers/blank-stack-provider.types.d.ts +8 -6
  407. package/lib/typescript/types/providers/blank-stack-provider.types.d.ts.map +1 -1
  408. package/lib/typescript/types/screen.types.d.ts +40 -0
  409. package/lib/typescript/types/screen.types.d.ts.map +1 -1
  410. package/lib/typescript/utils/create-provider.d.ts +4 -1
  411. package/lib/typescript/utils/create-provider.d.ts.map +1 -1
  412. package/package.json +9 -8
  413. package/src/adapters/with-screen-transitions/stack-layout.tsx +1 -9
  414. package/src/components/blank-stack-host.tsx +21 -0
  415. package/src/components/blank-stack-runtime.tsx +37 -0
  416. package/src/components/blank-stack-scene.tsx +30 -0
  417. package/src/components/blank-stack-view.tsx +19 -0
  418. package/src/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.ts +89 -0
  419. package/src/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +97 -14
  420. package/src/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +2 -6
  421. package/src/components/boundary/utils/source-signals.ts +6 -4
  422. package/src/components/overlay/helpers/get-active-overlay.ts +4 -36
  423. package/src/components/overlay/helpers/retain-ready-overlay-resources.ts +10 -1
  424. package/src/components/overlay/helpers/run-overlay-slot-interpolator.ts +0 -4
  425. package/src/components/overlay/hooks/use-overlay-slot.ts +1 -30
  426. package/src/components/overlay/variations/float-overlay.tsx +9 -12
  427. package/src/components/overlay/variations/overlay-host.tsx +24 -23
  428. package/src/components/screen-container/layers/content.tsx +12 -7
  429. package/src/components/screen-container/layers/surface.tsx +65 -0
  430. package/src/components/screen-lifecycle/index.tsx +2 -2
  431. package/src/components/stack-view.tsx +8 -39
  432. package/src/configs/index.ts +0 -6
  433. package/src/configs/presets.ts +0 -447
  434. package/src/custom-navigator.ts +25 -0
  435. package/src/hooks/navigation/use-blank-stack-state.ts +24 -0
  436. package/src/hooks/navigation/use-navigation-helpers.ts +4 -2
  437. package/src/hooks/navigation/use-screen-state.ts +1 -1
  438. package/src/index.ts +3 -2
  439. package/src/navigators/create-blank-stack-navigator.tsx +16 -124
  440. package/src/navigators/expo-router/index.tsx +0 -23
  441. package/src/navigators/react-navigation/index.tsx +0 -3
  442. package/src/providers/screen/animation/animation.provider.tsx +32 -66
  443. package/src/providers/screen/animation/helpers/pipeline.ts +14 -26
  444. package/src/providers/screen/animation/types.ts +0 -11
  445. package/src/providers/screen/animation/use-screen-animation.tsx +40 -20
  446. package/src/providers/screen/descriptors/descriptors.provider.tsx +43 -99
  447. package/src/providers/screen/descriptors/index.tsx +1 -0
  448. package/src/providers/screen/gestures/gestures.provider.tsx +14 -55
  449. package/src/providers/screen/gestures/hooks/use-screen-gesture-config.ts +3 -6
  450. package/src/providers/screen/gestures/hooks/use-screen-gesture.ts +13 -13
  451. package/src/providers/screen/gestures/index.tsx +0 -2
  452. package/src/providers/screen/gestures/ownership/gesture-ownership-coordinator.ts +252 -0
  453. package/src/providers/screen/gestures/ownership/use-gesture-scroll-coordination.ts +23 -0
  454. package/src/providers/screen/gestures/ownership/use-register-gesture-ownership.ts +73 -0
  455. package/src/providers/screen/gestures/pan/activation/pan-activation-decision.ts +6 -20
  456. package/src/providers/screen/gestures/pan/activation/use-pan-activation.ts +5 -5
  457. package/src/providers/screen/gestures/pan/use-build-pan-gesture.ts +4 -4
  458. package/src/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.ts +9 -12
  459. package/src/providers/screen/gestures/shared/policy.ts +0 -8
  460. package/src/providers/screen/gestures/types.ts +4 -19
  461. package/src/providers/screen/screen-composer.tsx +18 -29
  462. package/src/providers/screen/styles/constants.ts +2 -0
  463. package/src/providers/screen/styles/helpers/create-interpolator-scope.ts +2 -21
  464. package/src/providers/screen/styles/hooks/slot-resolvers.tsx +2 -17
  465. package/src/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +0 -29
  466. package/src/providers/screen/styles/slot.provider.tsx +2 -0
  467. package/src/{factories/screen-topology → providers/screen/topology/helpers}/create-screen-topology.ts +97 -53
  468. package/src/providers/screen/topology/hooks/use-resolved-transition-key.ts +29 -0
  469. package/src/{factories/screen-topology → providers/screen/topology/hooks}/use-screen-relationships.ts +1 -1
  470. package/src/providers/screen/topology/index.ts +16 -0
  471. package/src/providers/screen/topology/topology.provider.tsx +72 -0
  472. package/src/{factories/screen-topology → providers/screen/topology}/types.ts +7 -1
  473. package/src/providers/screen/use-current-screen-relationships.ts +1 -1
  474. package/src/providers/stack/blank-stack-state/helpers/build-blank-stack-state.ts +31 -12
  475. package/src/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.ts +11 -3
  476. package/src/providers/stack/blank-stack-state/helpers/reconcile-blank-stack-routes.ts +2 -2
  477. package/src/providers/stack/blank-stack-state/helpers/state-equality.ts +25 -11
  478. package/src/providers/stack/blank-stack-state/helpers/types.ts +9 -4
  479. package/src/providers/stack/stack-transition/index.ts +5 -0
  480. package/src/providers/stack/stack-transition/stack-transition-controller.ts +341 -0
  481. package/src/providers/stack/stack-transition/stack-transition.provider.tsx +120 -0
  482. package/src/providers/stack/stack-transition/use-stack-transition.ts +77 -0
  483. package/src/types/animation.types.ts +16 -28
  484. package/src/types/blank-stack.types.ts +1 -29
  485. package/src/types/bounds.types.ts +1 -4
  486. package/src/types/index.ts +3 -2
  487. package/src/types/ownership.types.ts +1 -26
  488. package/src/types/providers/blank-stack-provider.types.ts +14 -11
  489. package/src/types/screen.types.ts +46 -0
  490. package/src/utils/create-provider.tsx +22 -4
  491. package/lib/commonjs/components/boundary/portal/utils/teleport-control.js +0 -16
  492. package/lib/commonjs/components/boundary/portal/utils/teleport-control.js.map +0 -1
  493. package/lib/commonjs/factories/screen-topology/create-screen-topology.js +0 -147
  494. package/lib/commonjs/factories/screen-topology/create-screen-topology.js.map +0 -1
  495. package/lib/commonjs/factories/screen-topology/index.js.map +0 -1
  496. package/lib/commonjs/factories/screen-topology/types.js.map +0 -1
  497. package/lib/commonjs/factories/screen-topology/use-screen-relationships.js.map +0 -1
  498. package/lib/commonjs/factories/screen-topology/worklet.js +0 -55
  499. package/lib/commonjs/factories/screen-topology/worklet.js.map +0 -1
  500. package/lib/commonjs/providers/navigation/navigation-host.provider.js +0 -56
  501. package/lib/commonjs/providers/navigation/navigation-host.provider.js.map +0 -1
  502. package/lib/commonjs/providers/navigation/react-navigation-host.js +0 -23
  503. package/lib/commonjs/providers/navigation/react-navigation-host.js.map +0 -1
  504. package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +0 -62
  505. package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +0 -1
  506. package/lib/commonjs/providers/screen/animation/helpers/read-screen-animation-revisions.js +0 -16
  507. package/lib/commonjs/providers/screen/animation/helpers/read-screen-animation-revisions.js.map +0 -1
  508. package/lib/commonjs/providers/screen/gestures/ownership/gesture-ownership-bridge.js +0 -128
  509. package/lib/commonjs/providers/screen/gestures/ownership/gesture-ownership-bridge.js.map +0 -1
  510. package/lib/commonjs/providers/screen/gestures/ownership/resolve-ownership.js +0 -71
  511. package/lib/commonjs/providers/screen/gestures/ownership/resolve-ownership.js.map +0 -1
  512. package/lib/commonjs/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js +0 -54
  513. package/lib/commonjs/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js.map +0 -1
  514. package/lib/commonjs/providers/screen/styles/helpers/collect-interpolator-shared-values.js +0 -50
  515. package/lib/commonjs/providers/screen/styles/helpers/collect-interpolator-shared-values.js.map +0 -1
  516. package/lib/commonjs/utils/resolve-chain-target.js +0 -29
  517. package/lib/commonjs/utils/resolve-chain-target.js.map +0 -1
  518. package/lib/module/components/boundary/portal/utils/teleport-control.js +0 -11
  519. package/lib/module/components/boundary/portal/utils/teleport-control.js.map +0 -1
  520. package/lib/module/factories/screen-topology/create-screen-topology.js +0 -142
  521. package/lib/module/factories/screen-topology/create-screen-topology.js.map +0 -1
  522. package/lib/module/factories/screen-topology/index.js +0 -6
  523. package/lib/module/factories/screen-topology/index.js.map +0 -1
  524. package/lib/module/factories/screen-topology/types.js.map +0 -1
  525. package/lib/module/factories/screen-topology/use-screen-relationships.js.map +0 -1
  526. package/lib/module/factories/screen-topology/worklet.js +0 -48
  527. package/lib/module/factories/screen-topology/worklet.js.map +0 -1
  528. package/lib/module/providers/navigation/navigation-host.provider.js +0 -50
  529. package/lib/module/providers/navigation/navigation-host.provider.js.map +0 -1
  530. package/lib/module/providers/navigation/react-navigation-host.js +0 -19
  531. package/lib/module/providers/navigation/react-navigation-host.js.map +0 -1
  532. package/lib/module/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +0 -56
  533. package/lib/module/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +0 -1
  534. package/lib/module/providers/screen/animation/helpers/read-screen-animation-revisions.js +0 -11
  535. package/lib/module/providers/screen/animation/helpers/read-screen-animation-revisions.js.map +0 -1
  536. package/lib/module/providers/screen/gestures/ownership/gesture-ownership-bridge.js +0 -124
  537. package/lib/module/providers/screen/gestures/ownership/gesture-ownership-bridge.js.map +0 -1
  538. package/lib/module/providers/screen/gestures/ownership/resolve-ownership.js +0 -67
  539. package/lib/module/providers/screen/gestures/ownership/resolve-ownership.js.map +0 -1
  540. package/lib/module/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js +0 -50
  541. package/lib/module/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js.map +0 -1
  542. package/lib/module/providers/screen/styles/helpers/collect-interpolator-shared-values.js +0 -45
  543. package/lib/module/providers/screen/styles/helpers/collect-interpolator-shared-values.js.map +0 -1
  544. package/lib/module/utils/resolve-chain-target.js +0 -25
  545. package/lib/module/utils/resolve-chain-target.js.map +0 -1
  546. package/lib/typescript/components/boundary/portal/utils/teleport-control.d.ts +0 -3
  547. package/lib/typescript/components/boundary/portal/utils/teleport-control.d.ts.map +0 -1
  548. package/lib/typescript/factories/screen-topology/create-screen-topology.d.ts.map +0 -1
  549. package/lib/typescript/factories/screen-topology/index.d.ts +0 -5
  550. package/lib/typescript/factories/screen-topology/index.d.ts.map +0 -1
  551. package/lib/typescript/factories/screen-topology/types.d.ts.map +0 -1
  552. package/lib/typescript/factories/screen-topology/use-screen-relationships.d.ts.map +0 -1
  553. package/lib/typescript/factories/screen-topology/worklet.d.ts +0 -5
  554. package/lib/typescript/factories/screen-topology/worklet.d.ts.map +0 -1
  555. package/lib/typescript/providers/navigation/navigation-host.provider.d.ts +0 -21
  556. package/lib/typescript/providers/navigation/navigation-host.provider.d.ts.map +0 -1
  557. package/lib/typescript/providers/navigation/react-navigation-host.d.ts +0 -3
  558. package/lib/typescript/providers/navigation/react-navigation-host.d.ts.map +0 -1
  559. package/lib/typescript/providers/screen/animation/helpers/accessors/use-build-transition-accessor.d.ts +0 -9
  560. package/lib/typescript/providers/screen/animation/helpers/accessors/use-build-transition-accessor.d.ts.map +0 -1
  561. package/lib/typescript/providers/screen/animation/helpers/read-screen-animation-revisions.d.ts +0 -6
  562. package/lib/typescript/providers/screen/animation/helpers/read-screen-animation-revisions.d.ts.map +0 -1
  563. package/lib/typescript/providers/screen/gestures/ownership/gesture-ownership-bridge.d.ts +0 -3
  564. package/lib/typescript/providers/screen/gestures/ownership/gesture-ownership-bridge.d.ts.map +0 -1
  565. package/lib/typescript/providers/screen/gestures/ownership/resolve-ownership.d.ts +0 -32
  566. package/lib/typescript/providers/screen/gestures/ownership/resolve-ownership.d.ts.map +0 -1
  567. package/lib/typescript/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.d.ts +0 -11
  568. package/lib/typescript/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.d.ts.map +0 -1
  569. package/lib/typescript/providers/screen/styles/helpers/collect-interpolator-shared-values.d.ts +0 -4
  570. package/lib/typescript/providers/screen/styles/helpers/collect-interpolator-shared-values.d.ts.map +0 -1
  571. package/lib/typescript/utils/resolve-chain-target.d.ts +0 -11
  572. package/lib/typescript/utils/resolve-chain-target.d.ts.map +0 -1
  573. package/src/components/boundary/portal/utils/teleport-control.ts +0 -13
  574. package/src/factories/screen-topology/index.ts +0 -16
  575. package/src/factories/screen-topology/worklet.ts +0 -60
  576. package/src/providers/navigation/navigation-host.provider.tsx +0 -75
  577. package/src/providers/navigation/react-navigation-host.tsx +0 -24
  578. package/src/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +0 -96
  579. package/src/providers/screen/animation/helpers/read-screen-animation-revisions.ts +0 -15
  580. package/src/providers/screen/gestures/ownership/gesture-ownership-bridge.tsx +0 -173
  581. package/src/providers/screen/gestures/ownership/resolve-ownership.ts +0 -90
  582. package/src/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.ts +0 -88
  583. package/src/providers/screen/styles/helpers/collect-interpolator-shared-values.ts +0 -75
  584. package/src/utils/resolve-chain-target.ts +0 -33
  585. /package/lib/commonjs/{factories/screen-topology → providers/screen/topology}/types.js +0 -0
  586. /package/lib/module/{factories/screen-topology → providers/screen/topology}/types.js +0 -0
@@ -1,142 +0,0 @@
1
- "use strict";
2
-
3
- const EMPTY_RELATIONSHIPS = {
4
- parentScreenKey: null,
5
- activeChildScreenKey: null
6
- };
7
- const areRelationshipsEqual = (left, right) => left.parentScreenKey === right.parentScreenKey && left.activeChildScreenKey === right.activeChildScreenKey;
8
- export const createScreenTopology = () => {
9
- const nodes = new Map();
10
- const listenersByScreenKey = new Map();
11
- const relationshipCache = new Map();
12
- const getNode = screenKey => nodes.get(screenKey);
13
- const ensureNode = screenKey => {
14
- const existing = getNode(screenKey);
15
- if (existing) return existing;
16
- const node = {
17
- parentScreenKey: null,
18
- activeChildScreenKeys: []
19
- };
20
- nodes.set(screenKey, node);
21
- return node;
22
- };
23
- const removeNodeIfEmpty = screenKey => {
24
- const node = getNode(screenKey);
25
- if (node && !node.parentScreenKey && node.activeChildScreenKeys.length === 0) {
26
- nodes.delete(screenKey);
27
- }
28
- };
29
- const getParent = screenKey => getNode(screenKey)?.parentScreenKey ?? null;
30
- const getActiveChild = screenKey => {
31
- const activeChildScreenKeys = getNode(screenKey)?.activeChildScreenKeys;
32
- return activeChildScreenKeys?.[activeChildScreenKeys.length - 1] ?? null;
33
- };
34
- const materializeRelationships = screenKey => {
35
- const parentScreenKey = getParent(screenKey);
36
- const activeChildScreenKey = getActiveChild(screenKey);
37
- if (!parentScreenKey && !activeChildScreenKey) {
38
- return EMPTY_RELATIONSHIPS;
39
- }
40
- return {
41
- parentScreenKey,
42
- activeChildScreenKey
43
- };
44
- };
45
- const getRelationships = screenKey => {
46
- const cached = relationshipCache.get(screenKey);
47
- if (cached) return cached;
48
- const relationships = materializeRelationships(screenKey);
49
- relationshipCache.set(screenKey, relationships);
50
- return relationships;
51
- };
52
- const mutate = (affectedScreenKeys, mutation) => {
53
- const previousRelationships = new Map();
54
- for (const screenKey of affectedScreenKeys) {
55
- if (listenersByScreenKey.has(screenKey)) {
56
- previousRelationships.set(screenKey, getRelationships(screenKey));
57
- }
58
- }
59
- mutation();
60
- for (const screenKey of affectedScreenKeys) {
61
- relationshipCache.delete(screenKey);
62
- }
63
- for (const [screenKey, previous] of previousRelationships) {
64
- const listeners = listenersByScreenKey.get(screenKey);
65
- if (!listeners) continue;
66
- const next = getRelationships(screenKey);
67
- if (areRelationshipsEqual(previous, next)) {
68
- relationshipCache.set(screenKey, previous);
69
- continue;
70
- }
71
- for (const listener of listeners) listener();
72
- }
73
- };
74
- const register = ({
75
- screenKey,
76
- parentScreenKey
77
- }) => {
78
- mutate(new Set([screenKey]), () => {
79
- ensureNode(screenKey).parentScreenKey = parentScreenKey ?? null;
80
- });
81
- };
82
- const unregister = screenKey => {
83
- const node = getNode(screenKey);
84
- if (!node) return;
85
- const affectedScreenKeys = new Set([screenKey]);
86
- if (node.parentScreenKey) {
87
- affectedScreenKeys.add(node.parentScreenKey);
88
- }
89
- mutate(affectedScreenKeys, () => {
90
- if (node.parentScreenKey) {
91
- const parent = getNode(node.parentScreenKey);
92
- if (parent) {
93
- parent.activeChildScreenKeys = parent.activeChildScreenKeys.filter(activeScreenKey => activeScreenKey !== screenKey);
94
- }
95
- removeNodeIfEmpty(node.parentScreenKey);
96
- }
97
- nodes.delete(screenKey);
98
- });
99
- };
100
- const activate = registration => {
101
- if (getParent(registration.screenKey) !== registration.parentScreenKey) {
102
- throw new Error("Screen topology can only activate a direct containment child.");
103
- }
104
- const affectedScreenKeys = new Set([registration.parentScreenKey]);
105
- mutate(affectedScreenKeys, () => {
106
- const parent = ensureNode(registration.parentScreenKey);
107
- parent.activeChildScreenKeys = [...parent.activeChildScreenKeys.filter(screenKey => screenKey !== registration.screenKey), registration.screenKey];
108
- });
109
- return () => {
110
- const parent = getNode(registration.parentScreenKey);
111
- if (!parent?.activeChildScreenKeys.includes(registration.screenKey)) {
112
- return;
113
- }
114
- mutate(affectedScreenKeys, () => {
115
- parent.activeChildScreenKeys = parent.activeChildScreenKeys.filter(screenKey => screenKey !== registration.screenKey);
116
- removeNodeIfEmpty(registration.parentScreenKey);
117
- });
118
- };
119
- };
120
- return {
121
- register,
122
- unregister,
123
- activate,
124
- getRelationships,
125
- subscribe: (screenKey, listener) => {
126
- const listeners = listenersByScreenKey.get(screenKey) ?? new Set();
127
- listeners.add(listener);
128
- listenersByScreenKey.set(screenKey, listeners);
129
- return () => {
130
- listeners.delete(listener);
131
- if (listeners.size === 0) {
132
- listenersByScreenKey.delete(screenKey);
133
- if (!getNode(screenKey)) {
134
- relationshipCache.delete(screenKey);
135
- }
136
- }
137
- };
138
- }
139
- };
140
- };
141
- export const screenTopology = createScreenTopology();
142
- //# sourceMappingURL=create-screen-topology.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["EMPTY_RELATIONSHIPS","parentScreenKey","activeChildScreenKey","areRelationshipsEqual","left","right","createScreenTopology","nodes","Map","listenersByScreenKey","relationshipCache","getNode","screenKey","get","ensureNode","existing","node","activeChildScreenKeys","set","removeNodeIfEmpty","length","delete","getParent","getActiveChild","materializeRelationships","getRelationships","cached","relationships","mutate","affectedScreenKeys","mutation","previousRelationships","has","previous","listeners","next","listener","register","Set","unregister","add","parent","filter","activeScreenKey","activate","registration","Error","includes","subscribe","size","screenTopology"],"sourceRoot":"../../../../src","sources":["factories/screen-topology/create-screen-topology.ts"],"mappings":"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","ignoreList":[]}
@@ -1,6 +0,0 @@
1
- "use strict";
2
-
3
- export { createScreenTopology, screenTopology } from "./create-screen-topology";
4
- export { useScreenRelationships } from "./use-screen-relationships";
5
- export { registerWorkletScreen, screenBelongsToScope, unregisterWorkletScreen } from "./worklet";
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["createScreenTopology","screenTopology","useScreenRelationships","registerWorkletScreen","screenBelongsToScope","unregisterWorkletScreen"],"sourceRoot":"../../../../src","sources":["factories/screen-topology/index.ts"],"mappings":";;AAAA,SACCA,oBAAoB,EACpBC,cAAc,QACR,0BAA0B;AAOjC,SAASC,sBAAsB,QAAQ,4BAA4B;AACnE,SACCC,qBAAqB,EACrBC,oBAAoB,EACpBC,uBAAuB,QACjB,WAAW","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["factories/screen-topology/types.ts"],"mappings":"","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["useCallback","useSyncExternalStore","screenTopology","useScreenRelationships","screenKey","subscribe","listener","getSnapshot","getRelationships"],"sourceRoot":"../../../../src","sources":["factories/screen-topology/use-screen-relationships.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,oBAAoB,QAAQ,OAAO;AACzD,SAASC,cAAc,QAAQ,0BAA0B;AAEzD,OAAO,MAAMC,sBAAsB,GAAIC,SAAiB,IAAK;EAC5D,MAAMC,SAAS,GAAGL,WAAW,CAC3BM,QAAoB,IAAKJ,cAAc,CAACG,SAAS,CAACD,SAAS,EAAEE,QAAQ,CAAC,EACvE,CAACF,SAAS,CACX,CAAC;EACD,MAAMG,WAAW,GAAGP,WAAW,CAC9B,MAAME,cAAc,CAACM,gBAAgB,CAACJ,SAAS,CAAC,EAChD,CAACA,SAAS,CACX,CAAC;EAED,OAAOH,oBAAoB,CAACI,SAAS,EAAEE,WAAW,EAAEA,WAAW,CAAC;AACjE,CAAC","ignoreList":[]}
@@ -1,48 +0,0 @@
1
- "use strict";
2
-
3
- import { makeMutable } from "react-native-reanimated";
4
- const toStorageKey = screenKey => {
5
- "worklet";
6
-
7
- return `screen:${screenKey}`;
8
- };
9
- const workletScreenTopology = makeMutable({});
10
- export const registerWorkletScreen = ({
11
- screenKey,
12
- parentScreenKey
13
- }) => {
14
- "worklet";
15
-
16
- workletScreenTopology.modify(value => {
17
- "worklet";
18
-
19
- value[toStorageKey(screenKey)] = {
20
- parentScreenKey
21
- };
22
- return value;
23
- });
24
- };
25
- export const unregisterWorkletScreen = screenKey => {
26
- "worklet";
27
-
28
- workletScreenTopology.modify(value => {
29
- "worklet";
30
-
31
- const storageKey = toStorageKey(screenKey);
32
- delete value[storageKey];
33
- return value;
34
- });
35
- };
36
- export const screenBelongsToScope = (screenKey, scopeScreenKey) => {
37
- "worklet";
38
-
39
- if (screenKey === scopeScreenKey) return true;
40
- const state = workletScreenTopology.get();
41
- let parentScreenKey = state[toStorageKey(screenKey)]?.parentScreenKey;
42
- while (parentScreenKey) {
43
- if (parentScreenKey === scopeScreenKey) return true;
44
- parentScreenKey = state[toStorageKey(parentScreenKey)]?.parentScreenKey;
45
- }
46
- return false;
47
- };
48
- //# sourceMappingURL=worklet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["makeMutable","toStorageKey","screenKey","workletScreenTopology","registerWorkletScreen","parentScreenKey","modify","value","unregisterWorkletScreen","storageKey","screenBelongsToScope","scopeScreenKey","state","get"],"sourceRoot":"../../../../src","sources":["factories/screen-topology/worklet.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,yBAAyB;AASrD,MAAMC,YAAY,GAAIC,SAAiB,IAAK;EAC3C,SAAS;;EACT,OAAO,UAAUA,SAAS,EAAE;AAC7B,CAAC;AAED,MAAMC,qBAAqB,GAAGH,WAAW,CAAwB,CAAC,CAAC,CAAC;AAEpE,OAAO,MAAMI,qBAAqB,GAAGA,CAAC;EACrCF,SAAS;EACTG;AAC2B,CAAC,KAAK;EACjC,SAAS;;EACTF,qBAAqB,CAACG,MAAM,CACOC,KAAQ,IAAQ;IACjD,SAAS;;IACRA,KAAK,CAA2BN,YAAY,CAACC,SAAS,CAAC,CAAC,GAAG;MAC3DG;IACD,CAAC;IACD,OAAOE,KAAK;EACb,CACD,CAAC;AACF,CAAC;AAED,OAAO,MAAMC,uBAAuB,GAAIN,SAAiB,IAAK;EAC7D,SAAS;;EACTC,qBAAqB,CAACG,MAAM,CACOC,KAAQ,IAAQ;IACjD,SAAS;;IACT,MAAME,UAAU,GAAGR,YAAY,CAACC,SAAS,CAAC;IAC1C,OAAOK,KAAK,CAACE,UAAU,CAAC;IACxB,OAAOF,KAAK;EACb,CACD,CAAC;AACF,CAAC;AAED,OAAO,MAAMG,oBAAoB,GAAGA,CACnCR,SAAiB,EACjBS,cAAsB,KACT;EACb,SAAS;;EACT,IAAIT,SAAS,KAAKS,cAAc,EAAE,OAAO,IAAI;EAE7C,MAAMC,KAAK,GAAGT,qBAAqB,CAACU,GAAG,CAAC,CAAC;EACzC,IAAIR,eAAe,GAAGO,KAAK,CAACX,YAAY,CAACC,SAAS,CAAC,CAAC,EAAEG,eAAe;EACrE,OAAOA,eAAe,EAAE;IACvB,IAAIA,eAAe,KAAKM,cAAc,EAAE,OAAO,IAAI;IACnDN,eAAe,GAAGO,KAAK,CAACX,YAAY,CAACI,eAAe,CAAC,CAAC,EAAEA,eAAe;EACxE;EAEA,OAAO,KAAK;AACb,CAAC","ignoreList":[]}
@@ -1,50 +0,0 @@
1
- "use strict";
2
-
3
- import { createContext, useContext } from "react";
4
- import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
5
- const PassthroughScreenProvider = ({
6
- children
7
- }) => /*#__PURE__*/_jsx(_Fragment, {
8
- children: children
9
- });
10
- const DEFAULT_NAVIGATION_HOST = {
11
- ScreenProvider: PassthroughScreenProvider
12
- };
13
- const NavigationHostContext = /*#__PURE__*/createContext(DEFAULT_NAVIGATION_HOST);
14
- NavigationHostContext.displayName = "NavigationHost";
15
- const NavigationRouteContext = /*#__PURE__*/createContext(null);
16
- NavigationRouteContext.displayName = "StandardNavigationRoute";
17
- export function NavigationHostProvider({
18
- children,
19
- value
20
- }) {
21
- return /*#__PURE__*/_jsx(NavigationHostContext.Provider, {
22
- value: value ?? DEFAULT_NAVIGATION_HOST,
23
- children: children
24
- });
25
- }
26
- export function NavigationScreenProvider({
27
- children,
28
- navigation,
29
- route
30
- }) {
31
- const {
32
- ScreenProvider
33
- } = useContext(NavigationHostContext);
34
- return /*#__PURE__*/_jsx(NavigationRouteContext.Provider, {
35
- value: route,
36
- children: /*#__PURE__*/_jsx(ScreenProvider, {
37
- navigation: navigation,
38
- route: route,
39
- children: children
40
- })
41
- });
42
- }
43
- export function useNavigationRoute() {
44
- const route = useContext(NavigationRouteContext);
45
- if (!route) {
46
- throw new Error("Navigation route is unavailable");
47
- }
48
- return route;
49
- }
50
- //# sourceMappingURL=navigation-host.provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["createContext","useContext","Fragment","_Fragment","jsx","_jsx","PassthroughScreenProvider","children","DEFAULT_NAVIGATION_HOST","ScreenProvider","NavigationHostContext","displayName","NavigationRouteContext","NavigationHostProvider","value","Provider","NavigationScreenProvider","navigation","route","useNavigationRoute","Error"],"sourceRoot":"../../../../src","sources":["providers/navigation/navigation-host.provider.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAkBC,UAAU,QAAQ,OAAO;AAAC,SAAAC,QAAA,IAAAC,SAAA,EAAAC,GAAA,IAAAC,IAAA;AAgBlE,MAAMC,yBAA4D,GAAGA,CAAC;EACrEC;AACD,CAAC,kBAAKF,IAAA,CAAAF,SAAA;EAAAI,QAAA,EAAGA;AAAQ,CAAG,CAAC;AAErB,MAAMC,uBAAmD,GAAG;EAC3DC,cAAc,EAAEH;AACjB,CAAC;AAED,MAAMI,qBAAqB,gBAAGV,aAAa,CAC1CQ,uBACD,CAAC;AACDE,qBAAqB,CAACC,WAAW,GAAG,gBAAgB;AAEpD,MAAMC,sBAAsB,gBAAGZ,aAAa,CAAwB,IAAI,CAAC;AACzEY,sBAAsB,CAACD,WAAW,GAAG,yBAAyB;AAE9D,OAAO,SAASE,sBAAsBA,CAAC;EACtCN,QAAQ;EACRO;AAID,CAAC,EAAE;EACF,oBACCT,IAAA,CAACK,qBAAqB,CAACK,QAAQ;IAACD,KAAK,EAAEA,KAAK,IAAIN,uBAAwB;IAAAD,QAAA,EACtEA;EAAQ,CACsB,CAAC;AAEnC;AAEA,OAAO,SAASS,wBAAwBA,CAAC;EACxCT,QAAQ;EACRU,UAAU;EACVC;AAKD,CAAC,EAAE;EACF,MAAM;IAAET;EAAe,CAAC,GAAGR,UAAU,CAACS,qBAAqB,CAAC;EAE5D,oBACCL,IAAA,CAACO,sBAAsB,CAACG,QAAQ;IAACD,KAAK,EAAEI,KAAM;IAAAX,QAAA,eAC7CF,IAAA,CAACI,cAAc;MAACQ,UAAU,EAAEA,UAAW;MAACC,KAAK,EAAEA,KAAM;MAAAX,QAAA,EACnDA;IAAQ,CACM;EAAC,CACe,CAAC;AAEpC;AAEA,OAAO,SAASY,kBAAkBA,CAAA,EAAG;EACpC,MAAMD,KAAK,GAAGjB,UAAU,CAACW,sBAAsB,CAAC;EAEhD,IAAI,CAACM,KAAK,EAAE;IACX,MAAM,IAAIE,KAAK,CAAC,iCAAiC,CAAC;EACnD;EAEA,OAAOF,KAAK;AACb","ignoreList":[]}
@@ -1,19 +0,0 @@
1
- "use strict";
2
-
3
- import { NavigationContext, NavigationRouteContext } from "@react-navigation/native";
4
- import { jsx as _jsx } from "react/jsx-runtime";
5
- const ReactNavigationScreenProvider = ({
6
- children,
7
- navigation,
8
- route
9
- }) => /*#__PURE__*/_jsx(NavigationContext.Provider, {
10
- value: navigation,
11
- children: /*#__PURE__*/_jsx(NavigationRouteContext.Provider, {
12
- value: route,
13
- children: children
14
- })
15
- });
16
- export const reactNavigationHost = {
17
- ScreenProvider: ReactNavigationScreenProvider
18
- };
19
- //# sourceMappingURL=react-navigation-host.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["NavigationContext","NavigationRouteContext","jsx","_jsx","ReactNavigationScreenProvider","children","navigation","route","Provider","value","reactNavigationHost","ScreenProvider"],"sourceRoot":"../../../../src","sources":["providers/navigation/react-navigation-host.tsx"],"mappings":";;AAAA,SACCA,iBAAiB,EACjBC,sBAAsB,QAChB,0BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAMlC,MAAMC,6BAAgE,GAAGA,CAAC;EACzEC,QAAQ;EACRC,UAAU;EACVC;AACD,CAAC,kBACAJ,IAAA,CAACH,iBAAiB,CAACQ,QAAQ;EAACC,KAAK,EAAEH,UAAoB;EAAAD,QAAA,eACtDF,IAAA,CAACF,sBAAsB,CAACO,QAAQ;IAACC,KAAK,EAAEF,KAAe;IAAAF,QAAA,EACrDA;EAAQ,CACuB;AAAC,CACP,CAC5B;AAED,OAAO,MAAMK,mBAA+C,GAAG;EAC9DC,cAAc,EAAEP;AACjB,CAAC","ignoreList":[]}
@@ -1,56 +0,0 @@
1
- "use strict";
2
-
3
- import { useMemo } from "react";
4
- const resolveTargetIndex = (target, currentIndex, sourceCount) => {
5
- "worklet";
6
-
7
- if (sourceCount <= 0) return -1;
8
- if (target !== undefined && (typeof target !== "object" || target === null || !("depth" in target))) {
9
- return -1;
10
- }
11
- const depth = target?.depth ?? 0;
12
- if (!Number.isInteger(depth)) return -1;
13
- const resolvedIndex = currentIndex + depth;
14
- return resolvedIndex >= 0 && resolvedIndex < sourceCount ? resolvedIndex : -1;
15
- };
16
- export const createTransitionAccessor = (sources, originIndex = 0) => {
17
- "worklet";
18
-
19
- const buildScope = (sourceIndex, currentSources) => {
20
- "worklet";
21
-
22
- const source = currentSources[sourceIndex];
23
- if (!source) return null;
24
- source.screenInterpolatorPropsRevision.get();
25
- const frame = source.screenInterpolatorProps.get();
26
- return {
27
- ...frame,
28
- bounds: source.boundsAccessor,
29
- transition: target => {
30
- "worklet";
31
-
32
- const targetIndex = resolveTargetIndex(target, sourceIndex, currentSources.length);
33
- if (targetIndex === -1) {
34
- return null;
35
- }
36
- return buildScope(targetIndex, currentSources);
37
- }
38
- };
39
- };
40
- return target => {
41
- "worklet";
42
-
43
- const targetIndex = resolveTargetIndex(target, originIndex, sources.length);
44
- if (targetIndex === -1) {
45
- return null;
46
- }
47
- return buildScope(targetIndex, sources);
48
- };
49
- };
50
- export const useBuildTransitionAccessor = ({
51
- transitionSources,
52
- transitionOriginIndex
53
- }) => {
54
- return useMemo(() => createTransitionAccessor(transitionSources, transitionOriginIndex), [transitionSources, transitionOriginIndex]);
55
- };
56
- //# sourceMappingURL=use-build-transition-accessor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["useMemo","resolveTargetIndex","target","currentIndex","sourceCount","undefined","depth","Number","isInteger","resolvedIndex","createTransitionAccessor","sources","originIndex","buildScope","sourceIndex","currentSources","source","screenInterpolatorPropsRevision","get","frame","screenInterpolatorProps","bounds","boundsAccessor","transition","targetIndex","length","useBuildTransitionAccessor","transitionSources","transitionOriginIndex"],"sourceRoot":"../../../../../../../src","sources":["providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,OAAO;AAiB/B,MAAMC,kBAAkB,GAAGA,CAC1BC,MAA0C,EAC1CC,YAAmC,EACnCC,WAAmB,KACQ;EAC3B,SAAS;;EACT,IAAIA,WAAW,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;EAE/B,IACCF,MAAM,KAAKG,SAAS,KACnB,OAAOH,MAAM,KAAK,QAAQ,IAAIA,MAAM,KAAK,IAAI,IAAI,EAAE,OAAO,IAAIA,MAAM,CAAC,CAAC,EACtE;IACD,OAAO,CAAC,CAAC;EACV;EAEA,MAAMI,KAAK,GAAGJ,MAAM,EAAEI,KAAK,IAAI,CAAC;EAChC,IAAI,CAACC,MAAM,CAACC,SAAS,CAACF,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;EAEvC,MAAMG,aAAa,GAAGN,YAAY,GAAGG,KAAK;EAC1C,OAAOG,aAAa,IAAI,CAAC,IAAIA,aAAa,GAAGL,WAAW,GAAGK,aAAa,GAAG,CAAC,CAAC;AAC9E,CAAC;AAED,OAAO,MAAMC,wBAAwB,GAAGA,CACvCC,OAA4C,EAC5CC,WAAW,GAAG,CAAC,KACX;EACJ,SAAS;;EAET,MAAMC,UAAU,GAAGA,CAClBC,WAAkC,EAClCC,cAAmD,KACd;IACrC,SAAS;;IACT,MAAMC,MAAM,GAAGD,cAAc,CAACD,WAAW,CAAC;IAC1C,IAAI,CAACE,MAAM,EAAE,OAAO,IAAI;IAExBA,MAAM,CAACC,+BAA+B,CAACC,GAAG,CAAC,CAAC;IAC5C,MAAMC,KAAK,GAAGH,MAAM,CAACI,uBAAuB,CAACF,GAAG,CAAC,CAAC;IAElD,OAAO;MACN,GAAGC,KAAK;MACRE,MAAM,EAAEL,MAAM,CAACM,cAAc;MAC7BC,UAAU,EAAGrB,MAA+B,IAAK;QAChD,SAAS;;QACT,MAAMsB,WAAW,GAAGvB,kBAAkB,CACrCC,MAAM,EACNY,WAAW,EACXC,cAAc,CAACU,MAChB,CAAC;QAED,IAAID,WAAW,KAAK,CAAC,CAAC,EAAE;UACvB,OAAO,IAAI;QACZ;QAEA,OAAOX,UAAU,CAACW,WAAW,EAAET,cAAc,CAAC;MAC/C;IACD,CAAC;EACF,CAAC;EAED,OAAQb,MAA+B,IAAsC;IAC5E,SAAS;;IACT,MAAMsB,WAAW,GAAGvB,kBAAkB,CAACC,MAAM,EAAEU,WAAW,EAAED,OAAO,CAACc,MAAM,CAAC;IAC3E,IAAID,WAAW,KAAK,CAAC,CAAC,EAAE;MACvB,OAAO,IAAI;IACZ;IAEA,OAAOX,UAAU,CAACW,WAAW,EAAEb,OAAO,CAAC;EACxC,CAAC;AACF,CAAC;AAED,OAAO,MAAMe,0BAA0B,GAAGA,CAAC;EAC1CC,iBAAiB;EACjBC;AACwB,CAAC,KAAK;EAC9B,OAAO5B,OAAO,CACb,MAAMU,wBAAwB,CAACiB,iBAAiB,EAAEC,qBAAqB,CAAC,EACxE,CAACD,iBAAiB,EAAEC,qBAAqB,CAC1C,CAAC;AACF,CAAC","ignoreList":[]}
@@ -1,11 +0,0 @@
1
- "use strict";
2
-
3
- export const readScreenAnimationRevisions = (sources, externalRevisions = []) => {
4
- "worklet";
5
-
6
- for (const source of sources) {
7
- source.screenInterpolatorPropsRevision.get();
8
- }
9
- for (const revision of externalRevisions) revision.get();
10
- };
11
- //# sourceMappingURL=read-screen-animation-revisions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["readScreenAnimationRevisions","sources","externalRevisions","source","screenInterpolatorPropsRevision","get","revision"],"sourceRoot":"../../../../../../src","sources":["providers/screen/animation/helpers/read-screen-animation-revisions.ts"],"mappings":";;AAKA,OAAO,MAAMA,4BAA4B,GAAGA,CAC3CC,OAAmD,EACnDC,iBAAiD,GAAG,EAAE,KAClD;EACJ,SAAS;;EACT,KAAK,MAAMC,MAAM,IAAIF,OAAO,EAAE;IAC7BE,MAAM,CAACC,+BAA+B,CAACC,GAAG,CAAC,CAAC;EAC7C;EACA,KAAK,MAAMC,QAAQ,IAAIJ,iBAAiB,EAAEI,QAAQ,CAACD,GAAG,CAAC,CAAC;AACzD,CAAC","ignoreList":[]}
@@ -1,124 +0,0 @@
1
- "use strict";
2
-
3
- import { useLayoutEffect, useMemo } from "react";
4
- import { GestureStore } from "../../../../stores/gesture.store";
5
- import { DIRECTIONS, NO_CLAIMS } from "../../../../types/ownership.types";
6
- import { useDescriptorsStore } from "../../../screen/descriptors";
7
- import { useBlankStackStore } from "../../../stack/blank-stack.provider";
8
- import { useScreenGestureStore } from "../gestures.provider";
9
- import { resolveScreenGestureConfig } from "../shared/policy";
10
- import { resolveShadowingClaimDirections } from "./shadowing-claims";
11
- import { jsx as _jsx } from "react/jsx-runtime";
12
- const NO_SHADOWED_ANCESTORS = [];
13
- const findShadowedDirections = (claimedDirections, ancestorDirections) => {
14
- const shadowedDirections = [];
15
- for (const direction of DIRECTIONS) {
16
- if (claimedDirections[direction] && ancestorDirections[direction]) {
17
- shadowedDirections.push(direction);
18
- }
19
- }
20
- return shadowedDirections;
21
- };
22
- const findShadowedAncestors = (ancestorGestures, claimedDirections) => {
23
- if (ancestorGestures.length === 0) {
24
- return NO_SHADOWED_ANCESTORS;
25
- }
26
- const ancestors = [];
27
- for (const ancestor of ancestorGestures) {
28
- const directions = findShadowedDirections(claimedDirections, ancestor.claimedDirections);
29
- if (directions.length > 0) {
30
- ancestors.push({
31
- ancestor,
32
- directions
33
- });
34
- }
35
- }
36
- return ancestors.length ? ancestors : NO_SHADOWED_ANCESTORS;
37
- };
38
- const registerShadowingClaims = (shadowedAncestors, currentScreenKey) => {
39
- const isDismissing = GestureStore.getValue(currentScreenKey, "dismissing");
40
- for (const {
41
- ancestor,
42
- directions
43
- } of shadowedAncestors) {
44
- const newClaims = {
45
- ...ancestor.childDirectionClaims.get()
46
- };
47
- for (const direction of directions) {
48
- newClaims[direction] = {
49
- routeKey: currentScreenKey,
50
- isDismissing
51
- };
52
- }
53
- ancestor.childDirectionClaims.set(newClaims);
54
- }
55
- };
56
- const clearShadowingClaims = (shadowedAncestors, currentScreenKey) => {
57
- for (const {
58
- ancestor,
59
- directions
60
- } of shadowedAncestors) {
61
- const currentClaims = ancestor.childDirectionClaims.get();
62
- const newClaims = {
63
- ...currentClaims
64
- };
65
- let needsUpdate = false;
66
- for (const direction of directions) {
67
- if (currentClaims[direction]?.routeKey === currentScreenKey) {
68
- newClaims[direction] = null;
69
- needsUpdate = true;
70
- }
71
- }
72
- if (needsUpdate) {
73
- ancestor.childDirectionClaims.set(newClaims);
74
- }
75
- }
76
- };
77
- const getDescriptorIsFirstKey = descriptor => {
78
- const navigationState = descriptor.navigation.getState();
79
- const routes = navigationState?.routes ?? [];
80
- return routes.findIndex(route => route.key === descriptor.route.key) === 0;
81
- };
82
- const getDescriptorClaimedDirections = (descriptor, ancestorGestures) => {
83
- if (!descriptor) {
84
- return NO_CLAIMS;
85
- }
86
- return resolveScreenGestureConfig({
87
- options: descriptor.options,
88
- isFirstKey: getDescriptorIsFirstKey(descriptor),
89
- ancestorGestures
90
- }).participation.claimedDirections;
91
- };
92
- function ActiveGestureOwnershipBridge() {
93
- const gestureContext = useScreenGestureStore();
94
- const previous = useDescriptorsStore(store => store.previous);
95
- const isCurrentScreenClosing = useBlankStackStore(store => store.scenesByKey[gestureContext.routeKey]?.activity === "closing");
96
- const {
97
- claimedDirections,
98
- ancestorGestures,
99
- routeKey: currentScreenKey
100
- } = gestureContext;
101
- const effectiveClaimedDirections = useMemo(() => resolveShadowingClaimDirections({
102
- isCurrentScreenClosing,
103
- currentClaimedDirections: claimedDirections,
104
- previousClaimedDirections: getDescriptorClaimedDirections(previous, ancestorGestures)
105
- }), [isCurrentScreenClosing, claimedDirections, previous, ancestorGestures]);
106
- const shadowedAncestors = useMemo(() => findShadowedAncestors(ancestorGestures, effectiveClaimedDirections), [ancestorGestures, effectiveClaimedDirections]);
107
- useLayoutEffect(() => {
108
- if (!shadowedAncestors.length) {
109
- return;
110
- }
111
- registerShadowingClaims(shadowedAncestors, currentScreenKey);
112
- return () => {
113
- clearShadowingClaims(shadowedAncestors, currentScreenKey);
114
- };
115
- }, [shadowedAncestors, currentScreenKey]);
116
- return null;
117
- }
118
-
119
- /** Keeps gesture ownership subscriptions attached only to participating screens. */
120
- export function GestureOwnershipBridge() {
121
- const isTopMostScreen = useDescriptorsStore(store => store.derivations.isTopMostScreen);
122
- return isTopMostScreen ? /*#__PURE__*/_jsx(ActiveGestureOwnershipBridge, {}) : null;
123
- }
124
- //# sourceMappingURL=gesture-ownership-bridge.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["useLayoutEffect","useMemo","GestureStore","DIRECTIONS","NO_CLAIMS","useDescriptorsStore","useBlankStackStore","useScreenGestureStore","resolveScreenGestureConfig","resolveShadowingClaimDirections","jsx","_jsx","NO_SHADOWED_ANCESTORS","findShadowedDirections","claimedDirections","ancestorDirections","shadowedDirections","direction","push","findShadowedAncestors","ancestorGestures","length","ancestors","ancestor","directions","registerShadowingClaims","shadowedAncestors","currentScreenKey","isDismissing","getValue","newClaims","childDirectionClaims","get","routeKey","set","clearShadowingClaims","currentClaims","needsUpdate","getDescriptorIsFirstKey","descriptor","navigationState","navigation","getState","routes","findIndex","route","key","getDescriptorClaimedDirections","options","isFirstKey","participation","ActiveGestureOwnershipBridge","gestureContext","previous","store","isCurrentScreenClosing","scenesByKey","activity","effectiveClaimedDirections","currentClaimedDirections","previousClaimedDirections","GestureOwnershipBridge","isTopMostScreen","derivations"],"sourceRoot":"../../../../../../src","sources":["providers/screen/gestures/ownership/gesture-ownership-bridge.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,67 +0,0 @@
1
- "use strict";
2
-
3
- import { DIRECTIONS, NO_OWNERSHIP } from "../../../../types/ownership.types";
4
-
5
- /**
6
- * Minimal interface for ancestor context needed for ownership resolution.
7
- * This allows the function to be used without importing the full GestureContextType.
8
- */
9
-
10
- /**
11
- * Resolves ownership status for all directions relative to the current screen.
12
- *
13
- * For each direction:
14
- * 1. If the current screen claims it → 'self' (should activate)
15
- * 2. Else, walk up ancestors looking for a claim → 'ancestor' (should fail to bubble)
16
- * 3. If no one claims it → 'none' (should fail, no gesture response)
17
- *
18
- * This is computed during render (JS thread) and the result can be safely
19
- * used in worklets since it's a plain object.
20
- *
21
- * @param selfClaims - The directions claimed by the current screen
22
- * @param ancestors - Nearest-first ancestor gesture values from screen topology.
23
- * @returns Ownership status for all four directions
24
- */
25
- export function resolveOwnership(selfClaims, ancestors) {
26
- const result = {
27
- ...NO_OWNERSHIP
28
- };
29
- for (const direction of DIRECTIONS) {
30
- result[direction] = resolveDirectionOwnership(direction, selfClaims, ancestors);
31
- }
32
- return result;
33
- }
34
-
35
- /**
36
- * Resolves ownership for a single direction.
37
- */
38
- function resolveDirectionOwnership(direction, selfClaims, ancestors) {
39
- // Check self first
40
- if (selfClaims[direction]) {
41
- return "self";
42
- }
43
-
44
- // Walk ancestors looking for a claim
45
- for (const ancestor of ancestors) {
46
- if (ancestor.claimedDirections?.[direction]) {
47
- return "ancestor";
48
- }
49
- }
50
-
51
- // No one claims this direction
52
- return "none";
53
- }
54
-
55
- /**
56
- * Returns true when the current screen should fail and defer to a child claim.
57
- */
58
- export function shouldDeferToChildClaim(childClaim, selfRouteKey) {
59
- "worklet";
60
-
61
- if (!childClaim) return false;
62
- if (childClaim.routeKey === selfRouteKey) return false;
63
- // A closing child still owns its axis until its claim is cleaned up; otherwise
64
- // an ancestor can steal the next drag while the previous screen is visible.
65
- return true;
66
- }
67
- //# sourceMappingURL=resolve-ownership.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["DIRECTIONS","NO_OWNERSHIP","resolveOwnership","selfClaims","ancestors","result","direction","resolveDirectionOwnership","ancestor","claimedDirections","shouldDeferToChildClaim","childClaim","selfRouteKey","routeKey"],"sourceRoot":"../../../../../../src","sources":["providers/screen/gestures/ownership/resolve-ownership.ts"],"mappings":";;AAIA,SACCA,UAAU,EAEVC,YAAY,QAEN,mCAAmC;;AAG1C;AACA;AACA;AACA;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAC/BC,UAA6B,EAC7BC,SAA2C,EACtB;EACrB,MAAMC,MAA0B,GAAG;IAAE,GAAGJ;EAAa,CAAC;EAEtD,KAAK,MAAMK,SAAS,IAAIN,UAAU,EAAE;IACnCK,MAAM,CAACC,SAAS,CAAC,GAAGC,yBAAyB,CAC5CD,SAAS,EACTH,UAAU,EACVC,SACD,CAAC;EACF;EAEA,OAAOC,MAAM;AACd;;AAEA;AACA;AACA;AACA,SAASE,yBAAyBA,CACjCD,SAAoB,EACpBH,UAA6B,EAC7BC,SAA2C,EACzB;EAClB;EACA,IAAID,UAAU,CAACG,SAAS,CAAC,EAAE;IAC1B,OAAO,MAAM;EACd;;EAEA;EACA,KAAK,MAAME,QAAQ,IAAIJ,SAAS,EAAE;IACjC,IAAII,QAAQ,CAACC,iBAAiB,GAAGH,SAAS,CAAC,EAAE;MAC5C,OAAO,UAAU;IAClB;EACD;;EAEA;EACA,OAAO,MAAM;AACd;;AAEA;AACA;AACA;AACA,OAAO,SAASI,uBAAuBA,CACtCC,UAA0B,EAC1BC,YAAoB,EACV;EACV,SAAS;;EACT,IAAI,CAACD,UAAU,EAAE,OAAO,KAAK;EAC7B,IAAIA,UAAU,CAACE,QAAQ,KAAKD,YAAY,EAAE,OAAO,KAAK;EACtD;EACA;EACA,OAAO,IAAI;AACZ","ignoreList":[]}
@@ -1,50 +0,0 @@
1
- "use strict";
2
-
3
- /** Walks up the gesture tree until it finds the owner for a specific direction. */
4
- function findGestureOwnerForDirection(ancestors, direction) {
5
- for (const ancestor of ancestors) {
6
- if (ancestor.claimedDirections?.[direction]) return ancestor;
7
- }
8
- return null;
9
- }
10
- const getDirectionsForAxis = axis => axis === "vertical" ? ["vertical", "vertical-inverted"] : ["horizontal", "horizontal-inverted"];
11
- const collectAncestorPinchGestures = ancestors => {
12
- const pinchGestures = [];
13
- for (const ancestor of ancestors) {
14
- if (!pinchGestures.includes(ancestor.pinchGesture)) {
15
- pinchGestures.push(ancestor.pinchGesture);
16
- }
17
- }
18
- return pinchGestures;
19
- };
20
- const collectAxisOwners = (ancestors, directions) => {
21
- const seenOwners = [];
22
- const panGestures = [];
23
- const scrollStates = [];
24
- const ownerRouteKeys = [];
25
- for (const direction of directions) {
26
- const owner = findGestureOwnerForDirection(ancestors, direction);
27
- if (!owner || seenOwners.includes(owner)) {
28
- continue;
29
- }
30
- seenOwners.push(owner);
31
- panGestures.push(owner.panGesture);
32
- scrollStates.push(owner.scrollState);
33
- ownerRouteKeys.push(owner.routeKey);
34
- }
35
- return {
36
- panGestures,
37
- scrollStates,
38
- ownerRouteKeys
39
- };
40
- };
41
- export function walkUpScrollGestureCoordination(ancestors, axis) {
42
- const axisOwners = collectAxisOwners(ancestors, getDirectionsForAxis(axis));
43
- return {
44
- panGestures: axisOwners.panGestures,
45
- pinchGestures: collectAncestorPinchGestures(ancestors),
46
- scrollStates: axisOwners.scrollStates,
47
- ownerRouteKeys: axisOwners.ownerRouteKeys
48
- };
49
- }
50
- //# sourceMappingURL=walk-up-scroll-gesture-coordination.js.map