react-native-screen-transitions 4.0.0-alpha.1 → 4.0.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (838) hide show
  1. package/lib/commonjs/adapters/with-screen-transitions/context.js +4 -0
  2. package/lib/commonjs/adapters/with-screen-transitions/context.js.map +1 -1
  3. package/lib/commonjs/adapters/with-screen-transitions/stack-layout.js +14 -8
  4. package/lib/commonjs/adapters/with-screen-transitions/stack-layout.js.map +1 -1
  5. package/lib/commonjs/animation/snap-to.js +3 -0
  6. package/lib/commonjs/animation/snap-to.js.map +1 -1
  7. package/lib/commonjs/components/activity/variants/activity-screen.js +26 -10
  8. package/lib/commonjs/components/activity/variants/activity-screen.js.map +1 -1
  9. package/lib/commonjs/components/boundary/components/boundary-target.js +20 -21
  10. package/lib/commonjs/components/boundary/components/boundary-target.js.map +1 -1
  11. package/lib/commonjs/components/boundary/create-boundary-component.js +16 -2
  12. package/lib/commonjs/components/boundary/create-boundary-component.js.map +1 -1
  13. package/lib/commonjs/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +18 -7
  14. package/lib/commonjs/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
  15. package/lib/commonjs/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -7
  16. package/lib/commonjs/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
  17. package/lib/commonjs/components/boundary/hooks/use-boundary-measurement.js +1 -3
  18. package/lib/commonjs/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
  19. package/lib/commonjs/components/boundary/hooks/use-measurer.js +6 -13
  20. package/lib/commonjs/components/boundary/hooks/use-measurer.js.map +1 -1
  21. package/lib/commonjs/components/boundary/index.js +4 -3
  22. package/lib/commonjs/components/boundary/index.js.map +1 -1
  23. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +67 -0
  24. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -0
  25. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +55 -189
  26. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  27. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/index.js +21 -13
  28. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
  29. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/host.js +3 -14
  30. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  31. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +40 -33
  32. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
  33. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +30 -0
  34. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +1 -0
  35. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +3 -4
  36. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -1
  37. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js +75 -0
  38. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -0
  39. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +45 -145
  40. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  41. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js +10 -19
  42. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -1
  43. package/lib/commonjs/components/boundary/portal/components/boundary-portal/index.js +45 -9
  44. package/lib/commonjs/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
  45. package/lib/commonjs/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -1
  46. package/lib/commonjs/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +2 -29
  47. package/lib/commonjs/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -1
  48. package/lib/commonjs/components/boundary/portal/utils/naming.js +8 -1
  49. package/lib/commonjs/components/boundary/portal/utils/naming.js.map +1 -1
  50. package/lib/commonjs/components/boundary/portal/utils/resolve-portal.js +19 -15
  51. package/lib/commonjs/components/boundary/portal/utils/resolve-portal.js.map +1 -1
  52. package/lib/commonjs/components/boundary/portal/utils/teleport-control.js +1 -10
  53. package/lib/commonjs/components/boundary/portal/utils/teleport-control.js.map +1 -1
  54. package/lib/commonjs/components/boundary/providers/boundary-root.provider.js +22 -41
  55. package/lib/commonjs/components/boundary/providers/boundary-root.provider.js.map +1 -1
  56. package/lib/commonjs/components/boundary/utils/measured-bounds.js +19 -31
  57. package/lib/commonjs/components/boundary/utils/measured-bounds.js.map +1 -1
  58. package/lib/commonjs/components/boundary/utils/refresh-signals.js +14 -13
  59. package/lib/commonjs/components/boundary/utils/refresh-signals.js.map +1 -1
  60. package/lib/commonjs/components/boundary/utils/resolve-boundary-target.js +29 -0
  61. package/lib/commonjs/components/boundary/utils/resolve-boundary-target.js.map +1 -0
  62. package/lib/commonjs/components/create-transition-aware-component.js +9 -30
  63. package/lib/commonjs/components/create-transition-aware-component.js.map +1 -1
  64. package/lib/commonjs/components/masked-view.js +9 -1
  65. package/lib/commonjs/components/masked-view.js.map +1 -1
  66. package/lib/commonjs/components/screen-container/hooks/use-backdrop-pointer-events.js +5 -9
  67. package/lib/commonjs/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
  68. package/lib/commonjs/components/screen-container/hooks/use-content-layout.js +3 -8
  69. package/lib/commonjs/components/screen-container/hooks/use-content-layout.js.map +1 -1
  70. package/lib/commonjs/components/screen-container/layers/backdrop.js +9 -10
  71. package/lib/commonjs/components/screen-container/layers/backdrop.js.map +1 -1
  72. package/lib/commonjs/components/screen-container/layers/content.js +10 -16
  73. package/lib/commonjs/components/screen-container/layers/content.js.map +1 -1
  74. package/lib/commonjs/components/screen-container/layers/maybe-masked-navigation-container.js +9 -1
  75. package/lib/commonjs/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  76. package/lib/commonjs/components/screen-container/layers/surface-container.js +1 -5
  77. package/lib/commonjs/components/screen-container/layers/surface-container.js.map +1 -1
  78. package/lib/commonjs/components/screen-lifecycle/hooks/use-close-transition-intent.js +10 -12
  79. package/lib/commonjs/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  80. package/lib/commonjs/components/screen-lifecycle/hooks/use-open-transition-intent.js +2 -3
  81. package/lib/commonjs/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
  82. package/lib/commonjs/components/screen-lifecycle/hooks/use-transition-start-controller.js +7 -1
  83. package/lib/commonjs/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  84. package/lib/commonjs/components/screen-lifecycle/index.js +2 -4
  85. package/lib/commonjs/components/screen-lifecycle/index.js.map +1 -1
  86. package/lib/commonjs/components/stack-view.js +69 -35
  87. package/lib/commonjs/components/stack-view.js.map +1 -1
  88. package/lib/commonjs/configs/presets.js +10 -10
  89. package/lib/commonjs/configs/presets.js.map +1 -1
  90. package/lib/commonjs/constants.js +1 -0
  91. package/lib/commonjs/constants.js.map +1 -1
  92. package/lib/commonjs/hooks/navigation/use-navigation-helpers.js +9 -8
  93. package/lib/commonjs/hooks/navigation/use-navigation-helpers.js.map +1 -1
  94. package/lib/commonjs/hooks/navigation/use-screen-state.js +1 -3
  95. package/lib/commonjs/hooks/navigation/use-screen-state.js.map +1 -1
  96. package/lib/commonjs/navigators/react-navigation/index.js +7 -8
  97. package/lib/commonjs/navigators/react-navigation/index.js.map +1 -1
  98. package/lib/commonjs/providers/helpers/measured-bounds-writes.js +4 -1
  99. package/lib/commonjs/providers/helpers/measured-bounds-writes.js.map +1 -1
  100. package/lib/commonjs/providers/screen/animation/animation.provider.js +7 -7
  101. package/lib/commonjs/providers/screen/animation/animation.provider.js.map +1 -1
  102. package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js +1 -3
  103. package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -1
  104. package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +1 -1
  105. package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  106. package/lib/commonjs/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -10
  107. package/lib/commonjs/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  108. package/lib/commonjs/providers/screen/animation/helpers/pipeline.js +5 -7
  109. package/lib/commonjs/providers/screen/animation/helpers/pipeline.js.map +1 -1
  110. package/lib/commonjs/providers/screen/animation/index.js +2 -2
  111. package/lib/commonjs/providers/screen/animation/use-screen-animation.js +1 -1
  112. package/lib/commonjs/providers/screen/animation/use-screen-animation.js.map +1 -1
  113. package/lib/commonjs/providers/screen/descriptors/descriptors.provider.js +34 -42
  114. package/lib/commonjs/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  115. package/lib/commonjs/providers/screen/descriptors/index.js +0 -12
  116. package/lib/commonjs/providers/screen/descriptors/index.js.map +1 -1
  117. package/lib/commonjs/providers/screen/gestures/gestures.provider.js +9 -15
  118. package/lib/commonjs/providers/screen/gestures/gestures.provider.js.map +1 -1
  119. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture-config.js +3 -9
  120. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
  121. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture.js +1 -1
  122. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
  123. package/lib/commonjs/providers/screen/gestures/hooks/use-stable-runtime-config.js +1 -3
  124. package/lib/commonjs/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
  125. package/lib/commonjs/providers/screen/gestures/index.js +2 -2
  126. package/lib/commonjs/providers/screen/gestures/ownership/shadowing-claims.js +2 -2
  127. package/lib/commonjs/providers/screen/gestures/ownership/shadowing-claims.js.map +1 -1
  128. package/lib/commonjs/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +8 -11
  129. package/lib/commonjs/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
  130. package/lib/commonjs/providers/screen/gestures/pan/activation/use-pan-activation.js +2 -4
  131. package/lib/commonjs/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  132. package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-lifecycle.js +6 -8
  133. package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  134. package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-reset.js +10 -0
  135. package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
  136. package/lib/commonjs/providers/screen/gestures/pan/use-build-pan-gesture.js +1 -1
  137. package/lib/commonjs/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  138. package/lib/commonjs/providers/screen/gestures/pinch/activation/use-pinch-activation.js +37 -3
  139. package/lib/commonjs/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  140. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +9 -6
  141. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  142. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-release.js +3 -2
  143. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
  144. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-reset.js +7 -0
  145. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
  146. package/lib/commonjs/providers/screen/gestures/pinch/use-build-pinch-gesture.js +1 -1
  147. package/lib/commonjs/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
  148. package/lib/commonjs/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +5 -5
  149. package/lib/commonjs/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -1
  150. package/lib/commonjs/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +2 -2
  151. package/lib/commonjs/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  152. package/lib/commonjs/providers/screen/gestures/types.js.map +1 -1
  153. package/lib/commonjs/providers/screen/options/index.js +2 -2
  154. package/lib/commonjs/providers/screen/options/options.provider.js +4 -8
  155. package/lib/commonjs/providers/screen/options/options.provider.js.map +1 -1
  156. package/lib/commonjs/providers/screen/screen-composer.js +2 -0
  157. package/lib/commonjs/providers/screen/screen-composer.js.map +1 -1
  158. package/lib/commonjs/providers/screen/styles/constants.js +10 -4
  159. package/lib/commonjs/providers/screen/styles/constants.js.map +1 -1
  160. package/lib/commonjs/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js +93 -0
  161. package/lib/commonjs/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js.map +1 -0
  162. package/lib/commonjs/providers/screen/styles/helpers/resolve-slot-styles/index.js +48 -5
  163. package/lib/commonjs/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  164. package/lib/commonjs/providers/screen/styles/helpers/select-interpolator-frame.js +32 -0
  165. package/lib/commonjs/providers/screen/styles/helpers/select-interpolator-frame.js.map +1 -0
  166. package/lib/commonjs/providers/screen/styles/helpers/transition-visual-state.js +42 -0
  167. package/lib/commonjs/providers/screen/styles/helpers/transition-visual-state.js.map +1 -0
  168. package/lib/commonjs/providers/screen/styles/helpers/visibility-gate.js +25 -6
  169. package/lib/commonjs/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  170. package/lib/commonjs/providers/screen/styles/hooks/use-interpolated-style-maps.js +87 -50
  171. package/lib/commonjs/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  172. package/lib/commonjs/providers/screen/styles/hooks/use-maybe-block-visibility.js +11 -11
  173. package/lib/commonjs/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  174. package/lib/commonjs/providers/screen/styles/index.js +0 -6
  175. package/lib/commonjs/providers/screen/styles/index.js.map +1 -1
  176. package/lib/commonjs/providers/screen/styles/slot.provider.js +23 -19
  177. package/lib/commonjs/providers/screen/styles/slot.provider.js.map +1 -1
  178. package/lib/commonjs/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +3 -11
  179. package/lib/commonjs/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
  180. package/lib/commonjs/providers/stack/blank-stack.provider.js +53 -49
  181. package/lib/commonjs/providers/stack/blank-stack.provider.js.map +1 -1
  182. package/lib/commonjs/providers/stack/core.provider.js +24 -45
  183. package/lib/commonjs/providers/stack/core.provider.js.map +1 -1
  184. package/lib/commonjs/providers/stack/direct.provider.js +46 -40
  185. package/lib/commonjs/providers/stack/direct.provider.js.map +1 -1
  186. package/lib/commonjs/stores/animation.store.js +19 -1
  187. package/lib/commonjs/stores/animation.store.js.map +1 -1
  188. package/lib/commonjs/stores/bounds/internals/links.js +4 -4
  189. package/lib/commonjs/stores/bounds/internals/links.js.map +1 -1
  190. package/lib/commonjs/stores/scroll.store.js +20 -2
  191. package/lib/commonjs/stores/scroll.store.js.map +1 -1
  192. package/lib/commonjs/stores/system.store.js +2 -0
  193. package/lib/commonjs/stores/system.store.js.map +1 -1
  194. package/lib/commonjs/types/stack.types.js.map +1 -1
  195. package/lib/commonjs/utils/animation/animate-to-progress.js +35 -12
  196. package/lib/commonjs/utils/animation/animate-to-progress.js.map +1 -1
  197. package/lib/commonjs/utils/animation/animate.js +14 -2
  198. package/lib/commonjs/utils/animation/animate.js.map +1 -1
  199. package/lib/commonjs/utils/animation/spring/spring.js +22 -2
  200. package/lib/commonjs/utils/animation/spring/spring.js.map +1 -1
  201. package/lib/commonjs/utils/animation/spring/springUtils.js +96 -0
  202. package/lib/commonjs/utils/animation/spring/springUtils.js.map +1 -1
  203. package/lib/commonjs/utils/animation/state.js +4 -0
  204. package/lib/commonjs/utils/bounds/helpers/create-bounds-accessor-core.js +6 -0
  205. package/lib/commonjs/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  206. package/lib/commonjs/utils/bounds/navigation/reveal/math.js +17 -5
  207. package/lib/commonjs/utils/bounds/navigation/reveal/math.js.map +1 -1
  208. package/lib/commonjs/utils/bounds/navigation/zoom/build.js +44 -20
  209. package/lib/commonjs/utils/bounds/navigation/zoom/build.js.map +1 -1
  210. package/lib/commonjs/utils/bounds/navigation/zoom/drag.js +2 -31
  211. package/lib/commonjs/utils/bounds/navigation/zoom/drag.js.map +1 -1
  212. package/lib/commonjs/utils/bounds/navigation/zoom/helpers.js +3 -17
  213. package/lib/commonjs/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  214. package/lib/commonjs/utils/create-provider.js +61 -75
  215. package/lib/commonjs/utils/create-provider.js.map +1 -1
  216. package/lib/module/adapters/with-screen-transitions/context.js +3 -0
  217. package/lib/module/adapters/with-screen-transitions/context.js.map +1 -1
  218. package/lib/module/adapters/with-screen-transitions/stack-layout.js +14 -8
  219. package/lib/module/adapters/with-screen-transitions/stack-layout.js.map +1 -1
  220. package/lib/module/animation/snap-to.js +3 -0
  221. package/lib/module/animation/snap-to.js.map +1 -1
  222. package/lib/module/components/activity/variants/activity-screen.js +26 -10
  223. package/lib/module/components/activity/variants/activity-screen.js.map +1 -1
  224. package/lib/module/components/boundary/components/boundary-target.js +20 -21
  225. package/lib/module/components/boundary/components/boundary-target.js.map +1 -1
  226. package/lib/module/components/boundary/create-boundary-component.js +17 -3
  227. package/lib/module/components/boundary/create-boundary-component.js.map +1 -1
  228. package/lib/module/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +19 -7
  229. package/lib/module/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
  230. package/lib/module/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -7
  231. package/lib/module/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
  232. package/lib/module/components/boundary/hooks/use-boundary-measurement.js +1 -3
  233. package/lib/module/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
  234. package/lib/module/components/boundary/hooks/use-measurer.js +7 -14
  235. package/lib/module/components/boundary/hooks/use-measurer.js.map +1 -1
  236. package/lib/module/components/boundary/index.js +3 -2
  237. package/lib/module/components/boundary/index.js.map +1 -1
  238. package/lib/module/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +60 -0
  239. package/lib/module/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -0
  240. package/lib/module/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +58 -192
  241. package/lib/module/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  242. package/lib/module/components/boundary/portal/components/boundary-content-portal/index.js +21 -13
  243. package/lib/module/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
  244. package/lib/module/components/boundary/portal/components/boundary-portal/components/host.js +4 -15
  245. package/lib/module/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  246. package/lib/module/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +43 -36
  247. package/lib/module/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
  248. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +25 -0
  249. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +1 -0
  250. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +3 -4
  251. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -1
  252. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js +70 -0
  253. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -0
  254. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +47 -147
  255. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  256. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js +13 -22
  257. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -1
  258. package/lib/module/components/boundary/portal/components/boundary-portal/index.js +44 -9
  259. package/lib/module/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
  260. package/lib/module/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -1
  261. package/lib/module/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +1 -27
  262. package/lib/module/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -1
  263. package/lib/module/components/boundary/portal/utils/naming.js +6 -0
  264. package/lib/module/components/boundary/portal/utils/naming.js.map +1 -1
  265. package/lib/module/components/boundary/portal/utils/resolve-portal.js +19 -15
  266. package/lib/module/components/boundary/portal/utils/resolve-portal.js.map +1 -1
  267. package/lib/module/components/boundary/portal/utils/teleport-control.js +0 -8
  268. package/lib/module/components/boundary/portal/utils/teleport-control.js.map +1 -1
  269. package/lib/module/components/boundary/providers/boundary-root.provider.js +22 -40
  270. package/lib/module/components/boundary/providers/boundary-root.provider.js.map +1 -1
  271. package/lib/module/components/boundary/utils/measured-bounds.js +17 -28
  272. package/lib/module/components/boundary/utils/measured-bounds.js.map +1 -1
  273. package/lib/module/components/boundary/utils/refresh-signals.js +14 -13
  274. package/lib/module/components/boundary/utils/refresh-signals.js.map +1 -1
  275. package/lib/module/components/boundary/utils/resolve-boundary-target.js +24 -0
  276. package/lib/module/components/boundary/utils/resolve-boundary-target.js.map +1 -0
  277. package/lib/module/components/create-transition-aware-component.js +10 -31
  278. package/lib/module/components/create-transition-aware-component.js.map +1 -1
  279. package/lib/module/components/masked-view.js +10 -2
  280. package/lib/module/components/masked-view.js.map +1 -1
  281. package/lib/module/components/screen-container/hooks/use-backdrop-pointer-events.js +8 -12
  282. package/lib/module/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
  283. package/lib/module/components/screen-container/hooks/use-content-layout.js +4 -9
  284. package/lib/module/components/screen-container/hooks/use-content-layout.js.map +1 -1
  285. package/lib/module/components/screen-container/layers/backdrop.js +10 -11
  286. package/lib/module/components/screen-container/layers/backdrop.js.map +1 -1
  287. package/lib/module/components/screen-container/layers/content.js +12 -18
  288. package/lib/module/components/screen-container/layers/content.js.map +1 -1
  289. package/lib/module/components/screen-container/layers/maybe-masked-navigation-container.js +10 -2
  290. package/lib/module/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  291. package/lib/module/components/screen-container/layers/surface-container.js +2 -6
  292. package/lib/module/components/screen-container/layers/surface-container.js.map +1 -1
  293. package/lib/module/components/screen-lifecycle/hooks/use-close-transition-intent.js +13 -15
  294. package/lib/module/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  295. package/lib/module/components/screen-lifecycle/hooks/use-open-transition-intent.js +3 -4
  296. package/lib/module/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
  297. package/lib/module/components/screen-lifecycle/hooks/use-transition-start-controller.js +7 -1
  298. package/lib/module/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  299. package/lib/module/components/screen-lifecycle/index.js +3 -5
  300. package/lib/module/components/screen-lifecycle/index.js.map +1 -1
  301. package/lib/module/components/stack-view.js +71 -37
  302. package/lib/module/components/stack-view.js.map +1 -1
  303. package/lib/module/configs/presets.js +10 -10
  304. package/lib/module/configs/presets.js.map +1 -1
  305. package/lib/module/constants.js +1 -0
  306. package/lib/module/constants.js.map +1 -1
  307. package/lib/module/hooks/navigation/use-navigation-helpers.js +9 -8
  308. package/lib/module/hooks/navigation/use-navigation-helpers.js.map +1 -1
  309. package/lib/module/hooks/navigation/use-screen-state.js +2 -4
  310. package/lib/module/hooks/navigation/use-screen-state.js.map +1 -1
  311. package/lib/module/navigators/react-navigation/index.js +4 -6
  312. package/lib/module/navigators/react-navigation/index.js.map +1 -1
  313. package/lib/module/providers/helpers/measured-bounds-writes.js +4 -1
  314. package/lib/module/providers/helpers/measured-bounds-writes.js.map +1 -1
  315. package/lib/module/providers/screen/animation/animation.provider.js +6 -5
  316. package/lib/module/providers/screen/animation/animation.provider.js.map +1 -1
  317. package/lib/module/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js +2 -4
  318. package/lib/module/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -1
  319. package/lib/module/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +2 -2
  320. package/lib/module/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  321. package/lib/module/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -10
  322. package/lib/module/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  323. package/lib/module/providers/screen/animation/helpers/pipeline.js +6 -8
  324. package/lib/module/providers/screen/animation/helpers/pipeline.js.map +1 -1
  325. package/lib/module/providers/screen/animation/index.js +1 -1
  326. package/lib/module/providers/screen/animation/index.js.map +1 -1
  327. package/lib/module/providers/screen/animation/use-screen-animation.js +2 -2
  328. package/lib/module/providers/screen/animation/use-screen-animation.js.map +1 -1
  329. package/lib/module/providers/screen/descriptors/descriptors.provider.js +34 -40
  330. package/lib/module/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  331. package/lib/module/providers/screen/descriptors/index.js +1 -1
  332. package/lib/module/providers/screen/descriptors/index.js.map +1 -1
  333. package/lib/module/providers/screen/gestures/gestures.provider.js +8 -14
  334. package/lib/module/providers/screen/gestures/gestures.provider.js.map +1 -1
  335. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture-config.js +5 -11
  336. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
  337. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture.js +2 -2
  338. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
  339. package/lib/module/providers/screen/gestures/hooks/use-stable-runtime-config.js +2 -4
  340. package/lib/module/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
  341. package/lib/module/providers/screen/gestures/index.js +1 -1
  342. package/lib/module/providers/screen/gestures/index.js.map +1 -1
  343. package/lib/module/providers/screen/gestures/ownership/shadowing-claims.js +2 -2
  344. package/lib/module/providers/screen/gestures/ownership/shadowing-claims.js.map +1 -1
  345. package/lib/module/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +10 -13
  346. package/lib/module/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
  347. package/lib/module/providers/screen/gestures/pan/activation/use-pan-activation.js +3 -5
  348. package/lib/module/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  349. package/lib/module/providers/screen/gestures/pan/behavior/pan-lifecycle.js +7 -9
  350. package/lib/module/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  351. package/lib/module/providers/screen/gestures/pan/behavior/pan-reset.js +10 -0
  352. package/lib/module/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
  353. package/lib/module/providers/screen/gestures/pan/use-build-pan-gesture.js +2 -2
  354. package/lib/module/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  355. package/lib/module/providers/screen/gestures/pinch/activation/use-pinch-activation.js +35 -2
  356. package/lib/module/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  357. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +10 -7
  358. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  359. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-release.js +3 -2
  360. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
  361. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-reset.js +7 -0
  362. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
  363. package/lib/module/providers/screen/gestures/pinch/use-build-pinch-gesture.js +2 -2
  364. package/lib/module/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
  365. package/lib/module/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +3 -3
  366. package/lib/module/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -1
  367. package/lib/module/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +4 -4
  368. package/lib/module/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  369. package/lib/module/providers/screen/gestures/types.js.map +1 -1
  370. package/lib/module/providers/screen/options/index.js +1 -1
  371. package/lib/module/providers/screen/options/index.js.map +1 -1
  372. package/lib/module/providers/screen/options/options.provider.js +3 -7
  373. package/lib/module/providers/screen/options/options.provider.js.map +1 -1
  374. package/lib/module/providers/screen/screen-composer.js +2 -0
  375. package/lib/module/providers/screen/screen-composer.js.map +1 -1
  376. package/lib/module/providers/screen/styles/constants.js +8 -3
  377. package/lib/module/providers/screen/styles/constants.js.map +1 -1
  378. package/lib/module/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js +88 -0
  379. package/lib/module/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js.map +1 -0
  380. package/lib/module/providers/screen/styles/helpers/resolve-slot-styles/index.js +49 -6
  381. package/lib/module/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  382. package/lib/module/providers/screen/styles/helpers/select-interpolator-frame.js +27 -0
  383. package/lib/module/providers/screen/styles/helpers/select-interpolator-frame.js.map +1 -0
  384. package/lib/module/providers/screen/styles/helpers/transition-visual-state.js +35 -0
  385. package/lib/module/providers/screen/styles/helpers/transition-visual-state.js.map +1 -0
  386. package/lib/module/providers/screen/styles/helpers/visibility-gate.js +23 -5
  387. package/lib/module/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  388. package/lib/module/providers/screen/styles/hooks/use-interpolated-style-maps.js +90 -53
  389. package/lib/module/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  390. package/lib/module/providers/screen/styles/hooks/use-maybe-block-visibility.js +12 -12
  391. package/lib/module/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  392. package/lib/module/providers/screen/styles/index.js +1 -1
  393. package/lib/module/providers/screen/styles/index.js.map +1 -1
  394. package/lib/module/providers/screen/styles/slot.provider.js +23 -18
  395. package/lib/module/providers/screen/styles/slot.provider.js.map +1 -1
  396. package/lib/module/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +3 -11
  397. package/lib/module/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
  398. package/lib/module/providers/stack/blank-stack.provider.js +50 -47
  399. package/lib/module/providers/stack/blank-stack.provider.js.map +1 -1
  400. package/lib/module/providers/stack/core.provider.js +22 -43
  401. package/lib/module/providers/stack/core.provider.js.map +1 -1
  402. package/lib/module/providers/stack/direct.provider.js +44 -41
  403. package/lib/module/providers/stack/direct.provider.js.map +1 -1
  404. package/lib/module/stores/animation.store.js +17 -0
  405. package/lib/module/stores/animation.store.js.map +1 -1
  406. package/lib/module/stores/bounds/internals/links.js +4 -4
  407. package/lib/module/stores/bounds/internals/links.js.map +1 -1
  408. package/lib/module/stores/scroll.store.js +17 -0
  409. package/lib/module/stores/scroll.store.js.map +1 -1
  410. package/lib/module/stores/system.store.js +2 -0
  411. package/lib/module/stores/system.store.js.map +1 -1
  412. package/lib/module/types/stack.types.js.map +1 -1
  413. package/lib/module/utils/animation/animate-to-progress.js +33 -11
  414. package/lib/module/utils/animation/animate-to-progress.js.map +1 -1
  415. package/lib/module/utils/animation/animate.js +14 -2
  416. package/lib/module/utils/animation/animate.js.map +1 -1
  417. package/lib/module/utils/animation/spring/spring.js +23 -3
  418. package/lib/module/utils/animation/spring/spring.js.map +1 -1
  419. package/lib/module/utils/animation/spring/springUtils.js +95 -0
  420. package/lib/module/utils/animation/spring/springUtils.js.map +1 -1
  421. package/lib/module/utils/animation/state.js +2 -0
  422. package/lib/module/utils/bounds/helpers/create-bounds-accessor-core.js +6 -0
  423. package/lib/module/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  424. package/lib/module/utils/bounds/navigation/reveal/math.js +16 -5
  425. package/lib/module/utils/bounds/navigation/reveal/math.js.map +1 -1
  426. package/lib/module/utils/bounds/navigation/zoom/build.js +46 -22
  427. package/lib/module/utils/bounds/navigation/zoom/build.js.map +1 -1
  428. package/lib/module/utils/bounds/navigation/zoom/drag.js +2 -30
  429. package/lib/module/utils/bounds/navigation/zoom/drag.js.map +1 -1
  430. package/lib/module/utils/bounds/navigation/zoom/helpers.js +4 -18
  431. package/lib/module/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  432. package/lib/module/utils/create-provider.js +62 -76
  433. package/lib/module/utils/create-provider.js.map +1 -1
  434. package/lib/typescript/adapters/with-screen-transitions/context.d.ts +2 -0
  435. package/lib/typescript/adapters/with-screen-transitions/context.d.ts.map +1 -1
  436. package/lib/typescript/adapters/with-screen-transitions/stack-layout.d.ts +1 -1
  437. package/lib/typescript/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -1
  438. package/lib/typescript/animation/snap-to.d.ts.map +1 -1
  439. package/lib/typescript/components/activity/variants/activity-screen.d.ts +3 -2
  440. package/lib/typescript/components/activity/variants/activity-screen.d.ts.map +1 -1
  441. package/lib/typescript/components/boundary/components/boundary-target.d.ts +2 -1
  442. package/lib/typescript/components/boundary/components/boundary-target.d.ts.map +1 -1
  443. package/lib/typescript/components/boundary/create-boundary-component.d.ts.map +1 -1
  444. package/lib/typescript/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts.map +1 -1
  445. package/lib/typescript/components/boundary/hooks/lifecycles/use-refresh-boundary.d.ts.map +1 -1
  446. package/lib/typescript/components/boundary/hooks/use-boundary-measurement.d.ts +3 -4
  447. package/lib/typescript/components/boundary/hooks/use-boundary-measurement.d.ts.map +1 -1
  448. package/lib/typescript/components/boundary/hooks/use-measurer.d.ts +1 -1
  449. package/lib/typescript/components/boundary/hooks/use-measurer.d.ts.map +1 -1
  450. package/lib/typescript/components/boundary/index.d.ts +6 -9
  451. package/lib/typescript/components/boundary/index.d.ts.map +1 -1
  452. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts +26 -0
  453. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts.map +1 -0
  454. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts +1 -3
  455. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts.map +1 -1
  456. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/index.d.ts.map +1 -1
  457. package/lib/typescript/components/boundary/portal/components/boundary-portal/components/host.d.ts.map +1 -1
  458. package/lib/typescript/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.d.ts.map +1 -1
  459. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts +9 -0
  460. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts.map +1 -0
  461. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts +1 -10
  462. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts.map +1 -1
  463. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.d.ts +17 -0
  464. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.d.ts.map +1 -0
  465. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts +1 -3
  466. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts.map +1 -1
  467. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.d.ts +0 -1
  468. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.d.ts.map +1 -1
  469. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-placeholder-styles.d.ts +2 -2
  470. package/lib/typescript/components/boundary/portal/components/boundary-portal/index.d.ts +2 -2
  471. package/lib/typescript/components/boundary/portal/components/boundary-portal/index.d.ts.map +1 -1
  472. package/lib/typescript/components/boundary/portal/components/boundary-portal/stores/host-registry.store.d.ts +0 -1
  473. package/lib/typescript/components/boundary/portal/components/boundary-portal/stores/host-registry.store.d.ts.map +1 -1
  474. package/lib/typescript/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.d.ts +1 -10
  475. package/lib/typescript/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.d.ts.map +1 -1
  476. package/lib/typescript/components/boundary/portal/utils/naming.d.ts +1 -0
  477. package/lib/typescript/components/boundary/portal/utils/naming.d.ts.map +1 -1
  478. package/lib/typescript/components/boundary/portal/utils/resolve-portal.d.ts +2 -3
  479. package/lib/typescript/components/boundary/portal/utils/resolve-portal.d.ts.map +1 -1
  480. package/lib/typescript/components/boundary/portal/utils/teleport-control.d.ts +0 -4
  481. package/lib/typescript/components/boundary/portal/utils/teleport-control.d.ts.map +1 -1
  482. package/lib/typescript/components/boundary/providers/boundary-root.provider.d.ts +8 -12
  483. package/lib/typescript/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
  484. package/lib/typescript/components/boundary/utils/measured-bounds.d.ts +1 -3
  485. package/lib/typescript/components/boundary/utils/measured-bounds.d.ts.map +1 -1
  486. package/lib/typescript/components/boundary/utils/refresh-signals.d.ts +0 -3
  487. package/lib/typescript/components/boundary/utils/refresh-signals.d.ts.map +1 -1
  488. package/lib/typescript/components/boundary/utils/resolve-boundary-target.d.ts +12 -0
  489. package/lib/typescript/components/boundary/utils/resolve-boundary-target.d.ts.map +1 -0
  490. package/lib/typescript/components/create-transition-aware-component.d.ts +5 -8
  491. package/lib/typescript/components/create-transition-aware-component.d.ts.map +1 -1
  492. package/lib/typescript/components/masked-view.d.ts.map +1 -1
  493. package/lib/typescript/components/screen-container/hooks/use-backdrop-pointer-events.d.ts.map +1 -1
  494. package/lib/typescript/components/screen-container/hooks/use-content-layout.d.ts.map +1 -1
  495. package/lib/typescript/components/screen-container/layers/backdrop.d.ts.map +1 -1
  496. package/lib/typescript/components/screen-container/layers/content.d.ts.map +1 -1
  497. package/lib/typescript/components/screen-container/layers/maybe-masked-navigation-container.d.ts.map +1 -1
  498. package/lib/typescript/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts.map +1 -1
  499. package/lib/typescript/components/screen-lifecycle/hooks/use-open-transition-intent.d.ts.map +1 -1
  500. package/lib/typescript/components/screen-lifecycle/hooks/use-transition-start-controller.d.ts.map +1 -1
  501. package/lib/typescript/components/screen-lifecycle/index.d.ts.map +1 -1
  502. package/lib/typescript/components/stack-view.d.ts +5 -1
  503. package/lib/typescript/components/stack-view.d.ts.map +1 -1
  504. package/lib/typescript/configs/index.d.ts +6 -6
  505. package/lib/typescript/configs/presets.d.ts +6 -6
  506. package/lib/typescript/configs/presets.d.ts.map +1 -1
  507. package/lib/typescript/constants.d.ts.map +1 -1
  508. package/lib/typescript/hooks/navigation/use-navigation-helpers.d.ts.map +1 -1
  509. package/lib/typescript/hooks/navigation/use-screen-state.d.ts.map +1 -1
  510. package/lib/typescript/index.d.ts +660 -720
  511. package/lib/typescript/index.d.ts.map +1 -1
  512. package/lib/typescript/navigators/react-navigation/index.d.ts +6 -17
  513. package/lib/typescript/navigators/react-navigation/index.d.ts.map +1 -1
  514. package/lib/typescript/providers/helpers/measured-bounds-writes.d.ts.map +1 -1
  515. package/lib/typescript/providers/screen/animation/animation.provider.d.ts +4 -1
  516. package/lib/typescript/providers/screen/animation/animation.provider.d.ts.map +1 -1
  517. package/lib/typescript/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.d.ts.map +1 -1
  518. package/lib/typescript/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
  519. package/lib/typescript/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
  520. package/lib/typescript/providers/screen/animation/index.d.ts +1 -1
  521. package/lib/typescript/providers/screen/animation/index.d.ts.map +1 -1
  522. package/lib/typescript/providers/screen/descriptors/descriptors.provider.d.ts +10 -11
  523. package/lib/typescript/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
  524. package/lib/typescript/providers/screen/descriptors/index.d.ts +1 -1
  525. package/lib/typescript/providers/screen/descriptors/index.d.ts.map +1 -1
  526. package/lib/typescript/providers/screen/gestures/gestures.provider.d.ts +4 -1
  527. package/lib/typescript/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
  528. package/lib/typescript/providers/screen/gestures/hooks/use-screen-gesture-config.d.ts.map +1 -1
  529. package/lib/typescript/providers/screen/gestures/hooks/use-stable-runtime-config.d.ts.map +1 -1
  530. package/lib/typescript/providers/screen/gestures/index.d.ts +1 -1
  531. package/lib/typescript/providers/screen/gestures/index.d.ts.map +1 -1
  532. package/lib/typescript/providers/screen/gestures/ownership/shadowing-claims.d.ts +2 -3
  533. package/lib/typescript/providers/screen/gestures/ownership/shadowing-claims.d.ts.map +1 -1
  534. package/lib/typescript/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.d.ts.map +1 -1
  535. package/lib/typescript/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -1
  536. package/lib/typescript/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts.map +1 -1
  537. package/lib/typescript/providers/screen/gestures/pan/behavior/pan-reset.d.ts +4 -1
  538. package/lib/typescript/providers/screen/gestures/pan/behavior/pan-reset.d.ts.map +1 -1
  539. package/lib/typescript/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts +2 -1
  540. package/lib/typescript/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts.map +1 -1
  541. package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -1
  542. package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-release.d.ts.map +1 -1
  543. package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts +3 -1
  544. package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts.map +1 -1
  545. package/lib/typescript/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts +1 -1
  546. package/lib/typescript/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts.map +1 -1
  547. package/lib/typescript/providers/screen/gestures/types.d.ts +1 -9
  548. package/lib/typescript/providers/screen/gestures/types.d.ts.map +1 -1
  549. package/lib/typescript/providers/screen/options/index.d.ts +1 -1
  550. package/lib/typescript/providers/screen/options/index.d.ts.map +1 -1
  551. package/lib/typescript/providers/screen/options/options.provider.d.ts +4 -1
  552. package/lib/typescript/providers/screen/options/options.provider.d.ts.map +1 -1
  553. package/lib/typescript/providers/screen/screen-composer.d.ts +3 -2
  554. package/lib/typescript/providers/screen/screen-composer.d.ts.map +1 -1
  555. package/lib/typescript/providers/screen/styles/constants.d.ts +1 -0
  556. package/lib/typescript/providers/screen/styles/constants.d.ts.map +1 -1
  557. package/lib/typescript/providers/screen/styles/helpers/resolve-interpolator-style-handoff.d.ts +12 -0
  558. package/lib/typescript/providers/screen/styles/helpers/resolve-interpolator-style-handoff.d.ts.map +1 -0
  559. package/lib/typescript/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts +5 -3
  560. package/lib/typescript/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts.map +1 -1
  561. package/lib/typescript/providers/screen/styles/helpers/select-interpolator-frame.d.ts +4 -0
  562. package/lib/typescript/providers/screen/styles/helpers/select-interpolator-frame.d.ts.map +1 -0
  563. package/lib/typescript/providers/screen/styles/helpers/transition-visual-state.d.ts +18 -0
  564. package/lib/typescript/providers/screen/styles/helpers/transition-visual-state.d.ts.map +1 -0
  565. package/lib/typescript/providers/screen/styles/helpers/visibility-gate.d.ts +12 -2
  566. package/lib/typescript/providers/screen/styles/helpers/visibility-gate.d.ts.map +1 -1
  567. package/lib/typescript/providers/screen/styles/hooks/slot-resolvers.d.ts +4 -4
  568. package/lib/typescript/providers/screen/styles/hooks/slot-resolvers.d.ts.map +1 -1
  569. package/lib/typescript/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts +10 -5
  570. package/lib/typescript/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts.map +1 -1
  571. package/lib/typescript/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +3 -3
  572. package/lib/typescript/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  573. package/lib/typescript/providers/screen/styles/index.d.ts +1 -1
  574. package/lib/typescript/providers/screen/styles/index.d.ts.map +1 -1
  575. package/lib/typescript/providers/screen/styles/slot.provider.d.ts +4 -1
  576. package/lib/typescript/providers/screen/styles/slot.provider.d.ts.map +1 -1
  577. package/lib/typescript/providers/stack/blank-stack-state/helpers/build-blank-stack-state.d.ts.map +1 -1
  578. package/lib/typescript/providers/stack/blank-stack.provider.d.ts +12 -6
  579. package/lib/typescript/providers/stack/blank-stack.provider.d.ts.map +1 -1
  580. package/lib/typescript/providers/stack/core.provider.d.ts +10 -8
  581. package/lib/typescript/providers/stack/core.provider.d.ts.map +1 -1
  582. package/lib/typescript/providers/stack/direct.provider.d.ts +11 -4
  583. package/lib/typescript/providers/stack/direct.provider.d.ts.map +1 -1
  584. package/lib/typescript/stores/animation.store.d.ts +1 -0
  585. package/lib/typescript/stores/animation.store.d.ts.map +1 -1
  586. package/lib/typescript/stores/bounds/internals/links.d.ts +1 -1
  587. package/lib/typescript/stores/bounds/internals/links.d.ts.map +1 -1
  588. package/lib/typescript/stores/scroll.store.d.ts +7 -0
  589. package/lib/typescript/stores/scroll.store.d.ts.map +1 -1
  590. package/lib/typescript/stores/system.store.d.ts +5 -0
  591. package/lib/typescript/stores/system.store.d.ts.map +1 -1
  592. package/lib/typescript/types/blank-stack.types.d.ts +1 -4
  593. package/lib/typescript/types/blank-stack.types.d.ts.map +1 -1
  594. package/lib/typescript/types/gesture.types.d.ts +11 -0
  595. package/lib/typescript/types/gesture.types.d.ts.map +1 -1
  596. package/lib/typescript/types/providers/blank-stack-provider.types.d.ts +12 -20
  597. package/lib/typescript/types/providers/blank-stack-provider.types.d.ts.map +1 -1
  598. package/lib/typescript/types/providers/direct-stack.types.d.ts +2 -1
  599. package/lib/typescript/types/providers/direct-stack.types.d.ts.map +1 -1
  600. package/lib/typescript/types/screen.types.d.ts +0 -30
  601. package/lib/typescript/types/screen.types.d.ts.map +1 -1
  602. package/lib/typescript/types/stack.types.d.ts +2 -4
  603. package/lib/typescript/types/stack.types.d.ts.map +1 -1
  604. package/lib/typescript/utils/animation/animate-to-progress.d.ts +8 -2
  605. package/lib/typescript/utils/animation/animate-to-progress.d.ts.map +1 -1
  606. package/lib/typescript/utils/animation/animate.d.ts +2 -2
  607. package/lib/typescript/utils/animation/animate.d.ts.map +1 -1
  608. package/lib/typescript/utils/animation/spring/spring.d.ts +2 -2
  609. package/lib/typescript/utils/animation/spring/spring.d.ts.map +1 -1
  610. package/lib/typescript/utils/animation/spring/springUtils.d.ts +3 -0
  611. package/lib/typescript/utils/animation/spring/springUtils.d.ts.map +1 -1
  612. package/lib/typescript/utils/animation/state.d.ts +6 -0
  613. package/lib/typescript/utils/animation/state.d.ts.map +1 -1
  614. package/lib/typescript/utils/bounds/helpers/create-bounds-accessor-core.d.ts.map +1 -1
  615. package/lib/typescript/utils/bounds/navigation/reveal/math.d.ts +9 -0
  616. package/lib/typescript/utils/bounds/navigation/reveal/math.d.ts.map +1 -1
  617. package/lib/typescript/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  618. package/lib/typescript/utils/bounds/navigation/zoom/drag.d.ts +2 -11
  619. package/lib/typescript/utils/bounds/navigation/zoom/drag.d.ts.map +1 -1
  620. package/lib/typescript/utils/bounds/navigation/zoom/helpers.d.ts +7 -4
  621. package/lib/typescript/utils/bounds/navigation/zoom/helpers.d.ts.map +1 -1
  622. package/lib/typescript/utils/create-provider.d.ts +17 -9
  623. package/lib/typescript/utils/create-provider.d.ts.map +1 -1
  624. package/package.json +1 -1
  625. package/src/adapters/with-screen-transitions/context.tsx +5 -0
  626. package/src/adapters/with-screen-transitions/stack-layout.tsx +20 -7
  627. package/src/animation/snap-to.ts +6 -0
  628. package/src/components/activity/variants/activity-screen.tsx +46 -13
  629. package/src/components/boundary/components/boundary-target.tsx +38 -24
  630. package/src/components/boundary/create-boundary-component.tsx +29 -3
  631. package/src/components/boundary/hooks/lifecycles/use-initial-destination-measurement.ts +28 -14
  632. package/src/components/boundary/hooks/lifecycles/use-refresh-boundary.ts +7 -13
  633. package/src/components/boundary/hooks/use-boundary-measurement.ts +3 -9
  634. package/src/components/boundary/hooks/use-measurer.ts +7 -16
  635. package/src/components/boundary/index.tsx +4 -8
  636. package/src/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.ts +103 -0
  637. package/src/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +94 -272
  638. package/src/components/boundary/portal/components/boundary-content-portal/index.tsx +31 -12
  639. package/src/components/boundary/portal/components/boundary-portal/components/host.tsx +14 -26
  640. package/src/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.tsx +64 -62
  641. package/src/components/boundary/portal/components/boundary-portal/helpers/active-pair.ts +36 -0
  642. package/src/components/boundary/portal/components/boundary-portal/helpers/offset-style.ts +2 -9
  643. package/src/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.ts +114 -0
  644. package/src/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +58 -209
  645. package/src/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.ts +13 -20
  646. package/src/components/boundary/portal/components/boundary-portal/index.tsx +72 -12
  647. package/src/components/boundary/portal/components/boundary-portal/stores/host-registry.store.ts +0 -1
  648. package/src/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.ts +2 -39
  649. package/src/components/boundary/portal/utils/naming.ts +11 -0
  650. package/src/components/boundary/portal/utils/resolve-portal.ts +26 -18
  651. package/src/components/boundary/portal/utils/teleport-control.ts +0 -12
  652. package/src/components/boundary/providers/boundary-root.provider.tsx +36 -91
  653. package/src/components/boundary/utils/measured-bounds.ts +29 -32
  654. package/src/components/boundary/utils/refresh-signals.ts +23 -18
  655. package/src/components/boundary/utils/resolve-boundary-target.tsx +39 -0
  656. package/src/components/create-transition-aware-component.tsx +11 -36
  657. package/src/components/masked-view.tsx +20 -4
  658. package/src/components/screen-container/hooks/use-backdrop-pointer-events.ts +10 -8
  659. package/src/components/screen-container/hooks/use-content-layout.ts +10 -10
  660. package/src/components/screen-container/layers/backdrop.tsx +23 -10
  661. package/src/components/screen-container/layers/content.tsx +20 -21
  662. package/src/components/screen-container/layers/maybe-masked-navigation-container.tsx +14 -4
  663. package/src/components/screen-container/layers/surface-container.tsx +4 -4
  664. package/src/components/screen-lifecycle/hooks/use-close-transition-intent.ts +19 -9
  665. package/src/components/screen-lifecycle/hooks/use-open-transition-intent.ts +5 -2
  666. package/src/components/screen-lifecycle/hooks/use-transition-start-controller.ts +8 -0
  667. package/src/components/screen-lifecycle/index.tsx +3 -2
  668. package/src/components/stack-view.tsx +117 -56
  669. package/src/configs/presets.ts +13 -13
  670. package/src/constants.ts +1 -0
  671. package/src/hooks/navigation/use-navigation-helpers.ts +9 -8
  672. package/src/hooks/navigation/use-screen-state.ts +4 -2
  673. package/src/navigators/react-navigation/index.tsx +4 -48
  674. package/src/providers/helpers/measured-bounds-writes.ts +1 -0
  675. package/src/providers/screen/animation/animation.provider.tsx +170 -173
  676. package/src/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.tsx +4 -2
  677. package/src/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +2 -2
  678. package/src/providers/screen/animation/helpers/hydrate-transition-state/index.ts +4 -21
  679. package/src/providers/screen/animation/helpers/pipeline.ts +6 -10
  680. package/src/providers/screen/animation/index.tsx +1 -1
  681. package/src/providers/screen/animation/use-screen-animation.tsx +2 -2
  682. package/src/providers/screen/descriptors/descriptors.provider.tsx +83 -72
  683. package/src/providers/screen/descriptors/index.tsx +0 -2
  684. package/src/providers/screen/gestures/gestures.provider.tsx +71 -70
  685. package/src/providers/screen/gestures/hooks/use-screen-gesture-config.ts +7 -8
  686. package/src/providers/screen/gestures/hooks/use-screen-gesture.ts +2 -2
  687. package/src/providers/screen/gestures/hooks/use-stable-runtime-config.ts +4 -2
  688. package/src/providers/screen/gestures/index.tsx +1 -1
  689. package/src/providers/screen/gestures/ownership/shadowing-claims.ts +3 -4
  690. package/src/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.ts +16 -8
  691. package/src/providers/screen/gestures/pan/activation/use-pan-activation.ts +7 -2
  692. package/src/providers/screen/gestures/pan/behavior/pan-lifecycle.ts +9 -16
  693. package/src/providers/screen/gestures/pan/behavior/pan-reset.ts +14 -0
  694. package/src/providers/screen/gestures/pan/use-build-pan-gesture.ts +2 -2
  695. package/src/providers/screen/gestures/pinch/activation/use-pinch-activation.ts +74 -3
  696. package/src/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +13 -11
  697. package/src/providers/screen/gestures/pinch/behavior/pinch-release.ts +2 -4
  698. package/src/providers/screen/gestures/pinch/behavior/pinch-reset.ts +10 -0
  699. package/src/providers/screen/gestures/pinch/use-build-pinch-gesture.ts +2 -2
  700. package/src/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.tsx +4 -4
  701. package/src/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.ts +4 -4
  702. package/src/providers/screen/gestures/types.ts +0 -14
  703. package/src/providers/screen/options/index.ts +1 -1
  704. package/src/providers/screen/options/options.provider.tsx +24 -28
  705. package/src/providers/screen/screen-composer.tsx +9 -2
  706. package/src/providers/screen/styles/constants.ts +8 -6
  707. package/src/providers/screen/styles/helpers/resolve-interpolator-style-handoff.ts +138 -0
  708. package/src/providers/screen/styles/helpers/resolve-slot-styles/index.ts +71 -4
  709. package/src/providers/screen/styles/helpers/select-interpolator-frame.ts +41 -0
  710. package/src/providers/screen/styles/helpers/transition-visual-state.ts +44 -0
  711. package/src/providers/screen/styles/helpers/visibility-gate.ts +42 -7
  712. package/src/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +129 -70
  713. package/src/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +18 -15
  714. package/src/providers/screen/styles/index.tsx +0 -1
  715. package/src/providers/screen/styles/slot.provider.tsx +62 -48
  716. package/src/providers/stack/blank-stack-state/helpers/build-blank-stack-state.ts +4 -17
  717. package/src/providers/stack/blank-stack.provider.tsx +66 -75
  718. package/src/providers/stack/core.provider.tsx +53 -79
  719. package/src/providers/stack/direct.provider.tsx +76 -57
  720. package/src/stores/animation.store.ts +19 -0
  721. package/src/stores/bounds/internals/links.ts +13 -2
  722. package/src/stores/scroll.store.ts +23 -0
  723. package/src/stores/system.store.ts +8 -0
  724. package/src/types/blank-stack.types.ts +1 -4
  725. package/src/types/gesture.types.ts +11 -0
  726. package/src/types/providers/blank-stack-provider.types.ts +8 -22
  727. package/src/types/providers/direct-stack.types.ts +2 -1
  728. package/src/types/screen.types.ts +0 -32
  729. package/src/types/stack.types.ts +2 -4
  730. package/src/utils/animation/animate-to-progress.ts +72 -41
  731. package/src/utils/animation/animate.ts +18 -2
  732. package/src/utils/animation/spring/spring.ts +36 -1
  733. package/src/utils/animation/spring/springUtils.ts +130 -0
  734. package/src/utils/animation/state.ts +8 -0
  735. package/src/utils/bounds/helpers/create-bounds-accessor-core.ts +7 -0
  736. package/src/utils/bounds/navigation/reveal/math.ts +21 -5
  737. package/src/utils/bounds/navigation/zoom/build.ts +77 -23
  738. package/src/utils/bounds/navigation/zoom/drag.ts +3 -42
  739. package/src/utils/bounds/navigation/zoom/helpers.ts +9 -23
  740. package/src/utils/create-provider.tsx +105 -136
  741. package/lib/commonjs/components/boundary/hooks/use-register-target.js +0 -32
  742. package/lib/commonjs/components/boundary/hooks/use-register-target.js.map +0 -1
  743. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/portal-slot.js +0 -52
  744. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +0 -1
  745. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/host-name.js +0 -14
  746. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +0 -1
  747. package/lib/commonjs/components/boundary/portal/utils/ownership.js +0 -220
  748. package/lib/commonjs/components/boundary/portal/utils/ownership.js.map +0 -1
  749. package/lib/commonjs/components/boundary/portal/utils/shallow-equal.js +0 -29
  750. package/lib/commonjs/components/boundary/portal/utils/shallow-equal.js.map +0 -1
  751. package/lib/commonjs/components/boundary/portal/utils/visible-host.js +0 -25
  752. package/lib/commonjs/components/boundary/portal/utils/visible-host.js.map +0 -1
  753. package/lib/commonjs/hooks/use-stable-callback-value.js +0 -69
  754. package/lib/commonjs/hooks/use-stable-callback-value.js.map +0 -1
  755. package/lib/commonjs/providers/register-bounds.provider.js +0 -312
  756. package/lib/commonjs/providers/register-bounds.provider.js.map +0 -1
  757. package/lib/commonjs/providers/screen/gestures/rotation/activation/use-rotation-activation.js +0 -64
  758. package/lib/commonjs/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +0 -1
  759. package/lib/commonjs/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +0 -21
  760. package/lib/commonjs/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +0 -1
  761. package/lib/commonjs/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +0 -29
  762. package/lib/commonjs/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +0 -1
  763. package/lib/commonjs/providers/screen/gestures/rotation/use-build-rotation-gesture.js +0 -38
  764. package/lib/commonjs/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +0 -1
  765. package/lib/commonjs/providers/screen/origin.provider.js +0 -41
  766. package/lib/commonjs/providers/screen/origin.provider.js.map +0 -1
  767. package/lib/commonjs/providers/screen/styles/helpers/opening-phase.js +0 -32
  768. package/lib/commonjs/providers/screen/styles/helpers/opening-phase.js.map +0 -1
  769. package/lib/module/components/boundary/hooks/use-register-target.js +0 -27
  770. package/lib/module/components/boundary/hooks/use-register-target.js.map +0 -1
  771. package/lib/module/components/boundary/portal/components/boundary-portal/components/portal-slot.js +0 -47
  772. package/lib/module/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +0 -1
  773. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/host-name.js +0 -9
  774. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +0 -1
  775. package/lib/module/components/boundary/portal/utils/ownership.js +0 -213
  776. package/lib/module/components/boundary/portal/utils/ownership.js.map +0 -1
  777. package/lib/module/components/boundary/portal/utils/shallow-equal.js +0 -24
  778. package/lib/module/components/boundary/portal/utils/shallow-equal.js.map +0 -1
  779. package/lib/module/components/boundary/portal/utils/visible-host.js +0 -20
  780. package/lib/module/components/boundary/portal/utils/visible-host.js.map +0 -1
  781. package/lib/module/hooks/use-stable-callback-value.js +0 -64
  782. package/lib/module/hooks/use-stable-callback-value.js.map +0 -1
  783. package/lib/module/providers/register-bounds.provider.js +0 -308
  784. package/lib/module/providers/register-bounds.provider.js.map +0 -1
  785. package/lib/module/providers/screen/gestures/rotation/activation/use-rotation-activation.js +0 -59
  786. package/lib/module/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +0 -1
  787. package/lib/module/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +0 -15
  788. package/lib/module/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +0 -1
  789. package/lib/module/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +0 -24
  790. package/lib/module/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +0 -1
  791. package/lib/module/providers/screen/gestures/rotation/use-build-rotation-gesture.js +0 -33
  792. package/lib/module/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +0 -1
  793. package/lib/module/providers/screen/origin.provider.js +0 -33
  794. package/lib/module/providers/screen/origin.provider.js.map +0 -1
  795. package/lib/module/providers/screen/styles/helpers/opening-phase.js +0 -26
  796. package/lib/module/providers/screen/styles/helpers/opening-phase.js.map +0 -1
  797. package/lib/typescript/components/boundary/hooks/use-register-target.d.ts +0 -10
  798. package/lib/typescript/components/boundary/hooks/use-register-target.d.ts.map +0 -1
  799. package/lib/typescript/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts +0 -13
  800. package/lib/typescript/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts.map +0 -1
  801. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts +0 -2
  802. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts.map +0 -1
  803. package/lib/typescript/components/boundary/portal/utils/ownership.d.ts +0 -34
  804. package/lib/typescript/components/boundary/portal/utils/ownership.d.ts.map +0 -1
  805. package/lib/typescript/components/boundary/portal/utils/shallow-equal.d.ts +0 -8
  806. package/lib/typescript/components/boundary/portal/utils/shallow-equal.d.ts.map +0 -1
  807. package/lib/typescript/components/boundary/portal/utils/visible-host.d.ts +0 -8
  808. package/lib/typescript/components/boundary/portal/utils/visible-host.d.ts.map +0 -1
  809. package/lib/typescript/hooks/use-stable-callback-value.d.ts +0 -13
  810. package/lib/typescript/hooks/use-stable-callback-value.d.ts.map +0 -1
  811. package/lib/typescript/providers/register-bounds.provider.d.ts +0 -25
  812. package/lib/typescript/providers/register-bounds.provider.d.ts.map +0 -1
  813. package/lib/typescript/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts +0 -15
  814. package/lib/typescript/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts.map +0 -1
  815. package/lib/typescript/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts +0 -4
  816. package/lib/typescript/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts.map +0 -1
  817. package/lib/typescript/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts +0 -5
  818. package/lib/typescript/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts.map +0 -1
  819. package/lib/typescript/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts +0 -9
  820. package/lib/typescript/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts.map +0 -1
  821. package/lib/typescript/providers/screen/origin.provider.d.ts +0 -11
  822. package/lib/typescript/providers/screen/origin.provider.d.ts.map +0 -1
  823. package/lib/typescript/providers/screen/styles/helpers/opening-phase.d.ts +0 -16
  824. package/lib/typescript/providers/screen/styles/helpers/opening-phase.d.ts.map +0 -1
  825. package/src/components/boundary/hooks/use-register-target.ts +0 -43
  826. package/src/components/boundary/portal/components/boundary-portal/components/portal-slot.tsx +0 -80
  827. package/src/components/boundary/portal/components/boundary-portal/helpers/host-name.ts +0 -10
  828. package/src/components/boundary/portal/utils/ownership.ts +0 -319
  829. package/src/components/boundary/portal/utils/shallow-equal.ts +0 -25
  830. package/src/components/boundary/portal/utils/visible-host.ts +0 -24
  831. package/src/hooks/use-stable-callback-value.ts +0 -72
  832. package/src/providers/register-bounds.provider.tsx +0 -401
  833. package/src/providers/screen/gestures/rotation/activation/use-rotation-activation.ts +0 -88
  834. package/src/providers/screen/gestures/rotation/behavior/rotation-lifecycle.ts +0 -19
  835. package/src/providers/screen/gestures/rotation/behavior/use-rotation-behavior.ts +0 -47
  836. package/src/providers/screen/gestures/rotation/use-build-rotation-gesture.ts +0 -50
  837. package/src/providers/screen/origin.provider.tsx +0 -38
  838. package/src/providers/screen/styles/helpers/opening-phase.ts +0 -25
@@ -1,318 +1,140 @@
1
- import { useCallback, useLayoutEffect, useState } from "react";
2
- import {
3
- useAnimatedProps,
4
- useAnimatedReaction,
5
- useSharedValue,
6
- } from "react-native-reanimated";
7
- import { scheduleOnRN } from "react-native-worklets";
1
+ import { useAnimatedProps, useSharedValue } from "react-native-reanimated";
2
+ import { useStack } from "../../../../../../hooks/navigation/use-stack";
8
3
  import { useDescriptorsStore } from "../../../../../../providers/screen/descriptors";
9
4
  import { useScreenSlots } from "../../../../../../providers/screen/styles";
10
- import { useRegisteredScreenSlots } from "../../../../../../providers/screen/styles/stores/slot-references.store";
5
+ import { hasCloseTransitionFinished } from "../../../../../../providers/screen/styles/helpers/transition-visual-state";
11
6
  import { AnimationStore } from "../../../../../../stores/animation.store";
12
- import { getSourceScreenKeyFromPairKey } from "../../../../../../stores/bounds/helpers/link-pairs.helpers";
7
+ import { getLinkKeyFromTag } from "../../../../../../stores/bounds/helpers/link-pairs.helpers";
8
+ import { getEntry } from "../../../../../../stores/bounds/internals/entries";
13
9
  import { pairs } from "../../../../../../stores/bounds/internals/state";
10
+ import { SystemStore } from "../../../../../../stores/system.store";
14
11
  import { PORTAL_HOST_NAME_RESET_VALUE } from "../../../utils/naming";
12
+ import { isTeleportEnabled } from "../../../utils/teleport-control";
15
13
  import {
16
- canSwitchHandoffHostImmediately,
17
- isHandoffHostClosingComplete,
18
- type PortalOwnershipSignal,
19
- resolveBoundaryPortalOwnership,
20
- } from "../../../utils/ownership";
21
- import { shallowEqual } from "../../../utils/shallow-equal";
22
- import { shouldAttachBoundaryPortal } from "../../../utils/teleport-control";
23
- import { resolveNextVisiblePortalHostName } from "../../../utils/visible-host";
14
+ resolveActiveHandoffReceiver,
15
+ resolveHandoffAttachmentCandidate,
16
+ resolvePreviousHandoffReceiver,
17
+ } from "../helpers/active-handoff-receiver";
24
18
  import { createBoundaryContentPortalHostName } from "../helpers/host-name";
25
19
 
26
20
  interface UseBoundaryContentPortalAttachmentParams {
27
21
  boundaryId: string;
28
- enabled: boolean;
29
22
  }
30
23
 
31
24
  export const useBoundaryContentPortalAttachment = ({
32
25
  boundaryId,
33
- enabled,
34
26
  }: UseBoundaryContentPortalAttachmentParams) => {
35
- const ownScreenSlots = useScreenSlots();
36
- const sourcePairKey = useDescriptorsStore((s) => s.derivations.sourcePairKey);
27
+ const { nextInterpolatorReady, slotsMap } = useScreenSlots();
28
+
37
29
  const currentScreenKey = useDescriptorsStore(
38
30
  (s) => s.derivations.currentScreenKey,
39
31
  );
40
- const [ownership, setOwnership] = useState<Extract<
41
- PortalOwnershipSignal,
42
- { status: "complete" }
43
- > | null>(null);
32
+ const sourcePairKey = useDescriptorsStore((s) => s.derivations.sourcePairKey);
44
33
 
45
- const styleOwnerScreenKey = ownership?.ownerScreenKey ?? currentScreenKey;
46
- const ownerScreenSlots = useRegisteredScreenSlots(styleOwnerScreenKey);
47
- const activeScreenSlots = ownerScreenSlots ?? ownScreenSlots;
48
- const {
49
- nextInterpolatorReady: activeNextInterpolatorReady,
50
- slotsMap: activeSlotsMap,
51
- } = activeScreenSlots;
52
- const requestedPortalHostName = useSharedValue<string | null>(null);
53
- const visiblePortalHostName = useSharedValue<string | null>(null);
54
- const canSwitchPortalHostImmediately = useSharedValue(0);
34
+ const activeReceiverScreenKey = useStack(resolveActiveHandoffReceiver);
35
+ const previousReceiverScreenKey = useStack(resolvePreviousHandoffReceiver);
55
36
 
56
- const targetScreenKey = ownership ? ownership.hostScreenKey : null;
57
- const settledHostScreenKey = ownership?.hostScreenKey ?? null;
58
- const settledHostProgress = AnimationStore.getValue(
59
- settledHostScreenKey ?? currentScreenKey,
60
- "progressSettled",
61
- );
62
- const settledHostAnimating = AnimationStore.getValue(
63
- settledHostScreenKey ?? currentScreenKey,
64
- "progressAnimating",
65
- );
66
- const settledHostWillAnimate = AnimationStore.getValue(
67
- settledHostScreenKey ?? currentScreenKey,
68
- "willAnimate",
37
+ const activeReceiverAnimationProgress = SystemStore.getValue(
38
+ activeReceiverScreenKey ?? currentScreenKey,
39
+ "animationProgress",
69
40
  );
70
- const settledHostClosing = AnimationStore.getValue(
71
- settledHostScreenKey ?? currentScreenKey,
72
- "closing",
73
- );
74
- const handoffHostName =
75
- targetScreenKey !== null
76
- ? createBoundaryContentPortalHostName(targetScreenKey, boundaryId)
77
- : null;
78
-
79
- const updatePortalOwnership = useCallback(
80
- (
81
- hostScreenKey: string | null,
82
- ownerPairKey?: string,
83
- ownerScreenKey?: string,
84
- ) => {
85
- if (hostScreenKey && ownerPairKey && ownerScreenKey) {
86
- setOwnership((current) => {
87
- if (
88
- current?.hostScreenKey === hostScreenKey &&
89
- current.ownerPairKey === ownerPairKey &&
90
- current.ownerScreenKey === ownerScreenKey
91
- ) {
92
- return current;
93
- }
94
-
95
- return {
96
- hostScreenKey,
97
- ownerPairKey,
98
- ownerScreenKey,
99
- status: "complete",
100
- };
101
- });
102
- return;
103
- }
104
41
 
105
- setOwnership((current) => (current ? null : current));
106
- },
107
- [],
42
+ const activeReceiverClosing = AnimationStore.getValue(
43
+ activeReceiverScreenKey ?? currentScreenKey,
44
+ "closing",
108
45
  );
109
46
 
110
- useLayoutEffect(() => {
111
- if (!enabled || !ownership || !handoffHostName) {
112
- requestedPortalHostName.set(null);
113
- visiblePortalHostName.set(null);
114
- return;
115
- }
116
-
117
- requestedPortalHostName.set(handoffHostName);
118
- }, [
119
- enabled,
120
- handoffHostName,
121
- ownership,
122
- requestedPortalHostName,
123
- visiblePortalHostName,
124
- ]);
125
-
126
- useLayoutEffect(() => {
127
- return () => {
128
- requestedPortalHostName.set(null);
129
- visiblePortalHostName.set(null);
130
- };
131
- }, [requestedPortalHostName, visiblePortalHostName]);
132
-
133
- useAnimatedReaction(
134
- () => {
135
- "worklet";
136
- if (!enabled) {
137
- return {
138
- hostScreenKey: null,
139
- ownerPairKey: sourcePairKey,
140
- ownerScreenKey: null,
141
- status: "clear",
142
- };
143
- }
47
+ const attachedReceiverScreenKey = useSharedValue(currentScreenKey);
48
+ const sourcePairBeforeClose = useSharedValue<string | null>(null);
144
49
 
145
- const progressAnimating = settledHostAnimating.get();
146
- const progressSettled = settledHostProgress.get();
147
- const willAnimate = settledHostWillAnimate.get();
148
- const closing = settledHostClosing.get();
149
- const isOwnedHostClosing =
150
- !!closing &&
151
- !!ownership &&
152
- settledHostScreenKey === ownership.hostScreenKey;
153
-
154
- if (isOwnedHostClosing && ownership) {
155
- const isClosingComplete = isHandoffHostClosingComplete({
156
- closing,
157
- progressAnimating,
158
- progressSettled,
159
- willAnimate,
160
- });
161
-
162
- if (!isClosingComplete) {
163
- return ownership;
164
- }
165
-
166
- const sourceScreenKey = getSourceScreenKeyFromPairKey(
167
- ownership.ownerPairKey,
168
- );
169
-
170
- return {
171
- hostScreenKey: sourceScreenKey,
172
- ownerPairKey: ownership.ownerPairKey,
173
- ownerScreenKey: sourceScreenKey,
174
- status: "complete",
175
- };
176
- }
50
+ const teleportProps = useAnimatedProps(() => {
51
+ "worklet";
177
52
 
178
- if (!sourcePairKey) {
179
- return {
180
- hostScreenKey: null,
181
- ownerPairKey: sourcePairKey,
182
- ownerScreenKey: null,
183
- status: "clear",
184
- };
185
- }
53
+ const slot = slotsMap.get()[boundaryId];
54
+ const {
55
+ pointerEvents: _pointerEvents,
56
+ teleport,
57
+ ...slotProps
58
+ } = slot?.props ?? {};
186
59
 
187
- return resolveBoundaryPortalOwnership({
188
- boundaryId,
189
- currentScreenKey,
190
- handoff: true,
191
- isSettledHostClosingComplete: isHandoffHostClosingComplete({
192
- closing,
193
- progressAnimating,
194
- progressSettled,
195
- willAnimate,
196
- }),
197
- isSettledHostReady: progressSettled === 1 && progressAnimating === 0,
198
- pairsState: pairs.get(),
199
- settledHostScreenKey,
200
- sourcePairKey,
201
- });
202
- },
203
- (signal, previousSignal) => {
204
- "worklet";
205
- if (shallowEqual(previousSignal, signal)) {
206
- return;
207
- }
60
+ const shouldTeleport = isTeleportEnabled(teleport);
61
+ const closing = activeReceiverClosing.get();
62
+ const animationProgress = activeReceiverAnimationProgress.get();
208
63
 
209
- if (signal.status === "pending") {
210
- canSwitchPortalHostImmediately.set(0);
211
- return;
212
- }
64
+ if (!closing) {
65
+ sourcePairBeforeClose.set(sourcePairKey ?? null);
66
+ }
213
67
 
214
- const hostScreenKey =
215
- signal.status === "complete" ? signal.hostScreenKey : null;
216
- let previousOwnerPairKey: string | undefined;
68
+ const pairChangedDuringClose =
69
+ !!closing &&
70
+ !!sourcePairKey &&
71
+ sourcePairKey !== sourcePairBeforeClose.get();
217
72
 
218
- if (previousSignal?.status === "complete") {
219
- previousOwnerPairKey = previousSignal.ownerPairKey ?? undefined;
220
- }
73
+ const hasActiveCloseFinished = hasCloseTransitionFinished({
74
+ closing,
75
+ animationProgress,
76
+ });
221
77
 
222
- const canSwitchImmediately = canSwitchHandoffHostImmediately({
223
- hostScreenKey,
224
- ownerPairKey:
225
- signal.status === "complete" ? signal.ownerPairKey : undefined,
226
- previousOwnerPairKey,
227
- });
78
+ const pair = sourcePairKey ? pairs.get()[sourcePairKey] : null;
79
+ const link = pair?.links[getLinkKeyFromTag(boundaryId)];
80
+
81
+ const pairDestination =
82
+ link?.status === "complete" &&
83
+ (!link.group ||
84
+ pair?.groups[link.group]?.activeId === getLinkKeyFromTag(boundaryId))
85
+ ? link.destination.screenKey
86
+ : null;
87
+
88
+ const interpolatorReady = nextInterpolatorReady.get();
89
+ const attachedScreenKey = attachedReceiverScreenKey.get();
90
+
91
+ const nextReceiverScreenKey = resolveHandoffAttachmentCandidate({
92
+ activeReceiverClosing: !!closing,
93
+ activeReceiverScreenKey,
94
+ attachedReceiverScreenKey: attachedScreenKey,
95
+ hasActiveCloseFinished,
96
+ interpolatorReady: !!interpolatorReady,
97
+ pairChangedDuringClose,
98
+ pairDestinationScreenKey: pairDestination,
99
+ previousReceiverScreenKey,
100
+ });
228
101
 
229
- canSwitchPortalHostImmediately.set(canSwitchImmediately ? 1 : 0);
102
+ const receiverEntry = nextReceiverScreenKey
103
+ ? getEntry(boundaryId, nextReceiverScreenKey)
104
+ : null;
230
105
 
231
- if (canSwitchImmediately && hostScreenKey) {
232
- const hostName = createBoundaryContentPortalHostName(
233
- hostScreenKey,
234
- boundaryId,
235
- );
236
- requestedPortalHostName.set(hostName);
237
- visiblePortalHostName.set(hostName);
238
- }
106
+ const receiverReady = receiverEntry?.handoff === true;
239
107
 
240
- scheduleOnRN(
241
- updatePortalOwnership,
242
- signal.hostScreenKey,
243
- signal.ownerPairKey,
244
- signal.ownerScreenKey ?? undefined,
245
- );
246
- },
247
- );
108
+ const returningFromActiveClose =
109
+ hasActiveCloseFinished && attachedScreenKey === activeReceiverScreenKey;
248
110
 
249
- useAnimatedReaction(
250
- () => {
251
- "worklet";
252
- const slot = activeSlotsMap.get()[boundaryId];
253
- const teleport = slot?.props?.teleport;
254
- const shouldTeleport = shouldAttachBoundaryPortal({
255
- enabled,
256
- teleport,
257
- });
258
- const requestedName = requestedPortalHostName.get();
259
- const visibleName = visiblePortalHostName.get();
260
- const isInterpolatorReady = activeNextInterpolatorReady.get();
261
- const nextVisibleName = resolveNextVisiblePortalHostName({
262
- canSwitchImmediately: canSwitchPortalHostImmediately.get() === 1,
263
- isInterpolatorReady: isInterpolatorReady === 1,
264
- requestedName,
265
- shouldTeleport,
266
- visibleName,
267
- });
111
+ const activatingPairDestination =
112
+ !!pairDestination &&
113
+ !!interpolatorReady &&
114
+ nextReceiverScreenKey === pairDestination;
268
115
 
269
- return {
270
- isInterpolatorReady,
271
- nextVisibleName,
272
- requestedName,
273
- shouldTeleport,
274
- teleport,
275
- visibleName,
276
- };
277
- },
278
- (state, previousState) => {
279
- "worklet";
280
- if (shallowEqual(previousState, state)) {
281
- return;
282
- }
116
+ const canActivateReceiver =
117
+ returningFromActiveClose ||
118
+ activatingPairDestination ||
119
+ animationProgress > 0;
283
120
 
284
- if (state.nextVisibleName !== state.visibleName) {
285
- visiblePortalHostName.set(state.nextVisibleName);
286
- }
287
- },
288
- );
121
+ if (nextReceiverScreenKey && receiverReady && canActivateReceiver) {
122
+ attachedReceiverScreenKey.set(nextReceiverScreenKey);
123
+ }
289
124
 
290
- const teleportProps = useAnimatedProps(() => {
291
- "worklet";
125
+ const targetScreenKey = shouldTeleport
126
+ ? attachedReceiverScreenKey.get()
127
+ : null;
292
128
 
293
- const slot = activeSlotsMap.get()[boundaryId];
294
- const {
295
- pointerEvents: _pointerEvents,
296
- teleport,
297
- ...slotProps
298
- } = slot?.props ?? {};
299
- const shouldTeleport = shouldAttachBoundaryPortal({
300
- enabled,
301
- teleport,
302
- });
303
- const visibleName = visiblePortalHostName.get();
129
+ const targetHostName = targetScreenKey
130
+ ? createBoundaryContentPortalHostName(targetScreenKey, boundaryId)
131
+ : PORTAL_HOST_NAME_RESET_VALUE;
304
132
 
305
133
  return {
306
134
  ...slotProps,
307
- hostName:
308
- shouldTeleport && visibleName
309
- ? visibleName
310
- : PORTAL_HOST_NAME_RESET_VALUE,
135
+ hostName: targetHostName,
311
136
  };
312
137
  });
313
138
 
314
- return {
315
- teleportProps,
316
- visiblePortalHostName,
317
- };
139
+ return { teleportProps };
318
140
  };
@@ -33,30 +33,49 @@ const AnimatedNativePortal = NativePortal
33
33
  NativePortal as ComponentType<NullableHostNamePortalProps>,
34
34
  )
35
35
  : null;
36
+ const EnabledNativePortal = AnimatedNativePortal as NonNullable<
37
+ typeof AnimatedNativePortal
38
+ >;
36
39
 
37
40
  export const BoundaryContentPortal = memo(function BoundaryContentPortal({
38
41
  boundaryId,
39
42
  children,
40
43
  enabled,
41
44
  }: BoundaryContentPortalProps) {
42
- const shouldEnablePortal = enabled && boundaryId !== undefined;
43
- const { teleportProps } = useBoundaryContentPortalAttachment({
44
- boundaryId: boundaryId ?? "",
45
- enabled: shouldEnablePortal,
46
- });
45
+ if (
46
+ !enabled ||
47
+ boundaryId === undefined ||
48
+ !isTeleportAvailable ||
49
+ !AnimatedNativePortal
50
+ ) {
51
+ return children;
52
+ }
53
+
54
+ return (
55
+ <EnabledBoundaryContentPortal boundaryId={boundaryId}>
56
+ {children}
57
+ </EnabledBoundaryContentPortal>
58
+ );
59
+ });
60
+
61
+ const EnabledBoundaryContentPortal = memo(
62
+ function EnabledBoundaryContentPortal({
63
+ boundaryId,
64
+ children,
65
+ }: Omit<BoundaryContentPortalProps, "enabled"> & { boundaryId: string }) {
66
+ const { teleportProps } = useBoundaryContentPortalAttachment({
67
+ boundaryId,
68
+ });
47
69
 
48
- if (shouldEnablePortal && isTeleportAvailable && AnimatedNativePortal) {
49
70
  return (
50
- <AnimatedNativePortal
71
+ <EnabledNativePortal
51
72
  animatedProps={teleportProps}
52
73
  name={boundaryId}
53
74
  pointerEvents={PORTAL_POINTER_EVENTS}
54
75
  style={StyleSheet.absoluteFill}
55
76
  >
56
77
  {children}
57
- </AnimatedNativePortal>
78
+ </EnabledNativePortal>
58
79
  );
59
- }
60
-
61
- return children;
62
- });
80
+ },
81
+ );
@@ -1,4 +1,4 @@
1
- import { memo, useCallback, useLayoutEffect, useRef } from "react";
1
+ import { memo, useLayoutEffect, useRef } from "react";
2
2
  import {
3
3
  type StyleProp,
4
4
  StyleSheet,
@@ -9,7 +9,6 @@ import {
9
9
  import Animated from "react-native-reanimated";
10
10
  import { useDescriptorsStore } from "../../../../../../providers/screen/descriptors";
11
11
  import { useScreenSlots } from "../../../../../../providers/screen/styles";
12
- import { SystemStore } from "../../../../../../stores/system.store";
13
12
  import { PORTAL_POINTER_EVENTS } from "../../../teleport";
14
13
  import { useHostMeasurement } from "../hooks/use-host-measurement";
15
14
  import { registerHost, unregisterHost } from "../stores/host-registry.store";
@@ -28,7 +27,6 @@ type HostImplProps = PublicHostProps & {
28
27
 
29
28
  function HostImpl({ fallback = false, style }: HostImplProps) {
30
29
  const screenKey = useDescriptorsStore((s) => s.derivations.currentScreenKey);
31
- const { unblockLifecycleStart } = SystemStore.getBag(screenKey).actions;
32
30
  const generatedHostKeyRef = useRef<string | null>(null);
33
31
 
34
32
  if (generatedHostKeyRef.current === null) {
@@ -54,7 +52,6 @@ function HostImpl({ fallback = false, style }: HostImplProps) {
54
52
 
55
53
  useLayoutEffect(() => {
56
54
  registerHost({
57
- capturesScroll,
58
55
  fallback,
59
56
  hostKey,
60
57
  screenKey,
@@ -63,29 +60,20 @@ function HostImpl({ fallback = false, style }: HostImplProps) {
63
60
  return () => {
64
61
  unregisterHost(screenKey, hostKey);
65
62
  };
66
- }, [capturesScroll, fallback, hostKey, screenKey]);
63
+ }, [fallback, hostKey, screenKey]);
67
64
 
68
- const handleUnblocking = useCallback(() => {
69
- // Each destination boundary contributes one lifecycle start block. Release
70
- // only this host's block so unrelated boundary and user blocks stay intact.
71
- unblockLifecycleStart();
72
- }, [unblockLifecycleStart]);
73
-
74
- const boundaryHosts = measurement.canRenderHosts
75
- ? activeBoundaryHosts.map((host) => (
76
- <View
77
- key={host.portalHostName}
78
- pointerEvents={PORTAL_POINTER_EVENTS}
79
- style={[
80
- styles.boundaryHostViewport,
81
- { width: viewportWidth, height: viewportHeight },
82
- ]}
83
- onLayout={handleUnblocking}
84
- >
85
- <PortalBoundaryHost host={host} style={StyleSheet.absoluteFill} />
86
- </View>
87
- ))
88
- : null;
65
+ const boundaryHosts = activeBoundaryHosts.map((host) => (
66
+ <View
67
+ key={host.portalHostName}
68
+ pointerEvents={PORTAL_POINTER_EVENTS}
69
+ style={[
70
+ styles.boundaryHostViewport,
71
+ { width: viewportWidth, height: viewportHeight },
72
+ ]}
73
+ >
74
+ <PortalBoundaryHost host={host} style={StyleSheet.absoluteFill} />
75
+ </View>
76
+ ));
89
77
 
90
78
  return (
91
79
  <Animated.View