react-native-screen-transitions 4.0.0-alpha.2 → 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 (565) 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 +1 -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 +1 -1
  10. package/lib/commonjs/components/boundary/components/boundary-target.js.map +1 -1
  11. package/lib/commonjs/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +18 -7
  12. package/lib/commonjs/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
  13. package/lib/commonjs/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -12
  14. package/lib/commonjs/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
  15. package/lib/commonjs/components/boundary/hooks/use-measurer.js +6 -13
  16. package/lib/commonjs/components/boundary/hooks/use-measurer.js.map +1 -1
  17. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +67 -0
  18. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -0
  19. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +44 -37
  20. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  21. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/host.js +2 -2
  22. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  23. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +30 -0
  24. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +1 -0
  25. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js +75 -0
  26. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -0
  27. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +17 -32
  28. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  29. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js +10 -19
  30. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -1
  31. package/lib/commonjs/components/boundary/portal/utils/naming.js +8 -1
  32. package/lib/commonjs/components/boundary/portal/utils/naming.js.map +1 -1
  33. package/lib/commonjs/components/boundary/providers/boundary-root.provider.js +4 -5
  34. package/lib/commonjs/components/boundary/providers/boundary-root.provider.js.map +1 -1
  35. package/lib/commonjs/components/boundary/utils/measured-bounds.js +19 -31
  36. package/lib/commonjs/components/boundary/utils/measured-bounds.js.map +1 -1
  37. package/lib/commonjs/components/boundary/utils/refresh-signals.js +14 -20
  38. package/lib/commonjs/components/boundary/utils/refresh-signals.js.map +1 -1
  39. package/lib/commonjs/components/create-transition-aware-component.js +9 -30
  40. package/lib/commonjs/components/create-transition-aware-component.js.map +1 -1
  41. package/lib/commonjs/components/screen-container/hooks/use-backdrop-pointer-events.js +5 -9
  42. package/lib/commonjs/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
  43. package/lib/commonjs/components/screen-container/hooks/use-content-layout.js +3 -8
  44. package/lib/commonjs/components/screen-container/hooks/use-content-layout.js.map +1 -1
  45. package/lib/commonjs/components/screen-container/layers/backdrop.js +7 -10
  46. package/lib/commonjs/components/screen-container/layers/backdrop.js.map +1 -1
  47. package/lib/commonjs/components/screen-container/layers/content.js +10 -16
  48. package/lib/commonjs/components/screen-container/layers/content.js.map +1 -1
  49. package/lib/commonjs/components/screen-container/layers/surface-container.js +1 -5
  50. package/lib/commonjs/components/screen-container/layers/surface-container.js.map +1 -1
  51. package/lib/commonjs/components/screen-lifecycle/hooks/use-close-transition-intent.js +10 -12
  52. package/lib/commonjs/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  53. package/lib/commonjs/components/screen-lifecycle/hooks/use-open-transition-intent.js +2 -3
  54. package/lib/commonjs/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
  55. package/lib/commonjs/components/screen-lifecycle/hooks/use-transition-start-controller.js +5 -1
  56. package/lib/commonjs/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  57. package/lib/commonjs/components/screen-lifecycle/index.js +2 -4
  58. package/lib/commonjs/components/screen-lifecycle/index.js.map +1 -1
  59. package/lib/commonjs/components/stack-view.js +69 -35
  60. package/lib/commonjs/components/stack-view.js.map +1 -1
  61. package/lib/commonjs/configs/presets.js +10 -10
  62. package/lib/commonjs/configs/presets.js.map +1 -1
  63. package/lib/commonjs/constants.js +1 -0
  64. package/lib/commonjs/constants.js.map +1 -1
  65. package/lib/commonjs/hooks/navigation/use-navigation-helpers.js +9 -8
  66. package/lib/commonjs/hooks/navigation/use-navigation-helpers.js.map +1 -1
  67. package/lib/commonjs/hooks/navigation/use-screen-state.js +1 -3
  68. package/lib/commonjs/hooks/navigation/use-screen-state.js.map +1 -1
  69. package/lib/commonjs/providers/screen/animation/animation.provider.js +7 -7
  70. package/lib/commonjs/providers/screen/animation/animation.provider.js.map +1 -1
  71. package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js +1 -3
  72. package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -1
  73. package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +1 -1
  74. package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  75. package/lib/commonjs/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -10
  76. package/lib/commonjs/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  77. package/lib/commonjs/providers/screen/animation/helpers/pipeline.js +5 -7
  78. package/lib/commonjs/providers/screen/animation/helpers/pipeline.js.map +1 -1
  79. package/lib/commonjs/providers/screen/animation/index.js +2 -2
  80. package/lib/commonjs/providers/screen/animation/use-screen-animation.js +1 -1
  81. package/lib/commonjs/providers/screen/animation/use-screen-animation.js.map +1 -1
  82. package/lib/commonjs/providers/screen/descriptors/descriptors.provider.js +34 -42
  83. package/lib/commonjs/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  84. package/lib/commonjs/providers/screen/descriptors/index.js +0 -12
  85. package/lib/commonjs/providers/screen/descriptors/index.js.map +1 -1
  86. package/lib/commonjs/providers/screen/gestures/gestures.provider.js +7 -7
  87. package/lib/commonjs/providers/screen/gestures/gestures.provider.js.map +1 -1
  88. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture-config.js +3 -9
  89. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
  90. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture.js +1 -1
  91. package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
  92. package/lib/commonjs/providers/screen/gestures/hooks/use-stable-runtime-config.js +1 -3
  93. package/lib/commonjs/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
  94. package/lib/commonjs/providers/screen/gestures/index.js +2 -2
  95. package/lib/commonjs/providers/screen/gestures/ownership/shadowing-claims.js +2 -2
  96. package/lib/commonjs/providers/screen/gestures/ownership/shadowing-claims.js.map +1 -1
  97. package/lib/commonjs/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +8 -11
  98. package/lib/commonjs/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
  99. package/lib/commonjs/providers/screen/gestures/pan/activation/use-pan-activation.js +2 -4
  100. package/lib/commonjs/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  101. package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-lifecycle.js +5 -8
  102. package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  103. package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-reset.js +10 -0
  104. package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
  105. package/lib/commonjs/providers/screen/gestures/pan/use-build-pan-gesture.js +1 -1
  106. package/lib/commonjs/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  107. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +8 -6
  108. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  109. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-reset.js +7 -0
  110. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
  111. package/lib/commonjs/providers/screen/gestures/pinch/use-build-pinch-gesture.js +1 -1
  112. package/lib/commonjs/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
  113. package/lib/commonjs/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +5 -5
  114. package/lib/commonjs/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -1
  115. package/lib/commonjs/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +2 -2
  116. package/lib/commonjs/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  117. package/lib/commonjs/providers/screen/options/index.js +2 -2
  118. package/lib/commonjs/providers/screen/options/options.provider.js +4 -8
  119. package/lib/commonjs/providers/screen/options/options.provider.js.map +1 -1
  120. package/lib/commonjs/providers/screen/screen-composer.js +2 -0
  121. package/lib/commonjs/providers/screen/screen-composer.js.map +1 -1
  122. package/lib/commonjs/providers/screen/styles/constants.js +10 -4
  123. package/lib/commonjs/providers/screen/styles/constants.js.map +1 -1
  124. package/lib/commonjs/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js +93 -0
  125. package/lib/commonjs/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js.map +1 -0
  126. package/lib/commonjs/providers/screen/styles/helpers/resolve-slot-styles/index.js +48 -5
  127. package/lib/commonjs/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  128. package/lib/commonjs/providers/screen/styles/helpers/select-interpolator-frame.js +32 -0
  129. package/lib/commonjs/providers/screen/styles/helpers/select-interpolator-frame.js.map +1 -0
  130. package/lib/commonjs/providers/screen/styles/helpers/visibility-gate.js +14 -1
  131. package/lib/commonjs/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  132. package/lib/commonjs/providers/screen/styles/hooks/use-interpolated-style-maps.js +64 -40
  133. package/lib/commonjs/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  134. package/lib/commonjs/providers/screen/styles/hooks/use-maybe-block-visibility.js +1 -3
  135. package/lib/commonjs/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  136. package/lib/commonjs/providers/screen/styles/index.js +0 -6
  137. package/lib/commonjs/providers/screen/styles/index.js.map +1 -1
  138. package/lib/commonjs/providers/screen/styles/slot.provider.js +23 -19
  139. package/lib/commonjs/providers/screen/styles/slot.provider.js.map +1 -1
  140. package/lib/commonjs/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +3 -11
  141. package/lib/commonjs/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
  142. package/lib/commonjs/providers/stack/blank-stack.provider.js +53 -49
  143. package/lib/commonjs/providers/stack/blank-stack.provider.js.map +1 -1
  144. package/lib/commonjs/providers/stack/core.provider.js +24 -45
  145. package/lib/commonjs/providers/stack/core.provider.js.map +1 -1
  146. package/lib/commonjs/providers/stack/direct.provider.js +46 -40
  147. package/lib/commonjs/providers/stack/direct.provider.js.map +1 -1
  148. package/lib/commonjs/stores/animation.store.js +19 -1
  149. package/lib/commonjs/stores/animation.store.js.map +1 -1
  150. package/lib/commonjs/types/stack.types.js.map +1 -1
  151. package/lib/commonjs/utils/animation/animate-to-progress.js +12 -11
  152. package/lib/commonjs/utils/animation/animate-to-progress.js.map +1 -1
  153. package/lib/commonjs/utils/bounds/helpers/create-bounds-accessor-core.js +6 -0
  154. package/lib/commonjs/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  155. package/lib/commonjs/utils/create-provider.js +61 -75
  156. package/lib/commonjs/utils/create-provider.js.map +1 -1
  157. package/lib/module/adapters/with-screen-transitions/context.js +3 -0
  158. package/lib/module/adapters/with-screen-transitions/context.js.map +1 -1
  159. package/lib/module/adapters/with-screen-transitions/stack-layout.js +14 -8
  160. package/lib/module/adapters/with-screen-transitions/stack-layout.js.map +1 -1
  161. package/lib/module/animation/snap-to.js +1 -0
  162. package/lib/module/animation/snap-to.js.map +1 -1
  163. package/lib/module/components/activity/variants/activity-screen.js +26 -10
  164. package/lib/module/components/activity/variants/activity-screen.js.map +1 -1
  165. package/lib/module/components/boundary/components/boundary-target.js +2 -2
  166. package/lib/module/components/boundary/components/boundary-target.js.map +1 -1
  167. package/lib/module/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +19 -7
  168. package/lib/module/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
  169. package/lib/module/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -12
  170. package/lib/module/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
  171. package/lib/module/components/boundary/hooks/use-measurer.js +7 -14
  172. package/lib/module/components/boundary/hooks/use-measurer.js.map +1 -1
  173. package/lib/module/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +60 -0
  174. package/lib/module/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -0
  175. package/lib/module/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +44 -37
  176. package/lib/module/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  177. package/lib/module/components/boundary/portal/components/boundary-portal/components/host.js +2 -2
  178. package/lib/module/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  179. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +25 -0
  180. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +1 -0
  181. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js +70 -0
  182. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -0
  183. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +17 -32
  184. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  185. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js +13 -22
  186. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -1
  187. package/lib/module/components/boundary/portal/utils/naming.js +6 -0
  188. package/lib/module/components/boundary/portal/utils/naming.js.map +1 -1
  189. package/lib/module/components/boundary/providers/boundary-root.provider.js +3 -3
  190. package/lib/module/components/boundary/providers/boundary-root.provider.js.map +1 -1
  191. package/lib/module/components/boundary/utils/measured-bounds.js +17 -28
  192. package/lib/module/components/boundary/utils/measured-bounds.js.map +1 -1
  193. package/lib/module/components/boundary/utils/refresh-signals.js +14 -20
  194. package/lib/module/components/boundary/utils/refresh-signals.js.map +1 -1
  195. package/lib/module/components/create-transition-aware-component.js +10 -31
  196. package/lib/module/components/create-transition-aware-component.js.map +1 -1
  197. package/lib/module/components/screen-container/hooks/use-backdrop-pointer-events.js +8 -12
  198. package/lib/module/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
  199. package/lib/module/components/screen-container/hooks/use-content-layout.js +4 -9
  200. package/lib/module/components/screen-container/hooks/use-content-layout.js.map +1 -1
  201. package/lib/module/components/screen-container/layers/backdrop.js +8 -11
  202. package/lib/module/components/screen-container/layers/backdrop.js.map +1 -1
  203. package/lib/module/components/screen-container/layers/content.js +12 -18
  204. package/lib/module/components/screen-container/layers/content.js.map +1 -1
  205. package/lib/module/components/screen-container/layers/surface-container.js +2 -6
  206. package/lib/module/components/screen-container/layers/surface-container.js.map +1 -1
  207. package/lib/module/components/screen-lifecycle/hooks/use-close-transition-intent.js +13 -15
  208. package/lib/module/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  209. package/lib/module/components/screen-lifecycle/hooks/use-open-transition-intent.js +3 -4
  210. package/lib/module/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
  211. package/lib/module/components/screen-lifecycle/hooks/use-transition-start-controller.js +5 -1
  212. package/lib/module/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  213. package/lib/module/components/screen-lifecycle/index.js +3 -5
  214. package/lib/module/components/screen-lifecycle/index.js.map +1 -1
  215. package/lib/module/components/stack-view.js +71 -37
  216. package/lib/module/components/stack-view.js.map +1 -1
  217. package/lib/module/configs/presets.js +10 -10
  218. package/lib/module/configs/presets.js.map +1 -1
  219. package/lib/module/constants.js +1 -0
  220. package/lib/module/constants.js.map +1 -1
  221. package/lib/module/hooks/navigation/use-navigation-helpers.js +9 -8
  222. package/lib/module/hooks/navigation/use-navigation-helpers.js.map +1 -1
  223. package/lib/module/hooks/navigation/use-screen-state.js +2 -4
  224. package/lib/module/hooks/navigation/use-screen-state.js.map +1 -1
  225. package/lib/module/providers/screen/animation/animation.provider.js +6 -5
  226. package/lib/module/providers/screen/animation/animation.provider.js.map +1 -1
  227. package/lib/module/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js +2 -4
  228. package/lib/module/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -1
  229. package/lib/module/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +2 -2
  230. package/lib/module/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  231. package/lib/module/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -10
  232. package/lib/module/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  233. package/lib/module/providers/screen/animation/helpers/pipeline.js +6 -8
  234. package/lib/module/providers/screen/animation/helpers/pipeline.js.map +1 -1
  235. package/lib/module/providers/screen/animation/index.js +1 -1
  236. package/lib/module/providers/screen/animation/index.js.map +1 -1
  237. package/lib/module/providers/screen/animation/use-screen-animation.js +2 -2
  238. package/lib/module/providers/screen/animation/use-screen-animation.js.map +1 -1
  239. package/lib/module/providers/screen/descriptors/descriptors.provider.js +34 -40
  240. package/lib/module/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  241. package/lib/module/providers/screen/descriptors/index.js +1 -1
  242. package/lib/module/providers/screen/descriptors/index.js.map +1 -1
  243. package/lib/module/providers/screen/gestures/gestures.provider.js +6 -6
  244. package/lib/module/providers/screen/gestures/gestures.provider.js.map +1 -1
  245. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture-config.js +5 -11
  246. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
  247. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture.js +2 -2
  248. package/lib/module/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
  249. package/lib/module/providers/screen/gestures/hooks/use-stable-runtime-config.js +2 -4
  250. package/lib/module/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
  251. package/lib/module/providers/screen/gestures/index.js +1 -1
  252. package/lib/module/providers/screen/gestures/index.js.map +1 -1
  253. package/lib/module/providers/screen/gestures/ownership/shadowing-claims.js +2 -2
  254. package/lib/module/providers/screen/gestures/ownership/shadowing-claims.js.map +1 -1
  255. package/lib/module/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +10 -13
  256. package/lib/module/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
  257. package/lib/module/providers/screen/gestures/pan/activation/use-pan-activation.js +3 -5
  258. package/lib/module/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  259. package/lib/module/providers/screen/gestures/pan/behavior/pan-lifecycle.js +6 -9
  260. package/lib/module/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  261. package/lib/module/providers/screen/gestures/pan/behavior/pan-reset.js +10 -0
  262. package/lib/module/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
  263. package/lib/module/providers/screen/gestures/pan/use-build-pan-gesture.js +2 -2
  264. package/lib/module/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  265. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +9 -7
  266. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  267. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-reset.js +7 -0
  268. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
  269. package/lib/module/providers/screen/gestures/pinch/use-build-pinch-gesture.js +2 -2
  270. package/lib/module/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
  271. package/lib/module/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +3 -3
  272. package/lib/module/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -1
  273. package/lib/module/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +4 -4
  274. package/lib/module/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  275. package/lib/module/providers/screen/options/index.js +1 -1
  276. package/lib/module/providers/screen/options/index.js.map +1 -1
  277. package/lib/module/providers/screen/options/options.provider.js +3 -7
  278. package/lib/module/providers/screen/options/options.provider.js.map +1 -1
  279. package/lib/module/providers/screen/screen-composer.js +2 -0
  280. package/lib/module/providers/screen/screen-composer.js.map +1 -1
  281. package/lib/module/providers/screen/styles/constants.js +8 -3
  282. package/lib/module/providers/screen/styles/constants.js.map +1 -1
  283. package/lib/module/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js +88 -0
  284. package/lib/module/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js.map +1 -0
  285. package/lib/module/providers/screen/styles/helpers/resolve-slot-styles/index.js +49 -6
  286. package/lib/module/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  287. package/lib/module/providers/screen/styles/helpers/select-interpolator-frame.js +27 -0
  288. package/lib/module/providers/screen/styles/helpers/select-interpolator-frame.js.map +1 -0
  289. package/lib/module/providers/screen/styles/helpers/visibility-gate.js +12 -0
  290. package/lib/module/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  291. package/lib/module/providers/screen/styles/hooks/use-interpolated-style-maps.js +67 -43
  292. package/lib/module/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  293. package/lib/module/providers/screen/styles/hooks/use-maybe-block-visibility.js +2 -4
  294. package/lib/module/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  295. package/lib/module/providers/screen/styles/index.js +1 -1
  296. package/lib/module/providers/screen/styles/index.js.map +1 -1
  297. package/lib/module/providers/screen/styles/slot.provider.js +23 -18
  298. package/lib/module/providers/screen/styles/slot.provider.js.map +1 -1
  299. package/lib/module/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +3 -11
  300. package/lib/module/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
  301. package/lib/module/providers/stack/blank-stack.provider.js +50 -47
  302. package/lib/module/providers/stack/blank-stack.provider.js.map +1 -1
  303. package/lib/module/providers/stack/core.provider.js +22 -43
  304. package/lib/module/providers/stack/core.provider.js.map +1 -1
  305. package/lib/module/providers/stack/direct.provider.js +44 -41
  306. package/lib/module/providers/stack/direct.provider.js.map +1 -1
  307. package/lib/module/stores/animation.store.js +17 -0
  308. package/lib/module/stores/animation.store.js.map +1 -1
  309. package/lib/module/types/stack.types.js.map +1 -1
  310. package/lib/module/utils/animation/animate-to-progress.js +12 -11
  311. package/lib/module/utils/animation/animate-to-progress.js.map +1 -1
  312. package/lib/module/utils/bounds/helpers/create-bounds-accessor-core.js +6 -0
  313. package/lib/module/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  314. package/lib/module/utils/create-provider.js +62 -76
  315. package/lib/module/utils/create-provider.js.map +1 -1
  316. package/lib/typescript/adapters/with-screen-transitions/context.d.ts +2 -0
  317. package/lib/typescript/adapters/with-screen-transitions/context.d.ts.map +1 -1
  318. package/lib/typescript/adapters/with-screen-transitions/stack-layout.d.ts +1 -1
  319. package/lib/typescript/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -1
  320. package/lib/typescript/animation/snap-to.d.ts.map +1 -1
  321. package/lib/typescript/components/activity/variants/activity-screen.d.ts +3 -2
  322. package/lib/typescript/components/activity/variants/activity-screen.d.ts.map +1 -1
  323. package/lib/typescript/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts.map +1 -1
  324. package/lib/typescript/components/boundary/hooks/lifecycles/use-refresh-boundary.d.ts.map +1 -1
  325. package/lib/typescript/components/boundary/hooks/use-measurer.d.ts +1 -1
  326. package/lib/typescript/components/boundary/hooks/use-measurer.d.ts.map +1 -1
  327. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts +26 -0
  328. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts.map +1 -0
  329. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts.map +1 -1
  330. package/lib/typescript/components/boundary/portal/components/boundary-portal/components/host.d.ts.map +1 -1
  331. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts +9 -0
  332. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts.map +1 -0
  333. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.d.ts +17 -0
  334. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.d.ts.map +1 -0
  335. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts.map +1 -1
  336. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.d.ts +0 -1
  337. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.d.ts.map +1 -1
  338. package/lib/typescript/components/boundary/portal/utils/naming.d.ts +1 -0
  339. package/lib/typescript/components/boundary/portal/utils/naming.d.ts.map +1 -1
  340. package/lib/typescript/components/boundary/providers/boundary-root.provider.d.ts +1 -1
  341. package/lib/typescript/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
  342. package/lib/typescript/components/boundary/utils/measured-bounds.d.ts +1 -3
  343. package/lib/typescript/components/boundary/utils/measured-bounds.d.ts.map +1 -1
  344. package/lib/typescript/components/boundary/utils/refresh-signals.d.ts +0 -4
  345. package/lib/typescript/components/boundary/utils/refresh-signals.d.ts.map +1 -1
  346. package/lib/typescript/components/create-transition-aware-component.d.ts +0 -2
  347. package/lib/typescript/components/create-transition-aware-component.d.ts.map +1 -1
  348. package/lib/typescript/components/screen-container/hooks/use-backdrop-pointer-events.d.ts.map +1 -1
  349. package/lib/typescript/components/screen-container/hooks/use-content-layout.d.ts.map +1 -1
  350. package/lib/typescript/components/screen-container/layers/backdrop.d.ts.map +1 -1
  351. package/lib/typescript/components/screen-container/layers/content.d.ts.map +1 -1
  352. package/lib/typescript/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts.map +1 -1
  353. package/lib/typescript/components/screen-lifecycle/hooks/use-open-transition-intent.d.ts.map +1 -1
  354. package/lib/typescript/components/screen-lifecycle/hooks/use-transition-start-controller.d.ts.map +1 -1
  355. package/lib/typescript/components/screen-lifecycle/index.d.ts.map +1 -1
  356. package/lib/typescript/components/stack-view.d.ts +5 -1
  357. package/lib/typescript/components/stack-view.d.ts.map +1 -1
  358. package/lib/typescript/configs/index.d.ts +6 -6
  359. package/lib/typescript/configs/presets.d.ts +6 -6
  360. package/lib/typescript/configs/presets.d.ts.map +1 -1
  361. package/lib/typescript/constants.d.ts.map +1 -1
  362. package/lib/typescript/hooks/navigation/use-navigation-helpers.d.ts.map +1 -1
  363. package/lib/typescript/hooks/navigation/use-screen-state.d.ts.map +1 -1
  364. package/lib/typescript/index.d.ts +10 -18
  365. package/lib/typescript/index.d.ts.map +1 -1
  366. package/lib/typescript/providers/screen/animation/animation.provider.d.ts +4 -1
  367. package/lib/typescript/providers/screen/animation/animation.provider.d.ts.map +1 -1
  368. package/lib/typescript/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.d.ts.map +1 -1
  369. package/lib/typescript/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
  370. package/lib/typescript/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
  371. package/lib/typescript/providers/screen/animation/index.d.ts +1 -1
  372. package/lib/typescript/providers/screen/animation/index.d.ts.map +1 -1
  373. package/lib/typescript/providers/screen/descriptors/descriptors.provider.d.ts +10 -11
  374. package/lib/typescript/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
  375. package/lib/typescript/providers/screen/descriptors/index.d.ts +1 -1
  376. package/lib/typescript/providers/screen/descriptors/index.d.ts.map +1 -1
  377. package/lib/typescript/providers/screen/gestures/gestures.provider.d.ts +4 -1
  378. package/lib/typescript/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
  379. package/lib/typescript/providers/screen/gestures/hooks/use-screen-gesture-config.d.ts.map +1 -1
  380. package/lib/typescript/providers/screen/gestures/hooks/use-stable-runtime-config.d.ts.map +1 -1
  381. package/lib/typescript/providers/screen/gestures/index.d.ts +1 -1
  382. package/lib/typescript/providers/screen/gestures/index.d.ts.map +1 -1
  383. package/lib/typescript/providers/screen/gestures/ownership/shadowing-claims.d.ts +2 -3
  384. package/lib/typescript/providers/screen/gestures/ownership/shadowing-claims.d.ts.map +1 -1
  385. package/lib/typescript/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.d.ts.map +1 -1
  386. package/lib/typescript/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -1
  387. package/lib/typescript/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts.map +1 -1
  388. package/lib/typescript/providers/screen/gestures/pan/behavior/pan-reset.d.ts +4 -1
  389. package/lib/typescript/providers/screen/gestures/pan/behavior/pan-reset.d.ts.map +1 -1
  390. package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -1
  391. package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts +3 -1
  392. package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts.map +1 -1
  393. package/lib/typescript/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts +1 -1
  394. package/lib/typescript/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts.map +1 -1
  395. package/lib/typescript/providers/screen/options/index.d.ts +1 -1
  396. package/lib/typescript/providers/screen/options/index.d.ts.map +1 -1
  397. package/lib/typescript/providers/screen/options/options.provider.d.ts +4 -1
  398. package/lib/typescript/providers/screen/options/options.provider.d.ts.map +1 -1
  399. package/lib/typescript/providers/screen/screen-composer.d.ts +3 -2
  400. package/lib/typescript/providers/screen/screen-composer.d.ts.map +1 -1
  401. package/lib/typescript/providers/screen/styles/constants.d.ts +1 -0
  402. package/lib/typescript/providers/screen/styles/constants.d.ts.map +1 -1
  403. package/lib/typescript/providers/screen/styles/helpers/resolve-interpolator-style-handoff.d.ts +12 -0
  404. package/lib/typescript/providers/screen/styles/helpers/resolve-interpolator-style-handoff.d.ts.map +1 -0
  405. package/lib/typescript/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts +5 -3
  406. package/lib/typescript/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts.map +1 -1
  407. package/lib/typescript/providers/screen/styles/helpers/select-interpolator-frame.d.ts +4 -0
  408. package/lib/typescript/providers/screen/styles/helpers/select-interpolator-frame.d.ts.map +1 -0
  409. package/lib/typescript/providers/screen/styles/helpers/visibility-gate.d.ts +10 -0
  410. package/lib/typescript/providers/screen/styles/helpers/visibility-gate.d.ts.map +1 -1
  411. package/lib/typescript/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts +10 -5
  412. package/lib/typescript/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts.map +1 -1
  413. package/lib/typescript/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +1 -1
  414. package/lib/typescript/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  415. package/lib/typescript/providers/screen/styles/index.d.ts +1 -1
  416. package/lib/typescript/providers/screen/styles/index.d.ts.map +1 -1
  417. package/lib/typescript/providers/screen/styles/slot.provider.d.ts +4 -1
  418. package/lib/typescript/providers/screen/styles/slot.provider.d.ts.map +1 -1
  419. package/lib/typescript/providers/stack/blank-stack-state/helpers/build-blank-stack-state.d.ts.map +1 -1
  420. package/lib/typescript/providers/stack/blank-stack.provider.d.ts +12 -6
  421. package/lib/typescript/providers/stack/blank-stack.provider.d.ts.map +1 -1
  422. package/lib/typescript/providers/stack/core.provider.d.ts +10 -8
  423. package/lib/typescript/providers/stack/core.provider.d.ts.map +1 -1
  424. package/lib/typescript/providers/stack/direct.provider.d.ts +11 -4
  425. package/lib/typescript/providers/stack/direct.provider.d.ts.map +1 -1
  426. package/lib/typescript/stores/animation.store.d.ts +1 -0
  427. package/lib/typescript/stores/animation.store.d.ts.map +1 -1
  428. package/lib/typescript/types/blank-stack.types.d.ts +1 -4
  429. package/lib/typescript/types/blank-stack.types.d.ts.map +1 -1
  430. package/lib/typescript/types/gesture.types.d.ts +11 -0
  431. package/lib/typescript/types/gesture.types.d.ts.map +1 -1
  432. package/lib/typescript/types/providers/blank-stack-provider.types.d.ts +12 -20
  433. package/lib/typescript/types/providers/blank-stack-provider.types.d.ts.map +1 -1
  434. package/lib/typescript/types/providers/direct-stack.types.d.ts +2 -1
  435. package/lib/typescript/types/providers/direct-stack.types.d.ts.map +1 -1
  436. package/lib/typescript/types/screen.types.d.ts +0 -30
  437. package/lib/typescript/types/screen.types.d.ts.map +1 -1
  438. package/lib/typescript/types/stack.types.d.ts +2 -4
  439. package/lib/typescript/types/stack.types.d.ts.map +1 -1
  440. package/lib/typescript/utils/animation/animate-to-progress.d.ts +3 -2
  441. package/lib/typescript/utils/animation/animate-to-progress.d.ts.map +1 -1
  442. package/lib/typescript/utils/bounds/helpers/create-bounds-accessor-core.d.ts.map +1 -1
  443. package/lib/typescript/utils/create-provider.d.ts +17 -9
  444. package/lib/typescript/utils/create-provider.d.ts.map +1 -1
  445. package/package.json +1 -1
  446. package/src/adapters/with-screen-transitions/context.tsx +5 -0
  447. package/src/adapters/with-screen-transitions/stack-layout.tsx +20 -7
  448. package/src/animation/snap-to.ts +1 -0
  449. package/src/components/activity/variants/activity-screen.tsx +46 -13
  450. package/src/components/boundary/components/boundary-target.tsx +2 -2
  451. package/src/components/boundary/hooks/lifecycles/use-initial-destination-measurement.ts +28 -14
  452. package/src/components/boundary/hooks/lifecycles/use-refresh-boundary.ts +7 -24
  453. package/src/components/boundary/hooks/use-measurer.ts +7 -16
  454. package/src/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.ts +103 -0
  455. package/src/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +86 -61
  456. package/src/components/boundary/portal/components/boundary-portal/components/host.tsx +12 -14
  457. package/src/components/boundary/portal/components/boundary-portal/helpers/active-pair.ts +36 -0
  458. package/src/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.ts +114 -0
  459. package/src/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +9 -46
  460. package/src/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.ts +13 -20
  461. package/src/components/boundary/portal/utils/naming.ts +11 -0
  462. package/src/components/boundary/providers/boundary-root.provider.tsx +8 -11
  463. package/src/components/boundary/utils/measured-bounds.ts +29 -32
  464. package/src/components/boundary/utils/refresh-signals.ts +23 -26
  465. package/src/components/create-transition-aware-component.tsx +11 -36
  466. package/src/components/screen-container/hooks/use-backdrop-pointer-events.ts +10 -8
  467. package/src/components/screen-container/hooks/use-content-layout.ts +10 -10
  468. package/src/components/screen-container/layers/backdrop.tsx +20 -9
  469. package/src/components/screen-container/layers/content.tsx +20 -21
  470. package/src/components/screen-container/layers/surface-container.tsx +4 -4
  471. package/src/components/screen-lifecycle/hooks/use-close-transition-intent.ts +19 -9
  472. package/src/components/screen-lifecycle/hooks/use-open-transition-intent.ts +5 -2
  473. package/src/components/screen-lifecycle/hooks/use-transition-start-controller.ts +6 -0
  474. package/src/components/screen-lifecycle/index.tsx +3 -2
  475. package/src/components/stack-view.tsx +117 -56
  476. package/src/configs/presets.ts +13 -13
  477. package/src/constants.ts +1 -0
  478. package/src/hooks/navigation/use-navigation-helpers.ts +9 -8
  479. package/src/hooks/navigation/use-screen-state.ts +4 -2
  480. package/src/providers/screen/animation/animation.provider.tsx +170 -173
  481. package/src/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.tsx +4 -2
  482. package/src/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +2 -2
  483. package/src/providers/screen/animation/helpers/hydrate-transition-state/index.ts +4 -21
  484. package/src/providers/screen/animation/helpers/pipeline.ts +6 -10
  485. package/src/providers/screen/animation/index.tsx +1 -1
  486. package/src/providers/screen/animation/use-screen-animation.tsx +2 -2
  487. package/src/providers/screen/descriptors/descriptors.provider.tsx +83 -72
  488. package/src/providers/screen/descriptors/index.tsx +0 -2
  489. package/src/providers/screen/gestures/gestures.provider.tsx +72 -63
  490. package/src/providers/screen/gestures/hooks/use-screen-gesture-config.ts +7 -8
  491. package/src/providers/screen/gestures/hooks/use-screen-gesture.ts +2 -2
  492. package/src/providers/screen/gestures/hooks/use-stable-runtime-config.ts +4 -2
  493. package/src/providers/screen/gestures/index.tsx +1 -1
  494. package/src/providers/screen/gestures/ownership/shadowing-claims.ts +3 -4
  495. package/src/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.ts +16 -8
  496. package/src/providers/screen/gestures/pan/activation/use-pan-activation.ts +7 -2
  497. package/src/providers/screen/gestures/pan/behavior/pan-lifecycle.ts +8 -16
  498. package/src/providers/screen/gestures/pan/behavior/pan-reset.ts +14 -0
  499. package/src/providers/screen/gestures/pan/use-build-pan-gesture.ts +2 -2
  500. package/src/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +12 -11
  501. package/src/providers/screen/gestures/pinch/behavior/pinch-reset.ts +10 -0
  502. package/src/providers/screen/gestures/pinch/use-build-pinch-gesture.ts +2 -2
  503. package/src/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.tsx +4 -4
  504. package/src/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.ts +4 -4
  505. package/src/providers/screen/options/index.ts +1 -1
  506. package/src/providers/screen/options/options.provider.tsx +24 -28
  507. package/src/providers/screen/screen-composer.tsx +9 -2
  508. package/src/providers/screen/styles/constants.ts +8 -6
  509. package/src/providers/screen/styles/helpers/resolve-interpolator-style-handoff.ts +138 -0
  510. package/src/providers/screen/styles/helpers/resolve-slot-styles/index.ts +71 -4
  511. package/src/providers/screen/styles/helpers/select-interpolator-frame.ts +41 -0
  512. package/src/providers/screen/styles/helpers/visibility-gate.ts +25 -0
  513. package/src/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +99 -55
  514. package/src/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +4 -2
  515. package/src/providers/screen/styles/index.tsx +0 -1
  516. package/src/providers/screen/styles/slot.provider.tsx +62 -48
  517. package/src/providers/stack/blank-stack-state/helpers/build-blank-stack-state.ts +4 -17
  518. package/src/providers/stack/blank-stack.provider.tsx +66 -75
  519. package/src/providers/stack/core.provider.tsx +53 -79
  520. package/src/providers/stack/direct.provider.tsx +76 -57
  521. package/src/stores/animation.store.ts +19 -0
  522. package/src/types/blank-stack.types.ts +1 -4
  523. package/src/types/gesture.types.ts +11 -0
  524. package/src/types/providers/blank-stack-provider.types.ts +8 -22
  525. package/src/types/providers/direct-stack.types.ts +2 -1
  526. package/src/types/screen.types.ts +0 -32
  527. package/src/types/stack.types.ts +2 -4
  528. package/src/utils/animation/animate-to-progress.ts +18 -18
  529. package/src/utils/bounds/helpers/create-bounds-accessor-core.ts +7 -0
  530. package/src/utils/create-provider.tsx +105 -136
  531. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/host-name.js +0 -14
  532. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +0 -1
  533. package/lib/commonjs/components/boundary/portal/utils/handoff-target.js +0 -33
  534. package/lib/commonjs/components/boundary/portal/utils/handoff-target.js.map +0 -1
  535. package/lib/commonjs/hooks/use-stable-callback-value.js +0 -69
  536. package/lib/commonjs/hooks/use-stable-callback-value.js.map +0 -1
  537. package/lib/commonjs/providers/register-bounds.provider.js +0 -312
  538. package/lib/commonjs/providers/register-bounds.provider.js.map +0 -1
  539. package/lib/commonjs/providers/screen/origin.provider.js +0 -41
  540. package/lib/commonjs/providers/screen/origin.provider.js.map +0 -1
  541. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/host-name.js +0 -9
  542. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +0 -1
  543. package/lib/module/components/boundary/portal/utils/handoff-target.js +0 -28
  544. package/lib/module/components/boundary/portal/utils/handoff-target.js.map +0 -1
  545. package/lib/module/hooks/use-stable-callback-value.js +0 -64
  546. package/lib/module/hooks/use-stable-callback-value.js.map +0 -1
  547. package/lib/module/providers/register-bounds.provider.js +0 -308
  548. package/lib/module/providers/register-bounds.provider.js.map +0 -1
  549. package/lib/module/providers/screen/origin.provider.js +0 -33
  550. package/lib/module/providers/screen/origin.provider.js.map +0 -1
  551. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts +0 -2
  552. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts.map +0 -1
  553. package/lib/typescript/components/boundary/portal/utils/handoff-target.d.ts +0 -12
  554. package/lib/typescript/components/boundary/portal/utils/handoff-target.d.ts.map +0 -1
  555. package/lib/typescript/hooks/use-stable-callback-value.d.ts +0 -13
  556. package/lib/typescript/hooks/use-stable-callback-value.d.ts.map +0 -1
  557. package/lib/typescript/providers/register-bounds.provider.d.ts +0 -25
  558. package/lib/typescript/providers/register-bounds.provider.d.ts.map +0 -1
  559. package/lib/typescript/providers/screen/origin.provider.d.ts +0 -11
  560. package/lib/typescript/providers/screen/origin.provider.d.ts.map +0 -1
  561. package/src/components/boundary/portal/components/boundary-portal/helpers/host-name.ts +0 -10
  562. package/src/components/boundary/portal/utils/handoff-target.ts +0 -48
  563. package/src/hooks/use-stable-callback-value.ts +0 -72
  564. package/src/providers/register-bounds.provider.tsx +0 -401
  565. package/src/providers/screen/origin.provider.tsx +0 -38
@@ -5,33 +5,34 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.useBoundaryContentPortalAttachment = void 0;
7
7
  var _reactNativeReanimated = require("react-native-reanimated");
8
+ var _useStack = require("../../../../../../hooks/navigation/use-stack");
8
9
  var _descriptors = require("../../../../../../providers/screen/descriptors");
9
10
  var _styles = require("../../../../../../providers/screen/styles");
10
11
  var _transitionVisualState = require("../../../../../../providers/screen/styles/helpers/transition-visual-state");
11
12
  var _animation = require("../../../../../../stores/animation.store");
13
+ var _linkPairs = require("../../../../../../stores/bounds/helpers/link-pairs.helpers");
14
+ var _entries = require("../../../../../../stores/bounds/internals/entries");
12
15
  var _state = require("../../../../../../stores/bounds/internals/state");
13
16
  var _system = require("../../../../../../stores/system.store");
14
- var _handoffTarget = require("../../../utils/handoff-target");
15
17
  var _naming = require("../../../utils/naming");
16
18
  var _teleportControl = require("../../../utils/teleport-control");
19
+ var _activeHandoffReceiver = require("../helpers/active-handoff-receiver");
17
20
  var _hostName = require("../helpers/host-name");
18
21
  const useBoundaryContentPortalAttachment = ({
19
22
  boundaryId
20
23
  }) => {
21
24
  const {
25
+ nextInterpolatorReady,
22
26
  slotsMap
23
27
  } = (0, _styles.useScreenSlots)();
24
- const sourcePairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.sourcePairKey);
25
28
  const currentScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.currentScreenKey);
26
- const nextScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.nextScreenKey);
27
- const destinationScreenKey = nextScreenKey ?? currentScreenKey;
28
- const destinationAnimationProgress = _system.SystemStore.getValue(destinationScreenKey, "animationProgress");
29
- const destinationClosing = _animation.AnimationStore.getValue(destinationScreenKey, "closing");
30
-
31
- // `nextScreenKey` can change while the previously attached destination is
32
- // still closing. Retain that destination's lifecycle shared values so this
33
- // payload follows the screen that actually hosts it, not the newest route.
34
- const attachedDestination = (0, _reactNativeReanimated.useSharedValue)(null);
29
+ const sourcePairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.sourcePairKey);
30
+ const activeReceiverScreenKey = (0, _useStack.useStack)(_activeHandoffReceiver.resolveActiveHandoffReceiver);
31
+ const previousReceiverScreenKey = (0, _useStack.useStack)(_activeHandoffReceiver.resolvePreviousHandoffReceiver);
32
+ const activeReceiverAnimationProgress = _system.SystemStore.getValue(activeReceiverScreenKey ?? currentScreenKey, "animationProgress");
33
+ const activeReceiverClosing = _animation.AnimationStore.getValue(activeReceiverScreenKey ?? currentScreenKey, "closing");
34
+ const attachedReceiverScreenKey = (0, _reactNativeReanimated.useSharedValue)(currentScreenKey);
35
+ const sourcePairBeforeClose = (0, _reactNativeReanimated.useSharedValue)(null);
35
36
  const teleportProps = (0, _reactNativeReanimated.useAnimatedProps)(() => {
36
37
  "worklet";
37
38
 
@@ -41,35 +42,41 @@ const useBoundaryContentPortalAttachment = ({
41
42
  teleport,
42
43
  ...slotProps
43
44
  } = slot?.props ?? {};
44
- const animationProgress = destinationAnimationProgress.get();
45
45
  const shouldTeleport = (0, _teleportControl.isTeleportEnabled)(teleport);
46
- const pairsState = _state.pairs.get();
47
- const enteringTargetScreenKey = shouldTeleport ? (0, _handoffTarget.resolveEnteringHandoffTarget)({
48
- animationProgress,
49
- boundaryId,
50
- currentScreenKey,
51
- pairsState,
52
- sourcePairKey
53
- }) : null;
54
- if (enteringTargetScreenKey) {
55
- // A valid entering pair is the only event that replaces the current
56
- // attachment and its lifecycle owner.
57
- attachedDestination.set({
58
- animationProgress: destinationAnimationProgress,
59
- closing: destinationClosing,
60
- screenKey: enteringTargetScreenKey
61
- });
46
+ const closing = activeReceiverClosing.get();
47
+ const animationProgress = activeReceiverAnimationProgress.get();
48
+ if (!closing) {
49
+ sourcePairBeforeClose.set(sourcePairKey ?? null);
62
50
  }
63
- const attached = attachedDestination.get();
64
- const hasAttachedCloseFinished = attached !== null && (0, _transitionVisualState.hasCloseTransitionFinished)({
65
- animationProgress: attached.animationProgress.get(),
66
- closing: attached.closing.get()
51
+ const pairChangedDuringClose = !!closing && !!sourcePairKey && sourcePairKey !== sourcePairBeforeClose.get();
52
+ const hasActiveCloseFinished = (0, _transitionVisualState.hasCloseTransitionFinished)({
53
+ closing,
54
+ animationProgress
67
55
  });
68
-
69
- // Missing or changing pairs do not imply a return: keep the current host
70
- // until its own screen visually closes. At that point, target the source
71
- // host explicitly instead of `null` so Teleport restores source dimensions.
72
- const targetScreenKey = enteringTargetScreenKey ? enteringTargetScreenKey : shouldTeleport ? hasAttachedCloseFinished ? currentScreenKey : attached?.screenKey ?? null : null;
56
+ const pair = sourcePairKey ? _state.pairs.get()[sourcePairKey] : null;
57
+ const link = pair?.links[(0, _linkPairs.getLinkKeyFromTag)(boundaryId)];
58
+ const pairDestination = link?.status === "complete" && (!link.group || pair?.groups[link.group]?.activeId === (0, _linkPairs.getLinkKeyFromTag)(boundaryId)) ? link.destination.screenKey : null;
59
+ const interpolatorReady = nextInterpolatorReady.get();
60
+ const attachedScreenKey = attachedReceiverScreenKey.get();
61
+ const nextReceiverScreenKey = (0, _activeHandoffReceiver.resolveHandoffAttachmentCandidate)({
62
+ activeReceiverClosing: !!closing,
63
+ activeReceiverScreenKey,
64
+ attachedReceiverScreenKey: attachedScreenKey,
65
+ hasActiveCloseFinished,
66
+ interpolatorReady: !!interpolatorReady,
67
+ pairChangedDuringClose,
68
+ pairDestinationScreenKey: pairDestination,
69
+ previousReceiverScreenKey
70
+ });
71
+ const receiverEntry = nextReceiverScreenKey ? (0, _entries.getEntry)(boundaryId, nextReceiverScreenKey) : null;
72
+ const receiverReady = receiverEntry?.handoff === true;
73
+ const returningFromActiveClose = hasActiveCloseFinished && attachedScreenKey === activeReceiverScreenKey;
74
+ const activatingPairDestination = !!pairDestination && !!interpolatorReady && nextReceiverScreenKey === pairDestination;
75
+ const canActivateReceiver = returningFromActiveClose || activatingPairDestination || animationProgress > 0;
76
+ if (nextReceiverScreenKey && receiverReady && canActivateReceiver) {
77
+ attachedReceiverScreenKey.set(nextReceiverScreenKey);
78
+ }
79
+ const targetScreenKey = shouldTeleport ? attachedReceiverScreenKey.get() : null;
73
80
  const targetHostName = targetScreenKey ? (0, _hostName.createBoundaryContentPortalHostName)(targetScreenKey, boundaryId) : _naming.PORTAL_HOST_NAME_RESET_VALUE;
74
81
  return {
75
82
  ...slotProps,
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeReanimated","require","_descriptors","_styles","_transitionVisualState","_animation","_state","_system","_handoffTarget","_naming","_teleportControl","_hostName","useBoundaryContentPortalAttachment","boundaryId","slotsMap","useScreenSlots","sourcePairKey","useDescriptorsStore","s","derivations","currentScreenKey","nextScreenKey","destinationScreenKey","destinationAnimationProgress","SystemStore","getValue","destinationClosing","AnimationStore","attachedDestination","useSharedValue","teleportProps","useAnimatedProps","slot","get","pointerEvents","_pointerEvents","teleport","slotProps","props","animationProgress","shouldTeleport","isTeleportEnabled","pairsState","pairs","enteringTargetScreenKey","resolveEnteringHandoffTarget","set","closing","screenKey","attached","hasAttachedCloseFinished","hasCloseTransitionFinished","targetScreenKey","targetHostName","createBoundaryContentPortalHostName","PORTAL_HOST_NAME_RESET_VALUE","hostName","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeReanimated","require","_useStack","_descriptors","_styles","_transitionVisualState","_animation","_linkPairs","_entries","_state","_system","_naming","_teleportControl","_activeHandoffReceiver","_hostName","useBoundaryContentPortalAttachment","boundaryId","nextInterpolatorReady","slotsMap","useScreenSlots","currentScreenKey","useDescriptorsStore","s","derivations","sourcePairKey","activeReceiverScreenKey","useStack","resolveActiveHandoffReceiver","previousReceiverScreenKey","resolvePreviousHandoffReceiver","activeReceiverAnimationProgress","SystemStore","getValue","activeReceiverClosing","AnimationStore","attachedReceiverScreenKey","useSharedValue","sourcePairBeforeClose","teleportProps","useAnimatedProps","slot","get","pointerEvents","_pointerEvents","teleport","slotProps","props","shouldTeleport","isTeleportEnabled","closing","animationProgress","set","pairChangedDuringClose","hasActiveCloseFinished","hasCloseTransitionFinished","pair","pairs","link","links","getLinkKeyFromTag","pairDestination","status","group","groups","activeId","destination","screenKey","interpolatorReady","attachedScreenKey","nextReceiverScreenKey","resolveHandoffAttachmentCandidate","pairDestinationScreenKey","receiverEntry","getEntry","receiverReady","handoff","returningFromActiveClose","activatingPairDestination","canActivateReceiver","targetScreenKey","targetHostName","createBoundaryContentPortalHostName","PORTAL_HOST_NAME_RESET_VALUE","hostName","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts"],"mappings":"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","ignoreList":[]}
@@ -55,7 +55,7 @@ function HostImpl({
55
55
  (0, _hostRegistry.unregisterHost)(screenKey, hostKey);
56
56
  };
57
57
  }, [fallback, hostKey, screenKey]);
58
- const boundaryHosts = measurement.canRenderHosts ? activeBoundaryHosts.map(host => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
58
+ const boundaryHosts = activeBoundaryHosts.map(host => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
59
59
  pointerEvents: _teleport.PORTAL_POINTER_EVENTS,
60
60
  style: [styles.boundaryHostViewport, {
61
61
  width: viewportWidth,
@@ -65,7 +65,7 @@ function HostImpl({
65
65
  host: host,
66
66
  style: _reactNative.StyleSheet.absoluteFill
67
67
  })
68
- }, host.portalHostName)) : null;
68
+ }, host.portalHostName));
69
69
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
70
70
  ref: measurement.hostRef,
71
71
  pointerEvents: _teleport.PORTAL_POINTER_EVENTS,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_interopRequireDefault","_descriptors","_styles","_teleport","_useHostMeasurement","_hostRegistry","_portalBoundaryHost","_portalBoundaryHost2","_jsxRuntime","e","__esModule","default","nextHostId","HostImpl","fallback","style","screenKey","useDescriptorsStore","s","derivations","currentScreenKey","generatedHostKeyRef","useRef","current","hostKey","capturesScroll","activeBoundaryHosts","useActivePortalBoundaryHosts","visibilityBlocked","useScreenSlots","height","viewportHeight","width","viewportWidth","useWindowDimensions","measurement","useHostMeasurement","enabled","length","useLayoutEffect","registerHost","unregisterHost","boundaryHosts","canRenderHosts","map","host","jsx","View","pointerEvents","PORTAL_POINTER_EVENTS","styles","boundaryHostViewport","children","PortalBoundaryHost","StyleSheet","absoluteFill","portalHostName","ref","hostRef","collapsable","Host","exports","memo","props","ScreenFallbackHost","create","elevation","left","overflow","position","top","zIndex"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/components/host.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_interopRequireDefault","_descriptors","_styles","_teleport","_useHostMeasurement","_hostRegistry","_portalBoundaryHost","_portalBoundaryHost2","_jsxRuntime","e","__esModule","default","nextHostId","HostImpl","fallback","style","screenKey","useDescriptorsStore","s","derivations","currentScreenKey","generatedHostKeyRef","useRef","current","hostKey","capturesScroll","activeBoundaryHosts","useActivePortalBoundaryHosts","visibilityBlocked","useScreenSlots","height","viewportHeight","width","viewportWidth","useWindowDimensions","measurement","useHostMeasurement","enabled","length","useLayoutEffect","registerHost","unregisterHost","boundaryHosts","map","host","jsx","View","pointerEvents","PORTAL_POINTER_EVENTS","styles","boundaryHostViewport","children","PortalBoundaryHost","StyleSheet","absoluteFill","portalHostName","ref","hostRef","collapsable","Host","exports","memo","props","ScreenFallbackHost","create","elevation","left","overflow","position","top","zIndex"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/components/host.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.hasActiveBoundaryPortalLink = void 0;
7
+ var _linkPairs = require("../../../../../../stores/bounds/helpers/link-pairs.helpers");
8
+ const hasActiveBoundaryPortalLink = ({
9
+ boundaryId,
10
+ pairsState,
11
+ sourcePairKey
12
+ }) => {
13
+ "worklet";
14
+
15
+ if (!sourcePairKey) {
16
+ return false;
17
+ }
18
+ const pair = pairsState[sourcePairKey];
19
+ const linkKey = (0, _linkPairs.getLinkKeyFromTag)(boundaryId);
20
+ const link = pair?.links[linkKey];
21
+ if (!link?.source) {
22
+ return false;
23
+ }
24
+ if (link.group && pair.groups[link.group]?.activeId !== linkKey) {
25
+ return false;
26
+ }
27
+ return true;
28
+ };
29
+ exports.hasActiveBoundaryPortalLink = hasActiveBoundaryPortalLink;
30
+ //# sourceMappingURL=active-pair.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_linkPairs","require","hasActiveBoundaryPortalLink","boundaryId","pairsState","sourcePairKey","pair","linkKey","getLinkKeyFromTag","link","links","source","group","groups","activeId","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/helpers/active-pair.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAYO,MAAMC,2BAA2B,GAAGA,CAAC;EAC3CC,UAAU;EACVC,UAAU;EACVC;AACkC,CAAC,KAAc;EACjD,SAAS;;EACT,IAAI,CAACA,aAAa,EAAE;IACnB,OAAO,KAAK;EACb;EAEA,MAAMC,IAAI,GAAGF,UAAU,CAACC,aAAa,CAAC;EACtC,MAAME,OAAO,GAAG,IAAAC,4BAAiB,EAACL,UAAU,CAAC;EAC7C,MAAMM,IAAI,GAAGH,IAAI,EAAEI,KAAK,CAACH,OAAO,CAAC;EAEjC,IAAI,CAACE,IAAI,EAAEE,MAAM,EAAE;IAClB,OAAO,KAAK;EACb;EAEA,IAAIF,IAAI,CAACG,KAAK,IAAIN,IAAI,CAACO,MAAM,CAACJ,IAAI,CAACG,KAAK,CAAC,EAAEE,QAAQ,KAAKP,OAAO,EAAE;IAChE,OAAO,KAAK;EACb;EAEA,OAAO,IAAI;AACZ,CAAC;AAACQ,OAAA,CAAAb,2BAAA,GAAAA,2BAAA","ignoreList":[]}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useActivePortalBoundaryHost = void 0;
7
+ var _react = require("react");
8
+ var _reactNativeReanimated = require("react-native-reanimated");
9
+ var _reactNativeWorklets = require("react-native-worklets");
10
+ var _state = require("../../../../../../stores/bounds/internals/state");
11
+ var _naming = require("../../../utils/naming");
12
+ var _activePair = require("../helpers/active-pair");
13
+ var _portalBoundaryHost = require("../stores/portal-boundary-host.store");
14
+ const useActivePortalBoundaryHost = ({
15
+ boundaryId,
16
+ currentScreenKey,
17
+ escapeHostKey,
18
+ localStylesMaps,
19
+ portalHostName,
20
+ portalHostReady,
21
+ slotsMap,
22
+ sourcePairKey
23
+ }) => {
24
+ const [hasActiveLink, setHasActiveLink] = (0, _react.useState)(false);
25
+ const sourcePairKeyRef = (0, _react.useRef)(sourcePairKey);
26
+ sourcePairKeyRef.current = sourcePairKey;
27
+ const updateActiveLink = (0, _react.useCallback)((observedSourcePairKey, nextHasActiveLink) => {
28
+ if (sourcePairKeyRef.current !== observedSourcePairKey) {
29
+ return;
30
+ }
31
+ setHasActiveLink(nextHasActiveLink);
32
+ }, []);
33
+ (0, _reactNativeReanimated.useAnimatedReaction)(() => {
34
+ "worklet";
35
+
36
+ return (0, _activePair.hasActiveBoundaryPortalLink)({
37
+ boundaryId,
38
+ pairsState: _state.pairs.get(),
39
+ sourcePairKey
40
+ });
41
+ }, (nextHasActiveLink, previousHasActiveLink) => {
42
+ "worklet";
43
+
44
+ if (nextHasActiveLink === previousHasActiveLink) {
45
+ return;
46
+ }
47
+ (0, _reactNativeWorklets.scheduleOnRN)(updateActiveLink, sourcePairKey, nextHasActiveLink);
48
+ });
49
+ (0, _react.useLayoutEffect)(() => {
50
+ if (!hasActiveLink || !sourcePairKey || !escapeHostKey) {
51
+ portalHostName.set(null);
52
+ portalHostReady.set(false);
53
+ return;
54
+ }
55
+ const nextPortalHostName = (0, _naming.createBoundaryPortalHostName)(escapeHostKey, boundaryId, sourcePairKey);
56
+ (0, _portalBoundaryHost.mountPortalBoundaryHost)({
57
+ boundaryId,
58
+ hostKey: escapeHostKey,
59
+ localStylesMaps,
60
+ pairKey: sourcePairKey,
61
+ portalHostName: nextPortalHostName,
62
+ portalHostReady,
63
+ screenKey: currentScreenKey,
64
+ slotsMap
65
+ });
66
+ portalHostName.set(nextPortalHostName);
67
+ return () => {
68
+ portalHostName.set(null);
69
+ portalHostReady.set(false);
70
+ (0, _portalBoundaryHost.unmountPortalBoundaryHostByName)(nextPortalHostName);
71
+ };
72
+ }, [boundaryId, currentScreenKey, escapeHostKey, localStylesMaps, portalHostName, portalHostReady, sourcePairKey, slotsMap, hasActiveLink]);
73
+ };
74
+ exports.useActivePortalBoundaryHost = useActivePortalBoundaryHost;
75
+ //# sourceMappingURL=use-active-portal-boundary-host.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_reactNativeWorklets","_state","_naming","_activePair","_portalBoundaryHost","useActivePortalBoundaryHost","boundaryId","currentScreenKey","escapeHostKey","localStylesMaps","portalHostName","portalHostReady","slotsMap","sourcePairKey","hasActiveLink","setHasActiveLink","useState","sourcePairKeyRef","useRef","current","updateActiveLink","useCallback","observedSourcePairKey","nextHasActiveLink","useAnimatedReaction","hasActiveBoundaryPortalLink","pairsState","pairs","get","previousHasActiveLink","scheduleOnRN","useLayoutEffect","set","nextPortalHostName","createBoundaryPortalHostName","mountPortalBoundaryHost","hostKey","pairKey","screenKey","unmountPortalBoundaryHostByName","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,oBAAA,GAAAF,OAAA;AAEA,IAAAG,MAAA,GAAAH,OAAA;AAGA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,mBAAA,GAAAN,OAAA;AAgBO,MAAMO,2BAA2B,GAAGA,CAAC;EAC3CC,UAAU;EACVC,gBAAgB;EAChBC,aAAa;EACbC,eAAe;EACfC,cAAc;EACdC,eAAe;EACfC,QAAQ;EACRC;AACkC,CAAC,KAAK;EACxC,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACzD,MAAMC,gBAAgB,GAAG,IAAAC,aAAM,EAACL,aAAa,CAAC;EAC9CI,gBAAgB,CAACE,OAAO,GAAGN,aAAa;EAExC,MAAMO,gBAAgB,GAAG,IAAAC,kBAAW,EACnC,CACCC,qBAAgD,EAChDC,iBAA0B,KACtB;IACJ,IAAIN,gBAAgB,CAACE,OAAO,KAAKG,qBAAqB,EAAE;MACvD;IACD;IAEAP,gBAAgB,CAACQ,iBAAiB,CAAC;EACpC,CAAC,EACD,EACD,CAAC;EAED,IAAAC,0CAAmB,EAClB,MAAM;IACL,SAAS;;IACT,OAAO,IAAAC,uCAA2B,EAAC;MAClCnB,UAAU;MACVoB,UAAU,EAAEC,YAAK,CAACC,GAAG,CAAC,CAAC;MACvBf;IACD,CAAC,CAAC;EACH,CAAC,EACD,CAACU,iBAAiB,EAAEM,qBAAqB,KAAK;IAC7C,SAAS;;IACT,IAAIN,iBAAiB,KAAKM,qBAAqB,EAAE;MAChD;IACD;IAEA,IAAAC,iCAAY,EAACV,gBAAgB,EAAEP,aAAa,EAAEU,iBAAiB,CAAC;EACjE,CACD,CAAC;EAED,IAAAQ,sBAAe,EAAC,MAAM;IACrB,IAAI,CAACjB,aAAa,IAAI,CAACD,aAAa,IAAI,CAACL,aAAa,EAAE;MACvDE,cAAc,CAACsB,GAAG,CAAC,IAAI,CAAC;MACxBrB,eAAe,CAACqB,GAAG,CAAC,KAAK,CAAC;MAC1B;IACD;IAEA,MAAMC,kBAAkB,GAAG,IAAAC,oCAA4B,EACtD1B,aAAa,EACbF,UAAU,EACVO,aACD,CAAC;IAED,IAAAsB,2CAAuB,EAAC;MACvB7B,UAAU;MACV8B,OAAO,EAAE5B,aAAa;MACtBC,eAAe;MACf4B,OAAO,EAAExB,aAAa;MACtBH,cAAc,EAAEuB,kBAAkB;MAClCtB,eAAe;MACf2B,SAAS,EAAE/B,gBAAgB;MAC3BK;IACD,CAAC,CAAC;IACFF,cAAc,CAACsB,GAAG,CAACC,kBAAkB,CAAC;IAEtC,OAAO,MAAM;MACZvB,cAAc,CAACsB,GAAG,CAAC,IAAI,CAAC;MACxBrB,eAAe,CAACqB,GAAG,CAAC,KAAK,CAAC;MAC1B,IAAAO,mDAA+B,EAACN,kBAAkB,CAAC;IACpD,CAAC;EACF,CAAC,EAAE,CACF3B,UAAU,EACVC,gBAAgB,EAChBC,aAAa,EACbC,eAAe,EACfC,cAAc,EACdC,eAAe,EACfE,aAAa,EACbD,QAAQ,EACRE,aAAa,CACb,CAAC;AACH,CAAC;AAAC0B,OAAA,CAAAnC,2BAAA,GAAAA,2BAAA","ignoreList":[]}
@@ -4,20 +4,18 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useBoundaryPortalAttachment = void 0;
7
- var _react = require("react");
8
7
  var _reactNativeReanimated = require("react-native-reanimated");
9
8
  var _descriptors = require("../../../../../../providers/screen/descriptors");
10
9
  var _styles = require("../../../../../../providers/screen/styles");
11
10
  var _transitionVisualState = require("../../../../../../providers/screen/styles/helpers/transition-visual-state");
12
11
  var _animation = require("../../../../../../stores/animation.store");
13
- var _linkPairs = require("../../../../../../stores/bounds/helpers/link-pairs.helpers");
14
12
  var _state = require("../../../../../../stores/bounds/internals/state");
15
13
  var _system = require("../../../../../../stores/system.store");
16
14
  var _naming = require("../../../utils/naming");
17
15
  var _teleportControl = require("../../../utils/teleport-control");
18
- var _hostName = require("../helpers/host-name");
16
+ var _activePair = require("../helpers/active-pair");
19
17
  var _hostRegistry = require("../stores/host-registry.store");
20
- var _portalBoundaryHost = require("../stores/portal-boundary-host.store");
18
+ var _useActivePortalBoundaryHost = require("./use-active-portal-boundary-host");
21
19
  const useBoundaryPortalAttachment = ({
22
20
  boundaryId
23
21
  }) => {
@@ -35,30 +33,16 @@ const useBoundaryPortalAttachment = ({
35
33
  const portalHostReady = (0, _reactNativeReanimated.useSharedValue)(false);
36
34
  const attachedDestination = (0, _reactNativeReanimated.useSharedValue)(null);
37
35
  const escapeHostKey = (0, _hostRegistry.useActiveHostKey)(currentScreenKey);
38
- (0, _react.useLayoutEffect)(() => {
39
- if (!sourcePairKey || !escapeHostKey) {
40
- portalHostName.set(null);
41
- portalHostReady.set(false);
42
- return;
43
- }
44
- const nextPortalHostName = (0, _hostName.createBoundaryPortalHostName)(escapeHostKey, boundaryId, sourcePairKey);
45
- (0, _portalBoundaryHost.mountPortalBoundaryHost)({
46
- boundaryId,
47
- hostKey: escapeHostKey,
48
- localStylesMaps,
49
- pairKey: sourcePairKey,
50
- portalHostName: nextPortalHostName,
51
- portalHostReady,
52
- screenKey: currentScreenKey,
53
- slotsMap
54
- });
55
- portalHostName.set(nextPortalHostName);
56
- return () => {
57
- portalHostName.set(null);
58
- portalHostReady.set(false);
59
- (0, _portalBoundaryHost.unmountPortalBoundaryHostByName)(nextPortalHostName);
60
- };
61
- }, [boundaryId, currentScreenKey, escapeHostKey, localStylesMaps, portalHostName, portalHostReady, sourcePairKey, slotsMap]);
36
+ (0, _useActivePortalBoundaryHost.useActivePortalBoundaryHost)({
37
+ boundaryId,
38
+ currentScreenKey,
39
+ escapeHostKey,
40
+ localStylesMaps,
41
+ portalHostName,
42
+ portalHostReady,
43
+ sourcePairKey,
44
+ slotsMap
45
+ });
62
46
  const teleportProps = (0, _reactNativeReanimated.useAnimatedProps)(() => {
63
47
  "worklet";
64
48
 
@@ -70,10 +54,11 @@ const useBoundaryPortalAttachment = ({
70
54
  } = slot?.props ?? {};
71
55
  const shouldTeleport = (0, _teleportControl.isTeleportEnabled)(teleport);
72
56
  const hostName = portalHostName.get();
73
- const pair = sourcePairKey ? _state.pairs.get()[sourcePairKey] : undefined;
74
- const linkKey = (0, _linkPairs.getLinkKeyFromTag)(boundaryId);
75
- const link = pair?.links[linkKey];
76
- const hasActiveLink = link?.source !== null && link !== undefined && (!link.group || pair?.groups[link.group]?.activeId === linkKey);
57
+ const hasActiveLink = (0, _activePair.hasActiveBoundaryPortalLink)({
58
+ boundaryId,
59
+ pairsState: _state.pairs.get(),
60
+ sourcePairKey
61
+ });
77
62
  const hasAttachableHost = shouldTeleport && hasActiveLink && portalHostReady.get() && hostName;
78
63
  if (hasAttachableHost) {
79
64
  attachedDestination.set({
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNativeReanimated","_descriptors","_styles","_transitionVisualState","_animation","_linkPairs","_state","_system","_naming","_teleportControl","_hostName","_hostRegistry","_portalBoundaryHost","useBoundaryPortalAttachment","boundaryId","sourcePairKey","useDescriptorsStore","s","derivations","currentScreenKey","nextScreenKey","destinationScreenKey","destinationAnimationProgress","SystemStore","getValue","destinationClosing","AnimationStore","localStylesMaps","slotsMap","useScreenSlots","portalHostName","useSharedValue","portalHostReady","attachedDestination","escapeHostKey","useActiveHostKey","useLayoutEffect","set","nextPortalHostName","createBoundaryPortalHostName","mountPortalBoundaryHost","hostKey","pairKey","screenKey","unmountPortalBoundaryHostByName","teleportProps","useAnimatedProps","slot","get","pointerEvents","_pointerEvents","teleport","slotProps","props","shouldTeleport","isTeleportEnabled","hostName","pair","pairs","undefined","linkKey","getLinkKeyFromTag","link","links","hasActiveLink","source","group","groups","activeId","hasAttachableHost","animationProgress","closing","attached","hasAttachedCloseFinished","hasCloseTransitionFinished","canAttach","targetHostName","PORTAL_HOST_NAME_RESET_VALUE","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeReanimated","require","_descriptors","_styles","_transitionVisualState","_animation","_state","_system","_naming","_teleportControl","_activePair","_hostRegistry","_useActivePortalBoundaryHost","useBoundaryPortalAttachment","boundaryId","sourcePairKey","useDescriptorsStore","s","derivations","currentScreenKey","nextScreenKey","destinationScreenKey","destinationAnimationProgress","SystemStore","getValue","destinationClosing","AnimationStore","localStylesMaps","slotsMap","useScreenSlots","portalHostName","useSharedValue","portalHostReady","attachedDestination","escapeHostKey","useActiveHostKey","useActivePortalBoundaryHost","teleportProps","useAnimatedProps","slot","get","pointerEvents","_pointerEvents","teleport","slotProps","props","shouldTeleport","isTeleportEnabled","hostName","hasActiveLink","hasActiveBoundaryPortalLink","pairsState","pairs","hasAttachableHost","set","animationProgress","closing","attached","hasAttachedCloseFinished","hasCloseTransitionFinished","canAttach","targetHostName","PORTAL_HOST_NAME_RESET_VALUE","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts"],"mappings":"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","ignoreList":[]}
@@ -7,7 +7,6 @@ exports.useHostMeasurement = void 0;
7
7
  var _react = require("react");
8
8
  var _reactNativeReanimated = require("react-native-reanimated");
9
9
  var _reactNativeWorklets = require("react-native-worklets");
10
- var _origin = require("../../../../../../providers/screen/origin.provider");
11
10
  var _scroll = require("../../../../../../stores/scroll.store");
12
11
  var _visibilityBlockOffset = require("../../../../../../utils/visibility-block-offset");
13
12
  var _measuredBounds = require("../../../../utils/measured-bounds");
@@ -24,10 +23,6 @@ const useHostMeasurement = ({
24
23
  }) => {
25
24
  const hostRef = (0, _reactNativeReanimated.useAnimatedRef)();
26
25
  const scrollMetadata = _scroll.ScrollStore.getValue(screenKey, "metadata");
27
- const [canRenderHosts, setCanRenderHosts] = (0, _react.useState)(false);
28
- const {
29
- originRef
30
- } = (0, _origin.useOriginContext)();
31
26
  const hasMeasuredHost = (0, _reactNativeReanimated.useSharedValue)(false);
32
27
  const retryToken = (0, _reactNativeReanimated.useSharedValue)(0);
33
28
  (0, _reactNativeReanimated.useAnimatedReaction)(() => {
@@ -49,8 +44,7 @@ const useHostMeasurement = ({
49
44
  return;
50
45
  }
51
46
  const measured = (0, _reactNativeReanimated.measure)(hostRef);
52
- const measuredOrigin = (0, _reactNativeReanimated.measure)(originRef);
53
- if (!measured || !measuredOrigin) {
47
+ if (!measured) {
54
48
  (0, _reactNativeReanimated.cancelAnimation)(retryToken);
55
49
  retryToken.set((0, _reactNativeReanimated.withDelay)(HOST_MEASUREMENT_RETRY_DELAY_MS, (0, _reactNativeReanimated.withTiming)(retryToken.get() + 1, {
56
50
  duration: 0
@@ -58,22 +52,20 @@ const useHostMeasurement = ({
58
52
  return;
59
53
  }
60
54
  (0, _reactNativeReanimated.cancelAnimation)(retryToken);
61
- hasMeasuredHost.set(true);
62
55
 
63
56
  // A measurement taken mid rubber-band would bake the transient
64
57
  // overscroll displacement into the host frame. Store the at-rest
65
58
  // position instead; clamped scroll deltas share that basis.
66
59
  const currentScroll = scrollMetadata.get();
67
60
  const overscrollNormalized = capturesScroll ? (0, _measuredBounds.adjustedMeasuredBoundsForOverscrollDeltas)(measured, currentScroll) : measured;
68
- const normalizedMeasured = (0, _measuredBounds.normalizeMeasuredBoundsWithVisibilityGate)({
61
+ const correctedMeasured = (0, _measuredBounds.correctMeasuredBoundsForVisibilityGate)({
69
62
  measured: overscrollNormalized,
70
- origin: measuredOrigin,
71
63
  visibilityBlocked: visibilityBlocked.get(),
72
64
  visibilityBlockOffset: (0, _visibilityBlockOffset.getVisibilityBlockOffset)(viewportHeight),
73
65
  viewportWidth,
74
66
  viewportHeight
75
67
  });
76
- if (!(0, _measuredBounds.isMeasurementInViewport)(normalizedMeasured, viewportWidth, viewportHeight)) {
68
+ if (!(0, _measuredBounds.isMeasurementInViewport)(correctedMeasured, viewportWidth, viewportHeight)) {
77
69
  (0, _reactNativeReanimated.cancelAnimation)(retryToken);
78
70
  retryToken.set((0, _reactNativeReanimated.withDelay)(HOST_MEASUREMENT_RETRY_DELAY_MS, (0, _reactNativeReanimated.withTiming)(retryToken.get() + 1, {
79
71
  duration: 0
@@ -81,15 +73,15 @@ const useHostMeasurement = ({
81
73
  return;
82
74
  }
83
75
  (0, _hostBounds.setPortalHostBounds)(hostKey, {
84
- x: normalizedMeasured.x,
85
- y: normalizedMeasured.y,
86
- width: normalizedMeasured.width,
87
- height: normalizedMeasured.height,
88
- pageX: normalizedMeasured.pageX,
89
- pageY: normalizedMeasured.pageY,
76
+ x: correctedMeasured.x,
77
+ y: correctedMeasured.y,
78
+ width: correctedMeasured.width,
79
+ height: correctedMeasured.height,
80
+ pageX: correctedMeasured.pageX,
81
+ pageY: correctedMeasured.pageY,
90
82
  scroll: capturesScroll ? currentScroll : null
91
83
  });
92
- (0, _reactNativeWorklets.scheduleOnRN)(setCanRenderHosts, true);
84
+ hasMeasuredHost.set(true);
93
85
  });
94
86
  (0, _react.useLayoutEffect)(() => {
95
87
  return () => {
@@ -97,7 +89,6 @@ const useHostMeasurement = ({
97
89
  };
98
90
  }, [hostKey]);
99
91
  return {
100
- canRenderHosts,
101
92
  hostRef
102
93
  };
103
94
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNativeReanimated","_reactNativeWorklets","_origin","_scroll","_visibilityBlockOffset","_measuredBounds","_hostBounds","HOST_MEASUREMENT_RETRY_DELAY_MS","useHostMeasurement","capturesScroll","enabled","hostKey","screenKey","visibilityBlocked","viewportHeight","viewportWidth","hostRef","useAnimatedRef","scrollMetadata","ScrollStore","getValue","canRenderHosts","setCanRenderHosts","useState","originRef","useOriginContext","hasMeasuredHost","useSharedValue","retryToken","useAnimatedReaction","get","state","cancelAnimation","hasAlreadyMeasured","measured","measure","measuredOrigin","set","withDelay","withTiming","duration","currentScroll","overscrollNormalized","adjustedMeasuredBoundsForOverscrollDeltas","normalizedMeasured","normalizeMeasuredBoundsWithVisibilityGate","origin","visibilityBlockOffset","getVisibilityBlockOffset","isMeasurementInViewport","setPortalHostBounds","x","y","width","height","pageX","pageY","scroll","scheduleOnRN","useLayoutEffect","scheduleOnUI","clearPortalHostBounds","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_reactNativeWorklets","_scroll","_visibilityBlockOffset","_measuredBounds","_hostBounds","HOST_MEASUREMENT_RETRY_DELAY_MS","useHostMeasurement","capturesScroll","enabled","hostKey","screenKey","visibilityBlocked","viewportHeight","viewportWidth","hostRef","useAnimatedRef","scrollMetadata","ScrollStore","getValue","hasMeasuredHost","useSharedValue","retryToken","useAnimatedReaction","get","state","cancelAnimation","hasAlreadyMeasured","measured","measure","set","withDelay","withTiming","duration","currentScroll","overscrollNormalized","adjustedMeasuredBoundsForOverscrollDeltas","correctedMeasured","correctMeasuredBoundsForVisibilityGate","visibilityBlockOffset","getVisibilityBlockOffset","isMeasurementInViewport","setPortalHostBounds","x","y","width","height","pageX","pageY","scroll","useLayoutEffect","scheduleOnUI","clearPortalHostBounds","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.ts"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.PORTAL_HOST_NAME_RESET_VALUE = void 0;
6
+ exports.createBoundaryPortalHostName = exports.PORTAL_HOST_NAME_RESET_VALUE = void 0;
7
+ const BOUNDARY_PORTAL_HOST_NAME_SUFFIX = "-portal-host";
8
+ const createBoundaryPortalHostName = (hostKey, boundaryId, pairKey) => {
9
+ "worklet";
10
+
11
+ return `${hostKey}-${pairKey ? `${pairKey}-` : ""}${boundaryId}${BOUNDARY_PORTAL_HOST_NAME_SUFFIX}`;
12
+ };
13
+ exports.createBoundaryPortalHostName = createBoundaryPortalHostName;
7
14
  const PORTAL_HOST_NAME_RESET_VALUE = exports.PORTAL_HOST_NAME_RESET_VALUE = null;
8
15
  //# sourceMappingURL=naming.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["PORTAL_HOST_NAME_RESET_VALUE","exports"],"sourceRoot":"../../../../../../src","sources":["components/boundary/portal/utils/naming.ts"],"mappings":";;;;;;AAAO,MAAMA,4BAA4B,GAAAC,OAAA,CAAAD,4BAAA,GAAG,IAAI","ignoreList":[]}
1
+ {"version":3,"names":["BOUNDARY_PORTAL_HOST_NAME_SUFFIX","createBoundaryPortalHostName","hostKey","boundaryId","pairKey","exports","PORTAL_HOST_NAME_RESET_VALUE"],"sourceRoot":"../../../../../../src","sources":["components/boundary/portal/utils/naming.ts"],"mappings":";;;;;;AAAA,MAAMA,gCAAgC,GAAG,cAAc;AAEhD,MAAMC,4BAA4B,GAAGA,CAC3CC,OAAe,EACfC,UAAkB,EAClBC,OAAuB,KACnB;EACJ,SAAS;;EACT,OAAO,GAAGF,OAAO,IAAIE,OAAO,GAAG,GAAGA,OAAO,GAAG,GAAG,EAAE,GAAGD,UAAU,GAAGH,gCAAgC,EAAE;AACpG,CAAC;AAACK,OAAA,CAAAJ,4BAAA,GAAAA,4BAAA;AAEK,MAAMK,4BAA4B,GAAAD,OAAA,CAAAC,4BAAA,GAAG,IAAI","ignoreList":[]}
@@ -3,11 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useBoundaryRootStore = exports.useBoundaryRootContext = exports.TARGET_OUTSIDE_ROOT_WARNING = exports.BoundaryRootProvider = void 0;
6
+ exports.useBoundaryRootStore = exports.TARGET_OUTSIDE_ROOT_WARNING = exports.BoundaryRootProvider = void 0;
7
7
  var _react = require("react");
8
8
  var _reactNativeReanimated = require("react-native-reanimated");
9
9
  var _descriptors = require("../../../providers/screen/descriptors");
10
10
  var _styles = require("../../../providers/screen/styles");
11
+ var _blankStack = require("../../../providers/stack/blank-stack.provider");
11
12
  var _linkPairs = require("../../../stores/bounds/helpers/link-pairs.helpers");
12
13
  var _createProvider = _interopRequireDefault(require("../../../utils/create-provider"));
13
14
  var _logger = require("../../../utils/logger");
@@ -19,7 +20,6 @@ const MULTIPLE_TARGETS_WARNING = "Multiple Boundary.Target elements were rendere
19
20
  const TARGET_OUTSIDE_ROOT_WARNING = exports.TARGET_OUTSIDE_ROOT_WARNING = "Boundary.Target must be rendered inside Transition.Boundary or a component created by createBoundaryComponent.";
20
21
  const {
21
22
  BoundaryRootProvider,
22
- useBoundaryRootContext,
23
23
  useBoundaryRootStore
24
24
  } = (0, _createProvider.default)("BoundaryRoot", {
25
25
  guarded: false
@@ -43,9 +43,9 @@ const {
43
43
  escapeClipping
44
44
  });
45
45
  const currentScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.currentScreenKey);
46
- const currentActivity = (0, _descriptors.useDescriptorsStore)(s => s.descriptors.current.activity);
46
+ const isCurrentScreenClosing = (0, _blankStack.useBlankStackStore)(store => store?.scenesByKey[currentScreenKey]?.activity === "closing");
47
47
  const retainedBoundTagRef = (0, _react.useRef)(requestedBoundTag);
48
- const shouldRetainClosingBoundTag = portalRuntime.handoff && currentActivity === "closing";
48
+ const shouldRetainClosingBoundTag = portalRuntime.handoff && isCurrentScreenClosing;
49
49
 
50
50
  // Navigation can update a retained closing route's params before that
51
51
  // route leaves the stack. Keep its handoff identity stable so the payload
@@ -109,6 +109,5 @@ const {
109
109
  };
110
110
  });
111
111
  exports.useBoundaryRootStore = useBoundaryRootStore;
112
- exports.useBoundaryRootContext = useBoundaryRootContext;
113
112
  exports.BoundaryRootProvider = BoundaryRootProvider;
114
113
  //# sourceMappingURL=boundary-root.provider.js.map