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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (513) hide show
  1. package/lib/commonjs/component-stack/components/component-screen.js +1 -7
  2. package/lib/commonjs/component-stack/components/component-screen.js.map +1 -1
  3. package/lib/commonjs/shared/components/create-boundary-component/create-boundary-component.js +27 -34
  4. package/lib/commonjs/shared/components/create-boundary-component/create-boundary-component.js.map +1 -1
  5. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-boundary-presence.js +4 -4
  6. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-boundary-presence.js.map +1 -1
  7. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js +17 -19
  8. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js.map +1 -1
  9. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js +27 -7
  10. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js.map +1 -1
  11. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js +23 -51
  12. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js.map +1 -1
  13. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-refresh-boundary.js +33 -40
  14. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +1 -1
  15. package/lib/commonjs/shared/components/create-boundary-component/index.js +3 -1
  16. package/lib/commonjs/shared/components/create-boundary-component/index.js.map +1 -1
  17. package/lib/commonjs/shared/components/create-boundary-component/utils/destination-signals.js +75 -0
  18. package/lib/commonjs/shared/components/create-boundary-component/utils/destination-signals.js.map +1 -0
  19. package/lib/commonjs/shared/components/create-boundary-component/{hooks/helpers/scroll-measurement.js → utils/measured-bounds.js} +15 -2
  20. package/lib/commonjs/shared/components/create-boundary-component/utils/measured-bounds.js.map +1 -0
  21. package/lib/commonjs/shared/components/create-boundary-component/utils/refresh-signals.js +103 -0
  22. package/lib/commonjs/shared/components/create-boundary-component/utils/refresh-signals.js.map +1 -0
  23. package/lib/commonjs/shared/components/create-boundary-component/utils/source-signals.js +52 -0
  24. package/lib/commonjs/shared/components/create-boundary-component/utils/source-signals.js.map +1 -0
  25. package/lib/commonjs/shared/components/native-screen.js +2 -13
  26. package/lib/commonjs/shared/components/native-screen.js.map +1 -1
  27. package/lib/commonjs/shared/components/screen-container/layers/content.js +11 -1
  28. package/lib/commonjs/shared/components/screen-container/layers/content.js.map +1 -1
  29. package/lib/commonjs/shared/constants.js +5 -12
  30. package/lib/commonjs/shared/constants.js.map +1 -1
  31. package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js +35 -0
  32. package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js.map +1 -0
  33. package/lib/commonjs/shared/providers/register-bounds.provider.js +48 -55
  34. package/lib/commonjs/shared/providers/register-bounds.provider.js.map +1 -1
  35. package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +1 -10
  36. package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  37. package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js +1 -0
  38. package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -1
  39. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +26 -8
  40. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  41. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +1 -2
  42. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  43. package/lib/commonjs/shared/providers/screen/animation/helpers/selected-interpolator-options.js +1 -1
  44. package/lib/commonjs/shared/providers/screen/animation/helpers/selected-interpolator-options.js.map +1 -1
  45. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js +3 -4
  46. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  47. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation.js +2 -2
  48. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation.js.map +1 -1
  49. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-lifecycle.js +9 -2
  50. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +1 -1
  51. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-release.js +19 -0
  52. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-release.js.map +1 -1
  53. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-reset.js +2 -0
  54. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-reset.js.map +1 -1
  55. package/lib/commonjs/shared/providers/screen/gestures/pan/use-pan-behavior.js +2 -2
  56. package/lib/commonjs/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +1 -1
  57. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-activation.js +2 -2
  58. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-activation.js.map +1 -1
  59. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-lifecycle.js +1 -0
  60. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +1 -1
  61. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-pinch-behavior.js +2 -2
  62. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +1 -1
  63. package/lib/commonjs/shared/providers/screen/gestures/shared/physics.js +18 -2
  64. package/lib/commonjs/shared/providers/screen/gestures/shared/physics.js.map +1 -1
  65. package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js +1 -5
  66. package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js.map +1 -1
  67. package/lib/commonjs/shared/providers/screen/options/helpers.js +3 -1
  68. package/lib/commonjs/shared/providers/screen/options/helpers.js.map +1 -1
  69. package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +1 -4
  70. package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  71. package/lib/commonjs/shared/stores/bounds/helpers/link-pairs.helpers.js +125 -0
  72. package/lib/commonjs/shared/stores/bounds/helpers/link-pairs.helpers.js.map +1 -0
  73. package/lib/commonjs/shared/stores/bounds/index.js +6 -12
  74. package/lib/commonjs/shared/stores/bounds/index.js.map +1 -1
  75. package/lib/commonjs/shared/stores/bounds/internals/clear.js +13 -21
  76. package/lib/commonjs/shared/stores/bounds/internals/clear.js.map +1 -1
  77. package/lib/commonjs/shared/stores/bounds/internals/entries.js +49 -9
  78. package/lib/commonjs/shared/stores/bounds/internals/entries.js.map +1 -1
  79. package/lib/commonjs/shared/stores/bounds/internals/links.js +143 -82
  80. package/lib/commonjs/shared/stores/bounds/internals/links.js.map +1 -1
  81. package/lib/commonjs/shared/stores/bounds/internals/resolver.js +17 -43
  82. package/lib/commonjs/shared/stores/bounds/internals/resolver.js.map +1 -1
  83. package/lib/commonjs/shared/stores/bounds/internals/state.js +26 -3
  84. package/lib/commonjs/shared/stores/bounds/internals/state.js.map +1 -1
  85. package/lib/commonjs/shared/stores/gesture.store.js +2 -0
  86. package/lib/commonjs/shared/stores/gesture.store.js.map +1 -1
  87. package/lib/commonjs/shared/types/gesture.types.js +2 -2
  88. package/lib/commonjs/shared/types/gesture.types.js.map +1 -1
  89. package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js +2 -1
  90. package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  91. package/lib/commonjs/shared/utils/bounds/helpers/create-link-accessor.js +6 -5
  92. package/lib/commonjs/shared/utils/bounds/helpers/create-link-accessor.js.map +1 -1
  93. package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js +21 -8
  94. package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
  95. package/lib/commonjs/shared/utils/bounds/helpers/resolve-bounds-pair-key.js +23 -0
  96. package/lib/commonjs/shared/utils/bounds/helpers/resolve-bounds-pair-key.js.map +1 -0
  97. package/lib/commonjs/shared/utils/bounds/index.js +3 -2
  98. package/lib/commonjs/shared/utils/bounds/index.js.map +1 -1
  99. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js +120 -205
  100. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  101. package/lib/commonjs/shared/utils/bounds/navigation/reveal/config.js +15 -2
  102. package/lib/commonjs/shared/utils/bounds/navigation/reveal/config.js.map +1 -1
  103. package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js +175 -14
  104. package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
  105. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +2 -2
  106. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  107. package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js +20 -19
  108. package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js.map +1 -1
  109. package/lib/module/component-stack/components/component-screen.js +2 -8
  110. package/lib/module/component-stack/components/component-screen.js.map +1 -1
  111. package/lib/module/shared/components/create-boundary-component/create-boundary-component.js +27 -34
  112. package/lib/module/shared/components/create-boundary-component/create-boundary-component.js.map +1 -1
  113. package/lib/module/shared/components/create-boundary-component/hooks/use-boundary-presence.js +4 -4
  114. package/lib/module/shared/components/create-boundary-component/hooks/use-boundary-presence.js.map +1 -1
  115. package/lib/module/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js +18 -20
  116. package/lib/module/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js.map +1 -1
  117. package/lib/module/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js +28 -8
  118. package/lib/module/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js.map +1 -1
  119. package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js +22 -50
  120. package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js.map +1 -1
  121. package/lib/module/shared/components/create-boundary-component/hooks/use-refresh-boundary.js +33 -40
  122. package/lib/module/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +1 -1
  123. package/lib/module/shared/components/create-boundary-component/index.js +3 -1
  124. package/lib/module/shared/components/create-boundary-component/index.js.map +1 -1
  125. package/lib/module/shared/components/create-boundary-component/utils/destination-signals.js +70 -0
  126. package/lib/module/shared/components/create-boundary-component/utils/destination-signals.js.map +1 -0
  127. package/lib/module/shared/components/create-boundary-component/{hooks/helpers/scroll-measurement.js → utils/measured-bounds.js} +13 -1
  128. package/lib/module/shared/components/create-boundary-component/utils/measured-bounds.js.map +1 -0
  129. package/lib/module/shared/components/create-boundary-component/utils/refresh-signals.js +98 -0
  130. package/lib/module/shared/components/create-boundary-component/utils/refresh-signals.js.map +1 -0
  131. package/lib/module/shared/components/create-boundary-component/utils/source-signals.js +47 -0
  132. package/lib/module/shared/components/create-boundary-component/utils/source-signals.js.map +1 -0
  133. package/lib/module/shared/components/native-screen.js +3 -14
  134. package/lib/module/shared/components/native-screen.js.map +1 -1
  135. package/lib/module/shared/components/screen-container/layers/content.js +13 -3
  136. package/lib/module/shared/components/screen-container/layers/content.js.map +1 -1
  137. package/lib/module/shared/constants.js +4 -11
  138. package/lib/module/shared/constants.js.map +1 -1
  139. package/lib/module/shared/providers/helpers/measured-bounds-writes.js +30 -0
  140. package/lib/module/shared/providers/helpers/measured-bounds-writes.js.map +1 -0
  141. package/lib/module/shared/providers/register-bounds.provider.js +48 -55
  142. package/lib/module/shared/providers/register-bounds.provider.js.map +1 -1
  143. package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +1 -10
  144. package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  145. package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js +1 -0
  146. package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -1
  147. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +26 -3
  148. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  149. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +1 -2
  150. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  151. package/lib/module/shared/providers/screen/animation/helpers/selected-interpolator-options.js +1 -1
  152. package/lib/module/shared/providers/screen/animation/helpers/selected-interpolator-options.js.map +1 -1
  153. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js +3 -4
  154. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  155. package/lib/module/shared/providers/screen/gestures/pan/pan-activation.js +2 -2
  156. package/lib/module/shared/providers/screen/gestures/pan/pan-activation.js.map +1 -1
  157. package/lib/module/shared/providers/screen/gestures/pan/pan-lifecycle.js +10 -3
  158. package/lib/module/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +1 -1
  159. package/lib/module/shared/providers/screen/gestures/pan/pan-release.js +20 -1
  160. package/lib/module/shared/providers/screen/gestures/pan/pan-release.js.map +1 -1
  161. package/lib/module/shared/providers/screen/gestures/pan/pan-reset.js +2 -0
  162. package/lib/module/shared/providers/screen/gestures/pan/pan-reset.js.map +1 -1
  163. package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js +3 -3
  164. package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +1 -1
  165. package/lib/module/shared/providers/screen/gestures/pinch/pinch-activation.js +3 -3
  166. package/lib/module/shared/providers/screen/gestures/pinch/pinch-activation.js.map +1 -1
  167. package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js +1 -0
  168. package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +1 -1
  169. package/lib/module/shared/providers/screen/gestures/pinch/use-pinch-behavior.js +3 -3
  170. package/lib/module/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +1 -1
  171. package/lib/module/shared/providers/screen/gestures/shared/physics.js +15 -0
  172. package/lib/module/shared/providers/screen/gestures/shared/physics.js.map +1 -1
  173. package/lib/module/shared/providers/screen/gestures/shared/policy.js +3 -3
  174. package/lib/module/shared/providers/screen/gestures/shared/policy.js.map +1 -1
  175. package/lib/module/shared/providers/screen/options/helpers.js +3 -1
  176. package/lib/module/shared/providers/screen/options/helpers.js.map +1 -1
  177. package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +1 -4
  178. package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  179. package/lib/module/shared/providers/stack/direct.provider.js.map +1 -1
  180. package/lib/module/shared/providers/stack/managed.provider.js.map +1 -1
  181. package/lib/module/shared/stores/bounds/helpers/link-pairs.helpers.js +105 -0
  182. package/lib/module/shared/stores/bounds/helpers/link-pairs.helpers.js.map +1 -0
  183. package/lib/module/shared/stores/bounds/index.js +7 -13
  184. package/lib/module/shared/stores/bounds/index.js.map +1 -1
  185. package/lib/module/shared/stores/bounds/internals/clear.js +14 -22
  186. package/lib/module/shared/stores/bounds/internals/clear.js.map +1 -1
  187. package/lib/module/shared/stores/bounds/internals/entries.js +49 -9
  188. package/lib/module/shared/stores/bounds/internals/entries.js.map +1 -1
  189. package/lib/module/shared/stores/bounds/internals/links.js +139 -80
  190. package/lib/module/shared/stores/bounds/internals/links.js.map +1 -1
  191. package/lib/module/shared/stores/bounds/internals/resolver.js +17 -43
  192. package/lib/module/shared/stores/bounds/internals/resolver.js.map +1 -1
  193. package/lib/module/shared/stores/bounds/internals/state.js +25 -2
  194. package/lib/module/shared/stores/bounds/internals/state.js.map +1 -1
  195. package/lib/module/shared/stores/gesture.store.js +2 -0
  196. package/lib/module/shared/stores/gesture.store.js.map +1 -1
  197. package/lib/module/shared/types/animation.types.js +0 -4
  198. package/lib/module/shared/types/animation.types.js.map +1 -1
  199. package/lib/module/shared/types/bounds.types.js.map +1 -1
  200. package/lib/module/shared/types/gesture.types.js +0 -1
  201. package/lib/module/shared/types/gesture.types.js.map +1 -1
  202. package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js +2 -1
  203. package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
  204. package/lib/module/shared/utils/bounds/helpers/create-link-accessor.js +6 -5
  205. package/lib/module/shared/utils/bounds/helpers/create-link-accessor.js.map +1 -1
  206. package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js +21 -8
  207. package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
  208. package/lib/module/shared/utils/bounds/helpers/resolve-bounds-pair-key.js +18 -0
  209. package/lib/module/shared/utils/bounds/helpers/resolve-bounds-pair-key.js.map +1 -0
  210. package/lib/module/shared/utils/bounds/index.js +3 -2
  211. package/lib/module/shared/utils/bounds/index.js.map +1 -1
  212. package/lib/module/shared/utils/bounds/navigation/reveal/build.js +120 -205
  213. package/lib/module/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  214. package/lib/module/shared/utils/bounds/navigation/reveal/config.js +14 -1
  215. package/lib/module/shared/utils/bounds/navigation/reveal/config.js.map +1 -1
  216. package/lib/module/shared/utils/bounds/navigation/reveal/math.js +163 -12
  217. package/lib/module/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
  218. package/lib/module/shared/utils/bounds/navigation/zoom/build.js +2 -2
  219. package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  220. package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js +20 -19
  221. package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js.map +1 -1
  222. package/lib/typescript/component-stack/components/component-screen.d.ts.map +1 -1
  223. package/lib/typescript/shared/components/create-boundary-component/components/boundary-target.d.ts +4 -207
  224. package/lib/typescript/shared/components/create-boundary-component/components/boundary-target.d.ts.map +1 -1
  225. package/lib/typescript/shared/components/create-boundary-component/create-boundary-component.d.ts +1 -0
  226. package/lib/typescript/shared/components/create-boundary-component/create-boundary-component.d.ts.map +1 -1
  227. package/lib/typescript/shared/components/create-boundary-component/hooks/use-boundary-presence.d.ts +1 -1
  228. package/lib/typescript/shared/components/create-boundary-component/hooks/use-boundary-presence.d.ts.map +1 -1
  229. package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.d.ts +5 -4
  230. package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.d.ts.map +1 -1
  231. package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-source-measurement.d.ts +6 -2
  232. package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-source-measurement.d.ts.map +1 -1
  233. package/lib/typescript/shared/components/create-boundary-component/hooks/use-measurer.d.ts +5 -4
  234. package/lib/typescript/shared/components/create-boundary-component/hooks/use-measurer.d.ts.map +1 -1
  235. package/lib/typescript/shared/components/create-boundary-component/hooks/use-refresh-boundary.d.ts +7 -7
  236. package/lib/typescript/shared/components/create-boundary-component/hooks/use-refresh-boundary.d.ts.map +1 -1
  237. package/lib/typescript/shared/components/create-boundary-component/index.d.ts +2 -2
  238. package/lib/typescript/shared/components/create-boundary-component/index.d.ts.map +1 -1
  239. package/lib/typescript/shared/components/create-boundary-component/types.d.ts +11 -7
  240. package/lib/typescript/shared/components/create-boundary-component/types.d.ts.map +1 -1
  241. package/lib/typescript/shared/components/create-boundary-component/utils/destination-signals.d.ts +10 -0
  242. package/lib/typescript/shared/components/create-boundary-component/utils/destination-signals.d.ts.map +1 -0
  243. package/lib/typescript/shared/components/create-boundary-component/{hooks/helpers/scroll-measurement.d.ts → utils/measured-bounds.d.ts} +3 -2
  244. package/lib/typescript/shared/components/create-boundary-component/utils/measured-bounds.d.ts.map +1 -0
  245. package/lib/typescript/shared/components/create-boundary-component/utils/refresh-signals.d.ts +22 -0
  246. package/lib/typescript/shared/components/create-boundary-component/utils/refresh-signals.d.ts.map +1 -0
  247. package/lib/typescript/shared/components/create-boundary-component/utils/source-signals.d.ts +16 -0
  248. package/lib/typescript/shared/components/create-boundary-component/utils/source-signals.d.ts.map +1 -0
  249. package/lib/typescript/shared/components/native-screen.d.ts.map +1 -1
  250. package/lib/typescript/shared/components/overlay/variations/overlay-host.d.ts +1 -1
  251. package/lib/typescript/shared/components/overlay/variations/overlay-host.d.ts.map +1 -1
  252. package/lib/typescript/shared/components/scene-view.d.ts +1 -1
  253. package/lib/typescript/shared/components/scene-view.d.ts.map +1 -1
  254. package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts +2 -2
  255. package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts.map +1 -1
  256. package/lib/typescript/shared/components/screen-container/layers/content.d.ts.map +1 -1
  257. package/lib/typescript/shared/constants.d.ts +1 -6
  258. package/lib/typescript/shared/constants.d.ts.map +1 -1
  259. package/lib/typescript/shared/index.d.ts +3 -3
  260. package/lib/typescript/shared/index.d.ts.map +1 -1
  261. package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts +21 -0
  262. package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts.map +1 -0
  263. package/lib/typescript/shared/providers/register-bounds.provider.d.ts.map +1 -1
  264. package/lib/typescript/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.d.ts.map +1 -1
  265. package/lib/typescript/shared/providers/screen/animation/helpers/build-screen-transition-options.d.ts.map +1 -1
  266. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts +1 -2
  267. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
  268. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts +1 -1
  269. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts.map +1 -1
  270. package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts +1 -1
  271. package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
  272. package/lib/typescript/shared/providers/screen/animation/helpers/selected-interpolator-options.d.ts.map +1 -1
  273. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts +1 -1
  274. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts.map +1 -1
  275. package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation.d.ts.map +1 -1
  276. package/lib/typescript/shared/providers/screen/gestures/pan/pan-lifecycle.d.ts.map +1 -1
  277. package/lib/typescript/shared/providers/screen/gestures/pan/pan-release.d.ts.map +1 -1
  278. package/lib/typescript/shared/providers/screen/gestures/pan/pan-reset.d.ts +2 -1
  279. package/lib/typescript/shared/providers/screen/gestures/pan/pan-reset.d.ts.map +1 -1
  280. package/lib/typescript/shared/providers/screen/gestures/pan/use-pan-behavior.d.ts.map +1 -1
  281. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-activation.d.ts.map +1 -1
  282. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-lifecycle.d.ts.map +1 -1
  283. package/lib/typescript/shared/providers/screen/gestures/pinch/use-pinch-behavior.d.ts.map +1 -1
  284. package/lib/typescript/shared/providers/screen/gestures/shared/physics.d.ts +7 -0
  285. package/lib/typescript/shared/providers/screen/gestures/shared/physics.d.ts.map +1 -1
  286. package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts +0 -10
  287. package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts.map +1 -1
  288. package/lib/typescript/shared/providers/screen/gestures/types.d.ts +2 -0
  289. package/lib/typescript/shared/providers/screen/gestures/types.d.ts.map +1 -1
  290. package/lib/typescript/shared/providers/screen/options/helpers.d.ts.map +1 -1
  291. package/lib/typescript/shared/providers/screen/options/types.d.ts +1 -0
  292. package/lib/typescript/shared/providers/screen/options/types.d.ts.map +1 -1
  293. package/lib/typescript/shared/providers/screen/styles/components/maybe-floating-container.d.ts +1 -1
  294. package/lib/typescript/shared/providers/screen/styles/components/maybe-floating-container.d.ts.map +1 -1
  295. package/lib/typescript/shared/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts.map +1 -1
  296. package/lib/typescript/shared/providers/stack/direct.provider.d.ts +1 -1
  297. package/lib/typescript/shared/providers/stack/direct.provider.d.ts.map +1 -1
  298. package/lib/typescript/shared/providers/stack/managed.provider.d.ts +1 -1
  299. package/lib/typescript/shared/providers/stack/managed.provider.d.ts.map +1 -1
  300. package/lib/typescript/shared/stores/bounds/helpers/link-pairs.helpers.d.ts +18 -0
  301. package/lib/typescript/shared/stores/bounds/helpers/link-pairs.helpers.d.ts.map +1 -0
  302. package/lib/typescript/shared/stores/bounds/index.d.ts +6 -12
  303. package/lib/typescript/shared/stores/bounds/index.d.ts.map +1 -1
  304. package/lib/typescript/shared/stores/bounds/internals/clear.d.ts.map +1 -1
  305. package/lib/typescript/shared/stores/bounds/internals/entries.d.ts.map +1 -1
  306. package/lib/typescript/shared/stores/bounds/internals/links.d.ts +13 -10
  307. package/lib/typescript/shared/stores/bounds/internals/links.d.ts.map +1 -1
  308. package/lib/typescript/shared/stores/bounds/internals/resolver.d.ts.map +1 -1
  309. package/lib/typescript/shared/stores/bounds/internals/state.d.ts +26 -5
  310. package/lib/typescript/shared/stores/bounds/internals/state.d.ts.map +1 -1
  311. package/lib/typescript/shared/stores/bounds/types.d.ts +14 -7
  312. package/lib/typescript/shared/stores/bounds/types.d.ts.map +1 -1
  313. package/lib/typescript/shared/stores/gesture.store.d.ts +1 -0
  314. package/lib/typescript/shared/stores/gesture.store.d.ts.map +1 -1
  315. package/lib/typescript/shared/types/animation.types.d.ts +4 -19
  316. package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
  317. package/lib/typescript/shared/types/bounds.types.d.ts +69 -1
  318. package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
  319. package/lib/typescript/shared/types/gesture.types.d.ts +8 -1
  320. package/lib/typescript/shared/types/gesture.types.d.ts.map +1 -1
  321. package/lib/typescript/shared/types/index.d.ts +2 -2
  322. package/lib/typescript/shared/types/index.d.ts.map +1 -1
  323. package/lib/typescript/shared/types/screen.types.d.ts +4 -14
  324. package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
  325. package/lib/typescript/shared/utils/bounds/helpers/create-bounds-accessor-core.d.ts.map +1 -1
  326. package/lib/typescript/shared/utils/bounds/helpers/create-link-accessor.d.ts.map +1 -1
  327. package/lib/typescript/shared/utils/bounds/helpers/prepare-bound-styles.d.ts +1 -1
  328. package/lib/typescript/shared/utils/bounds/helpers/prepare-bound-styles.d.ts.map +1 -1
  329. package/lib/typescript/shared/utils/bounds/helpers/resolve-bounds-pair-key.d.ts +4 -0
  330. package/lib/typescript/shared/utils/bounds/helpers/resolve-bounds-pair-key.d.ts.map +1 -0
  331. package/lib/typescript/shared/utils/bounds/index.d.ts.map +1 -1
  332. package/lib/typescript/shared/utils/bounds/navigation/reveal/build.d.ts +1 -1
  333. package/lib/typescript/shared/utils/bounds/navigation/reveal/build.d.ts.map +1 -1
  334. package/lib/typescript/shared/utils/bounds/navigation/reveal/config.d.ts +14 -1
  335. package/lib/typescript/shared/utils/bounds/navigation/reveal/config.d.ts.map +1 -1
  336. package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts +58 -7
  337. package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts.map +1 -1
  338. package/lib/typescript/shared/utils/bounds/navigation/reveal/types.d.ts +2 -1
  339. package/lib/typescript/shared/utils/bounds/navigation/reveal/types.d.ts.map +1 -1
  340. package/lib/typescript/shared/utils/bounds/types/options.d.ts +2 -3
  341. package/lib/typescript/shared/utils/bounds/types/options.d.ts.map +1 -1
  342. package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts +3 -2
  343. package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts.map +1 -1
  344. package/package.json +4 -3
  345. package/src/component-stack/components/component-screen.tsx +3 -11
  346. package/src/shared/components/create-boundary-component/create-boundary-component.tsx +30 -27
  347. package/src/shared/components/create-boundary-component/hooks/use-boundary-presence.ts +5 -5
  348. package/src/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.ts +25 -24
  349. package/src/shared/components/create-boundary-component/hooks/use-initial-source-measurement.ts +41 -11
  350. package/src/shared/components/create-boundary-component/hooks/use-measurer.ts +49 -64
  351. package/src/shared/components/create-boundary-component/hooks/use-refresh-boundary.ts +44 -83
  352. package/src/shared/components/create-boundary-component/index.tsx +3 -1
  353. package/src/shared/components/create-boundary-component/types.ts +13 -11
  354. package/src/shared/components/create-boundary-component/utils/destination-signals.ts +129 -0
  355. package/src/shared/components/create-boundary-component/{hooks/helpers/scroll-measurement.ts → utils/measured-bounds.ts} +25 -1
  356. package/src/shared/components/create-boundary-component/utils/refresh-signals.ts +164 -0
  357. package/src/shared/components/create-boundary-component/utils/source-signals.ts +72 -0
  358. package/src/shared/components/native-screen.tsx +3 -12
  359. package/src/shared/components/screen-container/layers/content.tsx +21 -2
  360. package/src/shared/constants.ts +1 -9
  361. package/src/shared/index.ts +0 -3
  362. package/src/shared/providers/helpers/measured-bounds-writes.ts +67 -0
  363. package/src/shared/providers/register-bounds.provider.tsx +68 -91
  364. package/src/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +0 -14
  365. package/src/shared/providers/screen/animation/helpers/build-screen-transition-options.ts +1 -0
  366. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/index.ts +49 -4
  367. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/types.ts +1 -1
  368. package/src/shared/providers/screen/animation/helpers/pipeline.ts +2 -5
  369. package/src/shared/providers/screen/animation/helpers/selected-interpolator-options.ts +1 -0
  370. package/src/shared/providers/screen/animation/helpers/use-build-transition-state.ts +3 -12
  371. package/src/shared/providers/screen/gestures/pan/pan-activation.ts +4 -1
  372. package/src/shared/providers/screen/gestures/pan/pan-lifecycle.ts +18 -2
  373. package/src/shared/providers/screen/gestures/pan/pan-release.ts +33 -0
  374. package/src/shared/providers/screen/gestures/pan/pan-reset.ts +3 -0
  375. package/src/shared/providers/screen/gestures/pan/use-pan-behavior.ts +9 -6
  376. package/src/shared/providers/screen/gestures/pinch/pinch-activation.ts +5 -2
  377. package/src/shared/providers/screen/gestures/pinch/pinch-lifecycle.ts +1 -0
  378. package/src/shared/providers/screen/gestures/pinch/use-pinch-behavior.ts +9 -6
  379. package/src/shared/providers/screen/gestures/shared/physics.ts +25 -0
  380. package/src/shared/providers/screen/gestures/shared/policy.ts +3 -5
  381. package/src/shared/providers/screen/gestures/types.ts +2 -0
  382. package/src/shared/providers/screen/options/helpers.ts +9 -0
  383. package/src/shared/providers/screen/options/types.ts +1 -0
  384. package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +0 -3
  385. package/src/shared/providers/stack/direct.provider.tsx +1 -1
  386. package/src/shared/providers/stack/managed.provider.tsx +1 -1
  387. package/src/shared/stores/bounds/helpers/link-pairs.helpers.ts +161 -0
  388. package/src/shared/stores/bounds/index.ts +10 -20
  389. package/src/shared/stores/bounds/internals/clear.ts +17 -41
  390. package/src/shared/stores/bounds/internals/entries.ts +56 -13
  391. package/src/shared/stores/bounds/internals/links.ts +222 -113
  392. package/src/shared/stores/bounds/internals/resolver.ts +23 -87
  393. package/src/shared/stores/bounds/internals/state.ts +27 -5
  394. package/src/shared/stores/bounds/types.ts +17 -7
  395. package/src/shared/stores/gesture.store.ts +3 -0
  396. package/src/shared/types/animation.types.ts +4 -23
  397. package/src/shared/types/bounds.types.ts +72 -1
  398. package/src/shared/types/gesture.types.ts +8 -2
  399. package/src/shared/types/index.ts +1 -4
  400. package/src/shared/types/screen.types.ts +4 -14
  401. package/src/shared/utils/bounds/helpers/create-bounds-accessor-core.ts +1 -0
  402. package/src/shared/utils/bounds/helpers/create-link-accessor.ts +6 -6
  403. package/src/shared/utils/bounds/helpers/prepare-bound-styles.ts +20 -11
  404. package/src/shared/utils/bounds/helpers/resolve-bounds-pair-key.ts +22 -0
  405. package/src/shared/utils/bounds/index.ts +3 -1
  406. package/src/shared/utils/bounds/navigation/reveal/build.ts +198 -308
  407. package/src/shared/utils/bounds/navigation/reveal/config.ts +20 -1
  408. package/src/shared/utils/bounds/navigation/reveal/math.ts +264 -18
  409. package/src/shared/utils/bounds/navigation/reveal/types.ts +2 -0
  410. package/src/shared/utils/bounds/navigation/zoom/build.ts +2 -2
  411. package/src/shared/utils/bounds/types/options.ts +2 -3
  412. package/src/shared/utils/navigation/resolve-scene-neighbors.ts +36 -23
  413. package/lib/commonjs/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js +0 -43
  414. package/lib/commonjs/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js.map +0 -1
  415. package/lib/commonjs/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js +0 -17
  416. package/lib/commonjs/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js.map +0 -1
  417. package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js +0 -28
  418. package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js.map +0 -1
  419. package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js +0 -75
  420. package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js.map +0 -1
  421. package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement.js +0 -20
  422. package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement.js.map +0 -1
  423. package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.js.map +0 -1
  424. package/lib/commonjs/shared/components/create-boundary-component/utils/build-boundary-match-key.js +0 -16
  425. package/lib/commonjs/shared/components/create-boundary-component/utils/build-boundary-match-key.js.map +0 -1
  426. package/lib/commonjs/shared/providers/layout-anchor.provider.js +0 -86
  427. package/lib/commonjs/shared/providers/layout-anchor.provider.js.map +0 -1
  428. package/lib/commonjs/shared/stores/bounds/helpers/entries.helpers.js +0 -49
  429. package/lib/commonjs/shared/stores/bounds/helpers/entries.helpers.js.map +0 -1
  430. package/lib/commonjs/shared/stores/bounds/helpers/find-latest.js +0 -25
  431. package/lib/commonjs/shared/stores/bounds/helpers/find-latest.js.map +0 -1
  432. package/lib/commonjs/shared/stores/bounds/helpers/groups.helpers.js +0 -30
  433. package/lib/commonjs/shared/stores/bounds/helpers/groups.helpers.js.map +0 -1
  434. package/lib/commonjs/shared/stores/bounds/helpers/link.helpers.js +0 -79
  435. package/lib/commonjs/shared/stores/bounds/helpers/link.helpers.js.map +0 -1
  436. package/lib/commonjs/shared/stores/bounds/helpers/matching.js +0 -13
  437. package/lib/commonjs/shared/stores/bounds/helpers/matching.js.map +0 -1
  438. package/lib/commonjs/shared/stores/bounds/helpers/tag-state.helpers.js +0 -30
  439. package/lib/commonjs/shared/stores/bounds/helpers/tag-state.helpers.js.map +0 -1
  440. package/lib/commonjs/shared/stores/bounds/internals/groups.js +0 -102
  441. package/lib/commonjs/shared/stores/bounds/internals/groups.js.map +0 -1
  442. package/lib/module/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js +0 -38
  443. package/lib/module/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js.map +0 -1
  444. package/lib/module/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js +0 -12
  445. package/lib/module/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js.map +0 -1
  446. package/lib/module/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js +0 -23
  447. package/lib/module/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js.map +0 -1
  448. package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js +0 -68
  449. package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js.map +0 -1
  450. package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement.js +0 -15
  451. package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement.js.map +0 -1
  452. package/lib/module/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.js.map +0 -1
  453. package/lib/module/shared/components/create-boundary-component/utils/build-boundary-match-key.js +0 -12
  454. package/lib/module/shared/components/create-boundary-component/utils/build-boundary-match-key.js.map +0 -1
  455. package/lib/module/shared/providers/layout-anchor.provider.js +0 -80
  456. package/lib/module/shared/providers/layout-anchor.provider.js.map +0 -1
  457. package/lib/module/shared/stores/bounds/helpers/entries.helpers.js +0 -42
  458. package/lib/module/shared/stores/bounds/helpers/entries.helpers.js.map +0 -1
  459. package/lib/module/shared/stores/bounds/helpers/find-latest.js +0 -19
  460. package/lib/module/shared/stores/bounds/helpers/find-latest.js.map +0 -1
  461. package/lib/module/shared/stores/bounds/helpers/groups.helpers.js +0 -23
  462. package/lib/module/shared/stores/bounds/helpers/groups.helpers.js.map +0 -1
  463. package/lib/module/shared/stores/bounds/helpers/link.helpers.js +0 -69
  464. package/lib/module/shared/stores/bounds/helpers/link.helpers.js.map +0 -1
  465. package/lib/module/shared/stores/bounds/helpers/matching.js +0 -9
  466. package/lib/module/shared/stores/bounds/helpers/matching.js.map +0 -1
  467. package/lib/module/shared/stores/bounds/helpers/tag-state.helpers.js +0 -24
  468. package/lib/module/shared/stores/bounds/helpers/tag-state.helpers.js.map +0 -1
  469. package/lib/module/shared/stores/bounds/internals/groups.js +0 -95
  470. package/lib/module/shared/stores/bounds/internals/groups.js.map +0 -1
  471. package/lib/typescript/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.d.ts +0 -15
  472. package/lib/typescript/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.d.ts.map +0 -1
  473. package/lib/typescript/shared/components/create-boundary-component/helpers/resolve-pending-source-key.d.ts +0 -2
  474. package/lib/typescript/shared/components/create-boundary-component/helpers/resolve-pending-source-key.d.ts.map +0 -1
  475. package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.d.ts +0 -22
  476. package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.d.ts.map +0 -1
  477. package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement-rules.d.ts +0 -29
  478. package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement-rules.d.ts.map +0 -1
  479. package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement.d.ts +0 -3
  480. package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement.d.ts.map +0 -1
  481. package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.d.ts.map +0 -1
  482. package/lib/typescript/shared/components/create-boundary-component/utils/build-boundary-match-key.d.ts +0 -8
  483. package/lib/typescript/shared/components/create-boundary-component/utils/build-boundary-match-key.d.ts.map +0 -1
  484. package/lib/typescript/shared/providers/layout-anchor.provider.d.ts +0 -39
  485. package/lib/typescript/shared/providers/layout-anchor.provider.d.ts.map +0 -1
  486. package/lib/typescript/shared/stores/bounds/helpers/entries.helpers.d.ts +0 -5
  487. package/lib/typescript/shared/stores/bounds/helpers/entries.helpers.d.ts.map +0 -1
  488. package/lib/typescript/shared/stores/bounds/helpers/find-latest.d.ts +0 -3
  489. package/lib/typescript/shared/stores/bounds/helpers/find-latest.d.ts.map +0 -1
  490. package/lib/typescript/shared/stores/bounds/helpers/groups.helpers.d.ts +0 -10
  491. package/lib/typescript/shared/stores/bounds/helpers/groups.helpers.d.ts.map +0 -1
  492. package/lib/typescript/shared/stores/bounds/helpers/link.helpers.d.ts +0 -14
  493. package/lib/typescript/shared/stores/bounds/helpers/link.helpers.d.ts.map +0 -1
  494. package/lib/typescript/shared/stores/bounds/helpers/matching.d.ts +0 -3
  495. package/lib/typescript/shared/stores/bounds/helpers/matching.d.ts.map +0 -1
  496. package/lib/typescript/shared/stores/bounds/helpers/tag-state.helpers.d.ts +0 -5
  497. package/lib/typescript/shared/stores/bounds/helpers/tag-state.helpers.d.ts.map +0 -1
  498. package/lib/typescript/shared/stores/bounds/internals/groups.d.ts +0 -16
  499. package/lib/typescript/shared/stores/bounds/internals/groups.d.ts.map +0 -1
  500. package/src/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.ts +0 -83
  501. package/src/shared/components/create-boundary-component/helpers/resolve-pending-source-key.ts +0 -20
  502. package/src/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.ts +0 -48
  503. package/src/shared/components/create-boundary-component/hooks/helpers/measurement-rules.ts +0 -101
  504. package/src/shared/components/create-boundary-component/hooks/helpers/measurement.ts +0 -25
  505. package/src/shared/components/create-boundary-component/utils/build-boundary-match-key.ts +0 -14
  506. package/src/shared/providers/layout-anchor.provider.tsx +0 -112
  507. package/src/shared/stores/bounds/helpers/entries.helpers.ts +0 -55
  508. package/src/shared/stores/bounds/helpers/find-latest.ts +0 -22
  509. package/src/shared/stores/bounds/helpers/groups.helpers.ts +0 -27
  510. package/src/shared/stores/bounds/helpers/link.helpers.ts +0 -131
  511. package/src/shared/stores/bounds/helpers/matching.ts +0 -11
  512. package/src/shared/stores/bounds/helpers/tag-state.helpers.ts +0 -24
  513. package/src/shared/stores/bounds/internals/groups.ts +0 -116
@@ -1,25 +1,271 @@
1
- export const resolveDirectionalDragTranslation = ({
2
- translation,
3
- dimension,
4
- negativeMax,
5
- positiveMax,
6
- exponent = 1,
7
- }: {
8
- translation: number;
9
- dimension: number;
10
- negativeMax: number;
11
- positiveMax: number;
12
- exponent?: number;
13
- }) => {
1
+ import type { MeasuredDimensions } from "react-native-reanimated";
2
+ import { EPSILON } from "../../../../constants";
3
+ import type { Layout } from "../../../../types/screen.types";
4
+ import { computeContentTransformGeometry } from "../../helpers/geometry";
5
+ import {
6
+ DRAG_DIRECTIONAL_SCALE_EXPONENT,
7
+ DRAG_DIRECTIONAL_SCALE_MAX,
8
+ DRAG_DIRECTIONAL_SCALE_MIN,
9
+ } from "./config";
10
+
11
+ function clampUnit(value: number) {
12
+ "worklet";
13
+ return Math.min(1, Math.max(0, value));
14
+ }
15
+
16
+ export function mixUnit(from: number, to: number, progress: number) {
17
+ "worklet";
18
+ return from + (to - from) * clampUnit(progress);
19
+ }
20
+
21
+ export function interpolateClamped(
22
+ value: number,
23
+ inputStart: number,
24
+ inputEnd: number,
25
+ outputStart: number,
26
+ outputEnd: number,
27
+ ) {
28
+ "worklet";
29
+ return mixUnit(
30
+ outputStart,
31
+ outputEnd,
32
+ (value - inputStart) / (inputEnd - inputStart),
33
+ );
34
+ }
35
+
36
+ export function resolveSafeScale(scale: number) {
37
+ "worklet";
38
+ return Math.abs(scale) > EPSILON ? scale : 1;
39
+ }
40
+
41
+ export const resolveUnitDragTranslation = (
42
+ translation: number,
43
+ dimension: number,
44
+ ) => {
14
45
  "worklet";
15
46
 
16
47
  const baseDistance = Math.max(1, dimension);
17
- const clampedMagnitude = Math.min(1, Math.abs(translation) / baseDistance);
18
- const curvedMagnitude = clampedMagnitude ** Math.max(1, exponent);
19
48
 
20
- if (translation < 0) {
21
- return -baseDistance * negativeMax * curvedMagnitude;
49
+ if (translation < -baseDistance) {
50
+ return -baseDistance;
51
+ }
52
+
53
+ if (translation > baseDistance) {
54
+ return baseDistance;
22
55
  }
23
56
 
24
- return baseDistance * positiveMax * curvedMagnitude;
57
+ return translation;
25
58
  };
59
+
60
+ export function resolveRevealDirectionalDragScale(
61
+ normalized: number,
62
+ inverted: boolean,
63
+ ) {
64
+ "worklet";
65
+
66
+ const dismissalRelative = inverted ? -normalized : normalized;
67
+
68
+ if (dismissalRelative >= 0) {
69
+ const rawScale = mixUnit(1, DRAG_DIRECTIONAL_SCALE_MIN, dismissalRelative);
70
+ return rawScale ** DRAG_DIRECTIONAL_SCALE_EXPONENT;
71
+ }
72
+
73
+ const oppositeDrag = Math.min(1, Math.abs(dismissalRelative));
74
+ return mixUnit(1, DRAG_DIRECTIONAL_SCALE_MAX, oppositeDrag);
75
+ }
76
+
77
+ export function resolveUniformScale({
78
+ sourceWidth,
79
+ sourceHeight,
80
+ destinationWidth,
81
+ destinationHeight,
82
+ }: {
83
+ sourceWidth: number;
84
+ sourceHeight: number;
85
+ destinationWidth: number;
86
+ destinationHeight: number;
87
+ }) {
88
+ "worklet";
89
+
90
+ const sx = sourceWidth / destinationWidth;
91
+ const sy = sourceHeight / destinationHeight;
92
+
93
+ const sourceAspect = sourceWidth / sourceHeight;
94
+ const destinationAspect = destinationWidth / destinationHeight;
95
+ const aspectDifference = Math.abs(sourceAspect - destinationAspect);
96
+
97
+ return aspectDifference < 0.1 ? Math.max(sx, sy) : Math.min(sx, sy);
98
+ }
99
+
100
+ export function resolveRevealGestureHandoff({
101
+ rawDrag,
102
+ maxSensitivity,
103
+ }: {
104
+ rawDrag: number;
105
+ maxSensitivity: number;
106
+ }) {
107
+ "worklet";
108
+
109
+ const clampedRawDrag = clampUnit(rawDrag);
110
+ const gestureSensitivity = mixUnit(maxSensitivity, 0.1, clampedRawDrag);
111
+
112
+ const releaseBoost = mixUnit(1, 1.1, clampedRawDrag);
113
+
114
+ const releaseSensitivity = interpolateClamped(
115
+ gestureSensitivity,
116
+ 0.28,
117
+ 0.9,
118
+ 0.7,
119
+ 1,
120
+ );
121
+
122
+ return {
123
+ gestureSensitivity,
124
+ gestureReleaseVelocityScale: releaseBoost * releaseSensitivity,
125
+ };
126
+ }
127
+
128
+ export function resolveDismissScaleHandoff({
129
+ progress,
130
+ releaseScale,
131
+ targetScale,
132
+ velocity,
133
+ velocityDepth,
134
+ }: {
135
+ progress: number;
136
+ releaseScale: number;
137
+ targetScale: number;
138
+ velocity: number;
139
+ velocityDepth: number;
140
+ }) {
141
+ "worklet";
142
+
143
+ const closeProgress = 1 - progress;
144
+ const scaleProgress = Math.sin((Math.PI / 2) * closeProgress);
145
+ const baseScale = releaseScale + (targetScale - releaseScale) * scaleProgress;
146
+
147
+ const orbitDepth = velocityDepth * velocity;
148
+ const orbitScale = 1 - orbitDepth * Math.sin(Math.PI * closeProgress);
149
+
150
+ return baseScale * orbitScale;
151
+ }
152
+
153
+ export function resolveAspectRatioMaskHeight({
154
+ maskWidth,
155
+ maskHeight,
156
+ targetWidth,
157
+ targetHeight,
158
+ }: {
159
+ maskWidth: number;
160
+ maskHeight: number;
161
+ targetWidth: number;
162
+ targetHeight: number;
163
+ }) {
164
+ "worklet";
165
+
166
+ const safeMaskWidth = Math.max(1, Math.abs(maskWidth));
167
+ const safeMaskHeight = Math.max(1, Math.abs(maskHeight));
168
+ const safeTargetWidth = Math.max(Math.abs(targetWidth), EPSILON);
169
+ const safeTargetHeight = Math.max(Math.abs(targetHeight), EPSILON);
170
+ const targetAspectHeight =
171
+ safeMaskWidth * (safeTargetHeight / safeTargetWidth);
172
+
173
+ return Math.min(safeMaskHeight, Math.max(1, targetAspectHeight));
174
+ }
175
+
176
+ function getBoundsCenterX(bounds: MeasuredDimensions) {
177
+ "worklet";
178
+ return bounds.pageX + bounds.width / 2;
179
+ }
180
+
181
+ function getBoundsCenterY(bounds: MeasuredDimensions) {
182
+ "worklet";
183
+ return bounds.pageY + bounds.height / 2;
184
+ }
185
+
186
+ export function resolveRevealContentBaseTransform({
187
+ progress,
188
+ sourceBounds,
189
+ destinationBounds,
190
+ screenLayout,
191
+ }: {
192
+ progress: number;
193
+ sourceBounds: MeasuredDimensions;
194
+ destinationBounds: MeasuredDimensions;
195
+ screenLayout: Layout;
196
+ }) {
197
+ "worklet";
198
+
199
+ const geometry = computeContentTransformGeometry({
200
+ start: sourceBounds,
201
+ end: destinationBounds,
202
+ entering: true,
203
+ dimensions: screenLayout,
204
+ scaleMode: "uniform",
205
+ });
206
+
207
+ return {
208
+ translateX: mixUnit(geometry.tx, 0, progress),
209
+ translateY: mixUnit(geometry.ty, 0, progress),
210
+ scale: mixUnit(geometry.s, 1, progress),
211
+ };
212
+ }
213
+
214
+ export function resolveTrackedSourceElementTransform({
215
+ sourceBounds,
216
+ destinationBounds,
217
+ contentTranslateX,
218
+ contentTranslateY,
219
+ contentScale,
220
+ parentScale,
221
+ screenWidth,
222
+ screenHeight,
223
+ }: {
224
+ sourceBounds: MeasuredDimensions;
225
+ destinationBounds: MeasuredDimensions;
226
+ contentTranslateX: number;
227
+ contentTranslateY: number;
228
+ contentScale: number;
229
+ parentScale: number;
230
+ screenWidth: number;
231
+ screenHeight: number;
232
+ }) {
233
+ "worklet";
234
+
235
+ const screenCenterX = screenWidth / 2;
236
+ const screenCenterY = screenHeight / 2;
237
+ const safeParentScale = Math.max(Math.abs(parentScale), EPSILON);
238
+ const safeSourceWidth = Math.max(Math.abs(sourceBounds.width), EPSILON);
239
+ const safeSourceHeight = Math.max(Math.abs(sourceBounds.height), EPSILON);
240
+
241
+ const sourceCenterX = getBoundsCenterX(sourceBounds);
242
+ const sourceCenterY = getBoundsCenterY(sourceBounds);
243
+ const destinationCenterX = getBoundsCenterX(destinationBounds);
244
+ const destinationCenterY = getBoundsCenterY(destinationBounds);
245
+
246
+ const trackedCenterX =
247
+ screenCenterX +
248
+ (destinationCenterX - screenCenterX) * contentScale +
249
+ contentTranslateX;
250
+ const trackedCenterY =
251
+ screenCenterY +
252
+ (destinationCenterY - screenCenterY) * contentScale +
253
+ contentTranslateY;
254
+
255
+ return {
256
+ translateX:
257
+ (trackedCenterX - screenCenterX) / safeParentScale +
258
+ screenCenterX -
259
+ sourceCenterX,
260
+ translateY:
261
+ (trackedCenterY - screenCenterY) / safeParentScale +
262
+ screenCenterY -
263
+ sourceCenterY,
264
+ scaleX:
265
+ (destinationBounds.width * contentScale) /
266
+ (safeSourceWidth * safeParentScale),
267
+ scaleY:
268
+ (destinationBounds.height * contentScale) /
269
+ (safeSourceHeight * safeParentScale),
270
+ };
271
+ }
@@ -4,6 +4,7 @@ import {
4
4
  } from "../../../../constants";
5
5
  import type {
6
6
  BoundsInterpolationProps,
7
+ BoundsNavigationRevealOptions,
7
8
  BoundsNavigationRevealStyle,
8
9
  } from "../../../../types/bounds.types";
9
10
 
@@ -15,4 +16,5 @@ export type RevealInterpolatedStyle = BoundsNavigationRevealStyle & {
15
16
  export type BuildRevealStylesParams = {
16
17
  tag?: string;
17
18
  props: BoundsInterpolationProps;
19
+ revealOptions?: BoundsNavigationRevealOptions;
18
20
  };
@@ -168,7 +168,7 @@ export function buildZoomStyles({
168
168
  style: VISIBLE_STYLE,
169
169
  },
170
170
  } satisfies TransitionInterpolatedStyle;
171
- const focusedContentSlot = props.current.layouts.navigationMaskEnabled
171
+ const focusedContentSlot = props.current.options.navigationMaskEnabled
172
172
  ? NAVIGATION_MASK_CONTAINER_STYLE_ID
173
173
  : "content";
174
174
 
@@ -325,7 +325,7 @@ export function buildZoomStyles({
325
325
  ...sourceVisibilityStyle,
326
326
  };
327
327
 
328
- if (props.current.layouts.navigationMaskEnabled) {
328
+ if (props.current.options.navigationMaskEnabled) {
329
329
  focusedStyles[NAVIGATION_MASK_ELEMENT_STYLE_ID] = {
330
330
  style: {
331
331
  width: maskWidth,
@@ -87,9 +87,8 @@ export type BoundsOptions = {
87
87
 
88
88
  /**
89
89
  * Optional group name for collection/list scenarios.
90
- * When provided, boundaries are tracked as a group and the active member id
91
- * is managed automatically. The internal tag becomes `group:id`.
92
- * Without this, `id` is used directly as the tag (backward compatible).
90
+ * When provided, concrete boundary entries use `group:id`, while transition
91
+ * links stay keyed by the member `id` inside the active screen pair.
93
92
  */
94
93
  group?: string;
95
94
 
@@ -5,13 +5,37 @@ interface SceneWithKey {
5
5
 
6
6
  type IsRouteClosing = (routeKey: string) => boolean;
7
7
 
8
+ const findPreviousDescriptor = <T extends SceneWithKey>(
9
+ scenes: T[],
10
+ sceneIndex: number,
11
+ isRouteClosing: IsRouteClosing,
12
+ ): T["descriptor"] | undefined => {
13
+ let firstClosingBelow: T["descriptor"] | undefined;
14
+
15
+ for (let i = sceneIndex - 1; i >= 0; i--) {
16
+ const candidate = scenes[i];
17
+ if (!candidate) continue;
18
+
19
+ if (!isRouteClosing(candidate.route.key)) {
20
+ return candidate.descriptor;
21
+ }
22
+
23
+ if (firstClosingBelow === undefined) {
24
+ firstClosingBelow = candidate.descriptor;
25
+ }
26
+ }
27
+
28
+ return firstClosingBelow;
29
+ };
30
+
8
31
  /**
9
32
  * Resolves previous/next descriptors while accounting for routes that are
10
33
  * visually closing.
11
34
  *
12
35
  * Rules:
13
- * - Closing scenes are isolated (no previous/next) so their transition does not
14
- * mix with newly pushed screens.
36
+ * - Closing scenes keep their previous descriptor so their original pair can
37
+ * keep resolving while they remain mounted, but they never receive a next
38
+ * descriptor.
15
39
  * - Non-closing scenes skip over closing neighbors to find the actual active
16
40
  * neighbor.
17
41
  * - If there is no non-closing neighbor above/below, we fall back to the first
@@ -35,7 +59,11 @@ export function resolveSceneNeighbors<T extends SceneWithKey>(
35
59
 
36
60
  if (isRouteClosing(current.route.key)) {
37
61
  return {
38
- previousDescriptor: undefined,
62
+ previousDescriptor: findPreviousDescriptor(
63
+ scenes,
64
+ sceneIndex,
65
+ isRouteClosing,
66
+ ),
39
67
  nextDescriptor: undefined,
40
68
  };
41
69
  }
@@ -61,26 +89,11 @@ export function resolveSceneNeighbors<T extends SceneWithKey>(
61
89
  nextDescriptor = firstClosingAbove;
62
90
  }
63
91
 
64
- let previousDescriptor: T["descriptor"] | undefined;
65
- let firstClosingBelow: T["descriptor"] | undefined;
66
-
67
- for (let i = sceneIndex - 1; i >= 0; i--) {
68
- const candidate = scenes[i];
69
- if (!candidate) continue;
70
-
71
- if (!isRouteClosing(candidate.route.key)) {
72
- previousDescriptor = candidate.descriptor;
73
- break;
74
- }
75
-
76
- if (firstClosingBelow === undefined) {
77
- firstClosingBelow = candidate.descriptor;
78
- }
79
- }
80
-
81
- if (previousDescriptor === undefined) {
82
- previousDescriptor = firstClosingBelow;
83
- }
92
+ const previousDescriptor = findPreviousDescriptor(
93
+ scenes,
94
+ sceneIndex,
95
+ isRouteClosing,
96
+ );
84
97
 
85
98
  return {
86
99
  previousDescriptor,
@@ -1,43 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.applyMeasuredBoundsWrites = void 0;
7
- var _entries = require("../../../stores/bounds/internals/entries");
8
- var _links = require("../../../stores/bounds/internals/links");
9
- const applyMeasuredBoundsWrites = params => {
10
- "worklet";
11
-
12
- const {
13
- sharedBoundTag,
14
- currentScreenKey,
15
- measured,
16
- preparedStyles,
17
- shouldSetSource,
18
- shouldUpdateSource,
19
- shouldSetDestination,
20
- shouldUpdateDestination,
21
- expectedSourceScreenKey
22
- } = params;
23
-
24
- // Set the bounds entry on every measure to avoid any stale measurements
25
- // for the public read API.
26
- (0, _entries.setEntry)(sharedBoundTag, currentScreenKey, {
27
- bounds: measured
28
- });
29
- if (shouldSetSource) {
30
- (0, _links.setSource)("capture", sharedBoundTag, currentScreenKey, measured, preparedStyles);
31
- }
32
- if (shouldUpdateSource) {
33
- (0, _links.setSource)("refresh", sharedBoundTag, currentScreenKey, measured, preparedStyles);
34
- }
35
- if (shouldUpdateDestination) {
36
- (0, _links.setDestination)("refresh", sharedBoundTag, currentScreenKey, measured, preparedStyles, expectedSourceScreenKey);
37
- }
38
- if (shouldSetDestination) {
39
- (0, _links.setDestination)("attach", sharedBoundTag, currentScreenKey, measured, preparedStyles, expectedSourceScreenKey);
40
- }
41
- };
42
- exports.applyMeasuredBoundsWrites = applyMeasuredBoundsWrites;
43
- //# sourceMappingURL=apply-measured-bounds-writes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_entries","require","_links","applyMeasuredBoundsWrites","params","sharedBoundTag","currentScreenKey","measured","preparedStyles","shouldSetSource","shouldUpdateSource","shouldSetDestination","shouldUpdateDestination","expectedSourceScreenKey","setEntry","bounds","setSource","setDestination","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.ts"],"mappings":";;;;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAiBO,MAAME,yBAAyB,GACrCC,MAAuC,IACnC;EACJ,SAAS;;EACT,MAAM;IACLC,cAAc;IACdC,gBAAgB;IAChBC,QAAQ;IACRC,cAAc;IACdC,eAAe;IACfC,kBAAkB;IAClBC,oBAAoB;IACpBC,uBAAuB;IACvBC;EACD,CAAC,GAAGT,MAAM;;EAEV;EACA;EACA,IAAAU,iBAAQ,EAACT,cAAc,EAAEC,gBAAgB,EAAE;IAC1CS,MAAM,EAAER;EACT,CAAC,CAAC;EAEF,IAAIE,eAAe,EAAE;IACpB,IAAAO,gBAAS,EACR,SAAS,EACTX,cAAc,EACdC,gBAAgB,EAChBC,QAAQ,EACRC,cACD,CAAC;EACF;EAEA,IAAIE,kBAAkB,EAAE;IACvB,IAAAM,gBAAS,EACR,SAAS,EACTX,cAAc,EACdC,gBAAgB,EAChBC,QAAQ,EACRC,cACD,CAAC;EACF;EAEA,IAAII,uBAAuB,EAAE;IAC5B,IAAAK,qBAAc,EACb,SAAS,EACTZ,cAAc,EACdC,gBAAgB,EAChBC,QAAQ,EACRC,cAAc,EACdK,uBACD,CAAC;EACF;EAEA,IAAIF,oBAAoB,EAAE;IACzB,IAAAM,qBAAc,EACb,QAAQ,EACRZ,cAAc,EACdC,gBAAgB,EAChBC,QAAQ,EACRC,cAAc,EACdK,uBACD,CAAC;EACF;AACD,CAAC;AAACK,OAAA,CAAAf,yBAAA,GAAAA,yBAAA","ignoreList":[]}
@@ -1,17 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.resolvePendingSourceKey = void 0;
7
- var _links = require("../../../stores/bounds/internals/links");
8
- const resolvePendingSourceKey = (sharedBoundTag, expectedSourceScreenKey) => {
9
- "worklet";
10
-
11
- if (expectedSourceScreenKey && ((0, _links.getPendingLink)(sharedBoundTag, expectedSourceScreenKey) || (0, _links.hasSourceLink)(sharedBoundTag, expectedSourceScreenKey))) {
12
- return expectedSourceScreenKey;
13
- }
14
- return (0, _links.getPendingLink)(sharedBoundTag)?.source.screenKey ?? null;
15
- };
16
- exports.resolvePendingSourceKey = resolvePendingSourceKey;
17
- //# sourceMappingURL=resolve-pending-source-key.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_links","require","resolvePendingSourceKey","sharedBoundTag","expectedSourceScreenKey","getPendingLink","hasSourceLink","source","screenKey","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/create-boundary-component/helpers/resolve-pending-source-key.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAKO,MAAMC,uBAAuB,GAAGA,CACtCC,cAAsB,EACtBC,uBAAgC,KACb;EACnB,SAAS;;EACT,IACCA,uBAAuB,KACtB,IAAAC,qBAAc,EAACF,cAAc,EAAEC,uBAAuB,CAAC,IACvD,IAAAE,oBAAa,EAACH,cAAc,EAAEC,uBAAuB,CAAC,CAAC,EACvD;IACD,OAAOA,uBAAuB;EAC/B;EAEA,OAAO,IAAAC,qBAAc,EAACF,cAAc,CAAC,EAAEI,MAAM,CAACC,SAAS,IAAI,IAAI;AAChE,CAAC;AAACC,OAAA,CAAAP,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -1,28 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createLinkContext = void 0;
7
- var _links = require("../../../../stores/bounds/internals/links");
8
- var _resolvePendingSourceKey = require("../../helpers/resolve-pending-source-key");
9
- const createLinkContext = params => {
10
- "worklet";
11
-
12
- const {
13
- sharedBoundTag,
14
- currentScreenKey,
15
- preferredSourceScreenKey
16
- } = params;
17
- const expectedSourceScreenKey = (0, _resolvePendingSourceKey.resolvePendingSourceKey)(sharedBoundTag, preferredSourceScreenKey) ?? undefined;
18
- const hasPendingLink = (0, _links.getPendingLink)(sharedBoundTag, expectedSourceScreenKey) !== null;
19
- return {
20
- expectedSourceScreenKey,
21
- hasPendingLink,
22
- hasAttachableSourceLink: expectedSourceScreenKey ? (0, _links.hasSourceLink)(sharedBoundTag, expectedSourceScreenKey) : false,
23
- hasSourceLink: (0, _links.hasSourceLink)(sharedBoundTag, currentScreenKey),
24
- hasDestinationLink: (0, _links.hasDestinationLink)(sharedBoundTag, currentScreenKey)
25
- };
26
- };
27
- exports.createLinkContext = createLinkContext;
28
- //# sourceMappingURL=boundary-link-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_links","require","_resolvePendingSourceKey","createLinkContext","params","sharedBoundTag","currentScreenKey","preferredSourceScreenKey","expectedSourceScreenKey","resolvePendingSourceKey","undefined","hasPendingLink","getPendingLink","hasAttachableSourceLink","hasSourceLink","hasDestinationLink","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/components/create-boundary-component/hooks/helpers/boundary-link-context.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAKA,IAAAC,wBAAA,GAAAD,OAAA;AAmBO,MAAME,iBAAiB,GAAIC,MAIjC,IAAkB;EAClB,SAAS;;EACT,MAAM;IAAEC,cAAc;IAAEC,gBAAgB;IAAEC;EAAyB,CAAC,GAAGH,MAAM;EAE7E,MAAMI,uBAAuB,GAC5B,IAAAC,gDAAuB,EAACJ,cAAc,EAAEE,wBAAwB,CAAC,IACjEG,SAAS;EACV,MAAMC,cAAc,GACnB,IAAAC,qBAAc,EAACP,cAAc,EAAEG,uBAAuB,CAAC,KAAK,IAAI;EAEjE,OAAO;IACNA,uBAAuB;IACvBG,cAAc;IACdE,uBAAuB,EAAEL,uBAAuB,GAC7C,IAAAM,oBAAa,EAACT,cAAc,EAAEG,uBAAuB,CAAC,GACtD,KAAK;IACRM,aAAa,EAAE,IAAAA,oBAAa,EAACT,cAAc,EAAEC,gBAAgB,CAAC;IAC9DS,kBAAkB,EAAE,IAAAA,yBAAkB,EAACV,cAAc,EAAEC,gBAAgB;EACxE,CAAC;AACF,CAAC;AAACU,OAAA,CAAAb,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -1,75 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.shouldBlockInitialDestinationMeasurement = exports.getMeasureIntentFlags = exports.buildMeasurementWritePlan = void 0;
7
- const shouldBlockInitialDestinationMeasurement = params => {
8
- "worklet";
9
-
10
- const {
11
- enabled,
12
- hasDestinationLink,
13
- hasAttachableSourceLink
14
- } = params;
15
- return enabled && hasAttachableSourceLink && !hasDestinationLink;
16
- };
17
- exports.shouldBlockInitialDestinationMeasurement = shouldBlockInitialDestinationMeasurement;
18
- const getMeasureIntentFlags = intent => {
19
- "worklet";
20
-
21
- const flags = {
22
- captureSource: false,
23
- completeDestination: false,
24
- refreshSource: false,
25
- refreshDestination: false
26
- };
27
- if (!intent) {
28
- return flags;
29
- }
30
- const intents = Array.isArray(intent) ? intent : [intent];
31
- for (let i = 0; i < intents.length; i++) {
32
- switch (intents[i]) {
33
- case "capture-source":
34
- flags.captureSource = true;
35
- break;
36
- case "complete-destination":
37
- flags.completeDestination = true;
38
- break;
39
- case "refresh-source":
40
- flags.refreshSource = true;
41
- break;
42
- case "refresh-destination":
43
- flags.refreshDestination = true;
44
- break;
45
- }
46
- }
47
- return flags;
48
- };
49
- exports.getMeasureIntentFlags = getMeasureIntentFlags;
50
- const buildMeasurementWritePlan = params => {
51
- "worklet";
52
-
53
- const {
54
- intents,
55
- hasPendingLink,
56
- hasSourceLink,
57
- hasDestinationLink,
58
- hasAttachableSourceLink
59
- } = params;
60
- const captureSource = intents.captureSource;
61
- const completeDestination = intents.completeDestination && (hasPendingLink || hasAttachableSourceLink);
62
- const refreshSource = intents.refreshSource && hasSourceLink;
63
- const refreshDestination = intents.refreshDestination && (hasDestinationLink || hasPendingLink || hasAttachableSourceLink);
64
- const writesAny = captureSource || completeDestination || refreshSource || refreshDestination;
65
- return {
66
- captureSource,
67
- completeDestination,
68
- refreshSource,
69
- refreshDestination,
70
- writesAny,
71
- wantsDestinationWrite: completeDestination || refreshDestination
72
- };
73
- };
74
- exports.buildMeasurementWritePlan = buildMeasurementWritePlan;
75
- //# sourceMappingURL=measurement-rules.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["shouldBlockInitialDestinationMeasurement","params","enabled","hasDestinationLink","hasAttachableSourceLink","exports","getMeasureIntentFlags","intent","flags","captureSource","completeDestination","refreshSource","refreshDestination","intents","Array","isArray","i","length","buildMeasurementWritePlan","hasPendingLink","hasSourceLink","writesAny","wantsDestinationWrite"],"sourceRoot":"../../../../../../../src","sources":["shared/components/create-boundary-component/hooks/helpers/measurement-rules.ts"],"mappings":";;;;;;AAkBO,MAAMA,wCAAwC,GAAIC,MAIxD,IAAc;EACd,SAAS;;EACT,MAAM;IAAEC,OAAO;IAAEC,kBAAkB;IAAEC;EAAwB,CAAC,GAAGH,MAAM;EAEvE,OAAOC,OAAO,IAAIE,uBAAuB,IAAI,CAACD,kBAAkB;AACjE,CAAC;AAACE,OAAA,CAAAL,wCAAA,GAAAA,wCAAA;AAEK,MAAMM,qBAAqB,GACjCC,MAAiD,IACzB;EACxB,SAAS;;EACT,MAAMC,KAAyB,GAAG;IACjCC,aAAa,EAAE,KAAK;IACpBC,mBAAmB,EAAE,KAAK;IAC1BC,aAAa,EAAE,KAAK;IACpBC,kBAAkB,EAAE;EACrB,CAAC;EAED,IAAI,CAACL,MAAM,EAAE;IACZ,OAAOC,KAAK;EACb;EAEA,MAAMK,OAAO,GAAGC,KAAK,CAACC,OAAO,CAACR,MAAM,CAAC,GAAGA,MAAM,GAAG,CAACA,MAAM,CAAC;EAEzD,KAAK,IAAIS,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,OAAO,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;IACxC,QAAQH,OAAO,CAACG,CAAC,CAAC;MACjB,KAAK,gBAAgB;QACpBR,KAAK,CAACC,aAAa,GAAG,IAAI;QAC1B;MACD,KAAK,sBAAsB;QAC1BD,KAAK,CAACE,mBAAmB,GAAG,IAAI;QAChC;MACD,KAAK,gBAAgB;QACpBF,KAAK,CAACG,aAAa,GAAG,IAAI;QAC1B;MACD,KAAK,qBAAqB;QACzBH,KAAK,CAACI,kBAAkB,GAAG,IAAI;QAC/B;IACF;EACD;EAEA,OAAOJ,KAAK;AACb,CAAC;AAACH,OAAA,CAAAC,qBAAA,GAAAA,qBAAA;AAEK,MAAMY,yBAAyB,GAAIjB,MAMzC,IAAuB;EACvB,SAAS;;EACT,MAAM;IACLY,OAAO;IACPM,cAAc;IACdC,aAAa;IACbjB,kBAAkB;IAClBC;EACD,CAAC,GAAGH,MAAM;EAEV,MAAMQ,aAAa,GAAGI,OAAO,CAACJ,aAAa;EAC3C,MAAMC,mBAAmB,GACxBG,OAAO,CAACH,mBAAmB,KAAKS,cAAc,IAAIf,uBAAuB,CAAC;EAC3E,MAAMO,aAAa,GAAGE,OAAO,CAACF,aAAa,IAAIS,aAAa;EAC5D,MAAMR,kBAAkB,GACvBC,OAAO,CAACD,kBAAkB,KACzBT,kBAAkB,IAAIgB,cAAc,IAAIf,uBAAuB,CAAC;EAClE,MAAMiB,SAAS,GACdZ,aAAa,IAAIC,mBAAmB,IAAIC,aAAa,IAAIC,kBAAkB;EAE5E,OAAO;IACNH,aAAa;IACbC,mBAAmB;IACnBC,aAAa;IACbC,kBAAkB;IAClBS,SAAS;IACTC,qBAAqB,EAAEZ,mBAAmB,IAAIE;EAC/C,CAAC;AACF,CAAC;AAACP,OAAA,CAAAa,yBAAA,GAAAA,yBAAA","ignoreList":[]}
@@ -1,20 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.isMeasurementInViewport = void 0;
7
- const isMeasurementInViewport = (measured, viewportWidth, viewportHeight) => {
8
- "worklet";
9
-
10
- if (measured.width <= 0 || measured.height <= 0) {
11
- return false;
12
- }
13
- const toleranceX = viewportWidth * 0.15;
14
- const toleranceY = viewportHeight * 0.15;
15
- const centerX = measured.pageX + measured.width / 2;
16
- const centerY = measured.pageY + measured.height / 2;
17
- return centerX >= -toleranceX && centerX <= viewportWidth + toleranceX && centerY >= -toleranceY && centerY <= viewportHeight + toleranceY;
18
- };
19
- exports.isMeasurementInViewport = isMeasurementInViewport;
20
- //# sourceMappingURL=measurement.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["isMeasurementInViewport","measured","viewportWidth","viewportHeight","width","height","toleranceX","toleranceY","centerX","pageX","centerY","pageY","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/components/create-boundary-component/hooks/helpers/measurement.ts"],"mappings":";;;;;;AAEO,MAAMA,uBAAuB,GAAGA,CACtCC,QAA4B,EAC5BC,aAAqB,EACrBC,cAAsB,KACT;EACb,SAAS;;EAET,IAAIF,QAAQ,CAACG,KAAK,IAAI,CAAC,IAAIH,QAAQ,CAACI,MAAM,IAAI,CAAC,EAAE;IAChD,OAAO,KAAK;EACb;EAEA,MAAMC,UAAU,GAAGJ,aAAa,GAAG,IAAI;EACvC,MAAMK,UAAU,GAAGJ,cAAc,GAAG,IAAI;EACxC,MAAMK,OAAO,GAAGP,QAAQ,CAACQ,KAAK,GAAGR,QAAQ,CAACG,KAAK,GAAG,CAAC;EACnD,MAAMM,OAAO,GAAGT,QAAQ,CAACU,KAAK,GAAGV,QAAQ,CAACI,MAAM,GAAG,CAAC;EAEpD,OACCG,OAAO,IAAI,CAACF,UAAU,IACtBE,OAAO,IAAIN,aAAa,GAAGI,UAAU,IACrCI,OAAO,IAAI,CAACH,UAAU,IACtBG,OAAO,IAAIP,cAAc,GAAGI,UAAU;AAExC,CAAC;AAACK,OAAA,CAAAZ,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactNativeReanimated","require","SCROLL_MEASUREMENT_EPSILON","getOverscrollDelta","axisState","maxOffset","Math","max","contentSize","layoutSize","clampedOffset","min","offset","delta","abs","adjustedMeasuredBoundsForOverscrollDeltas","measured","scrollState","deltaX","horizontal","deltaY","vertical","x","y","pageX","pageY","exports","measureWithOverscrollAwareness","ref","measure"],"sourceRoot":"../../../../../../../src","sources":["shared/components/create-boundary-component/hooks/helpers/scroll-measurement.ts"],"mappings":";;;;;;AACA,IAAAA,sBAAA,GAAAC,OAAA;AAUA,MAAMC,0BAA0B,GAAG,CAAC;AAEpC,MAAMC,kBAAkB,GAAIC,SAAiC,IAAa;EACzE,SAAS;;EACT,MAAMC,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEH,SAAS,CAACI,WAAW,GAAGJ,SAAS,CAACK,UAAU,CAAC;EAC3E,MAAMC,aAAa,GAAGJ,IAAI,CAACK,GAAG,CAACL,IAAI,CAACC,GAAG,CAACH,SAAS,CAACQ,MAAM,EAAE,CAAC,CAAC,EAAEP,SAAS,CAAC;EACxE,MAAMQ,KAAK,GAAGT,SAAS,CAACQ,MAAM,GAAGF,aAAa;EAE9C,OAAOJ,IAAI,CAACQ,GAAG,CAACD,KAAK,CAAC,GAAGX,0BAA0B,GAAGW,KAAK,GAAG,CAAC;AAChE,CAAC;AAEM,MAAME,yCAAyC,GAAGA,CACxDC,QAA4B,EAC5BC,WAAsC,KACd;EACxB,SAAS;;EAET,IAAI,CAACA,WAAW,EAAE;IACjB,OAAOD,QAAQ;EAChB;EAEA,MAAME,MAAM,GAAGf,kBAAkB,CAACc,WAAW,CAACE,UAAU,CAAC;EACzD,MAAMC,MAAM,GAAGjB,kBAAkB,CAACc,WAAW,CAACI,QAAQ,CAAC;EAEvD,IAAIH,MAAM,KAAK,CAAC,IAAIE,MAAM,KAAK,CAAC,EAAE;IACjC,OAAOJ,QAAQ;EAChB;EAEA,OAAO;IACN,GAAGA,QAAQ;IACXM,CAAC,EAAEN,QAAQ,CAACM,CAAC,GAAGJ,MAAM;IACtBK,CAAC,EAAEP,QAAQ,CAACO,CAAC,GAAGH,MAAM;IACtBI,KAAK,EAAER,QAAQ,CAACQ,KAAK,GAAGN,MAAM;IAC9BO,KAAK,EAAET,QAAQ,CAACS,KAAK,GAAGL;EACzB,CAAC;AACF,CAAC;AAACM,OAAA,CAAAX,yCAAA,GAAAA,yCAAA;AAEK,MAAMY,8BAA8B,GAAGA,CAC7CC,GAAsB,EACtBX,WAAsC,KACP;EAC/B,SAAS;;EACT,MAAMD,QAAQ,GAAG,IAAAa,8BAAO,EAACD,GAAG,CAAC;EAC7B,IAAI,CAACZ,QAAQ,EAAE,OAAO,IAAI;EAE1B,OAAOD,yCAAyC,CAACC,QAAQ,EAAEC,WAAW,CAAC;AACxE,CAAC;AAACS,OAAA,CAAAC,8BAAA,GAAAA,8BAAA","ignoreList":[]}
@@ -1,16 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.buildBoundaryMatchKey = buildBoundaryMatchKey;
7
- function buildBoundaryMatchKey(params) {
8
- "worklet";
9
-
10
- const {
11
- group,
12
- id
13
- } = params;
14
- return group ? `${group}:${id}` : String(id);
15
- }
16
- //# sourceMappingURL=build-boundary-match-key.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["buildBoundaryMatchKey","params","group","id","String"],"sourceRoot":"../../../../../../src","sources":["shared/components/create-boundary-component/utils/build-boundary-match-key.ts"],"mappings":";;;;;;AAOO,SAASA,qBAAqBA,CACpCC,MAAmC,EAC1B;EACT,SAAS;;EACT,MAAM;IAAEC,KAAK;IAAEC;EAAG,CAAC,GAAGF,MAAM;EAC5B,OAAOC,KAAK,GAAG,GAAGA,KAAK,IAAIC,EAAE,EAAE,GAAGC,MAAM,CAACD,EAAE,CAAC;AAC7C","ignoreList":[]}