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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (481) hide show
  1. package/lib/commonjs/shared/components/boundary/components/boundary-target.js +21 -16
  2. package/lib/commonjs/shared/components/boundary/components/boundary-target.js.map +1 -1
  3. package/lib/commonjs/shared/components/boundary/create-boundary-component.js +88 -114
  4. package/lib/commonjs/shared/components/boundary/create-boundary-component.js.map +1 -1
  5. package/lib/commonjs/shared/components/boundary/hooks/{use-boundary-presence.js → lifecycles/use-boundary-presence.js} +14 -7
  6. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-boundary-presence.js.map +1 -0
  7. package/lib/commonjs/shared/components/boundary/hooks/{use-initial-destination-measurement.js → lifecycles/use-initial-destination-measurement.js} +51 -24
  8. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -0
  9. package/lib/commonjs/shared/components/boundary/hooks/{use-initial-source-measurement.js → lifecycles/use-initial-source-measurement.js} +7 -10
  10. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-source-measurement.js.map +1 -0
  11. package/lib/commonjs/shared/components/boundary/hooks/{use-refresh-boundary.js → lifecycles/use-refresh-boundary.js} +10 -7
  12. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -0
  13. package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js +82 -0
  14. package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -0
  15. package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js +10 -13
  16. package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js.map +1 -1
  17. package/lib/commonjs/shared/components/boundary/index.js +27 -30
  18. package/lib/commonjs/shared/components/boundary/index.js.map +1 -1
  19. package/lib/commonjs/shared/components/boundary/portal/components/boundary-local-portal-host.js +58 -0
  20. package/lib/commonjs/shared/components/boundary/portal/components/boundary-local-portal-host.js.map +1 -0
  21. package/lib/commonjs/shared/components/boundary/portal/components/host.js +20 -4
  22. package/lib/commonjs/shared/components/boundary/portal/components/host.js.map +1 -1
  23. package/lib/commonjs/shared/components/boundary/portal/components/portal-boundary-host.js +53 -32
  24. package/lib/commonjs/shared/components/boundary/portal/components/portal-boundary-host.js.map +1 -1
  25. package/lib/commonjs/shared/components/boundary/portal/components/portal.js +206 -96
  26. package/lib/commonjs/shared/components/boundary/portal/components/portal.js.map +1 -1
  27. package/lib/commonjs/shared/components/boundary/portal/hooks/use-host-measurement.js +14 -2
  28. package/lib/commonjs/shared/components/boundary/portal/hooks/use-host-measurement.js.map +1 -1
  29. package/lib/commonjs/shared/components/boundary/portal/stores/host-registry.store.js +5 -44
  30. package/lib/commonjs/shared/components/boundary/portal/stores/host-registry.store.js.map +1 -1
  31. package/lib/commonjs/shared/components/boundary/portal/stores/portal-boundary-host.store.js +37 -5
  32. package/lib/commonjs/shared/components/boundary/portal/stores/portal-boundary-host.store.js.map +1 -1
  33. package/lib/commonjs/shared/components/boundary/portal/teleport.js +15 -2
  34. package/lib/commonjs/shared/components/boundary/portal/teleport.js.map +1 -1
  35. package/lib/commonjs/shared/components/boundary/portal/utils/has-local-slot.js +18 -0
  36. package/lib/commonjs/shared/components/boundary/portal/utils/has-local-slot.js.map +1 -0
  37. package/lib/commonjs/shared/components/boundary/portal/utils/naming.js +10 -3
  38. package/lib/commonjs/shared/components/boundary/portal/utils/naming.js.map +1 -1
  39. package/lib/commonjs/shared/components/boundary/portal/utils/offset-style.js +28 -49
  40. package/lib/commonjs/shared/components/boundary/portal/utils/offset-style.js.map +1 -1
  41. package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js +254 -0
  42. package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js.map +1 -0
  43. package/lib/commonjs/shared/components/boundary/portal/utils/resolve-portal.js +38 -0
  44. package/lib/commonjs/shared/components/boundary/portal/utils/resolve-portal.js.map +1 -0
  45. package/lib/commonjs/shared/components/boundary/portal/utils/shallow-equal.js +29 -0
  46. package/lib/commonjs/shared/components/boundary/portal/utils/shallow-equal.js.map +1 -0
  47. package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js +10 -1
  48. package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js.map +1 -1
  49. package/lib/commonjs/shared/components/boundary/portal/utils/visible-host.js +25 -0
  50. package/lib/commonjs/shared/components/boundary/portal/utils/visible-host.js.map +1 -0
  51. package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js +65 -0
  52. package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js.map +1 -0
  53. package/lib/commonjs/shared/components/boundary/utils/destination-signals.js +12 -2
  54. package/lib/commonjs/shared/components/boundary/utils/destination-signals.js.map +1 -1
  55. package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js +0 -21
  56. package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js.map +1 -1
  57. package/lib/commonjs/shared/components/boundary/utils/source-signals.js +4 -9
  58. package/lib/commonjs/shared/components/boundary/utils/source-signals.js.map +1 -1
  59. package/lib/commonjs/shared/components/create-transition-aware-component.js +2 -20
  60. package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
  61. package/lib/commonjs/shared/components/overlay/variations/float-overlay.js +1 -1
  62. package/lib/commonjs/shared/components/overlay/variations/float-overlay.js.map +1 -1
  63. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js +2 -14
  64. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
  65. package/lib/commonjs/shared/components/screen-container/layers/content.js +4 -16
  66. package/lib/commonjs/shared/components/screen-container/layers/content.js.map +1 -1
  67. package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js +4 -15
  68. package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  69. package/lib/commonjs/shared/components/screen-container/layers/surface-container.js +4 -16
  70. package/lib/commonjs/shared/components/screen-container/layers/surface-container.js.map +1 -1
  71. package/lib/commonjs/shared/index.js.map +1 -1
  72. package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js +6 -3
  73. package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
  74. package/lib/commonjs/shared/providers/screen/animation/helpers/derivations.js +1 -0
  75. package/lib/commonjs/shared/providers/screen/animation/helpers/derivations.js.map +1 -1
  76. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +143 -24
  77. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  78. package/lib/commonjs/shared/providers/screen/screen-composer.js +1 -1
  79. package/lib/commonjs/shared/providers/screen/screen-composer.js.map +1 -1
  80. package/lib/commonjs/shared/providers/screen/styles/helpers/compose-slot-style.js +95 -0
  81. package/lib/commonjs/shared/providers/screen/styles/helpers/compose-slot-style.js.map +1 -0
  82. package/lib/commonjs/shared/providers/screen/styles/helpers/normalize-slots.js +30 -9
  83. package/lib/commonjs/shared/providers/screen/styles/helpers/normalize-slots.js.map +1 -1
  84. package/lib/commonjs/shared/providers/screen/styles/helpers/opening-phase.js +32 -0
  85. package/lib/commonjs/shared/providers/screen/styles/helpers/opening-phase.js.map +1 -0
  86. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +16 -11
  87. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  88. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js +2 -0
  89. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js.map +1 -1
  90. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js +1 -20
  91. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js.map +1 -1
  92. package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js +1 -11
  93. package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  94. package/lib/commonjs/shared/providers/screen/styles/hooks/slot-resolvers.js +96 -0
  95. package/lib/commonjs/shared/providers/screen/styles/hooks/slot-resolvers.js.map +1 -0
  96. package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +36 -36
  97. package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  98. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +1 -19
  99. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  100. package/lib/commonjs/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js +8 -3
  101. package/lib/commonjs/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js.map +1 -1
  102. package/lib/commonjs/shared/providers/screen/styles/index.js +38 -7
  103. package/lib/commonjs/shared/providers/screen/styles/index.js.map +1 -1
  104. package/lib/commonjs/shared/providers/screen/styles/{styles.provider.js → slot.provider.js} +34 -21
  105. package/lib/commonjs/shared/providers/screen/styles/slot.provider.js.map +1 -0
  106. package/lib/commonjs/shared/providers/screen/styles/stores/slot-references.store.js +53 -0
  107. package/lib/commonjs/shared/providers/screen/styles/stores/slot-references.store.js.map +1 -0
  108. package/lib/commonjs/shared/stores/bounds/helpers/link-pairs.helpers.js +37 -2
  109. package/lib/commonjs/shared/stores/bounds/helpers/link-pairs.helpers.js.map +1 -1
  110. package/lib/commonjs/shared/stores/bounds/internals/entries.js +11 -4
  111. package/lib/commonjs/shared/stores/bounds/internals/entries.js.map +1 -1
  112. package/lib/commonjs/shared/stores/bounds/internals/links.js +134 -51
  113. package/lib/commonjs/shared/stores/bounds/internals/links.js.map +1 -1
  114. package/lib/commonjs/shared/stores/bounds/internals/resolver.js +1 -3
  115. package/lib/commonjs/shared/stores/bounds/internals/resolver.js.map +1 -1
  116. package/lib/commonjs/shared/stores/system.store.js +5 -0
  117. package/lib/commonjs/shared/stores/system.store.js.map +1 -1
  118. package/lib/commonjs/shared/utils/bounds/helpers/styles/compute.js +10 -69
  119. package/lib/commonjs/shared/utils/bounds/helpers/styles/compute.js.map +1 -1
  120. package/lib/commonjs/shared/utils/bounds/helpers/styles/local-transform.js +59 -0
  121. package/lib/commonjs/shared/utils/bounds/helpers/styles/local-transform.js.map +1 -0
  122. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +8 -1
  123. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  124. package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js +59 -0
  125. package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  126. package/lib/commonjs/shared/utils/logger.js +11 -0
  127. package/lib/commonjs/shared/utils/logger.js.map +1 -1
  128. package/lib/module/shared/components/boundary/components/boundary-target.js +19 -14
  129. package/lib/module/shared/components/boundary/components/boundary-target.js.map +1 -1
  130. package/lib/module/shared/components/boundary/create-boundary-component.js +93 -119
  131. package/lib/module/shared/components/boundary/create-boundary-component.js.map +1 -1
  132. package/lib/module/shared/components/boundary/hooks/lifecycles/use-boundary-presence.js +30 -0
  133. package/lib/module/shared/components/boundary/hooks/lifecycles/use-boundary-presence.js.map +1 -0
  134. package/lib/module/shared/components/boundary/hooks/{use-initial-destination-measurement.js → lifecycles/use-initial-destination-measurement.js} +51 -24
  135. package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -0
  136. package/lib/module/shared/components/boundary/hooks/{use-initial-source-measurement.js → lifecycles/use-initial-source-measurement.js} +7 -10
  137. package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-source-measurement.js.map +1 -0
  138. package/lib/module/shared/components/boundary/hooks/{use-refresh-boundary.js → lifecycles/use-refresh-boundary.js} +10 -7
  139. package/lib/module/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -0
  140. package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js +77 -0
  141. package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -0
  142. package/lib/module/shared/components/boundary/hooks/use-measurer.js +10 -13
  143. package/lib/module/shared/components/boundary/hooks/use-measurer.js.map +1 -1
  144. package/lib/module/shared/components/boundary/index.js +27 -30
  145. package/lib/module/shared/components/boundary/index.js.map +1 -1
  146. package/lib/module/shared/components/boundary/portal/components/boundary-local-portal-host.js +53 -0
  147. package/lib/module/shared/components/boundary/portal/components/boundary-local-portal-host.js.map +1 -0
  148. package/lib/module/shared/components/boundary/portal/components/host.js +21 -5
  149. package/lib/module/shared/components/boundary/portal/components/host.js.map +1 -1
  150. package/lib/module/shared/components/boundary/portal/components/portal-boundary-host.js +53 -32
  151. package/lib/module/shared/components/boundary/portal/components/portal-boundary-host.js.map +1 -1
  152. package/lib/module/shared/components/boundary/portal/components/portal.js +213 -103
  153. package/lib/module/shared/components/boundary/portal/components/portal.js.map +1 -1
  154. package/lib/module/shared/components/boundary/portal/hooks/use-host-measurement.js +15 -3
  155. package/lib/module/shared/components/boundary/portal/hooks/use-host-measurement.js.map +1 -1
  156. package/lib/module/shared/components/boundary/portal/stores/host-registry.store.js +4 -41
  157. package/lib/module/shared/components/boundary/portal/stores/host-registry.store.js.map +1 -1
  158. package/lib/module/shared/components/boundary/portal/stores/portal-boundary-host.store.js +35 -4
  159. package/lib/module/shared/components/boundary/portal/stores/portal-boundary-host.store.js.map +1 -1
  160. package/lib/module/shared/components/boundary/portal/teleport.js +16 -2
  161. package/lib/module/shared/components/boundary/portal/teleport.js.map +1 -1
  162. package/lib/module/shared/components/boundary/portal/utils/has-local-slot.js +13 -0
  163. package/lib/module/shared/components/boundary/portal/utils/has-local-slot.js.map +1 -0
  164. package/lib/module/shared/components/boundary/portal/utils/naming.js +8 -2
  165. package/lib/module/shared/components/boundary/portal/utils/naming.js.map +1 -1
  166. package/lib/module/shared/components/boundary/portal/utils/offset-style.js +29 -49
  167. package/lib/module/shared/components/boundary/portal/utils/offset-style.js.map +1 -1
  168. package/lib/module/shared/components/boundary/portal/utils/ownership.js +246 -0
  169. package/lib/module/shared/components/boundary/portal/utils/ownership.js.map +1 -0
  170. package/lib/module/shared/components/boundary/portal/utils/resolve-portal.js +33 -0
  171. package/lib/module/shared/components/boundary/portal/utils/resolve-portal.js.map +1 -0
  172. package/lib/module/shared/components/boundary/portal/utils/shallow-equal.js +24 -0
  173. package/lib/module/shared/components/boundary/portal/utils/shallow-equal.js.map +1 -0
  174. package/lib/module/shared/components/boundary/portal/utils/teleport-control.js +8 -0
  175. package/lib/module/shared/components/boundary/portal/utils/teleport-control.js.map +1 -1
  176. package/lib/module/shared/components/boundary/portal/utils/visible-host.js +20 -0
  177. package/lib/module/shared/components/boundary/portal/utils/visible-host.js.map +1 -0
  178. package/lib/module/shared/components/boundary/providers/boundary-root.provider.js +57 -0
  179. package/lib/module/shared/components/boundary/providers/boundary-root.provider.js.map +1 -0
  180. package/lib/module/shared/components/boundary/utils/destination-signals.js +12 -2
  181. package/lib/module/shared/components/boundary/utils/destination-signals.js.map +1 -1
  182. package/lib/module/shared/components/boundary/utils/refresh-signals.js +0 -21
  183. package/lib/module/shared/components/boundary/utils/refresh-signals.js.map +1 -1
  184. package/lib/module/shared/components/boundary/utils/source-signals.js +4 -9
  185. package/lib/module/shared/components/boundary/utils/source-signals.js.map +1 -1
  186. package/lib/module/shared/components/create-transition-aware-component.js +4 -22
  187. package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
  188. package/lib/module/shared/components/overlay/variations/float-overlay.js +2 -2
  189. package/lib/module/shared/components/overlay/variations/float-overlay.js.map +1 -1
  190. package/lib/module/shared/components/screen-container/layers/backdrop.js +4 -16
  191. package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
  192. package/lib/module/shared/components/screen-container/layers/content.js +4 -16
  193. package/lib/module/shared/components/screen-container/layers/content.js.map +1 -1
  194. package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js +5 -16
  195. package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  196. package/lib/module/shared/components/screen-container/layers/surface-container.js +4 -16
  197. package/lib/module/shared/components/screen-container/layers/surface-container.js.map +1 -1
  198. package/lib/module/shared/index.js.map +1 -1
  199. package/lib/module/shared/providers/helpers/measured-bounds-writes.js +6 -3
  200. package/lib/module/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
  201. package/lib/module/shared/providers/screen/animation/helpers/derivations.js +1 -0
  202. package/lib/module/shared/providers/screen/animation/helpers/derivations.js.map +1 -1
  203. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +144 -25
  204. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  205. package/lib/module/shared/providers/screen/screen-composer.js +2 -2
  206. package/lib/module/shared/providers/screen/screen-composer.js.map +1 -1
  207. package/lib/module/shared/providers/screen/styles/helpers/compose-slot-style.js +89 -0
  208. package/lib/module/shared/providers/screen/styles/helpers/compose-slot-style.js.map +1 -0
  209. package/lib/module/shared/providers/screen/styles/helpers/normalize-slots.js +30 -9
  210. package/lib/module/shared/providers/screen/styles/helpers/normalize-slots.js.map +1 -1
  211. package/lib/module/shared/providers/screen/styles/helpers/opening-phase.js +26 -0
  212. package/lib/module/shared/providers/screen/styles/helpers/opening-phase.js.map +1 -0
  213. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +16 -11
  214. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  215. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js +2 -0
  216. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js.map +1 -1
  217. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js +0 -18
  218. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js.map +1 -1
  219. package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js +0 -9
  220. package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
  221. package/lib/module/shared/providers/screen/styles/hooks/slot-resolvers.js +87 -0
  222. package/lib/module/shared/providers/screen/styles/hooks/slot-resolvers.js.map +1 -0
  223. package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +36 -36
  224. package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  225. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +1 -19
  226. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  227. package/lib/module/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js +9 -4
  228. package/lib/module/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js.map +1 -1
  229. package/lib/module/shared/providers/screen/styles/index.js +2 -1
  230. package/lib/module/shared/providers/screen/styles/index.js.map +1 -1
  231. package/lib/module/shared/providers/screen/styles/slot.provider.js +66 -0
  232. package/lib/module/shared/providers/screen/styles/slot.provider.js.map +1 -0
  233. package/lib/module/shared/providers/screen/styles/stores/slot-references.store.js +47 -0
  234. package/lib/module/shared/providers/screen/styles/stores/slot-references.store.js.map +1 -0
  235. package/lib/module/shared/stores/bounds/helpers/link-pairs.helpers.js +33 -1
  236. package/lib/module/shared/stores/bounds/helpers/link-pairs.helpers.js.map +1 -1
  237. package/lib/module/shared/stores/bounds/internals/entries.js +11 -4
  238. package/lib/module/shared/stores/bounds/internals/entries.js.map +1 -1
  239. package/lib/module/shared/stores/bounds/internals/links.js +135 -53
  240. package/lib/module/shared/stores/bounds/internals/links.js.map +1 -1
  241. package/lib/module/shared/stores/bounds/internals/resolver.js +1 -3
  242. package/lib/module/shared/stores/bounds/internals/resolver.js.map +1 -1
  243. package/lib/module/shared/stores/system.store.js +5 -0
  244. package/lib/module/shared/stores/system.store.js.map +1 -1
  245. package/lib/module/shared/types/animation.types.js.map +1 -1
  246. package/lib/module/shared/utils/bounds/helpers/styles/compute.js +10 -69
  247. package/lib/module/shared/utils/bounds/helpers/styles/compute.js.map +1 -1
  248. package/lib/module/shared/utils/bounds/helpers/styles/local-transform.js +52 -0
  249. package/lib/module/shared/utils/bounds/helpers/styles/local-transform.js.map +1 -0
  250. package/lib/module/shared/utils/bounds/navigation/zoom/build.js +9 -2
  251. package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  252. package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js +58 -0
  253. package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  254. package/lib/module/shared/utils/logger.js +11 -0
  255. package/lib/module/shared/utils/logger.js.map +1 -1
  256. package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts.map +1 -1
  257. package/lib/typescript/shared/components/boundary/create-boundary-component.d.ts +0 -1
  258. package/lib/typescript/shared/components/boundary/create-boundary-component.d.ts.map +1 -1
  259. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-boundary-presence.d.ts +11 -0
  260. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-boundary-presence.d.ts.map +1 -0
  261. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts +10 -0
  262. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts.map +1 -0
  263. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-source-measurement.d.ts +8 -0
  264. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-source-measurement.d.ts.map +1 -0
  265. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.d.ts +10 -0
  266. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.d.ts.map +1 -0
  267. package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts +28 -0
  268. package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts.map +1 -0
  269. package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts +5 -6
  270. package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts.map +1 -1
  271. package/lib/typescript/shared/components/boundary/index.d.ts +36 -229
  272. package/lib/typescript/shared/components/boundary/index.d.ts.map +1 -1
  273. package/lib/typescript/shared/components/boundary/portal/components/boundary-local-portal-host.d.ts +8 -0
  274. package/lib/typescript/shared/components/boundary/portal/components/boundary-local-portal-host.d.ts.map +1 -0
  275. package/lib/typescript/shared/components/boundary/portal/components/host.d.ts.map +1 -1
  276. package/lib/typescript/shared/components/boundary/portal/components/portal-boundary-host.d.ts +1 -1
  277. package/lib/typescript/shared/components/boundary/portal/components/portal-boundary-host.d.ts.map +1 -1
  278. package/lib/typescript/shared/components/boundary/portal/components/portal.d.ts +4 -3
  279. package/lib/typescript/shared/components/boundary/portal/components/portal.d.ts.map +1 -1
  280. package/lib/typescript/shared/components/boundary/portal/hooks/use-host-measurement.d.ts.map +1 -1
  281. package/lib/typescript/shared/components/boundary/portal/stores/host-registry.store.d.ts +0 -7
  282. package/lib/typescript/shared/components/boundary/portal/stores/host-registry.store.d.ts.map +1 -1
  283. package/lib/typescript/shared/components/boundary/portal/stores/portal-boundary-host.store.d.ts +16 -1
  284. package/lib/typescript/shared/components/boundary/portal/stores/portal-boundary-host.store.d.ts.map +1 -1
  285. package/lib/typescript/shared/components/boundary/portal/teleport.d.ts +1 -1
  286. package/lib/typescript/shared/components/boundary/portal/teleport.d.ts.map +1 -1
  287. package/lib/typescript/shared/components/boundary/portal/utils/has-local-slot.d.ts +3 -0
  288. package/lib/typescript/shared/components/boundary/portal/utils/has-local-slot.d.ts.map +1 -0
  289. package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts +2 -1
  290. package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts.map +1 -1
  291. package/lib/typescript/shared/components/boundary/portal/utils/offset-style.d.ts +16 -32
  292. package/lib/typescript/shared/components/boundary/portal/utils/offset-style.d.ts.map +1 -1
  293. package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts +35 -0
  294. package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts.map +1 -0
  295. package/lib/typescript/shared/components/boundary/portal/utils/resolve-portal.d.ts +12 -0
  296. package/lib/typescript/shared/components/boundary/portal/utils/resolve-portal.d.ts.map +1 -0
  297. package/lib/typescript/shared/components/boundary/portal/utils/shallow-equal.d.ts +8 -0
  298. package/lib/typescript/shared/components/boundary/portal/utils/shallow-equal.d.ts.map +1 -0
  299. package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts +4 -0
  300. package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts.map +1 -1
  301. package/lib/typescript/shared/components/boundary/portal/utils/visible-host.d.ts +8 -0
  302. package/lib/typescript/shared/components/boundary/portal/utils/visible-host.d.ts.map +1 -0
  303. package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts +37 -0
  304. package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts.map +1 -0
  305. package/lib/typescript/shared/components/boundary/types.d.ts +9 -36
  306. package/lib/typescript/shared/components/boundary/types.d.ts.map +1 -1
  307. package/lib/typescript/shared/components/boundary/utils/destination-signals.d.ts +1 -0
  308. package/lib/typescript/shared/components/boundary/utils/destination-signals.d.ts.map +1 -1
  309. package/lib/typescript/shared/components/boundary/utils/refresh-signals.d.ts.map +1 -1
  310. package/lib/typescript/shared/components/boundary/utils/source-signals.d.ts +0 -1
  311. package/lib/typescript/shared/components/boundary/utils/source-signals.d.ts.map +1 -1
  312. package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
  313. package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts.map +1 -1
  314. package/lib/typescript/shared/components/screen-container/layers/content.d.ts.map +1 -1
  315. package/lib/typescript/shared/components/screen-container/layers/maybe-masked-navigation-container.d.ts.map +1 -1
  316. package/lib/typescript/shared/components/screen-container/layers/surface-container.d.ts.map +1 -1
  317. package/lib/typescript/shared/index.d.ts +3 -215
  318. package/lib/typescript/shared/index.d.ts.map +1 -1
  319. package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts +3 -3
  320. package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts.map +1 -1
  321. package/lib/typescript/shared/providers/screen/animation/helpers/derivations.d.ts +1 -0
  322. package/lib/typescript/shared/providers/screen/animation/helpers/derivations.d.ts.map +1 -1
  323. package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
  324. package/lib/typescript/shared/providers/screen/styles/helpers/compose-slot-style.d.ts +4 -0
  325. package/lib/typescript/shared/providers/screen/styles/helpers/compose-slot-style.d.ts.map +1 -0
  326. package/lib/typescript/shared/providers/screen/styles/helpers/normalize-slots.d.ts.map +1 -1
  327. package/lib/typescript/shared/providers/screen/styles/helpers/opening-phase.d.ts +16 -0
  328. package/lib/typescript/shared/providers/screen/styles/helpers/opening-phase.d.ts.map +1 -0
  329. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts +3 -4
  330. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts.map +1 -1
  331. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.d.ts +2 -1
  332. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.d.ts.map +1 -1
  333. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.d.ts +0 -1
  334. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.d.ts.map +1 -1
  335. package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts +0 -1
  336. package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts.map +1 -1
  337. package/lib/typescript/shared/providers/screen/styles/hooks/slot-resolvers.d.ts +11 -0
  338. package/lib/typescript/shared/providers/screen/styles/hooks/slot-resolvers.d.ts.map +1 -0
  339. package/lib/typescript/shared/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts +4 -6
  340. package/lib/typescript/shared/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts.map +1 -1
  341. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +0 -1
  342. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  343. package/lib/typescript/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.d.ts.map +1 -1
  344. package/lib/typescript/shared/providers/screen/styles/index.d.ts +2 -1
  345. package/lib/typescript/shared/providers/screen/styles/index.d.ts.map +1 -1
  346. package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts +18 -0
  347. package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts.map +1 -0
  348. package/lib/typescript/shared/providers/screen/styles/stores/slot-references.store.d.ts +6 -0
  349. package/lib/typescript/shared/providers/screen/styles/stores/slot-references.store.d.ts.map +1 -0
  350. package/lib/typescript/shared/stores/bounds/helpers/link-pairs.helpers.d.ts +8 -1
  351. package/lib/typescript/shared/stores/bounds/helpers/link-pairs.helpers.d.ts.map +1 -1
  352. package/lib/typescript/shared/stores/bounds/internals/entries.d.ts.map +1 -1
  353. package/lib/typescript/shared/stores/bounds/internals/links.d.ts +4 -3
  354. package/lib/typescript/shared/stores/bounds/internals/links.d.ts.map +1 -1
  355. package/lib/typescript/shared/stores/bounds/internals/resolver.d.ts.map +1 -1
  356. package/lib/typescript/shared/stores/bounds/types.d.ts +22 -20
  357. package/lib/typescript/shared/stores/bounds/types.d.ts.map +1 -1
  358. package/lib/typescript/shared/stores/system.store.d.ts +1 -0
  359. package/lib/typescript/shared/stores/system.store.d.ts.map +1 -1
  360. package/lib/typescript/shared/types/animation.types.d.ts +7 -1
  361. package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
  362. package/lib/typescript/shared/utils/bounds/helpers/styles/compute.d.ts.map +1 -1
  363. package/lib/typescript/shared/utils/bounds/helpers/styles/local-transform.d.ts +6 -0
  364. package/lib/typescript/shared/utils/bounds/helpers/styles/local-transform.d.ts.map +1 -0
  365. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  366. package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts +9 -0
  367. package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts.map +1 -1
  368. package/lib/typescript/shared/utils/logger.d.ts +6 -0
  369. package/lib/typescript/shared/utils/logger.d.ts.map +1 -1
  370. package/package.json +1 -1
  371. package/src/shared/components/boundary/components/boundary-target.tsx +30 -16
  372. package/src/shared/components/boundary/create-boundary-component.tsx +132 -164
  373. package/src/shared/components/boundary/hooks/lifecycles/use-boundary-presence.ts +41 -0
  374. package/src/shared/components/boundary/hooks/{use-initial-destination-measurement.ts → lifecycles/use-initial-destination-measurement.ts} +65 -22
  375. package/src/shared/components/boundary/hooks/{use-initial-source-measurement.ts → lifecycles/use-initial-source-measurement.ts} +10 -12
  376. package/src/shared/components/boundary/hooks/{use-refresh-boundary.ts → lifecycles/use-refresh-boundary.ts} +10 -10
  377. package/src/shared/components/boundary/hooks/use-boundary-measurement.ts +97 -0
  378. package/src/shared/components/boundary/hooks/use-measurer.ts +16 -24
  379. package/src/shared/components/boundary/index.tsx +56 -30
  380. package/src/shared/components/boundary/portal/components/boundary-local-portal-host.tsx +66 -0
  381. package/src/shared/components/boundary/portal/components/host.tsx +20 -5
  382. package/src/shared/components/boundary/portal/components/portal-boundary-host.tsx +67 -52
  383. package/src/shared/components/boundary/portal/components/portal.tsx +281 -120
  384. package/src/shared/components/boundary/portal/hooks/use-host-measurement.ts +23 -2
  385. package/src/shared/components/boundary/portal/stores/host-registry.store.ts +4 -51
  386. package/src/shared/components/boundary/portal/stores/portal-boundary-host.store.ts +59 -6
  387. package/src/shared/components/boundary/portal/teleport.ts +28 -3
  388. package/src/shared/components/boundary/portal/utils/has-local-slot.ts +16 -0
  389. package/src/shared/components/boundary/portal/utils/naming.ts +11 -1
  390. package/src/shared/components/boundary/portal/utils/offset-style.ts +37 -139
  391. package/src/shared/components/boundary/portal/utils/ownership.ts +371 -0
  392. package/src/shared/components/boundary/portal/utils/resolve-portal.ts +50 -0
  393. package/src/shared/components/boundary/portal/utils/shallow-equal.ts +25 -0
  394. package/src/shared/components/boundary/portal/utils/teleport-control.ts +12 -0
  395. package/src/shared/components/boundary/portal/utils/visible-host.ts +24 -0
  396. package/src/shared/components/boundary/providers/{boundary-owner.provider.tsx → boundary-root.provider.tsx} +33 -47
  397. package/src/shared/components/boundary/types.ts +9 -39
  398. package/src/shared/components/boundary/utils/destination-signals.ts +22 -2
  399. package/src/shared/components/boundary/utils/refresh-signals.ts +0 -41
  400. package/src/shared/components/boundary/utils/source-signals.ts +5 -17
  401. package/src/shared/components/create-transition-aware-component.tsx +3 -25
  402. package/src/shared/components/overlay/variations/float-overlay.tsx +3 -3
  403. package/src/shared/components/screen-container/layers/backdrop.tsx +4 -17
  404. package/src/shared/components/screen-container/layers/content.tsx +4 -16
  405. package/src/shared/components/screen-container/layers/maybe-masked-navigation-container.tsx +8 -18
  406. package/src/shared/components/screen-container/layers/surface-container.tsx +4 -17
  407. package/src/shared/index.ts +0 -5
  408. package/src/shared/providers/helpers/measured-bounds-writes.ts +6 -11
  409. package/src/shared/providers/screen/animation/helpers/derivations.ts +3 -0
  410. package/src/shared/providers/screen/animation/helpers/pipeline.ts +251 -68
  411. package/src/shared/providers/screen/screen-composer.tsx +3 -3
  412. package/src/shared/providers/screen/styles/helpers/compose-slot-style.ts +129 -0
  413. package/src/shared/providers/screen/styles/helpers/normalize-slots.ts +45 -8
  414. package/src/shared/providers/screen/styles/helpers/opening-phase.ts +25 -0
  415. package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/index.ts +22 -12
  416. package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.ts +3 -1
  417. package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.ts +0 -24
  418. package/src/shared/providers/screen/styles/helpers/visibility-gate.ts +0 -12
  419. package/src/shared/providers/screen/styles/hooks/slot-resolvers.tsx +111 -0
  420. package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +48 -38
  421. package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +0 -18
  422. package/src/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.tsx +17 -4
  423. package/src/shared/providers/screen/styles/index.tsx +13 -4
  424. package/src/shared/providers/screen/styles/slot.provider.tsx +93 -0
  425. package/src/shared/providers/screen/styles/stores/slot-references.store.ts +71 -0
  426. package/src/shared/stores/bounds/helpers/link-pairs.helpers.ts +41 -1
  427. package/src/shared/stores/bounds/internals/entries.ts +13 -5
  428. package/src/shared/stores/bounds/internals/links.ts +167 -85
  429. package/src/shared/stores/bounds/internals/resolver.ts +0 -2
  430. package/src/shared/stores/bounds/types.ts +24 -22
  431. package/src/shared/stores/system.store.ts +6 -0
  432. package/src/shared/types/animation.types.ts +8 -1
  433. package/src/shared/utils/bounds/helpers/styles/compute.ts +22 -124
  434. package/src/shared/utils/bounds/helpers/styles/local-transform.ts +86 -0
  435. package/src/shared/utils/bounds/navigation/zoom/build.ts +9 -1
  436. package/src/shared/utils/bounds/navigation/zoom/helpers.ts +96 -0
  437. package/src/shared/utils/logger.ts +12 -0
  438. package/lib/commonjs/shared/components/boundary/hooks/use-boundary-presence.js.map +0 -1
  439. package/lib/commonjs/shared/components/boundary/hooks/use-initial-destination-measurement.js.map +0 -1
  440. package/lib/commonjs/shared/components/boundary/hooks/use-initial-source-measurement.js.map +0 -1
  441. package/lib/commonjs/shared/components/boundary/hooks/use-refresh-boundary.js.map +0 -1
  442. package/lib/commonjs/shared/components/boundary/portal/utils/attachment.js +0 -40
  443. package/lib/commonjs/shared/components/boundary/portal/utils/attachment.js.map +0 -1
  444. package/lib/commonjs/shared/components/boundary/providers/boundary-owner.provider.js +0 -68
  445. package/lib/commonjs/shared/components/boundary/providers/boundary-owner.provider.js.map +0 -1
  446. package/lib/commonjs/shared/providers/screen/styles/helpers/preserve-animated-props-only.js +0 -26
  447. package/lib/commonjs/shared/providers/screen/styles/helpers/preserve-animated-props-only.js.map +0 -1
  448. package/lib/commonjs/shared/providers/screen/styles/styles.provider.js.map +0 -1
  449. package/lib/module/shared/components/boundary/hooks/use-boundary-presence.js +0 -23
  450. package/lib/module/shared/components/boundary/hooks/use-boundary-presence.js.map +0 -1
  451. package/lib/module/shared/components/boundary/hooks/use-initial-destination-measurement.js.map +0 -1
  452. package/lib/module/shared/components/boundary/hooks/use-initial-source-measurement.js.map +0 -1
  453. package/lib/module/shared/components/boundary/hooks/use-refresh-boundary.js.map +0 -1
  454. package/lib/module/shared/components/boundary/portal/utils/attachment.js +0 -35
  455. package/lib/module/shared/components/boundary/portal/utils/attachment.js.map +0 -1
  456. package/lib/module/shared/components/boundary/providers/boundary-owner.provider.js +0 -60
  457. package/lib/module/shared/components/boundary/providers/boundary-owner.provider.js.map +0 -1
  458. package/lib/module/shared/providers/screen/styles/helpers/preserve-animated-props-only.js +0 -21
  459. package/lib/module/shared/providers/screen/styles/helpers/preserve-animated-props-only.js.map +0 -1
  460. package/lib/module/shared/providers/screen/styles/styles.provider.js +0 -53
  461. package/lib/module/shared/providers/screen/styles/styles.provider.js.map +0 -1
  462. package/lib/typescript/shared/components/boundary/hooks/use-boundary-presence.d.ts +0 -8
  463. package/lib/typescript/shared/components/boundary/hooks/use-boundary-presence.d.ts.map +0 -1
  464. package/lib/typescript/shared/components/boundary/hooks/use-initial-destination-measurement.d.ts +0 -9
  465. package/lib/typescript/shared/components/boundary/hooks/use-initial-destination-measurement.d.ts.map +0 -1
  466. package/lib/typescript/shared/components/boundary/hooks/use-initial-source-measurement.d.ts +0 -9
  467. package/lib/typescript/shared/components/boundary/hooks/use-initial-source-measurement.d.ts.map +0 -1
  468. package/lib/typescript/shared/components/boundary/hooks/use-refresh-boundary.d.ts +0 -10
  469. package/lib/typescript/shared/components/boundary/hooks/use-refresh-boundary.d.ts.map +0 -1
  470. package/lib/typescript/shared/components/boundary/portal/utils/attachment.d.ts +0 -21
  471. package/lib/typescript/shared/components/boundary/portal/utils/attachment.d.ts.map +0 -1
  472. package/lib/typescript/shared/components/boundary/providers/boundary-owner.provider.d.ts +0 -44
  473. package/lib/typescript/shared/components/boundary/providers/boundary-owner.provider.d.ts.map +0 -1
  474. package/lib/typescript/shared/providers/screen/styles/helpers/preserve-animated-props-only.d.ts +0 -3
  475. package/lib/typescript/shared/providers/screen/styles/helpers/preserve-animated-props-only.d.ts.map +0 -1
  476. package/lib/typescript/shared/providers/screen/styles/styles.provider.d.ts +0 -14
  477. package/lib/typescript/shared/providers/screen/styles/styles.provider.d.ts.map +0 -1
  478. package/src/shared/components/boundary/hooks/use-boundary-presence.ts +0 -28
  479. package/src/shared/components/boundary/portal/utils/attachment.ts +0 -48
  480. package/src/shared/providers/screen/styles/helpers/preserve-animated-props-only.ts +0 -22
  481. package/src/shared/providers/screen/styles/styles.provider.tsx +0 -60
@@ -5,11 +5,11 @@ import {
5
5
  FULLSCREEN_DIMENSIONS,
6
6
  NO_STYLES,
7
7
  } from "../../../../constants";
8
+ import { createScreenPairKey } from "../../../../stores/bounds/helpers/link-pairs.helpers";
9
+ import { requestSourceMeasure } from "../../../../stores/bounds/internals/links";
8
10
  import { resolveTransitionPair } from "../../../../stores/bounds/internals/resolver";
9
11
  import type { ResolvedTransitionPair } from "../../../../stores/bounds/types";
10
- import { getClampedScrollAxisDelta } from "../../../../stores/scroll.store";
11
12
  import type { ScreenTransitionState } from "../../../../types/animation.types";
12
- import type { ScrollMetadataState } from "../../../../types/gesture.types";
13
13
  import type { Layout } from "../../../../types/screen.types";
14
14
  import type {
15
15
  BoundId,
@@ -28,49 +28,7 @@ import {
28
28
  composeTransformRelative,
29
29
  type ElementComposeParams,
30
30
  } from "./composers";
31
-
32
- const getBoundsScrollSnapshot = (
33
- bounds: MeasuredDimensions | null,
34
- ): ScrollMetadataState | null => {
35
- "worklet";
36
- return (
37
- (bounds as { scroll?: ScrollMetadataState | null } | null)?.scroll ?? null
38
- );
39
- };
40
-
41
- const getScreenScrollMetadata = (
42
- screenKey: string | null,
43
- previous: ScreenTransitionState | undefined,
44
- current: ScreenTransitionState | undefined,
45
- next: ScreenTransitionState | undefined,
46
- ): ScrollMetadataState | null => {
47
- "worklet";
48
- if (!screenKey) return null;
49
- if (previous?.route.key === screenKey)
50
- return previous.layouts?.scroll ?? null;
51
- if (current?.route.key === screenKey) return current.layouts?.scroll ?? null;
52
- if (next?.route.key === screenKey) return next.layouts?.scroll ?? null;
53
- return null;
54
- };
55
-
56
- const shiftBounds = (
57
- bounds: MeasuredDimensions,
58
- dx: number,
59
- dy: number,
60
- ): MeasuredDimensions => {
61
- "worklet";
62
- if (dx === 0 && dy === 0) {
63
- return bounds;
64
- }
65
-
66
- return {
67
- ...bounds,
68
- x: bounds.x + dx,
69
- y: bounds.y + dy,
70
- pageX: bounds.pageX + dx,
71
- pageY: bounds.pageY + dy,
72
- };
73
- };
31
+ import { attachBoundsLocalTransform } from "./local-transform";
74
32
 
75
33
  const resolveStartEnd = (params: {
76
34
  id: BoundId;
@@ -94,6 +52,12 @@ const resolveStartEnd = (params: {
94
52
  const currentScreenKey = params.current?.route.key;
95
53
  const previousScreenKey = params.previous?.route.key;
96
54
  const nextScreenKey = params.next?.route.key;
55
+ const sourceMeasurePairKey =
56
+ entering && previousScreenKey && currentScreenKey
57
+ ? createScreenPairKey(previousScreenKey, currentScreenKey)
58
+ : !entering && currentScreenKey && nextScreenKey
59
+ ? createScreenPairKey(currentScreenKey, nextScreenKey)
60
+ : null;
97
61
 
98
62
  const resolvedPair =
99
63
  params.resolvedPair ??
@@ -108,6 +72,10 @@ const resolveStartEnd = (params: {
108
72
  const destinationBounds = resolvedPair.destinationBounds;
109
73
 
110
74
  if (!sourceBounds) {
75
+ if (hasTargetOverride && sourceMeasurePairKey) {
76
+ requestSourceMeasure(sourceMeasurePairKey, String(params.id));
77
+ }
78
+
111
79
  return {
112
80
  start: null,
113
81
  end: null,
@@ -132,80 +100,7 @@ const resolveStartEnd = (params: {
132
100
  };
133
101
  }
134
102
 
135
- /**
136
- * Teleport continuity: this screen's source content physically renders
137
- * inside the matched screen's portal host, which travels with that screen's
138
- * ScrollView. Screen-fixed rects (the source, fullscreen/custom targets)
139
- * must be expressed in the host's frame by the clamped scroll travel since
140
- * the destination capture. The destination rect rides with the host, so it
141
- * stays untouched. Classic two-component links never set a portal host and
142
- * skip this entirely.
143
- */
144
- const isTeleportedSourceElement =
145
- resolvedPair.sourcePortalAttachTarget === "matched-screen" &&
146
- !!currentScreenKey &&
147
- currentScreenKey === resolvedPair.sourceScreenKey &&
148
- !!resolvedPair.destinationScreenKey &&
149
- currentScreenKey !== resolvedPair.destinationScreenKey &&
150
- params.computeOptions.method !== "content";
151
-
152
- let teleportShiftX = 0;
153
- let teleportShiftY = 0;
154
- let sourceScrollShiftX = 0;
155
- let sourceScrollShiftY = 0;
156
-
157
- if (isTeleportedSourceElement) {
158
- const capturedScroll = getBoundsScrollSnapshot(destinationBounds);
159
- const liveScroll = getScreenScrollMetadata(
160
- resolvedPair.destinationScreenKey,
161
- params.previous,
162
- params.current,
163
- params.next,
164
- );
165
- teleportShiftX = getClampedScrollAxisDelta(
166
- liveScroll,
167
- capturedScroll,
168
- "horizontal",
169
- );
170
- teleportShiftY = getClampedScrollAxisDelta(
171
- liveScroll,
172
- capturedScroll,
173
- "vertical",
174
- );
175
-
176
- // A source that lives inside its own scroll host travels with that
177
- // ScrollView in page space. Shifting the start rect by the clamped source
178
- // scroll travel keeps it aligned with the live placeholder; the host
179
- // placement applies the identical shift, so the shifts cancel at full
180
- // progress and the open frame is untouched. Screen-fixed rects (the
181
- // fullscreen/custom end targets below) are not inside the scroll content
182
- // and keep only the destination shift.
183
- if (resolvedPair.sourceHost?.capturesScroll) {
184
- const capturedSourceScroll = getBoundsScrollSnapshot(sourceBounds);
185
- const liveSourceScroll = getScreenScrollMetadata(
186
- resolvedPair.sourceScreenKey,
187
- params.previous,
188
- params.current,
189
- params.next,
190
- );
191
- sourceScrollShiftX = getClampedScrollAxisDelta(
192
- liveSourceScroll,
193
- capturedSourceScroll,
194
- "horizontal",
195
- );
196
- sourceScrollShiftY = getClampedScrollAxisDelta(
197
- liveSourceScroll,
198
- capturedSourceScroll,
199
- "vertical",
200
- );
201
- }
202
- }
203
-
204
- const start = shiftBounds(
205
- sourceBounds,
206
- teleportShiftX - sourceScrollShiftX,
207
- teleportShiftY - sourceScrollShiftY,
208
- );
103
+ const start = sourceBounds;
209
104
  let end = destinationBounds ?? fullscreen;
210
105
 
211
106
  if (isFullscreenTarget) {
@@ -217,10 +112,6 @@ const resolveStartEnd = (params: {
217
112
  end = customTarget;
218
113
  }
219
114
 
220
- if (hasTargetOverride) {
221
- end = shiftBounds(end, teleportShiftX, teleportShiftY);
222
- }
223
-
224
115
  return {
225
116
  start,
226
117
  end,
@@ -322,11 +213,18 @@ export const computeBoundStyles = (
322
213
  const isSize = computeOptions.method === "size";
323
214
  const isAbsolute = computeOptions.space === "absolute";
324
215
 
325
- return isSize
216
+ const style = isSize
326
217
  ? isAbsolute
327
218
  ? composeSizeAbsolute(common)
328
219
  : composeSizeRelative(common)
329
220
  : isAbsolute
330
221
  ? composeTransformAbsolute(common)
331
222
  : composeTransformRelative(common);
223
+
224
+ return attachBoundsLocalTransform(
225
+ style,
226
+ entering
227
+ ? (resolvedPair?.destinationStyles ?? null)
228
+ : (resolvedPair?.sourceStyles ?? null),
229
+ );
332
230
  };
@@ -0,0 +1,86 @@
1
+ import type { StyleProps, TransformArrayItem } from "react-native-reanimated";
2
+
3
+ export const BOUNDS_LOCAL_TRANSFORM_STYLE_KEY =
4
+ "__screenTransitionsBoundsLocalTransform";
5
+
6
+ type BoundsLocalTransformStyle = StyleProps & {
7
+ [BOUNDS_LOCAL_TRANSFORM_STYLE_KEY]?: TransformArrayItem[];
8
+ };
9
+
10
+ const getTransformFromPreparedStyle = (
11
+ style: unknown,
12
+ ): TransformArrayItem[] | undefined => {
13
+ "worklet";
14
+
15
+ if (
16
+ style === null ||
17
+ style === undefined ||
18
+ typeof style !== "object" ||
19
+ Array.isArray(style)
20
+ ) {
21
+ return undefined;
22
+ }
23
+
24
+ const transform = (style as Record<string, unknown>).transform;
25
+
26
+ return Array.isArray(transform)
27
+ ? (transform as TransformArrayItem[])
28
+ : undefined;
29
+ };
30
+
31
+ export const attachBoundsLocalTransform = (
32
+ slotStyle: StyleProps,
33
+ localStyle: StyleProps | null | undefined,
34
+ ): StyleProps => {
35
+ "worklet";
36
+ const localTransform = getTransformFromPreparedStyle(localStyle);
37
+
38
+ if (!localTransform?.length) {
39
+ return slotStyle;
40
+ }
41
+
42
+ const next: Record<string, unknown> = {};
43
+ const source = slotStyle as Record<string, unknown>;
44
+
45
+ for (const key in source) {
46
+ next[key] = source[key];
47
+ }
48
+
49
+ next[BOUNDS_LOCAL_TRANSFORM_STYLE_KEY] = localTransform;
50
+
51
+ return next as BoundsLocalTransformStyle;
52
+ };
53
+
54
+ export const getBoundsLocalTransform = (
55
+ style: StyleProps | undefined,
56
+ ): TransformArrayItem[] | undefined => {
57
+ "worklet";
58
+ if (!style) {
59
+ return undefined;
60
+ }
61
+
62
+ return (style as BoundsLocalTransformStyle)[BOUNDS_LOCAL_TRANSFORM_STYLE_KEY];
63
+ };
64
+
65
+ export const stripBoundsLocalTransform = (style: StyleProps): StyleProps => {
66
+ "worklet";
67
+ if (
68
+ (style as BoundsLocalTransformStyle)[BOUNDS_LOCAL_TRANSFORM_STYLE_KEY] ===
69
+ undefined
70
+ ) {
71
+ return style;
72
+ }
73
+
74
+ const rest: Record<string, unknown> = {};
75
+ const source = style as Record<string, unknown>;
76
+
77
+ for (const key in source) {
78
+ if (key === BOUNDS_LOCAL_TRANSFORM_STYLE_KEY) {
79
+ continue;
80
+ }
81
+
82
+ rest[key] = source[key];
83
+ }
84
+
85
+ return rest as StyleProps;
86
+ };
@@ -33,6 +33,7 @@ import {
33
33
  resolveBackgroundScale,
34
34
  resolveDragScaleTuple,
35
35
  resolveDragTranslationTuple,
36
+ resolveZoomPanGestureDirection,
36
37
  } from "./helpers";
37
38
  import { resolveDirectionalDragTranslation } from "./math";
38
39
  import type { BuildZoomStylesParams, ZoomInterpolatedStyle } from "./types";
@@ -139,7 +140,14 @@ export function buildZoomStyles({
139
140
  const gestureHandoff = liveGesture.handoff;
140
141
  const normX = gestureHandoff.normX;
141
142
  const normY = gestureHandoff.normY;
142
- const initialGesture = gestureHandoff.active ?? gestureHandoff.direction;
143
+ const initialGesture = resolveZoomPanGestureDirection({
144
+ active: gestureHandoff.active,
145
+ direction: gestureHandoff.direction,
146
+ normX,
147
+ normY,
148
+ rawNormX: gestureHandoff.raw.normX,
149
+ rawNormY: gestureHandoff.raw.normY,
150
+ });
143
151
  const isHorizontalDismiss =
144
152
  initialGesture === "horizontal" || initialGesture === "horizontal-inverted";
145
153
  const isVerticalDismiss =
@@ -1,5 +1,10 @@
1
1
  import { interpolate } from "react-native-reanimated";
2
+ import { EPSILON } from "../../../../constants";
2
3
  import type { BoundsLink } from "../../../../types/bounds.types";
4
+ import type {
5
+ ActiveGesture,
6
+ ResolvedPanGestureDirection,
7
+ } from "../../../../types/gesture.types";
3
8
  import type { Layout } from "../../../../types/screen.types";
4
9
  import type { BoundsOptions } from "../../types/options";
5
10
  import {
@@ -94,6 +99,97 @@ export function resolveBackgroundScale(value: number | undefined) {
94
99
  return value ?? ZOOM_BACKGROUND_SCALE;
95
100
  }
96
101
 
102
+ const isResolvedPanDirection = (
103
+ direction: ActiveGesture | null | undefined,
104
+ ): direction is ResolvedPanGestureDirection => {
105
+ "worklet";
106
+ return (
107
+ direction === "horizontal" ||
108
+ direction === "horizontal-inverted" ||
109
+ direction === "vertical" ||
110
+ direction === "vertical-inverted"
111
+ );
112
+ };
113
+
114
+ const resolveMotionDirection = ({
115
+ normX,
116
+ normY,
117
+ rawNormX,
118
+ rawNormY,
119
+ }: {
120
+ normX: number;
121
+ normY: number;
122
+ rawNormX: number;
123
+ rawNormY: number;
124
+ }): ResolvedPanGestureDirection | null => {
125
+ "worklet";
126
+ const motionX = Math.max(Math.abs(normX), Math.abs(rawNormX));
127
+ const motionY = Math.max(Math.abs(normY), Math.abs(rawNormY));
128
+
129
+ if (motionX <= EPSILON && motionY <= EPSILON) {
130
+ return null;
131
+ }
132
+
133
+ if (motionY > motionX + EPSILON) {
134
+ return normY < 0 || rawNormY < 0 ? "vertical-inverted" : "vertical";
135
+ }
136
+
137
+ if (motionX > motionY + EPSILON) {
138
+ return normX < 0 || rawNormX < 0 ? "horizontal-inverted" : "horizontal";
139
+ }
140
+
141
+ return null;
142
+ };
143
+
144
+ export function resolveZoomPanGestureDirection({
145
+ active,
146
+ direction,
147
+ normX,
148
+ normY,
149
+ rawNormX,
150
+ rawNormY,
151
+ }: {
152
+ active: ActiveGesture | null | undefined;
153
+ direction: ActiveGesture | null | undefined;
154
+ normX: number;
155
+ normY: number;
156
+ rawNormX: number;
157
+ rawNormY: number;
158
+ }): ResolvedPanGestureDirection | null {
159
+ "worklet";
160
+ const storedDirection = active ?? direction;
161
+ const motionDirection = resolveMotionDirection({
162
+ normX,
163
+ normY,
164
+ rawNormX,
165
+ rawNormY,
166
+ });
167
+
168
+ if (!isResolvedPanDirection(storedDirection)) {
169
+ return motionDirection;
170
+ }
171
+
172
+ if (!motionDirection) {
173
+ return storedDirection;
174
+ }
175
+
176
+ const storedIsHorizontal =
177
+ storedDirection === "horizontal" ||
178
+ storedDirection === "horizontal-inverted";
179
+ const storedMotion = storedIsHorizontal
180
+ ? Math.max(Math.abs(normX), Math.abs(rawNormX))
181
+ : Math.max(Math.abs(normY), Math.abs(rawNormY));
182
+ const oppositeMotion = storedIsHorizontal
183
+ ? Math.max(Math.abs(normY), Math.abs(rawNormY))
184
+ : Math.max(Math.abs(normX), Math.abs(rawNormX));
185
+
186
+ if (oppositeMotion > storedMotion + EPSILON) {
187
+ return motionDirection;
188
+ }
189
+
190
+ return storedDirection;
191
+ }
192
+
97
193
  export function interpolateOpacityRange(params: {
98
194
  progress: number;
99
195
  range: {
@@ -1,5 +1,7 @@
1
1
  const LIBRARY_NAME = "react-native-screen-transitions";
2
2
 
3
+ const warnedKeys = new Set<string>();
4
+
3
5
  export const logger = {
4
6
  error(message: string) {
5
7
  "worklet";
@@ -9,4 +11,14 @@ export const logger = {
9
11
  "worklet";
10
12
  console.warn(`[${LIBRARY_NAME}] ${message}`);
11
13
  },
14
+ /**
15
+ * Warns at most once per `key` for the lifetime of the JS context. Use for
16
+ * install/config-level conditions that would otherwise spam every render or
17
+ * every mounted instance. JS-thread only (not a worklet).
18
+ */
19
+ warnOnce(key: string, message: string) {
20
+ if (warnedKeys.has(key)) return;
21
+ warnedKeys.add(key);
22
+ console.warn(`[${LIBRARY_NAME}] ${message}`);
23
+ },
12
24
  };
@@ -1 +0,0 @@
1
- {"version":3,"names":["_react","require","_reactNativeReanimated","_entries","useBoundaryPresence","params","enabled","entryTag","currentScreenKey","boundaryConfig","useLayoutEffect","runOnUI","setEntry","removeEntry","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/hooks/use-boundary-presence.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAMO,MAAMG,mBAAmB,GAAIC,MAKnC,IAAK;EACL,MAAM;IAAEC,OAAO;IAAEC,QAAQ;IAAEC,gBAAgB;IAAEC;EAAe,CAAC,GAAGJ,MAAM;EAEtE,IAAAK,sBAAe,EAAC,MAAM;IACrB,IAAI,CAACJ,OAAO,EAAE;IAEd,IAAAK,8BAAO,EAACC,iBAAQ,CAAC,CAACL,QAAQ,EAAEC,gBAAgB,EAAE;MAC7CC;IACD,CAAC,CAAC;IAEF,OAAO,MAAM;MACZ,IAAAE,8BAAO,EAACE,oBAAW,CAAC,CAACN,QAAQ,EAAEC,gBAAgB,CAAC;IACjD,CAAC;EACF,CAAC,EAAE,CAACF,OAAO,EAAEC,QAAQ,EAAEC,gBAAgB,EAAEC,cAAc,CAAC,CAAC;AAC1D,CAAC;AAACK,OAAA,CAAAV,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactNativeReanimated","require","_descriptors","_animation","_links","_state","_system","_logger","_destinationSignals","VIEWPORT_RETRY_DELAY_MS","MAX_VIEWPORT_RETRIES","useInitialDestinationMeasurement","linkId","enabled","measureBoundary","currentScreenKey","useDescriptorsStore","s","derivations","nextScreenKey","destinationPairKey","ancestorDestinationPairKey","destinationEnabled","progress","AnimationStore","getValue","system","SystemStore","getBag","pendingLifecycleRequestKind","blockLifecycleStart","unblockLifecycleStart","actions","isBlockingLifecycleStart","useSharedValue","retryToken","viewportRetries","hasGivenUp","releaseLifecycleStartBlock","cancelAnimation","get","set","useAnimatedReaction","retryTick","hasPendingOpenRequest","LifecycleTransitionRequestKind","Open","isWaitingForOpenToStart","measurePairKey","getInitialDestinationMeasurePairKey","linkState","pairs","undefined","type","pairKey","destinationAttached","getDestination","logger","warn","withDelay","withTiming","duration","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/hooks/use-initial-destination-measurement.ts"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AAOA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAIA,IAAAM,OAAA,GAAAN,OAAA;AAEA,IAAAO,mBAAA,GAAAP,OAAA;AAEA,MAAMQ,uBAAuB,GAAG,EAAE;AAClC;AACA;AACA;AACA;AACA;AACA,MAAMC,oBAAoB,GAAG,EAAE;AAQxB,MAAMC,gCAAgC,GAAGA,CAAC;EAChDC,MAAM;EACNC,OAAO;EACPC;AACuC,CAAC,KAAK;EAC7C,MAAMC,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,GAAGT,OAAO,IAAI,CAACM,aAAa;EACpD,MAAMI,QAAQ,GAAGC,yBAAc,CAACC,QAAQ,CACvCV,gBAAgB,EAChB,oBACD,CAAC;EACD,MAAMW,MAAM,GAAGC,mBAAW,CAACC,MAAM,CAACb,gBAAgB,CAAC;EACnD,MAAM;IAAEc;EAA4B,CAAC,GAAGH,MAAM;EAC9C,MAAM;IAAEI,mBAAmB;IAAEC;EAAsB,CAAC,GAAGL,MAAM,CAACM,OAAO;EACrE,MAAMC,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;IAEAT,qBAAqB,CAAC,CAAC;IACvBE,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,GAC1Bf,2BAA2B,CAACW,GAAG,CAAC,CAAC,KACjCK,sCAA8B,CAACC,IAAI;IAEpC,MAAMC,uBAAuB,GAAGxB,QAAQ,CAACiB,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;MAC1DpC,OAAO,EAAES,kBAAkB;MAC3BF,kBAAkB;MAClBC,0BAA0B;MAC1BT,MAAM;MACNsC,SAAS,EACR5B,kBAAkB,KACjBF,kBAAkB,IAAIC,0BAA0B,CAAC,GAC/C8B,YAAK,CAACX,GAAG,CAAC,CAAC,GACXY;IACL,CAAC,CAAC;IAEF,OAAO,CAACJ,cAAc,EAAEL,SAAS,CAAC;EACnC,CAAC,EACD,CAAC,CAACK,cAAc,CAAC,KAAK;IACrB,SAAS;;IACT,IAAI,CAACA,cAAc,EAAE;MACpBV,0BAA0B,CAAC,CAAC;MAC5BF,eAAe,CAACK,GAAG,CAAC,CAAC,CAAC;MACtBJ,UAAU,CAACI,GAAG,CAAC,CAAC,CAAC;MACjB;IACD;IAEA,IAAIJ,UAAU,CAACG,GAAG,CAAC,CAAC,EAAE;MACrB;IACD;IAEA,IAAI,CAACP,wBAAwB,CAACO,GAAG,CAAC,CAAC,EAAE;MACpCV,mBAAmB,CAAC,CAAC;MACrBG,wBAAwB,CAACQ,GAAG,CAAC,CAAC,CAAC;IAChC;IAEA3B,eAAe,CAAC;MACfuC,IAAI,EAAE,aAAa;MACnBC,OAAO,EAAEN;IACV,CAAC,CAAC;IAEF,MAAMO,mBAAmB,GACxB,IAAAC,qBAAc,EAACR,cAAc,EAAEpC,MAAM,CAAC,KAAK,IAAI;IAEhD,IAAI2C,mBAAmB,EAAE;MACxBjB,0BAA0B,CAAC,CAAC;MAC5BF,eAAe,CAACK,GAAG,CAAC,CAAC,CAAC;MACtB;IACD;IAEA,IAAIL,eAAe,CAACI,GAAG,CAAC,CAAC,IAAI9B,oBAAoB,EAAE;MAClD2B,UAAU,CAACI,GAAG,CAAC,CAAC,CAAC;MACjBH,0BAA0B,CAAC,CAAC;MAC5BmB,cAAM,CAACC,IAAI,CACV,yBAAyB9C,MAAM,8CAA8CF,oBAAoB,0JAClG,CAAC;MACD;IACD;;IAEA;IACA;IACA0B,eAAe,CAACK,GAAG,CAACL,eAAe,CAACI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAAD,sCAAe,EAACJ,UAAU,CAAC;IAC3BA,UAAU,CAACM,GAAG,CACb,IAAAkB,gCAAS,EACRlD,uBAAuB,EACvB,IAAAmD,iCAAU,EAACzB,UAAU,CAACK,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE;MAAEqB,QAAQ,EAAE;IAAE,CAAC,CACjD,CACD,CAAC;EACF,CACD,CAAC;AACF,CAAC;AAACC,OAAA,CAAAnD,gCAAA,GAAAA,gCAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactNativeReanimated","require","_descriptors","_state","_sourceSignals","useInitialSourceMeasurement","params","enabled","measureBoundary","linkId","group","shouldAutoMeasure","sourcePairKey","useDescriptorsStore","s","derivations","lastSourceCaptureSignal","useSharedValue","useAnimatedReaction","getInitialSourceCaptureSignal","linkState","pairs","get","undefined","captureSignal","set","signal","type","pairKey","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/hooks/use-initial-source-measurement.ts"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAEA,IAAAG,cAAA,GAAAH,OAAA;AAEO,MAAMI,2BAA2B,GAAIC,MAM3C,IAAK;EACL,MAAM;IAAEC,OAAO;IAAEC,eAAe;IAAEC,MAAM;IAAEC,KAAK;IAAEC;EAAkB,CAAC,GAAGL,MAAM;EAC7E,MAAMM,aAAa,GAAG,IAAAC,gCAAmB,EAAEC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACH,aAAa,CAAC;EAC7E,MAAMI,uBAAuB,GAAG,IAAAC,qCAAc,EAAgB,IAAI,CAAC;EAEnE,IAAAC,0CAAmB,EAClB,MAAM;IACL,SAAS;;IACT,OAAO,IAAAC,4CAA6B,EAAC;MACpCZ,OAAO;MACPK,aAAa;MACbH,MAAM;MACNC,KAAK;MACLC,iBAAiB;MACjBS,SAAS,EAAET,iBAAiB,IAAIC,aAAa,GAAGS,YAAK,CAACC,GAAG,CAAC,CAAC,GAAGC;IAC/D,CAAC,CAAC;EACH,CAAC,EACAC,aAAa,IAAK;IAClB,SAAS;;IACT,IAAI,CAACjB,OAAO,IAAI,CAACiB,aAAa,EAAE;MAC/BR,uBAAuB,CAACS,GAAG,CAAC,IAAI,CAAC;MACjC;IACD;IAEA,IAAIT,uBAAuB,CAACM,GAAG,CAAC,CAAC,KAAKE,aAAa,CAACE,MAAM,EAAE;MAC3D;IACD;IAEAV,uBAAuB,CAACS,GAAG,CAACD,aAAa,CAACE,MAAM,CAAC;IACjDlB,eAAe,CAAC;MACfmB,IAAI,EAAE,QAAQ;MACdC,OAAO,EAAEJ,aAAa,CAACI;IACxB,CAAC,CAAC;EACH,CACD,CAAC;AACF,CAAC;AAACC,OAAA,CAAAxB,2BAAA,GAAAA,2BAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactNativeReanimated","require","_descriptors","_animation","_state","_refreshSignals","useRefreshBoundary","enabled","linkId","group","measureBoundary","currentScreenKey","useDescriptorsStore","s","derivations","nextScreenKey","sourcePairKey","destinationPairKey","ancestorDestinationPairKey","refreshScreenKey","refreshWillAnimate","AnimationStore","getValue","refreshClosing","refreshEntering","refreshAnimating","refreshProgress","useAnimatedReaction","getRefreshBoundarySignal","shouldRefresh","get","closing","entering","animating","progress","linkState","pairs","refreshSignal","prevRefreshSignal","signal","type","pairKey","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/hooks/use-refresh-boundary.ts"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAEA,IAAAI,eAAA,GAAAJ,OAAA;AASO,MAAMK,kBAAkB,GAAGA,CAAC;EAClCC,OAAO;EACPC,MAAM;EACNC,KAAK;EACLC;AACyB,CAAC,KAAK;EAC/B,MAAMC,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,aAAa,GAAG,IAAAJ,gCAAmB,EAAEC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACE,aAAa,CAAC;EAC7E,MAAMC,kBAAkB,GAAG,IAAAL,gCAAmB,EAC5CC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACG,kBACtB,CAAC;EACD,MAAMC,0BAA0B,GAAG,IAAAN,gCAAmB,EACpDC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACI,0BACtB,CAAC;EACD;EACA;EACA,MAAMC,gBAAgB,GAAGJ,aAAa,IAAIJ,gBAAgB;EAC1D,MAAMS,kBAAkB,GAAGC,yBAAc,CAACC,QAAQ,CACjDH,gBAAgB,EAChB,aACD,CAAC;EACD,MAAMI,cAAc,GAAGF,yBAAc,CAACC,QAAQ,CAACH,gBAAgB,EAAE,SAAS,CAAC;EAC3E,MAAMK,eAAe,GAAGH,yBAAc,CAACC,QAAQ,CAACH,gBAAgB,EAAE,UAAU,CAAC;EAC7E,MAAMM,gBAAgB,GAAGJ,yBAAc,CAACC,QAAQ,CAC/CH,gBAAgB,EAChB,mBACD,CAAC;EACD,MAAMO,eAAe,GAAGL,yBAAc,CAACC,QAAQ,CAC9CH,gBAAgB,EAChB,oBACD,CAAC;EAED,IAAAQ,0CAAmB,EAClB,MAAM;IACL,SAAS;;IACT,OAAO,IAAAC,wCAAwB,EAAC;MAC/BrB,OAAO;MACPI,gBAAgB;MAChBK,aAAa;MACbC,kBAAkB;MAClBC,0BAA0B;MAC1BH,aAAa;MACbP,MAAM;MACNC,KAAK;MACLoB,aAAa,EAAE,CAAC,CAACT,kBAAkB,CAACU,GAAG,CAAC,CAAC;MACzCC,OAAO,EAAE,CAAC,CAACR,cAAc,CAACO,GAAG,CAAC,CAAC;MAC/BE,QAAQ,EAAE,CAAC,CAACR,eAAe,CAACM,GAAG,CAAC,CAAC;MACjCG,SAAS,EAAE,CAAC,CAACR,gBAAgB,CAACK,GAAG,CAAC,CAAC;MACnCI,QAAQ,EAAER,eAAe,CAACI,GAAG,CAAC,CAAC;MAC/BK,SAAS,EAAEC,YAAK,CAACN,GAAG,CAAC;IACtB,CAAC,CAAC;EACH,CAAC,EACD,CAACO,aAAa,EAAEC,iBAAiB,KAAK;IACrC,SAAS;;IAET,IACC,CAACD,aAAa,IACdA,aAAa,CAACE,MAAM,KAAKD,iBAAiB,EAAEC,MAAM,EACjD;MACD;IACD;IAEA7B,eAAe,CAAC;MACf8B,IAAI,EAAEH,aAAa,CAACG,IAAI;MACxBC,OAAO,EAAEJ,aAAa,CAACI;IACxB,CAAC,CAAC;EACH,CACD,CAAC;AACF,CAAC;AAACC,OAAA,CAAApC,kBAAA,GAAAA,kBAAA","ignoreList":[]}
@@ -1,40 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.resolvePortalAttachmentTargets = void 0;
7
- const resolvePortalAttachmentTargets = ({
8
- attachment,
9
- currentScreenKey,
10
- nextScreenKey,
11
- portalAttachTarget,
12
- sourcePairKey
13
- }) => {
14
- const hasCurrentAttachment = attachment?.pairKey === sourcePairKey;
15
- if (!hasCurrentAttachment || !attachment) {
16
- return {
17
- progressScreenKey: null,
18
- targetScreenKey: null
19
- };
20
- }
21
-
22
- // Matched-screen portals physically live in the matched destination host. If a
23
- // closing destination is skipped by descriptor resolution, its own progress
24
- // still owns the attach gate until this attachment is replaced or cleared.
25
- if (portalAttachTarget === "matched-screen") {
26
- return {
27
- progressScreenKey: attachment.matchedScreenKey,
28
- targetScreenKey: attachment.matchedScreenKey
29
- };
30
- }
31
-
32
- // Current-screen portals stay mounted in this screen's host, but the visual
33
- // handoff is still paced by the adjacent destination transition.
34
- return {
35
- progressScreenKey: nextScreenKey ?? null,
36
- targetScreenKey: currentScreenKey
37
- };
38
- };
39
- exports.resolvePortalAttachmentTargets = resolvePortalAttachmentTargets;
40
- //# sourceMappingURL=attachment.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["resolvePortalAttachmentTargets","attachment","currentScreenKey","nextScreenKey","portalAttachTarget","sourcePairKey","hasCurrentAttachment","pairKey","progressScreenKey","targetScreenKey","matchedScreenKey","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/attachment.ts"],"mappings":";;;;;;AAeO,MAAMA,8BAA8B,GAAGA,CAAC;EAC9CC,UAAU;EACVC,gBAAgB;EAChBC,aAAa;EACbC,kBAAkB;EAClBC;AACqC,CAAC,KAAK;EAC3C,MAAMC,oBAAoB,GAAGL,UAAU,EAAEM,OAAO,KAAKF,aAAa;EAElE,IAAI,CAACC,oBAAoB,IAAI,CAACL,UAAU,EAAE;IACzC,OAAO;MACNO,iBAAiB,EAAE,IAAI;MACvBC,eAAe,EAAE;IAClB,CAAC;EACF;;EAEA;EACA;EACA;EACA,IAAIL,kBAAkB,KAAK,gBAAgB,EAAE;IAC5C,OAAO;MACNI,iBAAiB,EAAEP,UAAU,CAACS,gBAAgB;MAC9CD,eAAe,EAAER,UAAU,CAACS;IAC7B,CAAC;EACF;;EAEA;EACA;EACA,OAAO;IACNF,iBAAiB,EAAEL,aAAa,IAAI,IAAI;IACxCM,eAAe,EAAEP;EAClB,CAAC;AACF,CAAC;AAACS,OAAA,CAAAX,8BAAA,GAAAA,8BAAA","ignoreList":[]}
@@ -1,68 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useBoundaryOwnerContext = exports.useBoundaryOwner = exports.TARGET_OUTSIDE_OWNER_WARNING = exports.BoundaryOwnerProvider = void 0;
7
- var _react = require("react");
8
- var _createProvider = _interopRequireDefault(require("../../../utils/create-provider"));
9
- var _logger = require("../../../utils/logger");
10
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
- // logger.warn prepends the library prefix.
12
- const MULTIPLE_TARGETS_WARNING = "Multiple Boundary.Target elements were rendered under the same boundary owner. The first registered target will be measured.";
13
- const TARGET_OUTSIDE_OWNER_WARNING = exports.TARGET_OUTSIDE_OWNER_WARNING = "Boundary.Target must be rendered inside a Boundary owner (Boundary.View, Boundary.Trigger, or a component created by createBoundaryComponent).";
14
- const {
15
- BoundaryOwnerProvider,
16
- useBoundaryOwnerContext
17
- } = (0, _createProvider.default)("BoundaryOwner", {
18
- guarded: false
19
- })(props => props);
20
- exports.useBoundaryOwnerContext = useBoundaryOwnerContext;
21
- exports.BoundaryOwnerProvider = BoundaryOwnerProvider;
22
- const useBoundaryOwner = params => {
23
- const {
24
- ownerRef,
25
- associatedTargetStyles,
26
- entryTag,
27
- portal
28
- } = params;
29
- const warnedAboutMultipleTargetsRef = (0, _react.useRef)(false);
30
- const [targetEntry, setTargetEntry] = (0, _react.useState)(null);
31
- const registerTargetRef = (0, _react.useCallback)((targetRef, preparedStyles, measurementRef) => {
32
- setTargetEntry(prev => {
33
- if (prev?.ref === targetRef) {
34
- return prev;
35
- }
36
- if (__DEV__ && prev !== null && !warnedAboutMultipleTargetsRef.current) {
37
- warnedAboutMultipleTargetsRef.current = true;
38
- _logger.logger.warn(MULTIPLE_TARGETS_WARNING);
39
- }
40
- return prev ?? {
41
- ref: targetRef,
42
- measurementRef: measurementRef ?? targetRef,
43
- preparedStyles
44
- };
45
- });
46
- }, []);
47
- const unregisterTargetRef = (0, _react.useCallback)(targetRef => {
48
- setTargetEntry(prev => prev?.ref === targetRef ? null : prev);
49
- }, []);
50
- const contextValue = (0, _react.useMemo)(() => ({
51
- ownerRef,
52
- registerTargetRef,
53
- unregisterTargetRef,
54
- activeTargetRef: targetEntry?.ref ?? null,
55
- associatedTargetStyles,
56
- entryTag,
57
- portal
58
- }), [ownerRef, registerTargetRef, unregisterTargetRef, targetEntry, associatedTargetStyles, entryTag, portal]);
59
- return {
60
- contextValue,
61
- hasActiveTarget: targetEntry !== null,
62
- measuredRef: targetEntry?.measurementRef ?? ownerRef,
63
- targetPreparedStyles: targetEntry?.preparedStyles,
64
- portal
65
- };
66
- };
67
- exports.useBoundaryOwner = useBoundaryOwner;
68
- //# sourceMappingURL=boundary-owner.provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_react","require","_createProvider","_interopRequireDefault","_logger","e","__esModule","default","MULTIPLE_TARGETS_WARNING","TARGET_OUTSIDE_OWNER_WARNING","exports","BoundaryOwnerProvider","useBoundaryOwnerContext","createProvider","guarded","props","useBoundaryOwner","params","ownerRef","associatedTargetStyles","entryTag","portal","warnedAboutMultipleTargetsRef","useRef","targetEntry","setTargetEntry","useState","registerTargetRef","useCallback","targetRef","preparedStyles","measurementRef","prev","ref","__DEV__","current","logger","warn","unregisterTargetRef","contextValue","useMemo","activeTargetRef","hasActiveTarget","measuredRef","targetPreparedStyles"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/providers/boundary-owner.provider.tsx"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AAIA,IAAAC,eAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAA+C,SAAAE,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AA4B/C;AACA,MAAMG,wBAAwB,GAC7B,8HAA8H;AAExH,MAAMC,4BAA4B,GAAAC,OAAA,CAAAD,4BAAA,GACxC,gJAAgJ;AAO1I,MAAM;EAAEE,qBAAqB;EAAEC;AAAwB,CAAC,GAC9D,IAAAC,uBAAc,EAAC,eAAe,EAAE;EAAEC,OAAO,EAAE;AAAM,CAAC,CAAC,CAGhDC,KAAK,IAAKA,KAAK,CAAC;AAACL,OAAA,CAAAE,uBAAA,GAAAA,uBAAA;AAAAF,OAAA,CAAAC,qBAAA,GAAAA,qBAAA;AAEd,MAAMK,gBAAgB,GAAIC,MAKhC,IAAK;EACL,MAAM;IAAEC,QAAQ;IAAEC,sBAAsB;IAAEC,QAAQ;IAAEC;EAAO,CAAC,GAAGJ,MAAM;EACrE,MAAMK,6BAA6B,GAAG,IAAAC,aAAM,EAAC,KAAK,CAAC;EACnD,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAC,eAAQ,EAC7C,IACD,CAAC;EAED,MAAMC,iBAAiB,GAAG,IAAAC,kBAAW,EACpC,CACCC,SAA4B,EAC5BC,cAA0B,EAC1BC,cAAkC,KAC9B;IACJN,cAAc,CAAEO,IAAI,IAAK;MACxB,IAAIA,IAAI,EAAEC,GAAG,KAAKJ,SAAS,EAAE;QAC5B,OAAOG,IAAI;MACZ;MAEA,IACCE,OAAO,IACPF,IAAI,KAAK,IAAI,IACb,CAACV,6BAA6B,CAACa,OAAO,EACrC;QACDb,6BAA6B,CAACa,OAAO,GAAG,IAAI;QAC5CC,cAAM,CAACC,IAAI,CAAC7B,wBAAwB,CAAC;MACtC;MAEA,OACCwB,IAAI,IAAI;QACPC,GAAG,EAAEJ,SAAS;QACdE,cAAc,EAAEA,cAAc,IAAIF,SAAS;QAC3CC;MACD,CAAC;IAEH,CAAC,CAAC;EACH,CAAC,EACD,EACD,CAAC;EAED,MAAMQ,mBAAmB,GAAG,IAAAV,kBAAW,EAAEC,SAA4B,IAAK;IACzEJ,cAAc,CAAEO,IAAI,IAAMA,IAAI,EAAEC,GAAG,KAAKJ,SAAS,GAAG,IAAI,GAAGG,IAAK,CAAC;EAClE,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMO,YAAY,GAAG,IAAAC,cAAO,EAC3B,OAAO;IACNtB,QAAQ;IACRS,iBAAiB;IACjBW,mBAAmB;IACnBG,eAAe,EAAEjB,WAAW,EAAES,GAAG,IAAI,IAAI;IACzCd,sBAAsB;IACtBC,QAAQ;IACRC;EACD,CAAC,CAAC,EACF,CACCH,QAAQ,EACRS,iBAAiB,EACjBW,mBAAmB,EACnBd,WAAW,EACXL,sBAAsB,EACtBC,QAAQ,EACRC,MAAM,CAER,CAAC;EAED,OAAO;IACNkB,YAAY;IACZG,eAAe,EAAElB,WAAW,KAAK,IAAI;IACrCmB,WAAW,EAAEnB,WAAW,EAAEO,cAAc,IAAIb,QAAQ;IACpD0B,oBAAoB,EAAEpB,WAAW,EAAEM,cAAc;IACjDT;EACD,CAAC;AACF,CAAC;AAACX,OAAA,CAAAM,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -1,26 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.preserveAnimatedPropsOnly = void 0;
7
- var _constants = require("../../../../constants");
8
- const preserveAnimatedPropsOnly = stylesMap => {
9
- "worklet";
10
-
11
- let hasProps = false;
12
- const propsOnly = {};
13
- for (const slotId in stylesMap) {
14
- const slot = stylesMap[slotId];
15
- if (!slot || slot.props === undefined) {
16
- continue;
17
- }
18
- propsOnly[slotId] = {
19
- props: slot.props
20
- };
21
- hasProps = true;
22
- }
23
- return hasProps ? propsOnly : _constants.NO_STYLES;
24
- };
25
- exports.preserveAnimatedPropsOnly = preserveAnimatedPropsOnly;
26
- //# sourceMappingURL=preserve-animated-props-only.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_constants","require","preserveAnimatedPropsOnly","stylesMap","hasProps","propsOnly","slotId","slot","props","undefined","NO_STYLES","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/screen/styles/helpers/preserve-animated-props-only.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAGO,MAAMC,yBAAyB,GACrCC,SAAgD,IACL;EAC3C,SAAS;;EACT,IAAIC,QAAQ,GAAG,KAAK;EACpB,MAAMC,SAAgD,GAAG,CAAC,CAAC;EAE3D,KAAK,MAAMC,MAAM,IAAIH,SAAS,EAAE;IAC/B,MAAMI,IAAI,GAAGJ,SAAS,CAACG,MAAM,CAAC;IAC9B,IAAI,CAACC,IAAI,IAAIA,IAAI,CAACC,KAAK,KAAKC,SAAS,EAAE;MACtC;IACD;IAEAJ,SAAS,CAACC,MAAM,CAAC,GAAG;MAAEE,KAAK,EAAED,IAAI,CAACC;IAAM,CAAC;IACzCJ,QAAQ,GAAG,IAAI;EAChB;EAEA,OAAOA,QAAQ,GAAGC,SAAS,GAAGK,oBAAS;AACxC,CAAC;AAACC,OAAA,CAAAT,yBAAA,GAAAA,yBAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_interopRequireDefault","_createProvider","_floatingOverlayLayer","_useInterpolatedStyleMaps","_useMaybeBlockVisibility","_useResolvedSlotStyleMap","_jsxRuntime","e","__esModule","default","ScreenStylesProvider","ScreenStylesContext","useScreenStylesContext","useScreenStyles","createProvider","guarded","children","isFloatingOverlay","parentContext","useContext","rawStylesMaps","useInterpolatedStylesMap","animatedStyle","animatedProps","shouldBlockVisibility","useMaybeBlockVisibility","stylesMap","useResolvedStylesMap","localStylesMaps","ancestorStylesMap","value","jsx","FloatingOverlayLayer","enabled","View","style","styles","container","exports","StyleSheet","create","flex"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/styles/styles.provider.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEA,IAAAI,eAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,qBAAA,GAAAL,OAAA;AACA,IAAAM,yBAAA,GAAAN,OAAA;AACA,IAAAO,wBAAA,GAAAP,OAAA;AACA,IAAAQ,wBAAA,GAAAR,OAAA;AAA2E,IAAAS,WAAA,GAAAT,OAAA;AAAA,SAAAG,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAYpE,MAAM;EACZG,oBAAoB;EACpBC,mBAAmB;EACnBC,sBAAsB,EAAEC;AACzB,CAAC,GAAG,IAAAC,uBAAc,EAAC,cAAc,EAAE;EAClCC,OAAO,EAAE;AACV,CAAC,CAAC,CAAkC,CAAC;EAAEC,QAAQ;EAAEC;AAAkB,CAAC,KAAK;EACxE,MAAMC,aAAa,GAAG,IAAAC,iBAAU,EAACR,mBAAmB,CAAC;EAErD,MAAMS,aAAa,GAAG,IAAAC,kDAAwB,EAAC,CAAC;EAEhD,MAAM;IAAEC,aAAa;IAAEC,aAAa;IAAEC;EAAsB,CAAC,GAC5D,IAAAC,gDAAuB,EAACR,iBAAiB,CAAC;EAE3C,MAAMS,SAAS,GAAG,IAAAC,6CAAoB,EAAC;IACtCC,eAAe,EAAER,aAAa;IAC9BS,iBAAiB,EAAEX,aAAa,EAAEQ;EACnC,CAAC,CAAC;EAEF,OAAO;IACNI,KAAK,EAAE;MACNJ,SAAS;MACTF;IACD,CAAC;IACDR,QAAQ,eACP,IAAAV,WAAA,CAAAyB,GAAA,EAAC7B,qBAAA,CAAA8B,oBAAoB;MAACC,OAAO,EAAEhB,iBAAkB;MAAAD,QAAA,eAChD,IAAAV,WAAA,CAAAyB,GAAA,EAAChC,sBAAA,CAAAU,OAAQ,CAACyB,IAAI;QACbC,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAEf,aAAa,CAAE;QACzCC,aAAa,EAAEA,aAAc;QAAAP,QAAA,EAE5BA;MAAQ,CACK;IAAC,CACK;EAExB,CAAC;AACF,CAAC,CAAC;AAACsB,OAAA,CAAAzB,eAAA,GAAAA,eAAA;AAAAyB,OAAA,CAAA3B,mBAAA,GAAAA,mBAAA;AAAA2B,OAAA,CAAA5B,oBAAA,GAAAA,oBAAA;AAEH,MAAM0B,MAAM,GAAGG,uBAAU,CAACC,MAAM,CAAC;EAChCH,SAAS,EAAE;IAAEI,IAAI,EAAE;EAAE;AACtB,CAAC,CAAC","ignoreList":[]}
@@ -1,23 +0,0 @@
1
- "use strict";
2
-
3
- import { useLayoutEffect } from "react";
4
- import { runOnUI } from "react-native-reanimated";
5
- import { removeEntry, setEntry } from "../../../stores/bounds/internals/entries";
6
- export const useBoundaryPresence = params => {
7
- const {
8
- enabled,
9
- entryTag,
10
- currentScreenKey,
11
- boundaryConfig
12
- } = params;
13
- useLayoutEffect(() => {
14
- if (!enabled) return;
15
- runOnUI(setEntry)(entryTag, currentScreenKey, {
16
- boundaryConfig
17
- });
18
- return () => {
19
- runOnUI(removeEntry)(entryTag, currentScreenKey);
20
- };
21
- }, [enabled, entryTag, currentScreenKey, boundaryConfig]);
22
- };
23
- //# sourceMappingURL=use-boundary-presence.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["useLayoutEffect","runOnUI","removeEntry","setEntry","useBoundaryPresence","params","enabled","entryTag","currentScreenKey","boundaryConfig"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/hooks/use-boundary-presence.ts"],"mappings":";;AAAA,SAASA,eAAe,QAAQ,OAAO;AACvC,SAASC,OAAO,QAAQ,yBAAyB;AACjD,SACCC,WAAW,EACXC,QAAQ,QACF,0CAA0C;AAGjD,OAAO,MAAMC,mBAAmB,GAAIC,MAKnC,IAAK;EACL,MAAM;IAAEC,OAAO;IAAEC,QAAQ;IAAEC,gBAAgB;IAAEC;EAAe,CAAC,GAAGJ,MAAM;EAEtEL,eAAe,CAAC,MAAM;IACrB,IAAI,CAACM,OAAO,EAAE;IAEdL,OAAO,CAACE,QAAQ,CAAC,CAACI,QAAQ,EAAEC,gBAAgB,EAAE;MAC7CC;IACD,CAAC,CAAC;IAEF,OAAO,MAAM;MACZR,OAAO,CAACC,WAAW,CAAC,CAACK,QAAQ,EAAEC,gBAAgB,CAAC;IACjD,CAAC;EACF,CAAC,EAAE,CAACF,OAAO,EAAEC,QAAQ,EAAEC,gBAAgB,EAAEC,cAAc,CAAC,CAAC;AAC1D,CAAC","ignoreList":[]}