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

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 (528) hide show
  1. package/lib/commonjs/blank-stack/components/stack-view.js +2 -1
  2. package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -1
  3. package/lib/commonjs/shared/components/{create-boundary-component → boundary}/components/boundary-target.js +21 -8
  4. package/lib/commonjs/shared/components/boundary/components/boundary-target.js.map +1 -0
  5. package/lib/commonjs/shared/components/{create-boundary-component → boundary}/create-boundary-component.js +18 -24
  6. package/lib/commonjs/shared/components/boundary/create-boundary-component.js.map +1 -0
  7. package/lib/commonjs/shared/components/boundary/hooks/use-boundary-presence.js.map +1 -0
  8. package/lib/commonjs/shared/components/boundary/hooks/use-initial-destination-measurement.js +115 -0
  9. package/lib/commonjs/shared/components/boundary/hooks/use-initial-destination-measurement.js.map +1 -0
  10. package/lib/commonjs/shared/components/{create-boundary-component → boundary}/hooks/use-initial-source-measurement.js +4 -5
  11. package/lib/commonjs/shared/components/boundary/hooks/use-initial-source-measurement.js.map +1 -0
  12. package/lib/commonjs/shared/components/{create-boundary-component → boundary}/hooks/use-measurer.js +26 -22
  13. package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js.map +1 -0
  14. package/lib/commonjs/shared/components/{create-boundary-component → boundary}/hooks/use-refresh-boundary.js +10 -7
  15. package/lib/commonjs/shared/components/boundary/hooks/use-refresh-boundary.js.map +1 -0
  16. package/lib/commonjs/shared/components/{create-boundary-component → boundary}/index.js +8 -1
  17. package/lib/commonjs/shared/components/boundary/index.js.map +1 -0
  18. package/lib/commonjs/shared/components/boundary/portal/components/host.js +99 -0
  19. package/lib/commonjs/shared/components/boundary/portal/components/host.js.map +1 -0
  20. package/lib/commonjs/shared/components/boundary/portal/components/portal-boundary-host.js +74 -0
  21. package/lib/commonjs/shared/components/boundary/portal/components/portal-boundary-host.js.map +1 -0
  22. package/lib/commonjs/shared/components/boundary/portal/components/portal-provider.js +20 -0
  23. package/lib/commonjs/shared/components/boundary/portal/components/portal-provider.js.map +1 -0
  24. package/lib/commonjs/shared/components/boundary/portal/components/portal.js +198 -0
  25. package/lib/commonjs/shared/components/boundary/portal/components/portal.js.map +1 -0
  26. package/lib/commonjs/shared/components/boundary/portal/hooks/use-host-measurement.js +74 -0
  27. package/lib/commonjs/shared/components/boundary/portal/hooks/use-host-measurement.js.map +1 -0
  28. package/lib/commonjs/shared/components/boundary/portal/index.js +27 -0
  29. package/lib/commonjs/shared/components/boundary/portal/index.js.map +1 -0
  30. package/lib/commonjs/shared/components/boundary/portal/stores/host-bounds.store.js +47 -0
  31. package/lib/commonjs/shared/components/boundary/portal/stores/host-bounds.store.js.map +1 -0
  32. package/lib/commonjs/shared/components/boundary/portal/stores/host-registry.store.js +137 -0
  33. package/lib/commonjs/shared/components/boundary/portal/stores/host-registry.store.js.map +1 -0
  34. package/lib/commonjs/shared/components/boundary/portal/stores/portal-boundary-host.store.js +60 -0
  35. package/lib/commonjs/shared/components/boundary/portal/stores/portal-boundary-host.store.js.map +1 -0
  36. package/lib/commonjs/shared/components/boundary/portal/teleport.js +23 -0
  37. package/lib/commonjs/shared/components/boundary/portal/teleport.js.map +1 -0
  38. package/lib/commonjs/shared/components/boundary/portal/utils/attachment.js +40 -0
  39. package/lib/commonjs/shared/components/boundary/portal/utils/attachment.js.map +1 -0
  40. package/lib/commonjs/shared/components/boundary/portal/utils/naming.js +15 -0
  41. package/lib/commonjs/shared/components/boundary/portal/utils/naming.js.map +1 -0
  42. package/lib/commonjs/shared/components/boundary/portal/utils/offset-style.js +71 -0
  43. package/lib/commonjs/shared/components/boundary/portal/utils/offset-style.js.map +1 -0
  44. package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js +16 -0
  45. package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js.map +1 -0
  46. package/lib/commonjs/shared/components/{create-boundary-component → boundary}/providers/boundary-owner.provider.js +26 -25
  47. package/lib/commonjs/shared/components/boundary/providers/boundary-owner.provider.js.map +1 -0
  48. package/lib/commonjs/shared/components/boundary/types.js.map +1 -0
  49. package/lib/commonjs/shared/components/boundary/utils/destination-signals.js +25 -0
  50. package/lib/commonjs/shared/components/boundary/utils/destination-signals.js.map +1 -0
  51. package/lib/commonjs/shared/components/{create-boundary-component → boundary}/utils/measured-bounds.js +19 -9
  52. package/lib/commonjs/shared/components/boundary/utils/measured-bounds.js.map +1 -0
  53. package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js +105 -0
  54. package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js.map +1 -0
  55. package/lib/commonjs/shared/components/boundary/utils/source-signals.js +48 -0
  56. package/lib/commonjs/shared/components/boundary/utils/source-signals.js.map +1 -0
  57. package/lib/commonjs/shared/components/create-transition-aware-component.js +8 -3
  58. package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
  59. package/lib/commonjs/shared/components/{integrations/masked-view.js → masked-view.js} +2 -2
  60. package/lib/commonjs/shared/components/masked-view.js.map +1 -0
  61. package/lib/commonjs/shared/components/screen-container/layers/content.js +9 -5
  62. package/lib/commonjs/shared/components/screen-container/layers/content.js.map +1 -1
  63. package/lib/commonjs/shared/configs/presets.js +6 -6
  64. package/lib/commonjs/shared/configs/presets.js.map +1 -1
  65. package/lib/commonjs/shared/hooks/navigation/use-stack.js +17 -2
  66. package/lib/commonjs/shared/hooks/navigation/use-stack.js.map +1 -1
  67. package/lib/commonjs/shared/index.js +4 -4
  68. package/lib/commonjs/shared/index.js.map +1 -1
  69. package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js +4 -2
  70. package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
  71. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +4 -13
  72. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  73. package/lib/commonjs/shared/providers/screen/animation/helpers/stack-progress.js +23 -12
  74. package/lib/commonjs/shared/providers/screen/animation/helpers/stack-progress.js.map +1 -1
  75. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js +1 -0
  76. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  77. package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js +7 -3
  78. package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  79. package/lib/commonjs/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js +8 -1
  80. package/lib/commonjs/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js.map +1 -1
  81. package/lib/commonjs/shared/providers/screen/descriptors/helpers/get-ancestor-keys.js +21 -6
  82. package/lib/commonjs/shared/providers/screen/descriptors/helpers/get-ancestor-keys.js.map +1 -1
  83. package/lib/commonjs/shared/providers/screen/origin.provider.js +41 -0
  84. package/lib/commonjs/shared/providers/screen/origin.provider.js.map +1 -0
  85. package/lib/commonjs/shared/providers/screen/styles/constants.js +2 -0
  86. package/lib/commonjs/shared/providers/screen/styles/constants.js.map +1 -1
  87. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/are-resettable-states-equal.js +58 -0
  88. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/are-resettable-states-equal.js.map +1 -0
  89. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +7 -0
  90. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  91. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +2 -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/styles.provider.js +7 -5
  94. package/lib/commonjs/shared/providers/screen/styles/styles.provider.js.map +1 -1
  95. package/lib/commonjs/shared/stores/animation.store.js +2 -0
  96. package/lib/commonjs/shared/stores/animation.store.js.map +1 -1
  97. package/lib/commonjs/shared/stores/bounds/helpers/link-pairs.helpers.js +1 -10
  98. package/lib/commonjs/shared/stores/bounds/helpers/link-pairs.helpers.js.map +1 -1
  99. package/lib/commonjs/shared/stores/bounds/index.js.map +1 -1
  100. package/lib/commonjs/shared/stores/bounds/internals/entries.js.map +1 -1
  101. package/lib/commonjs/shared/stores/bounds/internals/links.js +36 -19
  102. package/lib/commonjs/shared/stores/bounds/internals/links.js.map +1 -1
  103. package/lib/commonjs/shared/stores/bounds/internals/resolver.js +6 -4
  104. package/lib/commonjs/shared/stores/bounds/internals/resolver.js.map +1 -1
  105. package/lib/commonjs/shared/stores/bounds/internals/state.js.map +1 -1
  106. package/lib/commonjs/shared/stores/scroll.store.js +54 -1
  107. package/lib/commonjs/shared/stores/scroll.store.js.map +1 -1
  108. package/lib/commonjs/shared/utils/bounds/helpers/create-bound-tag.js +38 -4
  109. package/lib/commonjs/shared/utils/bounds/helpers/create-bound-tag.js.map +1 -1
  110. package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js +40 -87
  111. package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  112. package/lib/commonjs/shared/utils/bounds/helpers/create-link-accessor.js +6 -67
  113. package/lib/commonjs/shared/utils/bounds/helpers/create-link-accessor.js.map +1 -1
  114. package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js +8 -12
  115. package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
  116. package/lib/commonjs/shared/utils/bounds/helpers/styles/composers.js +235 -68
  117. package/lib/commonjs/shared/utils/bounds/helpers/styles/composers.js.map +1 -1
  118. package/lib/commonjs/shared/utils/bounds/helpers/styles/compute.js +74 -4
  119. package/lib/commonjs/shared/utils/bounds/helpers/styles/compute.js.map +1 -1
  120. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js +5 -9
  121. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  122. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +5 -10
  123. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  124. package/lib/module/blank-stack/components/stack-view.js +3 -2
  125. package/lib/module/blank-stack/components/stack-view.js.map +1 -1
  126. package/lib/module/shared/components/{create-boundary-component → boundary}/components/boundary-target.js +21 -8
  127. package/lib/module/shared/components/boundary/components/boundary-target.js.map +1 -0
  128. package/lib/module/shared/components/{create-boundary-component → boundary}/create-boundary-component.js +20 -26
  129. package/lib/module/shared/components/boundary/create-boundary-component.js.map +1 -0
  130. package/lib/module/shared/components/boundary/hooks/use-boundary-presence.js.map +1 -0
  131. package/lib/module/shared/components/boundary/hooks/use-initial-destination-measurement.js +110 -0
  132. package/lib/module/shared/components/boundary/hooks/use-initial-destination-measurement.js.map +1 -0
  133. package/lib/module/shared/components/{create-boundary-component → boundary}/hooks/use-initial-source-measurement.js +4 -5
  134. package/lib/module/shared/components/boundary/hooks/use-initial-source-measurement.js.map +1 -0
  135. package/lib/module/shared/components/{create-boundary-component → boundary}/hooks/use-measurer.js +27 -23
  136. package/lib/module/shared/components/boundary/hooks/use-measurer.js.map +1 -0
  137. package/lib/module/shared/components/{create-boundary-component → boundary}/hooks/use-refresh-boundary.js +10 -7
  138. package/lib/module/shared/components/boundary/hooks/use-refresh-boundary.js.map +1 -0
  139. package/lib/module/shared/components/{create-boundary-component → boundary}/index.js +8 -1
  140. package/lib/module/shared/components/boundary/index.js.map +1 -0
  141. package/lib/module/shared/components/boundary/portal/components/host.js +94 -0
  142. package/lib/module/shared/components/boundary/portal/components/host.js.map +1 -0
  143. package/lib/module/shared/components/boundary/portal/components/portal-boundary-host.js +69 -0
  144. package/lib/module/shared/components/boundary/portal/components/portal-boundary-host.js.map +1 -0
  145. package/lib/module/shared/components/boundary/portal/components/portal-provider.js +16 -0
  146. package/lib/module/shared/components/boundary/portal/components/portal-provider.js.map +1 -0
  147. package/lib/module/shared/components/boundary/portal/components/portal.js +193 -0
  148. package/lib/module/shared/components/boundary/portal/components/portal.js.map +1 -0
  149. package/lib/module/shared/components/boundary/portal/hooks/use-host-measurement.js +69 -0
  150. package/lib/module/shared/components/boundary/portal/hooks/use-host-measurement.js.map +1 -0
  151. package/lib/module/shared/components/boundary/portal/index.js +6 -0
  152. package/lib/module/shared/components/boundary/portal/index.js.map +1 -0
  153. package/lib/module/shared/components/boundary/portal/stores/host-bounds.store.js +40 -0
  154. package/lib/module/shared/components/boundary/portal/stores/host-bounds.store.js.map +1 -0
  155. package/lib/module/shared/components/boundary/portal/stores/host-registry.store.js +126 -0
  156. package/lib/module/shared/components/boundary/portal/stores/host-registry.store.js.map +1 -0
  157. package/lib/module/shared/components/boundary/portal/stores/portal-boundary-host.store.js +53 -0
  158. package/lib/module/shared/components/boundary/portal/stores/portal-boundary-host.store.js.map +1 -0
  159. package/lib/module/shared/components/boundary/portal/teleport.js +19 -0
  160. package/lib/module/shared/components/boundary/portal/teleport.js.map +1 -0
  161. package/lib/module/shared/components/boundary/portal/utils/attachment.js +35 -0
  162. package/lib/module/shared/components/boundary/portal/utils/attachment.js.map +1 -0
  163. package/lib/module/shared/components/boundary/portal/utils/naming.js +10 -0
  164. package/lib/module/shared/components/boundary/portal/utils/naming.js.map +1 -0
  165. package/lib/module/shared/components/boundary/portal/utils/offset-style.js +66 -0
  166. package/lib/module/shared/components/boundary/portal/utils/offset-style.js.map +1 -0
  167. package/lib/module/shared/components/boundary/portal/utils/teleport-control.js +11 -0
  168. package/lib/module/shared/components/boundary/portal/utils/teleport-control.js.map +1 -0
  169. package/lib/module/shared/components/boundary/providers/boundary-owner.provider.js +60 -0
  170. package/lib/module/shared/components/boundary/providers/boundary-owner.provider.js.map +1 -0
  171. package/lib/module/shared/components/boundary/types.js.map +1 -0
  172. package/lib/module/shared/components/boundary/utils/destination-signals.js +20 -0
  173. package/lib/module/shared/components/boundary/utils/destination-signals.js.map +1 -0
  174. package/lib/module/shared/components/{create-boundary-component → boundary}/utils/measured-bounds.js +16 -7
  175. package/lib/module/shared/components/boundary/utils/measured-bounds.js.map +1 -0
  176. package/lib/module/shared/components/boundary/utils/refresh-signals.js +100 -0
  177. package/lib/module/shared/components/boundary/utils/refresh-signals.js.map +1 -0
  178. package/lib/module/shared/components/boundary/utils/source-signals.js +43 -0
  179. package/lib/module/shared/components/boundary/utils/source-signals.js.map +1 -0
  180. package/lib/module/shared/components/create-transition-aware-component.js +8 -3
  181. package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
  182. package/lib/module/shared/components/{integrations/masked-view.js → masked-view.js} +2 -2
  183. package/lib/module/shared/components/masked-view.js.map +1 -0
  184. package/lib/module/shared/components/screen-container/layers/content.js +10 -6
  185. package/lib/module/shared/components/screen-container/layers/content.js.map +1 -1
  186. package/lib/module/shared/configs/presets.js +6 -6
  187. package/lib/module/shared/configs/presets.js.map +1 -1
  188. package/lib/module/shared/hooks/navigation/use-stack.js +19 -4
  189. package/lib/module/shared/hooks/navigation/use-stack.js.map +1 -1
  190. package/lib/module/shared/index.js +2 -2
  191. package/lib/module/shared/index.js.map +1 -1
  192. package/lib/module/shared/providers/helpers/measured-bounds-writes.js +4 -2
  193. package/lib/module/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
  194. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +5 -14
  195. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  196. package/lib/module/shared/providers/screen/animation/helpers/stack-progress.js +20 -10
  197. package/lib/module/shared/providers/screen/animation/helpers/stack-progress.js.map +1 -1
  198. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js +1 -0
  199. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  200. package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js +8 -4
  201. package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
  202. package/lib/module/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js +8 -1
  203. package/lib/module/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js.map +1 -1
  204. package/lib/module/shared/providers/screen/descriptors/helpers/get-ancestor-keys.js +20 -6
  205. package/lib/module/shared/providers/screen/descriptors/helpers/get-ancestor-keys.js.map +1 -1
  206. package/lib/module/shared/providers/screen/origin.provider.js +33 -0
  207. package/lib/module/shared/providers/screen/origin.provider.js.map +1 -0
  208. package/lib/module/shared/providers/screen/styles/constants.js +2 -0
  209. package/lib/module/shared/providers/screen/styles/constants.js.map +1 -1
  210. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/are-resettable-states-equal.js +53 -0
  211. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/are-resettable-states-equal.js.map +1 -0
  212. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +1 -0
  213. package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
  214. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +2 -1
  215. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  216. package/lib/module/shared/providers/screen/styles/styles.provider.js +7 -5
  217. package/lib/module/shared/providers/screen/styles/styles.provider.js.map +1 -1
  218. package/lib/module/shared/stores/animation.store.js +2 -0
  219. package/lib/module/shared/stores/animation.store.js.map +1 -1
  220. package/lib/module/shared/stores/bounds/helpers/link-pairs.helpers.js +1 -8
  221. package/lib/module/shared/stores/bounds/helpers/link-pairs.helpers.js.map +1 -1
  222. package/lib/module/shared/stores/bounds/index.js.map +1 -1
  223. package/lib/module/shared/stores/bounds/internals/entries.js.map +1 -1
  224. package/lib/module/shared/stores/bounds/internals/links.js +36 -19
  225. package/lib/module/shared/stores/bounds/internals/links.js.map +1 -1
  226. package/lib/module/shared/stores/bounds/internals/resolver.js +6 -4
  227. package/lib/module/shared/stores/bounds/internals/resolver.js.map +1 -1
  228. package/lib/module/shared/stores/bounds/internals/state.js.map +1 -1
  229. package/lib/module/shared/stores/scroll.store.js +50 -0
  230. package/lib/module/shared/stores/scroll.store.js.map +1 -1
  231. package/lib/module/shared/types/animation.types.js.map +1 -1
  232. package/lib/module/shared/types/bounds.types.js.map +1 -1
  233. package/lib/module/shared/utils/bounds/helpers/create-bound-tag.js +36 -3
  234. package/lib/module/shared/utils/bounds/helpers/create-bound-tag.js.map +1 -1
  235. package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js +42 -89
  236. package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  237. package/lib/module/shared/utils/bounds/helpers/create-link-accessor.js +6 -67
  238. package/lib/module/shared/utils/bounds/helpers/create-link-accessor.js.map +1 -1
  239. package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js +8 -13
  240. package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
  241. package/lib/module/shared/utils/bounds/helpers/styles/composers.js +236 -69
  242. package/lib/module/shared/utils/bounds/helpers/styles/composers.js.map +1 -1
  243. package/lib/module/shared/utils/bounds/helpers/styles/compute.js +74 -4
  244. package/lib/module/shared/utils/bounds/helpers/styles/compute.js.map +1 -1
  245. package/lib/module/shared/utils/bounds/navigation/reveal/build.js +5 -9
  246. package/lib/module/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  247. package/lib/module/shared/utils/bounds/navigation/zoom/build.js +5 -10
  248. package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  249. package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
  250. package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts.map +1 -0
  251. package/lib/typescript/shared/components/boundary/create-boundary-component.d.ts.map +1 -0
  252. package/lib/typescript/shared/components/boundary/hooks/use-boundary-presence.d.ts.map +1 -0
  253. package/lib/typescript/shared/components/{create-boundary-component → boundary}/hooks/use-initial-destination-measurement.d.ts +1 -4
  254. package/lib/typescript/shared/components/boundary/hooks/use-initial-destination-measurement.d.ts.map +1 -0
  255. package/lib/typescript/shared/components/{create-boundary-component → boundary}/hooks/use-initial-source-measurement.d.ts +0 -2
  256. package/lib/typescript/shared/components/boundary/hooks/use-initial-source-measurement.d.ts.map +1 -0
  257. package/lib/typescript/shared/components/{create-boundary-component → boundary}/hooks/use-measurer.d.ts +4 -2
  258. package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts.map +1 -0
  259. package/lib/typescript/shared/components/boundary/hooks/use-refresh-boundary.d.ts +10 -0
  260. package/lib/typescript/shared/components/boundary/hooks/use-refresh-boundary.d.ts.map +1 -0
  261. package/lib/typescript/shared/components/{create-boundary-component → boundary}/index.d.ts +8 -2
  262. package/lib/typescript/shared/components/boundary/index.d.ts.map +1 -0
  263. package/lib/typescript/shared/components/boundary/portal/components/host.d.ts +7 -0
  264. package/lib/typescript/shared/components/boundary/portal/components/host.d.ts.map +1 -0
  265. package/lib/typescript/shared/components/boundary/portal/components/portal-boundary-host.d.ts +9 -0
  266. package/lib/typescript/shared/components/boundary/portal/components/portal-boundary-host.d.ts.map +1 -0
  267. package/lib/typescript/shared/components/boundary/portal/components/portal-provider.d.ts +4 -0
  268. package/lib/typescript/shared/components/boundary/portal/components/portal-provider.d.ts.map +1 -0
  269. package/lib/typescript/shared/components/boundary/portal/components/portal.d.ts +19 -0
  270. package/lib/typescript/shared/components/boundary/portal/components/portal.d.ts.map +1 -0
  271. package/lib/typescript/shared/components/boundary/portal/hooks/use-host-measurement.d.ts +13 -0
  272. package/lib/typescript/shared/components/boundary/portal/hooks/use-host-measurement.d.ts.map +1 -0
  273. package/lib/typescript/shared/components/boundary/portal/index.d.ts +4 -0
  274. package/lib/typescript/shared/components/boundary/portal/index.d.ts.map +1 -0
  275. package/lib/typescript/shared/components/boundary/portal/stores/host-bounds.store.d.ts +9 -0
  276. package/lib/typescript/shared/components/boundary/portal/stores/host-bounds.store.d.ts.map +1 -0
  277. package/lib/typescript/shared/components/boundary/portal/stores/host-registry.store.d.ts +19 -0
  278. package/lib/typescript/shared/components/boundary/portal/stores/host-registry.store.d.ts.map +1 -0
  279. package/lib/typescript/shared/components/boundary/portal/stores/portal-boundary-host.store.d.ts +11 -0
  280. package/lib/typescript/shared/components/boundary/portal/stores/portal-boundary-host.store.d.ts.map +1 -0
  281. package/lib/typescript/shared/components/boundary/portal/teleport.d.ts +6 -0
  282. package/lib/typescript/shared/components/boundary/portal/teleport.d.ts.map +1 -0
  283. package/lib/typescript/shared/components/boundary/portal/utils/attachment.d.ts +21 -0
  284. package/lib/typescript/shared/components/boundary/portal/utils/attachment.d.ts.map +1 -0
  285. package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts +3 -0
  286. package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts.map +1 -0
  287. package/lib/typescript/shared/components/boundary/portal/utils/offset-style.d.ts +37 -0
  288. package/lib/typescript/shared/components/boundary/portal/utils/offset-style.d.ts.map +1 -0
  289. package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts +3 -0
  290. package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts.map +1 -0
  291. package/lib/typescript/shared/components/{create-boundary-component → boundary}/providers/boundary-owner.provider.d.ts +14 -6
  292. package/lib/typescript/shared/components/boundary/providers/boundary-owner.provider.d.ts.map +1 -0
  293. package/lib/typescript/shared/components/boundary/types.d.ts +78 -0
  294. package/lib/typescript/shared/components/boundary/types.d.ts.map +1 -0
  295. package/lib/typescript/shared/components/{create-boundary-component → boundary}/utils/destination-signals.d.ts +2 -3
  296. package/lib/typescript/shared/components/boundary/utils/destination-signals.d.ts.map +1 -0
  297. package/lib/typescript/shared/components/boundary/utils/measured-bounds.d.ts +12 -0
  298. package/lib/typescript/shared/components/boundary/utils/measured-bounds.d.ts.map +1 -0
  299. package/lib/typescript/shared/components/{create-boundary-component → boundary}/utils/refresh-signals.d.ts +4 -3
  300. package/lib/typescript/shared/components/boundary/utils/refresh-signals.d.ts.map +1 -0
  301. package/lib/typescript/shared/components/{create-boundary-component → boundary}/utils/source-signals.d.ts +1 -2
  302. package/lib/typescript/shared/components/boundary/utils/source-signals.d.ts.map +1 -0
  303. package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
  304. package/lib/typescript/shared/components/masked-view.d.ts.map +1 -0
  305. package/lib/typescript/shared/components/screen-container/layers/content.d.ts.map +1 -1
  306. package/lib/typescript/shared/configs/presets.d.ts.map +1 -1
  307. package/lib/typescript/shared/hooks/navigation/use-stack.d.ts.map +1 -1
  308. package/lib/typescript/shared/index.d.ts +19 -17
  309. package/lib/typescript/shared/index.d.ts.map +1 -1
  310. package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts +3 -1
  311. package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts.map +1 -1
  312. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts +1 -0
  313. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts.map +1 -1
  314. package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
  315. package/lib/typescript/shared/providers/screen/animation/helpers/stack-progress.d.ts +2 -1
  316. package/lib/typescript/shared/providers/screen/animation/helpers/stack-progress.d.ts.map +1 -1
  317. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts +1 -0
  318. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts.map +1 -1
  319. package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
  320. package/lib/typescript/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.d.ts +6 -1
  321. package/lib/typescript/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.d.ts.map +1 -1
  322. package/lib/typescript/shared/providers/screen/descriptors/helpers/get-ancestor-keys.d.ts +9 -3
  323. package/lib/typescript/shared/providers/screen/descriptors/helpers/get-ancestor-keys.d.ts.map +1 -1
  324. package/lib/typescript/shared/providers/screen/origin.provider.d.ts +11 -0
  325. package/lib/typescript/shared/providers/screen/origin.provider.d.ts.map +1 -0
  326. package/lib/typescript/shared/providers/screen/styles/constants.d.ts.map +1 -1
  327. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/are-resettable-states-equal.d.ts +3 -0
  328. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/are-resettable-states-equal.d.ts.map +1 -0
  329. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts +1 -0
  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/hooks/use-maybe-block-visibility.d.ts +1 -0
  332. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  333. package/lib/typescript/shared/providers/screen/styles/styles.provider.d.ts +1 -0
  334. package/lib/typescript/shared/providers/screen/styles/styles.provider.d.ts.map +1 -1
  335. package/lib/typescript/shared/stores/animation.store.d.ts +1 -0
  336. package/lib/typescript/shared/stores/animation.store.d.ts.map +1 -1
  337. package/lib/typescript/shared/stores/bounds/helpers/link-pairs.helpers.d.ts +1 -3
  338. package/lib/typescript/shared/stores/bounds/helpers/link-pairs.helpers.d.ts.map +1 -1
  339. package/lib/typescript/shared/stores/bounds/index.d.ts +1 -1
  340. package/lib/typescript/shared/stores/bounds/index.d.ts.map +1 -1
  341. package/lib/typescript/shared/stores/bounds/internals/entries.d.ts +2 -2
  342. package/lib/typescript/shared/stores/bounds/internals/entries.d.ts.map +1 -1
  343. package/lib/typescript/shared/stores/bounds/internals/links.d.ts +2 -2
  344. package/lib/typescript/shared/stores/bounds/internals/links.d.ts.map +1 -1
  345. package/lib/typescript/shared/stores/bounds/internals/resolver.d.ts.map +1 -1
  346. package/lib/typescript/shared/stores/bounds/internals/state.d.ts +4 -2
  347. package/lib/typescript/shared/stores/bounds/internals/state.d.ts.map +1 -1
  348. package/lib/typescript/shared/stores/bounds/types.d.ts +47 -12
  349. package/lib/typescript/shared/stores/bounds/types.d.ts.map +1 -1
  350. package/lib/typescript/shared/stores/scroll.store.d.ts +12 -1
  351. package/lib/typescript/shared/stores/scroll.store.d.ts.map +1 -1
  352. package/lib/typescript/shared/types/animation.types.d.ts +13 -2
  353. package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
  354. package/lib/typescript/shared/types/bounds.types.d.ts +10 -40
  355. package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
  356. package/lib/typescript/shared/types/index.d.ts +2 -2
  357. package/lib/typescript/shared/types/index.d.ts.map +1 -1
  358. package/lib/typescript/shared/utils/bounds/helpers/create-bound-tag.d.ts +2 -1
  359. package/lib/typescript/shared/utils/bounds/helpers/create-bound-tag.d.ts.map +1 -1
  360. package/lib/typescript/shared/utils/bounds/helpers/create-bounds-accessor-core.d.ts +7 -11
  361. package/lib/typescript/shared/utils/bounds/helpers/create-bounds-accessor-core.d.ts.map +1 -1
  362. package/lib/typescript/shared/utils/bounds/helpers/create-link-accessor.d.ts +0 -3
  363. package/lib/typescript/shared/utils/bounds/helpers/create-link-accessor.d.ts.map +1 -1
  364. package/lib/typescript/shared/utils/bounds/helpers/prepare-bound-styles.d.ts +7 -3
  365. package/lib/typescript/shared/utils/bounds/helpers/prepare-bound-styles.d.ts.map +1 -1
  366. package/lib/typescript/shared/utils/bounds/helpers/styles/composers.d.ts +3 -0
  367. package/lib/typescript/shared/utils/bounds/helpers/styles/composers.d.ts.map +1 -1
  368. package/lib/typescript/shared/utils/bounds/helpers/styles/compute.d.ts +1 -1
  369. package/lib/typescript/shared/utils/bounds/helpers/styles/compute.d.ts.map +1 -1
  370. package/lib/typescript/shared/utils/bounds/navigation/reveal/build.d.ts.map +1 -1
  371. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  372. package/lib/typescript/shared/utils/bounds/types/options.d.ts +93 -6
  373. package/lib/typescript/shared/utils/bounds/types/options.d.ts.map +1 -1
  374. package/package.json +8 -2
  375. package/src/blank-stack/components/stack-view.tsx +4 -3
  376. package/src/shared/components/{create-boundary-component → boundary}/components/boundary-target.tsx +28 -11
  377. package/src/shared/components/{create-boundary-component → boundary}/create-boundary-component.tsx +33 -31
  378. package/src/shared/components/boundary/hooks/use-initial-destination-measurement.ts +156 -0
  379. package/src/shared/components/{create-boundary-component → boundary}/hooks/use-initial-source-measurement.ts +5 -14
  380. package/src/shared/components/{create-boundary-component → boundary}/hooks/use-measurer.ts +42 -46
  381. package/src/shared/components/{create-boundary-component → boundary}/hooks/use-refresh-boundary.ts +16 -11
  382. package/src/shared/components/{create-boundary-component → boundary}/index.tsx +12 -0
  383. package/src/shared/components/boundary/portal/components/host.tsx +114 -0
  384. package/src/shared/components/boundary/portal/components/portal-boundary-host.tsx +97 -0
  385. package/src/shared/components/boundary/portal/components/portal-provider.tsx +14 -0
  386. package/src/shared/components/boundary/portal/components/portal.tsx +283 -0
  387. package/src/shared/components/boundary/portal/hooks/use-host-measurement.ts +102 -0
  388. package/src/shared/components/boundary/portal/index.ts +3 -0
  389. package/src/shared/components/boundary/portal/stores/host-bounds.store.ts +45 -0
  390. package/src/shared/components/boundary/portal/stores/host-registry.store.ts +182 -0
  391. package/src/shared/components/boundary/portal/stores/portal-boundary-host.store.ts +91 -0
  392. package/src/shared/components/boundary/portal/teleport.ts +21 -0
  393. package/src/shared/components/boundary/portal/utils/attachment.ts +48 -0
  394. package/src/shared/components/boundary/portal/utils/naming.ts +10 -0
  395. package/src/shared/components/boundary/portal/utils/offset-style.ts +171 -0
  396. package/src/shared/components/boundary/portal/utils/teleport-control.ts +13 -0
  397. package/src/shared/components/{create-boundary-component → boundary}/providers/boundary-owner.provider.tsx +41 -33
  398. package/src/shared/components/boundary/types.ts +92 -0
  399. package/src/shared/components/boundary/utils/destination-signals.ts +31 -0
  400. package/src/shared/components/{create-boundary-component → boundary}/utils/measured-bounds.ts +34 -11
  401. package/src/shared/components/boundary/utils/refresh-signals.ts +175 -0
  402. package/src/shared/components/boundary/utils/source-signals.ts +63 -0
  403. package/src/shared/components/create-transition-aware-component.tsx +8 -3
  404. package/src/shared/components/{integrations/masked-view.tsx → masked-view.tsx} +2 -2
  405. package/src/shared/components/screen-container/layers/content.tsx +12 -7
  406. package/src/shared/configs/presets.ts +2 -6
  407. package/src/shared/hooks/navigation/use-stack.tsx +32 -1
  408. package/src/shared/index.ts +13 -5
  409. package/src/shared/providers/helpers/measured-bounds-writes.ts +11 -1
  410. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/types.ts +1 -0
  411. package/src/shared/providers/screen/animation/helpers/pipeline.ts +13 -19
  412. package/src/shared/providers/screen/animation/helpers/stack-progress.ts +31 -16
  413. package/src/shared/providers/screen/animation/helpers/use-build-transition-state.ts +2 -0
  414. package/src/shared/providers/screen/descriptors/descriptors.provider.tsx +7 -3
  415. package/src/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.ts +16 -0
  416. package/src/shared/providers/screen/descriptors/helpers/get-ancestor-keys.ts +31 -6
  417. package/src/shared/providers/screen/origin.provider.tsx +38 -0
  418. package/src/shared/providers/screen/styles/constants.ts +2 -0
  419. package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/are-resettable-states-equal.ts +74 -0
  420. package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/index.ts +1 -0
  421. package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +1 -0
  422. package/src/shared/providers/screen/styles/styles.provider.tsx +5 -3
  423. package/src/shared/stores/animation.store.ts +3 -0
  424. package/src/shared/stores/bounds/helpers/link-pairs.helpers.ts +1 -10
  425. package/src/shared/stores/bounds/index.ts +2 -4
  426. package/src/shared/stores/bounds/internals/entries.ts +4 -4
  427. package/src/shared/stores/bounds/internals/links.ts +52 -18
  428. package/src/shared/stores/bounds/internals/resolver.ts +5 -3
  429. package/src/shared/stores/bounds/internals/state.ts +5 -2
  430. package/src/shared/stores/bounds/types.ts +59 -15
  431. package/src/shared/stores/scroll.store.ts +68 -0
  432. package/src/shared/types/animation.types.ts +17 -2
  433. package/src/shared/types/bounds.types.ts +22 -60
  434. package/src/shared/types/index.ts +5 -0
  435. package/src/shared/utils/bounds/helpers/create-bound-tag.ts +46 -4
  436. package/src/shared/utils/bounds/helpers/create-bounds-accessor-core.ts +65 -116
  437. package/src/shared/utils/bounds/helpers/create-link-accessor.ts +10 -80
  438. package/src/shared/utils/bounds/helpers/prepare-bound-styles.ts +10 -13
  439. package/src/shared/utils/bounds/helpers/styles/composers.ts +269 -46
  440. package/src/shared/utils/bounds/helpers/styles/compute.ts +134 -2
  441. package/src/shared/utils/bounds/navigation/reveal/build.ts +5 -7
  442. package/src/shared/utils/bounds/navigation/zoom/build.ts +5 -8
  443. package/src/shared/utils/bounds/types/options.ts +105 -6
  444. package/lib/commonjs/shared/components/create-boundary-component/components/boundary-target.js.map +0 -1
  445. package/lib/commonjs/shared/components/create-boundary-component/create-boundary-component.js.map +0 -1
  446. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-boundary-presence.js.map +0 -1
  447. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js +0 -99
  448. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js.map +0 -1
  449. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js.map +0 -1
  450. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js.map +0 -1
  451. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +0 -1
  452. package/lib/commonjs/shared/components/create-boundary-component/index.js.map +0 -1
  453. package/lib/commonjs/shared/components/create-boundary-component/providers/boundary-owner.provider.js.map +0 -1
  454. package/lib/commonjs/shared/components/create-boundary-component/types.js.map +0 -1
  455. package/lib/commonjs/shared/components/create-boundary-component/utils/destination-signals.js +0 -75
  456. package/lib/commonjs/shared/components/create-boundary-component/utils/destination-signals.js.map +0 -1
  457. package/lib/commonjs/shared/components/create-boundary-component/utils/measured-bounds.js.map +0 -1
  458. package/lib/commonjs/shared/components/create-boundary-component/utils/refresh-signals.js +0 -103
  459. package/lib/commonjs/shared/components/create-boundary-component/utils/refresh-signals.js.map +0 -1
  460. package/lib/commonjs/shared/components/create-boundary-component/utils/source-signals.js +0 -52
  461. package/lib/commonjs/shared/components/create-boundary-component/utils/source-signals.js.map +0 -1
  462. package/lib/commonjs/shared/components/integrations/masked-view.js.map +0 -1
  463. package/lib/commonjs/shared/utils/bounds/helpers/create-interpolators.js +0 -68
  464. package/lib/commonjs/shared/utils/bounds/helpers/create-interpolators.js.map +0 -1
  465. package/lib/commonjs/shared/utils/bounds/helpers/styles/interpolate-link-style.js +0 -30
  466. package/lib/commonjs/shared/utils/bounds/helpers/styles/interpolate-link-style.js.map +0 -1
  467. package/lib/module/shared/components/create-boundary-component/components/boundary-target.js.map +0 -1
  468. package/lib/module/shared/components/create-boundary-component/create-boundary-component.js.map +0 -1
  469. package/lib/module/shared/components/create-boundary-component/hooks/use-boundary-presence.js.map +0 -1
  470. package/lib/module/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js +0 -94
  471. package/lib/module/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js.map +0 -1
  472. package/lib/module/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js.map +0 -1
  473. package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js.map +0 -1
  474. package/lib/module/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +0 -1
  475. package/lib/module/shared/components/create-boundary-component/index.js.map +0 -1
  476. package/lib/module/shared/components/create-boundary-component/providers/boundary-owner.provider.js +0 -60
  477. package/lib/module/shared/components/create-boundary-component/providers/boundary-owner.provider.js.map +0 -1
  478. package/lib/module/shared/components/create-boundary-component/types.js.map +0 -1
  479. package/lib/module/shared/components/create-boundary-component/utils/destination-signals.js +0 -70
  480. package/lib/module/shared/components/create-boundary-component/utils/destination-signals.js.map +0 -1
  481. package/lib/module/shared/components/create-boundary-component/utils/measured-bounds.js.map +0 -1
  482. package/lib/module/shared/components/create-boundary-component/utils/refresh-signals.js +0 -98
  483. package/lib/module/shared/components/create-boundary-component/utils/refresh-signals.js.map +0 -1
  484. package/lib/module/shared/components/create-boundary-component/utils/source-signals.js +0 -47
  485. package/lib/module/shared/components/create-boundary-component/utils/source-signals.js.map +0 -1
  486. package/lib/module/shared/components/integrations/masked-view.js.map +0 -1
  487. package/lib/module/shared/utils/bounds/helpers/create-interpolators.js +0 -63
  488. package/lib/module/shared/utils/bounds/helpers/create-interpolators.js.map +0 -1
  489. package/lib/module/shared/utils/bounds/helpers/styles/interpolate-link-style.js +0 -26
  490. package/lib/module/shared/utils/bounds/helpers/styles/interpolate-link-style.js.map +0 -1
  491. package/lib/typescript/shared/components/create-boundary-component/components/boundary-target.d.ts.map +0 -1
  492. package/lib/typescript/shared/components/create-boundary-component/create-boundary-component.d.ts.map +0 -1
  493. package/lib/typescript/shared/components/create-boundary-component/hooks/use-boundary-presence.d.ts.map +0 -1
  494. package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.d.ts.map +0 -1
  495. package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-source-measurement.d.ts.map +0 -1
  496. package/lib/typescript/shared/components/create-boundary-component/hooks/use-measurer.d.ts.map +0 -1
  497. package/lib/typescript/shared/components/create-boundary-component/hooks/use-refresh-boundary.d.ts +0 -14
  498. package/lib/typescript/shared/components/create-boundary-component/hooks/use-refresh-boundary.d.ts.map +0 -1
  499. package/lib/typescript/shared/components/create-boundary-component/index.d.ts.map +0 -1
  500. package/lib/typescript/shared/components/create-boundary-component/providers/boundary-owner.provider.d.ts.map +0 -1
  501. package/lib/typescript/shared/components/create-boundary-component/types.d.ts +0 -37
  502. package/lib/typescript/shared/components/create-boundary-component/types.d.ts.map +0 -1
  503. package/lib/typescript/shared/components/create-boundary-component/utils/destination-signals.d.ts.map +0 -1
  504. package/lib/typescript/shared/components/create-boundary-component/utils/measured-bounds.d.ts +0 -8
  505. package/lib/typescript/shared/components/create-boundary-component/utils/measured-bounds.d.ts.map +0 -1
  506. package/lib/typescript/shared/components/create-boundary-component/utils/refresh-signals.d.ts.map +0 -1
  507. package/lib/typescript/shared/components/create-boundary-component/utils/source-signals.d.ts.map +0 -1
  508. package/lib/typescript/shared/components/integrations/masked-view.d.ts.map +0 -1
  509. package/lib/typescript/shared/utils/bounds/helpers/create-interpolators.d.ts +0 -14
  510. package/lib/typescript/shared/utils/bounds/helpers/create-interpolators.d.ts.map +0 -1
  511. package/lib/typescript/shared/utils/bounds/helpers/styles/interpolate-link-style.d.ts +0 -17
  512. package/lib/typescript/shared/utils/bounds/helpers/styles/interpolate-link-style.d.ts.map +0 -1
  513. package/src/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.ts +0 -130
  514. package/src/shared/components/create-boundary-component/types.ts +0 -48
  515. package/src/shared/components/create-boundary-component/utils/destination-signals.ts +0 -129
  516. package/src/shared/components/create-boundary-component/utils/refresh-signals.ts +0 -164
  517. package/src/shared/components/create-boundary-component/utils/source-signals.ts +0 -72
  518. package/src/shared/utils/bounds/helpers/create-interpolators.ts +0 -117
  519. package/src/shared/utils/bounds/helpers/styles/interpolate-link-style.ts +0 -43
  520. /package/lib/commonjs/shared/components/{create-boundary-component → boundary}/hooks/use-boundary-presence.js +0 -0
  521. /package/lib/commonjs/shared/components/{create-boundary-component → boundary}/types.js +0 -0
  522. /package/lib/module/shared/components/{create-boundary-component → boundary}/hooks/use-boundary-presence.js +0 -0
  523. /package/lib/module/shared/components/{create-boundary-component → boundary}/types.js +0 -0
  524. /package/lib/typescript/shared/components/{create-boundary-component → boundary}/components/boundary-target.d.ts +0 -0
  525. /package/lib/typescript/shared/components/{create-boundary-component → boundary}/create-boundary-component.d.ts +0 -0
  526. /package/lib/typescript/shared/components/{create-boundary-component → boundary}/hooks/use-boundary-presence.d.ts +0 -0
  527. /package/lib/typescript/shared/components/{integrations/masked-view.d.ts → masked-view.d.ts} +0 -0
  528. /package/src/shared/components/{create-boundary-component → boundary}/hooks/use-boundary-presence.ts +0 -0
@@ -7,6 +7,7 @@ exports.StackView = void 0;
7
7
  var _native = require("@react-navigation/native");
8
8
  var _react = require("react");
9
9
  var _activity = require("../../shared/components/activity");
10
+ var _portal = require("../../shared/components/boundary/portal");
10
11
  var _overlay = require("../../shared/components/overlay");
11
12
  var _screenComposer = require("../../shared/providers/screen/screen-composer");
12
13
  var _blankStack = require("../../shared/providers/stack/blank-stack.provider");
@@ -44,7 +45,7 @@ const StackView = exports.StackView = (0, _core.withStackCore)({
44
45
  scenes,
45
46
  shouldShowFloatOverlay
46
47
  }) => {
47
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.Fragment, {
48
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_portal.PortalProvider, {
48
49
  children: [shouldShowFloatOverlay ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_overlay.Overlay.Float, {}) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_activity.ActivityContainer, {
49
50
  children: scenes.map((scene, index) => {
50
51
  const route = scene.route;
@@ -1 +1 @@
1
- {"version":3,"names":["_native","require","_react","_activity","_overlay","_screenComposer","_blankStack","_core","_jsxRuntime","BlankSceneRow","memo","scene","paintDriverRouteKey","descriptor","route","jsx","NavigationContext","Provider","value","navigation","children","NavigationRouteContext","ActivityScreen","activity","inactiveBehavior","options","hasNestedState","ScreenComposer","previous","previousDescriptor","current","next","nextDescriptor","render","StackView","exports","withStackCore","TRANSITIONS_ALWAYS_ON","DISABLE_NATIVE_SCREENS","withBlankStack","scenes","shouldShowFloatOverlay","jsxs","Fragment","Overlay","Float","ActivityContainer","map","index","key"],"sourceRoot":"../../../../src","sources":["blank-stack/components/stack-view.tsx"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAIA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AAIA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AAA2E,IAAAO,WAAA,GAAAP,OAAA;AAY3E,MAAMQ,aAAa,gBAAG,IAAAC,WAAI,EAAC,SAASD,aAAaA,CAAC;EACjDE,KAAK;EACLC;AACmB,CAAC,EAAE;EACtB,MAAMC,UAAU,GAAGF,KAAK,CAACE,UAAU;EACnC,MAAMC,KAAK,GAAGH,KAAK,CAACG,KAAK;EAEzB,oBACC,IAAAN,WAAA,CAAAO,GAAA,EAACf,OAAA,CAAAgB,iBAAiB,CAACC,QAAQ;IAACC,KAAK,EAAEL,UAAU,CAACM,UAAW;IAAAC,QAAA,eACxD,IAAAZ,WAAA,CAAAO,GAAA,EAACf,OAAA,CAAAqB,sBAAsB,CAACJ,QAAQ;MAACC,KAAK,EAAEJ,KAAM;MAAAM,QAAA,eAC7C,IAAAZ,WAAA,CAAAO,GAAA,EAACZ,SAAA,CAAAmB,cAAc;QACdC,QAAQ,EAAEV,UAAU,CAACU,QAAS;QAC9BC,gBAAgB,EAAEX,UAAU,CAACY,OAAO,CAACD,gBAAiB;QACtDZ,mBAAmB,EAAEA,mBAAoB;QACzCc,cAAc,EAAE,OAAO,IAAIZ,KAAM;QAAAM,QAAA,eAEjC,IAAAZ,WAAA,CAAAO,GAAA,EAACV,eAAA,CAAAsB,cAAc;UACdC,QAAQ,EAAEjB,KAAK,CAACkB,kBAAmB;UACnCC,OAAO,EAAEjB,UAAW;UACpBkB,IAAI,EAAEpB,KAAK,CAACqB,cAAe;UAAAZ,QAAA,EAE1BP,UAAU,CAACoB,MAAM,GAAG;QAAC,CACP;MAAC,CACF;IAAC,CACe;EAAC,CACP,CAAC;AAE/B,CAAC,CAAC;AAEK,MAAMC,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG,IAAAE,mBAAa,EACrC;EAAEC,qBAAqB,EAAE,IAAI;EAAEC,sBAAsB,EAAE;AAAM,CAAC,EAC9D,IAAAC,0BAAc,EACb,CAAC;EAAEC,MAAM;EAAEC;AAAuB,CAAC,KAAK;EACvC,oBACC,IAAAjC,WAAA,CAAAkC,IAAA,EAACxC,MAAA,CAAAyC,QAAQ;IAAAvB,QAAA,GACPqB,sBAAsB,gBAAG,IAAAjC,WAAA,CAAAO,GAAA,EAACX,QAAA,CAAAwC,OAAO,CAACC,KAAK,IAAE,CAAC,GAAG,IAAI,eAElD,IAAArC,WAAA,CAAAO,GAAA,EAACZ,SAAA,CAAA2C,iBAAiB;MAAA1B,QAAA,EAChBoB,MAAM,CAACO,GAAG,CAAC,CAACpC,KAAK,EAAEqC,KAAK,KAAK;QAC7B,MAAMlC,KAAK,GAAGH,KAAK,CAACG,KAAK;QACzB,MAAMF,mBAAmB,GAAG4B,MAAM,CAACQ,KAAK,GAAG,CAAC,CAAC,EAAElC,KAAK,CAACmC,GAAG;QAExD,oBACC,IAAAzC,WAAA,CAAAO,GAAA,EAACN,aAAa;UAEbE,KAAK,EAAEA,KAAM;UACbC,mBAAmB,EAAEA;QAAoB,GAFpCE,KAAK,CAACmC,GAGX,CAAC;MAEJ,CAAC;IAAC,CACgB,CAAC;EAAA,CACX,CAAC;AAEb,CACD,CACD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_native","require","_react","_activity","_portal","_overlay","_screenComposer","_blankStack","_core","_jsxRuntime","BlankSceneRow","memo","scene","paintDriverRouteKey","descriptor","route","jsx","NavigationContext","Provider","value","navigation","children","NavigationRouteContext","ActivityScreen","activity","inactiveBehavior","options","hasNestedState","ScreenComposer","previous","previousDescriptor","current","next","nextDescriptor","render","StackView","exports","withStackCore","TRANSITIONS_ALWAYS_ON","DISABLE_NATIVE_SCREENS","withBlankStack","scenes","shouldShowFloatOverlay","jsxs","PortalProvider","Overlay","Float","ActivityContainer","map","index","key"],"sourceRoot":"../../../../src","sources":["blank-stack/components/stack-view.tsx"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAIA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AAIA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,eAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AAA2E,IAAAQ,WAAA,GAAAR,OAAA;AAY3E,MAAMS,aAAa,gBAAG,IAAAC,WAAI,EAAC,SAASD,aAAaA,CAAC;EACjDE,KAAK;EACLC;AACmB,CAAC,EAAE;EACtB,MAAMC,UAAU,GAAGF,KAAK,CAACE,UAAU;EACnC,MAAMC,KAAK,GAAGH,KAAK,CAACG,KAAK;EAEzB,oBACC,IAAAN,WAAA,CAAAO,GAAA,EAAChB,OAAA,CAAAiB,iBAAiB,CAACC,QAAQ;IAACC,KAAK,EAAEL,UAAU,CAACM,UAAW;IAAAC,QAAA,eACxD,IAAAZ,WAAA,CAAAO,GAAA,EAAChB,OAAA,CAAAsB,sBAAsB,CAACJ,QAAQ;MAACC,KAAK,EAAEJ,KAAM;MAAAM,QAAA,eAC7C,IAAAZ,WAAA,CAAAO,GAAA,EAACb,SAAA,CAAAoB,cAAc;QACdC,QAAQ,EAAEV,UAAU,CAACU,QAAS;QAC9BC,gBAAgB,EAAEX,UAAU,CAACY,OAAO,CAACD,gBAAiB;QACtDZ,mBAAmB,EAAEA,mBAAoB;QACzCc,cAAc,EAAE,OAAO,IAAIZ,KAAM;QAAAM,QAAA,eAEjC,IAAAZ,WAAA,CAAAO,GAAA,EAACV,eAAA,CAAAsB,cAAc;UACdC,QAAQ,EAAEjB,KAAK,CAACkB,kBAAmB;UACnCC,OAAO,EAAEjB,UAAW;UACpBkB,IAAI,EAAEpB,KAAK,CAACqB,cAAe;UAAAZ,QAAA,EAE1BP,UAAU,CAACoB,MAAM,GAAG;QAAC,CACP;MAAC,CACF;IAAC,CACe;EAAC,CACP,CAAC;AAE/B,CAAC,CAAC;AAEK,MAAMC,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG,IAAAE,mBAAa,EACrC;EAAEC,qBAAqB,EAAE,IAAI;EAAEC,sBAAsB,EAAE;AAAM,CAAC,EAC9D,IAAAC,0BAAc,EACb,CAAC;EAAEC,MAAM;EAAEC;AAAuB,CAAC,KAAK;EACvC,oBACC,IAAAjC,WAAA,CAAAkC,IAAA,EAACvC,OAAA,CAAAwC,cAAc;IAAAvB,QAAA,GACbqB,sBAAsB,gBAAG,IAAAjC,WAAA,CAAAO,GAAA,EAACX,QAAA,CAAAwC,OAAO,CAACC,KAAK,IAAE,CAAC,GAAG,IAAI,eAElD,IAAArC,WAAA,CAAAO,GAAA,EAACb,SAAA,CAAA4C,iBAAiB;MAAA1B,QAAA,EAChBoB,MAAM,CAACO,GAAG,CAAC,CAACpC,KAAK,EAAEqC,KAAK,KAAK;QAC7B,MAAMlC,KAAK,GAAGH,KAAK,CAACG,KAAK;QACzB,MAAMF,mBAAmB,GAAG4B,MAAM,CAACQ,KAAK,GAAG,CAAC,CAAC,EAAElC,KAAK,CAACmC,GAAG;QAExD,oBACC,IAAAzC,WAAA,CAAAO,GAAA,EAACN,aAAa;UAEbE,KAAK,EAAEA,KAAM;UACbC,mBAAmB,EAAEA;QAAoB,GAFpCE,KAAK,CAACmC,GAGX,CAAC;MAEJ,CAAC;IAAC,CACgB,CAAC;EAAA,CACL,CAAC;AAEnB,CACD,CACD,CAAC","ignoreList":[]}
@@ -7,6 +7,8 @@ exports.BoundaryTarget = void 0;
7
7
  var _react = require("react");
8
8
  var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
9
9
  var _styles = require("../../../utils/bounds/helpers/styles/styles");
10
+ var _logger = require("../../../utils/logger");
11
+ var _portal = require("../portal/components/portal");
10
12
  var _boundaryOwner = require("../providers/boundary-owner.provider");
11
13
  var _jsxRuntime = require("react/jsx-runtime");
12
14
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
@@ -16,28 +18,39 @@ const BoundaryTarget = exports.BoundaryTarget = /*#__PURE__*/(0, _react.memo)(fu
16
18
  ...rest
17
19
  } = props;
18
20
  const targetAnimatedRef = (0, _reactNativeReanimated.useAnimatedRef)();
21
+ const placeholderAnimatedRef = (0, _reactNativeReanimated.useAnimatedRef)();
19
22
  const ownerContext = (0, _boundaryOwner.useBoundaryOwnerContext)();
20
23
  const registerTargetRef = ownerContext?.registerTargetRef;
21
24
  const unregisterTargetRef = ownerContext?.unregisterTargetRef;
22
25
  const isActiveTarget = ownerContext?.activeTargetRef === targetAnimatedRef;
23
26
  const preparedStyles = (0, _react.useMemo)(() => (0, _styles.prepareStyleForBounds)(style), [style]);
27
+ // Portal'd content can be teleported into another screen's host; measuring
28
+ // it there would capture its CURRENT (destination) position as the source
29
+ // bounds. The portal placeholder keeps the layout slot at home, so it is
30
+ // the truthful measurement surface whenever a portal is configured.
31
+ const measurementRef = ownerContext?.portal ? placeholderAnimatedRef : targetAnimatedRef;
24
32
  (0, _react.useLayoutEffect)(() => {
25
33
  if (!registerTargetRef || !unregisterTargetRef) {
26
34
  if (__DEV__) {
27
- console.warn(_boundaryOwner.TARGET_OUTSIDE_OWNER_WARNING);
35
+ _logger.logger.warn(_boundaryOwner.TARGET_OUTSIDE_OWNER_WARNING);
28
36
  }
29
37
  return;
30
38
  }
31
- registerTargetRef(targetAnimatedRef, preparedStyles);
39
+ registerTargetRef(targetAnimatedRef, preparedStyles, measurementRef);
32
40
  return () => {
33
41
  unregisterTargetRef(targetAnimatedRef);
34
42
  };
35
- }, [registerTargetRef, unregisterTargetRef, targetAnimatedRef, preparedStyles]);
36
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
37
- ...rest,
38
- ref: targetAnimatedRef,
39
- style: [style, isActiveTarget ? ownerContext.associatedTargetStyles : undefined],
40
- collapsable: false
43
+ }, [registerTargetRef, unregisterTargetRef, targetAnimatedRef, preparedStyles, measurementRef]);
44
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_portal.Portal, {
45
+ id: ownerContext?.entryTag,
46
+ mode: ownerContext?.portal,
47
+ placeholderRef: placeholderAnimatedRef,
48
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
49
+ ...rest,
50
+ ref: targetAnimatedRef,
51
+ style: [style, isActiveTarget ? ownerContext.associatedTargetStyles : undefined],
52
+ collapsable: false
53
+ })
41
54
  });
42
55
  });
43
56
  //# sourceMappingURL=boundary-target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_interopRequireWildcard","_styles","_logger","_portal","_boundaryOwner","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","BoundaryTarget","exports","memo","props","style","rest","targetAnimatedRef","useAnimatedRef","placeholderAnimatedRef","ownerContext","useBoundaryOwnerContext","registerTargetRef","unregisterTargetRef","isActiveTarget","activeTargetRef","preparedStyles","useMemo","prepareStyleForBounds","measurementRef","portal","useLayoutEffect","__DEV__","logger","warn","TARGET_OUTSIDE_OWNER_WARNING","jsx","Portal","id","entryTag","mode","placeholderRef","children","View","ref","associatedTargetStyles","undefined","collapsable"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/components/boundary-target.tsx"],"mappings":"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","ignoreList":[]}
@@ -11,11 +11,13 @@ var _descriptors = require("../../providers/screen/descriptors");
11
11
  var _styles = require("../../providers/screen/styles");
12
12
  var _linkPairs = require("../../stores/bounds/helpers/link-pairs.helpers");
13
13
  var _styles2 = require("../../utils/bounds/helpers/styles/styles");
14
+ var _logger = require("../../utils/logger");
14
15
  var _useBoundaryPresence = require("./hooks/use-boundary-presence");
15
16
  var _useInitialDestinationMeasurement = require("./hooks/use-initial-destination-measurement");
16
17
  var _useInitialSourceMeasurement = require("./hooks/use-initial-source-measurement");
17
18
  var _useMeasurer = require("./hooks/use-measurer");
18
19
  var _useRefreshBoundary = require("./hooks/use-refresh-boundary");
20
+ var _teleport = require("./portal/teleport");
19
21
  var _boundaryOwner = require("./providers/boundary-owner.provider");
20
22
  var _jsxRuntime = require("react/jsx-runtime");
21
23
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
@@ -37,23 +39,15 @@ function createBoundaryComponent(Wrapped, options = {}) {
37
39
  method,
38
40
  style,
39
41
  onPress,
42
+ portal,
40
43
  ...rest
41
44
  } = props;
42
45
  const linkId = String(id);
43
46
  const entryTag = group ? `${group}:${linkId}` : linkId;
44
- const {
45
- previousScreenKey: preferredSourceScreenKey,
46
- currentScreenKey,
47
- nextScreenKey,
48
- ancestorKeys,
49
- hasConfiguredInterpolator
50
- } = (0, _descriptors.useDescriptorDerivations)();
47
+ const currentScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.currentScreenKey);
48
+ const hasConfiguredInterpolator = (0, _descriptors.useDescriptorsStore)(s => s.derivations.hasConfiguredInterpolator);
51
49
  const runtimeEnabled = enabled && hasConfiguredInterpolator;
52
- const hasNextScreen = !!nextScreenKey;
53
50
  const boundaryConfig = (0, _react.useMemo)(() => {
54
- if (anchor === undefined && scaleMode === undefined && target === undefined && method === undefined) {
55
- return undefined;
56
- }
57
51
  return {
58
52
  anchor,
59
53
  scaleMode,
@@ -84,6 +78,12 @@ function createBoundaryComponent(Wrapped, options = {}) {
84
78
  elevation
85
79
  };
86
80
  });
81
+ const hasWarned = (0, _react.useRef)(false);
82
+ const adjustedPortal = _teleport.isTeleportAvailable ? portal : undefined;
83
+ if (!hasWarned.current && !_teleport.isTeleportAvailable && portal) {
84
+ _logger.logger.warn("react-native-teleport is not installed and will fallback to default behavior.");
85
+ hasWarned.current = true;
86
+ }
87
87
  const {
88
88
  contextValue,
89
89
  measuredRef,
@@ -91,9 +91,12 @@ function createBoundaryComponent(Wrapped, options = {}) {
91
91
  targetPreparedStyles
92
92
  } = (0, _boundaryOwner.useBoundaryOwner)({
93
93
  ownerRef,
94
- associatedTargetStyles: runtimeEnabled ? associatedStyles : undefined
94
+ associatedTargetStyles: runtimeEnabled ? associatedStyles : undefined,
95
+ entryTag,
96
+ portal: adjustedPortal
95
97
  });
96
98
  const preparedStyles = targetPreparedStyles ?? ownerPreparedStyles;
99
+ const portalHost = typeof adjustedPortal === "object" ? adjustedPortal.attachTo ?? "current-screen" : adjustedPortal ? "current-screen" : undefined;
97
100
  const measureBoundary = (0, _useMeasurer.useMeasurer)({
98
101
  enabled,
99
102
  entryTag,
@@ -101,9 +104,9 @@ function createBoundaryComponent(Wrapped, options = {}) {
101
104
  group,
102
105
  currentScreenKey,
103
106
  preparedStyles,
104
- measuredAnimatedRef: measuredRef
107
+ measuredAnimatedRef: measuredRef,
108
+ portalHost
105
109
  });
106
- const shouldRunDestinationEffects = runtimeEnabled && !hasNextScreen;
107
110
 
108
111
  // Register/unregister this boundary in the presence map so source/destination
109
112
  // matching can resolve across concrete screen keys.
@@ -116,29 +119,20 @@ function createBoundaryComponent(Wrapped, options = {}) {
116
119
  const shouldPassivelyMeasureSource = shouldAutoMeasure && typeof onPress !== "function";
117
120
  (0, _useInitialSourceMeasurement.useInitialSourceMeasurement)({
118
121
  enabled: runtimeEnabled,
119
- nextScreenKey,
120
122
  measureBoundary,
121
- currentScreenKey,
122
123
  linkId,
123
124
  group,
124
125
  shouldAutoMeasure: shouldPassivelyMeasureSource
125
126
  });
126
127
  (0, _useInitialDestinationMeasurement.useInitialDestinationMeasurement)({
127
128
  linkId,
128
- enabled: shouldRunDestinationEffects,
129
- currentScreenKey,
130
- preferredSourceScreenKey,
131
- ancestorScreenKeys: ancestorKeys,
129
+ enabled: runtimeEnabled,
132
130
  measureBoundary
133
131
  });
134
132
  (0, _useRefreshBoundary.useRefreshBoundary)({
135
133
  enabled: runtimeEnabled,
136
- currentScreenKey,
137
- preferredSourceScreenKey,
138
- nextScreenKey,
139
134
  linkId,
140
135
  group,
141
- ancestorScreenKeys: ancestorKeys,
142
136
  measureBoundary
143
137
  });
144
138
  const handlePress = (0, _react.useCallback)((...args) => {
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_interopRequireWildcard","_constants","_descriptors","_styles","_linkPairs","_styles2","_logger","_useBoundaryPresence","_useInitialDestinationMeasurement","_useInitialSourceMeasurement","_useMeasurer","_useRefreshBoundary","_teleport","_boundaryOwner","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","createBoundaryComponent","Wrapped","options","alreadyAnimated","shouldAutoMeasure","AnimatedComponent","Animated","createAnimatedComponent","Inner","forwardRef","props","forwardedRef","ownerRef","useAnimatedRef","enabled","group","id","anchor","scaleMode","target","method","style","onPress","portal","rest","linkId","String","entryTag","currentScreenKey","useDescriptorsStore","s","derivations","hasConfiguredInterpolator","runtimeEnabled","boundaryConfig","useMemo","ownerPreparedStyles","prepareStyleForBounds","stylesMap","useScreenStyles","associatedStyles","useAnimatedStyle","NO_STYLES","associatedStackingStyles","baseStyle","zIndex","elevation","hasWarned","useRef","adjustedPortal","isTeleportAvailable","undefined","current","logger","warn","contextValue","measuredRef","hasActiveTarget","targetPreparedStyles","useBoundaryOwner","associatedTargetStyles","preparedStyles","portalHost","attachTo","measureBoundary","useMeasurer","measuredAnimatedRef","useBoundaryPresence","shouldPassivelyMeasureSource","useInitialSourceMeasurement","useInitialDestinationMeasurement","useRefreshBoundary","handlePress","useCallback","args","runOnUI","type","pairKey","createPendingPairKey","resolvedOnPress","useImperativeHandle","jsx","BoundaryOwnerProvider","value","children","ref","collapsable","memo"],"sourceRoot":"../../../../../src","sources":["shared/components/boundary/create-boundary-component.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAUA,IAAAC,sBAAA,GAAAC,uBAAA,CAAAF,OAAA;AAKA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAR,OAAA;AACA,IAAAS,oBAAA,GAAAT,OAAA;AACA,IAAAU,iCAAA,GAAAV,OAAA;AACA,IAAAW,4BAAA,GAAAX,OAAA;AACA,IAAAY,YAAA,GAAAZ,OAAA;AACA,IAAAa,mBAAA,GAAAb,OAAA;AACA,IAAAc,SAAA,GAAAd,OAAA;AACA,IAAAe,cAAA,GAAAf,OAAA;AAG6C,IAAAgB,WAAA,GAAAhB,OAAA;AAAA,SAAAE,wBAAAe,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAjB,uBAAA,YAAAA,CAAAe,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAQtC,SAASkB,uBAAuBA,CACtCC,OAAyB,EACzBC,OAAuC,GAAG,CAAC,CAAC,EAC3C;EACD,MAAM;IAAEC,eAAe,GAAG,KAAK;IAAEC,iBAAiB,GAAG;EAAM,CAAC,GAAGF,OAAO;EACtE,MAAMG,iBAAiB,GAAGF,eAAe,GACtCF,OAAO,GACPK,8BAAQ,CAACC,uBAAuB,CAACN,OAAO,CAAC;EAE5C,MAAMO,KAAK,gBAAG,IAAAC,iBAAU,EAGtB,CAACC,KAAK,EAAEC,YAAY,KAAK;IAC1B,MAAMC,QAAQ,GAAG,IAAAC,qCAAc,EAAO,CAAC;IACvC,MAAM;MACLC,OAAO,GAAG,IAAI;MACdC,KAAK;MACLC,EAAE;MACFC,MAAM;MACNC,SAAS;MACTC,MAAM;MACNC,MAAM;MACNC,KAAK;MACLC,OAAO;MACPC,MAAM;MACN,GAAGC;IACJ,CAAC,GAAGd,KAAY;IAEhB,MAAMe,MAAM,GAAGC,MAAM,CAACV,EAAE,CAAC;IACzB,MAAMW,QAAQ,GAAGZ,KAAK,GAAG,GAAGA,KAAK,IAAIU,MAAM,EAAE,GAAGA,MAAM;IAEtD,MAAMG,gBAAgB,GAAG,IAAAC,gCAAmB,EAC1CC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACH,gBACtB,CAAC;IACD,MAAMI,yBAAyB,GAAG,IAAAH,gCAAmB,EACnDC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACC,yBACtB,CAAC;IAED,MAAMC,cAAc,GAAGnB,OAAO,IAAIkB,yBAAyB;IAC3D,MAAME,cAAc,GAAG,IAAAC,cAAO,EAAsB,MAAM;MACzD,OAAO;QACNlB,MAAM;QACNC,SAAS;QACTC,MAAM;QACNC;MACD,CAAC;IACF,CAAC,EAAE,CAACH,MAAM,EAAEC,SAAS,EAAEC,MAAM,EAAEC,MAAM,CAAC,CAAC;IAEvC,MAAMgB,mBAAmB,GAAG,IAAAD,cAAO,EAClC,MAAM,IAAAE,8BAAqB,EAAChB,KAAK,CAAC,EAClC,CAACA,KAAK,CACP,CAAC;IACD,MAAM;MAAEiB;IAAU,CAAC,GAAG,IAAAC,uBAAe,EAAC,CAAC;IAEvC,MAAMC,gBAAgB,GAAG,IAAAC,uCAAgB,EAAC,MAAM;MAC/C,SAAS;;MACT,OAAOH,SAAS,CAAC7C,GAAG,CAAC,CAAC,CAACkC,QAAQ,CAAC,EAAEN,KAAK,IAAIqB,oBAAS;IACrD,CAAC,CAAC;IAEF,MAAMC,wBAAwB,GAAG,IAAAF,uCAAgB,EAAC,MAAM;MACvD,SAAS;;MACT,MAAMG,SAAS,GAAGN,SAAS,CAAC7C,GAAG,CAAC,CAAC,CAACkC,QAAQ,CAAC,EAAEN,KAAK;MAClD,MAAMwB,MAAM,GAAGD,SAAS,EAAEC,MAAM,IAAI,CAAC;MACrC,MAAMC,SAAS,GAAGF,SAAS,EAAEE,SAAS,IAAI,CAAC;MAE3C,IAAID,MAAM,KAAK,CAAC,IAAIC,SAAS,KAAK,CAAC,EAAE;QACpC,OAAOJ,oBAAS;MACjB;MAEA,OAAO;QAAEG,MAAM;QAAEC;MAAU,CAAC;IAC7B,CAAC,CAAC;IAEF,MAAMC,SAAS,GAAG,IAAAC,aAAM,EAAC,KAAK,CAAC;IAC/B,MAAMC,cAAc,GAAGC,6BAAmB,GAAG3B,MAAM,GAAG4B,SAAS;IAE/D,IAAI,CAACJ,SAAS,CAACK,OAAO,IAAI,CAACF,6BAAmB,IAAI3B,MAAM,EAAE;MACzD8B,cAAM,CAACC,IAAI,CACV,+EACD,CAAC;MACDP,SAAS,CAACK,OAAO,GAAG,IAAI;IACzB;IAEA,MAAM;MAAEG,YAAY;MAAEC,WAAW;MAAEC,eAAe;MAAEC;IAAqB,CAAC,GACzE,IAAAC,+BAAgB,EAAC;MAChB/C,QAAQ;MACRgD,sBAAsB,EAAE3B,cAAc,GAAGO,gBAAgB,GAAGW,SAAS;MACrExB,QAAQ;MACRJ,MAAM,EAAE0B;IACT,CAAC,CAAC;IAEH,MAAMY,cAAc,GAAGH,oBAAoB,IAAItB,mBAAmB;IAElE,MAAM0B,UAAU,GACf,OAAOb,cAAc,KAAK,QAAQ,GAC9BA,cAAc,CAACc,QAAQ,IAAI,gBAAgB,GAC5Cd,cAAc,GACb,gBAAgB,GAChBE,SAAS;IAEd,MAAMa,eAAe,GAAG,IAAAC,wBAAW,EAAC;MACnCnD,OAAO;MACPa,QAAQ;MACRF,MAAM;MACNV,KAAK;MACLa,gBAAgB;MAChBiC,cAAc;MACdK,mBAAmB,EAAEV,WAAW;MAChCM;IACD,CAAC,CAAC;;IAEF;IACA;IACA,IAAAK,wCAAmB,EAAC;MACnBrD,OAAO,EAAEmB,cAAc;MACvBN,QAAQ;MACRC,gBAAgB;MAChBM;IACD,CAAC,CAAC;IAEF,MAAMkC,4BAA4B,GACjChE,iBAAiB,IAAI,OAAOkB,OAAO,KAAK,UAAU;IAEnD,IAAA+C,wDAA2B,EAAC;MAC3BvD,OAAO,EAAEmB,cAAc;MACvB+B,eAAe;MACfvC,MAAM;MACNV,KAAK;MACLX,iBAAiB,EAAEgE;IACpB,CAAC,CAAC;IAEF,IAAAE,kEAAgC,EAAC;MAChC7C,MAAM;MACNX,OAAO,EAAEmB,cAAc;MACvB+B;IACD,CAAC,CAAC;IAEF,IAAAO,sCAAkB,EAAC;MAClBzD,OAAO,EAAEmB,cAAc;MACvBR,MAAM;MACNV,KAAK;MACLiD;IACD,CAAC,CAAC;IAEF,MAAMQ,WAAW,GAAG,IAAAC,kBAAW,EAC9B,CAAC,GAAGC,IAAe,KAAK;MACvB;MACA,IAAAC,8BAAO,EAACX,eAAe,CAAC,CAAC;QACxBY,IAAI,EAAE,QAAQ;QACdC,OAAO,EAAE,IAAAC,+BAAoB,EAAClD,gBAAgB;MAC/C,CAAC,CAAC;MAEF,IAAI,OAAON,OAAO,KAAK,UAAU,EAAE;QAClCA,OAAO,CAAC,GAAGoD,IAAI,CAAC;MACjB;IACD,CAAC,EACD,CAACV,eAAe,EAAE1C,OAAO,EAAEM,gBAAgB,CAC5C,CAAC;IAED,MAAMmD,eAAe,GACpB,OAAOzD,OAAO,KAAK,UAAU,GAAGkD,WAAW,GAAGrB,SAAS;IAExD,IAAA6B,0BAAmB,EAACrE,YAAY,EAAE,MAAMC,QAAQ,CAACwC,OAAc,EAAE,CAChExC,QAAQ,CACR,CAAC;IAEF,oBACC,IAAAhC,WAAA,CAAAqG,GAAA,EAACtG,cAAA,CAAAuG,qBAAqB;MAACC,KAAK,EAAE5B,YAAa;MAAA6B,QAAA,eAC1C,IAAAxG,WAAA,CAAAqG,GAAA,EAAC5E,iBAAiB;QAAA,GACbmB,IAAI;QACR6D,GAAG,EAAEzE,QAAS;QACdS,KAAK,EAAE,CACNA,KAAK,EACLY,cAAc,GACXwB,eAAe,GACdd,wBAAwB,GACxBH,gBAAgB,GACjBW,SAAS,CACX;QACF7B,OAAO,EAAEyD,eAAgB;QACzBO,WAAW,EAAE;MAAM,CACnB;IAAC,CACoB,CAAC;EAE1B,CAAC,CAAC;EAEF,oBAAO,IAAAC,WAAI,EACVjF,8BAAQ,CAACC,uBAAuB,CAACC,KAAK,CACvC,CAAC;AAMF","ignoreList":[]}
@@ -0,0 +1 @@
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":[]}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useInitialDestinationMeasurement = void 0;
7
+ var _reactNativeReanimated = require("react-native-reanimated");
8
+ var _descriptors = require("../../../providers/screen/descriptors");
9
+ var _animation = require("../../../stores/animation.store");
10
+ var _links = require("../../../stores/bounds/internals/links");
11
+ var _state = require("../../../stores/bounds/internals/state");
12
+ var _system = require("../../../stores/system.store");
13
+ var _logger = require("../../../utils/logger");
14
+ var _destinationSignals = require("../utils/destination-signals");
15
+ const VIEWPORT_RETRY_DELAY_MS = 16;
16
+ /**
17
+ * A destination that keeps failing its measurement guards must not hold the
18
+ * transition gate forever — after this budget the block is released with a
19
+ * warning so the open proceeds without that boundary.
20
+ */
21
+ const MAX_VIEWPORT_RETRIES = 20;
22
+ const useInitialDestinationMeasurement = ({
23
+ linkId,
24
+ enabled,
25
+ measureBoundary
26
+ }) => {
27
+ const currentScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.currentScreenKey);
28
+ const nextScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.nextScreenKey);
29
+ const destinationPairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.destinationPairKey);
30
+ const ancestorDestinationPairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.ancestorDestinationPairKey);
31
+ const destinationEnabled = enabled && !nextScreenKey;
32
+ const progress = _animation.AnimationStore.getValue(currentScreenKey, "transitionProgress");
33
+ const system = _system.SystemStore.getBag(currentScreenKey);
34
+ const {
35
+ pendingLifecycleRequestKind
36
+ } = system;
37
+ const {
38
+ blockLifecycleStart,
39
+ unblockLifecycleStart
40
+ } = system.actions;
41
+ const isBlockingLifecycleStart = (0, _reactNativeReanimated.useSharedValue)(0);
42
+ const retryToken = (0, _reactNativeReanimated.useSharedValue)(0);
43
+ const viewportRetries = (0, _reactNativeReanimated.useSharedValue)(0);
44
+ const hasGivenUp = (0, _reactNativeReanimated.useSharedValue)(0);
45
+ const releaseLifecycleStartBlock = () => {
46
+ "worklet";
47
+
48
+ (0, _reactNativeReanimated.cancelAnimation)(retryToken);
49
+ if (!isBlockingLifecycleStart.get()) {
50
+ return;
51
+ }
52
+ unblockLifecycleStart();
53
+ isBlockingLifecycleStart.set(0);
54
+ };
55
+ (0, _reactNativeReanimated.useAnimatedReaction)(() => {
56
+ "worklet";
57
+
58
+ const retryTick = retryToken.get();
59
+ const hasPendingOpenRequest = pendingLifecycleRequestKind.get() === _system.LifecycleTransitionRequestKind.Open;
60
+ const isWaitingForOpenToStart = progress.get() <= 0;
61
+ if (!hasPendingOpenRequest || !isWaitingForOpenToStart) {
62
+ return [0, retryTick];
63
+ }
64
+ const measurePairKey = (0, _destinationSignals.getInitialDestinationMeasurePairKey)({
65
+ enabled: destinationEnabled,
66
+ destinationPairKey,
67
+ ancestorDestinationPairKey,
68
+ linkId,
69
+ linkState: destinationEnabled && (destinationPairKey || ancestorDestinationPairKey) ? _state.pairs.get() : undefined
70
+ });
71
+ return [measurePairKey, retryTick];
72
+ }, ([measurePairKey]) => {
73
+ "worklet";
74
+
75
+ if (!measurePairKey) {
76
+ releaseLifecycleStartBlock();
77
+ viewportRetries.set(0);
78
+ hasGivenUp.set(0);
79
+ return;
80
+ }
81
+ if (hasGivenUp.get()) {
82
+ return;
83
+ }
84
+ if (!isBlockingLifecycleStart.get()) {
85
+ blockLifecycleStart();
86
+ isBlockingLifecycleStart.set(1);
87
+ }
88
+ measureBoundary({
89
+ type: "destination",
90
+ pairKey: measurePairKey
91
+ });
92
+ const destinationAttached = (0, _links.getDestination)(measurePairKey, linkId) !== null;
93
+ if (destinationAttached) {
94
+ releaseLifecycleStartBlock();
95
+ viewportRetries.set(0);
96
+ return;
97
+ }
98
+ if (viewportRetries.get() >= MAX_VIEWPORT_RETRIES) {
99
+ hasGivenUp.set(1);
100
+ releaseLifecycleStartBlock();
101
+ _logger.logger.warn(`Destination boundary "${linkId}" 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.`);
102
+ return;
103
+ }
104
+
105
+ // Destination did not attach (malformed off-screen measurement); retry
106
+ // on the next tick while the lifecycle stays blocked.
107
+ viewportRetries.set(viewportRetries.get() + 1);
108
+ (0, _reactNativeReanimated.cancelAnimation)(retryToken);
109
+ retryToken.set((0, _reactNativeReanimated.withDelay)(VIEWPORT_RETRY_DELAY_MS, (0, _reactNativeReanimated.withTiming)(retryToken.get() + 1, {
110
+ duration: 0
111
+ })));
112
+ });
113
+ };
114
+ exports.useInitialDestinationMeasurement = useInitialDestinationMeasurement;
115
+ //# sourceMappingURL=use-initial-destination-measurement.js.map
@@ -0,0 +1 @@
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":"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","ignoreList":[]}
@@ -5,30 +5,29 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.useInitialSourceMeasurement = void 0;
7
7
  var _reactNativeReanimated = require("react-native-reanimated");
8
+ var _descriptors = require("../../../providers/screen/descriptors");
8
9
  var _state = require("../../../stores/bounds/internals/state");
9
10
  var _sourceSignals = require("../utils/source-signals");
10
11
  const useInitialSourceMeasurement = params => {
11
12
  const {
12
13
  enabled,
13
- nextScreenKey,
14
14
  measureBoundary,
15
15
  linkId,
16
- currentScreenKey,
17
16
  group,
18
17
  shouldAutoMeasure
19
18
  } = params;
19
+ const sourcePairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.sourcePairKey);
20
20
  const lastSourceCaptureSignal = (0, _reactNativeReanimated.useSharedValue)(null);
21
21
  (0, _reactNativeReanimated.useAnimatedReaction)(() => {
22
22
  "worklet";
23
23
 
24
24
  return (0, _sourceSignals.getInitialSourceCaptureSignal)({
25
25
  enabled,
26
- nextScreenKey,
27
- currentScreenKey,
26
+ sourcePairKey,
28
27
  linkId,
29
28
  group,
30
29
  shouldAutoMeasure,
31
- linkState: group ? _state.pairs.get() : undefined
30
+ linkState: shouldAutoMeasure && sourcePairKey ? _state.pairs.get() : undefined
32
31
  });
33
32
  }, captureSignal => {
34
33
  "worklet";
@@ -0,0 +1 @@
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":[]}
@@ -6,11 +6,12 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useMeasurer = void 0;
7
7
  var _react = require("react");
8
8
  var _reactNative = require("react-native");
9
- var _entries = require("../../../stores/bounds/internals/entries");
10
- var _links = require("../../../stores/bounds/internals/links");
9
+ var _reactNativeReanimated = require("react-native-reanimated");
10
+ var _measuredBoundsWrites = require("../../../providers/helpers/measured-bounds-writes");
11
+ var _origin = require("../../../providers/screen/origin.provider");
11
12
  var _scroll = require("../../../stores/scroll.store");
12
13
  var _system = require("../../../stores/system.store");
13
- var _visibilityBlockOffset = require("../../../utils/visibility-block-offset");
14
+ var _hostRegistry = require("../portal/stores/host-registry.store");
14
15
  var _measuredBounds = require("../utils/measured-bounds");
15
16
  const useMeasurer = ({
16
17
  enabled,
@@ -19,25 +20,27 @@ const useMeasurer = ({
19
20
  group,
20
21
  currentScreenKey,
21
22
  preparedStyles,
22
- measuredAnimatedRef
23
+ measuredAnimatedRef,
24
+ portalHost
23
25
  }) => {
24
26
  const {
25
27
  width: viewportWidth,
26
28
  height: viewportHeight
27
29
  } = (0, _reactNative.useWindowDimensions)();
28
30
  const scrollState = _scroll.ScrollStore.getValue(currentScreenKey, "coordination");
31
+ const scrollMetadata = _scroll.ScrollStore.getValue(currentScreenKey, "metadata");
29
32
  const pendingLifecycleStartBlockCount = _system.SystemStore.getValue(currentScreenKey, "pendingLifecycleStartBlockCount");
33
+ const {
34
+ originRef
35
+ } = (0, _origin.useOriginContext)();
30
36
  return (0, _react.useCallback)(target => {
31
37
  "worklet";
32
38
 
33
39
  if (!enabled) return;
34
40
  const measured = (0, _measuredBounds.measureWithOverscrollAwareness)(measuredAnimatedRef, scrollState.get());
35
- if (!measured) return;
36
-
37
- // Source boundaries do not need offset correction. Only destination
38
- // captures can measure while the visibility gate is still blocked.
39
- const shouldAdjustBlockedDestination = target.type === "destination" && pendingLifecycleStartBlockCount.get() > 0;
40
- const normalizedMeasured = shouldAdjustBlockedDestination ? (0, _measuredBounds.applyVisibilityBlockOffset)(measured, (0, _visibilityBlockOffset.getVisibilityBlockOffset)(viewportHeight)) : measured;
41
+ const measuredOrigin = (0, _reactNativeReanimated.measure)(originRef);
42
+ if (!measured || !measuredOrigin) return;
43
+ const normalizedMeasured = (0, _measuredBounds.normalizeMeasuredBoundsToOrigin)(measured, measuredOrigin);
41
44
 
42
45
  /**
43
46
  * - Destination Pass -
@@ -49,19 +52,20 @@ const useMeasurer = ({
49
52
  const shouldGuardDestinationViewport = pendingLifecycleStartBlockCount.get() > 0 || !!group;
50
53
  const viewportAllowsDestinationWrite = target.type !== "destination" || !shouldGuardDestinationViewport || (0, _measuredBounds.isMeasurementInViewport)(normalizedMeasured, viewportWidth, viewportHeight);
51
54
  if (!viewportAllowsDestinationWrite) return;
52
-
53
- // Set the bounds entry on every measure to avoid any stale measurements
54
- // for the public read API.
55
- (0, _entries.setEntry)(entryTag, currentScreenKey, {
56
- bounds: normalizedMeasured
55
+ const measuredWithScroll = (0, _measuredBounds.attachScrollSnapshotToMeasuredBounds)(normalizedMeasured, scrollMetadata.get());
56
+ const sourceHost = target.type === "source" ? (0, _hostRegistry.getActiveScrollHost)(currentScreenKey) ?? undefined : undefined;
57
+ (0, _measuredBoundsWrites.applyMeasuredBoundsWrites)({
58
+ entryTag,
59
+ linkId,
60
+ group,
61
+ currentScreenKey,
62
+ measured: measuredWithScroll,
63
+ preparedStyles,
64
+ linkWrite: target,
65
+ portalHost,
66
+ sourceHost
57
67
  });
58
- if (target.type === "source") {
59
- (0, _links.setSource)(target.pairKey, linkId, currentScreenKey, normalizedMeasured, preparedStyles, group);
60
- }
61
- if (target.type === "destination") {
62
- (0, _links.setDestination)(target.pairKey, linkId, currentScreenKey, normalizedMeasured, preparedStyles, group);
63
- }
64
- }, [enabled, entryTag, linkId, group, currentScreenKey, preparedStyles, measuredAnimatedRef, viewportWidth, viewportHeight, scrollState, pendingLifecycleStartBlockCount]);
68
+ }, [enabled, entryTag, linkId, group, currentScreenKey, preparedStyles, measuredAnimatedRef, portalHost, viewportWidth, viewportHeight, scrollState, scrollMetadata, pendingLifecycleStartBlockCount, originRef]);
65
69
  };
66
70
  exports.useMeasurer = useMeasurer;
67
71
  //# sourceMappingURL=use-measurer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_measuredBoundsWrites","_origin","_scroll","_system","_hostRegistry","_measuredBounds","useMeasurer","enabled","entryTag","linkId","group","currentScreenKey","preparedStyles","measuredAnimatedRef","portalHost","width","viewportWidth","height","viewportHeight","useWindowDimensions","scrollState","ScrollStore","getValue","scrollMetadata","pendingLifecycleStartBlockCount","SystemStore","originRef","useOriginContext","useCallback","target","measured","measureWithOverscrollAwareness","get","measuredOrigin","measure","normalizedMeasured","normalizeMeasuredBoundsToOrigin","shouldGuardDestinationViewport","viewportAllowsDestinationWrite","type","isMeasurementInViewport","measuredWithScroll","attachScrollSnapshotToMeasuredBounds","sourceHost","getActiveScrollHost","undefined","applyMeasuredBoundsWrites","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;AACA,IAAAO,aAAA,GAAAP,OAAA;AAEA,IAAAQ,eAAA,GAAAR,OAAA;AAkBO,MAAMS,WAAW,GAAGA,CAAC;EAC3BC,OAAO;EACPC,QAAQ;EACRC,MAAM;EACNC,KAAK;EACLC,gBAAgB;EAChBC,cAAc;EACdC,mBAAmB;EACnBC;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,CAACX,gBAAgB,EAAE,cAAc,CAAC;EAC1E,MAAMY,cAAc,GAAGF,mBAAW,CAACC,QAAQ,CAACX,gBAAgB,EAAE,UAAU,CAAC;EACzE,MAAMa,+BAA+B,GAAGC,mBAAW,CAACH,QAAQ,CAC3DX,gBAAgB,EAChB,iCACD,CAAC;EACD,MAAM;IAAEe;EAAU,CAAC,GAAG,IAAAC,wBAAgB,EAAC,CAAC;EAExC,OAAO,IAAAC,kBAAW,EAChBC,MAAM,IAAK;IACX,SAAS;;IACT,IAAI,CAACtB,OAAO,EAAE;IAEd,MAAMuB,QAAQ,GAAG,IAAAC,8CAA8B,EAC9ClB,mBAAmB,EACnBO,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,CAACtB,KAAK;IAErD,MAAM4B,8BAA8B,GACnCT,MAAM,CAACU,IAAI,KAAK,aAAa,IAC7B,CAACF,8BAA8B,IAC/B,IAAAG,uCAAuB,EACtBL,kBAAkB,EAClBnB,aAAa,EACbE,cACD,CAAC;IAEF,IAAI,CAACoB,8BAA8B,EAAE;IAErC,MAAMG,kBAAkB,GAAG,IAAAC,oDAAoC,EAC9DP,kBAAkB,EAClBZ,cAAc,CAACS,GAAG,CAAC,CACpB,CAAC;IACD,MAAMW,UAAU,GACfd,MAAM,CAACU,IAAI,KAAK,QAAQ,GACpB,IAAAK,iCAAmB,EAACjC,gBAAgB,CAAC,IAAIkC,SAAS,GACnDA,SAAS;IAEb,IAAAC,+CAAyB,EAAC;MACzBtC,QAAQ;MACRC,MAAM;MACNC,KAAK;MACLC,gBAAgB;MAChBmB,QAAQ,EAAEW,kBAAkB;MAC5B7B,cAAc;MACdmC,SAAS,EAAElB,MAAM;MACjBf,UAAU;MACV6B;IACD,CAAC,CAAC;EACH,CAAC,EACD,CACCpC,OAAO,EACPC,QAAQ,EACRC,MAAM,EACNC,KAAK,EACLC,gBAAgB,EAChBC,cAAc,EACdC,mBAAmB,EACnBC,UAAU,EACVE,aAAa,EACbE,cAAc,EACdE,WAAW,EACXG,cAAc,EACdC,+BAA+B,EAC/BE,SAAS,CAEX,CAAC;AACF,CAAC;AAACsB,OAAA,CAAA1C,WAAA,GAAAA,WAAA","ignoreList":[]}
@@ -5,19 +5,21 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.useRefreshBoundary = void 0;
7
7
  var _reactNativeReanimated = require("react-native-reanimated");
8
+ var _descriptors = require("../../../providers/screen/descriptors");
8
9
  var _animation = require("../../../stores/animation.store");
9
10
  var _state = require("../../../stores/bounds/internals/state");
10
11
  var _refreshSignals = require("../utils/refresh-signals");
11
12
  const useRefreshBoundary = ({
12
13
  enabled,
13
- currentScreenKey,
14
- preferredSourceScreenKey,
15
- nextScreenKey,
16
14
  linkId,
17
15
  group,
18
- ancestorScreenKeys,
19
16
  measureBoundary
20
17
  }) => {
18
+ const currentScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.currentScreenKey);
19
+ const nextScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.nextScreenKey);
20
+ const sourcePairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.sourcePairKey);
21
+ const destinationPairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.destinationPairKey);
22
+ const ancestorDestinationPairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.ancestorDestinationPairKey);
21
23
  // Source-side boundaries refresh from the next screen's lifecycle pulse.
22
24
  // Destination-side boundaries have no next screen, so they refresh from self.
23
25
  const refreshScreenKey = nextScreenKey ?? currentScreenKey;
@@ -32,17 +34,18 @@ const useRefreshBoundary = ({
32
34
  return (0, _refreshSignals.getRefreshBoundarySignal)({
33
35
  enabled,
34
36
  currentScreenKey,
35
- preferredSourceScreenKey,
37
+ sourcePairKey,
38
+ destinationPairKey,
39
+ ancestorDestinationPairKey,
36
40
  nextScreenKey,
37
41
  linkId,
38
42
  group,
39
- ancestorScreenKeys,
40
43
  shouldRefresh: !!refreshWillAnimate.get(),
41
44
  closing: !!refreshClosing.get(),
42
45
  entering: !!refreshEntering.get(),
43
46
  animating: !!refreshAnimating.get(),
44
47
  progress: refreshProgress.get(),
45
- linkState: group || ancestorScreenKeys.length ? _state.pairs.get() : undefined
48
+ linkState: _state.pairs.get()
46
49
  });
47
50
  }, (refreshSignal, prevRefreshSignal) => {
48
51
  "worklet";
@@ -0,0 +1 @@
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":[]}
@@ -13,6 +13,7 @@ Object.defineProperty(exports, "createBoundaryComponent", {
13
13
  var _reactNative = require("react-native");
14
14
  var _boundaryTarget = require("./components/boundary-target");
15
15
  var _createBoundaryComponent = require("./create-boundary-component");
16
+ var _portal = require("./portal");
16
17
  const BoundaryView = (0, _createBoundaryComponent.createBoundaryComponent)(_reactNative.View, {
17
18
  shouldAutoMeasure: true
18
19
  });
@@ -20,6 +21,7 @@ const BoundaryTrigger = (0, _createBoundaryComponent.createBoundaryComponent)(_r
20
21
  BoundaryView.displayName = "Transition.Boundary.View";
21
22
  BoundaryTrigger.displayName = "Transition.Boundary.Trigger";
22
23
  _boundaryTarget.BoundaryTarget.displayName = "Transition.Boundary.Target";
24
+ _portal.Host.displayName = "Transition.Boundary.Host";
23
25
 
24
26
  /**
25
27
  * Shared-boundary components.
@@ -38,6 +40,7 @@ _boundaryTarget.BoundaryTarget.displayName = "Transition.Boundary.Target";
38
40
  * - `Boundary.View` for passive/shared elements.
39
41
  * - `Boundary.Trigger` for tappable elements that start navigation.
40
42
  * - `Boundary.Target` to measure a nested descendant instead of the owner.
43
+ * - `Boundary.Host` to make nested portal placement explicit.
41
44
  */
42
45
  const Boundary = exports.Boundary = {
43
46
  /**
@@ -51,6 +54,10 @@ const Boundary = exports.Boundary = {
51
54
  /**
52
55
  * Optional nested measurement override inside a boundary owner.
53
56
  */
54
- Target: _boundaryTarget.BoundaryTarget
57
+ Target: _boundaryTarget.BoundaryTarget,
58
+ /**
59
+ * Explicit portal host for scrollable or otherwise clipped coordinate spaces.
60
+ */
61
+ Host: _portal.Host
55
62
  };
56
63
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_boundaryTarget","_createBoundaryComponent","_portal","BoundaryView","createBoundaryComponent","View","shouldAutoMeasure","BoundaryTrigger","Pressable","displayName","BoundaryTarget","Host","Boundary","exports","Trigger","Target"],"sourceRoot":"../../../../../src","sources":["shared/components/boundary/index.tsx"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,wBAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AASA,MAAMI,YAAY,GAAG,IAAAC,gDAAuB,EAACC,iBAAI,EAAE;EAClDC,iBAAiB,EAAE;AACpB,CAAC,CAAC;AACF,MAAMC,eAAe,GAAG,IAAAH,gDAAuB,EAACI,sBAAS,CAAC;AAC1DL,YAAY,CAACM,WAAW,GAAG,0BAA0B;AACrDF,eAAe,CAACE,WAAW,GAAG,6BAA6B;AAC3DC,8BAAc,CAACD,WAAW,GAAG,4BAA4B;AACzDE,YAAI,CAACF,WAAW,GAAG,0BAA0B;;AAE7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMG,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG;EACvB;AACD;AACA;EACCP,IAAI,EAAEF,YAAY;EAClB;AACD;AACA;EACCW,OAAO,EAAEP,eAAe;EACxB;AACD;AACA;EACCQ,MAAM,EAAEL,8BAAc;EACtB;AACD;AACA;EACCC,IAAI,EAAEA;AACP,CAAC","ignoreList":[]}