react-native-screen-transitions 3.9.0-beta.3 → 3.10.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 (420) hide show
  1. package/lib/commonjs/shared/animation/snap-to.js +2 -0
  2. package/lib/commonjs/shared/animation/snap-to.js.map +1 -1
  3. package/lib/commonjs/shared/components/boundary/components/boundary-target.js +19 -20
  4. package/lib/commonjs/shared/components/boundary/components/boundary-target.js.map +1 -1
  5. package/lib/commonjs/shared/components/boundary/create-boundary-component.js +16 -2
  6. package/lib/commonjs/shared/components/boundary/create-boundary-component.js.map +1 -1
  7. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -0
  8. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
  9. package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js +1 -3
  10. package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
  11. package/lib/commonjs/shared/components/boundary/index.js +4 -3
  12. package/lib/commonjs/shared/components/boundary/index.js.map +1 -1
  13. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +47 -187
  14. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  15. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/index.js +21 -13
  16. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
  17. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/host.js +1 -12
  18. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  19. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +42 -35
  20. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
  21. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +3 -4
  22. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -1
  23. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +46 -130
  24. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  25. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/index.js +45 -9
  26. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
  27. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -1
  28. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +2 -29
  29. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -1
  30. package/lib/commonjs/shared/components/boundary/portal/utils/handoff-target.js +33 -0
  31. package/lib/commonjs/shared/components/boundary/portal/utils/handoff-target.js.map +1 -0
  32. package/lib/commonjs/shared/components/boundary/portal/utils/resolve-portal.js +19 -15
  33. package/lib/commonjs/shared/components/boundary/portal/utils/resolve-portal.js.map +1 -1
  34. package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js +1 -10
  35. package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js.map +1 -1
  36. package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js +18 -36
  37. package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
  38. package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js +7 -0
  39. package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js.map +1 -1
  40. package/lib/commonjs/shared/components/boundary/utils/resolve-boundary-target.js +29 -0
  41. package/lib/commonjs/shared/components/boundary/utils/resolve-boundary-target.js.map +1 -0
  42. package/lib/commonjs/shared/components/masked-view.js +9 -1
  43. package/lib/commonjs/shared/components/masked-view.js.map +1 -1
  44. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js +3 -1
  45. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
  46. package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js +9 -1
  47. package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  48. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js +2 -0
  49. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  50. package/lib/commonjs/shared/configs/index.js +2 -1
  51. package/lib/commonjs/shared/configs/index.js.map +1 -1
  52. package/lib/commonjs/shared/configs/specs.js +23 -1
  53. package/lib/commonjs/shared/configs/specs.js.map +1 -1
  54. package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js +4 -1
  55. package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
  56. package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js +2 -8
  57. package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
  58. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +1 -0
  59. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  60. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +37 -3
  61. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  62. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +1 -0
  63. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  64. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js +3 -2
  65. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
  66. package/lib/commonjs/shared/providers/screen/gestures/types.js.map +1 -1
  67. package/lib/commonjs/shared/providers/screen/styles/helpers/transition-visual-state.js +42 -0
  68. package/lib/commonjs/shared/providers/screen/styles/helpers/transition-visual-state.js.map +1 -0
  69. package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js +11 -5
  70. package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  71. package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +23 -10
  72. package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  73. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +10 -8
  74. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  75. package/lib/commonjs/shared/stores/bounds/internals/links.js +4 -4
  76. package/lib/commonjs/shared/stores/bounds/internals/links.js.map +1 -1
  77. package/lib/commonjs/shared/stores/scroll.store.js +20 -2
  78. package/lib/commonjs/shared/stores/scroll.store.js.map +1 -1
  79. package/lib/commonjs/shared/stores/system.store.js +2 -0
  80. package/lib/commonjs/shared/stores/system.store.js.map +1 -1
  81. package/lib/commonjs/shared/utils/animation/animate-to-progress.js +23 -1
  82. package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
  83. package/lib/commonjs/shared/utils/animation/animate.js +14 -2
  84. package/lib/commonjs/shared/utils/animation/animate.js.map +1 -1
  85. package/lib/commonjs/shared/utils/animation/spring/spring.js +22 -2
  86. package/lib/commonjs/shared/utils/animation/spring/spring.js.map +1 -1
  87. package/lib/commonjs/shared/utils/animation/spring/springUtils.js +96 -0
  88. package/lib/commonjs/shared/utils/animation/spring/springUtils.js.map +1 -1
  89. package/lib/commonjs/shared/utils/animation/state.js +4 -0
  90. package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js +20 -6
  91. package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
  92. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +51 -20
  93. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  94. package/lib/commonjs/shared/utils/bounds/navigation/zoom/config.js +4 -3
  95. package/lib/commonjs/shared/utils/bounds/navigation/zoom/config.js.map +1 -1
  96. package/lib/commonjs/shared/utils/bounds/navigation/zoom/drag.js +2 -31
  97. package/lib/commonjs/shared/utils/bounds/navigation/zoom/drag.js.map +1 -1
  98. package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js +2 -13
  99. package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  100. package/lib/commonjs/shared/utils/bounds/navigation/zoom/mask.js +3 -2
  101. package/lib/commonjs/shared/utils/bounds/navigation/zoom/mask.js.map +1 -1
  102. package/lib/commonjs/shared/utils/bounds/navigation/zoom/targets.js +36 -1
  103. package/lib/commonjs/shared/utils/bounds/navigation/zoom/targets.js.map +1 -1
  104. package/lib/module/shared/animation/snap-to.js +2 -0
  105. package/lib/module/shared/animation/snap-to.js.map +1 -1
  106. package/lib/module/shared/components/boundary/components/boundary-target.js +19 -20
  107. package/lib/module/shared/components/boundary/components/boundary-target.js.map +1 -1
  108. package/lib/module/shared/components/boundary/create-boundary-component.js +17 -3
  109. package/lib/module/shared/components/boundary/create-boundary-component.js.map +1 -1
  110. package/lib/module/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -0
  111. package/lib/module/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
  112. package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js +1 -3
  113. package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
  114. package/lib/module/shared/components/boundary/index.js +3 -2
  115. package/lib/module/shared/components/boundary/index.js.map +1 -1
  116. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +49 -189
  117. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  118. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/index.js +21 -13
  119. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
  120. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/host.js +2 -13
  121. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  122. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +45 -38
  123. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
  124. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +3 -4
  125. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -1
  126. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +50 -134
  127. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  128. package/lib/module/shared/components/boundary/portal/components/boundary-portal/index.js +44 -9
  129. package/lib/module/shared/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
  130. package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -1
  131. package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +1 -27
  132. package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -1
  133. package/lib/module/shared/components/boundary/portal/utils/handoff-target.js +28 -0
  134. package/lib/module/shared/components/boundary/portal/utils/handoff-target.js.map +1 -0
  135. package/lib/module/shared/components/boundary/portal/utils/resolve-portal.js +19 -15
  136. package/lib/module/shared/components/boundary/portal/utils/resolve-portal.js.map +1 -1
  137. package/lib/module/shared/components/boundary/portal/utils/teleport-control.js +0 -8
  138. package/lib/module/shared/components/boundary/portal/utils/teleport-control.js.map +1 -1
  139. package/lib/module/shared/components/boundary/providers/boundary-root.provider.js +19 -37
  140. package/lib/module/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
  141. package/lib/module/shared/components/boundary/utils/refresh-signals.js +7 -0
  142. package/lib/module/shared/components/boundary/utils/refresh-signals.js.map +1 -1
  143. package/lib/module/shared/components/boundary/utils/resolve-boundary-target.js +24 -0
  144. package/lib/module/shared/components/boundary/utils/resolve-boundary-target.js.map +1 -0
  145. package/lib/module/shared/components/masked-view.js +10 -2
  146. package/lib/module/shared/components/masked-view.js.map +1 -1
  147. package/lib/module/shared/components/screen-container/layers/backdrop.js +3 -1
  148. package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
  149. package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js +10 -2
  150. package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  151. package/lib/module/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js +2 -0
  152. package/lib/module/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  153. package/lib/module/shared/configs/index.js +3 -2
  154. package/lib/module/shared/configs/index.js.map +1 -1
  155. package/lib/module/shared/configs/specs.js +22 -0
  156. package/lib/module/shared/configs/specs.js.map +1 -1
  157. package/lib/module/shared/providers/helpers/measured-bounds-writes.js +4 -1
  158. package/lib/module/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
  159. package/lib/module/shared/providers/screen/gestures/gestures.provider.js +2 -8
  160. package/lib/module/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
  161. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +1 -0
  162. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  163. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +35 -2
  164. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  165. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +1 -0
  166. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  167. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js +3 -2
  168. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
  169. package/lib/module/shared/providers/screen/gestures/types.js.map +1 -1
  170. package/lib/module/shared/providers/screen/styles/helpers/transition-visual-state.js +35 -0
  171. package/lib/module/shared/providers/screen/styles/helpers/transition-visual-state.js.map +1 -0
  172. package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js +11 -5
  173. package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  174. package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +23 -10
  175. package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  176. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +10 -8
  177. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  178. package/lib/module/shared/stores/bounds/internals/links.js +4 -4
  179. package/lib/module/shared/stores/bounds/internals/links.js.map +1 -1
  180. package/lib/module/shared/stores/scroll.store.js +17 -0
  181. package/lib/module/shared/stores/scroll.store.js.map +1 -1
  182. package/lib/module/shared/stores/system.store.js +2 -0
  183. package/lib/module/shared/stores/system.store.js.map +1 -1
  184. package/lib/module/shared/utils/animation/animate-to-progress.js +21 -0
  185. package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
  186. package/lib/module/shared/utils/animation/animate.js +14 -2
  187. package/lib/module/shared/utils/animation/animate.js.map +1 -1
  188. package/lib/module/shared/utils/animation/spring/spring.js +23 -3
  189. package/lib/module/shared/utils/animation/spring/spring.js.map +1 -1
  190. package/lib/module/shared/utils/animation/spring/springUtils.js +95 -0
  191. package/lib/module/shared/utils/animation/spring/springUtils.js.map +1 -1
  192. package/lib/module/shared/utils/animation/state.js +2 -0
  193. package/lib/module/shared/utils/bounds/navigation/reveal/math.js +19 -6
  194. package/lib/module/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
  195. package/lib/module/shared/utils/bounds/navigation/zoom/build.js +54 -23
  196. package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  197. package/lib/module/shared/utils/bounds/navigation/zoom/config.js +4 -3
  198. package/lib/module/shared/utils/bounds/navigation/zoom/config.js.map +1 -1
  199. package/lib/module/shared/utils/bounds/navigation/zoom/drag.js +2 -30
  200. package/lib/module/shared/utils/bounds/navigation/zoom/drag.js.map +1 -1
  201. package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js +3 -14
  202. package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  203. package/lib/module/shared/utils/bounds/navigation/zoom/mask.js +3 -2
  204. package/lib/module/shared/utils/bounds/navigation/zoom/mask.js.map +1 -1
  205. package/lib/module/shared/utils/bounds/navigation/zoom/targets.js +35 -1
  206. package/lib/module/shared/utils/bounds/navigation/zoom/targets.js.map +1 -1
  207. package/lib/typescript/shared/animation/snap-to.d.ts.map +1 -1
  208. package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts +2 -1
  209. package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts.map +1 -1
  210. package/lib/typescript/shared/components/boundary/create-boundary-component.d.ts.map +1 -1
  211. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.d.ts.map +1 -1
  212. package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts +3 -4
  213. package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts.map +1 -1
  214. package/lib/typescript/shared/components/boundary/index.d.ts +6 -9
  215. package/lib/typescript/shared/components/boundary/index.d.ts.map +1 -1
  216. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts +1 -3
  217. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts.map +1 -1
  218. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/index.d.ts.map +1 -1
  219. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/host.d.ts.map +1 -1
  220. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.d.ts.map +1 -1
  221. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts +1 -10
  222. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts.map +1 -1
  223. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts +1 -3
  224. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts.map +1 -1
  225. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/index.d.ts +2 -2
  226. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/index.d.ts.map +1 -1
  227. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.d.ts +0 -1
  228. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.d.ts.map +1 -1
  229. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.d.ts +1 -10
  230. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.d.ts.map +1 -1
  231. package/lib/typescript/shared/components/boundary/portal/utils/handoff-target.d.ts +12 -0
  232. package/lib/typescript/shared/components/boundary/portal/utils/handoff-target.d.ts.map +1 -0
  233. package/lib/typescript/shared/components/boundary/portal/utils/resolve-portal.d.ts +2 -3
  234. package/lib/typescript/shared/components/boundary/portal/utils/resolve-portal.d.ts.map +1 -1
  235. package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts +0 -4
  236. package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts.map +1 -1
  237. package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts +8 -12
  238. package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
  239. package/lib/typescript/shared/components/boundary/utils/refresh-signals.d.ts +1 -0
  240. package/lib/typescript/shared/components/boundary/utils/refresh-signals.d.ts.map +1 -1
  241. package/lib/typescript/shared/components/boundary/utils/resolve-boundary-target.d.ts +12 -0
  242. package/lib/typescript/shared/components/boundary/utils/resolve-boundary-target.d.ts.map +1 -0
  243. package/lib/typescript/shared/components/masked-view.d.ts.map +1 -1
  244. package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts.map +1 -1
  245. package/lib/typescript/shared/components/screen-container/layers/maybe-masked-navigation-container.d.ts.map +1 -1
  246. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-transition-start-controller.d.ts.map +1 -1
  247. package/lib/typescript/shared/configs/index.d.ts +16 -0
  248. package/lib/typescript/shared/configs/index.d.ts.map +1 -1
  249. package/lib/typescript/shared/configs/specs.d.ts +19 -0
  250. package/lib/typescript/shared/configs/specs.d.ts.map +1 -1
  251. package/lib/typescript/shared/index.d.ts +16 -0
  252. package/lib/typescript/shared/index.d.ts.map +1 -1
  253. package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts.map +1 -1
  254. package/lib/typescript/shared/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
  255. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts.map +1 -1
  256. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts +2 -1
  257. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts.map +1 -1
  258. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -1
  259. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-release.d.ts.map +1 -1
  260. package/lib/typescript/shared/providers/screen/gestures/types.d.ts +1 -9
  261. package/lib/typescript/shared/providers/screen/gestures/types.d.ts.map +1 -1
  262. package/lib/typescript/shared/providers/screen/styles/helpers/transition-visual-state.d.ts +18 -0
  263. package/lib/typescript/shared/providers/screen/styles/helpers/transition-visual-state.d.ts.map +1 -0
  264. package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts +2 -2
  265. package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts.map +1 -1
  266. package/lib/typescript/shared/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts.map +1 -1
  267. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  268. package/lib/typescript/shared/stores/bounds/internals/links.d.ts +1 -1
  269. package/lib/typescript/shared/stores/bounds/internals/links.d.ts.map +1 -1
  270. package/lib/typescript/shared/stores/scroll.store.d.ts +7 -0
  271. package/lib/typescript/shared/stores/scroll.store.d.ts.map +1 -1
  272. package/lib/typescript/shared/stores/system.store.d.ts +5 -0
  273. package/lib/typescript/shared/stores/system.store.d.ts.map +1 -1
  274. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts +6 -1
  275. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
  276. package/lib/typescript/shared/utils/animation/animate.d.ts +2 -2
  277. package/lib/typescript/shared/utils/animation/animate.d.ts.map +1 -1
  278. package/lib/typescript/shared/utils/animation/spring/spring.d.ts +2 -2
  279. package/lib/typescript/shared/utils/animation/spring/spring.d.ts.map +1 -1
  280. package/lib/typescript/shared/utils/animation/spring/springUtils.d.ts +3 -0
  281. package/lib/typescript/shared/utils/animation/spring/springUtils.d.ts.map +1 -1
  282. package/lib/typescript/shared/utils/animation/state.d.ts +6 -0
  283. package/lib/typescript/shared/utils/animation/state.d.ts.map +1 -1
  284. package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts +12 -1
  285. package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts.map +1 -1
  286. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  287. package/lib/typescript/shared/utils/bounds/navigation/zoom/config.d.ts +2 -2
  288. package/lib/typescript/shared/utils/bounds/navigation/zoom/config.d.ts.map +1 -1
  289. package/lib/typescript/shared/utils/bounds/navigation/zoom/drag.d.ts +2 -11
  290. package/lib/typescript/shared/utils/bounds/navigation/zoom/drag.d.ts.map +1 -1
  291. package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts +7 -2
  292. package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts.map +1 -1
  293. package/lib/typescript/shared/utils/bounds/navigation/zoom/mask.d.ts +3 -1
  294. package/lib/typescript/shared/utils/bounds/navigation/zoom/mask.d.ts.map +1 -1
  295. package/lib/typescript/shared/utils/bounds/navigation/zoom/targets.d.ts +6 -0
  296. package/lib/typescript/shared/utils/bounds/navigation/zoom/targets.d.ts.map +1 -1
  297. package/package.json +2 -2
  298. package/src/shared/animation/snap-to.ts +5 -0
  299. package/src/shared/components/boundary/components/boundary-target.tsx +37 -23
  300. package/src/shared/components/boundary/create-boundary-component.tsx +29 -3
  301. package/src/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.ts +11 -0
  302. package/src/shared/components/boundary/hooks/use-boundary-measurement.ts +3 -9
  303. package/src/shared/components/boundary/index.tsx +4 -8
  304. package/src/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +73 -275
  305. package/src/shared/components/boundary/portal/components/boundary-content-portal/index.tsx +31 -12
  306. package/src/shared/components/boundary/portal/components/boundary-portal/components/host.tsx +2 -12
  307. package/src/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.tsx +66 -64
  308. package/src/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.ts +2 -9
  309. package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +73 -186
  310. package/src/shared/components/boundary/portal/components/boundary-portal/index.tsx +72 -12
  311. package/src/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.ts +0 -1
  312. package/src/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.ts +2 -39
  313. package/src/shared/components/boundary/portal/utils/handoff-target.ts +48 -0
  314. package/src/shared/components/boundary/portal/utils/resolve-portal.ts +26 -18
  315. package/src/shared/components/boundary/portal/utils/teleport-control.ts +0 -12
  316. package/src/shared/components/boundary/providers/boundary-root.provider.tsx +28 -80
  317. package/src/shared/components/boundary/utils/refresh-signals.ts +8 -0
  318. package/src/shared/components/boundary/utils/resolve-boundary-target.tsx +39 -0
  319. package/src/shared/components/masked-view.tsx +20 -4
  320. package/src/shared/components/screen-container/layers/backdrop.tsx +3 -1
  321. package/src/shared/components/screen-container/layers/maybe-masked-navigation-container.tsx +14 -4
  322. package/src/shared/components/screen-lifecycle/hooks/use-transition-start-controller.ts +2 -0
  323. package/src/shared/configs/index.ts +2 -1
  324. package/src/shared/configs/specs.ts +23 -0
  325. package/src/shared/providers/helpers/measured-bounds-writes.ts +1 -0
  326. package/src/shared/providers/screen/gestures/gestures.provider.tsx +2 -10
  327. package/src/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.ts +1 -0
  328. package/src/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.ts +74 -3
  329. package/src/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +1 -0
  330. package/src/shared/providers/screen/gestures/pinch/behavior/pinch-release.ts +2 -4
  331. package/src/shared/providers/screen/gestures/types.ts +0 -14
  332. package/src/shared/providers/screen/styles/helpers/transition-visual-state.ts +44 -0
  333. package/src/shared/providers/screen/styles/helpers/visibility-gate.ts +17 -7
  334. package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +30 -15
  335. package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +14 -13
  336. package/src/shared/stores/bounds/internals/links.ts +13 -2
  337. package/src/shared/stores/scroll.store.ts +23 -0
  338. package/src/shared/stores/system.store.ts +8 -0
  339. package/src/shared/utils/animation/animate-to-progress.ts +59 -28
  340. package/src/shared/utils/animation/animate.ts +18 -2
  341. package/src/shared/utils/animation/spring/spring.ts +36 -1
  342. package/src/shared/utils/animation/spring/springUtils.ts +130 -0
  343. package/src/shared/utils/animation/state.ts +8 -0
  344. package/src/shared/utils/bounds/navigation/reveal/math.ts +25 -5
  345. package/src/shared/utils/bounds/navigation/zoom/build.ts +85 -23
  346. package/src/shared/utils/bounds/navigation/zoom/config.ts +4 -3
  347. package/src/shared/utils/bounds/navigation/zoom/drag.ts +3 -42
  348. package/src/shared/utils/bounds/navigation/zoom/helpers.ts +9 -18
  349. package/src/shared/utils/bounds/navigation/zoom/mask.ts +4 -1
  350. package/src/shared/utils/bounds/navigation/zoom/targets.ts +59 -1
  351. package/lib/commonjs/shared/components/boundary/hooks/use-register-target.js +0 -32
  352. package/lib/commonjs/shared/components/boundary/hooks/use-register-target.js.map +0 -1
  353. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js +0 -51
  354. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +0 -1
  355. package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js +0 -217
  356. package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js.map +0 -1
  357. package/lib/commonjs/shared/components/boundary/portal/utils/shallow-equal.js +0 -29
  358. package/lib/commonjs/shared/components/boundary/portal/utils/shallow-equal.js.map +0 -1
  359. package/lib/commonjs/shared/components/boundary/portal/utils/visible-host.js +0 -25
  360. package/lib/commonjs/shared/components/boundary/portal/utils/visible-host.js.map +0 -1
  361. package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +0 -64
  362. package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +0 -1
  363. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +0 -21
  364. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +0 -1
  365. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +0 -29
  366. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +0 -1
  367. package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +0 -38
  368. package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +0 -1
  369. package/lib/commonjs/shared/providers/screen/styles/helpers/opening-phase.js +0 -32
  370. package/lib/commonjs/shared/providers/screen/styles/helpers/opening-phase.js.map +0 -1
  371. package/lib/module/shared/components/boundary/hooks/use-register-target.js +0 -27
  372. package/lib/module/shared/components/boundary/hooks/use-register-target.js.map +0 -1
  373. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js +0 -46
  374. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +0 -1
  375. package/lib/module/shared/components/boundary/portal/utils/ownership.js +0 -210
  376. package/lib/module/shared/components/boundary/portal/utils/ownership.js.map +0 -1
  377. package/lib/module/shared/components/boundary/portal/utils/shallow-equal.js +0 -24
  378. package/lib/module/shared/components/boundary/portal/utils/shallow-equal.js.map +0 -1
  379. package/lib/module/shared/components/boundary/portal/utils/visible-host.js +0 -20
  380. package/lib/module/shared/components/boundary/portal/utils/visible-host.js.map +0 -1
  381. package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +0 -59
  382. package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +0 -1
  383. package/lib/module/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +0 -15
  384. package/lib/module/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +0 -1
  385. package/lib/module/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +0 -24
  386. package/lib/module/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +0 -1
  387. package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +0 -33
  388. package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +0 -1
  389. package/lib/module/shared/providers/screen/styles/helpers/opening-phase.js +0 -26
  390. package/lib/module/shared/providers/screen/styles/helpers/opening-phase.js.map +0 -1
  391. package/lib/typescript/shared/components/boundary/hooks/use-register-target.d.ts +0 -10
  392. package/lib/typescript/shared/components/boundary/hooks/use-register-target.d.ts.map +0 -1
  393. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts +0 -13
  394. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts.map +0 -1
  395. package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts +0 -34
  396. package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts.map +0 -1
  397. package/lib/typescript/shared/components/boundary/portal/utils/shallow-equal.d.ts +0 -8
  398. package/lib/typescript/shared/components/boundary/portal/utils/shallow-equal.d.ts.map +0 -1
  399. package/lib/typescript/shared/components/boundary/portal/utils/visible-host.d.ts +0 -8
  400. package/lib/typescript/shared/components/boundary/portal/utils/visible-host.d.ts.map +0 -1
  401. package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts +0 -15
  402. package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts.map +0 -1
  403. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts +0 -4
  404. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts.map +0 -1
  405. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts +0 -5
  406. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts.map +0 -1
  407. package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts +0 -9
  408. package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts.map +0 -1
  409. package/lib/typescript/shared/providers/screen/styles/helpers/opening-phase.d.ts +0 -16
  410. package/lib/typescript/shared/providers/screen/styles/helpers/opening-phase.d.ts.map +0 -1
  411. package/src/shared/components/boundary/hooks/use-register-target.ts +0 -43
  412. package/src/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.tsx +0 -79
  413. package/src/shared/components/boundary/portal/utils/ownership.ts +0 -315
  414. package/src/shared/components/boundary/portal/utils/shallow-equal.ts +0 -25
  415. package/src/shared/components/boundary/portal/utils/visible-host.ts +0 -24
  416. package/src/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.ts +0 -88
  417. package/src/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.ts +0 -19
  418. package/src/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.ts +0 -47
  419. package/src/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.ts +0 -50
  420. package/src/shared/providers/screen/styles/helpers/opening-phase.ts +0 -25
@@ -16,8 +16,7 @@ import { getPortalHostBounds } from "../stores/host-bounds.store";
16
16
  export const resolvePortalOffsetStyle = ({
17
17
  bounds,
18
18
  hostKey,
19
- placement,
20
- landingShift
19
+ placement
21
20
  }) => {
22
21
  "worklet";
23
22
 
@@ -38,9 +37,9 @@ export const resolvePortalOffsetStyle = ({
38
37
  const adjustedHostPageY = hostBounds ? hostBounds.pageY - hostSnapshotDeltaY : 0;
39
38
  return {
40
39
  transform: [{
41
- translateY: bounds.pageY - adjustedHostPageY + (landingShift?.y ?? 0)
40
+ translateY: bounds.pageY - adjustedHostPageY
42
41
  }, {
43
- translateX: bounds.pageX - adjustedHostPageX + (landingShift?.x ?? 0)
42
+ translateX: bounds.pageX - adjustedHostPageX
44
43
  }]
45
44
  };
46
45
  };
@@ -1 +1 @@
1
- {"version":3,"names":["getClampedScrollAxisDelta","getPortalHostBounds","resolvePortalOffsetStyle","bounds","hostKey","placement","landingShift","hostBounds","boundsScrollSnapshot","scroll","hostBoundsScrollSnapshot","alignHostToBoundsScroll","hostSnapshotDeltaX","hostSnapshotDeltaY","adjustedHostPageX","pageX","adjustedHostPageY","pageY","transform","translateY","y","translateX","x"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.ts"],"mappings":";;AACA,SAASA,yBAAyB,QAAQ,uCAAuC;AAEjF,SAASC,mBAAmB,QAAQ,6BAA6B;;AAEjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAgBA,OAAO,MAAMC,wBAAwB,GAAGA,CAAC;EACxCC,MAAM;EACNC,OAAO;EACPC,SAAS;EACTC;AAC+B,CAAC,KAAiB;EACjD,SAAS;;EACT,MAAMC,UAAU,GAAGN,mBAAmB,CAACG,OAAO,CAAC;EAC/C,MAAMI,oBAAoB,GAAGL,MAAM,CAACM,MAAM,IAAI,IAAI;EAClD,MAAMC,wBAAwB,GAAGH,UAAU,EAAEE,MAAM,IAAI,IAAI;;EAE3D;EACA;EACA;EACA,MAAME,uBAAuB,GAAGN,SAAS,KAAK,aAAa;EAE3D,MAAMO,kBAAkB,GAAGD,uBAAuB,GAC/CX,yBAAyB,CACzBQ,oBAAoB,EACpBE,wBAAwB,EACxB,YACD,CAAC,GACA,CAAC;EACJ,MAAMG,kBAAkB,GAAGF,uBAAuB,GAC/CX,yBAAyB,CACzBQ,oBAAoB,EACpBE,wBAAwB,EACxB,UACD,CAAC,GACA,CAAC;;EAEJ;EACA;EACA,MAAMI,iBAAiB,GAAGP,UAAU,GACjCA,UAAU,CAACQ,KAAK,GAAGH,kBAAkB,GACrC,CAAC;EACJ,MAAMI,iBAAiB,GAAGT,UAAU,GACjCA,UAAU,CAACU,KAAK,GAAGJ,kBAAkB,GACrC,CAAC;EAEJ,OAAO;IACNK,SAAS,EAAE,CACV;MAAEC,UAAU,EAAEhB,MAAM,CAACc,KAAK,GAAGD,iBAAiB,IAAIV,YAAY,EAAEc,CAAC,IAAI,CAAC;IAAE,CAAC,EACzE;MAAEC,UAAU,EAAElB,MAAM,CAACY,KAAK,GAAGD,iBAAiB,IAAIR,YAAY,EAAEgB,CAAC,IAAI,CAAC;IAAE,CAAC;EAE3E,CAAC;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["getClampedScrollAxisDelta","getPortalHostBounds","resolvePortalOffsetStyle","bounds","hostKey","placement","hostBounds","boundsScrollSnapshot","scroll","hostBoundsScrollSnapshot","alignHostToBoundsScroll","hostSnapshotDeltaX","hostSnapshotDeltaY","adjustedHostPageX","pageX","adjustedHostPageY","pageY","transform","translateY","translateX"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.ts"],"mappings":";;AACA,SAASA,yBAAyB,QAAQ,uCAAuC;AAEjF,SAASC,mBAAmB,QAAQ,6BAA6B;;AAEjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAUA,OAAO,MAAMC,wBAAwB,GAAGA,CAAC;EACxCC,MAAM;EACNC,OAAO;EACPC;AAC+B,CAAC,KAAiB;EACjD,SAAS;;EACT,MAAMC,UAAU,GAAGL,mBAAmB,CAACG,OAAO,CAAC;EAC/C,MAAMG,oBAAoB,GAAGJ,MAAM,CAACK,MAAM,IAAI,IAAI;EAClD,MAAMC,wBAAwB,GAAGH,UAAU,EAAEE,MAAM,IAAI,IAAI;;EAE3D;EACA;EACA;EACA,MAAME,uBAAuB,GAAGL,SAAS,KAAK,aAAa;EAE3D,MAAMM,kBAAkB,GAAGD,uBAAuB,GAC/CV,yBAAyB,CACzBO,oBAAoB,EACpBE,wBAAwB,EACxB,YACD,CAAC,GACA,CAAC;EACJ,MAAMG,kBAAkB,GAAGF,uBAAuB,GAC/CV,yBAAyB,CACzBO,oBAAoB,EACpBE,wBAAwB,EACxB,UACD,CAAC,GACA,CAAC;;EAEJ;EACA;EACA,MAAMI,iBAAiB,GAAGP,UAAU,GACjCA,UAAU,CAACQ,KAAK,GAAGH,kBAAkB,GACrC,CAAC;EACJ,MAAMI,iBAAiB,GAAGT,UAAU,GACjCA,UAAU,CAACU,KAAK,GAAGJ,kBAAkB,GACrC,CAAC;EAEJ,OAAO;IACNK,SAAS,EAAE,CACV;MAAEC,UAAU,EAAEf,MAAM,CAACa,KAAK,GAAGD;IAAkB,CAAC,EAChD;MAAEI,UAAU,EAAEhB,MAAM,CAACW,KAAK,GAAGD;IAAkB,CAAC;EAElD,CAAC;AACF,CAAC","ignoreList":[]}
@@ -1,158 +1,60 @@
1
1
  "use strict";
2
2
 
3
- import { useCallback, useLayoutEffect, useRef, useState } from "react";
4
- import { runOnJS, useAnimatedProps, useAnimatedReaction, useSharedValue } from "react-native-reanimated";
3
+ import { useLayoutEffect } from "react";
4
+ import { useAnimatedProps, useSharedValue } from "react-native-reanimated";
5
5
  import { useDescriptorsStore } from "../../../../../../providers/screen/descriptors";
6
6
  import { useScreenSlots } from "../../../../../../providers/screen/styles";
7
+ import { hasCloseTransitionFinished } from "../../../../../../providers/screen/styles/helpers/transition-visual-state";
8
+ import { AnimationStore } from "../../../../../../stores/animation.store";
9
+ import { getLinkKeyFromTag } from "../../../../../../stores/bounds/helpers/link-pairs.helpers";
7
10
  import { pairs } from "../../../../../../stores/bounds/internals/state";
11
+ import { SystemStore } from "../../../../../../stores/system.store";
8
12
  import { PORTAL_HOST_NAME_RESET_VALUE } from "../../../utils/naming";
9
- import { resolveBoundaryPortalOwnership } from "../../../utils/ownership";
10
- import { shallowEqual } from "../../../utils/shallow-equal";
11
- import { shouldAttachBoundaryPortal } from "../../../utils/teleport-control";
12
- import { resolveNextVisiblePortalHostName } from "../../../utils/visible-host";
13
+ import { isTeleportEnabled } from "../../../utils/teleport-control";
13
14
  import { createBoundaryPortalHostName } from "../helpers/host-name";
14
15
  import { useActiveHostKey } from "../stores/host-registry.store";
15
- import { dropStalePortalBoundaryHosts, mountPortalBoundaryHost, unmountPortalBoundaryHostByName } from "../stores/portal-boundary-host.store";
16
+ import { mountPortalBoundaryHost, unmountPortalBoundaryHostByName } from "../stores/portal-boundary-host.store";
16
17
  export const useBoundaryPortalAttachment = ({
17
- boundaryId,
18
- enabled
18
+ boundaryId
19
19
  }) => {
20
20
  const sourcePairKey = useDescriptorsStore(s => s.derivations.sourcePairKey);
21
21
  const currentScreenKey = useDescriptorsStore(s => s.derivations.currentScreenKey);
22
+ const nextScreenKey = useDescriptorsStore(s => s.derivations.nextScreenKey);
23
+ const destinationScreenKey = nextScreenKey ?? currentScreenKey;
24
+ const destinationAnimationProgress = SystemStore.getValue(destinationScreenKey, "animationProgress");
25
+ const destinationClosing = AnimationStore.getValue(destinationScreenKey, "closing");
22
26
  const {
23
27
  localStylesMaps,
24
- nextInterpolatorReady,
25
28
  slotsMap
26
29
  } = useScreenSlots();
27
- const [ownership, setOwnership] = useState(null);
28
- const requestedPortalHostName = useSharedValue(null);
29
- const visiblePortalHostName = useSharedValue(null);
30
- const mountedPortalBoundaryHostNamesRef = useRef(new Set());
31
- const escapeHostKey = useActiveHostKey(enabled ? currentScreenKey : null);
32
- const updatePortalOwnership = useCallback((hostScreenKey, ownerPairKey, ownerScreenKey) => {
33
- if (hostScreenKey && ownerPairKey && ownerScreenKey) {
34
- setOwnership(current => {
35
- if (current?.hostScreenKey === hostScreenKey && current.ownerPairKey === ownerPairKey && current.ownerScreenKey === ownerScreenKey) {
36
- return current;
37
- }
38
- return {
39
- hostScreenKey,
40
- ownerPairKey,
41
- ownerScreenKey,
42
- status: "complete"
43
- };
44
- });
45
- return;
46
- }
47
- setOwnership(current => current ? null : current);
48
- }, []);
49
- const unmountOwnedPortalBoundaryHosts = useCallback(() => {
50
- for (const portalHostName of mountedPortalBoundaryHostNamesRef.current) {
51
- unmountPortalBoundaryHostByName(portalHostName);
52
- }
53
- mountedPortalBoundaryHostNamesRef.current.clear();
54
- }, []);
30
+ const portalHostName = useSharedValue(null);
31
+ const portalHostReady = useSharedValue(false);
32
+ const attachedDestination = useSharedValue(null);
33
+ const escapeHostKey = useActiveHostKey(currentScreenKey);
55
34
  useLayoutEffect(() => {
56
- if (!enabled || !ownership || !escapeHostKey) {
57
- requestedPortalHostName.set(null);
58
- visiblePortalHostName.set(null);
59
- unmountOwnedPortalBoundaryHosts();
35
+ if (!sourcePairKey || !escapeHostKey) {
36
+ portalHostName.set(null);
37
+ portalHostReady.set(false);
60
38
  return;
61
39
  }
62
- const portalHostName = createBoundaryPortalHostName(escapeHostKey, boundaryId, ownership.ownerPairKey);
40
+ const nextPortalHostName = createBoundaryPortalHostName(escapeHostKey, boundaryId, sourcePairKey);
63
41
  mountPortalBoundaryHost({
64
42
  boundaryId,
65
- escapeClipping: true,
66
43
  hostKey: escapeHostKey,
67
44
  localStylesMaps,
68
- pairKey: ownership.ownerPairKey,
69
- portalHostName,
45
+ pairKey: sourcePairKey,
46
+ portalHostName: nextPortalHostName,
47
+ portalHostReady,
70
48
  screenKey: currentScreenKey,
71
49
  slotsMap
72
50
  });
73
- mountedPortalBoundaryHostNamesRef.current.add(portalHostName);
74
-
75
- // Request the new receiver immediately, but keep the currently visible
76
- // receiver until the new interpolator is ready. This avoids a no-host gap
77
- // during rapid close/open retargets.
78
- requestedPortalHostName.set(portalHostName);
79
- }, [boundaryId, currentScreenKey, enabled, escapeHostKey, localStylesMaps, ownership, requestedPortalHostName, slotsMap, unmountOwnedPortalBoundaryHosts, visiblePortalHostName]);
80
- useLayoutEffect(() => {
51
+ portalHostName.set(nextPortalHostName);
81
52
  return () => {
82
- requestedPortalHostName.set(null);
83
- visiblePortalHostName.set(null);
84
- unmountOwnedPortalBoundaryHosts();
53
+ portalHostName.set(null);
54
+ portalHostReady.set(false);
55
+ unmountPortalBoundaryHostByName(nextPortalHostName);
85
56
  };
86
- }, [requestedPortalHostName, unmountOwnedPortalBoundaryHosts, visiblePortalHostName]);
87
- useAnimatedReaction(() => {
88
- "worklet";
89
-
90
- if (!enabled || !sourcePairKey) {
91
- return {
92
- hostScreenKey: null,
93
- ownerPairKey: sourcePairKey,
94
- ownerScreenKey: null,
95
- status: "clear"
96
- };
97
- }
98
- return resolveBoundaryPortalOwnership({
99
- boundaryId,
100
- currentScreenKey,
101
- handoff: false,
102
- pairsState: pairs.get(),
103
- sourcePairKey
104
- });
105
- }, (signal, previousSignal) => {
106
- "worklet";
107
-
108
- if (shallowEqual(previousSignal, signal)) {
109
- return;
110
- }
111
- runOnJS(updatePortalOwnership)(signal.hostScreenKey, signal.ownerPairKey, signal.ownerScreenKey ?? undefined);
112
- });
113
- useAnimatedReaction(() => {
114
- "worklet";
115
-
116
- const slot = slotsMap.get()[boundaryId];
117
- const teleport = slot?.props?.teleport;
118
- const shouldTeleport = shouldAttachBoundaryPortal({
119
- enabled,
120
- teleport
121
- });
122
- const requestedName = requestedPortalHostName.get();
123
- const visibleName = visiblePortalHostName.get();
124
- const isInterpolatorReady = nextInterpolatorReady.get();
125
- const nextVisibleName = resolveNextVisiblePortalHostName({
126
- isInterpolatorReady: isInterpolatorReady === 1,
127
- requestedName,
128
- shouldTeleport,
129
- visibleName
130
- });
131
- return {
132
- isInterpolatorReady,
133
- nextVisibleName,
134
- requestedName,
135
- shouldTeleport,
136
- teleport,
137
- visibleName
138
- };
139
- }, (state, previousState) => {
140
- "worklet";
141
-
142
- if (shallowEqual(previousState, state)) {
143
- return;
144
- }
145
- if (state.nextVisibleName !== state.visibleName) {
146
- visiblePortalHostName.set(state.nextVisibleName);
147
- return;
148
- }
149
- if (state.visibleName && state.visibleName === state.requestedName) {
150
- runOnJS(dropStalePortalBoundaryHosts)({
151
- boundaryId,
152
- keepPortalHostName: state.visibleName
153
- });
154
- }
155
- });
57
+ }, [boundaryId, currentScreenKey, escapeHostKey, localStylesMaps, portalHostName, portalHostReady, sourcePairKey, slotsMap]);
156
58
  const teleportProps = useAnimatedProps(() => {
157
59
  "worklet";
158
60
 
@@ -162,19 +64,33 @@ export const useBoundaryPortalAttachment = ({
162
64
  teleport,
163
65
  ...slotProps
164
66
  } = slot?.props ?? {};
165
- const shouldTeleport = shouldAttachBoundaryPortal({
166
- enabled,
167
- teleport
67
+ const shouldTeleport = isTeleportEnabled(teleport);
68
+ const hostName = portalHostName.get();
69
+ const pair = sourcePairKey ? pairs.get()[sourcePairKey] : undefined;
70
+ const linkKey = getLinkKeyFromTag(boundaryId);
71
+ const link = pair?.links[linkKey];
72
+ const hasActiveLink = link?.source !== null && link !== undefined && (!link.group || pair?.groups[link.group]?.activeId === linkKey);
73
+ const hasAttachableHost = shouldTeleport && hasActiveLink && portalHostReady.get() && hostName;
74
+ if (hasAttachableHost) {
75
+ attachedDestination.set({
76
+ animationProgress: destinationAnimationProgress,
77
+ closing: destinationClosing
78
+ });
79
+ }
80
+ const attached = attachedDestination.get();
81
+ const hasAttachedCloseFinished = attached !== null && hasCloseTransitionFinished({
82
+ animationProgress: attached.animationProgress.get(),
83
+ closing: attached.closing.get()
168
84
  });
169
- const visibleName = visiblePortalHostName.get();
85
+ const canAttach = hasAttachableHost && !hasAttachedCloseFinished;
86
+ const targetHostName = canAttach ? hostName : PORTAL_HOST_NAME_RESET_VALUE;
170
87
  return {
171
88
  ...slotProps,
172
- hostName: shouldTeleport && visibleName ? visibleName : PORTAL_HOST_NAME_RESET_VALUE
89
+ hostName: targetHostName
173
90
  };
174
91
  });
175
92
  return {
176
- teleportProps,
177
- visiblePortalHostName
93
+ teleportProps
178
94
  };
179
95
  };
180
96
  //# sourceMappingURL=use-boundary-portal-attachment.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useLayoutEffect","useRef","useState","runOnJS","useAnimatedProps","useAnimatedReaction","useSharedValue","useDescriptorsStore","useScreenSlots","pairs","PORTAL_HOST_NAME_RESET_VALUE","resolveBoundaryPortalOwnership","shallowEqual","shouldAttachBoundaryPortal","resolveNextVisiblePortalHostName","createBoundaryPortalHostName","useActiveHostKey","dropStalePortalBoundaryHosts","mountPortalBoundaryHost","unmountPortalBoundaryHostByName","useBoundaryPortalAttachment","boundaryId","enabled","sourcePairKey","s","derivations","currentScreenKey","localStylesMaps","nextInterpolatorReady","slotsMap","ownership","setOwnership","requestedPortalHostName","visiblePortalHostName","mountedPortalBoundaryHostNamesRef","Set","escapeHostKey","updatePortalOwnership","hostScreenKey","ownerPairKey","ownerScreenKey","current","status","unmountOwnedPortalBoundaryHosts","portalHostName","clear","set","escapeClipping","hostKey","pairKey","screenKey","add","handoff","pairsState","get","signal","previousSignal","undefined","slot","teleport","props","shouldTeleport","requestedName","visibleName","isInterpolatorReady","nextVisibleName","state","previousState","keepPortalHostName","teleportProps","pointerEvents","_pointerEvents","slotProps","hostName"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useLayoutEffect","useAnimatedProps","useSharedValue","useDescriptorsStore","useScreenSlots","hasCloseTransitionFinished","AnimationStore","getLinkKeyFromTag","pairs","SystemStore","PORTAL_HOST_NAME_RESET_VALUE","isTeleportEnabled","createBoundaryPortalHostName","useActiveHostKey","mountPortalBoundaryHost","unmountPortalBoundaryHostByName","useBoundaryPortalAttachment","boundaryId","sourcePairKey","s","derivations","currentScreenKey","nextScreenKey","destinationScreenKey","destinationAnimationProgress","getValue","destinationClosing","localStylesMaps","slotsMap","portalHostName","portalHostReady","attachedDestination","escapeHostKey","set","nextPortalHostName","hostKey","pairKey","screenKey","teleportProps","slot","get","pointerEvents","_pointerEvents","teleport","slotProps","props","shouldTeleport","hostName","pair","undefined","linkKey","link","links","hasActiveLink","source","group","groups","activeId","hasAttachableHost","animationProgress","closing","attached","hasAttachedCloseFinished","canAttach","targetHostName"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts"],"mappings":"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","ignoreList":[]}
@@ -1,27 +1,62 @@
1
1
  "use strict";
2
2
 
3
3
  import { memo } from "react";
4
- import { BoundaryPortalSlot } from "./components/portal-slot";
4
+ import Animated, { runOnUI } from "react-native-reanimated";
5
+ import { logger } from "../../../../../utils/logger";
6
+ import { isTeleportAvailable, PORTAL_POINTER_EVENTS, NativePortal as TeleportPortal } from "../../teleport";
5
7
  import { useBoundaryPortalAttachment } from "./hooks/use-boundary-portal-attachment";
8
+ import { usePlaceholderStyles } from "./hooks/use-placeholder-styles";
6
9
  import { jsx as _jsx } from "react/jsx-runtime";
10
+ const AnimatedNativePortal = TeleportPortal ? Animated.createAnimatedComponent(TeleportPortal) : null;
11
+ const EnabledNativePortal = AnimatedNativePortal;
7
12
  export const BoundaryPortal = /*#__PURE__*/memo(function BoundaryPortal({
8
13
  boundaryId,
9
14
  children,
10
15
  enabled,
11
16
  placeholderRef
12
17
  }) {
18
+ if (!enabled || !isTeleportAvailable || !AnimatedNativePortal) {
19
+ return children;
20
+ }
21
+ return /*#__PURE__*/_jsx(EnabledBoundaryPortal, {
22
+ boundaryId: boundaryId,
23
+ placeholderRef: placeholderRef,
24
+ children: children
25
+ });
26
+ });
27
+ const EnabledBoundaryPortal = /*#__PURE__*/memo(function EnabledBoundaryPortal({
28
+ boundaryId,
29
+ children,
30
+ placeholderRef
31
+ }) {
32
+ if (__DEV__ && !boundaryId) {
33
+ logger.warnOnce("portal:missing-id", "A boundary portal was rendered without an id; rendering inline.");
34
+ }
13
35
  const {
14
36
  teleportProps
15
37
  } = useBoundaryPortalAttachment({
16
- boundaryId,
17
- enabled
38
+ boundaryId
18
39
  });
19
- return /*#__PURE__*/_jsx(BoundaryPortalSlot, {
20
- id: boundaryId,
21
- enabled: enabled,
22
- animatedProps: teleportProps,
23
- placeholderRef: placeholderRef,
24
- children: children
40
+ const {
41
+ handleOnLayout,
42
+ placeholderStyle
43
+ } = usePlaceholderStyles();
44
+ return /*#__PURE__*/_jsx(Animated.View, {
45
+ ref: placeholderRef,
46
+ onLayout: ({
47
+ nativeEvent: {
48
+ layout
49
+ }
50
+ }) => runOnUI(handleOnLayout)(layout),
51
+ style: placeholderStyle,
52
+ pointerEvents: PORTAL_POINTER_EVENTS,
53
+ collapsable: false,
54
+ children: /*#__PURE__*/_jsx(EnabledNativePortal, {
55
+ animatedProps: teleportProps,
56
+ name: boundaryId,
57
+ pointerEvents: PORTAL_POINTER_EVENTS,
58
+ children: children
59
+ })
25
60
  });
26
61
  });
27
62
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["memo","BoundaryPortalSlot","useBoundaryPortalAttachment","jsx","_jsx","BoundaryPortal","boundaryId","children","enabled","placeholderRef","teleportProps","id","animatedProps"],"sourceRoot":"../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/index.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAwB,OAAO;AAG5C,SAASC,kBAAkB,QAAQ,0BAA0B;AAC7D,SAASC,2BAA2B,QAAQ,wCAAwC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AASrF,OAAO,MAAMC,cAAc,gBAAGL,IAAI,CAAC,SAASK,cAAcA,CAAC;EAC1DC,UAAU;EACVC,QAAQ;EACRC,OAAO;EACPC;AACoB,CAAC,EAAE;EACvB,MAAM;IAAEC;EAAc,CAAC,GAAGR,2BAA2B,CAAC;IACrDI,UAAU;IACVE;EACD,CAAC,CAAC;EAEF,oBACCJ,IAAA,CAACH,kBAAkB;IAClBU,EAAE,EAAEL,UAAW;IACfE,OAAO,EAAEA,OAAQ;IACjBI,aAAa,EAAEF,aAAc;IAC7BD,cAAc,EAAEA,cAAe;IAAAF,QAAA,EAE9BA;EAAQ,CACU,CAAC;AAEvB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["memo","Animated","runOnUI","logger","isTeleportAvailable","PORTAL_POINTER_EVENTS","NativePortal","TeleportPortal","useBoundaryPortalAttachment","usePlaceholderStyles","jsx","_jsx","AnimatedNativePortal","createAnimatedComponent","EnabledNativePortal","BoundaryPortal","boundaryId","children","enabled","placeholderRef","EnabledBoundaryPortal","__DEV__","warnOnce","teleportProps","handleOnLayout","placeholderStyle","View","ref","onLayout","nativeEvent","layout","style","pointerEvents","collapsable","animatedProps","name"],"sourceRoot":"../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/index.tsx"],"mappings":";;AAAA,SAGCA,IAAI,QAEE,OAAO;AAEd,OAAOC,QAAQ,IAAsBC,OAAO,QAAQ,yBAAyB;AAC7E,SAASC,MAAM,QAAQ,6BAA6B;AACpD,SACCC,mBAAmB,EACnBC,qBAAqB,EACrBC,YAAY,IAAIC,cAAc,QACxB,gBAAgB;AACvB,SAASC,2BAA2B,QAAQ,wCAAwC;AACpF,SAASC,oBAAoB,QAAQ,gCAAgC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAStE,MAAMC,oBAAoB,GAAGL,cAAc,GACxCN,QAAQ,CAACY,uBAAuB,CAChCN,cACD,CAAC,GACA,IAAI;AACP,MAAMO,mBAAmB,GAAGF,oBAE3B;AASD,OAAO,MAAMG,cAAc,gBAAGf,IAAI,CAAC,SAASe,cAAcA,CAAC;EAC1DC,UAAU;EACVC,QAAQ;EACRC,OAAO;EACPC;AACoB,CAAC,EAAE;EACvB,IAAI,CAACD,OAAO,IAAI,CAACd,mBAAmB,IAAI,CAACQ,oBAAoB,EAAE;IAC9D,OAAOK,QAAQ;EAChB;EAEA,oBACCN,IAAA,CAACS,qBAAqB;IACrBJ,UAAU,EAAEA,UAAW;IACvBG,cAAc,EAAEA,cAAe;IAAAF,QAAA,EAE9BA;EAAQ,CACa,CAAC;AAE1B,CAAC,CAAC;AAEF,MAAMG,qBAAqB,gBAAGpB,IAAI,CAAC,SAASoB,qBAAqBA,CAAC;EACjEJ,UAAU;EACVC,QAAQ;EACRE;AACqC,CAAC,EAAE;EACxC,IAAIE,OAAO,IAAI,CAACL,UAAU,EAAE;IAC3Bb,MAAM,CAACmB,QAAQ,CACd,mBAAmB,EACnB,iEACD,CAAC;EACF;EAEA,MAAM;IAAEC;EAAc,CAAC,GAAGf,2BAA2B,CAAC;IAAEQ;EAAW,CAAC,CAAC;EACrE,MAAM;IAAEQ,cAAc;IAAEC;EAAiB,CAAC,GAAGhB,oBAAoB,CAAC,CAAC;EAEnE,oBACCE,IAAA,CAACV,QAAQ,CAACyB,IAAI;IACbC,GAAG,EAAER,cAAe;IACpBS,QAAQ,EAAEA,CAAC;MAAEC,WAAW,EAAE;QAAEC;MAAO;IAAE,CAAC,KACrC5B,OAAO,CAACsB,cAAc,CAAC,CAACM,MAAM,CAC9B;IACDC,KAAK,EAAEN,gBAAiB;IACxBO,aAAa,EAAE3B,qBAAsB;IACrC4B,WAAW,EAAE,KAAM;IAAAhB,QAAA,eAEnBN,IAAA,CAACG,mBAAmB;MACnBoB,aAAa,EAAEX,aAAc;MAC7BY,IAAI,EAAEnB,UAAW;MACjBgB,aAAa,EAAE3B,qBAAsB;MAAAY,QAAA,EAEpCA;IAAQ,CACW;EAAC,CACR,CAAC;AAElB,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useSyncExternalStore","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","unregisterHost","getActiveHostKey","useActiveHostKey","undefined","resetHostRegistry","clear"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.ts"],"mappings":";;AAAA,SAASA,oBAAoB,QAAQ,OAAO;AAW5C,MAAMC,cAAoC,GAAG,CAAC,CAAC;AAE/C,MAAMC,SAAS,GAAG,IAAIC,GAAG,CAAa,CAAC;AACvC,MAAMC,UAAU,GAAG,IAAIC,GAAG,CAA6B,CAAC;AAExD,IAAIC,QAA8B,GAAGL,cAAc;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA,MAAMM,sBAAsB,GAAGA,CAC9BC,SAAiB,EACjBC,KAAqC,KACjC;EACJ,IAAI,CAACA,KAAK,IAAIA,KAAK,CAACC,MAAM,KAAK,CAAC,EAAE;IACjC,OAAOF,SAAS;EACjB;EAEA,KAAK,IAAIG,KAAK,GAAGF,KAAK,CAACC,MAAM,GAAG,CAAC,EAAEC,KAAK,IAAI,CAAC,EAAEA,KAAK,EAAE,EAAE;IACvD,MAAMC,IAAI,GAAGH,KAAK,CAACE,KAAK,CAAC;IACzB,IAAI,CAACC,IAAI,CAACC,QAAQ,EAAE;MACnB,OAAOD,IAAI,CAACE,OAAO;IACpB;EACD;EAEA,OAAOL,KAAK,CAAC,CAAC,CAAC,EAAEK,OAAO,IAAIN,SAAS;AACtC,CAAC;AAED,MAAMO,aAAa,GAAGA,CAAA,KAA4B;EACjD,MAAMC,YAAkC,GAAG,CAAC,CAAC;EAE7C,KAAK,MAAM,CAACR,SAAS,EAAEC,KAAK,CAAC,IAAIL,UAAU,EAAE;IAC5CY,YAAY,CAACR,SAAS,CAAC,GAAGD,sBAAsB,CAACC,SAAS,EAAEC,KAAK,CAAC;EACnE;EAEA,OAAOO,YAAY;AACpB,CAAC;AAED,MAAMC,IAAI,GAAGA,CAAA,KAAM;EAClBX,QAAQ,GAAGS,aAAa,CAAC,CAAC;EAE1B,KAAK,MAAMG,QAAQ,IAAIhB,SAAS,EAAE;IACjCgB,QAAQ,CAAC,CAAC;EACX;AACD,CAAC;AAED,MAAMC,SAAS,GAAID,QAAoB,IAAK;EAC3ChB,SAAS,CAACkB,GAAG,CAACF,QAAQ,CAAC;EAEvB,OAAO,MAAM;IACZhB,SAAS,CAACmB,MAAM,CAACH,QAAQ,CAAC;EAC3B,CAAC;AACF,CAAC;AAED,OAAO,MAAMI,YAAY,GAAIC,YAA8B,IAAK;EAC/D,MAAMd,KAAK,GAAGL,UAAU,CAACoB,GAAG,CAACD,YAAY,CAACf,SAAS,CAAC,IAAI,EAAE;EAC1D,MAAMiB,qBAAqB,GAAGlB,sBAAsB,CACnDgB,YAAY,CAACf,SAAS,EACtBC,KACD,CAAC;EACD,MAAMiB,SAAS,GAAGjB,KAAK,CAACkB,MAAM,CAC5Bf,IAAI,IAAKA,IAAI,CAACE,OAAO,KAAKS,YAAY,CAACT,OACzC,CAAC;EAED,IAAIS,YAAY,CAACV,QAAQ,EAAE;IAC1Ba,SAAS,CAACE,OAAO,CAACL,YAAY,CAAC;EAChC,CAAC,MAAM;IACNG,SAAS,CAACG,IAAI,CAACN,YAAY,CAAC;EAC7B;EAEAnB,UAAU,CAAC0B,GAAG,CAACP,YAAY,CAACf,SAAS,EAAEkB,SAAS,CAAC;EAEjD,IACCD,qBAAqB,KACrBlB,sBAAsB,CAACgB,YAAY,CAACf,SAAS,EAAEkB,SAAS,CAAC,EACxD;IACD;EACD;EAEAT,IAAI,CAAC,CAAC;AACP,CAAC;AAED,OAAO,MAAMc,cAAc,GAAGA,CAACvB,SAAiB,EAAEM,OAAe,KAAK;EACrE,MAAML,KAAK,GAAGL,UAAU,CAACoB,GAAG,CAAChB,SAAS,CAAC;EACvC,IAAI,CAACC,KAAK,EAAE;IACX;EACD;EAEA,MAAMgB,qBAAqB,GAAGlB,sBAAsB,CAACC,SAAS,EAAEC,KAAK,CAAC;EACtE,MAAMiB,SAAS,GAAGjB,KAAK,CAACkB,MAAM,CAAEf,IAAI,IAAKA,IAAI,CAACE,OAAO,KAAKA,OAAO,CAAC;EAElE,IAAIY,SAAS,CAAChB,MAAM,KAAK,CAAC,EAAE;IAC3BN,UAAU,CAACiB,MAAM,CAACb,SAAS,CAAC;EAC7B,CAAC,MAAM;IACNJ,UAAU,CAAC0B,GAAG,CAACtB,SAAS,EAAEkB,SAAS,CAAC;EACrC;EAEA,IAAID,qBAAqB,KAAKlB,sBAAsB,CAACC,SAAS,EAAEkB,SAAS,CAAC,EAAE;IAC3E;EACD;EAEAT,IAAI,CAAC,CAAC;AACP,CAAC;AAED,OAAO,MAAMe,gBAAgB,GAAIxB,SAAiB,IAAK;EACtD,OAAOF,QAAQ,CAACE,SAAS,CAAC,IAAIA,SAAS;AACxC,CAAC;AAED,OAAO,MAAMyB,gBAAgB,GAAIzB,SAAyB,IAAK;EAC9D,OAAOR,oBAAoB,CAC1BmB,SAAS,EACT,MAAOX,SAAS,GAAGwB,gBAAgB,CAACxB,SAAS,CAAC,GAAG0B,SAAU,EAC3D,MAAMA,SACP,CAAC;AACF,CAAC;AAED,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAAM;EACtC/B,UAAU,CAACgC,KAAK,CAAC,CAAC;EAClB9B,QAAQ,GAAGL,cAAc;EACzBgB,IAAI,CAAC,CAAC;AACP,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useSyncExternalStore","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","unregisterHost","getActiveHostKey","useActiveHostKey","undefined","resetHostRegistry","clear"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.ts"],"mappings":"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","ignoreList":[]}
@@ -25,7 +25,7 @@ const emit = () => {
25
25
  }
26
26
  };
27
27
  const isSameHost = (a, b) => {
28
- 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;
28
+ 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;
29
29
  };
30
30
  export const mountPortalBoundaryHost = host => {
31
31
  const previous = activeBoundaryHosts.get(host.portalHostName);
@@ -41,32 +41,6 @@ export const unmountPortalBoundaryHostByName = portalHostName => {
41
41
  }
42
42
  emit();
43
43
  };
44
-
45
- /**
46
- * Post-handoff GC: drop every receiver for this boundary except the one now
47
- * visible (`keepPortalHostName`). Called once the new host is confirmed on
48
- * screen so the superseded receivers stop rendering.
49
- */
50
- export const dropStalePortalBoundaryHosts = ({
51
- boundaryId,
52
- keepPortalHostName
53
- }) => {
54
- if (!activeBoundaryHosts.has(keepPortalHostName)) {
55
- return;
56
- }
57
- let didDelete = false;
58
- for (const [hostEntryKey, host] of activeBoundaryHosts) {
59
- if (host.boundaryId !== boundaryId || host.portalHostName === keepPortalHostName) {
60
- continue;
61
- }
62
- activeBoundaryHosts.delete(hostEntryKey);
63
- didDelete = true;
64
- }
65
- if (!didDelete) {
66
- return;
67
- }
68
- emit();
69
- };
70
44
  const subscribe = listener => {
71
45
  listeners.add(listener);
72
46
  return () => {
@@ -1 +1 @@
1
- {"version":3,"names":["useSyncExternalStore","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","unmountPortalBoundaryHostByName","delete","dropStalePortalBoundaryHosts","keepPortalHostName","has","didDelete","hostEntryKey","subscribe","add","useActivePortalBoundaryHosts"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useSyncExternalStore","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","unmountPortalBoundaryHostByName","delete","subscribe","add","useActivePortalBoundaryHosts"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.ts"],"mappings":";;AAAA,SAASA,oBAAoB,QAAQ,OAAO;AAoB5C,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;AAED,OAAO,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;AAED,OAAO,MAAMgB,+BAA+B,GAC3CR,cAAyC,IACrC;EACJ,IAAI,CAACA,cAAc,IAAI,CAAClB,mBAAmB,CAAC2B,MAAM,CAACT,cAAc,CAAC,EAAE;IACnE;EACD;EAEAR,IAAI,CAAC,CAAC;AACP,CAAC;AAED,MAAMkB,SAAS,GAAIjB,QAAoB,IAAK;EAC3Cb,SAAS,CAAC+B,GAAG,CAAClB,QAAQ,CAAC;EAEvB,OAAO,MAAM;IACZb,SAAS,CAAC6B,MAAM,CAAChB,QAAQ,CAAC;EAC3B,CAAC;AACF,CAAC;AAED,OAAO,MAAMmB,4BAA4B,GAAItB,OAAe,IAAK;EAChE,OAAOZ,oBAAoB,CAC1BgC,SAAS,EACT,MAAM1B,QAAQ,CAACC,YAAY,CAACK,OAAO,CAAC,IAAIX,WAAW,EACnD,MAAMA,WACP,CAAC;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ import { getLinkKeyFromTag } from "../../../../stores/bounds/helpers/link-pairs.helpers";
4
+ /** Resolve only the immediate A -> B entering handoff. */
5
+ export const resolveEnteringHandoffTarget = ({
6
+ animationProgress,
7
+ boundaryId,
8
+ currentScreenKey,
9
+ pairsState,
10
+ sourcePairKey
11
+ }) => {
12
+ "worklet";
13
+
14
+ if (!sourcePairKey || animationProgress <= 0) {
15
+ return null;
16
+ }
17
+ const pair = pairsState[sourcePairKey];
18
+ const linkKey = getLinkKeyFromTag(boundaryId);
19
+ const link = pair?.links[linkKey];
20
+ if (link?.status !== "complete" || link.source.screenKey !== currentScreenKey || !link.source.handoff || !link.destination.handoff) {
21
+ return null;
22
+ }
23
+ if (link.group && pair.groups[link.group]?.activeId !== linkKey) {
24
+ return null;
25
+ }
26
+ return link.destination.screenKey;
27
+ };
28
+ //# sourceMappingURL=handoff-target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getLinkKeyFromTag","resolveEnteringHandoffTarget","animationProgress","boundaryId","currentScreenKey","pairsState","sourcePairKey","pair","linkKey","link","links","status","source","screenKey","handoff","destination","group","groups","activeId"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/handoff-target.ts"],"mappings":";;AAAA,SAASA,iBAAiB,QAAQ,sDAAsD;AAexF;AACA,OAAO,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,GAAGR,iBAAiB,CAACG,UAAU,CAAC;EAC7C,MAAMM,IAAI,GAAGF,IAAI,EAAEG,KAAK,CAACF,OAAO,CAAC;EAEjC,IACCC,IAAI,EAAEE,MAAM,KAAK,UAAU,IAC3BF,IAAI,CAACG,MAAM,CAACC,SAAS,KAAKT,gBAAgB,IAC1C,CAACK,IAAI,CAACG,MAAM,CAACE,OAAO,IACpB,CAACL,IAAI,CAACM,WAAW,CAACD,OAAO,EACxB;IACD,OAAO,IAAI;EACZ;EAEA,IAAIL,IAAI,CAACO,KAAK,IAAIT,IAAI,CAACU,MAAM,CAACR,IAAI,CAACO,KAAK,CAAC,EAAEE,QAAQ,KAAKV,OAAO,EAAE;IAChE,OAAO,IAAI;EACZ;EAEA,OAAOC,IAAI,CAACM,WAAW,CAACF,SAAS;AAClC,CAAC","ignoreList":[]}
@@ -2,6 +2,22 @@
2
2
 
3
3
  import { logger } from "../../../../utils/logger";
4
4
  import { isTeleportAvailable } from "../teleport";
5
+ const DISABLED_RUNTIME = {
6
+ handoff: false,
7
+ escapeClipping: false
8
+ };
9
+ const HANDOFF_RUNTIME = {
10
+ handoff: true,
11
+ escapeClipping: false
12
+ };
13
+ const ESCAPE_CLIPPING_RUNTIME = {
14
+ handoff: false,
15
+ escapeClipping: true
16
+ };
17
+ const HANDOFF_ESCAPE_CLIPPING_RUNTIME = {
18
+ handoff: true,
19
+ escapeClipping: true
20
+ };
5
21
  export const resolveBoundaryPortal = ({
6
22
  handoff,
7
23
  escapeClipping
@@ -10,24 +26,12 @@ export const resolveBoundaryPortal = ({
10
26
  const resolvedEscapeClipping = escapeClipping ?? false;
11
27
  const enabled = resolvedHandoff || resolvedEscapeClipping;
12
28
  if (!enabled) {
13
- return {
14
- handoff: false,
15
- escapeClipping: false,
16
- enabled: false
17
- };
29
+ return DISABLED_RUNTIME;
18
30
  }
19
31
  if (!isTeleportAvailable) {
20
32
  logger.warnOnce("boundary:teleport-missing", "react-native-teleport is not installed; handoff and escapeClipping boundaries will render inline.");
21
- return {
22
- handoff: false,
23
- escapeClipping: false,
24
- enabled: false
25
- };
33
+ return DISABLED_RUNTIME;
26
34
  }
27
- return {
28
- handoff: resolvedHandoff,
29
- escapeClipping: resolvedEscapeClipping,
30
- enabled
31
- };
35
+ return resolvedHandoff ? resolvedEscapeClipping ? HANDOFF_ESCAPE_CLIPPING_RUNTIME : HANDOFF_RUNTIME : ESCAPE_CLIPPING_RUNTIME;
32
36
  };
33
37
  //# sourceMappingURL=resolve-portal.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["logger","isTeleportAvailable","resolveBoundaryPortal","handoff","escapeClipping","resolvedHandoff","resolvedEscapeClipping","enabled","warnOnce"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/resolve-portal.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,0BAA0B;AACjD,SAASC,mBAAmB,QAAQ,aAAa;AAajD,OAAO,MAAMC,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,CAACN,mBAAmB,EAAE;IACzBD,MAAM,CAACQ,QAAQ,CACd,2BAA2B,EAC3B,mGACD,CAAC;IAED,OAAO;MACNL,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","ignoreList":[]}
1
+ {"version":3,"names":["logger","isTeleportAvailable","DISABLED_RUNTIME","handoff","escapeClipping","HANDOFF_RUNTIME","ESCAPE_CLIPPING_RUNTIME","HANDOFF_ESCAPE_CLIPPING_RUNTIME","resolveBoundaryPortal","resolvedHandoff","resolvedEscapeClipping","enabled","warnOnce"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/resolve-portal.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,0BAA0B;AACjD,SAASC,mBAAmB,QAAQ,aAAa;AAYjD,MAAMC,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;AAED,OAAO,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,CAACD,mBAAmB,EAAE;IACzBD,MAAM,CAACY,QAAQ,CACd,2BAA2B,EAC3B,mGACD,CAAC;IAED,OAAOV,gBAAgB;EACxB;EAEA,OAAOO,eAAe,GACnBC,sBAAsB,GACrBH,+BAA+B,GAC/BF,eAAe,GAChBC,uBAAuB;AAC3B,CAAC","ignoreList":[]}
@@ -8,12 +8,4 @@ export const isTeleportEnabled = teleport => {
8
8
  }
9
9
  return teleport?.enabled !== false;
10
10
  };
11
- export const shouldAttachBoundaryPortal = ({
12
- enabled,
13
- teleport
14
- }) => {
15
- "worklet";
16
-
17
- return enabled && isTeleportEnabled(teleport);
18
- };
19
11
  //# sourceMappingURL=teleport-control.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["isTeleportEnabled","teleport","enabled","shouldAttachBoundaryPortal"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/teleport-control.ts"],"mappings":";;AAEA,OAAO,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;AAED,OAAO,MAAMC,0BAA0B,GAAGA,CAAC;EAC1CD,OAAO;EACPD;AAID,CAAC,KAAK;EACL,SAAS;;EAET,OAAOC,OAAO,IAAIF,iBAAiB,CAACC,QAAQ,CAAC;AAC9C,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["isTeleportEnabled","teleport","enabled"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/teleport-control.ts"],"mappings":";;AAEA,OAAO,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","ignoreList":[]}