react-native-screen-transitions 3.4.0-alpha.7 → 3.4.0-beta.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 (372) hide show
  1. package/lib/commonjs/shared/components/create-boundary-component/components/boundary-target.js +6 -4
  2. package/lib/commonjs/shared/components/create-boundary-component/components/boundary-target.js.map +1 -1
  3. package/lib/commonjs/shared/components/create-boundary-component/create-boundary-component.js +22 -60
  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/helpers/resolve-pending-source-key.js +1 -1
  6. package/lib/commonjs/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js.map +1 -1
  7. package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js +56 -41
  8. package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js.map +1 -1
  9. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-auto-source-measurement.js +7 -1
  10. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-auto-source-measurement.js.map +1 -1
  11. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.js +4 -23
  12. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.js.map +1 -1
  13. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-pending-destination-measurement.js +111 -2
  14. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-pending-destination-measurement.js.map +1 -1
  15. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-pre-transition-measurement.js +69 -0
  16. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-pre-transition-measurement.js.map +1 -0
  17. package/lib/commonjs/shared/components/create-boundary-component/index.js +10 -5
  18. package/lib/commonjs/shared/components/create-boundary-component/index.js.map +1 -1
  19. package/lib/commonjs/shared/components/create-transition-aware-component.js +8 -32
  20. package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
  21. package/lib/commonjs/shared/components/screen-container/hooks/use-content-layout.js +11 -9
  22. package/lib/commonjs/shared/components/screen-container/hooks/use-content-layout.js.map +1 -1
  23. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js +7 -5
  24. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
  25. package/lib/commonjs/shared/components/screen-lifecycle/index.js +3 -1
  26. package/lib/commonjs/shared/components/screen-lifecycle/index.js.map +1 -1
  27. package/lib/commonjs/shared/constants.js +17 -3
  28. package/lib/commonjs/shared/constants.js.map +1 -1
  29. package/lib/commonjs/shared/hooks/reanimated/use-animated-debounce.js +43 -0
  30. package/lib/commonjs/shared/hooks/reanimated/use-animated-debounce.js.map +1 -0
  31. package/lib/commonjs/shared/index.js +6 -0
  32. package/lib/commonjs/shared/index.js.map +1 -1
  33. package/lib/commonjs/shared/providers/gestures/handlers/use-handlers.js +7 -0
  34. package/lib/commonjs/shared/providers/gestures/handlers/use-handlers.js.map +1 -1
  35. package/lib/commonjs/shared/providers/register-bounds.provider.js +9 -1
  36. package/lib/commonjs/shared/providers/register-bounds.provider.js.map +1 -1
  37. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state.js +23 -1
  38. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state.js.map +1 -1
  39. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js +3 -0
  40. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  41. package/lib/commonjs/shared/providers/screen/styles/styles.provider.js +1 -11
  42. package/lib/commonjs/shared/providers/screen/styles/styles.provider.js.map +1 -1
  43. package/lib/commonjs/shared/stores/animation.store.js +9 -3
  44. package/lib/commonjs/shared/stores/animation.store.js.map +1 -1
  45. package/lib/commonjs/shared/stores/bounds/internals/clear.js +23 -167
  46. package/lib/commonjs/shared/stores/bounds/internals/clear.js.map +1 -1
  47. package/lib/commonjs/shared/stores/bounds/internals/presence.js +0 -3
  48. package/lib/commonjs/shared/stores/bounds/internals/presence.js.map +1 -1
  49. package/lib/commonjs/shared/stores/bounds/internals/registry.js +18 -7
  50. package/lib/commonjs/shared/stores/bounds/internals/registry.js.map +1 -1
  51. package/lib/commonjs/shared/stores/bounds/internals/resolver.js +7 -51
  52. package/lib/commonjs/shared/stores/bounds/internals/resolver.js.map +1 -1
  53. package/lib/commonjs/shared/stores/bounds/internals/state.js +1 -83
  54. package/lib/commonjs/shared/stores/bounds/internals/state.js.map +1 -1
  55. package/lib/commonjs/shared/utils/animation/animate-to-progress.js +10 -0
  56. package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
  57. package/lib/commonjs/shared/utils/bounds/constants.js.map +1 -0
  58. package/lib/commonjs/shared/utils/bounds/helpers/{resolve-bound-tag.js → create-bound-tag.js} +5 -5
  59. package/lib/commonjs/shared/utils/bounds/helpers/create-bound-tag.js.map +1 -0
  60. package/lib/commonjs/shared/utils/bounds/helpers/{interpolators.js → create-interpolators.js} +6 -6
  61. package/lib/commonjs/shared/utils/bounds/helpers/create-interpolators.js.map +1 -0
  62. package/lib/commonjs/shared/utils/bounds/helpers/{link-accessor.js → create-link-accessor.js} +1 -1
  63. package/lib/commonjs/shared/utils/bounds/helpers/create-link-accessor.js.map +1 -0
  64. package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js +70 -0
  65. package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -0
  66. package/lib/commonjs/shared/utils/bounds/helpers/{style-composers.js → styles/composers.js} +22 -22
  67. package/lib/commonjs/shared/utils/bounds/helpers/styles/composers.js.map +1 -0
  68. package/lib/commonjs/shared/utils/bounds/helpers/{compute-bounds-styles.js → styles/compute.js} +14 -20
  69. package/lib/commonjs/shared/utils/bounds/helpers/styles/compute.js.map +1 -0
  70. package/lib/commonjs/shared/utils/bounds/helpers/{interpolate-style.js → styles/interpolate-link-style.js} +4 -4
  71. package/lib/commonjs/shared/utils/bounds/helpers/styles/interpolate-link-style.js.map +1 -0
  72. package/lib/commonjs/shared/utils/bounds/helpers/styles/styles.js.map +1 -0
  73. package/lib/commonjs/shared/utils/bounds/index.js +16 -44
  74. package/lib/commonjs/shared/utils/bounds/index.js.map +1 -1
  75. package/lib/commonjs/shared/utils/bounds/zoom/build.js +234 -50
  76. package/lib/commonjs/shared/utils/bounds/zoom/build.js.map +1 -1
  77. package/lib/commonjs/shared/utils/bounds/zoom/config.js +10 -1
  78. package/lib/commonjs/shared/utils/bounds/zoom/config.js.map +1 -1
  79. package/lib/commonjs/shared/utils/bounds/zoom/math.js +34 -1
  80. package/lib/commonjs/shared/utils/bounds/zoom/math.js.map +1 -1
  81. package/lib/module/shared/components/create-boundary-component/components/boundary-target.js +6 -4
  82. package/lib/module/shared/components/create-boundary-component/components/boundary-target.js.map +1 -1
  83. package/lib/module/shared/components/create-boundary-component/create-boundary-component.js +23 -61
  84. package/lib/module/shared/components/create-boundary-component/create-boundary-component.js.map +1 -1
  85. package/lib/module/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js +1 -1
  86. package/lib/module/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js.map +1 -1
  87. package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js +54 -39
  88. package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js.map +1 -1
  89. package/lib/module/shared/components/create-boundary-component/hooks/use-auto-source-measurement.js +7 -1
  90. package/lib/module/shared/components/create-boundary-component/hooks/use-auto-source-measurement.js.map +1 -1
  91. package/lib/module/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.js +4 -23
  92. package/lib/module/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.js.map +1 -1
  93. package/lib/module/shared/components/create-boundary-component/hooks/use-pending-destination-measurement.js +114 -4
  94. package/lib/module/shared/components/create-boundary-component/hooks/use-pending-destination-measurement.js.map +1 -1
  95. package/lib/module/shared/components/create-boundary-component/hooks/use-pre-transition-measurement.js +64 -0
  96. package/lib/module/shared/components/create-boundary-component/hooks/use-pre-transition-measurement.js.map +1 -0
  97. package/lib/module/shared/components/create-boundary-component/index.js +10 -5
  98. package/lib/module/shared/components/create-boundary-component/index.js.map +1 -1
  99. package/lib/module/shared/components/create-transition-aware-component.js +10 -34
  100. package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
  101. package/lib/module/shared/components/screen-container/hooks/use-content-layout.js +11 -9
  102. package/lib/module/shared/components/screen-container/hooks/use-content-layout.js.map +1 -1
  103. package/lib/module/shared/components/screen-container/layers/backdrop.js +7 -5
  104. package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
  105. package/lib/module/shared/components/screen-lifecycle/index.js +3 -1
  106. package/lib/module/shared/components/screen-lifecycle/index.js.map +1 -1
  107. package/lib/module/shared/constants.js +16 -2
  108. package/lib/module/shared/constants.js.map +1 -1
  109. package/lib/module/shared/hooks/reanimated/use-animated-debounce.js +39 -0
  110. package/lib/module/shared/hooks/reanimated/use-animated-debounce.js.map +1 -0
  111. package/lib/module/shared/index.js +1 -1
  112. package/lib/module/shared/index.js.map +1 -1
  113. package/lib/module/shared/providers/gestures/handlers/use-handlers.js +7 -0
  114. package/lib/module/shared/providers/gestures/handlers/use-handlers.js.map +1 -1
  115. package/lib/module/shared/providers/register-bounds.provider.js +9 -1
  116. package/lib/module/shared/providers/register-bounds.provider.js.map +1 -1
  117. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state.js +23 -1
  118. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state.js.map +1 -1
  119. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js +3 -0
  120. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  121. package/lib/module/shared/providers/screen/styles/styles.provider.js +1 -11
  122. package/lib/module/shared/providers/screen/styles/styles.provider.js.map +1 -1
  123. package/lib/module/shared/stores/animation.store.js +9 -3
  124. package/lib/module/shared/stores/animation.store.js.map +1 -1
  125. package/lib/module/shared/stores/bounds/internals/clear.js +24 -168
  126. package/lib/module/shared/stores/bounds/internals/clear.js.map +1 -1
  127. package/lib/module/shared/stores/bounds/internals/presence.js +1 -4
  128. package/lib/module/shared/stores/bounds/internals/presence.js.map +1 -1
  129. package/lib/module/shared/stores/bounds/internals/registry.js +19 -8
  130. package/lib/module/shared/stores/bounds/internals/registry.js.map +1 -1
  131. package/lib/module/shared/stores/bounds/internals/resolver.js +8 -52
  132. package/lib/module/shared/stores/bounds/internals/resolver.js.map +1 -1
  133. package/lib/module/shared/stores/bounds/internals/state.js +0 -78
  134. package/lib/module/shared/stores/bounds/internals/state.js.map +1 -1
  135. package/lib/module/shared/utils/animation/animate-to-progress.js +10 -0
  136. package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
  137. package/lib/module/shared/utils/bounds/constants.js.map +1 -0
  138. package/lib/module/shared/utils/bounds/helpers/{resolve-bound-tag.js → create-bound-tag.js} +3 -3
  139. package/lib/module/shared/utils/bounds/helpers/create-bound-tag.js.map +1 -0
  140. package/lib/module/shared/utils/bounds/helpers/{interpolators.js → create-interpolators.js} +5 -5
  141. package/lib/module/shared/utils/bounds/helpers/create-interpolators.js.map +1 -0
  142. package/lib/module/shared/utils/bounds/helpers/{link-accessor.js → create-link-accessor.js} +1 -1
  143. package/lib/module/shared/utils/bounds/helpers/create-link-accessor.js.map +1 -0
  144. package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js +64 -0
  145. package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -0
  146. package/lib/module/shared/utils/bounds/helpers/{style-composers.js → styles/composers.js} +22 -22
  147. package/lib/module/shared/utils/bounds/helpers/styles/composers.js.map +1 -0
  148. package/lib/module/shared/utils/bounds/helpers/{compute-bounds-styles.js → styles/compute.js} +12 -18
  149. package/lib/module/shared/utils/bounds/helpers/styles/compute.js.map +1 -0
  150. package/lib/module/shared/utils/bounds/helpers/{interpolate-style.js → styles/interpolate-link-style.js} +4 -4
  151. package/lib/module/shared/utils/bounds/helpers/styles/interpolate-link-style.js.map +1 -0
  152. package/lib/module/shared/utils/bounds/helpers/styles/styles.js.map +1 -0
  153. package/lib/module/shared/utils/bounds/index.js +14 -42
  154. package/lib/module/shared/utils/bounds/index.js.map +1 -1
  155. package/lib/module/shared/utils/bounds/zoom/build.js +238 -54
  156. package/lib/module/shared/utils/bounds/zoom/build.js.map +1 -1
  157. package/lib/module/shared/utils/bounds/zoom/config.js +9 -0
  158. package/lib/module/shared/utils/bounds/zoom/config.js.map +1 -1
  159. package/lib/module/shared/utils/bounds/zoom/math.js +31 -0
  160. package/lib/module/shared/utils/bounds/zoom/math.js.map +1 -1
  161. package/lib/typescript/shared/components/create-boundary-component/components/boundary-target.d.ts.map +1 -1
  162. package/lib/typescript/shared/components/create-boundary-component/create-boundary-component.d.ts.map +1 -1
  163. package/lib/typescript/shared/components/create-boundary-component/helpers/resolve-pending-source-key.d.ts.map +1 -1
  164. package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement-rules.d.ts +17 -11
  165. package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement-rules.d.ts.map +1 -1
  166. package/lib/typescript/shared/components/create-boundary-component/hooks/use-auto-source-measurement.d.ts +3 -1
  167. package/lib/typescript/shared/components/create-boundary-component/hooks/use-auto-source-measurement.d.ts.map +1 -1
  168. package/lib/typescript/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.d.ts +1 -2
  169. package/lib/typescript/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.d.ts.map +1 -1
  170. package/lib/typescript/shared/components/create-boundary-component/hooks/use-pending-destination-measurement.d.ts +20 -1
  171. package/lib/typescript/shared/components/create-boundary-component/hooks/use-pending-destination-measurement.d.ts.map +1 -1
  172. package/lib/typescript/shared/components/create-boundary-component/hooks/use-pre-transition-measurement.d.ts +12 -0
  173. package/lib/typescript/shared/components/create-boundary-component/hooks/use-pre-transition-measurement.d.ts.map +1 -0
  174. package/lib/typescript/shared/components/create-boundary-component/index.d.ts +10 -4
  175. package/lib/typescript/shared/components/create-boundary-component/index.d.ts.map +1 -1
  176. package/lib/typescript/shared/components/create-boundary-component/types.d.ts +1 -1
  177. package/lib/typescript/shared/components/create-boundary-component/types.d.ts.map +1 -1
  178. package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
  179. package/lib/typescript/shared/components/screen-container/hooks/use-content-layout.d.ts.map +1 -1
  180. package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts.map +1 -1
  181. package/lib/typescript/shared/components/screen-lifecycle/index.d.ts.map +1 -1
  182. package/lib/typescript/shared/constants.d.ts +33 -1
  183. package/lib/typescript/shared/constants.d.ts.map +1 -1
  184. package/lib/typescript/shared/hooks/reanimated/use-animated-debounce.d.ts +13 -0
  185. package/lib/typescript/shared/hooks/reanimated/use-animated-debounce.d.ts.map +1 -0
  186. package/lib/typescript/shared/index.d.ts +3 -3
  187. package/lib/typescript/shared/index.d.ts.map +1 -1
  188. package/lib/typescript/shared/providers/gestures/handlers/use-handlers.d.ts.map +1 -1
  189. package/lib/typescript/shared/providers/register-bounds.provider.d.ts +7 -0
  190. package/lib/typescript/shared/providers/register-bounds.provider.d.ts.map +1 -1
  191. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state.d.ts +3 -0
  192. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state.d.ts.map +1 -1
  193. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts +3 -0
  194. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts.map +1 -1
  195. package/lib/typescript/shared/providers/screen/styles/styles.provider.d.ts.map +1 -1
  196. package/lib/typescript/shared/stores/animation.store.d.ts +5 -2
  197. package/lib/typescript/shared/stores/animation.store.d.ts.map +1 -1
  198. package/lib/typescript/shared/stores/bounds/internals/clear.d.ts.map +1 -1
  199. package/lib/typescript/shared/stores/bounds/internals/presence.d.ts.map +1 -1
  200. package/lib/typescript/shared/stores/bounds/internals/registry.d.ts.map +1 -1
  201. package/lib/typescript/shared/stores/bounds/internals/resolver.d.ts.map +1 -1
  202. package/lib/typescript/shared/stores/bounds/internals/state.d.ts +0 -3
  203. package/lib/typescript/shared/stores/bounds/internals/state.d.ts.map +1 -1
  204. package/lib/typescript/shared/stores/bounds/types.d.ts +0 -2
  205. package/lib/typescript/shared/stores/bounds/types.d.ts.map +1 -1
  206. package/lib/typescript/shared/types/animation.types.d.ts +11 -0
  207. package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
  208. package/lib/typescript/shared/types/bounds.types.d.ts +106 -1
  209. package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
  210. package/lib/typescript/shared/types/index.d.ts +1 -1
  211. package/lib/typescript/shared/types/index.d.ts.map +1 -1
  212. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts +2 -1
  213. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
  214. package/lib/typescript/shared/utils/bounds/constants.d.ts.map +1 -0
  215. package/lib/typescript/shared/utils/bounds/helpers/create-bound-tag.d.ts +7 -0
  216. package/lib/typescript/shared/utils/bounds/helpers/create-bound-tag.d.ts.map +1 -0
  217. package/lib/typescript/shared/utils/bounds/helpers/{interpolators.d.ts → create-interpolators.d.ts} +3 -3
  218. package/lib/typescript/shared/utils/bounds/helpers/create-interpolators.d.ts.map +1 -0
  219. package/lib/typescript/shared/utils/bounds/helpers/{link-accessor.d.ts → create-link-accessor.d.ts} +1 -1
  220. package/lib/typescript/shared/utils/bounds/helpers/create-link-accessor.d.ts.map +1 -0
  221. package/lib/typescript/shared/utils/bounds/helpers/prepare-bound-styles.d.ts +20 -0
  222. package/lib/typescript/shared/utils/bounds/helpers/prepare-bound-styles.d.ts.map +1 -0
  223. package/lib/typescript/shared/utils/bounds/helpers/{style-composers.d.ts → styles/composers.d.ts} +4 -4
  224. package/lib/typescript/shared/utils/bounds/helpers/styles/composers.d.ts.map +1 -0
  225. package/lib/typescript/shared/utils/bounds/helpers/{compute-bounds-styles.d.ts → styles/compute.d.ts} +3 -3
  226. package/lib/typescript/shared/utils/bounds/helpers/styles/compute.d.ts.map +1 -0
  227. package/lib/typescript/shared/utils/bounds/helpers/{interpolate-style.d.ts → styles/interpolate-link-style.d.ts} +2 -2
  228. package/lib/typescript/shared/utils/bounds/helpers/styles/interpolate-link-style.d.ts.map +1 -0
  229. package/lib/typescript/shared/utils/bounds/helpers/styles/styles.d.ts.map +1 -0
  230. package/lib/typescript/shared/utils/bounds/index.d.ts.map +1 -1
  231. package/lib/typescript/shared/utils/bounds/types/options.d.ts +3 -2
  232. package/lib/typescript/shared/utils/bounds/types/options.d.ts.map +1 -1
  233. package/lib/typescript/shared/utils/bounds/zoom/build.d.ts.map +1 -1
  234. package/lib/typescript/shared/utils/bounds/zoom/config.d.ts +9 -0
  235. package/lib/typescript/shared/utils/bounds/zoom/config.d.ts.map +1 -1
  236. package/lib/typescript/shared/utils/bounds/zoom/math.d.ts +17 -0
  237. package/lib/typescript/shared/utils/bounds/zoom/math.d.ts.map +1 -1
  238. package/package.json +1 -1
  239. package/src/shared/components/create-boundary-component/components/boundary-target.tsx +6 -4
  240. package/src/shared/components/create-boundary-component/create-boundary-component.tsx +28 -60
  241. package/src/shared/components/create-boundary-component/helpers/resolve-pending-source-key.ts +5 -1
  242. package/src/shared/components/create-boundary-component/hooks/helpers/measurement-rules.ts +72 -53
  243. package/src/shared/components/create-boundary-component/hooks/use-auto-source-measurement.ts +19 -3
  244. package/src/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.ts +5 -34
  245. package/src/shared/components/create-boundary-component/hooks/use-pending-destination-measurement.ts +180 -6
  246. package/src/shared/components/create-boundary-component/hooks/use-pre-transition-measurement.ts +110 -0
  247. package/src/shared/components/create-boundary-component/index.tsx +10 -5
  248. package/src/shared/components/create-boundary-component/types.ts +1 -2
  249. package/src/shared/components/create-transition-aware-component.tsx +10 -47
  250. package/src/shared/components/screen-container/hooks/use-content-layout.ts +10 -17
  251. package/src/shared/components/screen-container/layers/backdrop.tsx +6 -9
  252. package/src/shared/components/screen-lifecycle/index.tsx +1 -4
  253. package/src/shared/constants.ts +11 -1
  254. package/src/shared/hooks/reanimated/use-animated-debounce.ts +56 -0
  255. package/src/shared/index.ts +3 -0
  256. package/src/shared/providers/gestures/handlers/use-handlers.ts +9 -0
  257. package/src/shared/providers/register-bounds.provider.tsx +8 -1
  258. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state.ts +27 -1
  259. package/src/shared/providers/screen/animation/helpers/use-build-transition-state.ts +6 -0
  260. package/src/shared/providers/screen/styles/styles.provider.tsx +1 -12
  261. package/src/shared/stores/animation.store.ts +11 -2
  262. package/src/shared/stores/bounds/internals/clear.ts +47 -220
  263. package/src/shared/stores/bounds/internals/presence.ts +1 -4
  264. package/src/shared/stores/bounds/internals/registry.ts +25 -14
  265. package/src/shared/stores/bounds/internals/resolver.ts +7 -84
  266. package/src/shared/stores/bounds/internals/state.ts +0 -98
  267. package/src/shared/stores/bounds/types.ts +0 -2
  268. package/src/shared/types/animation.types.ts +13 -0
  269. package/src/shared/types/bounds.types.ts +108 -1
  270. package/src/shared/types/index.ts +2 -0
  271. package/src/shared/utils/animation/animate-to-progress.ts +11 -1
  272. package/src/shared/utils/bounds/{helpers/constants.ts → constants.ts} +1 -1
  273. package/src/shared/utils/bounds/helpers/{resolve-bound-tag.ts → create-bound-tag.ts} +2 -2
  274. package/src/shared/utils/bounds/helpers/{interpolators.ts → create-interpolators.ts} +19 -12
  275. package/src/shared/utils/bounds/helpers/prepare-bound-styles.ts +100 -0
  276. package/src/shared/utils/bounds/helpers/{style-composers.ts → styles/composers.ts} +119 -53
  277. package/src/shared/utils/bounds/helpers/{compute-bounds-styles.ts → styles/compute.ts} +10 -20
  278. package/src/shared/utils/bounds/helpers/{interpolate-style.ts → styles/interpolate-link-style.ts} +9 -4
  279. package/src/shared/utils/bounds/index.ts +13 -53
  280. package/src/shared/utils/bounds/types/options.ts +3 -2
  281. package/src/shared/utils/bounds/zoom/build.ts +316 -95
  282. package/src/shared/utils/bounds/zoom/config.ts +11 -0
  283. package/src/shared/utils/bounds/zoom/math.ts +57 -0
  284. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-deferred-measurement-trigger.js +0 -54
  285. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-deferred-measurement-trigger.js.map +0 -1
  286. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-group-active-measurement.js +0 -122
  287. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-group-active-measurement.js.map +0 -1
  288. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-group-active-source-measurement.js +0 -72
  289. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-group-active-source-measurement.js.map +0 -1
  290. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-layout-handler.js +0 -66
  291. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-layout-handler.js.map +0 -1
  292. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.js +0 -58
  293. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.js.map +0 -1
  294. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-scroll-settled-measurement.js +0 -53
  295. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-scroll-settled-measurement.js.map +0 -1
  296. package/lib/commonjs/shared/utils/bounds/helpers/build-bounds-options.js +0 -41
  297. package/lib/commonjs/shared/utils/bounds/helpers/build-bounds-options.js.map +0 -1
  298. package/lib/commonjs/shared/utils/bounds/helpers/compute-bounds-styles.js.map +0 -1
  299. package/lib/commonjs/shared/utils/bounds/helpers/constants.js.map +0 -1
  300. package/lib/commonjs/shared/utils/bounds/helpers/interpolate-style.js.map +0 -1
  301. package/lib/commonjs/shared/utils/bounds/helpers/interpolate.js +0 -20
  302. package/lib/commonjs/shared/utils/bounds/helpers/interpolate.js.map +0 -1
  303. package/lib/commonjs/shared/utils/bounds/helpers/interpolators.js.map +0 -1
  304. package/lib/commonjs/shared/utils/bounds/helpers/link-accessor.js.map +0 -1
  305. package/lib/commonjs/shared/utils/bounds/helpers/resolve-bound-tag.js.map +0 -1
  306. package/lib/commonjs/shared/utils/bounds/helpers/style-composers.js.map +0 -1
  307. package/lib/commonjs/shared/utils/bounds/helpers/styles.js.map +0 -1
  308. package/lib/module/shared/components/create-boundary-component/hooks/use-deferred-measurement-trigger.js +0 -49
  309. package/lib/module/shared/components/create-boundary-component/hooks/use-deferred-measurement-trigger.js.map +0 -1
  310. package/lib/module/shared/components/create-boundary-component/hooks/use-group-active-measurement.js +0 -118
  311. package/lib/module/shared/components/create-boundary-component/hooks/use-group-active-measurement.js.map +0 -1
  312. package/lib/module/shared/components/create-boundary-component/hooks/use-group-active-source-measurement.js +0 -67
  313. package/lib/module/shared/components/create-boundary-component/hooks/use-group-active-source-measurement.js.map +0 -1
  314. package/lib/module/shared/components/create-boundary-component/hooks/use-initial-layout-handler.js +0 -61
  315. package/lib/module/shared/components/create-boundary-component/hooks/use-initial-layout-handler.js.map +0 -1
  316. package/lib/module/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.js +0 -53
  317. package/lib/module/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.js.map +0 -1
  318. package/lib/module/shared/components/create-boundary-component/hooks/use-scroll-settled-measurement.js +0 -48
  319. package/lib/module/shared/components/create-boundary-component/hooks/use-scroll-settled-measurement.js.map +0 -1
  320. package/lib/module/shared/utils/bounds/helpers/build-bounds-options.js +0 -36
  321. package/lib/module/shared/utils/bounds/helpers/build-bounds-options.js.map +0 -1
  322. package/lib/module/shared/utils/bounds/helpers/compute-bounds-styles.js.map +0 -1
  323. package/lib/module/shared/utils/bounds/helpers/constants.js.map +0 -1
  324. package/lib/module/shared/utils/bounds/helpers/interpolate-style.js.map +0 -1
  325. package/lib/module/shared/utils/bounds/helpers/interpolate.js +0 -16
  326. package/lib/module/shared/utils/bounds/helpers/interpolate.js.map +0 -1
  327. package/lib/module/shared/utils/bounds/helpers/interpolators.js.map +0 -1
  328. package/lib/module/shared/utils/bounds/helpers/link-accessor.js.map +0 -1
  329. package/lib/module/shared/utils/bounds/helpers/resolve-bound-tag.js.map +0 -1
  330. package/lib/module/shared/utils/bounds/helpers/style-composers.js.map +0 -1
  331. package/lib/module/shared/utils/bounds/helpers/styles.js.map +0 -1
  332. package/lib/typescript/shared/components/create-boundary-component/hooks/use-deferred-measurement-trigger.d.ts +0 -11
  333. package/lib/typescript/shared/components/create-boundary-component/hooks/use-deferred-measurement-trigger.d.ts.map +0 -1
  334. package/lib/typescript/shared/components/create-boundary-component/hooks/use-group-active-measurement.d.ts +0 -17
  335. package/lib/typescript/shared/components/create-boundary-component/hooks/use-group-active-measurement.d.ts.map +0 -1
  336. package/lib/typescript/shared/components/create-boundary-component/hooks/use-group-active-source-measurement.d.ts +0 -11
  337. package/lib/typescript/shared/components/create-boundary-component/hooks/use-group-active-source-measurement.d.ts.map +0 -1
  338. package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-layout-handler.d.ts +0 -10
  339. package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-layout-handler.d.ts.map +0 -1
  340. package/lib/typescript/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.d.ts +0 -11
  341. package/lib/typescript/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.d.ts.map +0 -1
  342. package/lib/typescript/shared/components/create-boundary-component/hooks/use-scroll-settled-measurement.d.ts +0 -10
  343. package/lib/typescript/shared/components/create-boundary-component/hooks/use-scroll-settled-measurement.d.ts.map +0 -1
  344. package/lib/typescript/shared/utils/bounds/helpers/build-bounds-options.d.ts +0 -14
  345. package/lib/typescript/shared/utils/bounds/helpers/build-bounds-options.d.ts.map +0 -1
  346. package/lib/typescript/shared/utils/bounds/helpers/compute-bounds-styles.d.ts.map +0 -1
  347. package/lib/typescript/shared/utils/bounds/helpers/constants.d.ts.map +0 -1
  348. package/lib/typescript/shared/utils/bounds/helpers/interpolate-style.d.ts.map +0 -1
  349. package/lib/typescript/shared/utils/bounds/helpers/interpolate.d.ts +0 -2
  350. package/lib/typescript/shared/utils/bounds/helpers/interpolate.d.ts.map +0 -1
  351. package/lib/typescript/shared/utils/bounds/helpers/interpolators.d.ts.map +0 -1
  352. package/lib/typescript/shared/utils/bounds/helpers/link-accessor.d.ts.map +0 -1
  353. package/lib/typescript/shared/utils/bounds/helpers/resolve-bound-tag.d.ts +0 -7
  354. package/lib/typescript/shared/utils/bounds/helpers/resolve-bound-tag.d.ts.map +0 -1
  355. package/lib/typescript/shared/utils/bounds/helpers/style-composers.d.ts.map +0 -1
  356. package/lib/typescript/shared/utils/bounds/helpers/styles.d.ts.map +0 -1
  357. package/src/shared/components/create-boundary-component/hooks/use-deferred-measurement-trigger.ts +0 -58
  358. package/src/shared/components/create-boundary-component/hooks/use-group-active-measurement.ts +0 -162
  359. package/src/shared/components/create-boundary-component/hooks/use-group-active-source-measurement.ts +0 -82
  360. package/src/shared/components/create-boundary-component/hooks/use-initial-layout-handler.ts +0 -92
  361. package/src/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.ts +0 -87
  362. package/src/shared/components/create-boundary-component/hooks/use-scroll-settled-measurement.ts +0 -49
  363. package/src/shared/utils/bounds/helpers/build-bounds-options.ts +0 -48
  364. package/src/shared/utils/bounds/helpers/interpolate.ts +0 -19
  365. /package/lib/commonjs/shared/utils/bounds/{helpers/constants.js → constants.js} +0 -0
  366. /package/lib/commonjs/shared/utils/bounds/helpers/{styles.js → styles/styles.js} +0 -0
  367. /package/lib/module/shared/utils/bounds/{helpers/constants.js → constants.js} +0 -0
  368. /package/lib/module/shared/utils/bounds/helpers/{styles.js → styles/styles.js} +0 -0
  369. /package/lib/typescript/shared/utils/bounds/{helpers/constants.d.ts → constants.d.ts} +0 -0
  370. /package/lib/typescript/shared/utils/bounds/helpers/{styles.d.ts → styles/styles.d.ts} +0 -0
  371. /package/src/shared/utils/bounds/helpers/{link-accessor.ts → create-link-accessor.ts} +0 -0
  372. /package/src/shared/utils/bounds/helpers/{styles.ts → styles/styles.ts} +0 -0
@@ -21,8 +21,113 @@ export type BoundsLink = {
21
21
  };
22
22
  export type BoundsNavigationZoomOptions = {
23
23
  target?: "bound" | "fullscreen" | MeasuredDimensions;
24
- DEBUG?: boolean;
24
+ debug?: boolean;
25
25
  borderRadius?: number;
26
+ /**
27
+ * Focused-screen element opacity curve.
28
+ *
29
+ * `open` is used while presenting the destination screen.
30
+ * `close` is used while returning to the source screen.
31
+ *
32
+ * Tuple order:
33
+ * - `inputStart`: transition progress start
34
+ * - `inputEnd`: transition progress end
35
+ * - `outputStart`: opacity at `inputStart` (defaults to built-in preset)
36
+ * - `outputEnd`: opacity at `inputEnd` (defaults to built-in preset)
37
+ */
38
+ focusedElementOpacity?: BoundsNavigationZoomOpacityRanges;
39
+ /**
40
+ * Unfocused-screen matched element opacity curve.
41
+ *
42
+ * `open` is used while the previous screen animates out during present.
43
+ * `close` is used while the previous screen animates back in during dismiss.
44
+ *
45
+ * Tuple order:
46
+ * - `inputStart`: transition progress start
47
+ * - `inputEnd`: transition progress end
48
+ * - `outputStart`: opacity at `inputStart` (defaults to built-in preset)
49
+ * - `outputEnd`: opacity at `inputEnd` (defaults to built-in preset)
50
+ */
51
+ unfocusedElementOpacity?: BoundsNavigationZoomOpacityRanges;
52
+ /**
53
+ * Scale applied to the unfocused background content while the focused bound
54
+ * animates above it.
55
+ */
56
+ backgroundScale?: number;
57
+ /**
58
+ * Horizontal gesture drag scaling curve, applied when the active dismiss
59
+ * direction is horizontal.
60
+ *
61
+ * Tuple order:
62
+ * - `shrinkMin`: minimum scale when dragging toward dismissal
63
+ * - `growMax`: maximum scale when dragging opposite dismissal
64
+ * - `exponent`: curve exponent controlling how quickly scaling ramps
65
+ */
66
+ horizontalDragScale?: readonly [
67
+ shrinkMin: number,
68
+ growMax: number,
69
+ exponent?: number
70
+ ];
71
+ /**
72
+ * Vertical gesture drag scaling curve, applied when the active dismiss
73
+ * direction is vertical.
74
+ *
75
+ * Tuple order:
76
+ * - `shrinkMin`: minimum scale when dragging toward dismissal
77
+ * - `growMax`: maximum scale when dragging opposite dismissal
78
+ * - `exponent`: curve exponent controlling how quickly scaling ramps
79
+ */
80
+ verticalDragScale?: readonly [
81
+ shrinkMin: number,
82
+ growMax: number,
83
+ exponent?: number
84
+ ];
85
+ /**
86
+ * Horizontal gesture drag translation curve.
87
+ *
88
+ * Tuple order:
89
+ * - `negativeMax`: multiplier when dragging left / negative
90
+ * - `positiveMax`: multiplier when dragging right / positive
91
+ * - `exponent`: curve exponent controlling how quickly translation ramps
92
+ *
93
+ * Examples:
94
+ * - `[0, 0]` disables horizontal drag translation
95
+ * - `[0.5, 0.5]` halves horizontal drag travel
96
+ * - `[1.2, 1.2]` amplifies horizontal drag travel
97
+ */
98
+ horizontalDragTranslation?: readonly [
99
+ negativeMax: number,
100
+ positiveMax: number,
101
+ exponent?: number
102
+ ];
103
+ /**
104
+ * Vertical gesture drag translation curve.
105
+ *
106
+ * Tuple order:
107
+ * - `negativeMax`: multiplier when dragging up / negative
108
+ * - `positiveMax`: multiplier when dragging down / positive
109
+ * - `exponent`: curve exponent controlling how quickly translation ramps
110
+ *
111
+ * Examples:
112
+ * - `[0, 0]` disables vertical drag translation
113
+ * - `[0.5, 0.5]` halves vertical drag travel
114
+ * - `[1.2, 1.2]` amplifies vertical drag travel
115
+ */
116
+ verticalDragTranslation?: readonly [
117
+ negativeMax: number,
118
+ positiveMax: number,
119
+ exponent?: number
120
+ ];
121
+ };
122
+ export type BoundsNavigationZoomOpacityRange = readonly [
123
+ inputStart: number,
124
+ inputEnd: number,
125
+ outputStart?: number,
126
+ outputEnd?: number
127
+ ];
128
+ export type BoundsNavigationZoomOpacityRanges = {
129
+ open?: BoundsNavigationZoomOpacityRange;
130
+ close?: BoundsNavigationZoomOpacityRange;
26
131
  };
27
132
  export type BoundsNavigationZoomStyle = TransitionInterpolatedStyle & {
28
133
  content?: TransitionSlotStyle;
@@ -1 +1 @@
1
- {"version":3,"file":"bounds.types.d.ts","sourceRoot":"","sources":["../../../../src/shared/types/bounds.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EACN,kCAAkC,EAClC,gCAAgC,EAChC,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EACX,OAAO,EACP,aAAa,EACb,mBAAmB,EACnB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACX,wBAAwB,EACxB,2BAA2B,EAC3B,mBAAmB,EACnB,MAAM,mBAAmB,CAAC;AAE3B;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;AAE5D,MAAM,MAAM,UAAU,GAAG;IACxB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,MAAM,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACxB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,UAAU,GAAG,IAAI,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACzC,MAAM,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,kBAAkB,CAAC;IACrD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,2BAA2B,GAAG;IACrE,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,CAAC,kCAAkC,CAAC,CAAC,EAAE,mBAAmB,CAAC;IAC3D,CAAC,gCAAgC,CAAC,CAAC,EAAE,mBAAmB,CAAC;CACzD,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACtC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,2BAA2B,KAAK,yBAAyB,CAAC;CAC3E,CAAC;AAEF,KAAK,6BAA6B,GAAG;IACpC,UAAU,EAAE,wBAAwB,CAAC;CACrC,CAAC;AAEF,KAAK,gBAAgB,CAAC,CAAC,SAAS,aAAa,IAAI,mBAAmB,CAAC,CAAC,CAAC,GACtE,6BAA6B,CAAC;AAE/B,MAAM,MAAM,cAAc,GAAG;IAC5B,CAAC,CAAC,SAAS,aAAa,EAAE,OAAO,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC3D,WAAW,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC;IAC5D,OAAO,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,UAAU,GAAG,IAAI,CAAC;IAC5C,gBAAgB,EAAE,CACjB,EAAE,EAAE,OAAO,EACX,QAAQ,EAAE,MAAM,UAAU,EAC1B,QAAQ,CAAC,EAAE,MAAM,KACb,MAAM,CAAC;IACZ,iBAAiB,EAAE,CAClB,EAAE,EAAE,OAAO,EACX,QAAQ,EAAE,MAAM,kBAAkB,EAClC,mBAAmB,CAAC,EAAE,MAAM,GAAG,MAAM,EACrC,QAAQ,CAAC,EAAE,MAAM,KACb,MAAM,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAC1C,wBAAwB,EACxB,QAAQ,CACR,GAAG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC"}
1
+ {"version":3,"file":"bounds.types.d.ts","sourceRoot":"","sources":["../../../../src/shared/types/bounds.types.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  export { FALSE, TRUE } from "../constants";
2
2
  export type { AnimatedViewStyle, AnimationConfig, ScreenInterpolationProps, ScreenStyleInterpolator, ScreenTransitionState, TransitionInterpolatedStyle, TransitionSlotStyle, TransitionSpec, } from "./animation.types";
3
- export type { BoundsAccessor, BoundsMethod, BoundsNavigationAccessor, BoundsNavigationZoomOptions, BoundsNavigationZoomStyle, } from "./bounds.types";
3
+ export type { BoundsAccessor, BoundsMethod, BoundsNavigationAccessor, BoundsNavigationZoomOpacityRange, BoundsNavigationZoomOpacityRanges, BoundsNavigationZoomOptions, BoundsNavigationZoomStyle, } from "./bounds.types";
4
4
  export type { ActivationArea, GestureActivationArea, GestureDirection, GestureValues, SideActivation, } from "./gesture.types";
5
5
  export type { OverlayProps } from "./overlay.types";
6
6
  export type { Layout, ScreenKey, ScreenTransitionConfig, TransitionAwareProps, } from "./screen.types";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAC3C,YAAY,EACX,iBAAiB,EACjB,eAAe,EACf,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,2BAA2B,EAC3B,mBAAmB,EACnB,cAAc,GACd,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACX,cAAc,EACd,YAAY,EACZ,wBAAwB,EACxB,2BAA2B,EAC3B,yBAAyB,GACzB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACX,cAAc,EACd,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EACb,cAAc,GACd,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,YAAY,EACX,MAAM,EACN,SAAS,EACT,sBAAsB,EACtB,oBAAoB,GACpB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACX,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,cAAc,EACd,aAAa,GACb,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAC3C,YAAY,EACX,iBAAiB,EACjB,eAAe,EACf,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,2BAA2B,EAC3B,mBAAmB,EACnB,cAAc,GACd,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACX,cAAc,EACd,YAAY,EACZ,wBAAwB,EACxB,gCAAgC,EAChC,iCAAiC,EACjC,2BAA2B,EAC3B,yBAAyB,GACzB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACX,cAAc,EACd,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EACb,cAAc,GACd,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,YAAY,EACX,MAAM,EACN,SAAS,EACT,sBAAsB,EACtB,oBAAoB,GACpB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACX,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,cAAc,EACd,aAAa,GACb,MAAM,eAAe,CAAC"}
@@ -13,9 +13,10 @@ interface AnimateToProgressProps {
13
13
  onAnimationFinish?: (finished: boolean) => void;
14
14
  animations: AnimationStoreMap;
15
15
  targetProgress: SharedValue<number>;
16
+ emitWillAnimate?: boolean;
16
17
  /** Optional initial velocity for spring-based progress (units: progress/sec). */
17
18
  initialVelocity?: number;
18
19
  }
19
- export declare const animateToProgress: ({ target, spec, onAnimationFinish, animations, targetProgress, initialVelocity, }: AnimateToProgressProps) => void;
20
+ export declare const animateToProgress: ({ target, spec, onAnimationFinish, animations, targetProgress, emitWillAnimate, initialVelocity, }: AnimateToProgressProps) => void;
20
21
  export {};
21
22
  //# sourceMappingURL=animate-to-progress.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"animate-to-progress.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/animation/animate-to-progress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAGlE,UAAU,sBAAsB;IAC/B;;;;;OAKG;IACH,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IAClC,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,UAAU,EAAE,iBAAiB,CAAC;IAC9B,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,iBAAiB,GAAI,mFAO/B,sBAAsB,SA+DxB,CAAC"}
1
+ {"version":3,"file":"animate-to-progress.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/animation/animate-to-progress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAGlE,UAAU,sBAAsB;IAC/B;;;;;OAKG;IACH,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IAClC,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,UAAU,EAAE,iBAAiB,CAAC;IAC9B,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,iBAAiB,GAAI,oGAQ/B,sBAAsB,SAuExB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/bounds/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,sBAAsB;;;;;;;CAOkC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { BoundId } from "../types/options";
2
+ export type ResolveBoundTagParams = {
3
+ id?: BoundId;
4
+ group?: string;
5
+ };
6
+ export declare const createBoundTag: ({ id, group, }: ResolveBoundTagParams) => string | undefined;
7
+ //# sourceMappingURL=create-bound-tag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-bound-tag.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/helpers/create-bound-tag.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,MAAM,qBAAqB,GAAG;IACnC,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,gBAG5B,qBAAqB,KAAG,MAAM,GAAG,SAYnC,CAAC"}
@@ -1,7 +1,7 @@
1
- import type { MeasuredDimensions } from "react-native-reanimated";
1
+ import { type MeasuredDimensions } from "react-native-reanimated";
2
2
  import type { ScreenInterpolationProps } from "../../../types/animation.types";
3
3
  import type { BoundId } from "../types/options";
4
- import type { LinkAccessor } from "./link-accessor";
4
+ import type { LinkAccessor } from "./create-link-accessor";
5
5
  type InterpolatorParams = {
6
6
  getProps: () => Omit<ScreenInterpolationProps, "bounds">;
7
7
  getLink: LinkAccessor["getLink"];
@@ -11,4 +11,4 @@ export declare const createInterpolators: ({ getProps, getLink, }: InterpolatorP
11
11
  interpolateBounds: (tag: BoundId, property: keyof MeasuredDimensions, fallbackOrTargetKey?: number | string, fallback?: number) => number;
12
12
  };
13
13
  export {};
14
- //# sourceMappingURL=interpolators.d.ts.map
14
+ //# sourceMappingURL=create-interpolators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-interpolators.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/helpers/create-interpolators.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,KAAK,kBAAkB,EACvB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAG3D,KAAK,kBAAkB,GAAG;IACzB,QAAQ,EAAE,MAAM,IAAI,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;IACzD,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,wBAGjC,kBAAkB;4BAId,OAAO,YACF,MAAM,aACL,MAAM,KACf,MAAM;6BAkEH,OAAO,YACF,MAAM,kBAAkB,wBACZ,MAAM,GAAG,MAAM,aAC1B,MAAM,KACf,MAAM;CAmBT,CAAC"}
@@ -9,4 +9,4 @@ export type LinkAccessor = {
9
9
  };
10
10
  export declare const createLinkAccessor: (getProps: GetProps) => LinkAccessor;
11
11
  export {};
12
- //# sourceMappingURL=link-accessor.d.ts.map
12
+ //# sourceMappingURL=create-link-accessor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-link-accessor.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/helpers/create-link-accessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEhD,KAAK,QAAQ,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;AAE/D,MAAM,MAAM,YAAY,GAAG;IAC1B,WAAW,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC;IAC7D,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,UAAU,GAAG,IAAI,CAAC;CAC7C,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,UAAU,QAAQ,KAAG,YA+BvD,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { type ResolvedTransitionPair } from "../../../stores/bounds";
2
+ import type { ScreenInterpolationProps } from "../../../types/animation.types";
3
+ import type { BoundId, BoundsOptions, BoundsOptionsResult } from "../types/options";
4
+ type BaseInterpolatorProps = Omit<ScreenInterpolationProps, "bounds">;
5
+ type ComputeResolvedBoundsStylesParams<T extends BoundsOptions> = {
6
+ props: BaseInterpolatorProps;
7
+ options: T;
8
+ resolvedPair?: ResolvedTransitionPair;
9
+ syncGroupActiveId?: boolean;
10
+ };
11
+ type BuildBoundsOptionsParams = {
12
+ props: Omit<ScreenInterpolationProps, "bounds">;
13
+ id?: BoundId;
14
+ group?: string;
15
+ overrides?: Partial<BoundsOptions>;
16
+ };
17
+ export declare const buildBoundsOptions: ({ props, id, group, overrides, }: BuildBoundsOptionsParams) => BoundsOptions;
18
+ export declare const prepareBoundStyles: <T extends BoundsOptions>({ props, options, resolvedPair, syncGroupActiveId, }: ComputeResolvedBoundsStylesParams<T>) => BoundsOptionsResult<T>;
19
+ export {};
20
+ //# sourceMappingURL=prepare-bound-styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepare-bound-styles.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/helpers/prepare-bound-styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,sBAAsB,EAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE/E,OAAO,KAAK,EACX,OAAO,EACP,aAAa,EACb,mBAAmB,EACnB,MAAM,kBAAkB,CAAC;AAI1B,KAAK,qBAAqB,GAAG,IAAI,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;AAEtE,KAAK,iCAAiC,CAAC,CAAC,SAAS,aAAa,IAAI;IACjE,KAAK,EAAE,qBAAqB,CAAC;IAC7B,OAAO,EAAE,CAAC,CAAC;IACX,YAAY,CAAC,EAAE,sBAAsB,CAAC;IACtC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC/B,KAAK,EAAE,IAAI,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;IAChD,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,kCAKhC,wBAAwB,KAAG,aAoB7B,CAAC;AAaF,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,aAAa,EAAE,sDAKzD,iCAAiC,CAAC,CAAC,CAAC,KAAG,mBAAmB,CAAC,CAAC,CA0B9D,CAAC"}
@@ -1,6 +1,6 @@
1
- import type { MeasuredDimensions, StyleProps } from "react-native-reanimated";
2
- import type { ContentTransformGeometry, RelativeGeometry } from "../types/geometry";
3
- import type { BoundsOptions } from "../types/options";
1
+ import { type MeasuredDimensions, type StyleProps } from "react-native-reanimated";
2
+ import type { ContentTransformGeometry, RelativeGeometry } from "../../types/geometry";
3
+ import type { BoundsOptions } from "../../types/options";
4
4
  /**
5
5
  * Element-level (relative) params shared by size/transform composers.
6
6
  * - start/end: absolute window bounds of the element in previous/next phases
@@ -36,4 +36,4 @@ export declare function composeTransformAbsolute(params: ElementComposeParams):
36
36
  export declare function composeTransformRelative(params: ElementComposeParams): StyleProps;
37
37
  export declare function composeContentStyle(params: ContentComposeParams): StyleProps;
38
38
  export {};
39
- //# sourceMappingURL=style-composers.d.ts.map
39
+ //# sourceMappingURL=composers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"composers.d.ts","sourceRoot":"","sources":["../../../../../../../src/shared/utils/bounds/helpers/styles/composers.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,KAAK,kBAAkB,EACvB,KAAK,UAAU,EACf,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EACX,wBAAwB,EACxB,gBAAgB,EAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAgB,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEvE;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG;IAClC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,GAAG,EAAE,kBAAkB,CAAC;IACxB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,cAAc,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF;;;;;;GAMG;AACH,KAAK,oBAAoB,GAAG;IAC3B,KAAK,EAAE,kBAAkB,CAAC;IAC1B,GAAG,EAAE,kBAAkB,CAAC;IACxB,QAAQ,EAAE,wBAAwB,CAAC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,cAAc,EAAE,aAAa,CAAC;CAC9B,CAAC;AAiEF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,oBAAoB,GAAG,UAAU,CAqD5E;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,oBAAoB,GAAG,UAAU,CAsD5E;AAED,wBAAgB,wBAAwB,CACvC,MAAM,EAAE,oBAAoB,GAC1B,UAAU,CA6DZ;AAED,wBAAgB,wBAAwB,CACvC,MAAM,EAAE,oBAAoB,GAC1B,UAAU,CAgDZ;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,oBAAoB,GAAG,UAAU,CAiC5E"}
@@ -1,4 +1,4 @@
1
- import { type ResolvedTransitionPair } from "../../../stores/bounds";
2
- import type { BoundsComputeParams, BoundsOptions } from "../types/options";
1
+ import { type ResolvedTransitionPair } from "../../../../stores/bounds";
2
+ import type { BoundsComputeParams, BoundsOptions } from "../../types/options";
3
3
  export declare const computeBoundStyles: ({ id, previous, current, next, progress, dimensions }: BoundsComputeParams, computeOptions?: BoundsOptions, resolvedPair?: ResolvedTransitionPair) => Readonly<{}>;
4
- //# sourceMappingURL=compute-bounds-styles.d.ts.map
4
+ //# sourceMappingURL=compute.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compute.d.ts","sourceRoot":"","sources":["../../../../../../../src/shared/utils/bounds/helpers/styles/compute.ts"],"names":[],"mappings":"AASA,OAAO,EAEN,KAAK,sBAAsB,EAC3B,MAAM,2BAA2B,CAAC;AAGnC,OAAO,KAAK,EAEX,mBAAmB,EACnB,aAAa,EACb,MAAM,qBAAqB,CAAC;AAiG7B,eAAO,MAAM,kBAAkB,GAC9B,uDAAuD,mBAAmB,EAC1E,iBAAgB,aAAkC,EAClD,eAAe,sBAAsB,iBA0FrC,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { BoundsLink } from "../../../types/bounds.types";
1
+ import type { BoundsLink } from "../../../../types/bounds.types";
2
2
  type InterpolateStyleOptions = {
3
3
  fallback?: number;
4
4
  };
@@ -14,4 +14,4 @@ type InterpolateStyleOptions = {
14
14
  */
15
15
  export declare function interpolateLinkStyle(link: BoundsLink | null, property: string, progress: number, entering: boolean, options?: InterpolateStyleOptions): number;
16
16
  export {};
17
- //# sourceMappingURL=interpolate-style.d.ts.map
17
+ //# sourceMappingURL=interpolate-link-style.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpolate-link-style.d.ts","sourceRoot":"","sources":["../../../../../../../src/shared/utils/bounds/helpers/styles/interpolate-link-style.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAEjE,KAAK,uBAAuB,GAAG;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CACnC,IAAI,EAAE,UAAU,GAAG,IAAI,EACvB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,EACjB,OAAO,GAAE,uBAA4B,GACnC,MAAM,CAkBR"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../../../../src/shared/utils/bounds/helpers/styles/styles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGhF,KAAK,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;AACnD,KAAK,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AACtC,KAAK,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAqD5C,wBAAgB,qBAAqB,CACpC,KAAK,EAAE,UAAU,GAAG,SAAS,GAC3B,gBAAgB,CAOlB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/bounds/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,cAAc,EACd,wBAAwB,EAExB,MAAM,0BAA0B,CAAC;AAoBlC,eAAO,MAAM,oBAAoB,GAChC,UAAU,MAAM,wBAAwB,KACtC,cA6EF,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/bounds/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,cAAc,EACd,wBAAwB,EAExB,MAAM,0BAA0B,CAAC;AAQlC,eAAO,MAAM,oBAAoB,GAChC,UAAU,MAAM,wBAAwB,KACtC,cAmDF,CAAC"}
@@ -75,8 +75,9 @@ export type BoundsOptions = {
75
75
  /**
76
76
  * Coordinate space selection.
77
77
  *
78
- * For `bounds({ ... })` element styles, space is normalized to `"relative"`.
79
- * `"absolute"` is reserved for internal navigation helpers (e.g. mask geometry).
78
+ * - `"relative"` composes movement relative to the current element's layout box
79
+ * - `"absolute"` composes movement in screen/window coordinates
80
+ *
80
81
  * @default "relative"
81
82
  */
82
83
  space?: BoundsSpace;
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/types/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/types/options.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/zoom/build.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAoE5E,wBAAgB,eAAe,CAAC,EAC/B,WAAW,EACX,WAAW,EACX,KAAK,GACL,EAAE,qBAAqB,GAAG,qBAAqB,CAsU/C"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/zoom/build.ts"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAsL5E,wBAAgB,eAAe,CAAC,EAC/B,WAAW,EACX,WAAW,EACX,KAAK,GACL,EAAE,qBAAqB,GAAG,qBAAqB,CAwa/C"}
@@ -6,6 +6,15 @@ export declare const ZOOM_SHARED_OPTIONS: Readonly<{
6
6
  export declare const ZOOM_DRAG_RESISTANCE = 0.4;
7
7
  export declare const ZOOM_DRAG_DIRECTIONAL_SCALE_MIN = 0.25;
8
8
  export declare const ZOOM_DRAG_DIRECTIONAL_SCALE_MAX = 1.06;
9
+ export declare const ZOOM_DRAG_DIRECTIONAL_SCALE_EXPONENT = 2;
10
+ export declare const ZOOM_DRAG_TRANSLATION_NEGATIVE_MAX = 1;
11
+ export declare const ZOOM_DRAG_TRANSLATION_POSITIVE_MAX = 1;
12
+ export declare const ZOOM_DRAG_TRANSLATION_EXPONENT = 1;
13
+ export declare const ZOOM_BACKGROUND_SCALE = 0.9375;
14
+ export declare const ZOOM_FOCUSED_ELEMENT_OPEN_OPACITY_RANGE: readonly [0, 0.5, 0, 1];
15
+ export declare const ZOOM_FOCUSED_ELEMENT_CLOSE_OPACITY_RANGE: readonly [0.6, 1, 0, 1];
16
+ export declare const ZOOM_UNFOCUSED_ELEMENT_OPEN_OPACITY_RANGE: readonly [1, 2, 1, 0];
17
+ export declare const ZOOM_UNFOCUSED_ELEMENT_CLOSE_OPACITY_RANGE: readonly [1.9, 2, 1, 0];
9
18
  export declare const ZOOM_MASK_OUTSET: Readonly<{
10
19
  top: 0;
11
20
  right: 0;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/zoom/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,eAAO,MAAM,mBAAmB;;;EAG9B,CAAC;AAEH,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,+BAA+B,OAAO,CAAC;AACpD,eAAO,MAAM,+BAA+B,OAAO,CAAC;AAEpD,eAAO,MAAM,gBAAgB;;;;;EAK3B,CAAC;AAEH,eAAO,MAAM,aAAa,GACzB,QAAQ,aAAa,CAAC,QAAQ,CAAC,GAAG,SAAS,KACzC,aAAa,CAAC,QAAQ,CAGxB,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,OAAO,OAAO,EAAE,iBAAY,KAAG,MAGvD,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/zoom/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,eAAO,MAAM,mBAAmB;;;EAG9B,CAAC;AAEH,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,+BAA+B,OAAO,CAAC;AACpD,eAAO,MAAM,+BAA+B,OAAO,CAAC;AACpD,eAAO,MAAM,oCAAoC,IAAI,CAAC;AACtD,eAAO,MAAM,kCAAkC,IAAI,CAAC;AACpD,eAAO,MAAM,kCAAkC,IAAI,CAAC;AACpD,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAChD,eAAO,MAAM,qBAAqB,SAAS,CAAC;AAC5C,eAAO,MAAM,uCAAuC,yBAA0B,CAAC;AAC/E,eAAO,MAAM,wCAAwC,yBAA0B,CAAC;AAChF,eAAO,MAAM,yCAAyC,uBAAwB,CAAC;AAC/E,eAAO,MAAM,0CAA0C,yBAE7C,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;;;EAK3B,CAAC;AAEH,eAAO,MAAM,aAAa,GACzB,QAAQ,aAAa,CAAC,QAAQ,CAAC,GAAG,SAAS,KACzC,aAAa,CAAC,QAAQ,CAGxB,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,OAAO,OAAO,EAAE,iBAAY,KAAG,MAGvD,CAAC"}
@@ -41,4 +41,21 @@ export declare const resolveDirectionalDragScale: ({ normalized, dismissDirectio
41
41
  growMax: number;
42
42
  exponent: number;
43
43
  }) => number;
44
+ export declare const resolveDirectionalDragTranslation: ({ normalized, dimension, resistance, negativeMax, positiveMax, exponent, }: {
45
+ normalized: number;
46
+ dimension: number;
47
+ resistance: number;
48
+ negativeMax: number;
49
+ positiveMax: number;
50
+ exponent?: number;
51
+ }) => number;
52
+ export declare const resolveOpacityRangeTuple: ({ value, fallback, }: {
53
+ value: readonly [inputStart: number, inputEnd: number, outputStart?: number, outputEnd?: number] | undefined;
54
+ fallback: readonly [inputStart: number, inputEnd: number, outputStart?: number, outputEnd?: number];
55
+ }) => {
56
+ inputStart: number;
57
+ inputEnd: number;
58
+ outputStart: number;
59
+ outputEnd: number;
60
+ };
44
61
  //# sourceMappingURL=math.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/zoom/math.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,CAAC;AAEvE,eAAO,MAAM,KAAK,GAAI,OAAO,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,MAAM,KAAG,MAS/D,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,OAAO,MAAM,KAAG,MAGvC,CAAC;AAEF,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,EAAE,IAAI,MAAM,EAAE,GAAG,MAAM,KAAG,MAG1D,CAAC;AAEF,eAAO,MAAM,UAAU,GACtB,WAAW,MAAM,EACjB,aAAa,MAAM,EACnB,iBAAY,KACV,MAIF,CAAC;AAEF,eAAO,MAAM,WAAW,GACvB,OAAO,MAAM,EACb,OAAO,MAAM,EACb,OAAO,MAAM,KACX,MAGF,CAAC;AAEF,eAAO,MAAM,eAAe,GAC3B,OAAO,MAAM,EACb,OAAO,MAAM,EACb,OAAO,MAAM,EACb,QAAQ,MAAM,EACd,QAAQ,MAAM,KACZ,MAIF,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,OAAO,MAAM,EAAE,UAAU,MAAM,KAAG,MAKjE,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,wCAIrC;IACF,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACnB,KAAG,MAIH,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,sDAK/B;IACF,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB,KAAG,MAQH,CAAC;AAEF,eAAO,MAAM,aAAa,GACzB,QAAQ,MAAM,EACd,QAAQ,MAAM,EACd,OAAM,iBAA8B,KAClC,MAaF,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,qCAIrC;IACF,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;CACd,KAAG,MAGH,CAAC;AAEF,eAAO,MAAM,mCAAmC,GAAI,wCAIjD;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CAChB,KAAG,MAIH,CAAC;AAEF,eAAO,MAAM,6BAA6B,GAAI,iDAK3C;IACF,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CAChB,KAAG,MASH,CAAC;AAEF,eAAO,MAAM,2BAA2B,GAAI,iEAMzC;IACF,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,UAAU,GAAG,UAAU,CAAC;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CACjB,WAgBA,CAAC"}
1
+ {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/utils/bounds/zoom/math.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-screen-transitions",
3
- "version": "3.4.0-alpha.7",
3
+ "version": "3.4.0-beta.1",
4
4
  "description": "Easy screen transitions for React Native and Expo",
5
5
  "author": "Ed",
6
6
  "license": "MIT",
@@ -15,21 +15,23 @@ export const BoundaryTarget = memo(function BoundaryTarget(
15
15
  const { style, ...rest } = props;
16
16
  const targetAnimatedRef = useAnimatedRef<View>();
17
17
  const ownerContext = useBoundaryOwnerContext();
18
+ const registerTargetRef = ownerContext?.registerTargetRef;
19
+ const unregisterTargetRef = ownerContext?.unregisterTargetRef;
18
20
  const isActiveTarget = ownerContext?.activeTargetRef === targetAnimatedRef;
19
21
 
20
22
  useLayoutEffect(() => {
21
- if (!ownerContext) {
23
+ if (!registerTargetRef || !unregisterTargetRef) {
22
24
  if (__DEV__) {
23
25
  console.warn(TARGET_OUTSIDE_OWNER_WARNING);
24
26
  }
25
27
  return;
26
28
  }
27
29
 
28
- ownerContext.registerTargetRef(targetAnimatedRef);
30
+ registerTargetRef(targetAnimatedRef);
29
31
  return () => {
30
- ownerContext.unregisterTargetRef(targetAnimatedRef);
32
+ unregisterTargetRef(targetAnimatedRef);
31
33
  };
32
- }, [ownerContext, targetAnimatedRef]);
34
+ }, [registerTargetRef, unregisterTargetRef, targetAnimatedRef]);
33
35
 
34
36
  return (
35
37
  <Animated.View
@@ -3,6 +3,7 @@ import {
3
3
  forwardRef,
4
4
  memo,
5
5
  useCallback,
6
+ useImperativeHandle,
6
7
  useMemo,
7
8
  } from "react";
8
9
  import type { View } from "react-native";
@@ -16,16 +17,12 @@ import { useDescriptorDerivations } from "../../providers/screen/descriptors";
16
17
  import { useScreenStyles } from "../../providers/screen/styles";
17
18
  import { AnimationStore } from "../../stores/animation.store";
18
19
  import { BoundStore } from "../../stores/bounds";
19
- import { prepareStyleForBounds } from "../../utils/bounds/helpers/styles";
20
+ import { prepareStyleForBounds } from "../../utils/bounds/helpers/styles/styles";
20
21
  import { useAutoSourceMeasurement } from "./hooks/use-auto-source-measurement";
21
22
  import { useBoundaryMeasureAndStore } from "./hooks/use-boundary-measure-and-store";
22
23
  import { useBoundaryPresence } from "./hooks/use-boundary-presence";
23
- import { useGroupActiveMeasurement } from "./hooks/use-group-active-measurement";
24
- import { useGroupActiveSourceMeasurement } from "./hooks/use-group-active-source-measurement";
25
- import { useInitialLayoutHandler } from "./hooks/use-initial-layout-handler";
26
24
  import { usePendingDestinationMeasurement } from "./hooks/use-pending-destination-measurement";
27
- import { usePendingDestinationRetryMeasurement } from "./hooks/use-pending-destination-retry-measurement";
28
- import { useScrollSettledMeasurement } from "./hooks/use-scroll-settled-measurement";
25
+ import { usePreTransitionMeasurement } from "./hooks/use-pre-transition-measurement";
29
26
  import {
30
27
  BoundaryOwnerProvider,
31
28
  useBoundaryOwner,
@@ -49,7 +46,7 @@ export function createBoundaryComponent<P extends object>(
49
46
  const Inner = forwardRef<
50
47
  React.ComponentRef<typeof AnimatedComponent>,
51
48
  BoundaryComponentProps<P>
52
- >((props, _ref) => {
49
+ >((props, forwardedRef) => {
53
50
  const ownerRef = useAnimatedRef<View>();
54
51
  const {
55
52
  enabled = true,
@@ -78,7 +75,6 @@ export function createBoundaryComponent<P extends object>(
78
75
 
79
76
  const runtimeEnabled = enabled && hasConfiguredInterpolator;
80
77
  const hasNextScreen = !!nextScreenKey;
81
- const shouldUpdateDestination = !hasNextScreen;
82
78
  const boundaryConfig = useMemo<BoundaryConfigProps | undefined>(() => {
83
79
  if (
84
80
  anchor === undefined &&
@@ -132,7 +128,7 @@ export function createBoundaryComponent<P extends object>(
132
128
 
133
129
  const { contextValue, measuredRef, hasActiveTarget } = useBoundaryOwner({
134
130
  ownerRef,
135
- associatedTargetStyles: enabled ? associatedStyles : undefined,
131
+ associatedTargetStyles: runtimeEnabled ? associatedStyles : undefined,
136
132
  });
137
133
 
138
134
  const maybeMeasureAndStore = useBoundaryMeasureAndStore({
@@ -143,7 +139,6 @@ export function createBoundaryComponent<P extends object>(
143
139
  ancestorKeys,
144
140
  navigatorKey,
145
141
  ancestorNavigatorKeys,
146
- isAnimating,
147
142
  preparedStyles,
148
143
  measuredAnimatedRef: measuredRef,
149
144
  });
@@ -167,71 +162,38 @@ export function createBoundaryComponent<P extends object>(
167
162
  useAutoSourceMeasurement({
168
163
  enabled: runtimeEnabled,
169
164
  sharedBoundTag,
165
+ id,
166
+ group,
170
167
  nextScreenKey,
171
168
  maybeMeasureAndStore,
172
169
  });
173
170
 
174
- // Primary destination capture: once a pending source link exists for this tag,
175
- // measure destination bounds and complete the pair.
171
+ // Destination completion path: do one immediate completion attempt when a
172
+ // pending source link appears, then retry during transition progress if the
173
+ // first attempt races layout readiness.
176
174
  usePendingDestinationMeasurement({
177
175
  sharedBoundTag,
178
176
  enabled: shouldRunDestinationEffects,
179
- expectedSourceScreenKey: preferredSourceScreenKey,
180
- maybeMeasureAndStore,
181
- });
182
-
183
- // Reliability fallback: retry destination capture during transition progress
184
- // when the initial pending-destination attempt happens before layout is ready.
185
- usePendingDestinationRetryMeasurement({
186
- sharedBoundTag,
187
- enabled: shouldRunDestinationEffects,
177
+ id,
178
+ group,
188
179
  currentScreenKey,
189
180
  expectedSourceScreenKey: preferredSourceScreenKey,
190
181
  animating: isAnimating,
191
182
  maybeMeasureAndStore,
192
183
  });
193
184
 
194
- // Grouped boundaries (e.g. paged/detail UIs): re-measure when this boundary
195
- // becomes the active member so destination bounds stay accurate.
196
- useGroupActiveMeasurement({
185
+ // Pre-transition measurement path: when this route or its next sibling is
186
+ // about to animate, capture or refresh the measurements needed before
187
+ // progress or transform state mutates. Grouped sources refresh existing
188
+ // links; plain sources only backfill when missing.
189
+ usePreTransitionMeasurement({
197
190
  enabled: runtimeEnabled,
198
- group,
199
- id,
200
- currentScreenKey,
201
- shouldUpdateDestination,
202
- maybeMeasureAndStore,
203
- });
204
-
205
- // Source-side grouped retargeting: when an unfocused/source boundary
206
- // becomes the active member, refresh its snapshot and source link so
207
- // close transitions do not use stale pre-scroll geometry.
208
- useGroupActiveSourceMeasurement({
209
- enabled: runtimeEnabled,
210
- group,
191
+ sharedBoundTag,
211
192
  id,
212
- hasNextScreen,
213
- isAnimating,
214
- maybeMeasureAndStore,
215
- });
216
-
217
- // While idle on source screens, re-measure after scroll settles so a later
218
- // close transition starts from up-to-date source geometry.
219
- useScrollSettledMeasurement({
220
- enabled: runtimeEnabled,
221
193
  group,
222
- hasNextScreen,
223
- isAnimating,
224
- maybeMeasureAndStore,
225
- });
226
-
227
- // Destination mount-time capture path: onLayout schedules a one-time UI-thread
228
- // initial measurement when transitions are active.
229
- useInitialLayoutHandler({
230
- enabled: runtimeEnabled,
231
- sharedBoundTag,
232
194
  currentScreenKey,
233
- ancestorKeys,
234
- expectedSourceScreenKey: preferredSourceScreenKey,
195
+ nextScreenKey,
196
+ hasNextScreen,
235
197
  maybeMeasureAndStore,
236
198
  });
237
199
 
@@ -253,6 +215,10 @@ export function createBoundaryComponent<P extends object>(
253
215
  const resolvedOnPress =
254
216
  typeof onPress === "function" ? handlePress : undefined;
255
217
 
218
+ useImperativeHandle(forwardedRef, () => ownerRef.current as any, [
219
+ ownerRef,
220
+ ]);
221
+
256
222
  return (
257
223
  <BoundaryOwnerProvider value={contextValue}>
258
224
  <AnimatedComponent
@@ -260,7 +226,7 @@ export function createBoundaryComponent<P extends object>(
260
226
  ref={ownerRef}
261
227
  style={[
262
228
  style,
263
- enabled
229
+ runtimeEnabled
264
230
  ? hasActiveTarget
265
231
  ? associatedStackingStyles
266
232
  : associatedStyles
@@ -273,7 +239,9 @@ export function createBoundaryComponent<P extends object>(
273
239
  );
274
240
  });
275
241
 
276
- return memo(Inner) as unknown as React.MemoExoticComponent<
242
+ return memo(
243
+ Animated.createAnimatedComponent(Inner),
244
+ ) as unknown as React.MemoExoticComponent<
277
245
  React.ForwardRefExoticComponent<
278
246
  BoundaryComponentProps<P> &
279
247
  React.RefAttributes<React.ComponentRef<typeof Wrapped>>
@@ -7,7 +7,11 @@ export const resolvePendingSourceKey = (
7
7
  "worklet";
8
8
  if (
9
9
  expectedSourceScreenKey &&
10
- BoundStore.hasPendingLinkFromSource(sharedBoundTag, expectedSourceScreenKey)
10
+ (BoundStore.hasPendingLinkFromSource(
11
+ sharedBoundTag,
12
+ expectedSourceScreenKey,
13
+ ) ||
14
+ BoundStore.hasSourceLink(sharedBoundTag, expectedSourceScreenKey))
11
15
  ) {
12
16
  return expectedSourceScreenKey;
13
17
  }