react-native-screen-transitions 3.8.0-beta.0 → 3.8.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 (353) hide show
  1. package/lib/commonjs/shared/animation/snap-to.js +1 -1
  2. package/lib/commonjs/shared/animation/snap-to.js.map +1 -1
  3. package/lib/commonjs/shared/components/activity/variants/activity-screen.js +10 -2
  4. package/lib/commonjs/shared/components/activity/variants/activity-screen.js.map +1 -1
  5. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js +2 -2
  6. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js.map +1 -1
  7. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-refresh-boundary.js +1 -1
  8. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +1 -1
  9. package/lib/commonjs/shared/components/overlay/variations/float-overlay.js +9 -6
  10. package/lib/commonjs/shared/components/overlay/variations/float-overlay.js.map +1 -1
  11. package/lib/commonjs/shared/components/screen-container/hooks/use-content-layout.js +2 -2
  12. package/lib/commonjs/shared/components/screen-container/hooks/use-content-layout.js.map +1 -1
  13. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js +1 -1
  14. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
  15. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js +2 -2
  16. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
  17. package/lib/commonjs/shared/configs/presets.js +5 -8
  18. package/lib/commonjs/shared/configs/presets.js.map +1 -1
  19. package/lib/commonjs/shared/constants.js +18 -2
  20. package/lib/commonjs/shared/constants.js.map +1 -1
  21. package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js +2 -8
  22. package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -1
  23. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js +26 -31
  24. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js.map +1 -1
  25. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +29 -4
  26. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  27. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +3 -3
  28. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  29. package/lib/commonjs/shared/providers/screen/animation/helpers/stack-progress.js +3 -3
  30. package/lib/commonjs/shared/providers/screen/animation/helpers/stack-progress.js.map +1 -1
  31. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js +2 -2
  32. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  33. package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js +6 -7
  34. package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
  35. package/lib/commonjs/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js +3 -7
  36. package/lib/commonjs/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
  37. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js +1 -1
  38. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js.map +1 -1
  39. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +7 -4
  40. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  41. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +20 -36
  42. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  43. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-release.js +12 -21
  44. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-release.js.map +1 -1
  45. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-reset.js +40 -39
  46. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
  47. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +11 -21
  48. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -1
  49. package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +4 -11
  50. package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  51. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +12 -10
  52. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  53. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +13 -10
  54. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  55. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js +15 -11
  56. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
  57. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js +28 -23
  58. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
  59. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js +3 -3
  60. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -1
  61. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js +4 -11
  62. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
  63. package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +12 -10
  64. package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +1 -1
  65. package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +3 -10
  66. package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +1 -1
  67. package/lib/commonjs/shared/providers/screen/gestures/shared/physics.js +23 -23
  68. package/lib/commonjs/shared/providers/screen/gestures/shared/physics.js.map +1 -1
  69. package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js +0 -11
  70. package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js.map +1 -1
  71. package/lib/commonjs/shared/providers/screen/gestures/shared/reset.js +17 -10
  72. package/lib/commonjs/shared/providers/screen/gestures/shared/reset.js.map +1 -1
  73. package/lib/commonjs/shared/providers/screen/gestures/shared/snap-points.js +6 -7
  74. package/lib/commonjs/shared/providers/screen/gestures/shared/snap-points.js.map +1 -1
  75. package/lib/commonjs/shared/providers/screen/gestures/shared/snapshot.js +32 -0
  76. package/lib/commonjs/shared/providers/screen/gestures/shared/snapshot.js.map +1 -0
  77. package/lib/commonjs/shared/providers/screen/gestures/shared/values.js +65 -0
  78. package/lib/commonjs/shared/providers/screen/gestures/shared/values.js.map +1 -0
  79. package/lib/commonjs/shared/providers/screen/gestures/types.js +1 -1
  80. package/lib/commonjs/shared/providers/screen/gestures/types.js.map +1 -1
  81. package/lib/commonjs/shared/providers/screen/options/helpers.js +1 -19
  82. package/lib/commonjs/shared/providers/screen/options/helpers.js.map +1 -1
  83. package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +8 -8
  84. package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  85. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +2 -2
  86. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  87. package/lib/commonjs/shared/stores/animation.store.js +6 -6
  88. package/lib/commonjs/shared/stores/animation.store.js.map +1 -1
  89. package/lib/commonjs/shared/stores/gesture.store.js +56 -0
  90. package/lib/commonjs/shared/stores/gesture.store.js.map +1 -1
  91. package/lib/commonjs/shared/types/gesture.types.js +6 -0
  92. package/lib/commonjs/shared/types/gesture.types.js.map +1 -1
  93. package/lib/commonjs/shared/utils/animation/animate-to-progress.js +3 -3
  94. package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
  95. package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js +1 -1
  96. package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
  97. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js +39 -34
  98. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  99. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +37 -28
  100. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  101. package/lib/module/shared/animation/snap-to.js +1 -1
  102. package/lib/module/shared/animation/snap-to.js.map +1 -1
  103. package/lib/module/shared/components/activity/variants/activity-screen.js +10 -2
  104. package/lib/module/shared/components/activity/variants/activity-screen.js.map +1 -1
  105. package/lib/module/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js +2 -2
  106. package/lib/module/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js.map +1 -1
  107. package/lib/module/shared/components/create-boundary-component/hooks/use-refresh-boundary.js +1 -1
  108. package/lib/module/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +1 -1
  109. package/lib/module/shared/components/overlay/variations/float-overlay.js +9 -6
  110. package/lib/module/shared/components/overlay/variations/float-overlay.js.map +1 -1
  111. package/lib/module/shared/components/screen-container/hooks/use-content-layout.js +2 -2
  112. package/lib/module/shared/components/screen-container/hooks/use-content-layout.js.map +1 -1
  113. package/lib/module/shared/components/screen-container/layers/backdrop.js +1 -1
  114. package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
  115. package/lib/module/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js +2 -2
  116. package/lib/module/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
  117. package/lib/module/shared/configs/presets.js +5 -8
  118. package/lib/module/shared/configs/presets.js.map +1 -1
  119. package/lib/module/shared/constants.js +17 -1
  120. package/lib/module/shared/constants.js.map +1 -1
  121. package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js +2 -8
  122. package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -1
  123. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js +25 -30
  124. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js.map +1 -1
  125. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +30 -5
  126. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  127. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +3 -3
  128. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  129. package/lib/module/shared/providers/screen/animation/helpers/stack-progress.js +3 -3
  130. package/lib/module/shared/providers/screen/animation/helpers/stack-progress.js.map +1 -1
  131. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js +2 -2
  132. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  133. package/lib/module/shared/providers/screen/gestures/gestures.provider.js +6 -7
  134. package/lib/module/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
  135. package/lib/module/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js +3 -7
  136. package/lib/module/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
  137. package/lib/module/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js +1 -1
  138. package/lib/module/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js.map +1 -1
  139. package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +7 -4
  140. package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  141. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +20 -36
  142. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
  143. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-release.js +12 -21
  144. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-release.js.map +1 -1
  145. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-reset.js +42 -41
  146. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
  147. package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +11 -21
  148. package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -1
  149. package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +4 -11
  150. package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  151. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +12 -10
  152. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  153. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +13 -10
  154. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  155. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js +16 -12
  156. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
  157. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js +30 -25
  158. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
  159. package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js +3 -3
  160. package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -1
  161. package/lib/module/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js +4 -11
  162. package/lib/module/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
  163. package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +12 -10
  164. package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +1 -1
  165. package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +3 -10
  166. package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +1 -1
  167. package/lib/module/shared/providers/screen/gestures/shared/physics.js +21 -22
  168. package/lib/module/shared/providers/screen/gestures/shared/physics.js.map +1 -1
  169. package/lib/module/shared/providers/screen/gestures/shared/policy.js +1 -12
  170. package/lib/module/shared/providers/screen/gestures/shared/policy.js.map +1 -1
  171. package/lib/module/shared/providers/screen/gestures/shared/reset.js +17 -8
  172. package/lib/module/shared/providers/screen/gestures/shared/reset.js.map +1 -1
  173. package/lib/module/shared/providers/screen/gestures/shared/snap-points.js +6 -7
  174. package/lib/module/shared/providers/screen/gestures/shared/snap-points.js.map +1 -1
  175. package/lib/module/shared/providers/screen/gestures/shared/snapshot.js +27 -0
  176. package/lib/module/shared/providers/screen/gestures/shared/snapshot.js.map +1 -0
  177. package/lib/module/shared/providers/screen/gestures/shared/values.js +54 -0
  178. package/lib/module/shared/providers/screen/gestures/shared/values.js.map +1 -0
  179. package/lib/module/shared/providers/screen/gestures/types.js +1 -1
  180. package/lib/module/shared/providers/screen/gestures/types.js.map +1 -1
  181. package/lib/module/shared/providers/screen/options/helpers.js +2 -20
  182. package/lib/module/shared/providers/screen/options/helpers.js.map +1 -1
  183. package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +8 -8
  184. package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
  185. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +2 -2
  186. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  187. package/lib/module/shared/stores/animation.store.js +6 -6
  188. package/lib/module/shared/stores/animation.store.js.map +1 -1
  189. package/lib/module/shared/stores/gesture.store.js +56 -0
  190. package/lib/module/shared/stores/gesture.store.js.map +1 -1
  191. package/lib/module/shared/types/animation.types.js.map +1 -1
  192. package/lib/module/shared/types/gesture.types.js +7 -0
  193. package/lib/module/shared/types/gesture.types.js.map +1 -1
  194. package/lib/module/shared/utils/animation/animate-to-progress.js +3 -3
  195. package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
  196. package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js +1 -1
  197. package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
  198. package/lib/module/shared/utils/bounds/navigation/reveal/build.js +39 -34
  199. package/lib/module/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  200. package/lib/module/shared/utils/bounds/navigation/zoom/build.js +37 -28
  201. package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  202. package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.d.ts.map +1 -1
  203. package/lib/typescript/shared/components/create-boundary-component/hooks/use-refresh-boundary.d.ts.map +1 -1
  204. package/lib/typescript/shared/components/overlay/variations/float-overlay.d.ts.map +1 -1
  205. package/lib/typescript/shared/configs/presets.d.ts.map +1 -1
  206. package/lib/typescript/shared/constants.d.ts +1 -2
  207. package/lib/typescript/shared/constants.d.ts.map +1 -1
  208. package/lib/typescript/shared/index.d.ts +1 -1
  209. package/lib/typescript/shared/index.d.ts.map +1 -1
  210. package/lib/typescript/shared/providers/screen/animation/helpers/build-screen-transition-options.d.ts.map +1 -1
  211. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.d.ts +7 -3
  212. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.d.ts.map +1 -1
  213. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
  214. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts +2 -2
  215. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts.map +1 -1
  216. package/lib/typescript/shared/providers/screen/animation/helpers/stack-progress.d.ts +1 -1
  217. package/lib/typescript/shared/providers/screen/animation/helpers/stack-progress.d.ts.map +1 -1
  218. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts +2 -2
  219. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts.map +1 -1
  220. package/lib/typescript/shared/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
  221. package/lib/typescript/shared/providers/screen/gestures/hooks/use-stable-runtime-config.d.ts.map +1 -1
  222. package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts +3 -3
  223. package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -1
  224. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts +2 -2
  225. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts.map +1 -1
  226. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-release.d.ts.map +1 -1
  227. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-reset.d.ts +3 -12
  228. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-reset.d.ts.map +1 -1
  229. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts +2 -2
  230. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts.map +1 -1
  231. package/lib/typescript/shared/providers/screen/gestures/pan/use-build-pan-gesture.d.ts +3 -3
  232. package/lib/typescript/shared/providers/screen/gestures/pan/use-build-pan-gesture.d.ts.map +1 -1
  233. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts +3 -3
  234. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts.map +1 -1
  235. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -1
  236. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-release.d.ts.map +1 -1
  237. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts.map +1 -1
  238. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.d.ts +2 -2
  239. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.d.ts.map +1 -1
  240. package/lib/typescript/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.d.ts +3 -3
  241. package/lib/typescript/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.d.ts.map +1 -1
  242. package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts +3 -3
  243. package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts.map +1 -1
  244. package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts +3 -3
  245. package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts.map +1 -1
  246. package/lib/typescript/shared/providers/screen/gestures/shared/physics.d.ts +3 -3
  247. package/lib/typescript/shared/providers/screen/gestures/shared/physics.d.ts.map +1 -1
  248. package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts +1 -3
  249. package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts.map +1 -1
  250. package/lib/typescript/shared/providers/screen/gestures/shared/reset.d.ts +7 -4
  251. package/lib/typescript/shared/providers/screen/gestures/shared/reset.d.ts.map +1 -1
  252. package/lib/typescript/shared/providers/screen/gestures/shared/snap-points.d.ts.map +1 -1
  253. package/lib/typescript/shared/providers/screen/gestures/shared/snapshot.d.ts +7 -0
  254. package/lib/typescript/shared/providers/screen/gestures/shared/snapshot.d.ts.map +1 -0
  255. package/lib/typescript/shared/providers/screen/gestures/shared/values.d.ts +9 -0
  256. package/lib/typescript/shared/providers/screen/gestures/shared/values.d.ts.map +1 -0
  257. package/lib/typescript/shared/providers/screen/gestures/types.d.ts +6 -13
  258. package/lib/typescript/shared/providers/screen/gestures/types.d.ts.map +1 -1
  259. package/lib/typescript/shared/providers/screen/options/helpers.d.ts.map +1 -1
  260. package/lib/typescript/shared/providers/screen/options/types.d.ts +0 -2
  261. package/lib/typescript/shared/providers/screen/options/types.d.ts.map +1 -1
  262. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  263. package/lib/typescript/shared/stores/animation.store.d.ts +4 -4
  264. package/lib/typescript/shared/stores/animation.store.d.ts.map +1 -1
  265. package/lib/typescript/shared/stores/gesture.store.d.ts +23 -0
  266. package/lib/typescript/shared/stores/gesture.store.d.ts.map +1 -1
  267. package/lib/typescript/shared/types/animation.types.d.ts +8 -0
  268. package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
  269. package/lib/typescript/shared/types/bounds.types.d.ts +12 -8
  270. package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
  271. package/lib/typescript/shared/types/gesture.types.d.ts +47 -13
  272. package/lib/typescript/shared/types/gesture.types.d.ts.map +1 -1
  273. package/lib/typescript/shared/types/index.d.ts +1 -1
  274. package/lib/typescript/shared/types/index.d.ts.map +1 -1
  275. package/lib/typescript/shared/types/screen.types.d.ts +25 -8
  276. package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
  277. package/lib/typescript/shared/utils/bounds/navigation/reveal/build.d.ts.map +1 -1
  278. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  279. package/lib/typescript/shared/utils/bounds/types/options.d.ts +8 -0
  280. package/lib/typescript/shared/utils/bounds/types/options.d.ts.map +1 -1
  281. package/package.json +1 -1
  282. package/src/shared/animation/snap-to.ts +1 -1
  283. package/src/shared/components/activity/variants/activity-screen.tsx +8 -2
  284. package/src/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.ts +5 -2
  285. package/src/shared/components/create-boundary-component/hooks/use-refresh-boundary.ts +4 -1
  286. package/src/shared/components/overlay/variations/float-overlay.tsx +11 -5
  287. package/src/shared/components/screen-container/hooks/use-content-layout.ts +2 -2
  288. package/src/shared/components/screen-container/layers/backdrop.tsx +1 -1
  289. package/src/shared/components/screen-lifecycle/hooks/use-open-transition-intent.ts +2 -2
  290. package/src/shared/configs/presets.ts +6 -8
  291. package/src/shared/constants.ts +16 -6
  292. package/src/shared/index.ts +2 -0
  293. package/src/shared/providers/screen/animation/helpers/build-screen-transition-options.ts +2 -17
  294. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.ts +54 -53
  295. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/index.ts +72 -8
  296. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/types.ts +2 -2
  297. package/src/shared/providers/screen/animation/helpers/pipeline.ts +3 -3
  298. package/src/shared/providers/screen/animation/helpers/stack-progress.ts +3 -3
  299. package/src/shared/providers/screen/animation/helpers/use-build-transition-state.ts +4 -4
  300. package/src/shared/providers/screen/gestures/gestures.provider.tsx +7 -9
  301. package/src/shared/providers/screen/gestures/hooks/use-stable-runtime-config.ts +2 -5
  302. package/src/shared/providers/screen/gestures/pan/activation/pan-activation-decision.ts +1 -1
  303. package/src/shared/providers/screen/gestures/pan/activation/use-pan-activation.ts +9 -7
  304. package/src/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.ts +25 -38
  305. package/src/shared/providers/screen/gestures/pan/behavior/pan-release.ts +23 -25
  306. package/src/shared/providers/screen/gestures/pan/behavior/pan-reset.ts +45 -77
  307. package/src/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.ts +12 -20
  308. package/src/shared/providers/screen/gestures/pan/use-build-pan-gesture.ts +5 -11
  309. package/src/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.ts +14 -16
  310. package/src/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +13 -9
  311. package/src/shared/providers/screen/gestures/pinch/behavior/pinch-release.ts +31 -16
  312. package/src/shared/providers/screen/gestures/pinch/behavior/pinch-reset.ts +32 -41
  313. package/src/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.ts +4 -4
  314. package/src/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.ts +5 -10
  315. package/src/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.ts +14 -13
  316. package/src/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.ts +4 -9
  317. package/src/shared/providers/screen/gestures/shared/physics.ts +15 -32
  318. package/src/shared/providers/screen/gestures/shared/policy.ts +0 -15
  319. package/src/shared/providers/screen/gestures/shared/reset.ts +33 -11
  320. package/src/shared/providers/screen/gestures/shared/snap-points.ts +8 -7
  321. package/src/shared/providers/screen/gestures/shared/snapshot.ts +33 -0
  322. package/src/shared/providers/screen/gestures/shared/values.ts +52 -0
  323. package/src/shared/providers/screen/gestures/types.ts +4 -13
  324. package/src/shared/providers/screen/options/helpers.ts +0 -44
  325. package/src/shared/providers/screen/options/types.ts +0 -2
  326. package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +8 -8
  327. package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +3 -2
  328. package/src/shared/stores/animation.store.ts +8 -8
  329. package/src/shared/stores/gesture.store.ts +81 -0
  330. package/src/shared/types/animation.types.ts +9 -0
  331. package/src/shared/types/bounds.types.ts +12 -8
  332. package/src/shared/types/gesture.types.ts +48 -14
  333. package/src/shared/types/index.ts +2 -0
  334. package/src/shared/types/screen.types.ts +25 -8
  335. package/src/shared/utils/animation/animate-to-progress.ts +3 -3
  336. package/src/shared/utils/bounds/helpers/prepare-bound-styles.ts +1 -1
  337. package/src/shared/utils/bounds/navigation/reveal/build.ts +42 -46
  338. package/src/shared/utils/bounds/navigation/zoom/build.ts +36 -33
  339. package/src/shared/utils/bounds/types/options.ts +9 -0
  340. package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js +0 -32
  341. package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js.map +0 -1
  342. package/lib/commonjs/shared/utils/gesture-progress-mode.js +0 -50
  343. package/lib/commonjs/shared/utils/gesture-progress-mode.js.map +0 -1
  344. package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js +0 -27
  345. package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js.map +0 -1
  346. package/lib/module/shared/utils/gesture-progress-mode.js +0 -42
  347. package/lib/module/shared/utils/gesture-progress-mode.js.map +0 -1
  348. package/lib/typescript/shared/providers/screen/gestures/hooks/use-gesture-builder-state.d.ts +0 -21
  349. package/lib/typescript/shared/providers/screen/gestures/hooks/use-gesture-builder-state.d.ts.map +0 -1
  350. package/lib/typescript/shared/utils/gesture-progress-mode.d.ts +0 -14
  351. package/lib/typescript/shared/utils/gesture-progress-mode.d.ts.map +0 -1
  352. package/src/shared/providers/screen/gestures/hooks/use-gesture-builder-state.ts +0 -31
  353. package/src/shared/utils/gesture-progress-mode.ts +0 -67
@@ -10,7 +10,6 @@ interface CalculateProgressProps {
10
10
  event: PanGestureEvent;
11
11
  dimensions: { width: number; height: number };
12
12
  directions: GestureDirections;
13
- gestureReleaseVelocityScale?: number;
14
13
  }
15
14
 
16
15
  type GestureAxisCandidate = {
@@ -32,25 +31,28 @@ export const toProgressVelocity = (
32
31
  };
33
32
 
34
33
  /**
35
- * Converts normalized pan velocity into a 0-1 scalar for interpolators.
34
+ * Converts normalized gesture velocity into a 0-1 scalar for interpolators.
36
35
  *
37
36
  * `1` means the velocity reached or exceeded the library's full-velocity
38
37
  * threshold, not a physical maximum for the device.
39
38
  */
39
+ export const resolveGestureVelocityMagnitude = (velocity: number) => {
40
+ "worklet";
41
+
42
+ return Math.min(
43
+ 1,
44
+ Math.abs(velocity) / FULL_GESTURE_VELOCITY_PROGRESS_PER_SECOND,
45
+ );
46
+ };
47
+
40
48
  export const resolveGestureVelocity = (
41
49
  velocityNormX: number,
42
50
  velocityNormY: number,
43
51
  ) => {
44
52
  "worklet";
45
53
 
46
- const dominantVelocity = Math.max(
47
- Math.abs(velocityNormX),
48
- Math.abs(velocityNormY),
49
- );
50
-
51
- return Math.min(
52
- 1,
53
- dominantVelocity / FULL_GESTURE_VELOCITY_PROGRESS_PER_SECOND,
54
+ return resolveGestureVelocityMagnitude(
55
+ Math.max(Math.abs(velocityNormX), Math.abs(velocityNormY)),
54
56
  );
55
57
  };
56
58
 
@@ -85,7 +87,6 @@ const getPanAxisCandidate = (
85
87
  translationTowardDismiss: number,
86
88
  velocityTowardDismiss: number,
87
89
  screenSize: number,
88
- gestureReleaseVelocityScale?: number,
89
90
  ): GestureAxisCandidate | null => {
90
91
  "worklet";
91
92
  if (!isEnabled || translationTowardDismiss <= 0) {
@@ -97,7 +98,6 @@ const getPanAxisCandidate = (
97
98
  velocityContribution: getPanReleaseHandoffVelocity(
98
99
  velocityTowardDismiss,
99
100
  screenSize,
100
- gestureReleaseVelocityScale,
101
101
  ),
102
102
  };
103
103
  };
@@ -116,11 +116,7 @@ const collectPanAxisCandidates = ({
116
116
  event,
117
117
  dimensions,
118
118
  directions,
119
- gestureReleaseVelocityScale,
120
- }: Pick<
121
- CalculateProgressProps,
122
- "event" | "dimensions" | "directions" | "gestureReleaseVelocityScale"
123
- >) => {
119
+ }: Pick<CalculateProgressProps, "event" | "dimensions" | "directions">) => {
124
120
  "worklet";
125
121
  const candidates: GestureAxisCandidate[] = [];
126
122
 
@@ -131,7 +127,6 @@ const collectPanAxisCandidates = ({
131
127
  event.translationX,
132
128
  event.velocityX,
133
129
  dimensions.width,
134
- gestureReleaseVelocityScale,
135
130
  ),
136
131
  );
137
132
  pushPanAxisCandidate(
@@ -141,7 +136,6 @@ const collectPanAxisCandidates = ({
141
136
  -event.translationX,
142
137
  -event.velocityX,
143
138
  dimensions.width,
144
- gestureReleaseVelocityScale,
145
139
  ),
146
140
  );
147
141
  pushPanAxisCandidate(
@@ -151,7 +145,6 @@ const collectPanAxisCandidates = ({
151
145
  event.translationY,
152
146
  event.velocityY,
153
147
  dimensions.height,
154
- gestureReleaseVelocityScale,
155
148
  ),
156
149
  );
157
150
  pushPanAxisCandidate(
@@ -161,7 +154,6 @@ const collectPanAxisCandidates = ({
161
154
  -event.translationY,
162
155
  -event.velocityY,
163
156
  dimensions.height,
164
- gestureReleaseVelocityScale,
165
157
  ),
166
158
  );
167
159
 
@@ -190,21 +182,15 @@ const getDominantPanCandidateVelocity = (
190
182
  const getFallbackPanReleaseVelocityMagnitude = ({
191
183
  event,
192
184
  dimensions,
193
- gestureReleaseVelocityScale,
194
- }: Pick<
195
- CalculateProgressProps,
196
- "event" | "dimensions" | "gestureReleaseVelocityScale"
197
- >) => {
185
+ }: Pick<CalculateProgressProps, "event" | "dimensions">) => {
198
186
  "worklet";
199
187
  const normalizedVelocityX = getPanReleaseHandoffVelocity(
200
188
  event.velocityX,
201
189
  dimensions.width,
202
- gestureReleaseVelocityScale,
203
190
  );
204
191
  const normalizedVelocityY = getPanReleaseHandoffVelocity(
205
192
  event.velocityY,
206
193
  dimensions.height,
207
- gestureReleaseVelocityScale,
208
194
  );
209
195
 
210
196
  return Math.max(Math.abs(normalizedVelocityX), Math.abs(normalizedVelocityY));
@@ -232,11 +218,10 @@ export const getPanReleaseProgressVelocity = ({
232
218
  event,
233
219
  dimensions,
234
220
  directions,
235
- gestureReleaseVelocityScale,
236
221
  }: CalculateProgressProps) => {
237
222
  "worklet";
238
223
 
239
- const currentProgress = animations.progress.get();
224
+ const currentProgress = animations.transitionProgress.get();
240
225
  const targetProgress = shouldDismiss ? 0 : 1;
241
226
  const progressDelta = targetProgress - currentProgress;
242
227
 
@@ -247,7 +232,6 @@ export const getPanReleaseProgressVelocity = ({
247
232
  event,
248
233
  dimensions,
249
234
  directions,
250
- gestureReleaseVelocityScale,
251
235
  }),
252
236
  );
253
237
  const progressVelocityMagnitude =
@@ -255,7 +239,6 @@ export const getPanReleaseProgressVelocity = ({
255
239
  getFallbackPanReleaseVelocityMagnitude({
256
240
  event,
257
241
  dimensions,
258
- gestureReleaseVelocityScale,
259
242
  });
260
243
 
261
244
  return progressDirection * progressVelocityMagnitude;
@@ -1,7 +1,6 @@
1
1
  import {
2
2
  DEFAULT_GESTURE_ACTIVATION_AREA,
3
3
  DEFAULT_GESTURE_DIRECTION,
4
- DEFAULT_GESTURE_PROGRESS_MODE,
5
4
  DEFAULT_GESTURE_RELEASE_VELOCITY_SCALE,
6
5
  DEFAULT_GESTURE_SENSITIVITY,
7
6
  DEFAULT_GESTURE_SNAP_LOCKED,
@@ -15,7 +14,6 @@ import type {
15
14
  GestureDirectionActivationArea,
16
15
  GestureDirectionEntry,
17
16
  GestureDirectionOption,
18
- GestureProgressMode,
19
17
  ResolvedGestureActivationArea,
20
18
  } from "../../../../types/gesture.types";
21
19
  import type {
@@ -24,7 +22,6 @@ import type {
24
22
  SheetScrollGestureBehavior,
25
23
  SnapPoint,
26
24
  } from "../../../../types/screen.types";
27
- import { resolveGestureProgressMode } from "../../../../utils/gesture-progress-mode";
28
25
  import { computeClaimedDirections } from "../ownership/compute-claimed-directions";
29
26
  import { resolveOwnership } from "../ownership/resolve-ownership";
30
27
  import type {
@@ -49,9 +46,7 @@ export type GesturePolicyOptions = {
49
46
  expandViaScrollView?: boolean;
50
47
  gestureActivationArea?: GestureActivationArea;
51
48
  gestureDirection?: GestureDirectionOption;
52
- gestureDrivesProgress?: boolean;
53
49
  gestureEnabled?: boolean;
54
- gestureProgressMode?: GestureProgressMode;
55
50
  gestureTracking?: GestureTracking;
56
51
  gestureReleaseVelocityScale?: number;
57
52
  gestureResponseDistance?: number;
@@ -155,19 +150,9 @@ const resolveGestureActivationArea = (
155
150
  );
156
151
  };
157
152
 
158
- function resolveGestureProgressModePolicy(options: GesturePolicyOptions) {
159
- "worklet";
160
- return resolveGestureProgressMode({
161
- gestureProgressMode: options.gestureProgressMode,
162
- gestureDrivesProgress: options.gestureDrivesProgress,
163
- fallback: DEFAULT_GESTURE_PROGRESS_MODE,
164
- });
165
- }
166
-
167
153
  const resolveCommonGesturePolicy = (options: GesturePolicyOptions) => {
168
154
  "worklet";
169
155
  return {
170
- gestureProgressMode: resolveGestureProgressModePolicy(options),
171
156
  gestureSensitivity:
172
157
  options.gestureSensitivity ?? DEFAULT_GESTURE_SENSITIVITY,
173
158
  gestureSnapVelocityImpact:
@@ -1,6 +1,4 @@
1
1
  import type { SharedValue } from "react-native-reanimated";
2
- import { FALSE } from "../../../../constants";
3
- import type { GestureStoreMap } from "../../../../stores/gesture.store";
4
2
  import type { AnimationConfig } from "../../../../types/animation.types";
5
3
  import {
6
4
  animate,
@@ -10,12 +8,18 @@ import {
10
8
 
11
9
  type ResetSpringSpec = SpringAnimationConfig & { velocity?: number };
12
10
 
11
+ type AnimateManyJob = {
12
+ value: SharedValue<number>;
13
+ toValue: number;
14
+ velocity?: number;
15
+ };
16
+
13
17
  const isResetSpringSpec = (spec?: AnimationConfig): spec is ResetSpringSpec => {
14
18
  "worklet";
15
19
  return isSpringAnimationConfig(spec);
16
20
  };
17
21
 
18
- export const getGestureResetSpec = (
22
+ const getGestureResetSpec = (
19
23
  spec?: AnimationConfig,
20
24
  velocity?: number,
21
25
  ): AnimationConfig | undefined => {
@@ -34,7 +38,7 @@ export const getGestureResetSpec = (
34
38
  return { ...resetSpec, velocity };
35
39
  };
36
40
 
37
- export const animateResetValue = (
41
+ const animateResetValue = (
38
42
  value: SharedValue<number>,
39
43
  toValue: number,
40
44
  config: AnimationConfig | undefined,
@@ -51,16 +55,34 @@ export const animateResetValue = (
51
55
  );
52
56
  };
53
57
 
54
- export const clearGestureSettlingIfResting = (
55
- gestures: GestureStoreMap,
56
- isResting: boolean,
58
+ export const animateMany = (
59
+ jobs: AnimateManyJob[],
60
+ spec: AnimationConfig | undefined,
61
+ onFinished: () => void,
57
62
  ) => {
58
63
  "worklet";
59
- if (!isResting) {
64
+ let pendingJobs = jobs.length;
65
+
66
+ if (pendingJobs === 0) {
67
+ onFinished();
60
68
  return;
61
69
  }
62
70
 
63
- gestures.active.set(null);
64
- gestures.direction.set(null);
65
- gestures.settling.set(FALSE);
71
+ const finishJob = () => {
72
+ "worklet";
73
+ pendingJobs -= 1;
74
+
75
+ if (pendingJobs === 0) {
76
+ onFinished();
77
+ }
78
+ };
79
+
80
+ for (const job of jobs) {
81
+ animateResetValue(
82
+ job.value,
83
+ job.toValue,
84
+ getGestureResetSpec(spec, job.velocity),
85
+ finishJob,
86
+ );
87
+ }
66
88
  };
@@ -232,19 +232,20 @@ export const primeRuntimeSnapPoint = (
232
232
  "worklet";
233
233
  const {
234
234
  policy,
235
- stores: { animations },
236
- lockedSnapPoint,
235
+ stores: { animations, gestures },
237
236
  } = runtime;
238
237
 
239
- const { resolvedSnapPoints, resolvedMaxSnapPoint } =
240
- resolveRuntimeGestureSnapPoints(runtime);
238
+ const { resolvedSnapPoints } = resolveRuntimeGestureSnapPoints(runtime);
241
239
 
242
240
  if (policy.gestureSnapLocked) {
243
- lockedSnapPoint.set(
244
- findNearestSnapPoint(animations.progress.get(), resolvedSnapPoints),
241
+ gestures.internal.lockedSnapPoint.set(
242
+ findNearestSnapPoint(
243
+ animations.transitionProgress.get(),
244
+ resolvedSnapPoints,
245
+ ),
245
246
  );
246
247
  return;
247
248
  }
248
249
 
249
- lockedSnapPoint.set(resolvedMaxSnapPoint);
250
+ gestures.internal.lockedSnapPoint.set(null);
250
251
  };
@@ -0,0 +1,33 @@
1
+ import type { GestureStoreMap } from "../../../../stores/gesture.store";
2
+
3
+ type SnapshotGestureHandoffOptions = {
4
+ velocity?: number;
5
+ };
6
+
7
+ export const snapshotGestureHandoff = (
8
+ gestures: GestureStoreMap,
9
+ options?: SnapshotGestureHandoffOptions,
10
+ ) => {
11
+ "worklet";
12
+ const snapshot = gestures.internal.snapshot;
13
+
14
+ snapshot.x.set(gestures.x.get());
15
+ snapshot.y.set(gestures.y.get());
16
+ snapshot.normX.set(gestures.normX.get());
17
+ snapshot.normY.set(gestures.normY.get());
18
+ snapshot.velocity.set(options?.velocity ?? gestures.velocity.get());
19
+ snapshot.scale.set(gestures.scale.get());
20
+ snapshot.normScale.set(gestures.normScale.get());
21
+ snapshot.focalX.set(gestures.focalX.get());
22
+ snapshot.focalY.set(gestures.focalY.get());
23
+ snapshot.rotation.set(gestures.rotation.get());
24
+ snapshot.raw.x.set(gestures.raw.x.get());
25
+ snapshot.raw.y.set(gestures.raw.y.get());
26
+ snapshot.raw.normX.set(gestures.raw.normX.get());
27
+ snapshot.raw.normY.set(gestures.raw.normY.get());
28
+ snapshot.raw.scale.set(gestures.raw.scale.get());
29
+ snapshot.raw.normScale.set(gestures.raw.normScale.get());
30
+ snapshot.raw.rotation.set(gestures.raw.rotation.get());
31
+ snapshot.active.set(gestures.active.get());
32
+ snapshot.direction.set(gestures.direction.get());
33
+ };
@@ -0,0 +1,52 @@
1
+ import type { GestureStoreMap } from "../../../../stores/gesture.store";
2
+
3
+ export const clearRawPanValues = (gestures: GestureStoreMap) => {
4
+ "worklet";
5
+ gestures.raw.x.set(0);
6
+ gestures.raw.y.set(0);
7
+ gestures.raw.normX.set(0);
8
+ gestures.raw.normY.set(0);
9
+ };
10
+
11
+ export const clearPanProgressDeltaValues = (gestures: GestureStoreMap) => {
12
+ "worklet";
13
+ gestures.internal.progressDeltaX.set(0);
14
+ gestures.internal.progressDeltaY.set(0);
15
+ };
16
+
17
+ export const clearPanProgressValues = (gestures: GestureStoreMap) => {
18
+ "worklet";
19
+ gestures.x.set(0);
20
+ gestures.y.set(0);
21
+ gestures.normX.set(0);
22
+ gestures.normY.set(0);
23
+ clearPanProgressDeltaValues(gestures);
24
+ };
25
+
26
+ export const clearPanTrackingValues = (gestures: GestureStoreMap) => {
27
+ "worklet";
28
+ clearPanProgressValues(gestures);
29
+ clearRawPanValues(gestures);
30
+ gestures.velocity.set(0);
31
+ };
32
+
33
+ export const clearFocalPoint = (gestures: GestureStoreMap) => {
34
+ "worklet";
35
+ gestures.focalX.set(0);
36
+ gestures.focalY.set(0);
37
+ };
38
+
39
+ export const clearRawTransformValues = (gestures: GestureStoreMap) => {
40
+ "worklet";
41
+ gestures.raw.scale.set(1);
42
+ gestures.raw.normScale.set(0);
43
+ gestures.raw.rotation.set(0);
44
+ };
45
+
46
+ export const clearTransformTrackingValues = (gestures: GestureStoreMap) => {
47
+ "worklet";
48
+ gestures.scale.set(1);
49
+ gestures.normScale.set(0);
50
+ gestures.rotation.set(0);
51
+ clearRawTransformValues(gestures);
52
+ };
@@ -16,7 +16,6 @@ import type {
16
16
  } from "../../../types/animation.types";
17
17
  import type {
18
18
  GestureDirections,
19
- GestureProgressMode,
20
19
  ResolvedGestureActivationArea,
21
20
  ScrollGestureAxis,
22
21
  ScrollGestureAxisState,
@@ -49,11 +48,10 @@ export type RotationGestureEvent =
49
48
  | GestureUpdateEvent<RotationGestureHandlerEventPayload>
50
49
  | GestureStateChangeEvent<RotationGestureHandlerEventPayload>;
51
50
 
52
- /** Gesture that initiated the current simultaneous gesture composition. */
53
- export type GestureCompositionActivation = "pan" | "pinch" | null;
51
+ /** Gesture that owns navigation release for the current simultaneous composition. */
52
+ export type GestureCompositionOwner = "pan" | "pinch" | null;
54
53
 
55
54
  export type {
56
- GestureProgressMode,
57
55
  ScrollGestureAxis,
58
56
  ScrollGestureAxisState,
59
57
  ScrollGestureState,
@@ -114,7 +112,6 @@ export interface PanGesturePolicy {
114
112
  gestureDirection: NonNullable<ScreenTransitionConfig["gestureDirection"]>;
115
113
  panActivationDirections: GestureDirections;
116
114
  snapAxisDirections: SnapPanDirectionConfig;
117
- gestureProgressMode: GestureProgressMode;
118
115
  gestureSensitivity: NonNullable<ScreenTransitionConfig["gestureSensitivity"]>;
119
116
  gestureVelocityImpact: number;
120
117
  gestureSnapVelocityImpact: number;
@@ -134,7 +131,6 @@ export interface PinchGesturePolicy {
134
131
  snapDirections: SnapPinchDirectionConfig;
135
132
  pinchInEnabled: boolean;
136
133
  pinchOutEnabled: boolean;
137
- gestureProgressMode: GestureProgressMode;
138
134
  gestureSensitivity: NonNullable<ScreenTransitionConfig["gestureSensitivity"]>;
139
135
  gestureSnapVelocityImpact: number;
140
136
  gestureSnapLocked: boolean;
@@ -154,8 +150,6 @@ export interface GestureRuntime<TPolicy extends GesturePolicy> {
154
150
  participation: ScreenGestureParticipation;
155
151
  policy: TPolicy;
156
152
  stores: GestureRuntimeStores;
157
- gestureProgressBaseline: SharedValue<number>;
158
- lockedSnapPoint: SharedValue<number>;
159
153
  }
160
154
 
161
155
  export type PanGestureRuntime = GestureRuntime<PanGesturePolicy>;
@@ -187,7 +181,6 @@ export interface PanReleaseResult {
187
181
  shouldDismiss: boolean;
188
182
  initialVelocity: number;
189
183
  commitProgress?: number;
190
- resetNormalizedValuesImmediately?: boolean;
191
184
  transitionSpec: TransitionSpec | undefined;
192
185
  resetSpec: AnimationConfig | undefined;
193
186
  }
@@ -200,10 +193,7 @@ export interface PanReleasePlan {
200
193
  resetVelocityY: number;
201
194
  resetVelocityNormX: number;
202
195
  resetVelocityNormY: number;
203
- releaseVelocity: number;
204
- resetNormalizedValues: boolean;
205
- resetNormalizedValuesImmediately: boolean;
206
- preserveRawValues: boolean;
196
+ handoffVelocity: number;
207
197
  commitProgress?: number;
208
198
  transitionSpec: TransitionSpec | undefined;
209
199
  resetSpec: AnimationConfig | undefined;
@@ -213,6 +203,7 @@ export interface PinchReleaseResult {
213
203
  target: number;
214
204
  shouldDismiss: boolean;
215
205
  initialVelocity: number;
206
+ handoffVelocity: number;
216
207
  commitProgress?: number;
217
208
  resetValuesImmediately?: boolean;
218
209
  transitionSpec: TransitionSpec | undefined;
@@ -1,7 +1,6 @@
1
1
  import {
2
2
  DEFAULT_GESTURE_ACTIVATION_AREA,
3
3
  DEFAULT_GESTURE_DIRECTION,
4
- DEFAULT_GESTURE_PROGRESS_MODE,
5
4
  DEFAULT_GESTURE_RELEASE_VELOCITY_SCALE,
6
5
  DEFAULT_GESTURE_SENSITIVITY,
7
6
  DEFAULT_GESTURE_SNAP_LOCKED,
@@ -20,11 +19,6 @@ import type {
20
19
  TransitionInterpolatedStyle,
21
20
  } from "../../../types";
22
21
  import type { BackdropBehavior } from "../../../types/screen.types";
23
- import {
24
- gestureProgressModeDrivesProgress,
25
- isGestureProgressMode,
26
- resolveGestureProgressMode,
27
- } from "../../../utils/gesture-progress-mode";
28
22
  import { resolveSheetScrollGestureBehavior } from "../../../utils/resolve-screen-transition-options";
29
23
  import type {
30
24
  RequiredScreenOption,
@@ -186,25 +180,6 @@ const resolveBackdropBehaviorOption = (
186
180
  : fallback;
187
181
  };
188
182
 
189
- const resolveGestureProgressModeOption = (
190
- gestureProgressMode: unknown,
191
- gestureDrivesProgress: unknown,
192
- fallback: RequiredScreenOption<"gestureProgressMode">,
193
- ): RequiredScreenOption<"gestureProgressMode"> => {
194
- "worklet";
195
- if (isGestureProgressMode(gestureProgressMode)) {
196
- return gestureProgressMode;
197
- }
198
-
199
- return resolveGestureProgressMode({
200
- gestureDrivesProgress:
201
- typeof gestureDrivesProgress === "boolean"
202
- ? gestureDrivesProgress
203
- : undefined,
204
- fallback,
205
- });
206
- };
207
-
208
183
  const areGestureActivationAreasEqual = (
209
184
  left: RequiredScreenOption<"gestureActivationArea">,
210
185
  right: RequiredScreenOption<"gestureActivationArea">,
@@ -282,8 +257,6 @@ const areScreenOptionsEqual = (
282
257
  left.gestureSnapVelocityImpact === right.gestureSnapVelocityImpact &&
283
258
  left.gestureReleaseVelocityScale === right.gestureReleaseVelocityScale &&
284
259
  left.gestureResponseDistance === right.gestureResponseDistance &&
285
- left.gestureProgressMode === right.gestureProgressMode &&
286
- left.gestureDrivesProgress === right.gestureDrivesProgress &&
287
260
  areGestureActivationAreasEqual(
288
261
  left.gestureActivationArea,
289
262
  right.gestureActivationArea,
@@ -299,12 +272,6 @@ const areScreenOptionsEqual = (
299
272
  export const resolveBaseScreenOptions = (
300
273
  options: ScreenTransitionConfig,
301
274
  ): ScreenOptionsSnapshot => {
302
- const gestureProgressMode = resolveGestureProgressModeOption(
303
- options.gestureProgressMode,
304
- options.gestureDrivesProgress,
305
- DEFAULT_GESTURE_PROGRESS_MODE,
306
- );
307
-
308
275
  return {
309
276
  navigationMaskEnabled: resolveBooleanOption(
310
277
  options.navigationMaskEnabled,
@@ -339,9 +306,6 @@ export const resolveBaseScreenOptions = (
339
306
  options.gestureResponseDistance,
340
307
  undefined,
341
308
  ),
342
- gestureProgressMode,
343
- gestureDrivesProgress:
344
- gestureProgressModeDrivesProgress(gestureProgressMode),
345
309
  gestureActivationArea: resolveGestureActivationAreaOption(
346
310
  options.gestureActivationArea,
347
311
  DEFAULT_GESTURE_ACTIVATION_AREA,
@@ -384,11 +348,6 @@ export const syncScreenOptionsOverrides = (
384
348
  "worklet";
385
349
  const options = raw?.options;
386
350
  const base = screenOptions.get().baseOptions;
387
- const gestureProgressMode = resolveGestureProgressModeOption(
388
- options?.gestureProgressMode,
389
- options?.gestureDrivesProgress,
390
- base.gestureProgressMode,
391
- );
392
351
 
393
352
  const next: ScreenOptionsState = {
394
353
  navigationMaskEnabled: base.navigationMaskEnabled,
@@ -421,9 +380,6 @@ export const syncScreenOptionsOverrides = (
421
380
  options?.gestureResponseDistance,
422
381
  base.gestureResponseDistance,
423
382
  ),
424
- gestureProgressMode,
425
- gestureDrivesProgress:
426
- gestureProgressModeDrivesProgress(gestureProgressMode),
427
383
  gestureActivationArea: resolveGestureActivationAreaOption(
428
384
  options?.gestureActivationArea,
429
385
  base.gestureActivationArea,
@@ -18,8 +18,6 @@ export type ScreenOptionsSnapshot = {
18
18
  gestureSnapVelocityImpact: RequiredScreenOption<"gestureSnapVelocityImpact">;
19
19
  gestureReleaseVelocityScale: RequiredScreenOption<"gestureReleaseVelocityScale">;
20
20
  gestureResponseDistance: OptionalScreenOption<"gestureResponseDistance">;
21
- gestureProgressMode: RequiredScreenOption<"gestureProgressMode">;
22
- gestureDrivesProgress: RequiredScreenOption<"gestureDrivesProgress">;
23
21
  gestureActivationArea: RequiredScreenOption<"gestureActivationArea">;
24
22
  gestureSnapLocked: RequiredScreenOption<"gestureSnapLocked">;
25
23
  sheetScrollGestureBehavior: RequiredScreenOption<"sheetScrollGestureBehavior">;
@@ -197,19 +197,19 @@ export const useInterpolatedStylesMap = () => {
197
197
  const interpolatorOptionsOwner =
198
198
  isInGestureMode || !nextInterpolator ? "current" : "next";
199
199
 
200
- let effectiveProgress = progress;
201
- let effectiveNext = next;
200
+ let selectedProgress = progress;
201
+ let selectedNext = next;
202
202
 
203
203
  if (isInGestureMode) {
204
- effectiveProgress = current.progress;
205
- effectiveNext = undefined;
204
+ selectedProgress = current.progress;
205
+ selectedNext = undefined;
206
206
  }
207
207
 
208
208
  const currentResult = runInterpolator({
209
209
  interpolator: currentInterpolator,
210
210
  props,
211
- progress: effectiveProgress,
212
- next: effectiveNext,
211
+ progress: selectedProgress,
212
+ next: selectedNext,
213
213
  bounds: boundsAccessor,
214
214
  transition,
215
215
  shouldDeferStyleBuckets,
@@ -233,8 +233,8 @@ export const useInterpolatedStylesMap = () => {
233
233
  const nextResult = runInterpolator({
234
234
  interpolator: nextInterpolator,
235
235
  props,
236
- progress: effectiveProgress,
237
- next: effectiveNext,
236
+ progress: selectedProgress,
237
+ next: selectedNext,
238
238
  bounds: boundsAccessor,
239
239
  transition,
240
240
  shouldDeferStyleBuckets,
@@ -14,7 +14,8 @@ import { resolveScreenVisibilityGate } from "../helpers/visibility-gate";
14
14
  export const useMaybeBlockVisibility = (isFloatingOverlay?: boolean) => {
15
15
  const { height } = useWindowDimensions();
16
16
  const { currentScreenKey } = useDescriptorDerivations();
17
- const { entering, progress } = AnimationStore.getBag(currentScreenKey);
17
+ const { entering, transitionProgress } =
18
+ AnimationStore.getBag(currentScreenKey);
18
19
 
19
20
  const { pendingLifecycleStartBlockCount, pendingLifecycleRequestKind } =
20
21
  SystemStore.getBag(currentScreenKey);
@@ -40,7 +41,7 @@ export const useMaybeBlockVisibility = (isFloatingOverlay?: boolean) => {
40
41
  hasVisibilityGateOpened: hasVisibilityGateOpened.get(),
41
42
  pendingLifecycleStartBlockCount: pendingLifecycleStartBlockCount.get(),
42
43
  pendingLifecycleRequestKind: pendingLifecycleRequestKind.get(),
43
- progress: progress.get(),
44
+ progress: transitionProgress.get(),
44
45
  entering: entering.get(),
45
46
  });
46
47
  },
@@ -6,8 +6,8 @@ import {
6
6
  import { createStore } from "../utils/create-store";
7
7
 
8
8
  export type AnimationStoreMap = {
9
- progress: SharedValue<number>;
10
- effectiveProgress: SharedValue<number>;
9
+ transitionProgress: SharedValue<number>;
10
+ visualProgress: SharedValue<number>;
11
11
  willAnimate: SharedValue<number>;
12
12
  progressAnimating: SharedValue<number>;
13
13
  progressSettled: SharedValue<number>;
@@ -17,8 +17,8 @@ export type AnimationStoreMap = {
17
17
 
18
18
  function createAnimationBag(): AnimationStoreMap {
19
19
  return {
20
- progress: makeMutable(0),
21
- effectiveProgress: makeMutable(0),
20
+ transitionProgress: makeMutable(0),
21
+ visualProgress: makeMutable(0),
22
22
  willAnimate: makeMutable(0),
23
23
  closing: makeMutable(0),
24
24
  progressAnimating: makeMutable(0),
@@ -29,14 +29,14 @@ function createAnimationBag(): AnimationStoreMap {
29
29
 
30
30
  /**
31
31
  * Route-keyed screen transition state for the public animation lifecycle.
32
- * `progress` tracks committed transition progress; `effectiveProgress` tracks
33
- * the hydrated progress after live gesture policy is applied.
32
+ * `transitionProgress` tracks committed transition progress; `visualProgress`
33
+ * tracks hydrated progress after live gestures are applied.
34
34
  */
35
35
  export const AnimationStore = createStore<AnimationStoreMap>({
36
36
  createBag: createAnimationBag,
37
37
  disposeBag: (bag) => {
38
- cancelAnimation(bag.progress);
39
- cancelAnimation(bag.effectiveProgress);
38
+ cancelAnimation(bag.transitionProgress);
39
+ cancelAnimation(bag.visualProgress);
40
40
  cancelAnimation(bag.willAnimate);
41
41
  cancelAnimation(bag.progressAnimating);
42
42
  cancelAnimation(bag.progressSettled);