react-native-screen-transitions 3.9.0-beta.1 → 3.9.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (479) hide show
  1. package/lib/commonjs/shared/adapters/with-screen-transitions/index.js +20 -4
  2. package/lib/commonjs/shared/adapters/with-screen-transitions/index.js.map +1 -1
  3. package/lib/commonjs/shared/animation/transition-blocking.js +71 -0
  4. package/lib/commonjs/shared/animation/transition-blocking.js.map +1 -0
  5. package/lib/commonjs/shared/components/boundary/components/boundary-target.js +33 -28
  6. package/lib/commonjs/shared/components/boundary/components/boundary-target.js.map +1 -1
  7. package/lib/commonjs/shared/components/boundary/create-boundary-component.js +30 -95
  8. package/lib/commonjs/shared/components/boundary/create-boundary-component.js.map +1 -1
  9. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +75 -51
  10. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
  11. package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js +1 -0
  12. package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
  13. package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js +14 -2
  14. package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js.map +1 -1
  15. package/lib/commonjs/shared/components/boundary/hooks/use-register-target.js +32 -0
  16. package/lib/commonjs/shared/components/boundary/hooks/use-register-target.js.map +1 -0
  17. package/lib/commonjs/shared/components/boundary/index.js +1 -1
  18. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/components/host.js +41 -0
  19. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/components/host.js.map +1 -0
  20. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/helpers/host-name.js +14 -0
  21. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/helpers/host-name.js.map +1 -0
  22. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +224 -0
  23. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -0
  24. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/index.js +45 -0
  25. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -0
  26. package/lib/commonjs/shared/components/boundary/portal/components/{host.js → boundary-portal/components/host.js} +20 -18
  27. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -0
  28. package/lib/commonjs/shared/components/boundary/portal/components/{portal-boundary-host.js → boundary-portal/components/portal-boundary-host.js} +13 -12
  29. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -0
  30. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js +51 -0
  31. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +1 -0
  32. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/has-local-slot.js.map +1 -0
  33. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js +14 -0
  34. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +1 -0
  35. package/lib/commonjs/shared/components/boundary/portal/{utils → components/boundary-portal/helpers}/offset-style.js +1 -1
  36. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -0
  37. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +185 -0
  38. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -0
  39. package/lib/commonjs/shared/components/boundary/portal/{hooks → components/boundary-portal/hooks}/use-host-measurement.js +23 -5
  40. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -0
  41. package/lib/commonjs/shared/components/boundary/portal/{hooks → components/boundary-portal/hooks}/use-placeholder-styles.js +3 -6
  42. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-placeholder-styles.js.map +1 -0
  43. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/index.js +31 -0
  44. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/index.js.map +1 -0
  45. package/lib/commonjs/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/host-bounds.store.js +1 -1
  46. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/host-bounds.store.js.map +1 -0
  47. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -0
  48. package/lib/commonjs/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/portal-boundary-host.store.js +7 -12
  49. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -0
  50. package/lib/commonjs/shared/components/boundary/portal/index.js +1 -8
  51. package/lib/commonjs/shared/components/boundary/portal/index.js.map +1 -1
  52. package/lib/commonjs/shared/components/boundary/portal/teleport.js +4 -3
  53. package/lib/commonjs/shared/components/boundary/portal/teleport.js.map +1 -1
  54. package/lib/commonjs/shared/components/boundary/portal/utils/naming.js +1 -15
  55. package/lib/commonjs/shared/components/boundary/portal/utils/naming.js.map +1 -1
  56. package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js +19 -56
  57. package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js.map +1 -1
  58. package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js +90 -23
  59. package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
  60. package/lib/commonjs/shared/components/boundary/utils/destination-signals.js +41 -12
  61. package/lib/commonjs/shared/components/boundary/utils/destination-signals.js.map +1 -1
  62. package/lib/commonjs/shared/components/boundary/utils/measured-bounds.js +36 -1
  63. package/lib/commonjs/shared/components/boundary/utils/measured-bounds.js.map +1 -1
  64. package/lib/commonjs/shared/components/screen-container/layers/content.js +1 -1
  65. package/lib/commonjs/shared/configs/presets.js +2 -2
  66. package/lib/commonjs/shared/configs/presets.js.map +1 -1
  67. package/lib/commonjs/shared/constants.js +4 -0
  68. package/lib/commonjs/shared/constants.js.map +1 -1
  69. package/lib/commonjs/shared/index.js +13 -0
  70. package/lib/commonjs/shared/index.js.map +1 -1
  71. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -0
  72. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  73. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +10 -10
  74. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  75. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +10 -2
  76. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -1
  77. package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +1 -1
  78. package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  79. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +25 -3
  80. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  81. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +4 -6
  82. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  83. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js +2 -2
  84. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -1
  85. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +6 -1
  86. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  87. package/lib/commonjs/shared/providers/screen/gestures/shared/snapshot.js +2 -0
  88. package/lib/commonjs/shared/providers/screen/gestures/shared/snapshot.js.map +1 -1
  89. package/lib/commonjs/shared/providers/screen/gestures/shared/values.js +2 -0
  90. package/lib/commonjs/shared/providers/screen/gestures/shared/values.js.map +1 -1
  91. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +13 -1
  92. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  93. package/lib/commonjs/shared/providers/screen/styles/slot.provider.js +5 -3
  94. package/lib/commonjs/shared/providers/screen/styles/slot.provider.js.map +1 -1
  95. package/lib/commonjs/shared/providers/screen/styles/stores/slot-references.store.js +1 -1
  96. package/lib/commonjs/shared/providers/screen/styles/stores/slot-references.store.js.map +1 -1
  97. package/lib/commonjs/shared/stores/gesture.store.js +8 -0
  98. package/lib/commonjs/shared/stores/gesture.store.js.map +1 -1
  99. package/lib/commonjs/shared/stores/system.store.js +10 -2
  100. package/lib/commonjs/shared/stores/system.store.js.map +1 -1
  101. package/lib/commonjs/shared/utils/animation/animate-to-progress.js +24 -7
  102. package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
  103. package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js +15 -9
  104. package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  105. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js +2 -2
  106. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  107. package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js +2 -1
  108. package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
  109. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +178 -315
  110. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  111. package/lib/commonjs/shared/utils/bounds/navigation/zoom/config.js +12 -18
  112. package/lib/commonjs/shared/utils/bounds/navigation/zoom/config.js.map +1 -1
  113. package/lib/commonjs/shared/utils/bounds/navigation/zoom/drag.js +196 -0
  114. package/lib/commonjs/shared/utils/bounds/navigation/zoom/drag.js.map +1 -0
  115. package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js +94 -108
  116. package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  117. package/lib/commonjs/shared/utils/bounds/navigation/zoom/mask.js +72 -0
  118. package/lib/commonjs/shared/utils/bounds/navigation/zoom/mask.js.map +1 -0
  119. package/lib/commonjs/shared/utils/bounds/navigation/zoom/targets.js +55 -0
  120. package/lib/commonjs/shared/utils/bounds/navigation/zoom/targets.js.map +1 -0
  121. package/lib/module/shared/adapters/with-screen-transitions/index.js +19 -5
  122. package/lib/module/shared/adapters/with-screen-transitions/index.js.map +1 -1
  123. package/lib/module/shared/animation/transition-blocking.js +66 -0
  124. package/lib/module/shared/animation/transition-blocking.js.map +1 -0
  125. package/lib/module/shared/components/boundary/components/boundary-target.js +35 -30
  126. package/lib/module/shared/components/boundary/components/boundary-target.js.map +1 -1
  127. package/lib/module/shared/components/boundary/create-boundary-component.js +32 -97
  128. package/lib/module/shared/components/boundary/create-boundary-component.js.map +1 -1
  129. package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +79 -55
  130. package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
  131. package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js +1 -0
  132. package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
  133. package/lib/module/shared/components/boundary/hooks/use-measurer.js +15 -3
  134. package/lib/module/shared/components/boundary/hooks/use-measurer.js.map +1 -1
  135. package/lib/module/shared/components/boundary/hooks/use-register-target.js +27 -0
  136. package/lib/module/shared/components/boundary/hooks/use-register-target.js.map +1 -0
  137. package/lib/module/shared/components/boundary/index.js +1 -1
  138. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/components/host.js +36 -0
  139. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/components/host.js.map +1 -0
  140. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/helpers/host-name.js +9 -0
  141. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/helpers/host-name.js.map +1 -0
  142. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +219 -0
  143. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -0
  144. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/index.js +34 -0
  145. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -0
  146. package/lib/module/shared/components/boundary/portal/components/{host.js → boundary-portal/components/host.js} +20 -18
  147. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -0
  148. package/lib/module/shared/components/boundary/portal/components/{portal-boundary-host.js → boundary-portal/components/portal-boundary-host.js} +13 -12
  149. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -0
  150. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js +46 -0
  151. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +1 -0
  152. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/has-local-slot.js.map +1 -0
  153. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js +9 -0
  154. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +1 -0
  155. package/lib/module/shared/components/boundary/portal/{utils → components/boundary-portal/helpers}/offset-style.js +1 -1
  156. package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -0
  157. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +180 -0
  158. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -0
  159. package/lib/module/shared/components/boundary/portal/{hooks → components/boundary-portal/hooks}/use-host-measurement.js +23 -5
  160. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -0
  161. package/lib/module/shared/components/boundary/portal/{hooks → components/boundary-portal/hooks}/use-placeholder-styles.js +3 -6
  162. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-placeholder-styles.js.map +1 -0
  163. package/lib/module/shared/components/boundary/portal/components/boundary-portal/index.js +27 -0
  164. package/lib/module/shared/components/boundary/portal/components/boundary-portal/index.js.map +1 -0
  165. package/lib/module/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/host-bounds.store.js +1 -1
  166. package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/host-bounds.store.js.map +1 -0
  167. package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -0
  168. package/lib/module/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/portal-boundary-host.store.js +5 -10
  169. package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -0
  170. package/lib/module/shared/components/boundary/portal/index.js +1 -2
  171. package/lib/module/shared/components/boundary/portal/index.js.map +1 -1
  172. package/lib/module/shared/components/boundary/portal/teleport.js +3 -2
  173. package/lib/module/shared/components/boundary/portal/teleport.js.map +1 -1
  174. package/lib/module/shared/components/boundary/portal/utils/naming.js +0 -12
  175. package/lib/module/shared/components/boundary/portal/utils/naming.js.map +1 -1
  176. package/lib/module/shared/components/boundary/portal/utils/ownership.js +16 -52
  177. package/lib/module/shared/components/boundary/portal/utils/ownership.js.map +1 -1
  178. package/lib/module/shared/components/boundary/providers/boundary-root.provider.js +87 -20
  179. package/lib/module/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
  180. package/lib/module/shared/components/boundary/utils/destination-signals.js +39 -10
  181. package/lib/module/shared/components/boundary/utils/destination-signals.js.map +1 -1
  182. package/lib/module/shared/components/boundary/utils/measured-bounds.js +34 -0
  183. package/lib/module/shared/components/boundary/utils/measured-bounds.js.map +1 -1
  184. package/lib/module/shared/components/screen-container/layers/content.js +1 -1
  185. package/lib/module/shared/components/screen-container/layers/content.js.map +1 -1
  186. package/lib/module/shared/configs/presets.js +2 -2
  187. package/lib/module/shared/configs/presets.js.map +1 -1
  188. package/lib/module/shared/constants.js +4 -0
  189. package/lib/module/shared/constants.js.map +1 -1
  190. package/lib/module/shared/index.js +1 -0
  191. package/lib/module/shared/index.js.map +1 -1
  192. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -0
  193. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  194. package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +10 -10
  195. package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  196. package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +10 -2
  197. package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -1
  198. package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +1 -1
  199. package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  200. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +23 -2
  201. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  202. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +4 -6
  203. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  204. package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js +2 -2
  205. package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -1
  206. package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +6 -1
  207. package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  208. package/lib/module/shared/providers/screen/gestures/shared/snapshot.js +2 -0
  209. package/lib/module/shared/providers/screen/gestures/shared/snapshot.js.map +1 -1
  210. package/lib/module/shared/providers/screen/gestures/shared/values.js +2 -0
  211. package/lib/module/shared/providers/screen/gestures/shared/values.js.map +1 -1
  212. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +13 -1
  213. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  214. package/lib/module/shared/providers/screen/styles/slot.provider.js +5 -3
  215. package/lib/module/shared/providers/screen/styles/slot.provider.js.map +1 -1
  216. package/lib/module/shared/providers/screen/styles/stores/slot-references.store.js +1 -1
  217. package/lib/module/shared/providers/screen/styles/stores/slot-references.store.js.map +1 -1
  218. package/lib/module/shared/stores/gesture.store.js +8 -0
  219. package/lib/module/shared/stores/gesture.store.js.map +1 -1
  220. package/lib/module/shared/stores/system.store.js +10 -2
  221. package/lib/module/shared/stores/system.store.js.map +1 -1
  222. package/lib/module/shared/types/bounds.types.js +26 -0
  223. package/lib/module/shared/types/bounds.types.js.map +1 -1
  224. package/lib/module/shared/utils/animation/animate-to-progress.js +24 -7
  225. package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
  226. package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js +15 -9
  227. package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  228. package/lib/module/shared/utils/bounds/navigation/reveal/build.js +2 -2
  229. package/lib/module/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  230. package/lib/module/shared/utils/bounds/navigation/reveal/math.js +2 -1
  231. package/lib/module/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
  232. package/lib/module/shared/utils/bounds/navigation/zoom/build.js +182 -319
  233. package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  234. package/lib/module/shared/utils/bounds/navigation/zoom/config.js +11 -17
  235. package/lib/module/shared/utils/bounds/navigation/zoom/config.js.map +1 -1
  236. package/lib/module/shared/utils/bounds/navigation/zoom/drag.js +184 -0
  237. package/lib/module/shared/utils/bounds/navigation/zoom/drag.js.map +1 -0
  238. package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js +91 -102
  239. package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  240. package/lib/module/shared/utils/bounds/navigation/zoom/mask.js +67 -0
  241. package/lib/module/shared/utils/bounds/navigation/zoom/mask.js.map +1 -0
  242. package/lib/module/shared/utils/bounds/navigation/zoom/targets.js +50 -0
  243. package/lib/module/shared/utils/bounds/navigation/zoom/targets.js.map +1 -0
  244. package/lib/typescript/shared/adapters/with-screen-transitions/index.d.ts +4 -1
  245. package/lib/typescript/shared/adapters/with-screen-transitions/index.d.ts.map +1 -1
  246. package/lib/typescript/shared/animation/transition-blocking.d.ts +33 -0
  247. package/lib/typescript/shared/animation/transition-blocking.d.ts.map +1 -0
  248. package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts +3 -1
  249. package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts.map +1 -1
  250. package/lib/typescript/shared/components/boundary/create-boundary-component.d.ts.map +1 -1
  251. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts +2 -1
  252. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts.map +1 -1
  253. package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts.map +1 -1
  254. package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts.map +1 -1
  255. package/lib/typescript/shared/components/boundary/hooks/use-register-target.d.ts +10 -0
  256. package/lib/typescript/shared/components/boundary/hooks/use-register-target.d.ts.map +1 -0
  257. package/lib/typescript/shared/components/boundary/index.d.ts +2 -2
  258. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/components/host.d.ts +10 -0
  259. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/components/host.d.ts.map +1 -0
  260. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/helpers/host-name.d.ts +2 -0
  261. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/helpers/host-name.d.ts.map +1 -0
  262. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts +12 -0
  263. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts.map +1 -0
  264. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/index.d.ts +9 -0
  265. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/index.d.ts.map +1 -0
  266. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/host.d.ts.map +1 -0
  267. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.d.ts.map +1 -0
  268. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts +13 -0
  269. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts.map +1 -0
  270. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/has-local-slot.d.ts +3 -0
  271. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/has-local-slot.d.ts.map +1 -0
  272. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts +2 -0
  273. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts.map +1 -0
  274. package/lib/typescript/shared/components/boundary/portal/{utils → components/boundary-portal/helpers}/offset-style.d.ts +1 -1
  275. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts.map +1 -0
  276. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts +12 -0
  277. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts.map +1 -0
  278. package/lib/typescript/shared/components/boundary/portal/{hooks → components/boundary-portal/hooks}/use-host-measurement.d.ts +5 -1
  279. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.d.ts.map +1 -0
  280. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-placeholder-styles.d.ts +12 -0
  281. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-placeholder-styles.d.ts.map +1 -0
  282. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/index.d.ts +12 -0
  283. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/index.d.ts.map +1 -0
  284. package/lib/typescript/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/host-bounds.store.d.ts +1 -1
  285. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/host-bounds.store.d.ts.map +1 -0
  286. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.d.ts.map +1 -0
  287. package/lib/typescript/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/portal-boundary-host.store.d.ts +3 -3
  288. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.d.ts.map +1 -0
  289. package/lib/typescript/shared/components/boundary/portal/index.d.ts +1 -2
  290. package/lib/typescript/shared/components/boundary/portal/index.d.ts.map +1 -1
  291. package/lib/typescript/shared/components/boundary/portal/teleport.d.ts +1 -0
  292. package/lib/typescript/shared/components/boundary/portal/teleport.d.ts.map +1 -1
  293. package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts +0 -2
  294. package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts.map +1 -1
  295. package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts +9 -10
  296. package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts.map +1 -1
  297. package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts +22 -21
  298. package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
  299. package/lib/typescript/shared/components/boundary/utils/destination-signals.d.ts +9 -2
  300. package/lib/typescript/shared/components/boundary/utils/destination-signals.d.ts.map +1 -1
  301. package/lib/typescript/shared/components/boundary/utils/measured-bounds.d.ts +8 -0
  302. package/lib/typescript/shared/components/boundary/utils/measured-bounds.d.ts.map +1 -1
  303. package/lib/typescript/shared/constants.d.ts.map +1 -1
  304. package/lib/typescript/shared/index.d.ts +2 -1
  305. package/lib/typescript/shared/index.d.ts.map +1 -1
  306. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
  307. package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts +2 -0
  308. package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -1
  309. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts +2 -1
  310. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts.map +1 -1
  311. package/lib/typescript/shared/providers/screen/gestures/pan/use-build-pan-gesture.d.ts.map +1 -1
  312. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts +2 -0
  313. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts.map +1 -1
  314. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts +1 -1
  315. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -1
  316. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.d.ts.map +1 -1
  317. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.d.ts.map +1 -1
  318. package/lib/typescript/shared/providers/screen/gestures/shared/snapshot.d.ts.map +1 -1
  319. package/lib/typescript/shared/providers/screen/gestures/shared/values.d.ts.map +1 -1
  320. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +5 -0
  321. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  322. package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts +1 -0
  323. package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts.map +1 -1
  324. package/lib/typescript/shared/providers/screen/styles/stores/slot-references.store.d.ts.map +1 -1
  325. package/lib/typescript/shared/stores/gesture.store.d.ts +4 -0
  326. package/lib/typescript/shared/stores/gesture.store.d.ts.map +1 -1
  327. package/lib/typescript/shared/stores/system.store.d.ts.map +1 -1
  328. package/lib/typescript/shared/types/animation.types.d.ts +3 -3
  329. package/lib/typescript/shared/types/bounds.types.d.ts +122 -90
  330. package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
  331. package/lib/typescript/shared/types/gesture.types.d.ts +10 -0
  332. package/lib/typescript/shared/types/gesture.types.d.ts.map +1 -1
  333. package/lib/typescript/shared/types/index.d.ts +1 -1
  334. package/lib/typescript/shared/types/index.d.ts.map +1 -1
  335. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
  336. package/lib/typescript/shared/utils/bounds/helpers/create-bounds-accessor-core.d.ts.map +1 -1
  337. package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts.map +1 -1
  338. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts +1 -1
  339. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  340. package/lib/typescript/shared/utils/bounds/navigation/zoom/config.d.ts +7 -17
  341. package/lib/typescript/shared/utils/bounds/navigation/zoom/config.d.ts.map +1 -1
  342. package/lib/typescript/shared/utils/bounds/navigation/zoom/drag.d.ts +55 -0
  343. package/lib/typescript/shared/utils/bounds/navigation/zoom/drag.d.ts.map +1 -0
  344. package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts +31 -34
  345. package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts.map +1 -1
  346. package/lib/typescript/shared/utils/bounds/navigation/zoom/mask.d.ts +25 -0
  347. package/lib/typescript/shared/utils/bounds/navigation/zoom/mask.d.ts.map +1 -0
  348. package/lib/typescript/shared/utils/bounds/navigation/zoom/targets.d.ts +16 -0
  349. package/lib/typescript/shared/utils/bounds/navigation/zoom/targets.d.ts.map +1 -0
  350. package/lib/typescript/shared/utils/bounds/navigation/zoom/types.d.ts +1 -1
  351. package/lib/typescript/shared/utils/bounds/navigation/zoom/types.d.ts.map +1 -1
  352. package/lib/typescript/shared/utils/bounds/types/options.d.ts +6 -2
  353. package/lib/typescript/shared/utils/bounds/types/options.d.ts.map +1 -1
  354. package/package.json +1 -1
  355. package/src/shared/adapters/with-screen-transitions/index.tsx +30 -9
  356. package/src/shared/animation/transition-blocking.ts +79 -0
  357. package/src/shared/components/boundary/components/boundary-target.tsx +47 -43
  358. package/src/shared/components/boundary/create-boundary-component.tsx +35 -150
  359. package/src/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.ts +106 -81
  360. package/src/shared/components/boundary/hooks/use-boundary-measurement.ts +1 -0
  361. package/src/shared/components/boundary/hooks/use-measurer.ts +12 -4
  362. package/src/shared/components/boundary/hooks/use-register-target.ts +43 -0
  363. package/src/shared/components/boundary/index.tsx +2 -2
  364. package/src/shared/components/boundary/portal/components/boundary-content-portal/components/host.tsx +52 -0
  365. package/src/shared/components/boundary/portal/components/boundary-content-portal/helpers/host-name.ts +9 -0
  366. package/src/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +317 -0
  367. package/src/shared/components/boundary/portal/components/boundary-content-portal/index.tsx +62 -0
  368. package/src/shared/components/boundary/portal/components/{host.tsx → boundary-portal/components/host.tsx} +17 -17
  369. package/src/shared/components/boundary/portal/components/{portal-boundary-host.tsx → boundary-portal/components/portal-boundary-host.tsx} +14 -13
  370. package/src/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.tsx +79 -0
  371. package/src/shared/components/boundary/portal/{utils → components/boundary-portal/helpers}/has-local-slot.ts +1 -1
  372. package/src/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.ts +10 -0
  373. package/src/shared/components/boundary/portal/{utils → components/boundary-portal/helpers}/offset-style.ts +2 -2
  374. package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +254 -0
  375. package/src/shared/components/boundary/portal/{hooks → components/boundary-portal/hooks}/use-host-measurement.ts +38 -8
  376. package/src/shared/components/boundary/portal/{hooks → components/boundary-portal/hooks}/use-placeholder-styles.ts +4 -15
  377. package/src/shared/components/boundary/portal/components/boundary-portal/index.tsx +35 -0
  378. package/src/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/host-bounds.store.ts +2 -2
  379. package/src/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/portal-boundary-host.store.ts +10 -15
  380. package/src/shared/components/boundary/portal/index.ts +1 -2
  381. package/src/shared/components/boundary/portal/teleport.ts +3 -2
  382. package/src/shared/components/boundary/portal/utils/naming.ts +0 -19
  383. package/src/shared/components/boundary/portal/utils/ownership.ts +32 -88
  384. package/src/shared/components/boundary/providers/boundary-root.provider.tsx +218 -78
  385. package/src/shared/components/boundary/utils/destination-signals.ts +38 -14
  386. package/src/shared/components/boundary/utils/measured-bounds.ts +48 -0
  387. package/src/shared/components/screen-container/layers/content.tsx +1 -1
  388. package/src/shared/configs/presets.ts +2 -2
  389. package/src/shared/constants.ts +4 -0
  390. package/src/shared/index.ts +6 -0
  391. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/index.ts +8 -0
  392. package/src/shared/providers/screen/gestures/pan/activation/use-pan-activation.ts +16 -7
  393. package/src/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.ts +18 -1
  394. package/src/shared/providers/screen/gestures/pan/use-build-pan-gesture.ts +1 -0
  395. package/src/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.ts +40 -2
  396. package/src/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +7 -11
  397. package/src/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.ts +12 -15
  398. package/src/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.ts +6 -1
  399. package/src/shared/providers/screen/gestures/shared/snapshot.ts +2 -0
  400. package/src/shared/providers/screen/gestures/shared/values.ts +2 -0
  401. package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +15 -1
  402. package/src/shared/providers/screen/styles/slot.provider.tsx +4 -2
  403. package/src/shared/providers/screen/styles/stores/slot-references.store.ts +2 -1
  404. package/src/shared/stores/gesture.store.ts +12 -0
  405. package/src/shared/stores/system.store.ts +10 -4
  406. package/src/shared/types/animation.types.ts +3 -3
  407. package/src/shared/types/bounds.types.ts +128 -92
  408. package/src/shared/types/gesture.types.ts +10 -0
  409. package/src/shared/types/index.ts +2 -0
  410. package/src/shared/utils/animation/animate-to-progress.ts +23 -7
  411. package/src/shared/utils/bounds/helpers/create-bounds-accessor-core.ts +18 -11
  412. package/src/shared/utils/bounds/navigation/reveal/build.ts +2 -2
  413. package/src/shared/utils/bounds/navigation/reveal/math.ts +2 -1
  414. package/src/shared/utils/bounds/navigation/zoom/build.ts +224 -412
  415. package/src/shared/utils/bounds/navigation/zoom/config.ts +15 -18
  416. package/src/shared/utils/bounds/navigation/zoom/drag.ts +327 -0
  417. package/src/shared/utils/bounds/navigation/zoom/helpers.ts +122 -184
  418. package/src/shared/utils/bounds/navigation/zoom/mask.ts +130 -0
  419. package/src/shared/utils/bounds/navigation/zoom/targets.ts +74 -0
  420. package/src/shared/utils/bounds/navigation/zoom/types.ts +1 -1
  421. package/src/shared/utils/bounds/types/options.ts +9 -2
  422. package/lib/commonjs/shared/components/boundary/portal/components/boundary-local-portal-host.js +0 -58
  423. package/lib/commonjs/shared/components/boundary/portal/components/boundary-local-portal-host.js.map +0 -1
  424. package/lib/commonjs/shared/components/boundary/portal/components/host.js.map +0 -1
  425. package/lib/commonjs/shared/components/boundary/portal/components/portal-boundary-host.js.map +0 -1
  426. package/lib/commonjs/shared/components/boundary/portal/components/portal.js +0 -272
  427. package/lib/commonjs/shared/components/boundary/portal/components/portal.js.map +0 -1
  428. package/lib/commonjs/shared/components/boundary/portal/hooks/use-host-measurement.js.map +0 -1
  429. package/lib/commonjs/shared/components/boundary/portal/hooks/use-placeholder-styles.js.map +0 -1
  430. package/lib/commonjs/shared/components/boundary/portal/stores/host-bounds.store.js.map +0 -1
  431. package/lib/commonjs/shared/components/boundary/portal/stores/host-registry.store.js.map +0 -1
  432. package/lib/commonjs/shared/components/boundary/portal/stores/portal-boundary-host.store.js.map +0 -1
  433. package/lib/commonjs/shared/components/boundary/portal/utils/has-local-slot.js.map +0 -1
  434. package/lib/commonjs/shared/components/boundary/portal/utils/offset-style.js.map +0 -1
  435. package/lib/commonjs/shared/utils/bounds/navigation/zoom/math.js +0 -25
  436. package/lib/commonjs/shared/utils/bounds/navigation/zoom/math.js.map +0 -1
  437. package/lib/module/shared/components/boundary/portal/components/boundary-local-portal-host.js +0 -53
  438. package/lib/module/shared/components/boundary/portal/components/boundary-local-portal-host.js.map +0 -1
  439. package/lib/module/shared/components/boundary/portal/components/host.js.map +0 -1
  440. package/lib/module/shared/components/boundary/portal/components/portal-boundary-host.js.map +0 -1
  441. package/lib/module/shared/components/boundary/portal/components/portal.js +0 -267
  442. package/lib/module/shared/components/boundary/portal/components/portal.js.map +0 -1
  443. package/lib/module/shared/components/boundary/portal/hooks/use-host-measurement.js.map +0 -1
  444. package/lib/module/shared/components/boundary/portal/hooks/use-placeholder-styles.js.map +0 -1
  445. package/lib/module/shared/components/boundary/portal/stores/host-bounds.store.js.map +0 -1
  446. package/lib/module/shared/components/boundary/portal/stores/host-registry.store.js.map +0 -1
  447. package/lib/module/shared/components/boundary/portal/stores/portal-boundary-host.store.js.map +0 -1
  448. package/lib/module/shared/components/boundary/portal/utils/has-local-slot.js.map +0 -1
  449. package/lib/module/shared/components/boundary/portal/utils/offset-style.js.map +0 -1
  450. package/lib/module/shared/utils/bounds/navigation/zoom/math.js +0 -20
  451. package/lib/module/shared/utils/bounds/navigation/zoom/math.js.map +0 -1
  452. package/lib/typescript/shared/components/boundary/portal/components/boundary-local-portal-host.d.ts +0 -8
  453. package/lib/typescript/shared/components/boundary/portal/components/boundary-local-portal-host.d.ts.map +0 -1
  454. package/lib/typescript/shared/components/boundary/portal/components/host.d.ts.map +0 -1
  455. package/lib/typescript/shared/components/boundary/portal/components/portal-boundary-host.d.ts.map +0 -1
  456. package/lib/typescript/shared/components/boundary/portal/components/portal.d.ts +0 -20
  457. package/lib/typescript/shared/components/boundary/portal/components/portal.d.ts.map +0 -1
  458. package/lib/typescript/shared/components/boundary/portal/hooks/use-host-measurement.d.ts.map +0 -1
  459. package/lib/typescript/shared/components/boundary/portal/hooks/use-placeholder-styles.d.ts +0 -17
  460. package/lib/typescript/shared/components/boundary/portal/hooks/use-placeholder-styles.d.ts.map +0 -1
  461. package/lib/typescript/shared/components/boundary/portal/stores/host-bounds.store.d.ts.map +0 -1
  462. package/lib/typescript/shared/components/boundary/portal/stores/host-registry.store.d.ts.map +0 -1
  463. package/lib/typescript/shared/components/boundary/portal/stores/portal-boundary-host.store.d.ts.map +0 -1
  464. package/lib/typescript/shared/components/boundary/portal/utils/has-local-slot.d.ts +0 -3
  465. package/lib/typescript/shared/components/boundary/portal/utils/has-local-slot.d.ts.map +0 -1
  466. package/lib/typescript/shared/components/boundary/portal/utils/offset-style.d.ts.map +0 -1
  467. package/lib/typescript/shared/utils/bounds/navigation/zoom/math.d.ts +0 -8
  468. package/lib/typescript/shared/utils/bounds/navigation/zoom/math.d.ts.map +0 -1
  469. package/src/shared/components/boundary/portal/components/boundary-local-portal-host.tsx +0 -66
  470. package/src/shared/components/boundary/portal/components/portal.tsx +0 -412
  471. package/src/shared/utils/bounds/navigation/zoom/math.ts +0 -25
  472. /package/lib/commonjs/shared/components/boundary/portal/{utils → components/boundary-portal/helpers}/has-local-slot.js +0 -0
  473. /package/lib/commonjs/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/host-registry.store.js +0 -0
  474. /package/lib/module/shared/components/boundary/portal/{utils → components/boundary-portal/helpers}/has-local-slot.js +0 -0
  475. /package/lib/module/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/host-registry.store.js +0 -0
  476. /package/lib/typescript/shared/components/boundary/portal/components/{host.d.ts → boundary-portal/components/host.d.ts} +0 -0
  477. /package/lib/typescript/shared/components/boundary/portal/components/{portal-boundary-host.d.ts → boundary-portal/components/portal-boundary-host.d.ts} +0 -0
  478. /package/lib/typescript/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/host-registry.store.d.ts +0 -0
  479. /package/src/shared/components/boundary/portal/{stores → components/boundary-portal/stores}/host-registry.store.ts +0 -0
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useInitialDestinationMeasurement = void 0;
7
+ var _react = require("react");
7
8
  var _reactNativeReanimated = require("react-native-reanimated");
8
9
  var _descriptors = require("../../../../providers/screen/descriptors");
9
10
  var _animation = require("../../../../stores/animation.store");
@@ -13,18 +14,18 @@ var _links = require("../../../../stores/bounds/internals/links");
13
14
  var _state = require("../../../../stores/bounds/internals/state");
14
15
  var _system = require("../../../../stores/system.store");
15
16
  var _logger = require("../../../../utils/logger");
16
- var _ownership = require("../../portal/utils/ownership");
17
17
  var _destinationSignals = require("../../utils/destination-signals");
18
- const VIEWPORT_RETRY_DELAY_MS = 100;
18
+ const HANDSHAKE_RETRY_DELAY_MS = 100;
19
19
  /**
20
- * A destination that keeps failing its measurement guards must not hold the
21
- * transition gate forever after this budget the block is released with a
22
- * warning so the open proceeds without that boundary.
20
+ * A destination whose initial handshake never completes must not hold the
21
+ * transition gate forever. After this budget, release the block with a warning
22
+ * so the open proceeds without that boundary.
23
23
  */
24
- const MAX_VIEWPORT_RETRIES = 20;
24
+ const MAX_HANDSHAKE_RETRIES = 20;
25
25
  const useInitialDestinationMeasurement = ({
26
26
  boundTag,
27
27
  enabled,
28
+ escapeClipping,
28
29
  measureBoundary
29
30
  }) => {
30
31
  const {
@@ -37,9 +38,9 @@ const useInitialDestinationMeasurement = ({
37
38
  const destinationPairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.destinationPairKey);
38
39
  const ancestorDestinationPairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.ancestorDestinationPairKey);
39
40
  const destinationEnabled = enabled && !nextScreenKey;
41
+ const initialDestinationPairKey = destinationPairKey ?? ancestorDestinationPairKey;
40
42
  const progress = _animation.AnimationStore.getValue(currentScreenKey, "transitionProgress");
41
43
  const {
42
- pendingLifecycleRequestKind,
43
44
  actions: {
44
45
  blockLifecycleStart,
45
46
  unblockLifecycleStart
@@ -47,93 +48,116 @@ const useInitialDestinationMeasurement = ({
47
48
  } = _system.SystemStore.getBag(currentScreenKey);
48
49
  const isBlockingLifecycleStart = (0, _reactNativeReanimated.useSharedValue)(0);
49
50
  const retryToken = (0, _reactNativeReanimated.useSharedValue)(0);
50
- const viewportRetries = (0, _reactNativeReanimated.useSharedValue)(0);
51
+ const handshakeRetries = (0, _reactNativeReanimated.useSharedValue)(0);
51
52
  const hasGivenUp = (0, _reactNativeReanimated.useSharedValue)(0);
52
- const releaseLifecycleStartBlock = () => {
53
+ const releaseLifecycleStartBlock = (0, _react.useCallback)(() => {
53
54
  "worklet";
54
55
 
55
56
  (0, _reactNativeReanimated.cancelAnimation)(retryToken);
56
57
  if (!isBlockingLifecycleStart.get()) {
57
58
  return;
58
59
  }
59
- unblockLifecycleStart();
60
60
  isBlockingLifecycleStart.set(0);
61
- };
61
+ unblockLifecycleStart();
62
+ }, [isBlockingLifecycleStart, retryToken, unblockLifecycleStart]);
63
+ const claimLifecycleStartBlock = (0, _react.useCallback)(() => {
64
+ "worklet";
65
+
66
+ // The progress check and block claim must share one UI-thread operation.
67
+ // Otherwise a JS-thread layout effect can observe zero, enqueue the block,
68
+ // and let the opening animation start before that block reaches the UI thread.
69
+ if (progress.get() > 0 || isBlockingLifecycleStart.get()) {
70
+ return;
71
+ }
72
+ blockLifecycleStart();
73
+ isBlockingLifecycleStart.set(1);
74
+ }, [blockLifecycleStart, isBlockingLifecycleStart, progress]);
75
+ (0, _react.useLayoutEffect)(() => {
76
+ if (!destinationEnabled || !initialDestinationPairKey) {
77
+ return;
78
+ }
79
+ (0, _reactNativeReanimated.runOnUI)(claimLifecycleStartBlock)();
80
+ return () => {
81
+ if (escapeClipping) {
82
+ // The portal host owns the release after this boundary hands off.
83
+ return;
84
+ }
85
+
86
+ // This is an abandonment fallback, not a second release. Run it on the UI
87
+ // runtime so it serializes with the handshake's guarded release.
88
+ (0, _reactNativeReanimated.runOnUI)(releaseLifecycleStartBlock)();
89
+ };
90
+ }, [claimLifecycleStartBlock, destinationEnabled, escapeClipping, initialDestinationPairKey, releaseLifecycleStartBlock]);
62
91
  (0, _reactNativeReanimated.useAnimatedReaction)(() => {
63
92
  "worklet";
64
93
 
65
94
  const retryTick = retryToken.get();
66
- const hasPendingOpenRequest = pendingLifecycleRequestKind.get() === _system.LifecycleTransitionRequestKind.Open;
67
95
  const isWaitingForOpenToStart = progress.get() <= 0;
68
- if (!hasPendingOpenRequest || !isWaitingForOpenToStart) {
69
- return [0, retryTick];
70
- }
71
- const measurePairKey = (0, _destinationSignals.getInitialDestinationMeasurePairKey)({
72
- enabled: destinationEnabled,
96
+ const sourceScreenKey = initialDestinationPairKey ? (0, _linkPairs.getSourceScreenKeyFromPairKey)(initialDestinationPairKey) : undefined;
97
+ const signal = (0, _destinationSignals.getInitialDestinationMeasurementSignal)({
98
+ enabled: destinationEnabled && isWaitingForOpenToStart && isBlockingLifecycleStart.get() > 0,
73
99
  destinationPairKey,
74
100
  ancestorDestinationPairKey,
75
101
  linkId: linkKey,
76
102
  group,
77
- linkState: destinationEnabled && (destinationPairKey || ancestorDestinationPairKey) ? _state.pairs.get() : undefined
103
+ destinationPresent: (0, _entries.getEntry)(tag, currentScreenKey) !== null,
104
+ sourcePresent: sourceScreenKey !== undefined && (0, _entries.getEntry)(tag, sourceScreenKey) !== null,
105
+ linkState: initialDestinationPairKey ? _state.pairs.get() : undefined
78
106
  });
79
- return [measurePairKey, retryTick];
80
- }, ([measurePairKey, retryTick], previous) => {
107
+ return [signal?.pairKey ?? null, signal?.action ?? null, retryTick];
108
+ }, ([measurePairKey, action, retryTick], previous) => {
81
109
  "worklet";
82
110
 
83
- if (!measurePairKey) {
111
+ if (!measurePairKey || !action) {
84
112
  return;
85
113
  }
86
114
  const previousMeasurePairKey = previous?.[0];
87
- const previousRetryTick = previous?.[1];
88
- const shouldAttemptMeasure = measurePairKey !== previousMeasurePairKey || retryTick !== previousRetryTick;
89
- if (!shouldAttemptMeasure) {
115
+ const previousAction = previous?.[1];
116
+ const previousRetryTick = previous?.[2];
117
+ const shouldHandleSignal = measurePairKey !== previousMeasurePairKey || action !== previousAction || retryTick !== previousRetryTick;
118
+ if (!shouldHandleSignal) {
90
119
  return;
91
120
  }
92
121
  if (hasGivenUp.get()) {
93
122
  return;
94
123
  }
95
- if (!isBlockingLifecycleStart.get()) {
96
- blockLifecycleStart();
97
- isBlockingLifecycleStart.set(1);
124
+ if (action === "release") {
125
+ releaseLifecycleStartBlock();
126
+ handshakeRetries.set(0);
127
+ return;
98
128
  }
99
- measureBoundary({
100
- type: "destination",
101
- pairKey: measurePairKey
102
- });
103
- const destinationAttached = (0, _links.getDestination)(measurePairKey, linkKey) !== null;
104
- if (destinationAttached) {
105
- const linkState = _state.pairs.get();
106
- const link = (0, _links.getLink)(measurePairKey, linkKey);
107
- const sourceScreenKey = (0, _linkPairs.getSourceScreenKeyFromPairKey)(measurePairKey);
108
- const sourceEntry = (0, _entries.getEntry)(tag, sourceScreenKey);
109
- const sourceEntryUsesDestinationEscapeHost = sourceEntry?.handoff === true && sourceEntry.escapeClipping === true;
110
- const shouldWaitForEscapeClippingHost = (0, _ownership.usesEscapeClippingHost)(link) || sourceEntryUsesDestinationEscapeHost || (0, _ownership.hasHandoffEscapeContinuation)({
111
- linkKey,
112
- linkState,
113
- sourceScreenKey
129
+ if (action === "measure") {
130
+ measureBoundary({
131
+ type: "destination",
132
+ pairKey: measurePairKey
114
133
  });
115
- if (shouldWaitForEscapeClippingHost) {
134
+ }
135
+ const link = (0, _links.getLink)(measurePairKey, linkKey);
136
+ const linkComplete = !!link?.source && !!link.destination;
137
+ if (linkComplete || action === "complete") {
138
+ (0, _reactNativeReanimated.cancelAnimation)(retryToken);
139
+ handshakeRetries.set(0);
140
+ if (escapeClipping) {
116
141
  // Screen-level escape has a second readiness phase after destination
117
- // measurement: the host must commit before the transition starts, or
142
+ // matching: the host must commit before the transition starts, or
118
143
  // the payload can disappear for a frame.
119
144
  return;
120
145
  }
121
146
  releaseLifecycleStartBlock();
122
- viewportRetries.set(0);
123
147
  return;
124
148
  }
125
- if (viewportRetries.get() >= MAX_VIEWPORT_RETRIES) {
149
+ if (handshakeRetries.get() >= MAX_HANDSHAKE_RETRIES) {
126
150
  hasGivenUp.set(1);
127
151
  releaseLifecycleStartBlock();
128
- _logger.logger.warn(`Destination boundary "${linkKey}" never produced a valid measurement after ${MAX_VIEWPORT_RETRIES} attempts; releasing the transition gate without it. The boundary is likely off-viewport (e.g. an inactive group member on a paged screen) or unmounted.`);
152
+ _logger.logger.warn(`Boundary "${linkKey}" never formed a complete source/destination link after ${MAX_HANDSHAKE_RETRIES} attempts; releasing the transition gate without it. One side is likely off-viewport or unmounted.`);
129
153
  return;
130
154
  }
131
155
 
132
- // Destination did not attach (malformed off-screen measurement); retry
133
- // after the retry token advances while the lifecycle stays blocked.
134
- viewportRetries.set(viewportRetries.get() + 1);
156
+ // Keep the lifecycle blocked while registration, measurement, or source
157
+ // attachment settles. The retry token also retries rejected destination bounds.
158
+ handshakeRetries.set(handshakeRetries.get() + 1);
135
159
  (0, _reactNativeReanimated.cancelAnimation)(retryToken);
136
- retryToken.set((0, _reactNativeReanimated.withDelay)(VIEWPORT_RETRY_DELAY_MS, (0, _reactNativeReanimated.withTiming)(retryToken.get() + 1, {
160
+ retryToken.set((0, _reactNativeReanimated.withDelay)(HANDSHAKE_RETRY_DELAY_MS, (0, _reactNativeReanimated.withTiming)(retryToken.get() + 1, {
137
161
  duration: 0
138
162
  })));
139
163
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeReanimated","require","_descriptors","_animation","_linkPairs","_entries","_links","_state","_system","_logger","_ownership","_destinationSignals","VIEWPORT_RETRY_DELAY_MS","MAX_VIEWPORT_RETRIES","useInitialDestinationMeasurement","boundTag","enabled","measureBoundary","tag","linkKey","group","currentScreenKey","useDescriptorsStore","s","derivations","nextScreenKey","destinationPairKey","ancestorDestinationPairKey","destinationEnabled","progress","AnimationStore","getValue","pendingLifecycleRequestKind","actions","blockLifecycleStart","unblockLifecycleStart","SystemStore","getBag","isBlockingLifecycleStart","useSharedValue","retryToken","viewportRetries","hasGivenUp","releaseLifecycleStartBlock","cancelAnimation","get","set","useAnimatedReaction","retryTick","hasPendingOpenRequest","LifecycleTransitionRequestKind","Open","isWaitingForOpenToStart","measurePairKey","getInitialDestinationMeasurePairKey","linkId","linkState","pairs","undefined","previous","previousMeasurePairKey","previousRetryTick","shouldAttemptMeasure","type","pairKey","destinationAttached","getDestination","link","getLink","sourceScreenKey","getSourceScreenKeyFromPairKey","sourceEntry","getEntry","sourceEntryUsesDestinationEscapeHost","handoff","escapeClipping","shouldWaitForEscapeClippingHost","usesEscapeClippingHost","hasHandoffEscapeContinuation","logger","warn","withDelay","withTiming","duration","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.ts"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AAOA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAIA,IAAAM,MAAA,GAAAN,OAAA;AAEA,IAAAO,OAAA,GAAAP,OAAA;AAIA,IAAAQ,OAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AAKA,IAAAU,mBAAA,GAAAV,OAAA;AAEA,MAAMW,uBAAuB,GAAG,GAAG;AACnC;AACA;AACA;AACA;AACA;AACA,MAAMC,oBAAoB,GAAG,EAAE;AAQxB,MAAMC,gCAAgC,GAAGA,CAAC;EAChDC,QAAQ;EACRC,OAAO;EACPC;AACuC,CAAC,KAAK;EAC7C,MAAM;IAAEC,GAAG;IAAEC,OAAO;IAAEC;EAAM,CAAC,GAAGL,QAAQ;EACxC,MAAMM,gBAAgB,GAAG,IAAAC,gCAAmB,EAC1CC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACH,gBACtB,CAAC;EACD,MAAMI,aAAa,GAAG,IAAAH,gCAAmB,EAAEC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACC,aAAa,CAAC;EAC7E,MAAMC,kBAAkB,GAAG,IAAAJ,gCAAmB,EAC5CC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACE,kBACtB,CAAC;EACD,MAAMC,0BAA0B,GAAG,IAAAL,gCAAmB,EACpDC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACG,0BACtB,CAAC;EACD,MAAMC,kBAAkB,GAAGZ,OAAO,IAAI,CAACS,aAAa;EACpD,MAAMI,QAAQ,GAAGC,yBAAc,CAACC,QAAQ,CACvCV,gBAAgB,EAChB,oBACD,CAAC;EAED,MAAM;IACLW,2BAA2B;IAC3BC,OAAO,EAAE;MAAEC,mBAAmB;MAAEC;IAAsB;EACvD,CAAC,GAAGC,mBAAW,CAACC,MAAM,CAAChB,gBAAgB,CAAC;EAExC,MAAMiB,wBAAwB,GAAG,IAAAC,qCAAc,EAAC,CAAC,CAAC;EAClD,MAAMC,UAAU,GAAG,IAAAD,qCAAc,EAAC,CAAC,CAAC;EACpC,MAAME,eAAe,GAAG,IAAAF,qCAAc,EAAC,CAAC,CAAC;EACzC,MAAMG,UAAU,GAAG,IAAAH,qCAAc,EAAC,CAAC,CAAC;EAEpC,MAAMI,0BAA0B,GAAGA,CAAA,KAAM;IACxC,SAAS;;IACT,IAAAC,sCAAe,EAACJ,UAAU,CAAC;IAE3B,IAAI,CAACF,wBAAwB,CAACO,GAAG,CAAC,CAAC,EAAE;MACpC;IACD;IAEAV,qBAAqB,CAAC,CAAC;IACvBG,wBAAwB,CAACQ,GAAG,CAAC,CAAC,CAAC;EAChC,CAAC;EAED,IAAAC,0CAAmB,EAClB,MAAM;IACL,SAAS;;IACT,MAAMC,SAAS,GAAGR,UAAU,CAACK,GAAG,CAAC,CAAC;IAElC,MAAMI,qBAAqB,GAC1BjB,2BAA2B,CAACa,GAAG,CAAC,CAAC,KACjCK,sCAA8B,CAACC,IAAI;IAEpC,MAAMC,uBAAuB,GAAGvB,QAAQ,CAACgB,GAAG,CAAC,CAAC,IAAI,CAAC;IAEnD,IAAI,CAACI,qBAAqB,IAAI,CAACG,uBAAuB,EAAE;MACvD,OAAO,CAAC,CAAC,EAAEJ,SAAS,CAAC;IACtB;IAEA,MAAMK,cAAc,GAAG,IAAAC,uDAAmC,EAAC;MAC1DtC,OAAO,EAAEY,kBAAkB;MAC3BF,kBAAkB;MAClBC,0BAA0B;MAC1B4B,MAAM,EAAEpC,OAAO;MACfC,KAAK;MACLoC,SAAS,EACR5B,kBAAkB,KACjBF,kBAAkB,IAAIC,0BAA0B,CAAC,GAC/C8B,YAAK,CAACZ,GAAG,CAAC,CAAC,GACXa;IACL,CAAC,CAAC;IAEF,OAAO,CAACL,cAAc,EAAEL,SAAS,CAAC;EACnC,CAAC,EACD,CAAC,CAACK,cAAc,EAAEL,SAAS,CAAC,EAAEW,QAAQ,KAAK;IAC1C,SAAS;;IACT,IAAI,CAACN,cAAc,EAAE;MACpB;IACD;IAEA,MAAMO,sBAAsB,GAAGD,QAAQ,GAAG,CAAC,CAAC;IAC5C,MAAME,iBAAiB,GAAGF,QAAQ,GAAG,CAAC,CAAC;IACvC,MAAMG,oBAAoB,GACzBT,cAAc,KAAKO,sBAAsB,IACzCZ,SAAS,KAAKa,iBAAiB;IAEhC,IAAI,CAACC,oBAAoB,EAAE;MAC1B;IACD;IAEA,IAAIpB,UAAU,CAACG,GAAG,CAAC,CAAC,EAAE;MACrB;IACD;IAEA,IAAI,CAACP,wBAAwB,CAACO,GAAG,CAAC,CAAC,EAAE;MACpCX,mBAAmB,CAAC,CAAC;MACrBI,wBAAwB,CAACQ,GAAG,CAAC,CAAC,CAAC;IAChC;IAEA7B,eAAe,CAAC;MACf8C,IAAI,EAAE,aAAa;MACnBC,OAAO,EAAEX;IACV,CAAC,CAAC;IAEF,MAAMY,mBAAmB,GACxB,IAAAC,qBAAc,EAACb,cAAc,EAAElC,OAAO,CAAC,KAAK,IAAI;IAEjD,IAAI8C,mBAAmB,EAAE;MACxB,MAAMT,SAAS,GAAGC,YAAK,CAACZ,GAAG,CAAC,CAAC;MAC7B,MAAMsB,IAAI,GAAG,IAAAC,cAAO,EAACf,cAAc,EAAElC,OAAO,CAAC;MAC7C,MAAMkD,eAAe,GAAG,IAAAC,wCAA6B,EAACjB,cAAc,CAAC;MACrE,MAAMkB,WAAW,GAAG,IAAAC,iBAAQ,EAACtD,GAAG,EAAEmD,eAAe,CAAC;MAClD,MAAMI,oCAAoC,GACzCF,WAAW,EAAEG,OAAO,KAAK,IAAI,IAAIH,WAAW,CAACI,cAAc,KAAK,IAAI;MACrE,MAAMC,+BAA+B,GACpC,IAAAC,iCAAsB,EAACV,IAAI,CAAC,IAC5BM,oCAAoC,IACpC,IAAAK,uCAA4B,EAAC;QAC5B3D,OAAO;QACPqC,SAAS;QACTa;MACD,CAAC,CAAC;MAEH,IAAIO,+BAA+B,EAAE;QACpC;QACA;QACA;QACA;MACD;MACAjC,0BAA0B,CAAC,CAAC;MAC5BF,eAAe,CAACK,GAAG,CAAC,CAAC,CAAC;MACtB;IACD;IAEA,IAAIL,eAAe,CAACI,GAAG,CAAC,CAAC,IAAIhC,oBAAoB,EAAE;MAClD6B,UAAU,CAACI,GAAG,CAAC,CAAC,CAAC;MACjBH,0BAA0B,CAAC,CAAC;MAC5BoC,cAAM,CAACC,IAAI,CACV,yBAAyB7D,OAAO,8CAA8CN,oBAAoB,0JACnG,CAAC;MACD;IACD;;IAEA;IACA;IACA4B,eAAe,CAACK,GAAG,CAACL,eAAe,CAACI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAAD,sCAAe,EAACJ,UAAU,CAAC;IAC3BA,UAAU,CAACM,GAAG,CACb,IAAAmC,gCAAS,EACRrE,uBAAuB,EACvB,IAAAsE,iCAAU,EAAC1C,UAAU,CAACK,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE;MAAEsC,QAAQ,EAAE;IAAE,CAAC,CACjD,CACD,CAAC;EACF,CACD,CAAC;AACF,CAAC;AAACC,OAAA,CAAAtE,gCAAA,GAAAA,gCAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_descriptors","_animation","_linkPairs","_entries","_links","_state","_system","_logger","_destinationSignals","HANDSHAKE_RETRY_DELAY_MS","MAX_HANDSHAKE_RETRIES","useInitialDestinationMeasurement","boundTag","enabled","escapeClipping","measureBoundary","tag","linkKey","group","currentScreenKey","useDescriptorsStore","s","derivations","nextScreenKey","destinationPairKey","ancestorDestinationPairKey","destinationEnabled","initialDestinationPairKey","progress","AnimationStore","getValue","actions","blockLifecycleStart","unblockLifecycleStart","SystemStore","getBag","isBlockingLifecycleStart","useSharedValue","retryToken","handshakeRetries","hasGivenUp","releaseLifecycleStartBlock","useCallback","cancelAnimation","get","set","claimLifecycleStartBlock","useLayoutEffect","runOnUI","useAnimatedReaction","retryTick","isWaitingForOpenToStart","sourceScreenKey","getSourceScreenKeyFromPairKey","undefined","signal","getInitialDestinationMeasurementSignal","linkId","destinationPresent","getEntry","sourcePresent","linkState","pairs","pairKey","action","measurePairKey","previous","previousMeasurePairKey","previousAction","previousRetryTick","shouldHandleSignal","type","link","getLink","linkComplete","source","destination","logger","warn","withDelay","withTiming","duration","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.ts"],"mappings":"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","ignoreList":[]}
@@ -70,6 +70,7 @@ const useBoundaryMeasurement = ({
70
70
  (0, _useInitialDestinationMeasurement.useInitialDestinationMeasurement)({
71
71
  boundTag,
72
72
  enabled: runtimeEnabled,
73
+ escapeClipping,
73
74
  measureBoundary
74
75
  });
75
76
  (0, _useRefreshBoundary.useRefreshBoundary)({
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_styles","_useBoundaryPresence","_useInitialDestinationMeasurement","_useInitialSourceMeasurement","_useRefreshBoundary","_useMeasurer","useBoundaryMeasurement","boundTag","enabled","runtimeEnabled","currentScreenKey","measuredRef","style","targetPreparedStyles","handoff","escapeClipping","config","anchor","scaleMode","target","method","boundaryConfig","useMemo","rootPreparedStyles","prepareStyleForBounds","preparedStyles","measureBoundary","useMeasurer","measuredAnimatedRef","useBoundaryPresence","useInitialSourceMeasurement","useInitialDestinationMeasurement","useRefreshBoundary","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/hooks/use-boundary-measurement.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAIA,IAAAC,OAAA,GAAAD,OAAA;AAEA,IAAAE,oBAAA,GAAAF,OAAA;AACA,IAAAG,iCAAA,GAAAH,OAAA;AACA,IAAAI,4BAAA,GAAAJ,OAAA;AACA,IAAAK,mBAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAmBA;AACA;AACA;AACA;AACA;AACO,MAAMO,sBAAsB,GAAGA,CAAC;EACtCC,QAAQ;EACRC,OAAO;EACPC,cAAc;EACdC,gBAAgB;EAChBC,WAAW;EACXC,KAAK;EACLC,oBAAoB;EACpBC,OAAO;EACPC,cAAc;EACdC;AAC6B,CAAC,KAAK;EACnC,MAAM;IAAEC,MAAM;IAAEC,SAAS;IAAEC,MAAM;IAAEC;EAAO,CAAC,GAAGJ,MAAM;EACpD,MAAMK,cAAc,GAAG,IAAAC,cAAO,EAC7B,OAAO;IAAEL,MAAM;IAAEC,SAAS;IAAEC,MAAM;IAAEC;EAAO,CAAC,CAAC,EAC7C,CAACH,MAAM,EAAEC,SAAS,EAAEC,MAAM,EAAEC,MAAM,CACnC,CAAC;EAED,MAAMG,kBAAkB,GAAG,IAAAD,cAAO,EACjC,MAAM,IAAAE,6BAAqB,EAACZ,KAAK,CAAC,EAClC,CAACA,KAAK,CACP,CAAC;EACD,MAAMa,cAAc,GAAGZ,oBAAoB,IAAIU,kBAAkB;EAEjE,MAAMG,eAAe,GAAG,IAAAC,wBAAW,EAAC;IACnCnB,OAAO;IACPD,QAAQ;IACRG,gBAAgB;IAChBe,cAAc;IACdG,mBAAmB,EAAEjB,WAAW;IAChCG,OAAO;IACPC;EACD,CAAC,CAAC;;EAEF;EACA;EACA,IAAAc,wCAAmB,EAAC;IACnBrB,OAAO,EAAEC,cAAc;IACvBF,QAAQ;IACRG,gBAAgB;IAChBW,cAAc;IACdP,OAAO;IACPC;EACD,CAAC,CAAC;EAEF,IAAAe,wDAA2B,EAAC;IAC3BtB,OAAO,EAAEC,cAAc;IACvBiB,eAAe;IACfnB;EACD,CAAC,CAAC;EAEF,IAAAwB,kEAAgC,EAAC;IAChCxB,QAAQ;IACRC,OAAO,EAAEC,cAAc;IACvBiB;EACD,CAAC,CAAC;EAEF,IAAAM,sCAAkB,EAAC;IAClBxB,OAAO,EAAEC,cAAc;IACvBF,QAAQ;IACRmB;EACD,CAAC,CAAC;AACH,CAAC;AAACO,OAAA,CAAA3B,sBAAA,GAAAA,sBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_styles","_useBoundaryPresence","_useInitialDestinationMeasurement","_useInitialSourceMeasurement","_useRefreshBoundary","_useMeasurer","useBoundaryMeasurement","boundTag","enabled","runtimeEnabled","currentScreenKey","measuredRef","style","targetPreparedStyles","handoff","escapeClipping","config","anchor","scaleMode","target","method","boundaryConfig","useMemo","rootPreparedStyles","prepareStyleForBounds","preparedStyles","measureBoundary","useMeasurer","measuredAnimatedRef","useBoundaryPresence","useInitialSourceMeasurement","useInitialDestinationMeasurement","useRefreshBoundary","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/hooks/use-boundary-measurement.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAIA,IAAAC,OAAA,GAAAD,OAAA;AAEA,IAAAE,oBAAA,GAAAF,OAAA;AACA,IAAAG,iCAAA,GAAAH,OAAA;AACA,IAAAI,4BAAA,GAAAJ,OAAA;AACA,IAAAK,mBAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAmBA;AACA;AACA;AACA;AACA;AACO,MAAMO,sBAAsB,GAAGA,CAAC;EACtCC,QAAQ;EACRC,OAAO;EACPC,cAAc;EACdC,gBAAgB;EAChBC,WAAW;EACXC,KAAK;EACLC,oBAAoB;EACpBC,OAAO;EACPC,cAAc;EACdC;AAC6B,CAAC,KAAK;EACnC,MAAM;IAAEC,MAAM;IAAEC,SAAS;IAAEC,MAAM;IAAEC;EAAO,CAAC,GAAGJ,MAAM;EACpD,MAAMK,cAAc,GAAG,IAAAC,cAAO,EAC7B,OAAO;IAAEL,MAAM;IAAEC,SAAS;IAAEC,MAAM;IAAEC;EAAO,CAAC,CAAC,EAC7C,CAACH,MAAM,EAAEC,SAAS,EAAEC,MAAM,EAAEC,MAAM,CACnC,CAAC;EAED,MAAMG,kBAAkB,GAAG,IAAAD,cAAO,EACjC,MAAM,IAAAE,6BAAqB,EAACZ,KAAK,CAAC,EAClC,CAACA,KAAK,CACP,CAAC;EACD,MAAMa,cAAc,GAAGZ,oBAAoB,IAAIU,kBAAkB;EAEjE,MAAMG,eAAe,GAAG,IAAAC,wBAAW,EAAC;IACnCnB,OAAO;IACPD,QAAQ;IACRG,gBAAgB;IAChBe,cAAc;IACdG,mBAAmB,EAAEjB,WAAW;IAChCG,OAAO;IACPC;EACD,CAAC,CAAC;;EAEF;EACA;EACA,IAAAc,wCAAmB,EAAC;IACnBrB,OAAO,EAAEC,cAAc;IACvBF,QAAQ;IACRG,gBAAgB;IAChBW,cAAc;IACdP,OAAO;IACPC;EACD,CAAC,CAAC;EAEF,IAAAe,wDAA2B,EAAC;IAC3BtB,OAAO,EAAEC,cAAc;IACvBiB,eAAe;IACfnB;EACD,CAAC,CAAC;EAEF,IAAAwB,kEAAgC,EAAC;IAChCxB,QAAQ;IACRC,OAAO,EAAEC,cAAc;IACvBM,cAAc;IACdW;EACD,CAAC,CAAC;EAEF,IAAAM,sCAAkB,EAAC;IAClBxB,OAAO,EAAEC,cAAc;IACvBF,QAAQ;IACRmB;EACD,CAAC,CAAC;AACH,CAAC;AAACO,OAAA,CAAA3B,sBAAA,GAAAA,sBAAA","ignoreList":[]}
@@ -9,8 +9,10 @@ var _reactNative = require("react-native");
9
9
  var _reactNativeReanimated = require("react-native-reanimated");
10
10
  var _measuredBoundsWrites = require("../../../providers/helpers/measured-bounds-writes");
11
11
  var _origin = require("../../../providers/screen/origin.provider");
12
+ var _styles = require("../../../providers/screen/styles");
12
13
  var _scroll = require("../../../stores/scroll.store");
13
14
  var _system = require("../../../stores/system.store");
15
+ var _visibilityBlockOffset = require("../../../utils/visibility-block-offset");
14
16
  var _measuredBounds = require("../utils/measured-bounds");
15
17
  const useMeasurer = ({
16
18
  enabled,
@@ -31,6 +33,9 @@ const useMeasurer = ({
31
33
  const {
32
34
  originRef
33
35
  } = (0, _origin.useOriginContext)();
36
+ const {
37
+ visibilityBlocked
38
+ } = (0, _styles.useScreenSlots)();
34
39
  return (0, _react.useCallback)(target => {
35
40
  "worklet";
36
41
 
@@ -38,7 +43,14 @@ const useMeasurer = ({
38
43
  const measured = (0, _measuredBounds.measureWithOverscrollAwareness)(measuredAnimatedRef, scrollState.get());
39
44
  const measuredOrigin = (0, _reactNativeReanimated.measure)(originRef);
40
45
  if (!measured || !measuredOrigin) return;
41
- const normalizedMeasured = (0, _measuredBounds.normalizeMeasuredBoundsToOrigin)(measured, measuredOrigin);
46
+ const normalizedMeasured = (0, _measuredBounds.normalizeMeasuredBoundsWithVisibilityGate)({
47
+ measured,
48
+ origin: measuredOrigin,
49
+ visibilityBlocked: escapeClipping && visibilityBlocked.get(),
50
+ visibilityBlockOffset: (0, _visibilityBlockOffset.getVisibilityBlockOffset)(viewportHeight),
51
+ viewportWidth,
52
+ viewportHeight
53
+ });
42
54
 
43
55
  /**
44
56
  * - Destination Pass -
@@ -62,7 +74,7 @@ const useMeasurer = ({
62
74
  handoff,
63
75
  escapeClipping
64
76
  });
65
- }, [enabled, boundTag, currentScreenKey, preparedStyles, measuredAnimatedRef, handoff, escapeClipping, viewportWidth, viewportHeight, scrollState, scrollMetadata, pendingLifecycleStartBlockCount, originRef]);
77
+ }, [enabled, boundTag, currentScreenKey, preparedStyles, measuredAnimatedRef, handoff, escapeClipping, viewportWidth, viewportHeight, scrollState, scrollMetadata, pendingLifecycleStartBlockCount, originRef, visibilityBlocked]);
66
78
  };
67
79
  exports.useMeasurer = useMeasurer;
68
80
  //# sourceMappingURL=use-measurer.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_measuredBoundsWrites","_origin","_scroll","_system","_measuredBounds","useMeasurer","enabled","boundTag","currentScreenKey","preparedStyles","measuredAnimatedRef","handoff","escapeClipping","width","viewportWidth","height","viewportHeight","useWindowDimensions","scrollState","ScrollStore","getValue","scrollMetadata","pendingLifecycleStartBlockCount","SystemStore","originRef","useOriginContext","useCallback","target","measured","measureWithOverscrollAwareness","get","measuredOrigin","measure","normalizedMeasured","normalizeMeasuredBoundsToOrigin","shouldGuardDestinationViewport","group","viewportAllowsDestinationWrite","type","isMeasurementInViewport","measuredWithScroll","attachScrollSnapshotToMeasuredBounds","applyMeasuredBoundsWrites","entryTag","tag","linkId","linkKey","linkWrite","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/hooks/use-measurer.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AAKA,IAAAG,qBAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAEA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AAEA,IAAAO,eAAA,GAAAP,OAAA;AAiBO,MAAMQ,WAAW,GAAGA,CAAC;EAC3BC,OAAO;EACPC,QAAQ;EACRC,gBAAgB;EAChBC,cAAc;EACdC,mBAAmB;EACnBC,OAAO;EACPC;AACkB,CAAC,KAAsB;EACzC,MAAM;IAAEC,KAAK,EAAEC,aAAa;IAAEC,MAAM,EAAEC;EAAe,CAAC,GACrD,IAAAC,gCAAmB,EAAC,CAAC;EAEtB,MAAMC,WAAW,GAAGC,mBAAW,CAACC,QAAQ,CAACZ,gBAAgB,EAAE,cAAc,CAAC;EAC1E,MAAMa,cAAc,GAAGF,mBAAW,CAACC,QAAQ,CAACZ,gBAAgB,EAAE,UAAU,CAAC;EACzE,MAAMc,+BAA+B,GAAGC,mBAAW,CAACH,QAAQ,CAC3DZ,gBAAgB,EAChB,iCACD,CAAC;EACD,MAAM;IAAEgB;EAAU,CAAC,GAAG,IAAAC,wBAAgB,EAAC,CAAC;EAExC,OAAO,IAAAC,kBAAW,EAChBC,MAAM,IAAK;IACX,SAAS;;IACT,IAAI,CAACrB,OAAO,EAAE;IAEd,MAAMsB,QAAQ,GAAG,IAAAC,8CAA8B,EAC9CnB,mBAAmB,EACnBQ,WAAW,CAACY,GAAG,CAAC,CACjB,CAAC;IACD,MAAMC,cAAc,GAAG,IAAAC,8BAAO,EAACR,SAAS,CAAC;IAEzC,IAAI,CAACI,QAAQ,IAAI,CAACG,cAAc,EAAE;IAElC,MAAME,kBAAkB,GAAG,IAAAC,+CAA+B,EACzDN,QAAQ,EACRG,cACD,CAAC;;IAED;AACH;AACA;AACA;AACA;AACA;AACA;IACG,MAAMI,8BAA8B,GACnCb,+BAA+B,CAACQ,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAACvB,QAAQ,CAAC6B,KAAK;IAE9D,MAAMC,8BAA8B,GACnCV,MAAM,CAACW,IAAI,KAAK,aAAa,IAC7B,CAACH,8BAA8B,IAC/B,IAAAI,uCAAuB,EACtBN,kBAAkB,EAClBnB,aAAa,EACbE,cACD,CAAC;IAEF,IAAI,CAACqB,8BAA8B,EAAE;IAErC,MAAMG,kBAAkB,GAAG,IAAAC,oDAAoC,EAC9DR,kBAAkB,EAClBZ,cAAc,CAACS,GAAG,CAAC,CACpB,CAAC;IAED,IAAAY,+CAAyB,EAAC;MACzBC,QAAQ,EAAEpC,QAAQ,CAACqC,GAAG;MACtBC,MAAM,EAAEtC,QAAQ,CAACuC,OAAO;MACxBV,KAAK,EAAE7B,QAAQ,CAAC6B,KAAK;MACrB5B,gBAAgB;MAChBoB,QAAQ,EAAEY,kBAAkB;MAC5B/B,cAAc;MACdsC,SAAS,EAAEpB,MAAM;MACjBhB,OAAO;MACPC;IACD,CAAC,CAAC;EACH,CAAC,EACD,CACCN,OAAO,EACPC,QAAQ,EACRC,gBAAgB,EAChBC,cAAc,EACdC,mBAAmB,EACnBC,OAAO,EACPC,cAAc,EACdE,aAAa,EACbE,cAAc,EACdE,WAAW,EACXG,cAAc,EACdC,+BAA+B,EAC/BE,SAAS,CAEX,CAAC;AACF,CAAC;AAACwB,OAAA,CAAA3C,WAAA,GAAAA,WAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_measuredBoundsWrites","_origin","_styles","_scroll","_system","_visibilityBlockOffset","_measuredBounds","useMeasurer","enabled","boundTag","currentScreenKey","preparedStyles","measuredAnimatedRef","handoff","escapeClipping","width","viewportWidth","height","viewportHeight","useWindowDimensions","scrollState","ScrollStore","getValue","scrollMetadata","pendingLifecycleStartBlockCount","SystemStore","originRef","useOriginContext","visibilityBlocked","useScreenSlots","useCallback","target","measured","measureWithOverscrollAwareness","get","measuredOrigin","measure","normalizedMeasured","normalizeMeasuredBoundsWithVisibilityGate","origin","visibilityBlockOffset","getVisibilityBlockOffset","shouldGuardDestinationViewport","group","viewportAllowsDestinationWrite","type","isMeasurementInViewport","measuredWithScroll","attachScrollSnapshotToMeasuredBounds","applyMeasuredBoundsWrites","entryTag","tag","linkId","linkKey","linkWrite","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/hooks/use-measurer.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useRegisterTarget = void 0;
7
+ var _react = require("react");
8
+ var _logger = require("../../../utils/logger");
9
+ var _boundaryRoot = require("../providers/boundary-root.provider");
10
+ const useRegisterTarget = ({
11
+ targetAnimatedRef,
12
+ preparedStyles,
13
+ measurementRef
14
+ }) => {
15
+ const rootContext = (0, _boundaryRoot.useBoundaryRootContext)();
16
+ const registerTargetRef = rootContext?.registerTargetRef;
17
+ const unregisterTargetRef = rootContext?.unregisterTargetRef;
18
+ (0, _react.useLayoutEffect)(() => {
19
+ if (!registerTargetRef || !unregisterTargetRef) {
20
+ if (__DEV__) {
21
+ _logger.logger.warn(_boundaryRoot.TARGET_OUTSIDE_ROOT_WARNING);
22
+ }
23
+ return;
24
+ }
25
+ registerTargetRef(targetAnimatedRef, preparedStyles, measurementRef);
26
+ return () => {
27
+ unregisterTargetRef(targetAnimatedRef);
28
+ };
29
+ }, [registerTargetRef, unregisterTargetRef, targetAnimatedRef, preparedStyles, measurementRef]);
30
+ };
31
+ exports.useRegisterTarget = useRegisterTarget;
32
+ //# sourceMappingURL=use-register-target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_logger","_boundaryRoot","useRegisterTarget","targetAnimatedRef","preparedStyles","measurementRef","rootContext","useBoundaryRootContext","registerTargetRef","unregisterTargetRef","useLayoutEffect","__DEV__","logger","warn","TARGET_OUTSIDE_ROOT_WARNING","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/hooks/use-register-target.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AAWO,MAAMG,iBAAiB,GAAGA,CAAC;EACjCC,iBAAiB;EACjBC,cAAc;EACdC;AACoB,CAAC,KAAK;EAC1B,MAAMC,WAAW,GAAG,IAAAC,oCAAsB,EAAC,CAAC;EAC5C,MAAMC,iBAAiB,GAAGF,WAAW,EAAEE,iBAAiB;EACxD,MAAMC,mBAAmB,GAAGH,WAAW,EAAEG,mBAAmB;EAC5D,IAAAC,sBAAe,EAAC,MAAM;IACrB,IAAI,CAACF,iBAAiB,IAAI,CAACC,mBAAmB,EAAE;MAC/C,IAAIE,OAAO,EAAE;QACZC,cAAM,CAACC,IAAI,CAACC,yCAA2B,CAAC;MACzC;MACA;IACD;IAEAN,iBAAiB,CAACL,iBAAiB,EAAEC,cAAc,EAAEC,cAAc,CAAC;IACpE,OAAO,MAAM;MACZI,mBAAmB,CAACN,iBAAiB,CAAC;IACvC,CAAC;EACF,CAAC,EAAE,CACFK,iBAAiB,EACjBC,mBAAmB,EACnBN,iBAAiB,EACjBC,cAAc,EACdC,cAAc,CACd,CAAC;AACH,CAAC;AAACU,OAAA,CAAAb,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -48,7 +48,7 @@ _portal.Host.displayName = "Transition.Boundary.Host";
48
48
  * Use:
49
49
  * - `Boundary` for passive and pressable shared elements.
50
50
  * - `Boundary.Target` to measure a nested descendant instead of the root.
51
- * - `Boundary.Host` to make nested portal placement explicit.
51
+ * - `Boundary.Host` to make clipping-escape host placement explicit.
52
52
  */
53
53
 
54
54
  const Boundary = exports.Boundary = Object.assign(BoundaryRoot, {
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BoundaryContentPortalHost = void 0;
7
+ var _react = require("react");
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeReanimated = _interopRequireDefault(require("react-native-reanimated"));
10
+ var _teleport = require("../../../teleport");
11
+ var _hostName = require("../helpers/host-name");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ const AnimatedPortalHost = _teleport.NativePortalHost ? _reactNativeReanimated.default.createAnimatedComponent(_teleport.NativePortalHost) : null;
15
+ const BoundaryContentPortalHost = exports.BoundaryContentPortalHost = /*#__PURE__*/(0, _react.memo)(function BoundaryContentPortalHost({
16
+ boundaryId,
17
+ children,
18
+ enabled,
19
+ screenKey
20
+ }) {
21
+ if (!enabled || !AnimatedPortalHost) {
22
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
23
+ children: children
24
+ });
25
+ }
26
+ const portalHostName = (0, _hostName.createBoundaryContentPortalHostName)(screenKey, boundaryId);
27
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
28
+ children: [children, /*#__PURE__*/(0, _jsxRuntime.jsx)(AnimatedPortalHost, {
29
+ name: portalHostName,
30
+ pointerEvents: _teleport.PORTAL_POINTER_EVENTS,
31
+ style: styles.host
32
+ })]
33
+ });
34
+ });
35
+ const styles = _reactNative.StyleSheet.create({
36
+ host: {
37
+ ..._reactNative.StyleSheet.absoluteFillObject,
38
+ overflow: "visible"
39
+ }
40
+ });
41
+ //# sourceMappingURL=host.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_interopRequireDefault","_teleport","_hostName","_jsxRuntime","e","__esModule","default","AnimatedPortalHost","NativePortalHost","Animated","createAnimatedComponent","BoundaryContentPortalHost","exports","memo","boundaryId","children","enabled","screenKey","jsx","Fragment","portalHostName","createBoundaryContentPortalHostName","jsxs","name","pointerEvents","PORTAL_POINTER_EVENTS","style","styles","host","StyleSheet","create","absoluteFillObject","overflow"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-content-portal/components/host.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AAA2E,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAG,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE3E,MAAMG,kBAAkB,GAAGC,0BAAgB,GACxCC,8BAAQ,CAACC,uBAAuB,CAACF,0BAAgB,CAAC,GAClD,IAAI;AASA,MAAMG,yBAAyB,GAAAC,OAAA,CAAAD,yBAAA,gBAAG,IAAAE,WAAI,EAC5C,SAASF,yBAAyBA,CAAC;EAClCG,UAAU;EACVC,QAAQ;EACRC,OAAO;EACPC;AAC+B,CAAC,EAAE;EAClC,IAAI,CAACD,OAAO,IAAI,CAACT,kBAAkB,EAAE;IACpC,oBAAO,IAAAJ,WAAA,CAAAe,GAAA,EAAAf,WAAA,CAAAgB,QAAA;MAAAJ,QAAA,EAAGA;IAAQ,CAAG,CAAC;EACvB;EAEA,MAAMK,cAAc,GAAG,IAAAC,6CAAmC,EACzDJ,SAAS,EACTH,UACD,CAAC;EAED,oBACC,IAAAX,WAAA,CAAAmB,IAAA,EAAAnB,WAAA,CAAAgB,QAAA;IAAAJ,QAAA,GACEA,QAAQ,eACT,IAAAZ,WAAA,CAAAe,GAAA,EAACX,kBAAkB;MAClBgB,IAAI,EAAEH,cAAe;MACrBI,aAAa,EAAEC,+BAAsB;MACrCC,KAAK,EAAEC,MAAM,CAACC;IAAK,CACnB,CAAC;EAAA,CACD,CAAC;AAEL,CACD,CAAC;AAED,MAAMD,MAAM,GAAGE,uBAAU,CAACC,MAAM,CAAC;EAChCF,IAAI,EAAE;IACL,GAAGC,uBAAU,CAACE,kBAAkB;IAChCC,QAAQ,EAAE;EACX;AACD,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createBoundaryContentPortalHostName = void 0;
7
+ const BOUNDARY_CONTENT_PORTAL_HOST_NAME_SUFFIX = "-content-portal-host";
8
+ const createBoundaryContentPortalHostName = (screenKey, boundaryId) => {
9
+ "worklet";
10
+
11
+ return `${screenKey}-${boundaryId}${BOUNDARY_CONTENT_PORTAL_HOST_NAME_SUFFIX}`;
12
+ };
13
+ exports.createBoundaryContentPortalHostName = createBoundaryContentPortalHostName;
14
+ //# sourceMappingURL=host-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["BOUNDARY_CONTENT_PORTAL_HOST_NAME_SUFFIX","createBoundaryContentPortalHostName","screenKey","boundaryId","exports"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-content-portal/helpers/host-name.ts"],"mappings":";;;;;;AAAA,MAAMA,wCAAwC,GAAG,sBAAsB;AAEhE,MAAMC,mCAAmC,GAAGA,CAClDC,SAAiB,EACjBC,UAAkB,KACd;EACJ,SAAS;;EACT,OAAO,GAAGD,SAAS,IAAIC,UAAU,GAAGH,wCAAwC,EAAE;AAC/E,CAAC;AAACI,OAAA,CAAAH,mCAAA,GAAAA,mCAAA","ignoreList":[]}