react-native-screen-transitions 4.0.0-alpha.0 → 4.0.0-alpha.2

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 (403) hide show
  1. package/lib/commonjs/animation/snap-to.js +2 -0
  2. package/lib/commonjs/animation/snap-to.js.map +1 -1
  3. package/lib/commonjs/components/boundary/components/boundary-target.js +19 -20
  4. package/lib/commonjs/components/boundary/components/boundary-target.js.map +1 -1
  5. package/lib/commonjs/components/boundary/create-boundary-component.js +16 -2
  6. package/lib/commonjs/components/boundary/create-boundary-component.js.map +1 -1
  7. package/lib/commonjs/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -0
  8. package/lib/commonjs/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
  9. package/lib/commonjs/components/boundary/hooks/use-boundary-measurement.js +1 -3
  10. package/lib/commonjs/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
  11. package/lib/commonjs/components/boundary/index.js +4 -3
  12. package/lib/commonjs/components/boundary/index.js.map +1 -1
  13. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/components/host.js +5 -1
  14. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/components/host.js.map +1 -1
  15. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +47 -188
  16. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  17. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/index.js +21 -13
  18. package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
  19. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/host.js +1 -12
  20. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  21. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +40 -33
  22. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
  23. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +3 -4
  24. package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -1
  25. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +46 -131
  26. package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  27. package/lib/commonjs/components/boundary/portal/components/boundary-portal/index.js +45 -9
  28. package/lib/commonjs/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
  29. package/lib/commonjs/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -1
  30. package/lib/commonjs/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +2 -29
  31. package/lib/commonjs/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -1
  32. package/lib/commonjs/components/boundary/portal/utils/handoff-target.js +33 -0
  33. package/lib/commonjs/components/boundary/portal/utils/handoff-target.js.map +1 -0
  34. package/lib/commonjs/components/boundary/portal/utils/resolve-portal.js +19 -15
  35. package/lib/commonjs/components/boundary/portal/utils/resolve-portal.js.map +1 -1
  36. package/lib/commonjs/components/boundary/portal/utils/teleport-control.js +1 -10
  37. package/lib/commonjs/components/boundary/portal/utils/teleport-control.js.map +1 -1
  38. package/lib/commonjs/components/boundary/providers/boundary-root.provider.js +18 -36
  39. package/lib/commonjs/components/boundary/providers/boundary-root.provider.js.map +1 -1
  40. package/lib/commonjs/components/boundary/utils/refresh-signals.js +7 -0
  41. package/lib/commonjs/components/boundary/utils/refresh-signals.js.map +1 -1
  42. package/lib/commonjs/components/boundary/utils/resolve-boundary-target.js +29 -0
  43. package/lib/commonjs/components/boundary/utils/resolve-boundary-target.js.map +1 -0
  44. package/lib/commonjs/components/masked-view.js +9 -1
  45. package/lib/commonjs/components/masked-view.js.map +1 -1
  46. package/lib/commonjs/components/screen-container/layers/backdrop.js +3 -1
  47. package/lib/commonjs/components/screen-container/layers/backdrop.js.map +1 -1
  48. package/lib/commonjs/components/screen-container/layers/maybe-masked-navigation-container.js +9 -1
  49. package/lib/commonjs/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  50. package/lib/commonjs/components/screen-lifecycle/hooks/use-transition-start-controller.js +2 -0
  51. package/lib/commonjs/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  52. package/lib/commonjs/navigators/react-navigation/index.js +7 -8
  53. package/lib/commonjs/navigators/react-navigation/index.js.map +1 -1
  54. package/lib/commonjs/providers/helpers/measured-bounds-writes.js +4 -1
  55. package/lib/commonjs/providers/helpers/measured-bounds-writes.js.map +1 -1
  56. package/lib/commonjs/providers/screen/gestures/gestures.provider.js +2 -8
  57. package/lib/commonjs/providers/screen/gestures/gestures.provider.js.map +1 -1
  58. package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-lifecycle.js +1 -0
  59. package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  60. package/lib/commonjs/providers/screen/gestures/pinch/activation/use-pinch-activation.js +37 -3
  61. package/lib/commonjs/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  62. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +1 -0
  63. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  64. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-release.js +3 -2
  65. package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
  66. package/lib/commonjs/providers/screen/gestures/types.js.map +1 -1
  67. package/lib/commonjs/providers/screen/styles/helpers/transition-visual-state.js +42 -0
  68. package/lib/commonjs/providers/screen/styles/helpers/transition-visual-state.js.map +1 -0
  69. package/lib/commonjs/providers/screen/styles/helpers/visibility-gate.js +11 -5
  70. package/lib/commonjs/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  71. package/lib/commonjs/providers/screen/styles/hooks/use-interpolated-style-maps.js +23 -10
  72. package/lib/commonjs/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  73. package/lib/commonjs/providers/screen/styles/hooks/use-maybe-block-visibility.js +10 -8
  74. package/lib/commonjs/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  75. package/lib/commonjs/stores/bounds/internals/links.js +4 -4
  76. package/lib/commonjs/stores/bounds/internals/links.js.map +1 -1
  77. package/lib/commonjs/stores/scroll.store.js +20 -2
  78. package/lib/commonjs/stores/scroll.store.js.map +1 -1
  79. package/lib/commonjs/stores/system.store.js +2 -0
  80. package/lib/commonjs/stores/system.store.js.map +1 -1
  81. package/lib/commonjs/utils/animation/animate-to-progress.js +23 -1
  82. package/lib/commonjs/utils/animation/animate-to-progress.js.map +1 -1
  83. package/lib/commonjs/utils/animation/animate.js +14 -2
  84. package/lib/commonjs/utils/animation/animate.js.map +1 -1
  85. package/lib/commonjs/utils/animation/spring/spring.js +22 -2
  86. package/lib/commonjs/utils/animation/spring/spring.js.map +1 -1
  87. package/lib/commonjs/utils/animation/spring/springUtils.js +96 -0
  88. package/lib/commonjs/utils/animation/spring/springUtils.js.map +1 -1
  89. package/lib/commonjs/utils/animation/state.js +4 -0
  90. package/lib/commonjs/utils/bounds/navigation/reveal/math.js +17 -5
  91. package/lib/commonjs/utils/bounds/navigation/reveal/math.js.map +1 -1
  92. package/lib/commonjs/utils/bounds/navigation/zoom/build.js +44 -20
  93. package/lib/commonjs/utils/bounds/navigation/zoom/build.js.map +1 -1
  94. package/lib/commonjs/utils/bounds/navigation/zoom/drag.js +2 -31
  95. package/lib/commonjs/utils/bounds/navigation/zoom/drag.js.map +1 -1
  96. package/lib/commonjs/utils/bounds/navigation/zoom/helpers.js +3 -17
  97. package/lib/commonjs/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  98. package/lib/module/animation/snap-to.js +2 -0
  99. package/lib/module/animation/snap-to.js.map +1 -1
  100. package/lib/module/components/boundary/components/boundary-target.js +19 -20
  101. package/lib/module/components/boundary/components/boundary-target.js.map +1 -1
  102. package/lib/module/components/boundary/create-boundary-component.js +17 -3
  103. package/lib/module/components/boundary/create-boundary-component.js.map +1 -1
  104. package/lib/module/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -0
  105. package/lib/module/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
  106. package/lib/module/components/boundary/hooks/use-boundary-measurement.js +1 -3
  107. package/lib/module/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
  108. package/lib/module/components/boundary/index.js +3 -2
  109. package/lib/module/components/boundary/index.js.map +1 -1
  110. package/lib/module/components/boundary/portal/components/boundary-content-portal/components/host.js +5 -1
  111. package/lib/module/components/boundary/portal/components/boundary-content-portal/components/host.js.map +1 -1
  112. package/lib/module/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +49 -190
  113. package/lib/module/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  114. package/lib/module/components/boundary/portal/components/boundary-content-portal/index.js +21 -13
  115. package/lib/module/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
  116. package/lib/module/components/boundary/portal/components/boundary-portal/components/host.js +2 -13
  117. package/lib/module/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  118. package/lib/module/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +43 -36
  119. package/lib/module/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
  120. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +3 -4
  121. package/lib/module/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -1
  122. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +50 -135
  123. package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  124. package/lib/module/components/boundary/portal/components/boundary-portal/index.js +44 -9
  125. package/lib/module/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
  126. package/lib/module/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -1
  127. package/lib/module/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +1 -27
  128. package/lib/module/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -1
  129. package/lib/module/components/boundary/portal/utils/handoff-target.js +28 -0
  130. package/lib/module/components/boundary/portal/utils/handoff-target.js.map +1 -0
  131. package/lib/module/components/boundary/portal/utils/resolve-portal.js +19 -15
  132. package/lib/module/components/boundary/portal/utils/resolve-portal.js.map +1 -1
  133. package/lib/module/components/boundary/portal/utils/teleport-control.js +0 -8
  134. package/lib/module/components/boundary/portal/utils/teleport-control.js.map +1 -1
  135. package/lib/module/components/boundary/providers/boundary-root.provider.js +19 -37
  136. package/lib/module/components/boundary/providers/boundary-root.provider.js.map +1 -1
  137. package/lib/module/components/boundary/utils/refresh-signals.js +7 -0
  138. package/lib/module/components/boundary/utils/refresh-signals.js.map +1 -1
  139. package/lib/module/components/boundary/utils/resolve-boundary-target.js +24 -0
  140. package/lib/module/components/boundary/utils/resolve-boundary-target.js.map +1 -0
  141. package/lib/module/components/masked-view.js +10 -2
  142. package/lib/module/components/masked-view.js.map +1 -1
  143. package/lib/module/components/screen-container/layers/backdrop.js +3 -1
  144. package/lib/module/components/screen-container/layers/backdrop.js.map +1 -1
  145. package/lib/module/components/screen-container/layers/maybe-masked-navigation-container.js +10 -2
  146. package/lib/module/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  147. package/lib/module/components/screen-lifecycle/hooks/use-transition-start-controller.js +2 -0
  148. package/lib/module/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  149. package/lib/module/navigators/react-navigation/index.js +4 -6
  150. package/lib/module/navigators/react-navigation/index.js.map +1 -1
  151. package/lib/module/providers/helpers/measured-bounds-writes.js +4 -1
  152. package/lib/module/providers/helpers/measured-bounds-writes.js.map +1 -1
  153. package/lib/module/providers/screen/gestures/gestures.provider.js +2 -8
  154. package/lib/module/providers/screen/gestures/gestures.provider.js.map +1 -1
  155. package/lib/module/providers/screen/gestures/pan/behavior/pan-lifecycle.js +1 -0
  156. package/lib/module/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  157. package/lib/module/providers/screen/gestures/pinch/activation/use-pinch-activation.js +35 -2
  158. package/lib/module/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  159. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +1 -0
  160. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  161. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-release.js +3 -2
  162. package/lib/module/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
  163. package/lib/module/providers/screen/gestures/types.js.map +1 -1
  164. package/lib/module/providers/screen/styles/helpers/transition-visual-state.js +35 -0
  165. package/lib/module/providers/screen/styles/helpers/transition-visual-state.js.map +1 -0
  166. package/lib/module/providers/screen/styles/helpers/visibility-gate.js +11 -5
  167. package/lib/module/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  168. package/lib/module/providers/screen/styles/hooks/use-interpolated-style-maps.js +23 -10
  169. package/lib/module/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  170. package/lib/module/providers/screen/styles/hooks/use-maybe-block-visibility.js +10 -8
  171. package/lib/module/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  172. package/lib/module/stores/bounds/internals/links.js +4 -4
  173. package/lib/module/stores/bounds/internals/links.js.map +1 -1
  174. package/lib/module/stores/scroll.store.js +17 -0
  175. package/lib/module/stores/scroll.store.js.map +1 -1
  176. package/lib/module/stores/system.store.js +2 -0
  177. package/lib/module/stores/system.store.js.map +1 -1
  178. package/lib/module/utils/animation/animate-to-progress.js +21 -0
  179. package/lib/module/utils/animation/animate-to-progress.js.map +1 -1
  180. package/lib/module/utils/animation/animate.js +14 -2
  181. package/lib/module/utils/animation/animate.js.map +1 -1
  182. package/lib/module/utils/animation/spring/spring.js +23 -3
  183. package/lib/module/utils/animation/spring/spring.js.map +1 -1
  184. package/lib/module/utils/animation/spring/springUtils.js +95 -0
  185. package/lib/module/utils/animation/spring/springUtils.js.map +1 -1
  186. package/lib/module/utils/animation/state.js +2 -0
  187. package/lib/module/utils/bounds/navigation/reveal/math.js +16 -5
  188. package/lib/module/utils/bounds/navigation/reveal/math.js.map +1 -1
  189. package/lib/module/utils/bounds/navigation/zoom/build.js +46 -22
  190. package/lib/module/utils/bounds/navigation/zoom/build.js.map +1 -1
  191. package/lib/module/utils/bounds/navigation/zoom/drag.js +2 -30
  192. package/lib/module/utils/bounds/navigation/zoom/drag.js.map +1 -1
  193. package/lib/module/utils/bounds/navigation/zoom/helpers.js +4 -18
  194. package/lib/module/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  195. package/lib/typescript/animation/snap-to.d.ts.map +1 -1
  196. package/lib/typescript/components/boundary/components/boundary-target.d.ts +2 -1
  197. package/lib/typescript/components/boundary/components/boundary-target.d.ts.map +1 -1
  198. package/lib/typescript/components/boundary/create-boundary-component.d.ts.map +1 -1
  199. package/lib/typescript/components/boundary/hooks/lifecycles/use-refresh-boundary.d.ts.map +1 -1
  200. package/lib/typescript/components/boundary/hooks/use-boundary-measurement.d.ts +3 -4
  201. package/lib/typescript/components/boundary/hooks/use-boundary-measurement.d.ts.map +1 -1
  202. package/lib/typescript/components/boundary/index.d.ts +6 -9
  203. package/lib/typescript/components/boundary/index.d.ts.map +1 -1
  204. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts +1 -3
  205. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts.map +1 -1
  206. package/lib/typescript/components/boundary/portal/components/boundary-content-portal/index.d.ts.map +1 -1
  207. package/lib/typescript/components/boundary/portal/components/boundary-portal/components/host.d.ts.map +1 -1
  208. package/lib/typescript/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.d.ts.map +1 -1
  209. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts +1 -10
  210. package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts.map +1 -1
  211. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts +1 -3
  212. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts.map +1 -1
  213. package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-placeholder-styles.d.ts +2 -2
  214. package/lib/typescript/components/boundary/portal/components/boundary-portal/index.d.ts +2 -2
  215. package/lib/typescript/components/boundary/portal/components/boundary-portal/index.d.ts.map +1 -1
  216. package/lib/typescript/components/boundary/portal/components/boundary-portal/stores/host-registry.store.d.ts +0 -1
  217. package/lib/typescript/components/boundary/portal/components/boundary-portal/stores/host-registry.store.d.ts.map +1 -1
  218. package/lib/typescript/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.d.ts +1 -10
  219. package/lib/typescript/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.d.ts.map +1 -1
  220. package/lib/typescript/components/boundary/portal/utils/handoff-target.d.ts +12 -0
  221. package/lib/typescript/components/boundary/portal/utils/handoff-target.d.ts.map +1 -0
  222. package/lib/typescript/components/boundary/portal/utils/resolve-portal.d.ts +2 -3
  223. package/lib/typescript/components/boundary/portal/utils/resolve-portal.d.ts.map +1 -1
  224. package/lib/typescript/components/boundary/portal/utils/teleport-control.d.ts +0 -4
  225. package/lib/typescript/components/boundary/portal/utils/teleport-control.d.ts.map +1 -1
  226. package/lib/typescript/components/boundary/providers/boundary-root.provider.d.ts +8 -12
  227. package/lib/typescript/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
  228. package/lib/typescript/components/boundary/utils/refresh-signals.d.ts +1 -0
  229. package/lib/typescript/components/boundary/utils/refresh-signals.d.ts.map +1 -1
  230. package/lib/typescript/components/boundary/utils/resolve-boundary-target.d.ts +12 -0
  231. package/lib/typescript/components/boundary/utils/resolve-boundary-target.d.ts.map +1 -0
  232. package/lib/typescript/components/create-transition-aware-component.d.ts +5 -6
  233. package/lib/typescript/components/create-transition-aware-component.d.ts.map +1 -1
  234. package/lib/typescript/components/masked-view.d.ts.map +1 -1
  235. package/lib/typescript/components/screen-container/layers/backdrop.d.ts.map +1 -1
  236. package/lib/typescript/components/screen-container/layers/maybe-masked-navigation-container.d.ts.map +1 -1
  237. package/lib/typescript/components/screen-lifecycle/hooks/use-transition-start-controller.d.ts.map +1 -1
  238. package/lib/typescript/index.d.ts +650 -702
  239. package/lib/typescript/index.d.ts.map +1 -1
  240. package/lib/typescript/navigators/react-navigation/index.d.ts +6 -17
  241. package/lib/typescript/navigators/react-navigation/index.d.ts.map +1 -1
  242. package/lib/typescript/providers/helpers/measured-bounds-writes.d.ts.map +1 -1
  243. package/lib/typescript/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
  244. package/lib/typescript/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts.map +1 -1
  245. package/lib/typescript/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts +2 -1
  246. package/lib/typescript/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts.map +1 -1
  247. package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -1
  248. package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-release.d.ts.map +1 -1
  249. package/lib/typescript/providers/screen/gestures/types.d.ts +1 -9
  250. package/lib/typescript/providers/screen/gestures/types.d.ts.map +1 -1
  251. package/lib/typescript/providers/screen/styles/helpers/transition-visual-state.d.ts +18 -0
  252. package/lib/typescript/providers/screen/styles/helpers/transition-visual-state.d.ts.map +1 -0
  253. package/lib/typescript/providers/screen/styles/helpers/visibility-gate.d.ts +2 -2
  254. package/lib/typescript/providers/screen/styles/helpers/visibility-gate.d.ts.map +1 -1
  255. package/lib/typescript/providers/screen/styles/hooks/slot-resolvers.d.ts +4 -4
  256. package/lib/typescript/providers/screen/styles/hooks/slot-resolvers.d.ts.map +1 -1
  257. package/lib/typescript/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts.map +1 -1
  258. package/lib/typescript/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +2 -2
  259. package/lib/typescript/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  260. package/lib/typescript/stores/bounds/internals/links.d.ts +1 -1
  261. package/lib/typescript/stores/bounds/internals/links.d.ts.map +1 -1
  262. package/lib/typescript/stores/scroll.store.d.ts +7 -0
  263. package/lib/typescript/stores/scroll.store.d.ts.map +1 -1
  264. package/lib/typescript/stores/system.store.d.ts +5 -0
  265. package/lib/typescript/stores/system.store.d.ts.map +1 -1
  266. package/lib/typescript/utils/animation/animate-to-progress.d.ts +6 -1
  267. package/lib/typescript/utils/animation/animate-to-progress.d.ts.map +1 -1
  268. package/lib/typescript/utils/animation/animate.d.ts +2 -2
  269. package/lib/typescript/utils/animation/animate.d.ts.map +1 -1
  270. package/lib/typescript/utils/animation/spring/spring.d.ts +2 -2
  271. package/lib/typescript/utils/animation/spring/spring.d.ts.map +1 -1
  272. package/lib/typescript/utils/animation/spring/springUtils.d.ts +3 -0
  273. package/lib/typescript/utils/animation/spring/springUtils.d.ts.map +1 -1
  274. package/lib/typescript/utils/animation/state.d.ts +6 -0
  275. package/lib/typescript/utils/animation/state.d.ts.map +1 -1
  276. package/lib/typescript/utils/bounds/navigation/reveal/math.d.ts +9 -0
  277. package/lib/typescript/utils/bounds/navigation/reveal/math.d.ts.map +1 -1
  278. package/lib/typescript/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  279. package/lib/typescript/utils/bounds/navigation/zoom/drag.d.ts +2 -11
  280. package/lib/typescript/utils/bounds/navigation/zoom/drag.d.ts.map +1 -1
  281. package/lib/typescript/utils/bounds/navigation/zoom/helpers.d.ts +7 -4
  282. package/lib/typescript/utils/bounds/navigation/zoom/helpers.d.ts.map +1 -1
  283. package/package.json +1 -1
  284. package/src/animation/snap-to.ts +5 -0
  285. package/src/components/boundary/components/boundary-target.tsx +37 -23
  286. package/src/components/boundary/create-boundary-component.tsx +29 -3
  287. package/src/components/boundary/hooks/lifecycles/use-refresh-boundary.ts +11 -0
  288. package/src/components/boundary/hooks/use-boundary-measurement.ts +3 -9
  289. package/src/components/boundary/index.tsx +4 -8
  290. package/src/components/boundary/portal/components/boundary-content-portal/components/host.tsx +5 -1
  291. package/src/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +73 -276
  292. package/src/components/boundary/portal/components/boundary-content-portal/index.tsx +31 -12
  293. package/src/components/boundary/portal/components/boundary-portal/components/host.tsx +2 -12
  294. package/src/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.tsx +64 -62
  295. package/src/components/boundary/portal/components/boundary-portal/helpers/offset-style.ts +2 -9
  296. package/src/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +73 -187
  297. package/src/components/boundary/portal/components/boundary-portal/index.tsx +72 -12
  298. package/src/components/boundary/portal/components/boundary-portal/stores/host-registry.store.ts +0 -1
  299. package/src/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.ts +2 -39
  300. package/src/components/boundary/portal/utils/handoff-target.ts +48 -0
  301. package/src/components/boundary/portal/utils/resolve-portal.ts +26 -18
  302. package/src/components/boundary/portal/utils/teleport-control.ts +0 -12
  303. package/src/components/boundary/providers/boundary-root.provider.tsx +28 -80
  304. package/src/components/boundary/utils/refresh-signals.ts +8 -0
  305. package/src/components/boundary/utils/resolve-boundary-target.tsx +39 -0
  306. package/src/components/masked-view.tsx +20 -4
  307. package/src/components/screen-container/layers/backdrop.tsx +3 -1
  308. package/src/components/screen-container/layers/maybe-masked-navigation-container.tsx +14 -4
  309. package/src/components/screen-lifecycle/hooks/use-transition-start-controller.ts +2 -0
  310. package/src/navigators/react-navigation/index.tsx +4 -48
  311. package/src/providers/helpers/measured-bounds-writes.ts +1 -0
  312. package/src/providers/screen/gestures/gestures.provider.tsx +2 -10
  313. package/src/providers/screen/gestures/pan/behavior/pan-lifecycle.ts +1 -0
  314. package/src/providers/screen/gestures/pinch/activation/use-pinch-activation.ts +74 -3
  315. package/src/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +1 -0
  316. package/src/providers/screen/gestures/pinch/behavior/pinch-release.ts +2 -4
  317. package/src/providers/screen/gestures/types.ts +0 -14
  318. package/src/providers/screen/styles/helpers/transition-visual-state.ts +44 -0
  319. package/src/providers/screen/styles/helpers/visibility-gate.ts +17 -7
  320. package/src/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +30 -15
  321. package/src/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +14 -13
  322. package/src/stores/bounds/internals/links.ts +13 -2
  323. package/src/stores/scroll.store.ts +23 -0
  324. package/src/stores/system.store.ts +8 -0
  325. package/src/utils/animation/animate-to-progress.ts +59 -28
  326. package/src/utils/animation/animate.ts +18 -2
  327. package/src/utils/animation/spring/spring.ts +36 -1
  328. package/src/utils/animation/spring/springUtils.ts +130 -0
  329. package/src/utils/animation/state.ts +8 -0
  330. package/src/utils/bounds/navigation/reveal/math.ts +21 -5
  331. package/src/utils/bounds/navigation/zoom/build.ts +77 -23
  332. package/src/utils/bounds/navigation/zoom/drag.ts +3 -42
  333. package/src/utils/bounds/navigation/zoom/helpers.ts +9 -23
  334. package/lib/commonjs/components/boundary/hooks/use-register-target.js +0 -32
  335. package/lib/commonjs/components/boundary/hooks/use-register-target.js.map +0 -1
  336. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/portal-slot.js +0 -52
  337. package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +0 -1
  338. package/lib/commonjs/components/boundary/portal/utils/ownership.js +0 -220
  339. package/lib/commonjs/components/boundary/portal/utils/ownership.js.map +0 -1
  340. package/lib/commonjs/components/boundary/portal/utils/shallow-equal.js +0 -29
  341. package/lib/commonjs/components/boundary/portal/utils/shallow-equal.js.map +0 -1
  342. package/lib/commonjs/components/boundary/portal/utils/visible-host.js +0 -25
  343. package/lib/commonjs/components/boundary/portal/utils/visible-host.js.map +0 -1
  344. package/lib/commonjs/providers/screen/gestures/rotation/activation/use-rotation-activation.js +0 -64
  345. package/lib/commonjs/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +0 -1
  346. package/lib/commonjs/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +0 -21
  347. package/lib/commonjs/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +0 -1
  348. package/lib/commonjs/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +0 -29
  349. package/lib/commonjs/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +0 -1
  350. package/lib/commonjs/providers/screen/gestures/rotation/use-build-rotation-gesture.js +0 -38
  351. package/lib/commonjs/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +0 -1
  352. package/lib/commonjs/providers/screen/styles/helpers/opening-phase.js +0 -32
  353. package/lib/commonjs/providers/screen/styles/helpers/opening-phase.js.map +0 -1
  354. package/lib/module/components/boundary/hooks/use-register-target.js +0 -27
  355. package/lib/module/components/boundary/hooks/use-register-target.js.map +0 -1
  356. package/lib/module/components/boundary/portal/components/boundary-portal/components/portal-slot.js +0 -47
  357. package/lib/module/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +0 -1
  358. package/lib/module/components/boundary/portal/utils/ownership.js +0 -213
  359. package/lib/module/components/boundary/portal/utils/ownership.js.map +0 -1
  360. package/lib/module/components/boundary/portal/utils/shallow-equal.js +0 -24
  361. package/lib/module/components/boundary/portal/utils/shallow-equal.js.map +0 -1
  362. package/lib/module/components/boundary/portal/utils/visible-host.js +0 -20
  363. package/lib/module/components/boundary/portal/utils/visible-host.js.map +0 -1
  364. package/lib/module/providers/screen/gestures/rotation/activation/use-rotation-activation.js +0 -59
  365. package/lib/module/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +0 -1
  366. package/lib/module/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +0 -15
  367. package/lib/module/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +0 -1
  368. package/lib/module/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +0 -24
  369. package/lib/module/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +0 -1
  370. package/lib/module/providers/screen/gestures/rotation/use-build-rotation-gesture.js +0 -33
  371. package/lib/module/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +0 -1
  372. package/lib/module/providers/screen/styles/helpers/opening-phase.js +0 -26
  373. package/lib/module/providers/screen/styles/helpers/opening-phase.js.map +0 -1
  374. package/lib/typescript/components/boundary/hooks/use-register-target.d.ts +0 -10
  375. package/lib/typescript/components/boundary/hooks/use-register-target.d.ts.map +0 -1
  376. package/lib/typescript/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts +0 -13
  377. package/lib/typescript/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts.map +0 -1
  378. package/lib/typescript/components/boundary/portal/utils/ownership.d.ts +0 -34
  379. package/lib/typescript/components/boundary/portal/utils/ownership.d.ts.map +0 -1
  380. package/lib/typescript/components/boundary/portal/utils/shallow-equal.d.ts +0 -8
  381. package/lib/typescript/components/boundary/portal/utils/shallow-equal.d.ts.map +0 -1
  382. package/lib/typescript/components/boundary/portal/utils/visible-host.d.ts +0 -8
  383. package/lib/typescript/components/boundary/portal/utils/visible-host.d.ts.map +0 -1
  384. package/lib/typescript/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts +0 -15
  385. package/lib/typescript/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts.map +0 -1
  386. package/lib/typescript/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts +0 -4
  387. package/lib/typescript/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts.map +0 -1
  388. package/lib/typescript/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts +0 -5
  389. package/lib/typescript/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts.map +0 -1
  390. package/lib/typescript/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts +0 -9
  391. package/lib/typescript/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts.map +0 -1
  392. package/lib/typescript/providers/screen/styles/helpers/opening-phase.d.ts +0 -16
  393. package/lib/typescript/providers/screen/styles/helpers/opening-phase.d.ts.map +0 -1
  394. package/src/components/boundary/hooks/use-register-target.ts +0 -43
  395. package/src/components/boundary/portal/components/boundary-portal/components/portal-slot.tsx +0 -80
  396. package/src/components/boundary/portal/utils/ownership.ts +0 -319
  397. package/src/components/boundary/portal/utils/shallow-equal.ts +0 -25
  398. package/src/components/boundary/portal/utils/visible-host.ts +0 -24
  399. package/src/providers/screen/gestures/rotation/activation/use-rotation-activation.ts +0 -88
  400. package/src/providers/screen/gestures/rotation/behavior/rotation-lifecycle.ts +0 -19
  401. package/src/providers/screen/gestures/rotation/behavior/use-rotation-behavior.ts +0 -47
  402. package/src/providers/screen/gestures/rotation/use-build-rotation-gesture.ts +0 -50
  403. package/src/providers/screen/styles/helpers/opening-phase.ts +0 -25
@@ -1 +1 @@
1
- {"version":3,"names":["_scroll","require","_hostBounds","resolvePortalOffsetStyle","bounds","hostKey","placement","landingShift","hostBounds","getPortalHostBounds","boundsScrollSnapshot","scroll","hostBoundsScrollSnapshot","alignHostToBoundsScroll","hostSnapshotDeltaX","getClampedScrollAxisDelta","hostSnapshotDeltaY","adjustedHostPageX","pageX","adjustedHostPageY","pageY","transform","translateY","y","translateX","x","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/helpers/offset-style.ts"],"mappings":";;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAgBO,MAAME,wBAAwB,GAAGA,CAAC;EACxCC,MAAM;EACNC,OAAO;EACPC,SAAS;EACTC;AAC+B,CAAC,KAAiB;EACjD,SAAS;;EACT,MAAMC,UAAU,GAAG,IAAAC,+BAAmB,EAACJ,OAAO,CAAC;EAC/C,MAAMK,oBAAoB,GAAGN,MAAM,CAACO,MAAM,IAAI,IAAI;EAClD,MAAMC,wBAAwB,GAAGJ,UAAU,EAAEG,MAAM,IAAI,IAAI;;EAE3D;EACA;EACA;EACA,MAAME,uBAAuB,GAAGP,SAAS,KAAK,aAAa;EAE3D,MAAMQ,kBAAkB,GAAGD,uBAAuB,GAC/C,IAAAE,iCAAyB,EACzBL,oBAAoB,EACpBE,wBAAwB,EACxB,YACD,CAAC,GACA,CAAC;EACJ,MAAMI,kBAAkB,GAAGH,uBAAuB,GAC/C,IAAAE,iCAAyB,EACzBL,oBAAoB,EACpBE,wBAAwB,EACxB,UACD,CAAC,GACA,CAAC;;EAEJ;EACA;EACA,MAAMK,iBAAiB,GAAGT,UAAU,GACjCA,UAAU,CAACU,KAAK,GAAGJ,kBAAkB,GACrC,CAAC;EACJ,MAAMK,iBAAiB,GAAGX,UAAU,GACjCA,UAAU,CAACY,KAAK,GAAGJ,kBAAkB,GACrC,CAAC;EAEJ,OAAO;IACNK,SAAS,EAAE,CACV;MAAEC,UAAU,EAAElB,MAAM,CAACgB,KAAK,GAAGD,iBAAiB,IAAIZ,YAAY,EAAEgB,CAAC,IAAI,CAAC;IAAE,CAAC,EACzE;MAAEC,UAAU,EAAEpB,MAAM,CAACc,KAAK,GAAGD,iBAAiB,IAAIV,YAAY,EAAEkB,CAAC,IAAI,CAAC;IAAE,CAAC;EAE3E,CAAC;AACF,CAAC;AAACC,OAAA,CAAAvB,wBAAA,GAAAA,wBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_scroll","require","_hostBounds","resolvePortalOffsetStyle","bounds","hostKey","placement","hostBounds","getPortalHostBounds","boundsScrollSnapshot","scroll","hostBoundsScrollSnapshot","alignHostToBoundsScroll","hostSnapshotDeltaX","getClampedScrollAxisDelta","hostSnapshotDeltaY","adjustedHostPageX","pageX","adjustedHostPageY","pageY","transform","translateY","translateX","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/helpers/offset-style.ts"],"mappings":";;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAUO,MAAME,wBAAwB,GAAGA,CAAC;EACxCC,MAAM;EACNC,OAAO;EACPC;AAC+B,CAAC,KAAiB;EACjD,SAAS;;EACT,MAAMC,UAAU,GAAG,IAAAC,+BAAmB,EAACH,OAAO,CAAC;EAC/C,MAAMI,oBAAoB,GAAGL,MAAM,CAACM,MAAM,IAAI,IAAI;EAClD,MAAMC,wBAAwB,GAAGJ,UAAU,EAAEG,MAAM,IAAI,IAAI;;EAE3D;EACA;EACA;EACA,MAAME,uBAAuB,GAAGN,SAAS,KAAK,aAAa;EAE3D,MAAMO,kBAAkB,GAAGD,uBAAuB,GAC/C,IAAAE,iCAAyB,EACzBL,oBAAoB,EACpBE,wBAAwB,EACxB,YACD,CAAC,GACA,CAAC;EACJ,MAAMI,kBAAkB,GAAGH,uBAAuB,GAC/C,IAAAE,iCAAyB,EACzBL,oBAAoB,EACpBE,wBAAwB,EACxB,UACD,CAAC,GACA,CAAC;;EAEJ;EACA;EACA,MAAMK,iBAAiB,GAAGT,UAAU,GACjCA,UAAU,CAACU,KAAK,GAAGJ,kBAAkB,GACrC,CAAC;EACJ,MAAMK,iBAAiB,GAAGX,UAAU,GACjCA,UAAU,CAACY,KAAK,GAAGJ,kBAAkB,GACrC,CAAC;EAEJ,OAAO;IACNK,SAAS,EAAE,CACV;MAAEC,UAAU,EAAEjB,MAAM,CAACe,KAAK,GAAGD;IAAkB,CAAC,EAChD;MAAEI,UAAU,EAAElB,MAAM,CAACa,KAAK,GAAGD;IAAkB,CAAC;EAElD,CAAC;AACF,CAAC;AAACO,OAAA,CAAApB,wBAAA,GAAAA,wBAAA","ignoreList":[]}
@@ -6,158 +6,59 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useBoundaryPortalAttachment = void 0;
7
7
  var _react = require("react");
8
8
  var _reactNativeReanimated = require("react-native-reanimated");
9
- var _reactNativeWorklets = require("react-native-worklets");
10
9
  var _descriptors = require("../../../../../../providers/screen/descriptors");
11
10
  var _styles = require("../../../../../../providers/screen/styles");
11
+ var _transitionVisualState = require("../../../../../../providers/screen/styles/helpers/transition-visual-state");
12
+ var _animation = require("../../../../../../stores/animation.store");
13
+ var _linkPairs = require("../../../../../../stores/bounds/helpers/link-pairs.helpers");
12
14
  var _state = require("../../../../../../stores/bounds/internals/state");
15
+ var _system = require("../../../../../../stores/system.store");
13
16
  var _naming = require("../../../utils/naming");
14
- var _ownership = require("../../../utils/ownership");
15
- var _shallowEqual = require("../../../utils/shallow-equal");
16
17
  var _teleportControl = require("../../../utils/teleport-control");
17
- var _visibleHost = require("../../../utils/visible-host");
18
18
  var _hostName = require("../helpers/host-name");
19
19
  var _hostRegistry = require("../stores/host-registry.store");
20
20
  var _portalBoundaryHost = require("../stores/portal-boundary-host.store");
21
21
  const useBoundaryPortalAttachment = ({
22
- boundaryId,
23
- enabled
22
+ boundaryId
24
23
  }) => {
25
24
  const sourcePairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.sourcePairKey);
26
25
  const currentScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.currentScreenKey);
26
+ const nextScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.nextScreenKey);
27
+ const destinationScreenKey = nextScreenKey ?? currentScreenKey;
28
+ const destinationAnimationProgress = _system.SystemStore.getValue(destinationScreenKey, "animationProgress");
29
+ const destinationClosing = _animation.AnimationStore.getValue(destinationScreenKey, "closing");
27
30
  const {
28
31
  localStylesMaps,
29
- nextInterpolatorReady,
30
32
  slotsMap
31
33
  } = (0, _styles.useScreenSlots)();
32
- const [ownership, setOwnership] = (0, _react.useState)(null);
33
- const requestedPortalHostName = (0, _reactNativeReanimated.useSharedValue)(null);
34
- const visiblePortalHostName = (0, _reactNativeReanimated.useSharedValue)(null);
35
- const mountedPortalBoundaryHostNamesRef = (0, _react.useRef)(new Set());
36
- const escapeHostKey = (0, _hostRegistry.useActiveHostKey)(enabled ? currentScreenKey : null);
37
- const updatePortalOwnership = (0, _react.useCallback)((hostScreenKey, ownerPairKey, ownerScreenKey) => {
38
- if (hostScreenKey && ownerPairKey && ownerScreenKey) {
39
- setOwnership(current => {
40
- if (current?.hostScreenKey === hostScreenKey && current.ownerPairKey === ownerPairKey && current.ownerScreenKey === ownerScreenKey) {
41
- return current;
42
- }
43
- return {
44
- hostScreenKey,
45
- ownerPairKey,
46
- ownerScreenKey,
47
- status: "complete"
48
- };
49
- });
50
- return;
51
- }
52
- setOwnership(current => current ? null : current);
53
- }, []);
54
- const unmountOwnedPortalBoundaryHosts = (0, _react.useCallback)(() => {
55
- for (const portalHostName of mountedPortalBoundaryHostNamesRef.current) {
56
- (0, _portalBoundaryHost.unmountPortalBoundaryHostByName)(portalHostName);
57
- }
58
- mountedPortalBoundaryHostNamesRef.current.clear();
59
- }, []);
34
+ const portalHostName = (0, _reactNativeReanimated.useSharedValue)(null);
35
+ const portalHostReady = (0, _reactNativeReanimated.useSharedValue)(false);
36
+ const attachedDestination = (0, _reactNativeReanimated.useSharedValue)(null);
37
+ const escapeHostKey = (0, _hostRegistry.useActiveHostKey)(currentScreenKey);
60
38
  (0, _react.useLayoutEffect)(() => {
61
- if (!enabled || !ownership || !escapeHostKey) {
62
- requestedPortalHostName.set(null);
63
- visiblePortalHostName.set(null);
64
- unmountOwnedPortalBoundaryHosts();
39
+ if (!sourcePairKey || !escapeHostKey) {
40
+ portalHostName.set(null);
41
+ portalHostReady.set(false);
65
42
  return;
66
43
  }
67
- const portalHostName = (0, _hostName.createBoundaryPortalHostName)(escapeHostKey, boundaryId, ownership.ownerPairKey);
44
+ const nextPortalHostName = (0, _hostName.createBoundaryPortalHostName)(escapeHostKey, boundaryId, sourcePairKey);
68
45
  (0, _portalBoundaryHost.mountPortalBoundaryHost)({
69
46
  boundaryId,
70
- escapeClipping: true,
71
47
  hostKey: escapeHostKey,
72
48
  localStylesMaps,
73
- pairKey: ownership.ownerPairKey,
74
- portalHostName,
49
+ pairKey: sourcePairKey,
50
+ portalHostName: nextPortalHostName,
51
+ portalHostReady,
75
52
  screenKey: currentScreenKey,
76
53
  slotsMap
77
54
  });
78
- mountedPortalBoundaryHostNamesRef.current.add(portalHostName);
79
-
80
- // Request the new receiver immediately, but keep the currently visible
81
- // receiver until the new interpolator is ready. This avoids a no-host gap
82
- // during rapid close/open retargets.
83
- requestedPortalHostName.set(portalHostName);
84
- }, [boundaryId, currentScreenKey, enabled, escapeHostKey, localStylesMaps, ownership, requestedPortalHostName, slotsMap, unmountOwnedPortalBoundaryHosts, visiblePortalHostName]);
85
- (0, _react.useLayoutEffect)(() => {
55
+ portalHostName.set(nextPortalHostName);
86
56
  return () => {
87
- requestedPortalHostName.set(null);
88
- visiblePortalHostName.set(null);
89
- unmountOwnedPortalBoundaryHosts();
57
+ portalHostName.set(null);
58
+ portalHostReady.set(false);
59
+ (0, _portalBoundaryHost.unmountPortalBoundaryHostByName)(nextPortalHostName);
90
60
  };
91
- }, [requestedPortalHostName, unmountOwnedPortalBoundaryHosts, visiblePortalHostName]);
92
- (0, _reactNativeReanimated.useAnimatedReaction)(() => {
93
- "worklet";
94
-
95
- if (!enabled || !sourcePairKey) {
96
- return {
97
- hostScreenKey: null,
98
- ownerPairKey: sourcePairKey,
99
- ownerScreenKey: null,
100
- status: "clear"
101
- };
102
- }
103
- return (0, _ownership.resolveBoundaryPortalOwnership)({
104
- boundaryId,
105
- currentScreenKey,
106
- handoff: false,
107
- pairsState: _state.pairs.get(),
108
- sourcePairKey
109
- });
110
- }, (signal, previousSignal) => {
111
- "worklet";
112
-
113
- if ((0, _shallowEqual.shallowEqual)(previousSignal, signal)) {
114
- return;
115
- }
116
- (0, _reactNativeWorklets.scheduleOnRN)(updatePortalOwnership, signal.hostScreenKey, signal.ownerPairKey, signal.ownerScreenKey ?? undefined);
117
- });
118
- (0, _reactNativeReanimated.useAnimatedReaction)(() => {
119
- "worklet";
120
-
121
- const slot = slotsMap.get()[boundaryId];
122
- const teleport = slot?.props?.teleport;
123
- const shouldTeleport = (0, _teleportControl.shouldAttachBoundaryPortal)({
124
- enabled,
125
- teleport
126
- });
127
- const requestedName = requestedPortalHostName.get();
128
- const visibleName = visiblePortalHostName.get();
129
- const isInterpolatorReady = nextInterpolatorReady.get();
130
- const nextVisibleName = (0, _visibleHost.resolveNextVisiblePortalHostName)({
131
- isInterpolatorReady: isInterpolatorReady === 1,
132
- requestedName,
133
- shouldTeleport,
134
- visibleName
135
- });
136
- return {
137
- isInterpolatorReady,
138
- nextVisibleName,
139
- requestedName,
140
- shouldTeleport,
141
- teleport,
142
- visibleName
143
- };
144
- }, (state, previousState) => {
145
- "worklet";
146
-
147
- if ((0, _shallowEqual.shallowEqual)(previousState, state)) {
148
- return;
149
- }
150
- if (state.nextVisibleName !== state.visibleName) {
151
- visiblePortalHostName.set(state.nextVisibleName);
152
- return;
153
- }
154
- if (state.visibleName && state.visibleName === state.requestedName) {
155
- (0, _reactNativeWorklets.scheduleOnRN)(_portalBoundaryHost.dropStalePortalBoundaryHosts, {
156
- boundaryId,
157
- keepPortalHostName: state.visibleName
158
- });
159
- }
160
- });
61
+ }, [boundaryId, currentScreenKey, escapeHostKey, localStylesMaps, portalHostName, portalHostReady, sourcePairKey, slotsMap]);
161
62
  const teleportProps = (0, _reactNativeReanimated.useAnimatedProps)(() => {
162
63
  "worklet";
163
64
 
@@ -167,19 +68,33 @@ const useBoundaryPortalAttachment = ({
167
68
  teleport,
168
69
  ...slotProps
169
70
  } = slot?.props ?? {};
170
- const shouldTeleport = (0, _teleportControl.shouldAttachBoundaryPortal)({
171
- enabled,
172
- teleport
71
+ const shouldTeleport = (0, _teleportControl.isTeleportEnabled)(teleport);
72
+ const hostName = portalHostName.get();
73
+ const pair = sourcePairKey ? _state.pairs.get()[sourcePairKey] : undefined;
74
+ const linkKey = (0, _linkPairs.getLinkKeyFromTag)(boundaryId);
75
+ const link = pair?.links[linkKey];
76
+ const hasActiveLink = link?.source !== null && link !== undefined && (!link.group || pair?.groups[link.group]?.activeId === linkKey);
77
+ const hasAttachableHost = shouldTeleport && hasActiveLink && portalHostReady.get() && hostName;
78
+ if (hasAttachableHost) {
79
+ attachedDestination.set({
80
+ animationProgress: destinationAnimationProgress,
81
+ closing: destinationClosing
82
+ });
83
+ }
84
+ const attached = attachedDestination.get();
85
+ const hasAttachedCloseFinished = attached !== null && (0, _transitionVisualState.hasCloseTransitionFinished)({
86
+ animationProgress: attached.animationProgress.get(),
87
+ closing: attached.closing.get()
173
88
  });
174
- const visibleName = visiblePortalHostName.get();
89
+ const canAttach = hasAttachableHost && !hasAttachedCloseFinished;
90
+ const targetHostName = canAttach ? hostName : _naming.PORTAL_HOST_NAME_RESET_VALUE;
175
91
  return {
176
92
  ...slotProps,
177
- hostName: shouldTeleport && visibleName ? visibleName : _naming.PORTAL_HOST_NAME_RESET_VALUE
93
+ hostName: targetHostName
178
94
  };
179
95
  });
180
96
  return {
181
- teleportProps,
182
- visiblePortalHostName
97
+ teleportProps
183
98
  };
184
99
  };
185
100
  exports.useBoundaryPortalAttachment = useBoundaryPortalAttachment;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNativeReanimated","_reactNativeWorklets","_descriptors","_styles","_state","_naming","_ownership","_shallowEqual","_teleportControl","_visibleHost","_hostName","_hostRegistry","_portalBoundaryHost","useBoundaryPortalAttachment","boundaryId","enabled","sourcePairKey","useDescriptorsStore","s","derivations","currentScreenKey","localStylesMaps","nextInterpolatorReady","slotsMap","useScreenSlots","ownership","setOwnership","useState","requestedPortalHostName","useSharedValue","visiblePortalHostName","mountedPortalBoundaryHostNamesRef","useRef","Set","escapeHostKey","useActiveHostKey","updatePortalOwnership","useCallback","hostScreenKey","ownerPairKey","ownerScreenKey","current","status","unmountOwnedPortalBoundaryHosts","portalHostName","unmountPortalBoundaryHostByName","clear","useLayoutEffect","set","createBoundaryPortalHostName","mountPortalBoundaryHost","escapeClipping","hostKey","pairKey","screenKey","add","useAnimatedReaction","resolveBoundaryPortalOwnership","handoff","pairsState","pairs","get","signal","previousSignal","shallowEqual","scheduleOnRN","undefined","slot","teleport","props","shouldTeleport","shouldAttachBoundaryPortal","requestedName","visibleName","isInterpolatorReady","nextVisibleName","resolveNextVisiblePortalHostName","state","previousState","dropStalePortalBoundaryHosts","keepPortalHostName","teleportProps","useAnimatedProps","pointerEvents","_pointerEvents","slotProps","hostName","PORTAL_HOST_NAME_RESET_VALUE","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_descriptors","_styles","_transitionVisualState","_animation","_linkPairs","_state","_system","_naming","_teleportControl","_hostName","_hostRegistry","_portalBoundaryHost","useBoundaryPortalAttachment","boundaryId","sourcePairKey","useDescriptorsStore","s","derivations","currentScreenKey","nextScreenKey","destinationScreenKey","destinationAnimationProgress","SystemStore","getValue","destinationClosing","AnimationStore","localStylesMaps","slotsMap","useScreenSlots","portalHostName","useSharedValue","portalHostReady","attachedDestination","escapeHostKey","useActiveHostKey","useLayoutEffect","set","nextPortalHostName","createBoundaryPortalHostName","mountPortalBoundaryHost","hostKey","pairKey","screenKey","unmountPortalBoundaryHostByName","teleportProps","useAnimatedProps","slot","get","pointerEvents","_pointerEvents","teleport","slotProps","props","shouldTeleport","isTeleportEnabled","hostName","pair","pairs","undefined","linkKey","getLinkKeyFromTag","link","links","hasActiveLink","source","group","groups","activeId","hasAttachableHost","animationProgress","closing","attached","hasAttachedCloseFinished","hasCloseTransitionFinished","canAttach","targetHostName","PORTAL_HOST_NAME_RESET_VALUE","exports"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts"],"mappings":"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","ignoreList":[]}
@@ -5,27 +5,63 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.BoundaryPortal = void 0;
7
7
  var _react = require("react");
8
- var _portalSlot = require("./components/portal-slot");
8
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
9
+ var _logger = require("../../../../../utils/logger");
10
+ var _teleport = require("../../teleport");
9
11
  var _useBoundaryPortalAttachment = require("./hooks/use-boundary-portal-attachment");
12
+ var _usePlaceholderStyles = require("./hooks/use-placeholder-styles");
10
13
  var _jsxRuntime = require("react/jsx-runtime");
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
+ const AnimatedNativePortal = _teleport.NativePortal ? _reactNativeReanimated.default.createAnimatedComponent(_teleport.NativePortal) : null;
16
+ const EnabledNativePortal = AnimatedNativePortal;
11
17
  const BoundaryPortal = exports.BoundaryPortal = /*#__PURE__*/(0, _react.memo)(function BoundaryPortal({
12
18
  boundaryId,
13
19
  children,
14
20
  enabled,
15
21
  placeholderRef
16
22
  }) {
23
+ if (!enabled || !_teleport.isTeleportAvailable || !AnimatedNativePortal) {
24
+ return children;
25
+ }
26
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(EnabledBoundaryPortal, {
27
+ boundaryId: boundaryId,
28
+ placeholderRef: placeholderRef,
29
+ children: children
30
+ });
31
+ });
32
+ const EnabledBoundaryPortal = /*#__PURE__*/(0, _react.memo)(function EnabledBoundaryPortal({
33
+ boundaryId,
34
+ children,
35
+ placeholderRef
36
+ }) {
37
+ if (__DEV__ && !boundaryId) {
38
+ _logger.logger.warnOnce("portal:missing-id", "A boundary portal was rendered without an id; rendering inline.");
39
+ }
17
40
  const {
18
41
  teleportProps
19
42
  } = (0, _useBoundaryPortalAttachment.useBoundaryPortalAttachment)({
20
- boundaryId,
21
- enabled
43
+ boundaryId
22
44
  });
23
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_portalSlot.BoundaryPortalSlot, {
24
- id: boundaryId,
25
- enabled: enabled,
26
- animatedProps: teleportProps,
27
- placeholderRef: placeholderRef,
28
- children: children
45
+ const {
46
+ handleOnLayout,
47
+ placeholderStyle
48
+ } = (0, _usePlaceholderStyles.usePlaceholderStyles)();
49
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
50
+ ref: placeholderRef,
51
+ onLayout: ({
52
+ nativeEvent: {
53
+ layout
54
+ }
55
+ }) => (0, _reactNativeReanimated.runOnUI)(handleOnLayout)(layout),
56
+ style: placeholderStyle,
57
+ pointerEvents: _teleport.PORTAL_POINTER_EVENTS,
58
+ collapsable: false,
59
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(EnabledNativePortal, {
60
+ animatedProps: teleportProps,
61
+ name: boundaryId,
62
+ pointerEvents: _teleport.PORTAL_POINTER_EVENTS,
63
+ children: children
64
+ })
29
65
  });
30
66
  });
31
67
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_portalSlot","_useBoundaryPortalAttachment","_jsxRuntime","BoundaryPortal","exports","memo","boundaryId","children","enabled","placeholderRef","teleportProps","useBoundaryPortalAttachment","jsx","BoundaryPortalSlot","id","animatedProps"],"sourceRoot":"../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/index.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,4BAAA,GAAAF,OAAA;AAAqF,IAAAG,WAAA,GAAAH,OAAA;AAS9E,MAAMI,cAAc,GAAAC,OAAA,CAAAD,cAAA,gBAAG,IAAAE,WAAI,EAAC,SAASF,cAAcA,CAAC;EAC1DG,UAAU;EACVC,QAAQ;EACRC,OAAO;EACPC;AACoB,CAAC,EAAE;EACvB,MAAM;IAAEC;EAAc,CAAC,GAAG,IAAAC,wDAA2B,EAAC;IACrDL,UAAU;IACVE;EACD,CAAC,CAAC;EAEF,oBACC,IAAAN,WAAA,CAAAU,GAAA,EAACZ,WAAA,CAAAa,kBAAkB;IAClBC,EAAE,EAAER,UAAW;IACfE,OAAO,EAAEA,OAAQ;IACjBO,aAAa,EAAEL,aAAc;IAC7BD,cAAc,EAAEA,cAAe;IAAAF,QAAA,EAE9BA;EAAQ,CACU,CAAC;AAEvB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_interopRequireWildcard","_logger","_teleport","_useBoundaryPortalAttachment","_usePlaceholderStyles","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AnimatedNativePortal","TeleportPortal","Animated","createAnimatedComponent","EnabledNativePortal","BoundaryPortal","exports","memo","boundaryId","children","enabled","placeholderRef","isTeleportAvailable","jsx","EnabledBoundaryPortal","__DEV__","logger","warnOnce","teleportProps","useBoundaryPortalAttachment","handleOnLayout","placeholderStyle","usePlaceholderStyles","View","ref","onLayout","nativeEvent","layout","runOnUI","style","pointerEvents","PORTAL_POINTER_EVENTS","collapsable","animatedProps","name"],"sourceRoot":"../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","EMPTY_SNAPSHOT","listeners","Set","hostStacks","Map","snapshot","getActiveHostFromStack","screenKey","stack","length","index","host","fallback","hostKey","buildSnapshot","nextSnapshot","emit","listener","subscribe","add","delete","registerHost","registration","get","previousActiveHostKey","nextStack","filter","unshift","push","set","exports","unregisterHost","getActiveHostKey","useActiveHostKey","useSyncExternalStore","undefined","resetHostRegistry","clear"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/stores/host-registry.store.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","EMPTY_SNAPSHOT","listeners","Set","hostStacks","Map","snapshot","getActiveHostFromStack","screenKey","stack","length","index","host","fallback","hostKey","buildSnapshot","nextSnapshot","emit","listener","subscribe","add","delete","registerHost","registration","get","previousActiveHostKey","nextStack","filter","unshift","push","set","exports","unregisterHost","getActiveHostKey","useActiveHostKey","useSyncExternalStore","undefined","resetHostRegistry","clear"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/stores/host-registry.store.ts"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useActivePortalBoundaryHosts = exports.unmountPortalBoundaryHostByName = exports.mountPortalBoundaryHost = exports.dropStalePortalBoundaryHosts = void 0;
6
+ exports.useActivePortalBoundaryHosts = exports.unmountPortalBoundaryHostByName = exports.mountPortalBoundaryHost = void 0;
7
7
  var _react = require("react");
8
8
  const EMPTY_HOSTS = [];
9
9
  const listeners = new Set();
@@ -29,7 +29,7 @@ const emit = () => {
29
29
  }
30
30
  };
31
31
  const isSameHost = (a, b) => {
32
- return a.boundaryId === b.boundaryId && a.escapeClipping === b.escapeClipping && a.hostKey === b.hostKey && a.localStylesMaps === b.localStylesMaps && a.pairKey === b.pairKey && a.portalHostName === b.portalHostName && a.screenKey === b.screenKey && a.slotsMap === b.slotsMap;
32
+ return a.boundaryId === b.boundaryId && a.hostKey === b.hostKey && a.localStylesMaps === b.localStylesMaps && a.pairKey === b.pairKey && a.portalHostName === b.portalHostName && a.portalHostReady === b.portalHostReady && a.screenKey === b.screenKey && a.slotsMap === b.slotsMap;
33
33
  };
34
34
  const mountPortalBoundaryHost = host => {
35
35
  const previous = activeBoundaryHosts.get(host.portalHostName);
@@ -46,34 +46,7 @@ const unmountPortalBoundaryHostByName = portalHostName => {
46
46
  }
47
47
  emit();
48
48
  };
49
-
50
- /**
51
- * Post-handoff GC: drop every receiver for this boundary except the one now
52
- * visible (`keepPortalHostName`). Called once the new host is confirmed on
53
- * screen so the superseded receivers stop rendering.
54
- */
55
49
  exports.unmountPortalBoundaryHostByName = unmountPortalBoundaryHostByName;
56
- const dropStalePortalBoundaryHosts = ({
57
- boundaryId,
58
- keepPortalHostName
59
- }) => {
60
- if (!activeBoundaryHosts.has(keepPortalHostName)) {
61
- return;
62
- }
63
- let didDelete = false;
64
- for (const [hostEntryKey, host] of activeBoundaryHosts) {
65
- if (host.boundaryId !== boundaryId || host.portalHostName === keepPortalHostName) {
66
- continue;
67
- }
68
- activeBoundaryHosts.delete(hostEntryKey);
69
- didDelete = true;
70
- }
71
- if (!didDelete) {
72
- return;
73
- }
74
- emit();
75
- };
76
- exports.dropStalePortalBoundaryHosts = dropStalePortalBoundaryHosts;
77
50
  const subscribe = listener => {
78
51
  listeners.add(listener);
79
52
  return () => {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","EMPTY_HOSTS","listeners","Set","activeBoundaryHosts","Map","snapshot","hostsByScope","buildSnapshot","host","values","hosts","hostKey","push","emit","listener","isSameHost","a","b","boundaryId","escapeClipping","localStylesMaps","pairKey","portalHostName","screenKey","slotsMap","mountPortalBoundaryHost","previous","get","set","exports","unmountPortalBoundaryHostByName","delete","dropStalePortalBoundaryHosts","keepPortalHostName","has","didDelete","hostEntryKey","subscribe","add","useActivePortalBoundaryHosts","useSyncExternalStore"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","EMPTY_HOSTS","listeners","Set","activeBoundaryHosts","Map","snapshot","hostsByScope","buildSnapshot","host","values","hosts","hostKey","push","emit","listener","isSameHost","a","b","boundaryId","localStylesMaps","pairKey","portalHostName","portalHostReady","screenKey","slotsMap","mountPortalBoundaryHost","previous","get","set","exports","unmountPortalBoundaryHostByName","delete","subscribe","add","useActivePortalBoundaryHosts","useSyncExternalStore"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAoBA,MAAMC,WAAuC,GAAG,EAAE;AAElD,MAAMC,SAAS,GAAG,IAAIC,GAAG,CAAa,CAAC;AACvC,MAAMC,mBAAmB,GAAG,IAAIC,GAAG,CAAmC,CAAC;AAEvE,IAAIC,QAAwB,GAAG;EAC9BC,YAAY,EAAE,CAAC;AAChB,CAAC;AAED,MAAMC,aAAa,GAAGA,CAAA,KAAsB;EAC3C,MAAMD,YAAwD,GAAG,CAAC,CAAC;EAEnE,KAAK,MAAME,IAAI,IAAIL,mBAAmB,CAACM,MAAM,CAAC,CAAC,EAAE;IAChD,MAAMC,KAAK,GAAGJ,YAAY,CAACE,IAAI,CAACG,OAAO,CAAC,IAAI,EAAE;IAC9CD,KAAK,CAACE,IAAI,CAACJ,IAAI,CAAC;IAChBF,YAAY,CAACE,IAAI,CAACG,OAAO,CAAC,GAAGD,KAAK;EACnC;EAEA,OAAO;IACNJ;EACD,CAAC;AACF,CAAC;AAED,MAAMO,IAAI,GAAGA,CAAA,KAAM;EAClBR,QAAQ,GAAGE,aAAa,CAAC,CAAC;EAE1B,KAAK,MAAMO,QAAQ,IAAIb,SAAS,EAAE;IACjCa,QAAQ,CAAC,CAAC;EACX;AACD,CAAC;AAED,MAAMC,UAAU,GAAGA,CAClBC,CAA2B,EAC3BC,CAA2B,KACvB;EACJ,OACCD,CAAC,CAACE,UAAU,KAAKD,CAAC,CAACC,UAAU,IAC7BF,CAAC,CAACL,OAAO,KAAKM,CAAC,CAACN,OAAO,IACvBK,CAAC,CAACG,eAAe,KAAKF,CAAC,CAACE,eAAe,IACvCH,CAAC,CAACI,OAAO,KAAKH,CAAC,CAACG,OAAO,IACvBJ,CAAC,CAACK,cAAc,KAAKJ,CAAC,CAACI,cAAc,IACrCL,CAAC,CAACM,eAAe,KAAKL,CAAC,CAACK,eAAe,IACvCN,CAAC,CAACO,SAAS,KAAKN,CAAC,CAACM,SAAS,IAC3BP,CAAC,CAACQ,QAAQ,KAAKP,CAAC,CAACO,QAAQ;AAE3B,CAAC;AAEM,MAAMC,uBAAuB,GAAIjB,IAA8B,IAAK;EAC1E,MAAMkB,QAAQ,GAAGvB,mBAAmB,CAACwB,GAAG,CAACnB,IAAI,CAACa,cAAc,CAAC;EAC7D,IAAIK,QAAQ,IAAIX,UAAU,CAACW,QAAQ,EAAElB,IAAI,CAAC,EAAE;IAC3C;EACD;EAEAL,mBAAmB,CAACyB,GAAG,CAACpB,IAAI,CAACa,cAAc,EAAEb,IAAI,CAAC;EAClDK,IAAI,CAAC,CAAC;AACP,CAAC;AAACgB,OAAA,CAAAJ,uBAAA,GAAAA,uBAAA;AAEK,MAAMK,+BAA+B,GAC3CT,cAAyC,IACrC;EACJ,IAAI,CAACA,cAAc,IAAI,CAAClB,mBAAmB,CAAC4B,MAAM,CAACV,cAAc,CAAC,EAAE;IACnE;EACD;EAEAR,IAAI,CAAC,CAAC;AACP,CAAC;AAACgB,OAAA,CAAAC,+BAAA,GAAAA,+BAAA;AAEF,MAAME,SAAS,GAAIlB,QAAoB,IAAK;EAC3Cb,SAAS,CAACgC,GAAG,CAACnB,QAAQ,CAAC;EAEvB,OAAO,MAAM;IACZb,SAAS,CAAC8B,MAAM,CAACjB,QAAQ,CAAC;EAC3B,CAAC;AACF,CAAC;AAEM,MAAMoB,4BAA4B,GAAIvB,OAAe,IAAK;EAChE,OAAO,IAAAwB,2BAAoB,EAC1BH,SAAS,EACT,MAAM3B,QAAQ,CAACC,YAAY,CAACK,OAAO,CAAC,IAAIX,WAAW,EACnD,MAAMA,WACP,CAAC;AACF,CAAC;AAAC6B,OAAA,CAAAK,4BAAA,GAAAA,4BAAA","ignoreList":[]}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.resolveEnteringHandoffTarget = void 0;
7
+ var _linkPairs = require("../../../../stores/bounds/helpers/link-pairs.helpers");
8
+ /** Resolve only the immediate A -> B entering handoff. */
9
+ const resolveEnteringHandoffTarget = ({
10
+ animationProgress,
11
+ boundaryId,
12
+ currentScreenKey,
13
+ pairsState,
14
+ sourcePairKey
15
+ }) => {
16
+ "worklet";
17
+
18
+ if (!sourcePairKey || animationProgress <= 0) {
19
+ return null;
20
+ }
21
+ const pair = pairsState[sourcePairKey];
22
+ const linkKey = (0, _linkPairs.getLinkKeyFromTag)(boundaryId);
23
+ const link = pair?.links[linkKey];
24
+ if (link?.status !== "complete" || link.source.screenKey !== currentScreenKey || !link.source.handoff || !link.destination.handoff) {
25
+ return null;
26
+ }
27
+ if (link.group && pair.groups[link.group]?.activeId !== linkKey) {
28
+ return null;
29
+ }
30
+ return link.destination.screenKey;
31
+ };
32
+ exports.resolveEnteringHandoffTarget = resolveEnteringHandoffTarget;
33
+ //# sourceMappingURL=handoff-target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_linkPairs","require","resolveEnteringHandoffTarget","animationProgress","boundaryId","currentScreenKey","pairsState","sourcePairKey","pair","linkKey","getLinkKeyFromTag","link","links","status","source","screenKey","handoff","destination","group","groups","activeId","exports"],"sourceRoot":"../../../../../../src","sources":["components/boundary/portal/utils/handoff-target.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAeA;AACO,MAAMC,4BAA4B,GAAGA,CAAC;EAC5CC,iBAAiB;EACjBC,UAAU;EACVC,gBAAgB;EAChBC,UAAU;EACVC;AACmC,CAAC,KAAuB;EAC3D,SAAS;;EAET,IAAI,CAACA,aAAa,IAAIJ,iBAAiB,IAAI,CAAC,EAAE;IAC7C,OAAO,IAAI;EACZ;EAEA,MAAMK,IAAI,GAAGF,UAAU,CAACC,aAAa,CAAC;EACtC,MAAME,OAAO,GAAG,IAAAC,4BAAiB,EAACN,UAAU,CAAC;EAC7C,MAAMO,IAAI,GAAGH,IAAI,EAAEI,KAAK,CAACH,OAAO,CAAC;EAEjC,IACCE,IAAI,EAAEE,MAAM,KAAK,UAAU,IAC3BF,IAAI,CAACG,MAAM,CAACC,SAAS,KAAKV,gBAAgB,IAC1C,CAACM,IAAI,CAACG,MAAM,CAACE,OAAO,IACpB,CAACL,IAAI,CAACM,WAAW,CAACD,OAAO,EACxB;IACD,OAAO,IAAI;EACZ;EAEA,IAAIL,IAAI,CAACO,KAAK,IAAIV,IAAI,CAACW,MAAM,CAACR,IAAI,CAACO,KAAK,CAAC,EAAEE,QAAQ,KAAKX,OAAO,EAAE;IAChE,OAAO,IAAI;EACZ;EAEA,OAAOE,IAAI,CAACM,WAAW,CAACF,SAAS;AAClC,CAAC;AAACM,OAAA,CAAAnB,4BAAA,GAAAA,4BAAA","ignoreList":[]}
@@ -6,6 +6,22 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.resolveBoundaryPortal = void 0;
7
7
  var _logger = require("../../../../utils/logger");
8
8
  var _teleport = require("../teleport");
9
+ const DISABLED_RUNTIME = {
10
+ handoff: false,
11
+ escapeClipping: false
12
+ };
13
+ const HANDOFF_RUNTIME = {
14
+ handoff: true,
15
+ escapeClipping: false
16
+ };
17
+ const ESCAPE_CLIPPING_RUNTIME = {
18
+ handoff: false,
19
+ escapeClipping: true
20
+ };
21
+ const HANDOFF_ESCAPE_CLIPPING_RUNTIME = {
22
+ handoff: true,
23
+ escapeClipping: true
24
+ };
9
25
  const resolveBoundaryPortal = ({
10
26
  handoff,
11
27
  escapeClipping
@@ -14,25 +30,13 @@ const resolveBoundaryPortal = ({
14
30
  const resolvedEscapeClipping = escapeClipping ?? false;
15
31
  const enabled = resolvedHandoff || resolvedEscapeClipping;
16
32
  if (!enabled) {
17
- return {
18
- handoff: false,
19
- escapeClipping: false,
20
- enabled: false
21
- };
33
+ return DISABLED_RUNTIME;
22
34
  }
23
35
  if (!_teleport.isTeleportAvailable) {
24
36
  _logger.logger.warnOnce("boundary:teleport-missing", "react-native-teleport is not installed; handoff and escapeClipping boundaries will render inline.");
25
- return {
26
- handoff: false,
27
- escapeClipping: false,
28
- enabled: false
29
- };
37
+ return DISABLED_RUNTIME;
30
38
  }
31
- return {
32
- handoff: resolvedHandoff,
33
- escapeClipping: resolvedEscapeClipping,
34
- enabled
35
- };
39
+ return resolvedHandoff ? resolvedEscapeClipping ? HANDOFF_ESCAPE_CLIPPING_RUNTIME : HANDOFF_RUNTIME : ESCAPE_CLIPPING_RUNTIME;
36
40
  };
37
41
  exports.resolveBoundaryPortal = resolveBoundaryPortal;
38
42
  //# sourceMappingURL=resolve-portal.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_logger","require","_teleport","resolveBoundaryPortal","handoff","escapeClipping","resolvedHandoff","resolvedEscapeClipping","enabled","isTeleportAvailable","logger","warnOnce","exports"],"sourceRoot":"../../../../../../src","sources":["components/boundary/portal/utils/resolve-portal.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAaO,MAAME,qBAAqB,GAAGA,CAAC;EACrCC,OAAO;EACPC;AAC4B,CAAC,KAA4B;EACzD,MAAMC,eAAe,GAAGF,OAAO,IAAI,KAAK;EACxC,MAAMG,sBAAsB,GAAGF,cAAc,IAAI,KAAK;EAEtD,MAAMG,OAAO,GAAGF,eAAe,IAAIC,sBAAsB;EAEzD,IAAI,CAACC,OAAO,EAAE;IACb,OAAO;MACNJ,OAAO,EAAE,KAAK;MACdC,cAAc,EAAE,KAAK;MACrBG,OAAO,EAAE;IACV,CAAC;EACF;EAEA,IAAI,CAACC,6BAAmB,EAAE;IACzBC,cAAM,CAACC,QAAQ,CACd,2BAA2B,EAC3B,mGACD,CAAC;IAED,OAAO;MACNP,OAAO,EAAE,KAAK;MACdC,cAAc,EAAE,KAAK;MACrBG,OAAO,EAAE;IACV,CAAC;EACF;EAEA,OAAO;IACNJ,OAAO,EAAEE,eAAe;IACxBD,cAAc,EAAEE,sBAAsB;IACtCC;EACD,CAAC;AACF,CAAC;AAACI,OAAA,CAAAT,qBAAA,GAAAA,qBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_logger","require","_teleport","DISABLED_RUNTIME","handoff","escapeClipping","HANDOFF_RUNTIME","ESCAPE_CLIPPING_RUNTIME","HANDOFF_ESCAPE_CLIPPING_RUNTIME","resolveBoundaryPortal","resolvedHandoff","resolvedEscapeClipping","enabled","isTeleportAvailable","logger","warnOnce","exports"],"sourceRoot":"../../../../../../src","sources":["components/boundary/portal/utils/resolve-portal.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAYA,MAAME,gBAAuC,GAAG;EAC/CC,OAAO,EAAE,KAAK;EACdC,cAAc,EAAE;AACjB,CAAC;AACD,MAAMC,eAAsC,GAAG;EAC9CF,OAAO,EAAE,IAAI;EACbC,cAAc,EAAE;AACjB,CAAC;AACD,MAAME,uBAA8C,GAAG;EACtDH,OAAO,EAAE,KAAK;EACdC,cAAc,EAAE;AACjB,CAAC;AACD,MAAMG,+BAAsD,GAAG;EAC9DJ,OAAO,EAAE,IAAI;EACbC,cAAc,EAAE;AACjB,CAAC;AAEM,MAAMI,qBAAqB,GAAGA,CAAC;EACrCL,OAAO;EACPC;AAC4B,CAAC,KAA4B;EACzD,MAAMK,eAAe,GAAGN,OAAO,IAAI,KAAK;EACxC,MAAMO,sBAAsB,GAAGN,cAAc,IAAI,KAAK;EAEtD,MAAMO,OAAO,GAAGF,eAAe,IAAIC,sBAAsB;EAEzD,IAAI,CAACC,OAAO,EAAE;IACb,OAAOT,gBAAgB;EACxB;EAEA,IAAI,CAACU,6BAAmB,EAAE;IACzBC,cAAM,CAACC,QAAQ,CACd,2BAA2B,EAC3B,mGACD,CAAC;IAED,OAAOZ,gBAAgB;EACxB;EAEA,OAAOO,eAAe,GACnBC,sBAAsB,GACrBH,+BAA+B,GAC/BF,eAAe,GAChBC,uBAAuB;AAC3B,CAAC;AAACS,OAAA,CAAAP,qBAAA,GAAAA,qBAAA","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.shouldAttachBoundaryPortal = exports.isTeleportEnabled = void 0;
6
+ exports.isTeleportEnabled = void 0;
7
7
  const isTeleportEnabled = teleport => {
8
8
  "worklet";
9
9
 
@@ -13,13 +13,4 @@ const isTeleportEnabled = teleport => {
13
13
  return teleport?.enabled !== false;
14
14
  };
15
15
  exports.isTeleportEnabled = isTeleportEnabled;
16
- const shouldAttachBoundaryPortal = ({
17
- enabled,
18
- teleport
19
- }) => {
20
- "worklet";
21
-
22
- return enabled && isTeleportEnabled(teleport);
23
- };
24
- exports.shouldAttachBoundaryPortal = shouldAttachBoundaryPortal;
25
16
  //# sourceMappingURL=teleport-control.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["isTeleportEnabled","teleport","enabled","exports","shouldAttachBoundaryPortal"],"sourceRoot":"../../../../../../src","sources":["components/boundary/portal/utils/teleport-control.ts"],"mappings":";;;;;;AAEO,MAAMA,iBAAiB,GAC7BC,QAA6C,IACzC;EACJ,SAAS;;EAET,IAAI,OAAOA,QAAQ,KAAK,SAAS,EAAE;IAClC,OAAOA,QAAQ;EAChB;EAEA,OAAOA,QAAQ,EAAEC,OAAO,KAAK,KAAK;AACnC,CAAC;AAACC,OAAA,CAAAH,iBAAA,GAAAA,iBAAA;AAEK,MAAMI,0BAA0B,GAAGA,CAAC;EAC1CF,OAAO;EACPD;AAID,CAAC,KAAK;EACL,SAAS;;EAET,OAAOC,OAAO,IAAIF,iBAAiB,CAACC,QAAQ,CAAC;AAC9C,CAAC;AAACE,OAAA,CAAAC,0BAAA,GAAAA,0BAAA","ignoreList":[]}
1
+ {"version":3,"names":["isTeleportEnabled","teleport","enabled","exports"],"sourceRoot":"../../../../../../src","sources":["components/boundary/portal/utils/teleport-control.ts"],"mappings":";;;;;;AAEO,MAAMA,iBAAiB,GAC7BC,QAA6C,IACzC;EACJ,SAAS;;EAET,IAAI,OAAOA,QAAQ,KAAK,SAAS,EAAE;IAClC,OAAOA,QAAQ;EAChB;EAEA,OAAOA,QAAQ,EAAEC,OAAO,KAAK,KAAK;AACnC,CAAC;AAACC,OAAA,CAAAH,iBAAA,GAAAA,iBAAA","ignoreList":[]}