react-native-screen-transitions 3.9.0 → 3.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (842) hide show
  1. package/lib/commonjs/blank-stack/components/stack-view.js +64 -32
  2. package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -1
  3. package/lib/commonjs/component-stack/components/stack-view.js +57 -23
  4. package/lib/commonjs/component-stack/components/stack-view.js.map +1 -1
  5. package/lib/commonjs/native-stack/views/NativeStackView.native.js +23 -13
  6. package/lib/commonjs/native-stack/views/NativeStackView.native.js.map +1 -1
  7. package/lib/commonjs/shared/adapters/with-screen-transitions/context.js +4 -0
  8. package/lib/commonjs/shared/adapters/with-screen-transitions/context.js.map +1 -1
  9. package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js +14 -8
  10. package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
  11. package/lib/commonjs/shared/animation/snap-to.js +3 -0
  12. package/lib/commonjs/shared/animation/snap-to.js.map +1 -1
  13. package/lib/commonjs/shared/components/activity/variants/activity-screen.js +26 -10
  14. package/lib/commonjs/shared/components/activity/variants/activity-screen.js.map +1 -1
  15. package/lib/commonjs/shared/components/boundary/components/boundary-target.js +20 -21
  16. package/lib/commonjs/shared/components/boundary/components/boundary-target.js.map +1 -1
  17. package/lib/commonjs/shared/components/boundary/create-boundary-component.js +16 -2
  18. package/lib/commonjs/shared/components/boundary/create-boundary-component.js.map +1 -1
  19. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +18 -7
  20. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
  21. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -7
  22. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
  23. package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js +1 -3
  24. package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
  25. package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js +6 -13
  26. package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js.map +1 -1
  27. package/lib/commonjs/shared/components/boundary/index.js +4 -3
  28. package/lib/commonjs/shared/components/boundary/index.js.map +1 -1
  29. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +67 -0
  30. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -0
  31. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +55 -188
  32. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  33. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/index.js +21 -13
  34. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
  35. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/host.js +3 -14
  36. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  37. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +40 -33
  38. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
  39. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +30 -0
  40. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +1 -0
  41. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +3 -4
  42. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -1
  43. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js +74 -0
  44. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -0
  45. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +45 -144
  46. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  47. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js +10 -19
  48. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -1
  49. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/index.js +45 -9
  50. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
  51. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -1
  52. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +2 -29
  53. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -1
  54. package/lib/commonjs/shared/components/boundary/portal/utils/naming.js +8 -1
  55. package/lib/commonjs/shared/components/boundary/portal/utils/naming.js.map +1 -1
  56. package/lib/commonjs/shared/components/boundary/portal/utils/resolve-portal.js +19 -15
  57. package/lib/commonjs/shared/components/boundary/portal/utils/resolve-portal.js.map +1 -1
  58. package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js +1 -10
  59. package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js.map +1 -1
  60. package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js +22 -41
  61. package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
  62. package/lib/commonjs/shared/components/boundary/utils/measured-bounds.js +19 -31
  63. package/lib/commonjs/shared/components/boundary/utils/measured-bounds.js.map +1 -1
  64. package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js +14 -13
  65. package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js.map +1 -1
  66. package/lib/commonjs/shared/components/boundary/utils/resolve-boundary-target.js +29 -0
  67. package/lib/commonjs/shared/components/boundary/utils/resolve-boundary-target.js.map +1 -0
  68. package/lib/commonjs/shared/components/create-transition-aware-component.js +9 -29
  69. package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
  70. package/lib/commonjs/shared/components/masked-view.js +9 -1
  71. package/lib/commonjs/shared/components/masked-view.js.map +1 -1
  72. package/lib/commonjs/shared/components/screen-container/hooks/use-backdrop-pointer-events.js +5 -9
  73. package/lib/commonjs/shared/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
  74. package/lib/commonjs/shared/components/screen-container/hooks/use-content-layout.js +3 -8
  75. package/lib/commonjs/shared/components/screen-container/hooks/use-content-layout.js.map +1 -1
  76. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js +9 -10
  77. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
  78. package/lib/commonjs/shared/components/screen-container/layers/content.js +10 -16
  79. package/lib/commonjs/shared/components/screen-container/layers/content.js.map +1 -1
  80. package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js +9 -1
  81. package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  82. package/lib/commonjs/shared/components/screen-container/layers/surface-container.js +1 -5
  83. package/lib/commonjs/shared/components/screen-container/layers/surface-container.js.map +1 -1
  84. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +10 -12
  85. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  86. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js +2 -3
  87. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
  88. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js +7 -1
  89. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  90. package/lib/commonjs/shared/components/screen-lifecycle/index.js +2 -4
  91. package/lib/commonjs/shared/components/screen-lifecycle/index.js.map +1 -1
  92. package/lib/commonjs/shared/configs/presets.js +10 -10
  93. package/lib/commonjs/shared/configs/presets.js.map +1 -1
  94. package/lib/commonjs/shared/constants.js +1 -0
  95. package/lib/commonjs/shared/constants.js.map +1 -1
  96. package/lib/commonjs/shared/hooks/navigation/use-navigation-helpers.js +9 -8
  97. package/lib/commonjs/shared/hooks/navigation/use-navigation-helpers.js.map +1 -1
  98. package/lib/commonjs/shared/hooks/navigation/use-screen-state.js +1 -3
  99. package/lib/commonjs/shared/hooks/navigation/use-screen-state.js.map +1 -1
  100. package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js +4 -1
  101. package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
  102. package/lib/commonjs/shared/providers/screen/animation/animation.provider.js +7 -7
  103. package/lib/commonjs/shared/providers/screen/animation/animation.provider.js.map +1 -1
  104. package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js +1 -3
  105. package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -1
  106. package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +1 -1
  107. package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  108. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -10
  109. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  110. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +5 -7
  111. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  112. package/lib/commonjs/shared/providers/screen/animation/index.js +2 -2
  113. package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js +1 -1
  114. package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
  115. package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js +34 -42
  116. package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  117. package/lib/commonjs/shared/providers/screen/descriptors/index.js +0 -12
  118. package/lib/commonjs/shared/providers/screen/descriptors/index.js.map +1 -1
  119. package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js +9 -15
  120. package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
  121. package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js +3 -9
  122. package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
  123. package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture.js +1 -1
  124. package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
  125. package/lib/commonjs/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js +1 -3
  126. package/lib/commonjs/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
  127. package/lib/commonjs/shared/providers/screen/gestures/index.js +2 -2
  128. package/lib/commonjs/shared/providers/screen/gestures/ownership/shadowing-claims.js +2 -2
  129. package/lib/commonjs/shared/providers/screen/gestures/ownership/shadowing-claims.js.map +1 -1
  130. package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +8 -11
  131. package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
  132. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +2 -4
  133. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  134. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +6 -8
  135. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  136. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-reset.js +10 -0
  137. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
  138. package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +1 -1
  139. package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  140. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +37 -3
  141. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  142. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +9 -6
  143. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  144. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js +3 -2
  145. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
  146. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js +7 -0
  147. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
  148. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js +1 -1
  149. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
  150. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +5 -5
  151. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -1
  152. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +2 -2
  153. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  154. package/lib/commonjs/shared/providers/screen/gestures/types.js.map +1 -1
  155. package/lib/commonjs/shared/providers/screen/options/index.js +2 -2
  156. package/lib/commonjs/shared/providers/screen/options/options.provider.js +4 -8
  157. package/lib/commonjs/shared/providers/screen/options/options.provider.js.map +1 -1
  158. package/lib/commonjs/shared/providers/screen/screen-composer.js +2 -0
  159. package/lib/commonjs/shared/providers/screen/screen-composer.js.map +1 -1
  160. package/lib/commonjs/shared/providers/screen/styles/constants.js +10 -4
  161. package/lib/commonjs/shared/providers/screen/styles/constants.js.map +1 -1
  162. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js +93 -0
  163. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js.map +1 -0
  164. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +48 -5
  165. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  166. package/lib/commonjs/shared/providers/screen/styles/helpers/select-interpolator-frame.js +32 -0
  167. package/lib/commonjs/shared/providers/screen/styles/helpers/select-interpolator-frame.js.map +1 -0
  168. package/lib/commonjs/shared/providers/screen/styles/helpers/transition-visual-state.js +42 -0
  169. package/lib/commonjs/shared/providers/screen/styles/helpers/transition-visual-state.js.map +1 -0
  170. package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js +25 -6
  171. package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  172. package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +87 -50
  173. package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  174. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +11 -11
  175. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  176. package/lib/commonjs/shared/providers/screen/styles/index.js +0 -6
  177. package/lib/commonjs/shared/providers/screen/styles/index.js.map +1 -1
  178. package/lib/commonjs/shared/providers/screen/styles/slot.provider.js +23 -19
  179. package/lib/commonjs/shared/providers/screen/styles/slot.provider.js.map +1 -1
  180. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +3 -11
  181. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
  182. package/lib/commonjs/shared/providers/stack/blank-stack.provider.js +53 -49
  183. package/lib/commonjs/shared/providers/stack/blank-stack.provider.js.map +1 -1
  184. package/lib/commonjs/shared/providers/stack/core.provider.js +20 -39
  185. package/lib/commonjs/shared/providers/stack/core.provider.js.map +1 -1
  186. package/lib/commonjs/shared/providers/stack/direct.provider.js +46 -40
  187. package/lib/commonjs/shared/providers/stack/direct.provider.js.map +1 -1
  188. package/lib/commonjs/shared/stores/animation.store.js +19 -1
  189. package/lib/commonjs/shared/stores/animation.store.js.map +1 -1
  190. package/lib/commonjs/shared/stores/bounds/internals/links.js +4 -4
  191. package/lib/commonjs/shared/stores/bounds/internals/links.js.map +1 -1
  192. package/lib/commonjs/shared/stores/scroll.store.js +20 -2
  193. package/lib/commonjs/shared/stores/scroll.store.js.map +1 -1
  194. package/lib/commonjs/shared/stores/system.store.js +2 -0
  195. package/lib/commonjs/shared/stores/system.store.js.map +1 -1
  196. package/lib/commonjs/shared/types/stack.types.js.map +1 -1
  197. package/lib/commonjs/shared/utils/animation/animate-to-progress.js +35 -12
  198. package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
  199. package/lib/commonjs/shared/utils/animation/animate.js +14 -2
  200. package/lib/commonjs/shared/utils/animation/animate.js.map +1 -1
  201. package/lib/commonjs/shared/utils/animation/spring/spring.js +22 -2
  202. package/lib/commonjs/shared/utils/animation/spring/spring.js.map +1 -1
  203. package/lib/commonjs/shared/utils/animation/spring/springUtils.js +96 -0
  204. package/lib/commonjs/shared/utils/animation/spring/springUtils.js.map +1 -1
  205. package/lib/commonjs/shared/utils/animation/state.js +4 -0
  206. package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js +6 -0
  207. package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  208. package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js +17 -5
  209. package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
  210. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +44 -20
  211. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  212. package/lib/commonjs/shared/utils/bounds/navigation/zoom/drag.js +2 -31
  213. package/lib/commonjs/shared/utils/bounds/navigation/zoom/drag.js.map +1 -1
  214. package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js +3 -17
  215. package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  216. package/lib/commonjs/shared/utils/create-provider.js +61 -75
  217. package/lib/commonjs/shared/utils/create-provider.js.map +1 -1
  218. package/lib/module/blank-stack/components/stack-view.js +66 -34
  219. package/lib/module/blank-stack/components/stack-view.js.map +1 -1
  220. package/lib/module/component-stack/components/stack-view.js +60 -26
  221. package/lib/module/component-stack/components/stack-view.js.map +1 -1
  222. package/lib/module/native-stack/views/NativeStackView.native.js +24 -14
  223. package/lib/module/native-stack/views/NativeStackView.native.js.map +1 -1
  224. package/lib/module/shared/adapters/with-screen-transitions/context.js +3 -0
  225. package/lib/module/shared/adapters/with-screen-transitions/context.js.map +1 -1
  226. package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js +14 -8
  227. package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
  228. package/lib/module/shared/animation/snap-to.js +3 -0
  229. package/lib/module/shared/animation/snap-to.js.map +1 -1
  230. package/lib/module/shared/components/activity/variants/activity-screen.js +26 -10
  231. package/lib/module/shared/components/activity/variants/activity-screen.js.map +1 -1
  232. package/lib/module/shared/components/boundary/components/boundary-target.js +20 -21
  233. package/lib/module/shared/components/boundary/components/boundary-target.js.map +1 -1
  234. package/lib/module/shared/components/boundary/create-boundary-component.js +17 -3
  235. package/lib/module/shared/components/boundary/create-boundary-component.js.map +1 -1
  236. package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +19 -7
  237. package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
  238. package/lib/module/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -7
  239. package/lib/module/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
  240. package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js +1 -3
  241. package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
  242. package/lib/module/shared/components/boundary/hooks/use-measurer.js +7 -14
  243. package/lib/module/shared/components/boundary/hooks/use-measurer.js.map +1 -1
  244. package/lib/module/shared/components/boundary/index.js +3 -2
  245. package/lib/module/shared/components/boundary/index.js.map +1 -1
  246. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +60 -0
  247. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -0
  248. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +58 -191
  249. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  250. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/index.js +21 -13
  251. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
  252. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/host.js +4 -15
  253. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  254. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +43 -36
  255. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
  256. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +25 -0
  257. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +1 -0
  258. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +3 -4
  259. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -1
  260. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js +69 -0
  261. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -0
  262. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +47 -146
  263. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  264. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js +13 -22
  265. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -1
  266. package/lib/module/shared/components/boundary/portal/components/boundary-portal/index.js +44 -9
  267. package/lib/module/shared/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
  268. package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -1
  269. package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +1 -27
  270. package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -1
  271. package/lib/module/shared/components/boundary/portal/utils/naming.js +6 -0
  272. package/lib/module/shared/components/boundary/portal/utils/naming.js.map +1 -1
  273. package/lib/module/shared/components/boundary/portal/utils/resolve-portal.js +19 -15
  274. package/lib/module/shared/components/boundary/portal/utils/resolve-portal.js.map +1 -1
  275. package/lib/module/shared/components/boundary/portal/utils/teleport-control.js +0 -8
  276. package/lib/module/shared/components/boundary/portal/utils/teleport-control.js.map +1 -1
  277. package/lib/module/shared/components/boundary/providers/boundary-root.provider.js +22 -40
  278. package/lib/module/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
  279. package/lib/module/shared/components/boundary/utils/measured-bounds.js +17 -28
  280. package/lib/module/shared/components/boundary/utils/measured-bounds.js.map +1 -1
  281. package/lib/module/shared/components/boundary/utils/refresh-signals.js +14 -13
  282. package/lib/module/shared/components/boundary/utils/refresh-signals.js.map +1 -1
  283. package/lib/module/shared/components/boundary/utils/resolve-boundary-target.js +24 -0
  284. package/lib/module/shared/components/boundary/utils/resolve-boundary-target.js.map +1 -0
  285. package/lib/module/shared/components/create-transition-aware-component.js +10 -30
  286. package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
  287. package/lib/module/shared/components/masked-view.js +10 -2
  288. package/lib/module/shared/components/masked-view.js.map +1 -1
  289. package/lib/module/shared/components/screen-container/hooks/use-backdrop-pointer-events.js +8 -12
  290. package/lib/module/shared/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
  291. package/lib/module/shared/components/screen-container/hooks/use-content-layout.js +4 -9
  292. package/lib/module/shared/components/screen-container/hooks/use-content-layout.js.map +1 -1
  293. package/lib/module/shared/components/screen-container/layers/backdrop.js +10 -11
  294. package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
  295. package/lib/module/shared/components/screen-container/layers/content.js +12 -18
  296. package/lib/module/shared/components/screen-container/layers/content.js.map +1 -1
  297. package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js +10 -2
  298. package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  299. package/lib/module/shared/components/screen-container/layers/surface-container.js +2 -6
  300. package/lib/module/shared/components/screen-container/layers/surface-container.js.map +1 -1
  301. package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +13 -15
  302. package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  303. package/lib/module/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js +3 -4
  304. package/lib/module/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
  305. package/lib/module/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js +7 -1
  306. package/lib/module/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  307. package/lib/module/shared/components/screen-lifecycle/index.js +3 -5
  308. package/lib/module/shared/components/screen-lifecycle/index.js.map +1 -1
  309. package/lib/module/shared/configs/presets.js +10 -10
  310. package/lib/module/shared/configs/presets.js.map +1 -1
  311. package/lib/module/shared/constants.js +1 -0
  312. package/lib/module/shared/constants.js.map +1 -1
  313. package/lib/module/shared/hooks/navigation/use-navigation-helpers.js +9 -8
  314. package/lib/module/shared/hooks/navigation/use-navigation-helpers.js.map +1 -1
  315. package/lib/module/shared/hooks/navigation/use-screen-state.js +2 -4
  316. package/lib/module/shared/hooks/navigation/use-screen-state.js.map +1 -1
  317. package/lib/module/shared/providers/helpers/measured-bounds-writes.js +4 -1
  318. package/lib/module/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
  319. package/lib/module/shared/providers/screen/animation/animation.provider.js +6 -5
  320. package/lib/module/shared/providers/screen/animation/animation.provider.js.map +1 -1
  321. package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js +2 -4
  322. package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -1
  323. package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +2 -2
  324. package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  325. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -10
  326. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  327. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +6 -8
  328. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  329. package/lib/module/shared/providers/screen/animation/index.js +1 -1
  330. package/lib/module/shared/providers/screen/animation/index.js.map +1 -1
  331. package/lib/module/shared/providers/screen/animation/use-screen-animation.js +2 -2
  332. package/lib/module/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
  333. package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js +34 -40
  334. package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  335. package/lib/module/shared/providers/screen/descriptors/index.js +1 -1
  336. package/lib/module/shared/providers/screen/descriptors/index.js.map +1 -1
  337. package/lib/module/shared/providers/screen/gestures/gestures.provider.js +8 -14
  338. package/lib/module/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
  339. package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js +5 -11
  340. package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
  341. package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture.js +2 -2
  342. package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
  343. package/lib/module/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js +2 -4
  344. package/lib/module/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
  345. package/lib/module/shared/providers/screen/gestures/index.js +1 -1
  346. package/lib/module/shared/providers/screen/gestures/index.js.map +1 -1
  347. package/lib/module/shared/providers/screen/gestures/ownership/shadowing-claims.js +2 -2
  348. package/lib/module/shared/providers/screen/gestures/ownership/shadowing-claims.js.map +1 -1
  349. package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +10 -13
  350. package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
  351. package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +3 -5
  352. package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  353. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +7 -9
  354. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  355. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-reset.js +10 -0
  356. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
  357. package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +2 -2
  358. package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  359. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +35 -2
  360. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  361. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +10 -7
  362. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  363. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js +3 -2
  364. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
  365. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js +7 -0
  366. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
  367. package/lib/module/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js +2 -2
  368. package/lib/module/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
  369. package/lib/module/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +3 -3
  370. package/lib/module/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -1
  371. package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +4 -4
  372. package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  373. package/lib/module/shared/providers/screen/gestures/types.js.map +1 -1
  374. package/lib/module/shared/providers/screen/options/index.js +1 -1
  375. package/lib/module/shared/providers/screen/options/index.js.map +1 -1
  376. package/lib/module/shared/providers/screen/options/options.provider.js +3 -7
  377. package/lib/module/shared/providers/screen/options/options.provider.js.map +1 -1
  378. package/lib/module/shared/providers/screen/screen-composer.js +2 -0
  379. package/lib/module/shared/providers/screen/screen-composer.js.map +1 -1
  380. package/lib/module/shared/providers/screen/styles/constants.js +8 -3
  381. package/lib/module/shared/providers/screen/styles/constants.js.map +1 -1
  382. package/lib/module/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js +88 -0
  383. package/lib/module/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js.map +1 -0
  384. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +49 -6
  385. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  386. package/lib/module/shared/providers/screen/styles/helpers/select-interpolator-frame.js +27 -0
  387. package/lib/module/shared/providers/screen/styles/helpers/select-interpolator-frame.js.map +1 -0
  388. package/lib/module/shared/providers/screen/styles/helpers/transition-visual-state.js +35 -0
  389. package/lib/module/shared/providers/screen/styles/helpers/transition-visual-state.js.map +1 -0
  390. package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js +23 -5
  391. package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  392. package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +90 -53
  393. package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  394. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +12 -12
  395. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  396. package/lib/module/shared/providers/screen/styles/index.js +1 -1
  397. package/lib/module/shared/providers/screen/styles/index.js.map +1 -1
  398. package/lib/module/shared/providers/screen/styles/slot.provider.js +23 -18
  399. package/lib/module/shared/providers/screen/styles/slot.provider.js.map +1 -1
  400. package/lib/module/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +3 -11
  401. package/lib/module/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
  402. package/lib/module/shared/providers/stack/blank-stack.provider.js +50 -47
  403. package/lib/module/shared/providers/stack/blank-stack.provider.js.map +1 -1
  404. package/lib/module/shared/providers/stack/core.provider.js +19 -39
  405. package/lib/module/shared/providers/stack/core.provider.js.map +1 -1
  406. package/lib/module/shared/providers/stack/direct.provider.js +44 -41
  407. package/lib/module/shared/providers/stack/direct.provider.js.map +1 -1
  408. package/lib/module/shared/stores/animation.store.js +17 -0
  409. package/lib/module/shared/stores/animation.store.js.map +1 -1
  410. package/lib/module/shared/stores/bounds/internals/links.js +4 -4
  411. package/lib/module/shared/stores/bounds/internals/links.js.map +1 -1
  412. package/lib/module/shared/stores/scroll.store.js +17 -0
  413. package/lib/module/shared/stores/scroll.store.js.map +1 -1
  414. package/lib/module/shared/stores/system.store.js +2 -0
  415. package/lib/module/shared/stores/system.store.js.map +1 -1
  416. package/lib/module/shared/types/stack.types.js.map +1 -1
  417. package/lib/module/shared/utils/animation/animate-to-progress.js +33 -11
  418. package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
  419. package/lib/module/shared/utils/animation/animate.js +14 -2
  420. package/lib/module/shared/utils/animation/animate.js.map +1 -1
  421. package/lib/module/shared/utils/animation/spring/spring.js +23 -3
  422. package/lib/module/shared/utils/animation/spring/spring.js.map +1 -1
  423. package/lib/module/shared/utils/animation/spring/springUtils.js +95 -0
  424. package/lib/module/shared/utils/animation/spring/springUtils.js.map +1 -1
  425. package/lib/module/shared/utils/animation/state.js +2 -0
  426. package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js +6 -0
  427. package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  428. package/lib/module/shared/utils/bounds/navigation/reveal/math.js +16 -5
  429. package/lib/module/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
  430. package/lib/module/shared/utils/bounds/navigation/zoom/build.js +46 -22
  431. package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  432. package/lib/module/shared/utils/bounds/navigation/zoom/drag.js +2 -30
  433. package/lib/module/shared/utils/bounds/navigation/zoom/drag.js.map +1 -1
  434. package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js +4 -18
  435. package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  436. package/lib/module/shared/utils/create-provider.js +62 -76
  437. package/lib/module/shared/utils/create-provider.js.map +1 -1
  438. package/lib/typescript/blank-stack/components/stack-view.d.ts +5 -1
  439. package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
  440. package/lib/typescript/blank-stack/types.d.ts +1 -4
  441. package/lib/typescript/blank-stack/types.d.ts.map +1 -1
  442. package/lib/typescript/component-stack/components/stack-view.d.ts +5 -1
  443. package/lib/typescript/component-stack/components/stack-view.d.ts.map +1 -1
  444. package/lib/typescript/native-stack/views/NativeStackView.native.d.ts +2 -2
  445. package/lib/typescript/native-stack/views/NativeStackView.native.d.ts.map +1 -1
  446. package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts +2 -0
  447. package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts.map +1 -1
  448. package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts +1 -1
  449. package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -1
  450. package/lib/typescript/shared/animation/snap-to.d.ts.map +1 -1
  451. package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts +3 -2
  452. package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts.map +1 -1
  453. package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts +2 -1
  454. package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts.map +1 -1
  455. package/lib/typescript/shared/components/boundary/create-boundary-component.d.ts.map +1 -1
  456. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts.map +1 -1
  457. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.d.ts.map +1 -1
  458. package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts +3 -4
  459. package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts.map +1 -1
  460. package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts +1 -1
  461. package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts.map +1 -1
  462. package/lib/typescript/shared/components/boundary/index.d.ts +6 -9
  463. package/lib/typescript/shared/components/boundary/index.d.ts.map +1 -1
  464. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts +26 -0
  465. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts.map +1 -0
  466. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts +1 -3
  467. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts.map +1 -1
  468. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/index.d.ts.map +1 -1
  469. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/host.d.ts.map +1 -1
  470. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.d.ts.map +1 -1
  471. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts +9 -0
  472. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts.map +1 -0
  473. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts +1 -10
  474. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts.map +1 -1
  475. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.d.ts +17 -0
  476. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.d.ts.map +1 -0
  477. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts +1 -3
  478. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts.map +1 -1
  479. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.d.ts +0 -1
  480. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.d.ts.map +1 -1
  481. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/index.d.ts +2 -2
  482. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/index.d.ts.map +1 -1
  483. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.d.ts +0 -1
  484. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.d.ts.map +1 -1
  485. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.d.ts +1 -10
  486. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.d.ts.map +1 -1
  487. package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts +1 -0
  488. package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts.map +1 -1
  489. package/lib/typescript/shared/components/boundary/portal/utils/resolve-portal.d.ts +2 -3
  490. package/lib/typescript/shared/components/boundary/portal/utils/resolve-portal.d.ts.map +1 -1
  491. package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts +0 -4
  492. package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts.map +1 -1
  493. package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts +8 -12
  494. package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
  495. package/lib/typescript/shared/components/boundary/utils/measured-bounds.d.ts +1 -3
  496. package/lib/typescript/shared/components/boundary/utils/measured-bounds.d.ts.map +1 -1
  497. package/lib/typescript/shared/components/boundary/utils/refresh-signals.d.ts +0 -3
  498. package/lib/typescript/shared/components/boundary/utils/refresh-signals.d.ts.map +1 -1
  499. package/lib/typescript/shared/components/boundary/utils/resolve-boundary-target.d.ts +12 -0
  500. package/lib/typescript/shared/components/boundary/utils/resolve-boundary-target.d.ts.map +1 -0
  501. package/lib/typescript/shared/components/create-transition-aware-component.d.ts +0 -2
  502. package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
  503. package/lib/typescript/shared/components/masked-view.d.ts.map +1 -1
  504. package/lib/typescript/shared/components/screen-container/hooks/use-backdrop-pointer-events.d.ts.map +1 -1
  505. package/lib/typescript/shared/components/screen-container/hooks/use-content-layout.d.ts.map +1 -1
  506. package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts.map +1 -1
  507. package/lib/typescript/shared/components/screen-container/layers/content.d.ts.map +1 -1
  508. package/lib/typescript/shared/components/screen-container/layers/maybe-masked-navigation-container.d.ts.map +1 -1
  509. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts.map +1 -1
  510. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-open-transition-intent.d.ts.map +1 -1
  511. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-transition-start-controller.d.ts.map +1 -1
  512. package/lib/typescript/shared/components/screen-lifecycle/index.d.ts.map +1 -1
  513. package/lib/typescript/shared/configs/index.d.ts +6 -6
  514. package/lib/typescript/shared/configs/presets.d.ts +6 -6
  515. package/lib/typescript/shared/configs/presets.d.ts.map +1 -1
  516. package/lib/typescript/shared/constants.d.ts.map +1 -1
  517. package/lib/typescript/shared/hooks/navigation/use-navigation-helpers.d.ts.map +1 -1
  518. package/lib/typescript/shared/hooks/navigation/use-screen-state.d.ts.map +1 -1
  519. package/lib/typescript/shared/index.d.ts +14 -22
  520. package/lib/typescript/shared/index.d.ts.map +1 -1
  521. package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts.map +1 -1
  522. package/lib/typescript/shared/providers/screen/animation/animation.provider.d.ts +4 -1
  523. package/lib/typescript/shared/providers/screen/animation/animation.provider.d.ts.map +1 -1
  524. package/lib/typescript/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.d.ts.map +1 -1
  525. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
  526. package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
  527. package/lib/typescript/shared/providers/screen/animation/index.d.ts +1 -1
  528. package/lib/typescript/shared/providers/screen/animation/index.d.ts.map +1 -1
  529. package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts +10 -11
  530. package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
  531. package/lib/typescript/shared/providers/screen/descriptors/index.d.ts +1 -1
  532. package/lib/typescript/shared/providers/screen/descriptors/index.d.ts.map +1 -1
  533. package/lib/typescript/shared/providers/screen/gestures/gestures.provider.d.ts +4 -1
  534. package/lib/typescript/shared/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
  535. package/lib/typescript/shared/providers/screen/gestures/hooks/use-screen-gesture-config.d.ts.map +1 -1
  536. package/lib/typescript/shared/providers/screen/gestures/hooks/use-stable-runtime-config.d.ts.map +1 -1
  537. package/lib/typescript/shared/providers/screen/gestures/index.d.ts +1 -1
  538. package/lib/typescript/shared/providers/screen/gestures/index.d.ts.map +1 -1
  539. package/lib/typescript/shared/providers/screen/gestures/ownership/shadowing-claims.d.ts +2 -3
  540. package/lib/typescript/shared/providers/screen/gestures/ownership/shadowing-claims.d.ts.map +1 -1
  541. package/lib/typescript/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.d.ts.map +1 -1
  542. package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -1
  543. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts.map +1 -1
  544. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-reset.d.ts +4 -1
  545. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-reset.d.ts.map +1 -1
  546. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts +2 -1
  547. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts.map +1 -1
  548. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -1
  549. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-release.d.ts.map +1 -1
  550. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts +3 -1
  551. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts.map +1 -1
  552. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts +1 -1
  553. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts.map +1 -1
  554. package/lib/typescript/shared/providers/screen/gestures/types.d.ts +1 -9
  555. package/lib/typescript/shared/providers/screen/gestures/types.d.ts.map +1 -1
  556. package/lib/typescript/shared/providers/screen/options/index.d.ts +1 -1
  557. package/lib/typescript/shared/providers/screen/options/index.d.ts.map +1 -1
  558. package/lib/typescript/shared/providers/screen/options/options.provider.d.ts +4 -1
  559. package/lib/typescript/shared/providers/screen/options/options.provider.d.ts.map +1 -1
  560. package/lib/typescript/shared/providers/screen/screen-composer.d.ts +3 -2
  561. package/lib/typescript/shared/providers/screen/screen-composer.d.ts.map +1 -1
  562. package/lib/typescript/shared/providers/screen/styles/constants.d.ts +1 -0
  563. package/lib/typescript/shared/providers/screen/styles/constants.d.ts.map +1 -1
  564. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.d.ts +12 -0
  565. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.d.ts.map +1 -0
  566. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts +5 -3
  567. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts.map +1 -1
  568. package/lib/typescript/shared/providers/screen/styles/helpers/select-interpolator-frame.d.ts +4 -0
  569. package/lib/typescript/shared/providers/screen/styles/helpers/select-interpolator-frame.d.ts.map +1 -0
  570. package/lib/typescript/shared/providers/screen/styles/helpers/transition-visual-state.d.ts +18 -0
  571. package/lib/typescript/shared/providers/screen/styles/helpers/transition-visual-state.d.ts.map +1 -0
  572. package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts +12 -2
  573. package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts.map +1 -1
  574. package/lib/typescript/shared/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts +10 -5
  575. package/lib/typescript/shared/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts.map +1 -1
  576. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +1 -1
  577. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  578. package/lib/typescript/shared/providers/screen/styles/index.d.ts +1 -1
  579. package/lib/typescript/shared/providers/screen/styles/index.d.ts.map +1 -1
  580. package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts +4 -1
  581. package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts.map +1 -1
  582. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.d.ts.map +1 -1
  583. package/lib/typescript/shared/providers/stack/blank-stack.provider.d.ts +12 -6
  584. package/lib/typescript/shared/providers/stack/blank-stack.provider.d.ts.map +1 -1
  585. package/lib/typescript/shared/providers/stack/core.provider.d.ts +10 -8
  586. package/lib/typescript/shared/providers/stack/core.provider.d.ts.map +1 -1
  587. package/lib/typescript/shared/providers/stack/direct.provider.d.ts +11 -4
  588. package/lib/typescript/shared/providers/stack/direct.provider.d.ts.map +1 -1
  589. package/lib/typescript/shared/stores/animation.store.d.ts +1 -0
  590. package/lib/typescript/shared/stores/animation.store.d.ts.map +1 -1
  591. package/lib/typescript/shared/stores/bounds/internals/links.d.ts +1 -1
  592. package/lib/typescript/shared/stores/bounds/internals/links.d.ts.map +1 -1
  593. package/lib/typescript/shared/stores/scroll.store.d.ts +7 -0
  594. package/lib/typescript/shared/stores/scroll.store.d.ts.map +1 -1
  595. package/lib/typescript/shared/stores/system.store.d.ts +5 -0
  596. package/lib/typescript/shared/stores/system.store.d.ts.map +1 -1
  597. package/lib/typescript/shared/types/gesture.types.d.ts +11 -0
  598. package/lib/typescript/shared/types/gesture.types.d.ts.map +1 -1
  599. package/lib/typescript/shared/types/providers/blank-stack-provider.types.d.ts +12 -20
  600. package/lib/typescript/shared/types/providers/blank-stack-provider.types.d.ts.map +1 -1
  601. package/lib/typescript/shared/types/providers/direct-stack.types.d.ts +2 -0
  602. package/lib/typescript/shared/types/providers/direct-stack.types.d.ts.map +1 -1
  603. package/lib/typescript/shared/types/screen.types.d.ts +0 -30
  604. package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
  605. package/lib/typescript/shared/types/stack.types.d.ts +2 -4
  606. package/lib/typescript/shared/types/stack.types.d.ts.map +1 -1
  607. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts +8 -2
  608. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
  609. package/lib/typescript/shared/utils/animation/animate.d.ts +2 -2
  610. package/lib/typescript/shared/utils/animation/animate.d.ts.map +1 -1
  611. package/lib/typescript/shared/utils/animation/spring/spring.d.ts +2 -2
  612. package/lib/typescript/shared/utils/animation/spring/spring.d.ts.map +1 -1
  613. package/lib/typescript/shared/utils/animation/spring/springUtils.d.ts +3 -0
  614. package/lib/typescript/shared/utils/animation/spring/springUtils.d.ts.map +1 -1
  615. package/lib/typescript/shared/utils/animation/state.d.ts +6 -0
  616. package/lib/typescript/shared/utils/animation/state.d.ts.map +1 -1
  617. package/lib/typescript/shared/utils/bounds/helpers/create-bounds-accessor-core.d.ts.map +1 -1
  618. package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts +9 -0
  619. package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts.map +1 -1
  620. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  621. package/lib/typescript/shared/utils/bounds/navigation/zoom/drag.d.ts +2 -11
  622. package/lib/typescript/shared/utils/bounds/navigation/zoom/drag.d.ts.map +1 -1
  623. package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts +7 -4
  624. package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts.map +1 -1
  625. package/lib/typescript/shared/utils/create-provider.d.ts +17 -9
  626. package/lib/typescript/shared/utils/create-provider.d.ts.map +1 -1
  627. package/package.json +1 -1
  628. package/src/blank-stack/components/stack-view.tsx +109 -53
  629. package/src/blank-stack/types.ts +1 -4
  630. package/src/component-stack/components/stack-view.tsx +96 -32
  631. package/src/native-stack/views/NativeStackView.native.tsx +135 -124
  632. package/src/shared/adapters/with-screen-transitions/context.tsx +5 -0
  633. package/src/shared/adapters/with-screen-transitions/stack-layout.tsx +20 -7
  634. package/src/shared/animation/snap-to.ts +6 -0
  635. package/src/shared/components/activity/variants/activity-screen.tsx +46 -13
  636. package/src/shared/components/boundary/components/boundary-target.tsx +38 -24
  637. package/src/shared/components/boundary/create-boundary-component.tsx +29 -3
  638. package/src/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.ts +28 -14
  639. package/src/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.ts +7 -13
  640. package/src/shared/components/boundary/hooks/use-boundary-measurement.ts +3 -9
  641. package/src/shared/components/boundary/hooks/use-measurer.ts +7 -16
  642. package/src/shared/components/boundary/index.tsx +4 -8
  643. package/src/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.ts +103 -0
  644. package/src/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +94 -271
  645. package/src/shared/components/boundary/portal/components/boundary-content-portal/index.tsx +31 -12
  646. package/src/shared/components/boundary/portal/components/boundary-portal/components/host.tsx +14 -26
  647. package/src/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.tsx +64 -62
  648. package/src/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.ts +36 -0
  649. package/src/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.ts +2 -9
  650. package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.ts +117 -0
  651. package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +58 -208
  652. package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.ts +12 -20
  653. package/src/shared/components/boundary/portal/components/boundary-portal/index.tsx +72 -12
  654. package/src/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.ts +0 -1
  655. package/src/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.ts +2 -39
  656. package/src/shared/components/boundary/portal/utils/naming.ts +11 -0
  657. package/src/shared/components/boundary/portal/utils/resolve-portal.ts +26 -18
  658. package/src/shared/components/boundary/portal/utils/teleport-control.ts +0 -12
  659. package/src/shared/components/boundary/providers/boundary-root.provider.tsx +36 -91
  660. package/src/shared/components/boundary/utils/measured-bounds.ts +29 -32
  661. package/src/shared/components/boundary/utils/refresh-signals.ts +23 -18
  662. package/src/shared/components/boundary/utils/resolve-boundary-target.tsx +39 -0
  663. package/src/shared/components/create-transition-aware-component.tsx +11 -36
  664. package/src/shared/components/masked-view.tsx +20 -4
  665. package/src/shared/components/screen-container/hooks/use-backdrop-pointer-events.ts +10 -8
  666. package/src/shared/components/screen-container/hooks/use-content-layout.ts +10 -10
  667. package/src/shared/components/screen-container/layers/backdrop.tsx +23 -10
  668. package/src/shared/components/screen-container/layers/content.tsx +20 -21
  669. package/src/shared/components/screen-container/layers/maybe-masked-navigation-container.tsx +14 -4
  670. package/src/shared/components/screen-container/layers/surface-container.tsx +4 -4
  671. package/src/shared/components/screen-lifecycle/hooks/use-close-transition-intent.ts +19 -9
  672. package/src/shared/components/screen-lifecycle/hooks/use-open-transition-intent.ts +5 -2
  673. package/src/shared/components/screen-lifecycle/hooks/use-transition-start-controller.ts +8 -0
  674. package/src/shared/components/screen-lifecycle/index.tsx +3 -2
  675. package/src/shared/configs/presets.ts +13 -13
  676. package/src/shared/constants.ts +1 -0
  677. package/src/shared/hooks/navigation/use-navigation-helpers.ts +9 -8
  678. package/src/shared/hooks/navigation/use-screen-state.ts +4 -2
  679. package/src/shared/providers/helpers/measured-bounds-writes.ts +1 -0
  680. package/src/shared/providers/screen/animation/animation.provider.tsx +170 -173
  681. package/src/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.tsx +4 -2
  682. package/src/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +2 -2
  683. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/index.ts +4 -21
  684. package/src/shared/providers/screen/animation/helpers/pipeline.ts +6 -10
  685. package/src/shared/providers/screen/animation/index.tsx +1 -1
  686. package/src/shared/providers/screen/animation/use-screen-animation.tsx +2 -2
  687. package/src/shared/providers/screen/descriptors/descriptors.provider.tsx +83 -72
  688. package/src/shared/providers/screen/descriptors/index.tsx +0 -2
  689. package/src/shared/providers/screen/gestures/gestures.provider.tsx +71 -70
  690. package/src/shared/providers/screen/gestures/hooks/use-screen-gesture-config.ts +7 -8
  691. package/src/shared/providers/screen/gestures/hooks/use-screen-gesture.ts +2 -2
  692. package/src/shared/providers/screen/gestures/hooks/use-stable-runtime-config.ts +4 -2
  693. package/src/shared/providers/screen/gestures/index.tsx +1 -1
  694. package/src/shared/providers/screen/gestures/ownership/shadowing-claims.ts +3 -4
  695. package/src/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.ts +16 -8
  696. package/src/shared/providers/screen/gestures/pan/activation/use-pan-activation.ts +7 -2
  697. package/src/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.ts +9 -16
  698. package/src/shared/providers/screen/gestures/pan/behavior/pan-reset.ts +14 -0
  699. package/src/shared/providers/screen/gestures/pan/use-build-pan-gesture.ts +2 -2
  700. package/src/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.ts +74 -3
  701. package/src/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +13 -11
  702. package/src/shared/providers/screen/gestures/pinch/behavior/pinch-release.ts +2 -4
  703. package/src/shared/providers/screen/gestures/pinch/behavior/pinch-reset.ts +10 -0
  704. package/src/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.ts +2 -2
  705. package/src/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.tsx +4 -4
  706. package/src/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.ts +4 -4
  707. package/src/shared/providers/screen/gestures/types.ts +0 -14
  708. package/src/shared/providers/screen/options/index.ts +1 -1
  709. package/src/shared/providers/screen/options/options.provider.tsx +24 -28
  710. package/src/shared/providers/screen/screen-composer.tsx +9 -2
  711. package/src/shared/providers/screen/styles/constants.ts +8 -6
  712. package/src/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.ts +138 -0
  713. package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/index.ts +71 -4
  714. package/src/shared/providers/screen/styles/helpers/select-interpolator-frame.ts +41 -0
  715. package/src/shared/providers/screen/styles/helpers/transition-visual-state.ts +44 -0
  716. package/src/shared/providers/screen/styles/helpers/visibility-gate.ts +42 -7
  717. package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +129 -70
  718. package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +18 -15
  719. package/src/shared/providers/screen/styles/index.tsx +0 -1
  720. package/src/shared/providers/screen/styles/slot.provider.tsx +62 -48
  721. package/src/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.ts +4 -17
  722. package/src/shared/providers/stack/blank-stack.provider.tsx +66 -75
  723. package/src/shared/providers/stack/core.provider.tsx +46 -76
  724. package/src/shared/providers/stack/direct.provider.tsx +77 -57
  725. package/src/shared/stores/animation.store.ts +19 -0
  726. package/src/shared/stores/bounds/internals/links.ts +13 -2
  727. package/src/shared/stores/scroll.store.ts +23 -0
  728. package/src/shared/stores/system.store.ts +8 -0
  729. package/src/shared/types/gesture.types.ts +11 -0
  730. package/src/shared/types/providers/blank-stack-provider.types.ts +8 -22
  731. package/src/shared/types/providers/direct-stack.types.ts +2 -0
  732. package/src/shared/types/screen.types.ts +0 -32
  733. package/src/shared/types/stack.types.ts +2 -4
  734. package/src/shared/utils/animation/animate-to-progress.ts +72 -41
  735. package/src/shared/utils/animation/animate.ts +18 -2
  736. package/src/shared/utils/animation/spring/spring.ts +36 -1
  737. package/src/shared/utils/animation/spring/springUtils.ts +130 -0
  738. package/src/shared/utils/animation/state.ts +8 -0
  739. package/src/shared/utils/bounds/helpers/create-bounds-accessor-core.ts +7 -0
  740. package/src/shared/utils/bounds/navigation/reveal/math.ts +21 -5
  741. package/src/shared/utils/bounds/navigation/zoom/build.ts +77 -23
  742. package/src/shared/utils/bounds/navigation/zoom/drag.ts +3 -42
  743. package/src/shared/utils/bounds/navigation/zoom/helpers.ts +9 -23
  744. package/src/shared/utils/create-provider.tsx +105 -136
  745. package/lib/commonjs/shared/components/boundary/hooks/use-register-target.js +0 -32
  746. package/lib/commonjs/shared/components/boundary/hooks/use-register-target.js.map +0 -1
  747. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js +0 -51
  748. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +0 -1
  749. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js +0 -14
  750. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +0 -1
  751. package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js +0 -220
  752. package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js.map +0 -1
  753. package/lib/commonjs/shared/components/boundary/portal/utils/shallow-equal.js +0 -29
  754. package/lib/commonjs/shared/components/boundary/portal/utils/shallow-equal.js.map +0 -1
  755. package/lib/commonjs/shared/components/boundary/portal/utils/visible-host.js +0 -25
  756. package/lib/commonjs/shared/components/boundary/portal/utils/visible-host.js.map +0 -1
  757. package/lib/commonjs/shared/hooks/use-stable-callback-value.js +0 -68
  758. package/lib/commonjs/shared/hooks/use-stable-callback-value.js.map +0 -1
  759. package/lib/commonjs/shared/providers/register-bounds.provider.js +0 -311
  760. package/lib/commonjs/shared/providers/register-bounds.provider.js.map +0 -1
  761. package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +0 -64
  762. package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +0 -1
  763. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +0 -21
  764. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +0 -1
  765. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +0 -29
  766. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +0 -1
  767. package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +0 -38
  768. package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +0 -1
  769. package/lib/commonjs/shared/providers/screen/origin.provider.js +0 -41
  770. package/lib/commonjs/shared/providers/screen/origin.provider.js.map +0 -1
  771. package/lib/commonjs/shared/providers/screen/styles/helpers/opening-phase.js +0 -32
  772. package/lib/commonjs/shared/providers/screen/styles/helpers/opening-phase.js.map +0 -1
  773. package/lib/module/shared/components/boundary/hooks/use-register-target.js +0 -27
  774. package/lib/module/shared/components/boundary/hooks/use-register-target.js.map +0 -1
  775. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js +0 -46
  776. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +0 -1
  777. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js +0 -9
  778. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +0 -1
  779. package/lib/module/shared/components/boundary/portal/utils/ownership.js +0 -213
  780. package/lib/module/shared/components/boundary/portal/utils/ownership.js.map +0 -1
  781. package/lib/module/shared/components/boundary/portal/utils/shallow-equal.js +0 -24
  782. package/lib/module/shared/components/boundary/portal/utils/shallow-equal.js.map +0 -1
  783. package/lib/module/shared/components/boundary/portal/utils/visible-host.js +0 -20
  784. package/lib/module/shared/components/boundary/portal/utils/visible-host.js.map +0 -1
  785. package/lib/module/shared/hooks/use-stable-callback-value.js +0 -63
  786. package/lib/module/shared/hooks/use-stable-callback-value.js.map +0 -1
  787. package/lib/module/shared/providers/register-bounds.provider.js +0 -307
  788. package/lib/module/shared/providers/register-bounds.provider.js.map +0 -1
  789. package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +0 -59
  790. package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +0 -1
  791. package/lib/module/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +0 -15
  792. package/lib/module/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +0 -1
  793. package/lib/module/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +0 -24
  794. package/lib/module/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +0 -1
  795. package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +0 -33
  796. package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +0 -1
  797. package/lib/module/shared/providers/screen/origin.provider.js +0 -33
  798. package/lib/module/shared/providers/screen/origin.provider.js.map +0 -1
  799. package/lib/module/shared/providers/screen/styles/helpers/opening-phase.js +0 -26
  800. package/lib/module/shared/providers/screen/styles/helpers/opening-phase.js.map +0 -1
  801. package/lib/typescript/shared/components/boundary/hooks/use-register-target.d.ts +0 -10
  802. package/lib/typescript/shared/components/boundary/hooks/use-register-target.d.ts.map +0 -1
  803. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts +0 -13
  804. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts.map +0 -1
  805. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts +0 -2
  806. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts.map +0 -1
  807. package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts +0 -34
  808. package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts.map +0 -1
  809. package/lib/typescript/shared/components/boundary/portal/utils/shallow-equal.d.ts +0 -8
  810. package/lib/typescript/shared/components/boundary/portal/utils/shallow-equal.d.ts.map +0 -1
  811. package/lib/typescript/shared/components/boundary/portal/utils/visible-host.d.ts +0 -8
  812. package/lib/typescript/shared/components/boundary/portal/utils/visible-host.d.ts.map +0 -1
  813. package/lib/typescript/shared/hooks/use-stable-callback-value.d.ts +0 -13
  814. package/lib/typescript/shared/hooks/use-stable-callback-value.d.ts.map +0 -1
  815. package/lib/typescript/shared/providers/register-bounds.provider.d.ts +0 -25
  816. package/lib/typescript/shared/providers/register-bounds.provider.d.ts.map +0 -1
  817. package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts +0 -15
  818. package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts.map +0 -1
  819. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts +0 -4
  820. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts.map +0 -1
  821. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts +0 -5
  822. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts.map +0 -1
  823. package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts +0 -9
  824. package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts.map +0 -1
  825. package/lib/typescript/shared/providers/screen/origin.provider.d.ts +0 -11
  826. package/lib/typescript/shared/providers/screen/origin.provider.d.ts.map +0 -1
  827. package/lib/typescript/shared/providers/screen/styles/helpers/opening-phase.d.ts +0 -16
  828. package/lib/typescript/shared/providers/screen/styles/helpers/opening-phase.d.ts.map +0 -1
  829. package/src/shared/components/boundary/hooks/use-register-target.ts +0 -43
  830. package/src/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.tsx +0 -79
  831. package/src/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.ts +0 -10
  832. package/src/shared/components/boundary/portal/utils/ownership.ts +0 -319
  833. package/src/shared/components/boundary/portal/utils/shallow-equal.ts +0 -25
  834. package/src/shared/components/boundary/portal/utils/visible-host.ts +0 -24
  835. package/src/shared/hooks/use-stable-callback-value.ts +0 -76
  836. package/src/shared/providers/register-bounds.provider.tsx +0 -402
  837. package/src/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.ts +0 -88
  838. package/src/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.ts +0 -19
  839. package/src/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.ts +0 -47
  840. package/src/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.ts +0 -50
  841. package/src/shared/providers/screen/origin.provider.tsx +0 -38
  842. package/src/shared/providers/screen/styles/helpers/opening-phase.ts +0 -25
@@ -10,12 +10,43 @@ var _jsxRuntime = require("react/jsx-runtime");
10
10
  * THANK YOU @MatiPl01
11
11
  * https://github.com/MatiPl01/react-native-sortables/blob/main/packages/react-native-sortables/src/providers/utils/createProvider.tsx
12
12
  * SUPER COOL AMAZING UTILITY
13
+ *
14
+ * Store-only provider: values propagate exclusively through a subscription
15
+ * store read with `use${Name}Store(selector)`. There is intentionally no raw
16
+ * context channel, so consumers subscribe only to the values they render.
17
+ *
18
+ * Factories do not memoize what they return:
19
+ * - `value`: the store shallow-compares snapshots and keeps the previous
20
+ * object when the contents are unchanged. Derived object and array fields
21
+ * must still have stable identities.
22
+ * - `children`: passed-through children keep their identity across
23
+ * provider-local renders. Factories that wrap children should use a
24
+ * module-level memoized component for the wrapper.
13
25
  */
14
26
 
15
27
  const NullProviderStore = {
16
28
  getSnapshot: () => null,
17
29
  subscribe: () => () => {}
18
30
  };
31
+ const shallowEqual = (a, b) => {
32
+ if (Object.is(a, b)) {
33
+ return true;
34
+ }
35
+ if (typeof a !== "object" || a === null || typeof b !== "object" || b === null) {
36
+ return false;
37
+ }
38
+ const aKeys = Object.keys(a);
39
+ const bKeys = Object.keys(b);
40
+ if (aKeys.length !== bKeys.length) {
41
+ return false;
42
+ }
43
+ for (const key of aKeys) {
44
+ if (!(key in b) || !Object.is(a[key], b[key])) {
45
+ return false;
46
+ }
47
+ }
48
+ return true;
49
+ };
19
50
  const createProviderStore = initialSnapshot => {
20
51
  let snapshot = initialSnapshot;
21
52
  const listeners = new Set();
@@ -27,7 +58,7 @@ const createProviderStore = initialSnapshot => {
27
58
  }
28
59
  },
29
60
  setSnapshot: nextSnapshot => {
30
- if (Object.is(snapshot, nextSnapshot)) {
61
+ if (shallowEqual(snapshot, nextSnapshot)) {
31
62
  return false;
32
63
  }
33
64
  snapshot = nextSnapshot;
@@ -47,28 +78,48 @@ function createProvider(name, options) {
47
78
  guarded = true
48
79
  } = options ?? {};
49
80
  const providerDisplayName = `${name}Provider`;
50
- const innerProviderDisplayName = `${name}InnerProvider`;
51
- const Context = /*#__PURE__*/(0, _react.createContext)(null);
52
- Context.displayName = name;
53
81
  const StoreContext = /*#__PURE__*/(0, _react.createContext)(null);
54
82
  StoreContext.displayName = `${name}Store`;
83
+ const createStoreHook = strict => {
84
+ return selector => {
85
+ const store = (0, _react.useContext)(StoreContext);
86
+ const resolvedStore = store ?? NullProviderStore;
87
+ const selectorRef = (0, _react.useRef)(selector);
88
+ selectorRef.current = selector;
89
+ const getSelectedSnapshot = (0, _react.useCallback)(() => {
90
+ if (strict && store === null) {
91
+ throw new Error(`${name} store must be used within a ${name}Provider`);
92
+ }
93
+ const snapshot = resolvedStore.getSnapshot();
94
+ if (strict && snapshot === null) {
95
+ throw new Error(`${name} store must be used within an enabled ${name}Provider`);
96
+ }
97
+ return selectorRef.current ? selectorRef.current(snapshot) : snapshot;
98
+ }, [resolvedStore, store]);
99
+ return (0, _react.useSyncExternalStore)(resolvedStore.subscribe, getSelectedSnapshot, getSelectedSnapshot);
100
+ };
101
+ };
102
+ const useStoreSelector = createStoreHook(guarded);
103
+ const factoryInternals = {
104
+ useParentStore: createStoreHook(false)
105
+ };
55
106
  const Provider = props => {
56
107
  const {
57
108
  children = props.children,
58
109
  enabled = true,
59
110
  value
60
- } = factory(props);
111
+ } = factory(props, factoryInternals);
61
112
  if (!value) {
62
113
  throw new Error(`${name}Context value must be provided. You likely forgot to return it from the factory function.`);
63
114
  }
64
- const memoValue = (0, _react.useMemo)(() => enabled ? value : null, [enabled, value]);
115
+ const snapshotValue = enabled ? value : null;
65
116
  const storeRef = (0, _react.useRef)(null);
66
117
  const pendingNotifyRef = (0, _react.useRef)(false);
67
118
  if (storeRef.current === null) {
68
- storeRef.current = createProviderStore(memoValue);
119
+ storeRef.current = createProviderStore(snapshotValue);
69
120
  }
70
121
  const store = storeRef.current;
71
- pendingNotifyRef.current = store.setSnapshot(memoValue) || pendingNotifyRef.current;
122
+ pendingNotifyRef.current = store.setSnapshot(snapshotValue) || pendingNotifyRef.current;
72
123
  (0, _react.useLayoutEffect)(() => {
73
124
  if (!pendingNotifyRef.current) {
74
125
  return;
@@ -76,80 +127,15 @@ function createProvider(name, options) {
76
127
  pendingNotifyRef.current = false;
77
128
  store.notify();
78
129
  });
79
-
80
- // Per-instance ref ensures InnerProvider reads latest value while keeping
81
- // a stable component reference.
82
- const valueRef = (0, _react.useRef)(memoValue);
83
- valueRef.current = memoValue;
84
- const InnerProvider = (0, _react.useMemo)(() => {
85
- const NamedInnerProvider = ({
86
- children
87
- }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(StoreContext.Provider, {
88
- value: store,
89
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Context.Provider, {
90
- value: valueRef.current,
91
- children: children
92
- })
93
- });
94
- NamedInnerProvider.displayName = innerProviderDisplayName;
95
- return NamedInnerProvider;
96
- }, [store]);
97
- if (typeof children === "function") {
98
- return children({
99
- [`${name}Provider`]: InnerProvider
100
- });
101
- }
102
130
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(StoreContext.Provider, {
103
131
  value: store,
104
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Context.Provider, {
105
- value: memoValue,
106
- children: children
107
- })
132
+ children: children
108
133
  });
109
134
  };
110
135
  Provider.displayName = providerDisplayName;
111
- const useEnhancedContext = () => {
112
- const context = (0, _react.useContext)(Context);
113
- if (guarded && context === null) {
114
- throw new Error(`${name} context must be used within a ${name}Provider`);
115
- }
116
- return context;
117
- };
118
- const useStoreSelector = selector => {
119
- const store = (0, _react.useContext)(StoreContext);
120
- const resolvedStore = store ?? NullProviderStore;
121
- const selectorRef = (0, _react.useRef)(selector);
122
- selectorRef.current = selector;
123
- const getSelectedSnapshot = (0, _react.useCallback)(() => {
124
- if (guarded && store === null) {
125
- throw new Error(`${name} store must be used within a ${name}Provider`);
126
- }
127
- const snapshot = resolvedStore.getSnapshot();
128
- if (guarded && snapshot === null) {
129
- throw new Error(`${name} store must be used within an enabled ${name}Provider`);
130
- }
131
- return selectorRef.current ? selectorRef.current(snapshot) : snapshot;
132
- }, [resolvedStore, store]);
133
- return (0, _react.useSyncExternalStore)(resolvedStore.subscribe, getSelectedSnapshot, getSelectedSnapshot);
134
- };
135
- const useOptionalStoreSelector = selector => {
136
- const store = (0, _react.useContext)(StoreContext);
137
- const resolvedStore = store ?? NullProviderStore;
138
- const selectorRef = (0, _react.useRef)(selector);
139
- selectorRef.current = selector;
140
- const getSelectedSnapshot = (0, _react.useCallback)(() => {
141
- const snapshot = resolvedStore.getSnapshot();
142
- return selectorRef.current ? selectorRef.current(snapshot) : snapshot;
143
- }, [resolvedStore]);
144
- return (0, _react.useSyncExternalStore)(resolvedStore.subscribe, getSelectedSnapshot, getSelectedSnapshot);
145
- };
146
136
  return {
147
- [`${name}Context`]: Context,
148
- [`${name}StoreContext`]: StoreContext,
149
137
  [`${name}Provider`]: Provider,
150
- [`use${name}Context`]: useEnhancedContext,
151
- [`use${name}Store`]: useStoreSelector,
152
- [`use${name}OptionalStore`]: useOptionalStoreSelector
138
+ [`use${name}Store`]: useStoreSelector
153
139
  };
154
140
  };
155
141
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_jsxRuntime","NullProviderStore","getSnapshot","subscribe","createProviderStore","initialSnapshot","snapshot","listeners","Set","notify","listener","setSnapshot","nextSnapshot","Object","is","add","delete","createProvider","name","options","factory","guarded","providerDisplayName","innerProviderDisplayName","Context","createContext","displayName","StoreContext","Provider","props","children","enabled","value","Error","memoValue","useMemo","storeRef","useRef","pendingNotifyRef","current","store","useLayoutEffect","valueRef","InnerProvider","NamedInnerProvider","jsx","useEnhancedContext","context","useContext","useStoreSelector","selector","resolvedStore","selectorRef","getSelectedSnapshot","useCallback","useSyncExternalStore","useOptionalStoreSelector"],"sourceRoot":"../../../../src","sources":["shared/utils/create-provider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_jsxRuntime","NullProviderStore","getSnapshot","subscribe","shallowEqual","a","b","Object","is","aKeys","keys","bKeys","length","key","createProviderStore","initialSnapshot","snapshot","listeners","Set","notify","listener","setSnapshot","nextSnapshot","add","delete","createProvider","name","options","factory","guarded","providerDisplayName","StoreContext","createContext","displayName","createStoreHook","strict","selector","store","useContext","resolvedStore","selectorRef","useRef","current","getSelectedSnapshot","useCallback","Error","useSyncExternalStore","useStoreSelector","factoryInternals","useParentStore","Provider","props","children","enabled","value","snapshotValue","storeRef","pendingNotifyRef","useLayoutEffect","jsx"],"sourceRoot":"../../../../src","sources":["shared/utils/create-provider.tsx"],"mappings":"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","ignoreList":[]}
@@ -6,52 +6,84 @@ import { ActivityContainer, ActivityScreen } from "../../shared/components/activ
6
6
  import { PortalProvider } from "../../shared/components/boundary/portal";
7
7
  import { Overlay } from "../../shared/components/overlay";
8
8
  import { ScreenComposer } from "../../shared/providers/screen/screen-composer";
9
- import { withBlankStack } from "../../shared/providers/stack/blank-stack.provider";
10
- import { withStackCore } from "../../shared/providers/stack/core.provider";
9
+ import { BlankStackProvider, useBlankStackStore } from "../../shared/providers/stack/blank-stack.provider";
10
+ import { StackCoreProvider } from "../../shared/providers/stack/core.provider";
11
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
- const BlankSceneRow = /*#__PURE__*/memo(function BlankSceneRow({
13
- scene,
14
- paintDriverRouteKey
12
+ const BlankNavigationProvider = /*#__PURE__*/memo(function BlankNavigationProvider({
13
+ children,
14
+ routeKey
15
15
  }) {
16
- const descriptor = scene.descriptor;
17
- const route = scene.route;
16
+ const navigation = useBlankStackStore(store => store?.scenesByKey[routeKey]?.descriptor.navigation);
17
+ const route = useBlankStackStore(store => store?.scenesByKey[routeKey]?.route);
18
+ if (!navigation || !route) {
19
+ throw new Error(`Blank stack scene "${routeKey}" was not found.`);
20
+ }
18
21
  return /*#__PURE__*/_jsx(NavigationContext.Provider, {
19
- value: descriptor.navigation,
22
+ value: navigation,
20
23
  children: /*#__PURE__*/_jsx(NavigationRouteContext.Provider, {
21
24
  value: route,
22
- children: /*#__PURE__*/_jsx(ActivityScreen, {
23
- activity: descriptor.activity,
24
- inactiveBehavior: descriptor.options.inactiveBehavior,
25
- paintDriverRouteKey: paintDriverRouteKey,
26
- hasNestedState: "state" in route,
27
- children: /*#__PURE__*/_jsx(ScreenComposer, {
28
- previous: scene.previousDescriptor,
29
- current: descriptor,
30
- next: scene.nextDescriptor,
31
- children: descriptor.render?.()
25
+ children: children
26
+ })
27
+ });
28
+ });
29
+ const BlankSceneContent = /*#__PURE__*/memo(function BlankSceneContent({
30
+ routeKey
31
+ }) {
32
+ const render = useBlankStackStore(store => store?.scenesByKey[routeKey]?.descriptor.render);
33
+ return render?.() ?? null;
34
+ });
35
+ const BlankSceneRow = /*#__PURE__*/memo(function BlankSceneRow({
36
+ routeKey
37
+ }) {
38
+ return /*#__PURE__*/_jsx(BlankNavigationProvider, {
39
+ routeKey: routeKey,
40
+ children: /*#__PURE__*/_jsx(ActivityScreen, {
41
+ routeKey: routeKey,
42
+ children: /*#__PURE__*/_jsx(ScreenComposer, {
43
+ routeKey: routeKey,
44
+ children: /*#__PURE__*/_jsx(BlankSceneContent, {
45
+ routeKey: routeKey
32
46
  })
33
47
  })
34
48
  })
35
49
  });
36
50
  });
37
- export const StackView = withStackCore({
38
- TRANSITIONS_ALWAYS_ON: true,
39
- DISABLE_NATIVE_SCREENS: false
40
- }, withBlankStack(({
41
- scenes,
42
- shouldShowFloatOverlay
43
- }) => {
51
+ const StackViewContent = /*#__PURE__*/memo(function StackViewContent() {
52
+ const routeKeys = useBlankStackStore(store => store?.routeKeys ?? EMPTY_ROUTE_KEYS);
53
+ const shouldShowFloatOverlay = useBlankStackStore(store => store?.shouldShowFloatOverlay ?? false);
44
54
  return /*#__PURE__*/_jsxs(PortalProvider, {
45
55
  children: [shouldShowFloatOverlay ? /*#__PURE__*/_jsx(Overlay.Float, {}) : null, /*#__PURE__*/_jsx(ActivityContainer, {
46
- children: scenes.map((scene, index) => {
47
- const route = scene.route;
48
- const paintDriverRouteKey = scenes[index + 2]?.route.key;
49
- return /*#__PURE__*/_jsx(BlankSceneRow, {
50
- scene: scene,
51
- paintDriverRouteKey: paintDriverRouteKey
52
- }, route.key);
53
- })
56
+ children: routeKeys.map(routeKey => /*#__PURE__*/_jsx(BlankSceneRow, {
57
+ routeKey: routeKey
58
+ }, routeKey))
54
59
  })]
55
60
  });
56
- }));
61
+ });
62
+ const EMPTY_ROUTE_KEYS = [];
63
+ export const StackView = /*#__PURE__*/memo(function StackView({
64
+ DISABLE_NATIVE_SCREENS,
65
+ DISABLE_NATIVE_SCREEN_CONTAINER,
66
+ TRANSITIONS_ALWAYS_ON,
67
+ STACK_TYPE,
68
+ state,
69
+ navigation,
70
+ descriptors,
71
+ describe
72
+ }) {
73
+ return /*#__PURE__*/_jsx(StackCoreProvider, {
74
+ config: {
75
+ TRANSITIONS_ALWAYS_ON: TRANSITIONS_ALWAYS_ON ?? true,
76
+ STACK_TYPE,
77
+ DISABLE_NATIVE_SCREENS: DISABLE_NATIVE_SCREENS ?? false,
78
+ DISABLE_NATIVE_SCREEN_CONTAINER
79
+ },
80
+ children: /*#__PURE__*/_jsx(BlankStackProvider, {
81
+ state: state,
82
+ navigation: navigation,
83
+ descriptors: descriptors,
84
+ describe: describe,
85
+ children: /*#__PURE__*/_jsx(StackViewContent, {})
86
+ })
87
+ });
88
+ });
57
89
  //# sourceMappingURL=stack-view.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NavigationContext","NavigationRouteContext","memo","ActivityContainer","ActivityScreen","PortalProvider","Overlay","ScreenComposer","withBlankStack","withStackCore","jsx","_jsx","jsxs","_jsxs","BlankSceneRow","scene","paintDriverRouteKey","descriptor","route","Provider","value","navigation","children","activity","inactiveBehavior","options","hasNestedState","previous","previousDescriptor","current","next","nextDescriptor","render","StackView","TRANSITIONS_ALWAYS_ON","DISABLE_NATIVE_SCREENS","scenes","shouldShowFloatOverlay","Float","map","index","key"],"sourceRoot":"../../../../src","sources":["blank-stack/components/stack-view.tsx"],"mappings":";;AAAA,SACCA,iBAAiB,EACjBC,sBAAsB,QAChB,0BAA0B;AACjC,SAASC,IAAI,QAAQ,OAAO;AAC5B,SACCC,iBAAiB,EACjBC,cAAc,QACR,kCAAkC;AACzC,SAASC,cAAc,QAAQ,yCAAyC;AACxE,SAASC,OAAO,QAAQ,iCAAiC;AACzD,SAASC,cAAc,QAAQ,+CAA+C;AAC9E,SAASC,cAAc,QAAQ,mDAAmD;AAClF,SAASC,aAAa,QAAQ,4CAA4C;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAY3E,MAAMC,aAAa,gBAAGZ,IAAI,CAAC,SAASY,aAAaA,CAAC;EACjDC,KAAK;EACLC;AACmB,CAAC,EAAE;EACtB,MAAMC,UAAU,GAAGF,KAAK,CAACE,UAAU;EACnC,MAAMC,KAAK,GAAGH,KAAK,CAACG,KAAK;EAEzB,oBACCP,IAAA,CAACX,iBAAiB,CAACmB,QAAQ;IAACC,KAAK,EAAEH,UAAU,CAACI,UAAW;IAAAC,QAAA,eACxDX,IAAA,CAACV,sBAAsB,CAACkB,QAAQ;MAACC,KAAK,EAAEF,KAAM;MAAAI,QAAA,eAC7CX,IAAA,CAACP,cAAc;QACdmB,QAAQ,EAAEN,UAAU,CAACM,QAAS;QAC9BC,gBAAgB,EAAEP,UAAU,CAACQ,OAAO,CAACD,gBAAiB;QACtDR,mBAAmB,EAAEA,mBAAoB;QACzCU,cAAc,EAAE,OAAO,IAAIR,KAAM;QAAAI,QAAA,eAEjCX,IAAA,CAACJ,cAAc;UACdoB,QAAQ,EAAEZ,KAAK,CAACa,kBAAmB;UACnCC,OAAO,EAAEZ,UAAW;UACpBa,IAAI,EAAEf,KAAK,CAACgB,cAAe;UAAAT,QAAA,EAE1BL,UAAU,CAACe,MAAM,GAAG;QAAC,CACP;MAAC,CACF;IAAC,CACe;EAAC,CACP,CAAC;AAE/B,CAAC,CAAC;AAEF,OAAO,MAAMC,SAAS,GAAGxB,aAAa,CACrC;EAAEyB,qBAAqB,EAAE,IAAI;EAAEC,sBAAsB,EAAE;AAAM,CAAC,EAC9D3B,cAAc,CACb,CAAC;EAAE4B,MAAM;EAAEC;AAAuB,CAAC,KAAK;EACvC,oBACCxB,KAAA,CAACR,cAAc;IAAAiB,QAAA,GACbe,sBAAsB,gBAAG1B,IAAA,CAACL,OAAO,CAACgC,KAAK,IAAE,CAAC,GAAG,IAAI,eAElD3B,IAAA,CAACR,iBAAiB;MAAAmB,QAAA,EAChBc,MAAM,CAACG,GAAG,CAAC,CAACxB,KAAK,EAAEyB,KAAK,KAAK;QAC7B,MAAMtB,KAAK,GAAGH,KAAK,CAACG,KAAK;QACzB,MAAMF,mBAAmB,GAAGoB,MAAM,CAACI,KAAK,GAAG,CAAC,CAAC,EAAEtB,KAAK,CAACuB,GAAG;QAExD,oBACC9B,IAAA,CAACG,aAAa;UAEbC,KAAK,EAAEA,KAAM;UACbC,mBAAmB,EAAEA;QAAoB,GAFpCE,KAAK,CAACuB,GAGX,CAAC;MAEJ,CAAC;IAAC,CACgB,CAAC;EAAA,CACL,CAAC;AAEnB,CACD,CACD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["NavigationContext","NavigationRouteContext","memo","ActivityContainer","ActivityScreen","PortalProvider","Overlay","ScreenComposer","BlankStackProvider","useBlankStackStore","StackCoreProvider","jsx","_jsx","jsxs","_jsxs","BlankNavigationProvider","children","routeKey","navigation","store","scenesByKey","descriptor","route","Error","Provider","value","BlankSceneContent","render","BlankSceneRow","StackViewContent","routeKeys","EMPTY_ROUTE_KEYS","shouldShowFloatOverlay","Float","map","StackView","DISABLE_NATIVE_SCREENS","DISABLE_NATIVE_SCREEN_CONTAINER","TRANSITIONS_ALWAYS_ON","STACK_TYPE","state","descriptors","describe","config"],"sourceRoot":"../../../../src","sources":["blank-stack/components/stack-view.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,37 +1,71 @@
1
1
  "use strict";
2
2
 
3
- import { Fragment } from "react";
3
+ import { Fragment, memo } from "react";
4
4
  import { Overlay } from "../../shared/components/overlay";
5
5
  import { SceneView } from "../../shared/components/scene-view";
6
6
  import { ScreenComposer } from "../../shared/providers/screen/screen-composer";
7
- import { withBlankStack } from "../../shared/providers/stack/blank-stack.provider";
8
- import { withStackCore } from "../../shared/providers/stack/core.provider";
7
+ import { BlankStackProvider, useBlankStackStore } from "../../shared/providers/stack/blank-stack.provider";
8
+ import { StackCoreProvider } from "../../shared/providers/stack/core.provider";
9
9
  import { StackType } from "../../shared/types/stack.types";
10
10
  import { ComponentScreen } from "./component-screen";
11
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
- export const StackView = withStackCore({
13
- TRANSITIONS_ALWAYS_ON: true,
14
- STACK_TYPE: StackType.COMPONENT
15
- }, withBlankStack(({
16
- scenes,
17
- shouldShowFloatOverlay
18
- }) => {
12
+ const EMPTY_ROUTE_KEYS = [];
13
+ const ComponentSceneContent = /*#__PURE__*/memo(function ComponentSceneContent({
14
+ routeKey
15
+ }) {
16
+ const descriptor = useBlankStackStore(store => store?.scenesByKey[routeKey]?.descriptor);
17
+ if (!descriptor) {
18
+ throw new Error(`Component stack scene "${routeKey}" was not found.`);
19
+ }
20
+ return /*#__PURE__*/_jsx(SceneView, {
21
+ descriptor: descriptor
22
+ });
23
+ });
24
+ const ComponentSceneRow = /*#__PURE__*/memo(function ComponentSceneRow({
25
+ routeKey
26
+ }) {
27
+ return /*#__PURE__*/_jsx(ComponentScreen, {
28
+ routeKey: routeKey,
29
+ children: /*#__PURE__*/_jsx(ScreenComposer, {
30
+ routeKey: routeKey,
31
+ children: /*#__PURE__*/_jsx(ComponentSceneContent, {
32
+ routeKey: routeKey
33
+ })
34
+ })
35
+ });
36
+ });
37
+ const StackViewContent = /*#__PURE__*/memo(function StackViewContent() {
38
+ const routeKeys = useBlankStackStore(store => store?.routeKeys ?? EMPTY_ROUTE_KEYS);
39
+ const shouldShowFloatOverlay = useBlankStackStore(store => store?.shouldShowFloatOverlay ?? false);
19
40
  return /*#__PURE__*/_jsxs(Fragment, {
20
- children: [shouldShowFloatOverlay ? /*#__PURE__*/_jsx(Overlay.Float, {}) : null, scenes.map(scene => {
21
- const descriptor = scene.descriptor;
22
- const route = scene.route;
23
- return /*#__PURE__*/_jsx(ComponentScreen, {
24
- routeKey: route.key,
25
- children: /*#__PURE__*/_jsx(ScreenComposer, {
26
- previous: scene.previousDescriptor,
27
- current: descriptor,
28
- next: scene.nextDescriptor,
29
- children: /*#__PURE__*/_jsx(SceneView, {
30
- descriptor: descriptor
31
- }, route.key)
32
- })
33
- }, route.key);
34
- })]
41
+ children: [shouldShowFloatOverlay ? /*#__PURE__*/_jsx(Overlay.Float, {}) : null, routeKeys.map(routeKey => /*#__PURE__*/_jsx(ComponentSceneRow, {
42
+ routeKey: routeKey
43
+ }, routeKey))]
44
+ });
45
+ });
46
+ export const StackView = /*#__PURE__*/memo(function StackView({
47
+ DISABLE_NATIVE_SCREENS,
48
+ DISABLE_NATIVE_SCREEN_CONTAINER,
49
+ TRANSITIONS_ALWAYS_ON,
50
+ state,
51
+ navigation,
52
+ descriptors,
53
+ describe
54
+ }) {
55
+ return /*#__PURE__*/_jsx(StackCoreProvider, {
56
+ config: {
57
+ TRANSITIONS_ALWAYS_ON: TRANSITIONS_ALWAYS_ON ?? true,
58
+ STACK_TYPE: StackType.COMPONENT,
59
+ DISABLE_NATIVE_SCREENS,
60
+ DISABLE_NATIVE_SCREEN_CONTAINER
61
+ },
62
+ children: /*#__PURE__*/_jsx(BlankStackProvider, {
63
+ state: state,
64
+ navigation: navigation,
65
+ descriptors: descriptors,
66
+ describe: describe,
67
+ children: /*#__PURE__*/_jsx(StackViewContent, {})
68
+ })
35
69
  });
36
- }));
70
+ });
37
71
  //# sourceMappingURL=stack-view.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Fragment","Overlay","SceneView","ScreenComposer","withBlankStack","withStackCore","StackType","ComponentScreen","jsx","_jsx","jsxs","_jsxs","StackView","TRANSITIONS_ALWAYS_ON","STACK_TYPE","COMPONENT","scenes","shouldShowFloatOverlay","children","Float","map","scene","descriptor","route","routeKey","key","previous","previousDescriptor","current","next","nextDescriptor"],"sourceRoot":"../../../../src","sources":["component-stack/components/stack-view.tsx"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,OAAO;AAChC,SAASC,OAAO,QAAQ,iCAAiC;AACzD,SAASC,SAAS,QAAQ,oCAAoC;AAC9D,SAASC,cAAc,QAAQ,+CAA+C;AAC9E,SAASC,cAAc,QAAQ,mDAAmD;AAClF,SAASC,aAAa,QAAQ,4CAA4C;AAC1E,SAASC,SAAS,QAAQ,gCAAgC;AAK1D,SAASC,eAAe,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAErD,OAAO,MAAMC,SAAS,GAAGP,aAAa,CACrC;EAAEQ,qBAAqB,EAAE,IAAI;EAAEC,UAAU,EAAER,SAAS,CAACS;AAAU,CAAC,EAChEX,cAAc,CACb,CAAC;EAAEY,MAAM;EAAEC;AAAuB,CAAC,KAAK;EACvC,oBACCN,KAAA,CAACX,QAAQ;IAAAkB,QAAA,GACPD,sBAAsB,gBAAGR,IAAA,CAACR,OAAO,CAACkB,KAAK,IAAE,CAAC,GAAG,IAAI,EAEjDH,MAAM,CAACI,GAAG,CAAEC,KAAK,IAAK;MACtB,MAAMC,UAAU,GAAGD,KAAK,CAACC,UAAU;MACnC,MAAMC,KAAK,GAAGF,KAAK,CAACE,KAAK;MAEzB,oBACCd,IAAA,CAACF,eAAe;QAAiBiB,QAAQ,EAAED,KAAK,CAACE,GAAI;QAAAP,QAAA,eACpDT,IAAA,CAACN,cAAc;UACduB,QAAQ,EAAEL,KAAK,CAACM,kBAAmB;UACnCC,OAAO,EAAEN,UAAW;UACpBO,IAAI,EAAER,KAAK,CAACS,cAAe;UAAAZ,QAAA,eAE3BT,IAAA,CAACP,SAAS;YAAiBoB,UAAU,EAAEA;UAAW,GAAlCC,KAAK,CAACE,GAA8B;QAAC,CACtC;MAAC,GAPIF,KAAK,CAACE,GAQX,CAAC;IAEpB,CAAC,CAAC;EAAA,CACO,CAAC;AAEb,CACD,CACD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Fragment","memo","Overlay","SceneView","ScreenComposer","BlankStackProvider","useBlankStackStore","StackCoreProvider","StackType","ComponentScreen","jsx","_jsx","jsxs","_jsxs","EMPTY_ROUTE_KEYS","ComponentSceneContent","routeKey","descriptor","store","scenesByKey","Error","ComponentSceneRow","children","StackViewContent","routeKeys","shouldShowFloatOverlay","Float","map","StackView","DISABLE_NATIVE_SCREENS","DISABLE_NATIVE_SCREEN_CONTAINER","TRANSITIONS_ALWAYS_ON","state","navigation","descriptors","describe","config","STACK_TYPE","COMPONENT"],"sourceRoot":"../../../../src","sources":["component-stack/components/stack-view.tsx"],"mappings":";;AAAA,SAASA,QAAQ,EAAEC,IAAI,QAAQ,OAAO;AACtC,SAASC,OAAO,QAAQ,iCAAiC;AACzD,SAASC,SAAS,QAAQ,oCAAoC;AAC9D,SAASC,cAAc,QAAQ,+CAA+C;AAC9E,SACCC,kBAAkB,EAClBC,kBAAkB,QACZ,mDAAmD;AAC1D,SAECC,iBAAiB,QACX,4CAA4C;AAEnD,SAASC,SAAS,QAAQ,gCAAgC;AAK1D,SAASC,eAAe,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAErD,MAAMC,gBAA0B,GAAG,EAAE;AAErC,MAAMC,qBAAqB,gBAAGd,IAAI,CAAC,SAASc,qBAAqBA,CAAC;EACjEC;AAGD,CAAC,EAAE;EACF,MAAMC,UAAU,GAAGX,kBAAkB,CACnCY,KAAK,IAAKA,KAAK,EAAEC,WAAW,CAACH,QAAQ,CAAC,EAAEC,UAC1C,CAAyC;EAEzC,IAAI,CAACA,UAAU,EAAE;IAChB,MAAM,IAAIG,KAAK,CAAC,0BAA0BJ,QAAQ,kBAAkB,CAAC;EACtE;EAEA,oBAAOL,IAAA,CAACR,SAAS;IAACc,UAAU,EAAEA;EAAW,CAAE,CAAC;AAC7C,CAAC,CAAC;AAEF,MAAMI,iBAAiB,gBAAGpB,IAAI,CAAC,SAASoB,iBAAiBA,CAAC;EACzDL;AAGD,CAAC,EAAE;EACF,oBACCL,IAAA,CAACF,eAAe;IAACO,QAAQ,EAAEA,QAAS;IAAAM,QAAA,eACnCX,IAAA,CAACP,cAAc;MAACY,QAAQ,EAAEA,QAAS;MAAAM,QAAA,eAClCX,IAAA,CAACI,qBAAqB;QAACC,QAAQ,EAAEA;MAAS,CAAE;IAAC,CAC9B;EAAC,CACD,CAAC;AAEpB,CAAC,CAAC;AAEF,MAAMO,gBAAgB,gBAAGtB,IAAI,CAAC,SAASsB,gBAAgBA,CAAA,EAAG;EACzD,MAAMC,SAAS,GAAGlB,kBAAkB,CAClCY,KAAK,IAAKA,KAAK,EAAEM,SAAS,IAAIV,gBAChC,CAAC;EACD,MAAMW,sBAAsB,GAAGnB,kBAAkB,CAC/CY,KAAK,IAAKA,KAAK,EAAEO,sBAAsB,IAAI,KAC7C,CAAC;EAED,oBACCZ,KAAA,CAACb,QAAQ;IAAAsB,QAAA,GACPG,sBAAsB,gBAAGd,IAAA,CAACT,OAAO,CAACwB,KAAK,IAAE,CAAC,GAAG,IAAI,EAEjDF,SAAS,CAACG,GAAG,CAAEX,QAAQ,iBACvBL,IAAA,CAACU,iBAAiB;MAAgBL,QAAQ,EAAEA;IAAS,GAA7BA,QAA+B,CACvD,CAAC;EAAA,CACO,CAAC;AAEb,CAAC,CAAC;AAQF,OAAO,MAAMY,SAAS,gBAAG3B,IAAI,CAAC,SAAS2B,SAASA,CAAC;EAChDC,sBAAsB;EACtBC,+BAA+B;EAC/BC,qBAAqB;EACrBC,KAAK;EACLC,UAAU;EACVC,WAAW;EACXC;AACe,CAAC,EAAE;EAClB,oBACCxB,IAAA,CAACJ,iBAAiB;IACjB6B,MAAM,EAAE;MACPL,qBAAqB,EAAEA,qBAAqB,IAAI,IAAI;MACpDM,UAAU,EAAE7B,SAAS,CAAC8B,SAAS;MAC/BT,sBAAsB;MACtBC;IACD,CAAE;IAAAR,QAAA,eAEFX,IAAA,CAACN,kBAAkB;MAClB2B,KAAK,EAAEA,KAAM;MACbC,UAAU,EAAEA,UAAW;MACvBC,WAAW,EAAEA,WAAY;MACzBC,QAAQ,EAAEA,QAAS;MAAAb,QAAA,eAEnBX,IAAA,CAACY,gBAAgB,IAAE;IAAC,CACD;EAAC,CACH,CAAC;AAEtB,CAAC,CAAC","ignoreList":[]}
@@ -8,8 +8,8 @@ import { useSafeAreaInsets } from "react-native-safe-area-context";
8
8
  import { ScreenStack, ScreenStackItem } from "react-native-screens";
9
9
  import { Overlay } from "../../shared/components/overlay";
10
10
  import { ScreenComposer } from "../../shared/providers/screen/screen-composer";
11
- import { withStackCore } from "../../shared/providers/stack/core.provider";
12
- import { withDirectStack } from "../../shared/providers/stack/direct.provider";
11
+ import { StackCoreProvider } from "../../shared/providers/stack/core.provider";
12
+ import { DirectStackProvider, useDirectStackStore } from "../../shared/providers/stack/direct.provider";
13
13
  import { StackType } from "../../shared/types/stack.types";
14
14
  import { isFabric } from "../../shared/utils/platform";
15
15
  import { debounce } from "../utils/debounce";
@@ -337,17 +337,15 @@ const SceneView = ({
337
337
  })
338
338
  });
339
339
  };
340
- export const NativeStackView = withStackCore({
341
- TRANSITIONS_ALWAYS_ON: false,
342
- STACK_TYPE: StackType.NATIVE
343
- }, withDirectStack(function NativeStackViewContent({
344
- state,
345
- navigation,
346
- descriptors,
347
- scenes,
348
- focusedIndex,
349
- shouldShowFloatOverlay
350
- }) {
340
+ function NativeStackViewContent() {
341
+ const {
342
+ state,
343
+ navigation,
344
+ descriptors,
345
+ scenes,
346
+ focusedIndex,
347
+ shouldShowFloatOverlay
348
+ } = useDirectStackStore();
351
349
  const {
352
350
  setNextDismissedKey
353
351
  } = useDismissedRouteError(state);
@@ -462,7 +460,19 @@ export const NativeStackView = withStackCore({
462
460
  })
463
461
  })]
464
462
  });
465
- }));
463
+ }
464
+ export function NativeStackView(props) {
465
+ return /*#__PURE__*/_jsx(StackCoreProvider, {
466
+ config: {
467
+ TRANSITIONS_ALWAYS_ON: false,
468
+ STACK_TYPE: StackType.NATIVE
469
+ },
470
+ children: /*#__PURE__*/_jsx(DirectStackProvider, {
471
+ ...props,
472
+ children: /*#__PURE__*/_jsx(NativeStackViewContent, {})
473
+ })
474
+ });
475
+ }
466
476
  const styles = StyleSheet.create({
467
477
  container: {
468
478
  flex: 1