react-native-screen-transitions 3.7.1 → 3.8.0-beta.0

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 (687) hide show
  1. package/lib/commonjs/blank-stack/components/stack-view.js +2 -2
  2. package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -1
  3. package/lib/commonjs/component-stack/components/stack-view.js +2 -2
  4. package/lib/commonjs/component-stack/components/stack-view.js.map +1 -1
  5. package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js +1 -10
  6. package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
  7. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js +1 -1
  8. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js.map +1 -1
  9. package/lib/commonjs/shared/components/create-transition-aware-component.js +7 -5
  10. package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
  11. package/lib/commonjs/shared/components/overlay/variations/float-overlay.js +7 -12
  12. package/lib/commonjs/shared/components/overlay/variations/float-overlay.js.map +1 -1
  13. package/lib/commonjs/shared/components/scene-view.js +1 -1
  14. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +7 -7
  15. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  16. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js +2 -2
  17. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  18. package/lib/commonjs/shared/components/screen-lifecycle/index.js +2 -2
  19. package/lib/commonjs/shared/components/screen-lifecycle/index.js.map +1 -1
  20. package/lib/commonjs/shared/constants.js +3 -13
  21. package/lib/commonjs/shared/constants.js.map +1 -1
  22. package/lib/commonjs/shared/hooks/navigation/use-screen-state.js +1 -3
  23. package/lib/commonjs/shared/hooks/navigation/use-screen-state.js.map +1 -1
  24. package/lib/commonjs/shared/hooks/navigation/use-stack.js.map +1 -1
  25. package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +15 -12
  26. package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  27. package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js +2 -6
  28. package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -1
  29. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js.map +1 -1
  30. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +7 -23
  31. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  32. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +1 -1
  33. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  34. package/lib/commonjs/shared/providers/screen/animation/helpers/selected-interpolator-options.js +14 -1
  35. package/lib/commonjs/shared/providers/screen/animation/helpers/selected-interpolator-options.js.map +1 -1
  36. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js +3 -1
  37. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  38. package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js +22 -9
  39. package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
  40. package/lib/commonjs/shared/providers/screen/gestures/ownership/compute-claimed-directions.js +2 -1
  41. package/lib/commonjs/shared/providers/screen/gestures/ownership/compute-claimed-directions.js.map +1 -1
  42. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-activation-decision.js → activation/pan-activation-decision.js} +12 -6
  43. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js.map +1 -0
  44. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-activation-rules.js → activation/pan-activation-rules.js} +12 -9
  45. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/pan-activation-rules.js.map +1 -0
  46. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-activation.js → activation/use-pan-activation.js} +15 -10
  47. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -0
  48. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-lifecycle.js → behavior/pan-lifecycle.js} +29 -8
  49. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -0
  50. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-release.js → behavior/pan-release.js} +5 -5
  51. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-release.js.map +1 -0
  52. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-reset.js → behavior/pan-reset.js} +21 -11
  53. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -0
  54. package/lib/commonjs/shared/providers/screen/gestures/pan/{use-pan-behavior.js → behavior/use-pan-behavior.js} +34 -8
  55. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -0
  56. package/lib/commonjs/shared/providers/screen/gestures/pan/{build-pan-gesture.js → use-build-pan-gesture.js} +10 -8
  57. package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -0
  58. package/lib/commonjs/shared/providers/screen/gestures/pinch/{pinch-activation.js → activation/use-pinch-activation.js} +12 -5
  59. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -0
  60. package/lib/commonjs/shared/providers/screen/gestures/pinch/{pinch-lifecycle.js → behavior/pinch-lifecycle.js} +7 -7
  61. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -0
  62. package/lib/commonjs/shared/providers/screen/gestures/pinch/{pinch-release.js → behavior/pinch-release.js} +4 -4
  63. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -0
  64. package/lib/commonjs/shared/providers/screen/gestures/pinch/{pinch-reset.js → behavior/pinch-reset.js} +6 -3
  65. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -0
  66. package/lib/commonjs/shared/providers/screen/gestures/pinch/{use-pinch-behavior.js → behavior/use-pinch-behavior.js} +6 -5
  67. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -0
  68. package/lib/commonjs/shared/providers/screen/gestures/pinch/{build-pinch-gesture.js → use-build-pinch-gesture.js} +9 -7
  69. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -0
  70. package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +62 -0
  71. package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +1 -0
  72. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +21 -0
  73. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +1 -0
  74. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +29 -0
  75. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +1 -0
  76. package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +45 -0
  77. package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +1 -0
  78. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/index.js +7 -0
  79. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/index.js.map +1 -1
  80. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +40 -0
  81. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -0
  82. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.js +51 -13
  83. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.js.map +1 -1
  84. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +74 -6
  85. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  86. package/lib/commonjs/shared/providers/screen/gestures/shared/directions.js +17 -5
  87. package/lib/commonjs/shared/providers/screen/gestures/shared/directions.js.map +1 -1
  88. package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js +67 -2
  89. package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js.map +1 -1
  90. package/lib/commonjs/shared/providers/screen/gestures/shared/reset.js +3 -12
  91. package/lib/commonjs/shared/providers/screen/gestures/shared/reset.js.map +1 -1
  92. package/lib/commonjs/shared/providers/screen/gestures/shared/runtime.js +1 -10
  93. package/lib/commonjs/shared/providers/screen/gestures/shared/runtime.js.map +1 -1
  94. package/lib/commonjs/shared/providers/screen/gestures/shared/snap-points.js +1 -1
  95. package/lib/commonjs/shared/providers/screen/gestures/shared/snap-points.js.map +1 -1
  96. package/lib/commonjs/shared/providers/screen/gestures/types.js +2 -0
  97. package/lib/commonjs/shared/providers/screen/gestures/types.js.map +1 -1
  98. package/lib/commonjs/shared/providers/screen/options/helpers.js +60 -24
  99. package/lib/commonjs/shared/providers/screen/options/helpers.js.map +1 -1
  100. package/lib/commonjs/shared/providers/screen/styles/components/{maybe-floating-container.js → floating-overlay-layer.js} +5 -5
  101. package/lib/commonjs/shared/providers/screen/styles/components/floating-overlay-layer.js.map +1 -0
  102. package/lib/commonjs/shared/providers/screen/styles/styles.provider.js +3 -3
  103. package/lib/commonjs/shared/providers/screen/styles/styles.provider.js.map +1 -1
  104. package/lib/commonjs/shared/providers/stack/{helpers/managed-stack-state/managed-stack-controller.js → blank-stack-state/blank-stack-controller.js} +11 -11
  105. package/lib/commonjs/shared/providers/stack/blank-stack-state/blank-stack-controller.js.map +1 -0
  106. package/lib/commonjs/shared/providers/stack/{helpers/managed-stack-state/helpers/build-managed-stack-state.js → blank-stack-state/helpers/build-blank-stack-state.js} +18 -18
  107. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -0
  108. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.js +58 -0
  109. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.js.map +1 -0
  110. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/navigation/compose-descriptors.js.map +1 -0
  111. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/navigation/resolve-scene-neighbors.js.map +1 -0
  112. package/lib/commonjs/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/sync-routes-with-removed.js +6 -23
  113. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/navigation/sync-routes-with-removed.js.map +1 -0
  114. package/lib/commonjs/shared/providers/stack/{helpers/managed-stack-state/helpers/reconcile-managed-routes.js → blank-stack-state/helpers/reconcile-blank-stack-routes.js} +8 -8
  115. package/lib/commonjs/shared/providers/stack/{helpers/managed-stack-state/helpers/reconcile-managed-routes.js.map → blank-stack-state/helpers/reconcile-blank-stack-routes.js.map} +1 -1
  116. package/lib/commonjs/shared/providers/stack/{helpers/managed-stack-state/helpers/helpers.js → blank-stack-state/helpers/state-equality.js} +1 -1
  117. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/state-equality.js.map +1 -0
  118. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/types.js.map +1 -0
  119. package/lib/commonjs/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/index.js +5 -5
  120. package/lib/commonjs/shared/providers/stack/blank-stack-state/index.js.map +1 -0
  121. package/lib/commonjs/shared/providers/stack/{managed.provider.js → blank-stack.provider.js} +20 -27
  122. package/lib/commonjs/shared/providers/stack/blank-stack.provider.js.map +1 -0
  123. package/lib/commonjs/shared/providers/stack/direct.provider.js +3 -13
  124. package/lib/commonjs/shared/providers/stack/direct.provider.js.map +1 -1
  125. package/lib/commonjs/shared/stores/animation.store.js +2 -0
  126. package/lib/commonjs/shared/stores/animation.store.js.map +1 -1
  127. package/lib/commonjs/shared/stores/gesture.store.js +5 -1
  128. package/lib/commonjs/shared/stores/gesture.store.js.map +1 -1
  129. package/lib/commonjs/shared/stores/scroll.store.js +49 -5
  130. package/lib/commonjs/shared/stores/scroll.store.js.map +1 -1
  131. package/lib/commonjs/shared/stores/system.store.js +1 -4
  132. package/lib/commonjs/shared/stores/system.store.js.map +1 -1
  133. package/lib/commonjs/shared/types/animation.types.js.map +1 -1
  134. package/lib/commonjs/shared/types/gesture.types.js +12 -0
  135. package/lib/commonjs/shared/types/gesture.types.js.map +1 -1
  136. package/lib/commonjs/shared/types/providers/blank-stack-provider.types.js +6 -0
  137. package/lib/commonjs/shared/types/providers/blank-stack-provider.types.js.map +1 -0
  138. package/lib/commonjs/shared/utils/animation/animate-to-progress.js +10 -4
  139. package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
  140. package/lib/commonjs/shared/utils/animation/animate.js +22 -5
  141. package/lib/commonjs/shared/utils/animation/animate.js.map +1 -1
  142. package/lib/commonjs/shared/utils/animation/spring/index.js +13 -0
  143. package/lib/commonjs/shared/utils/animation/spring/index.js.map +1 -0
  144. package/lib/commonjs/shared/utils/animation/spring/spring.js +248 -0
  145. package/lib/commonjs/shared/utils/animation/spring/spring.js.map +1 -0
  146. package/lib/commonjs/shared/{types/providers/managed-stack.types.js → utils/animation/spring/springConfigs.js} +1 -1
  147. package/lib/commonjs/shared/utils/animation/spring/springConfigs.js.map +1 -0
  148. package/lib/commonjs/shared/utils/animation/spring/springUtils.js +313 -0
  149. package/lib/commonjs/shared/utils/animation/spring/springUtils.js.map +1 -0
  150. package/lib/commonjs/shared/utils/animation/state.js +2 -0
  151. package/lib/commonjs/shared/utils/animation/state.js.map +1 -0
  152. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js +5 -5
  153. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  154. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +4 -4
  155. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  156. package/lib/module/blank-stack/components/stack-view.js +2 -2
  157. package/lib/module/blank-stack/components/stack-view.js.map +1 -1
  158. package/lib/module/component-stack/components/stack-view.js +2 -2
  159. package/lib/module/component-stack/components/stack-view.js.map +1 -1
  160. package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js +1 -10
  161. package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
  162. package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js +1 -1
  163. package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js.map +1 -1
  164. package/lib/module/shared/components/create-transition-aware-component.js +8 -6
  165. package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
  166. package/lib/module/shared/components/overlay/variations/float-overlay.js +7 -12
  167. package/lib/module/shared/components/overlay/variations/float-overlay.js.map +1 -1
  168. package/lib/module/shared/components/scene-view.js +1 -1
  169. package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +7 -7
  170. package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  171. package/lib/module/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js +2 -2
  172. package/lib/module/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  173. package/lib/module/shared/components/screen-lifecycle/index.js +2 -2
  174. package/lib/module/shared/components/screen-lifecycle/index.js.map +1 -1
  175. package/lib/module/shared/constants.js +2 -12
  176. package/lib/module/shared/constants.js.map +1 -1
  177. package/lib/module/shared/hooks/navigation/use-screen-state.js +1 -3
  178. package/lib/module/shared/hooks/navigation/use-screen-state.js.map +1 -1
  179. package/lib/module/shared/hooks/navigation/use-stack.js.map +1 -1
  180. package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +15 -12
  181. package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  182. package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js +2 -6
  183. package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -1
  184. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js.map +1 -1
  185. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +8 -24
  186. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  187. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +1 -1
  188. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  189. package/lib/module/shared/providers/screen/animation/helpers/selected-interpolator-options.js +14 -1
  190. package/lib/module/shared/providers/screen/animation/helpers/selected-interpolator-options.js.map +1 -1
  191. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js +3 -1
  192. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  193. package/lib/module/shared/providers/screen/gestures/gestures.provider.js +20 -7
  194. package/lib/module/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
  195. package/lib/module/shared/providers/screen/gestures/ownership/compute-claimed-directions.js +2 -1
  196. package/lib/module/shared/providers/screen/gestures/ownership/compute-claimed-directions.js.map +1 -1
  197. package/lib/module/shared/providers/screen/gestures/pan/{pan-activation-decision.js → activation/pan-activation-decision.js} +12 -6
  198. package/lib/module/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js.map +1 -0
  199. package/lib/module/shared/providers/screen/gestures/pan/{pan-activation-rules.js → activation/pan-activation-rules.js} +12 -9
  200. package/lib/module/shared/providers/screen/gestures/pan/activation/pan-activation-rules.js.map +1 -0
  201. package/lib/module/shared/providers/screen/gestures/pan/{pan-activation.js → activation/use-pan-activation.js} +15 -10
  202. package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -0
  203. package/lib/module/shared/providers/screen/gestures/pan/{pan-lifecycle.js → behavior/pan-lifecycle.js} +29 -8
  204. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -0
  205. package/lib/module/shared/providers/screen/gestures/pan/{pan-release.js → behavior/pan-release.js} +5 -5
  206. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-release.js.map +1 -0
  207. package/lib/module/shared/providers/screen/gestures/pan/{pan-reset.js → behavior/pan-reset.js} +21 -11
  208. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -0
  209. package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +75 -0
  210. package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -0
  211. package/lib/module/shared/providers/screen/gestures/pan/{build-pan-gesture.js → use-build-pan-gesture.js} +9 -7
  212. package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -0
  213. package/lib/module/shared/providers/screen/gestures/pinch/{pinch-activation.js → activation/use-pinch-activation.js} +12 -5
  214. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -0
  215. package/lib/module/shared/providers/screen/gestures/pinch/{pinch-lifecycle.js → behavior/pinch-lifecycle.js} +7 -7
  216. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -0
  217. package/lib/module/shared/providers/screen/gestures/pinch/{pinch-release.js → behavior/pinch-release.js} +4 -4
  218. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -0
  219. package/lib/module/shared/providers/screen/gestures/pinch/{pinch-reset.js → behavior/pinch-reset.js} +6 -3
  220. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -0
  221. package/lib/module/shared/providers/screen/gestures/pinch/{use-pinch-behavior.js → behavior/use-pinch-behavior.js} +6 -5
  222. package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -0
  223. package/lib/module/shared/providers/screen/gestures/pinch/{build-pinch-gesture.js → use-build-pinch-gesture.js} +8 -6
  224. package/lib/module/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -0
  225. package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +57 -0
  226. package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +1 -0
  227. package/lib/module/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +15 -0
  228. package/lib/module/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +1 -0
  229. package/lib/module/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +24 -0
  230. package/lib/module/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +1 -0
  231. package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +40 -0
  232. package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +1 -0
  233. package/lib/module/shared/providers/screen/gestures/scroll-coordination/index.js +1 -0
  234. package/lib/module/shared/providers/screen/gestures/scroll-coordination/index.js.map +1 -1
  235. package/lib/module/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +33 -0
  236. package/lib/module/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -0
  237. package/lib/module/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.js +48 -12
  238. package/lib/module/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.js.map +1 -1
  239. package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +76 -8
  240. package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  241. package/lib/module/shared/providers/screen/gestures/shared/directions.js +14 -4
  242. package/lib/module/shared/providers/screen/gestures/shared/directions.js.map +1 -1
  243. package/lib/module/shared/providers/screen/gestures/shared/policy.js +68 -3
  244. package/lib/module/shared/providers/screen/gestures/shared/policy.js.map +1 -1
  245. package/lib/module/shared/providers/screen/gestures/shared/reset.js +4 -13
  246. package/lib/module/shared/providers/screen/gestures/shared/reset.js.map +1 -1
  247. package/lib/module/shared/providers/screen/gestures/shared/runtime.js +1 -10
  248. package/lib/module/shared/providers/screen/gestures/shared/runtime.js.map +1 -1
  249. package/lib/module/shared/providers/screen/gestures/shared/snap-points.js +1 -1
  250. package/lib/module/shared/providers/screen/gestures/shared/snap-points.js.map +1 -1
  251. package/lib/module/shared/providers/screen/gestures/types.js +2 -0
  252. package/lib/module/shared/providers/screen/gestures/types.js.map +1 -1
  253. package/lib/module/shared/providers/screen/options/helpers.js +60 -24
  254. package/lib/module/shared/providers/screen/options/helpers.js.map +1 -1
  255. package/lib/module/shared/providers/screen/styles/components/{maybe-floating-container.js → floating-overlay-layer.js} +4 -4
  256. package/lib/module/shared/providers/screen/styles/components/floating-overlay-layer.js.map +1 -0
  257. package/lib/module/shared/providers/screen/styles/styles.provider.js +3 -3
  258. package/lib/module/shared/providers/screen/styles/styles.provider.js.map +1 -1
  259. package/lib/module/shared/providers/stack/{helpers/managed-stack-state/managed-stack-controller.js → blank-stack-state/blank-stack-controller.js} +9 -9
  260. package/lib/module/shared/providers/stack/blank-stack-state/blank-stack-controller.js.map +1 -0
  261. package/lib/module/shared/providers/stack/{helpers/managed-stack-state/helpers/build-managed-stack-state.js → blank-stack-state/helpers/build-blank-stack-state.js} +10 -10
  262. package/lib/module/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -0
  263. package/lib/module/shared/providers/stack/{helpers/managed-stack-state/helpers/derive-managed-stack-state.js → blank-stack-state/helpers/derive-blank-stack-state.js} +7 -7
  264. package/lib/module/shared/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.js.map +1 -0
  265. package/lib/module/shared/providers/stack/blank-stack-state/helpers/navigation/compose-descriptors.js.map +1 -0
  266. package/lib/module/shared/providers/stack/blank-stack-state/helpers/navigation/resolve-scene-neighbors.js.map +1 -0
  267. package/lib/module/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/sync-routes-with-removed.js +6 -23
  268. package/lib/module/shared/providers/stack/blank-stack-state/helpers/navigation/sync-routes-with-removed.js.map +1 -0
  269. package/lib/module/shared/providers/stack/{helpers/managed-stack-state/helpers/reconcile-managed-routes.js → blank-stack-state/helpers/reconcile-blank-stack-routes.js} +5 -5
  270. package/lib/module/shared/providers/stack/blank-stack-state/helpers/reconcile-blank-stack-routes.js.map +1 -0
  271. package/lib/module/shared/providers/stack/{helpers/managed-stack-state/helpers/helpers.js → blank-stack-state/helpers/state-equality.js} +1 -1
  272. package/lib/module/shared/providers/stack/blank-stack-state/helpers/state-equality.js.map +1 -0
  273. package/lib/module/shared/providers/stack/blank-stack-state/helpers/types.js.map +1 -0
  274. package/lib/module/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/index.js +3 -3
  275. package/lib/module/shared/providers/stack/blank-stack-state/index.js.map +1 -0
  276. package/lib/module/shared/providers/stack/{managed.provider.js → blank-stack.provider.js} +19 -26
  277. package/lib/module/shared/providers/stack/blank-stack.provider.js.map +1 -0
  278. package/lib/module/shared/providers/stack/direct.provider.js +3 -13
  279. package/lib/module/shared/providers/stack/direct.provider.js.map +1 -1
  280. package/lib/module/shared/stores/animation.store.js +2 -0
  281. package/lib/module/shared/stores/animation.store.js.map +1 -1
  282. package/lib/module/shared/stores/gesture.store.js +5 -1
  283. package/lib/module/shared/stores/gesture.store.js.map +1 -1
  284. package/lib/module/shared/stores/scroll.store.js +49 -5
  285. package/lib/module/shared/stores/scroll.store.js.map +1 -1
  286. package/lib/module/shared/stores/system.store.js +1 -4
  287. package/lib/module/shared/stores/system.store.js.map +1 -1
  288. package/lib/module/shared/types/animation.types.js.map +1 -1
  289. package/lib/module/shared/types/gesture.types.js +16 -0
  290. package/lib/module/shared/types/gesture.types.js.map +1 -1
  291. package/lib/module/shared/types/providers/blank-stack-provider.types.js +4 -0
  292. package/lib/module/shared/types/providers/blank-stack-provider.types.js.map +1 -0
  293. package/lib/module/shared/utils/animation/animate-to-progress.js +11 -5
  294. package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
  295. package/lib/module/shared/utils/animation/animate.js +21 -5
  296. package/lib/module/shared/utils/animation/animate.js.map +1 -1
  297. package/lib/module/shared/utils/animation/spring/index.js +4 -0
  298. package/lib/module/shared/utils/animation/spring/index.js.map +1 -0
  299. package/lib/module/shared/utils/animation/spring/spring.js +243 -0
  300. package/lib/module/shared/utils/animation/spring/spring.js.map +1 -0
  301. package/lib/module/shared/utils/animation/spring/springConfigs.js +4 -0
  302. package/lib/module/shared/utils/animation/spring/springConfigs.js.map +1 -0
  303. package/lib/module/shared/utils/animation/spring/springUtils.js +300 -0
  304. package/lib/module/shared/utils/animation/spring/springUtils.js.map +1 -0
  305. package/lib/module/shared/utils/animation/state.js +2 -0
  306. package/lib/module/shared/utils/animation/state.js.map +1 -0
  307. package/lib/module/shared/utils/bounds/navigation/reveal/build.js +5 -5
  308. package/lib/module/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  309. package/lib/module/shared/utils/bounds/navigation/zoom/build.js +4 -4
  310. package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  311. package/lib/typescript/blank-stack/components/stack-view.d.ts +1 -1
  312. package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
  313. package/lib/typescript/component-stack/components/stack-view.d.ts +1 -1
  314. package/lib/typescript/component-stack/components/stack-view.d.ts.map +1 -1
  315. package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -1
  316. package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
  317. package/lib/typescript/shared/components/overlay/variations/float-overlay.d.ts.map +1 -1
  318. package/lib/typescript/shared/components/scene-view.d.ts +1 -1
  319. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts +1 -1
  320. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts.map +1 -1
  321. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-transition-start-controller.d.ts +2 -2
  322. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-transition-start-controller.d.ts.map +1 -1
  323. package/lib/typescript/shared/constants.d.ts +0 -9
  324. package/lib/typescript/shared/constants.d.ts.map +1 -1
  325. package/lib/typescript/shared/hooks/navigation/use-screen-state.d.ts.map +1 -1
  326. package/lib/typescript/shared/hooks/navigation/use-stack.d.ts +0 -2
  327. package/lib/typescript/shared/hooks/navigation/use-stack.d.ts.map +1 -1
  328. package/lib/typescript/shared/index.d.ts +13 -13
  329. package/lib/typescript/shared/index.d.ts.map +1 -1
  330. package/lib/typescript/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.d.ts.map +1 -1
  331. package/lib/typescript/shared/providers/screen/animation/helpers/build-screen-transition-options.d.ts.map +1 -1
  332. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
  333. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts +3 -6
  334. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts.map +1 -1
  335. package/lib/typescript/shared/providers/screen/animation/helpers/selected-interpolator-options.d.ts.map +1 -1
  336. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts +3 -2
  337. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts.map +1 -1
  338. package/lib/typescript/shared/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
  339. package/lib/typescript/shared/providers/screen/gestures/ownership/compute-claimed-directions.d.ts +2 -2
  340. package/lib/typescript/shared/providers/screen/gestures/ownership/compute-claimed-directions.d.ts.map +1 -1
  341. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-activation-decision.d.ts → activation/pan-activation-decision.d.ts} +3 -3
  342. package/lib/typescript/shared/providers/screen/gestures/pan/activation/pan-activation-decision.d.ts.map +1 -0
  343. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-activation-rules.d.ts → activation/pan-activation-rules.d.ts} +11 -11
  344. package/lib/typescript/shared/providers/screen/gestures/pan/activation/pan-activation-rules.d.ts.map +1 -0
  345. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-activation.d.ts → activation/use-pan-activation.d.ts} +5 -4
  346. package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -0
  347. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-lifecycle.d.ts → behavior/pan-lifecycle.d.ts} +3 -2
  348. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts.map +1 -0
  349. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-release.d.ts → behavior/pan-release.d.ts} +1 -1
  350. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-release.d.ts.map +1 -0
  351. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-reset.d.ts → behavior/pan-reset.d.ts} +4 -3
  352. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-reset.d.ts.map +1 -0
  353. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts +5 -0
  354. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts.map +1 -0
  355. package/lib/typescript/shared/providers/screen/gestures/pan/use-build-pan-gesture.d.ts +11 -0
  356. package/lib/typescript/shared/providers/screen/gestures/pan/use-build-pan-gesture.d.ts.map +1 -0
  357. package/lib/typescript/shared/providers/screen/gestures/pinch/{pinch-activation.d.ts → activation/use-pinch-activation.d.ts} +5 -4
  358. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts.map +1 -0
  359. package/lib/typescript/shared/providers/screen/gestures/pinch/{pinch-lifecycle.d.ts → behavior/pinch-lifecycle.d.ts} +1 -1
  360. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -0
  361. package/lib/typescript/shared/providers/screen/gestures/pinch/{pinch-release.d.ts → behavior/pinch-release.d.ts} +1 -1
  362. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-release.d.ts.map +1 -0
  363. package/lib/typescript/shared/providers/screen/gestures/pinch/{pinch-reset.d.ts → behavior/pinch-reset.d.ts} +2 -2
  364. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts.map +1 -0
  365. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.d.ts +5 -0
  366. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.d.ts.map +1 -0
  367. package/lib/typescript/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.d.ts +9 -0
  368. package/lib/typescript/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.d.ts.map +1 -0
  369. package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts +15 -0
  370. package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts.map +1 -0
  371. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts +4 -0
  372. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts.map +1 -0
  373. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts +5 -0
  374. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts.map +1 -0
  375. package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts +9 -0
  376. package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts.map +1 -0
  377. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/index.d.ts +1 -0
  378. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/index.d.ts.map +1 -1
  379. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts +12 -0
  380. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts.map +1 -0
  381. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.d.ts +5 -1
  382. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.d.ts.map +1 -1
  383. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.d.ts +4 -0
  384. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.d.ts.map +1 -1
  385. package/lib/typescript/shared/providers/screen/gestures/shared/directions.d.ts +8 -6
  386. package/lib/typescript/shared/providers/screen/gestures/shared/directions.d.ts.map +1 -1
  387. package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts +2 -2
  388. package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts.map +1 -1
  389. package/lib/typescript/shared/providers/screen/gestures/shared/reset.d.ts.map +1 -1
  390. package/lib/typescript/shared/providers/screen/gestures/shared/runtime.d.ts.map +1 -1
  391. package/lib/typescript/shared/providers/screen/gestures/types.d.ts +15 -5
  392. package/lib/typescript/shared/providers/screen/gestures/types.d.ts.map +1 -1
  393. package/lib/typescript/shared/providers/screen/options/helpers.d.ts +2 -2
  394. package/lib/typescript/shared/providers/screen/options/helpers.d.ts.map +1 -1
  395. package/lib/typescript/shared/providers/screen/options/types.d.ts +4 -3
  396. package/lib/typescript/shared/providers/screen/options/types.d.ts.map +1 -1
  397. package/lib/typescript/shared/providers/screen/styles/components/floating-overlay-layer.d.ts +7 -0
  398. package/lib/typescript/shared/providers/screen/styles/components/floating-overlay-layer.d.ts.map +1 -0
  399. package/lib/typescript/shared/providers/stack/blank-stack-state/blank-stack-controller.d.ts +13 -0
  400. package/lib/typescript/shared/providers/stack/blank-stack-state/blank-stack-controller.d.ts.map +1 -0
  401. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.d.ts +13 -0
  402. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.d.ts.map +1 -0
  403. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.d.ts +12 -0
  404. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.d.ts.map +1 -0
  405. package/lib/typescript/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/compose-descriptors.d.ts +1 -1
  406. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/navigation/compose-descriptors.d.ts.map +1 -0
  407. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/navigation/resolve-scene-neighbors.d.ts.map +1 -0
  408. package/lib/typescript/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/sync-routes-with-removed.d.ts +2 -4
  409. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/navigation/sync-routes-with-removed.d.ts.map +1 -0
  410. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/reconcile-blank-stack-routes.d.ts +12 -0
  411. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/reconcile-blank-stack-routes.d.ts.map +1 -0
  412. package/lib/typescript/shared/providers/stack/{helpers/managed-stack-state/helpers/helpers.d.ts → blank-stack-state/helpers/state-equality.d.ts} +4 -4
  413. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/state-equality.d.ts.map +1 -0
  414. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/types.d.ts +39 -0
  415. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/types.d.ts.map +1 -0
  416. package/lib/typescript/shared/providers/stack/blank-stack-state/index.d.ts +12 -0
  417. package/lib/typescript/shared/providers/stack/blank-stack-state/index.d.ts.map +1 -0
  418. package/lib/typescript/shared/providers/stack/blank-stack.provider.d.ts +8 -0
  419. package/lib/typescript/shared/providers/stack/blank-stack.provider.d.ts.map +1 -0
  420. package/lib/typescript/shared/providers/stack/direct.provider.d.ts.map +1 -1
  421. package/lib/typescript/shared/stores/animation.store.d.ts +1 -0
  422. package/lib/typescript/shared/stores/animation.store.d.ts.map +1 -1
  423. package/lib/typescript/shared/stores/gesture.store.d.ts +2 -0
  424. package/lib/typescript/shared/stores/gesture.store.d.ts.map +1 -1
  425. package/lib/typescript/shared/stores/scroll.store.d.ts +15 -8
  426. package/lib/typescript/shared/stores/scroll.store.d.ts.map +1 -1
  427. package/lib/typescript/shared/stores/system.store.d.ts +1 -5
  428. package/lib/typescript/shared/stores/system.store.d.ts.map +1 -1
  429. package/lib/typescript/shared/types/animation.types.d.ts +12 -10
  430. package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
  431. package/lib/typescript/shared/types/bounds.types.d.ts +1 -1
  432. package/lib/typescript/shared/types/gesture.types.d.ts +41 -1
  433. package/lib/typescript/shared/types/gesture.types.d.ts.map +1 -1
  434. package/lib/typescript/shared/types/index.d.ts +1 -1
  435. package/lib/typescript/shared/types/index.d.ts.map +1 -1
  436. package/lib/typescript/shared/types/providers/{managed-stack.types.d.ts → blank-stack-provider.types.d.ts} +11 -11
  437. package/lib/typescript/shared/types/providers/blank-stack-provider.types.d.ts.map +1 -0
  438. package/lib/typescript/shared/types/screen.types.d.ts +14 -2
  439. package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
  440. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
  441. package/lib/typescript/shared/utils/animation/animate.d.ts +8 -3
  442. package/lib/typescript/shared/utils/animation/animate.d.ts.map +1 -1
  443. package/lib/typescript/shared/utils/animation/spring/index.d.ts +3 -0
  444. package/lib/typescript/shared/utils/animation/spring/index.d.ts.map +1 -0
  445. package/lib/typescript/shared/utils/animation/spring/spring.d.ts +24 -0
  446. package/lib/typescript/shared/utils/animation/spring/spring.d.ts.map +1 -0
  447. package/lib/typescript/shared/utils/animation/spring/springConfigs.d.ts +46 -0
  448. package/lib/typescript/shared/utils/animation/spring/springConfigs.d.ts.map +1 -0
  449. package/lib/typescript/shared/utils/animation/spring/springUtils.d.ts +68 -0
  450. package/lib/typescript/shared/utils/animation/spring/springUtils.d.ts.map +1 -0
  451. package/lib/typescript/shared/utils/animation/state.d.ts +6 -0
  452. package/lib/typescript/shared/utils/animation/state.d.ts.map +1 -0
  453. package/lib/typescript/shared/utils/bounds/navigation/reveal/build.d.ts.map +1 -1
  454. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  455. package/package.json +1 -1
  456. package/src/blank-stack/components/stack-view.tsx +2 -2
  457. package/src/component-stack/components/stack-view.tsx +2 -2
  458. package/src/shared/adapters/with-screen-transitions/stack-layout.tsx +0 -14
  459. package/src/shared/components/create-boundary-component/hooks/use-measurer.ts +1 -1
  460. package/src/shared/components/create-transition-aware-component.tsx +14 -6
  461. package/src/shared/components/overlay/variations/float-overlay.tsx +6 -18
  462. package/src/shared/components/scene-view.tsx +1 -1
  463. package/src/shared/components/screen-lifecycle/hooks/use-close-transition-intent.ts +11 -8
  464. package/src/shared/components/screen-lifecycle/hooks/use-transition-start-controller.ts +4 -4
  465. package/src/shared/components/screen-lifecycle/index.tsx +2 -2
  466. package/src/shared/constants.ts +1 -11
  467. package/src/shared/hooks/navigation/use-screen-state.ts +1 -7
  468. package/src/shared/hooks/navigation/use-stack.tsx +0 -2
  469. package/src/shared/index.ts +4 -0
  470. package/src/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +19 -16
  471. package/src/shared/providers/screen/animation/helpers/build-screen-transition-options.ts +2 -17
  472. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.ts +3 -3
  473. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/index.ts +11 -51
  474. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/types.ts +3 -7
  475. package/src/shared/providers/screen/animation/helpers/pipeline.ts +1 -1
  476. package/src/shared/providers/screen/animation/helpers/selected-interpolator-options.ts +24 -1
  477. package/src/shared/providers/screen/animation/helpers/use-build-transition-state.ts +6 -5
  478. package/src/shared/providers/screen/gestures/gestures.provider.tsx +22 -5
  479. package/src/shared/providers/screen/gestures/ownership/compute-claimed-directions.ts +6 -9
  480. package/src/shared/providers/screen/gestures/pan/{pan-activation-decision.ts → activation/pan-activation-decision.ts} +17 -8
  481. package/src/shared/providers/screen/gestures/pan/{pan-activation-rules.ts → activation/pan-activation-rules.ts} +32 -25
  482. package/src/shared/providers/screen/gestures/pan/{pan-activation.ts → activation/use-pan-activation.ts} +23 -12
  483. package/src/shared/providers/screen/gestures/pan/{pan-lifecycle.ts → behavior/pan-lifecycle.ts} +46 -8
  484. package/src/shared/providers/screen/gestures/pan/{pan-release.ts → behavior/pan-release.ts} +6 -6
  485. package/src/shared/providers/screen/gestures/pan/{pan-reset.ts → behavior/pan-reset.ts} +22 -12
  486. package/src/shared/providers/screen/gestures/pan/{use-pan-behavior.ts → behavior/use-pan-behavior.ts} +43 -10
  487. package/src/shared/providers/screen/gestures/pan/{build-pan-gesture.ts → use-build-pan-gesture.ts} +15 -6
  488. package/src/shared/providers/screen/gestures/pinch/{pinch-activation.ts → activation/use-pinch-activation.ts} +17 -5
  489. package/src/shared/providers/screen/gestures/pinch/{pinch-lifecycle.ts → behavior/pinch-lifecycle.ts} +10 -8
  490. package/src/shared/providers/screen/gestures/pinch/{pinch-release.ts → behavior/pinch-release.ts} +5 -5
  491. package/src/shared/providers/screen/gestures/pinch/{pinch-reset.ts → behavior/pinch-reset.ts} +11 -5
  492. package/src/shared/providers/screen/gestures/pinch/{use-pinch-behavior.ts → behavior/use-pinch-behavior.ts} +16 -6
  493. package/src/shared/providers/screen/gestures/pinch/{build-pinch-gesture.ts → use-build-pinch-gesture.ts} +18 -6
  494. package/src/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.ts +87 -0
  495. package/src/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.ts +19 -0
  496. package/src/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.ts +47 -0
  497. package/src/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.ts +55 -0
  498. package/src/shared/providers/screen/gestures/scroll-coordination/index.ts +1 -0
  499. package/src/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.tsx +43 -0
  500. package/src/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.ts +59 -4
  501. package/src/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.ts +130 -8
  502. package/src/shared/providers/screen/gestures/shared/directions.ts +27 -13
  503. package/src/shared/providers/screen/gestures/shared/policy.ts +99 -5
  504. package/src/shared/providers/screen/gestures/shared/reset.ts +9 -17
  505. package/src/shared/providers/screen/gestures/shared/runtime.ts +1 -14
  506. package/src/shared/providers/screen/gestures/shared/snap-points.ts +1 -1
  507. package/src/shared/providers/screen/gestures/types.ts +22 -3
  508. package/src/shared/providers/screen/options/helpers.ts +85 -30
  509. package/src/shared/providers/screen/options/types.ts +6 -5
  510. package/src/shared/providers/screen/styles/components/{maybe-floating-container.tsx → floating-overlay-layer.tsx} +6 -6
  511. package/src/shared/providers/screen/styles/styles.provider.tsx +3 -3
  512. package/src/shared/providers/stack/{helpers/managed-stack-state/managed-stack-controller.ts → blank-stack-state/blank-stack-controller.ts} +22 -20
  513. package/src/shared/providers/stack/{helpers/managed-stack-state/helpers/build-managed-stack-state.ts → blank-stack-state/helpers/build-blank-stack-state.ts} +28 -25
  514. package/src/shared/providers/stack/{helpers/managed-stack-state/helpers/derive-managed-stack-state.ts → blank-stack-state/helpers/derive-blank-stack-state.ts} +13 -13
  515. package/src/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/compose-descriptors.ts +1 -1
  516. package/src/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/sync-routes-with-removed.ts +8 -40
  517. package/src/shared/providers/stack/{helpers/managed-stack-state/helpers/reconcile-managed-routes.ts → blank-stack-state/helpers/reconcile-blank-stack-routes.ts} +26 -22
  518. package/src/shared/providers/stack/{helpers/managed-stack-state/helpers/helpers.ts → blank-stack-state/helpers/state-equality.ts} +4 -4
  519. package/src/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/helpers/types.ts +16 -15
  520. package/src/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/index.ts +9 -9
  521. package/src/shared/providers/stack/blank-stack.provider.tsx +118 -0
  522. package/src/shared/providers/stack/direct.provider.tsx +38 -54
  523. package/src/shared/stores/animation.store.ts +3 -0
  524. package/src/shared/stores/gesture.store.ts +6 -0
  525. package/src/shared/stores/scroll.store.ts +80 -7
  526. package/src/shared/stores/system.store.ts +1 -9
  527. package/src/shared/types/animation.types.ts +12 -14
  528. package/src/shared/types/bounds.types.ts +1 -1
  529. package/src/shared/types/gesture.types.ts +51 -1
  530. package/src/shared/types/index.ts +8 -0
  531. package/src/shared/types/providers/{managed-stack.types.ts → blank-stack-provider.types.ts} +10 -10
  532. package/src/shared/types/screen.types.ts +15 -2
  533. package/src/shared/utils/animation/animate-to-progress.ts +18 -7
  534. package/src/shared/utils/animation/animate.ts +44 -21
  535. package/src/shared/utils/animation/spring/index.ts +2 -0
  536. package/src/shared/utils/animation/spring/spring.ts +347 -0
  537. package/src/shared/utils/animation/spring/springConfigs.ts +46 -0
  538. package/src/shared/utils/animation/spring/springUtils.ts +418 -0
  539. package/src/shared/utils/animation/state.ts +6 -0
  540. package/src/shared/utils/bounds/navigation/reveal/build.ts +5 -9
  541. package/src/shared/utils/bounds/navigation/zoom/build.ts +4 -6
  542. package/lib/commonjs/shared/hooks/navigation/use-closing-route-keys.js +0 -61
  543. package/lib/commonjs/shared/hooks/navigation/use-closing-route-keys.js.map +0 -1
  544. package/lib/commonjs/shared/hooks/navigation/use-optimistic-focused-index.js +0 -20
  545. package/lib/commonjs/shared/hooks/navigation/use-optimistic-focused-index.js.map +0 -1
  546. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js +0 -29
  547. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js.map +0 -1
  548. package/lib/commonjs/shared/providers/screen/gestures/pan/build-pan-gesture.js.map +0 -1
  549. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation-decision.js.map +0 -1
  550. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation-rules.js.map +0 -1
  551. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation.js.map +0 -1
  552. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +0 -1
  553. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-release.js.map +0 -1
  554. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-reset.js.map +0 -1
  555. package/lib/commonjs/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +0 -1
  556. package/lib/commonjs/shared/providers/screen/gestures/pinch/build-pinch-gesture.js.map +0 -1
  557. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-activation.js.map +0 -1
  558. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +0 -1
  559. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-release.js.map +0 -1
  560. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-reset.js.map +0 -1
  561. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +0 -1
  562. package/lib/commonjs/shared/providers/screen/styles/components/maybe-floating-container.js.map +0 -1
  563. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js.map +0 -1
  564. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js +0 -58
  565. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js.map +0 -1
  566. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js.map +0 -1
  567. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/types.js.map +0 -1
  568. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/index.js.map +0 -1
  569. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js.map +0 -1
  570. package/lib/commonjs/shared/providers/stack/helpers/use-closing-route-map.js +0 -30
  571. package/lib/commonjs/shared/providers/stack/helpers/use-closing-route-map.js.map +0 -1
  572. package/lib/commonjs/shared/providers/stack/helpers/use-processed-routes.js +0 -58
  573. package/lib/commonjs/shared/providers/stack/helpers/use-processed-routes.js.map +0 -1
  574. package/lib/commonjs/shared/providers/stack/helpers/use-stack-derived.js +0 -27
  575. package/lib/commonjs/shared/providers/stack/helpers/use-stack-derived.js.map +0 -1
  576. package/lib/commonjs/shared/providers/stack/managed.provider.js.map +0 -1
  577. package/lib/commonjs/shared/types/providers/managed-stack.types.js.map +0 -1
  578. package/lib/commonjs/shared/utils/navigation/compose-descriptors.js.map +0 -1
  579. package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js.map +0 -1
  580. package/lib/commonjs/shared/utils/navigation/sync-routes-with-removed.js.map +0 -1
  581. package/lib/module/shared/hooks/navigation/use-closing-route-keys.js +0 -55
  582. package/lib/module/shared/hooks/navigation/use-closing-route-keys.js.map +0 -1
  583. package/lib/module/shared/hooks/navigation/use-optimistic-focused-index.js +0 -17
  584. package/lib/module/shared/hooks/navigation/use-optimistic-focused-index.js.map +0 -1
  585. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js +0 -22
  586. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js.map +0 -1
  587. package/lib/module/shared/providers/screen/gestures/pan/build-pan-gesture.js.map +0 -1
  588. package/lib/module/shared/providers/screen/gestures/pan/pan-activation-decision.js.map +0 -1
  589. package/lib/module/shared/providers/screen/gestures/pan/pan-activation-rules.js.map +0 -1
  590. package/lib/module/shared/providers/screen/gestures/pan/pan-activation.js.map +0 -1
  591. package/lib/module/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +0 -1
  592. package/lib/module/shared/providers/screen/gestures/pan/pan-release.js.map +0 -1
  593. package/lib/module/shared/providers/screen/gestures/pan/pan-reset.js.map +0 -1
  594. package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js +0 -49
  595. package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +0 -1
  596. package/lib/module/shared/providers/screen/gestures/pinch/build-pinch-gesture.js.map +0 -1
  597. package/lib/module/shared/providers/screen/gestures/pinch/pinch-activation.js.map +0 -1
  598. package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +0 -1
  599. package/lib/module/shared/providers/screen/gestures/pinch/pinch-release.js.map +0 -1
  600. package/lib/module/shared/providers/screen/gestures/pinch/pinch-reset.js.map +0 -1
  601. package/lib/module/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +0 -1
  602. package/lib/module/shared/providers/screen/styles/components/maybe-floating-container.js.map +0 -1
  603. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js.map +0 -1
  604. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js.map +0 -1
  605. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js.map +0 -1
  606. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js.map +0 -1
  607. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/types.js.map +0 -1
  608. package/lib/module/shared/providers/stack/helpers/managed-stack-state/index.js.map +0 -1
  609. package/lib/module/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js.map +0 -1
  610. package/lib/module/shared/providers/stack/helpers/use-closing-route-map.js +0 -25
  611. package/lib/module/shared/providers/stack/helpers/use-closing-route-map.js.map +0 -1
  612. package/lib/module/shared/providers/stack/helpers/use-processed-routes.js +0 -54
  613. package/lib/module/shared/providers/stack/helpers/use-processed-routes.js.map +0 -1
  614. package/lib/module/shared/providers/stack/helpers/use-stack-derived.js +0 -23
  615. package/lib/module/shared/providers/stack/helpers/use-stack-derived.js.map +0 -1
  616. package/lib/module/shared/providers/stack/managed.provider.js.map +0 -1
  617. package/lib/module/shared/types/providers/managed-stack.types.js +0 -4
  618. package/lib/module/shared/types/providers/managed-stack.types.js.map +0 -1
  619. package/lib/module/shared/utils/navigation/compose-descriptors.js.map +0 -1
  620. package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js.map +0 -1
  621. package/lib/module/shared/utils/navigation/sync-routes-with-removed.js.map +0 -1
  622. package/lib/typescript/shared/hooks/navigation/use-closing-route-keys.d.ts +0 -8
  623. package/lib/typescript/shared/hooks/navigation/use-closing-route-keys.d.ts.map +0 -1
  624. package/lib/typescript/shared/hooks/navigation/use-optimistic-focused-index.d.ts +0 -7
  625. package/lib/typescript/shared/hooks/navigation/use-optimistic-focused-index.d.ts.map +0 -1
  626. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.d.ts +0 -5
  627. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.d.ts.map +0 -1
  628. package/lib/typescript/shared/providers/screen/gestures/pan/build-pan-gesture.d.ts +0 -10
  629. package/lib/typescript/shared/providers/screen/gestures/pan/build-pan-gesture.d.ts.map +0 -1
  630. package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation-decision.d.ts.map +0 -1
  631. package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation-rules.d.ts.map +0 -1
  632. package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation.d.ts.map +0 -1
  633. package/lib/typescript/shared/providers/screen/gestures/pan/pan-lifecycle.d.ts.map +0 -1
  634. package/lib/typescript/shared/providers/screen/gestures/pan/pan-release.d.ts.map +0 -1
  635. package/lib/typescript/shared/providers/screen/gestures/pan/pan-reset.d.ts.map +0 -1
  636. package/lib/typescript/shared/providers/screen/gestures/pan/use-pan-behavior.d.ts +0 -5
  637. package/lib/typescript/shared/providers/screen/gestures/pan/use-pan-behavior.d.ts.map +0 -1
  638. package/lib/typescript/shared/providers/screen/gestures/pinch/build-pinch-gesture.d.ts +0 -7
  639. package/lib/typescript/shared/providers/screen/gestures/pinch/build-pinch-gesture.d.ts.map +0 -1
  640. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-activation.d.ts.map +0 -1
  641. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-lifecycle.d.ts.map +0 -1
  642. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-release.d.ts.map +0 -1
  643. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-reset.d.ts.map +0 -1
  644. package/lib/typescript/shared/providers/screen/gestures/pinch/use-pinch-behavior.d.ts +0 -5
  645. package/lib/typescript/shared/providers/screen/gestures/pinch/use-pinch-behavior.d.ts.map +0 -1
  646. package/lib/typescript/shared/providers/screen/styles/components/maybe-floating-container.d.ts +0 -7
  647. package/lib/typescript/shared/providers/screen/styles/components/maybe-floating-container.d.ts.map +0 -1
  648. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.d.ts +0 -13
  649. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.d.ts.map +0 -1
  650. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.d.ts +0 -12
  651. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.d.ts.map +0 -1
  652. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.d.ts.map +0 -1
  653. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.d.ts +0 -12
  654. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.d.ts.map +0 -1
  655. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/types.d.ts +0 -39
  656. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/types.d.ts.map +0 -1
  657. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/index.d.ts +0 -12
  658. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/index.d.ts.map +0 -1
  659. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.d.ts +0 -13
  660. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.d.ts.map +0 -1
  661. package/lib/typescript/shared/providers/stack/helpers/use-closing-route-map.d.ts +0 -7
  662. package/lib/typescript/shared/providers/stack/helpers/use-closing-route-map.d.ts.map +0 -1
  663. package/lib/typescript/shared/providers/stack/helpers/use-processed-routes.d.ts +0 -17
  664. package/lib/typescript/shared/providers/stack/helpers/use-processed-routes.d.ts.map +0 -1
  665. package/lib/typescript/shared/providers/stack/helpers/use-stack-derived.d.ts +0 -18
  666. package/lib/typescript/shared/providers/stack/helpers/use-stack-derived.d.ts.map +0 -1
  667. package/lib/typescript/shared/providers/stack/managed.provider.d.ts +0 -8
  668. package/lib/typescript/shared/providers/stack/managed.provider.d.ts.map +0 -1
  669. package/lib/typescript/shared/types/providers/managed-stack.types.d.ts.map +0 -1
  670. package/lib/typescript/shared/utils/navigation/compose-descriptors.d.ts.map +0 -1
  671. package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts.map +0 -1
  672. package/lib/typescript/shared/utils/navigation/sync-routes-with-removed.d.ts.map +0 -1
  673. package/src/shared/hooks/navigation/use-closing-route-keys.ts +0 -60
  674. package/src/shared/hooks/navigation/use-optimistic-focused-index.ts +0 -19
  675. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.ts +0 -41
  676. package/src/shared/providers/stack/helpers/use-closing-route-map.ts +0 -28
  677. package/src/shared/providers/stack/helpers/use-processed-routes.ts +0 -85
  678. package/src/shared/providers/stack/helpers/use-stack-derived.ts +0 -34
  679. package/src/shared/providers/stack/managed.provider.tsx +0 -126
  680. /package/lib/commonjs/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/compose-descriptors.js +0 -0
  681. /package/lib/commonjs/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/resolve-scene-neighbors.js +0 -0
  682. /package/lib/commonjs/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/helpers/types.js +0 -0
  683. /package/lib/module/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/compose-descriptors.js +0 -0
  684. /package/lib/module/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/resolve-scene-neighbors.js +0 -0
  685. /package/lib/module/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/helpers/types.js +0 -0
  686. /package/lib/typescript/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/resolve-scene-neighbors.d.ts +0 -0
  687. /package/src/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/resolve-scene-neighbors.ts +0 -0
@@ -4,17 +4,18 @@ import type {
4
4
  GestureTouchEvent,
5
5
  } from "react-native-gesture-handler";
6
6
  import { type SharedValue, useSharedValue } from "react-native-reanimated";
7
- import { GestureStore } from "../../../../stores/gesture.store";
8
- import { GestureActivationState } from "../../../../types/gesture.types";
9
- import { useDescriptorDerivations } from "../../descriptors";
10
- import type { ScreenOptionsContextValue } from "../../options";
11
- import { resolvePanRuntime } from "../shared/runtime";
7
+ import { GestureStore } from "../../../../../stores/gesture.store";
8
+ import { GestureActivationState } from "../../../../../types/gesture.types";
9
+ import { useDescriptorDerivations } from "../../../descriptors";
10
+ import type { ScreenOptionsContextValue } from "../../../options";
11
+ import { resolvePanRuntime } from "../../shared/runtime";
12
12
  import type {
13
13
  DirectionClaimMap,
14
+ GestureCompositionActivation,
14
15
  GestureDimensions,
15
16
  PanGestureRuntime,
16
17
  ScrollGestureState,
17
- } from "../types";
18
+ } from "../../types";
18
19
  import { resolvePanActivationMoveDecision } from "./pan-activation-decision";
19
20
 
20
21
  interface UsePanActivationProps {
@@ -23,6 +24,7 @@ interface UsePanActivationProps {
23
24
  runtime: SharedValue<PanGestureRuntime>;
24
25
  screenOptions: ScreenOptionsContextValue;
25
26
  dimensions: GestureDimensions;
27
+ gestureCompositionActivation: SharedValue<GestureCompositionActivation>;
26
28
  }
27
29
 
28
30
  export const usePanActivation = ({
@@ -31,6 +33,7 @@ export const usePanActivation = ({
31
33
  runtime,
32
34
  screenOptions,
33
35
  dimensions,
36
+ gestureCompositionActivation,
34
37
  }: UsePanActivationProps) => {
35
38
  const { currentScreenKey, parentScreenKey } = useDescriptorDerivations();
36
39
 
@@ -51,16 +54,12 @@ export const usePanActivation = ({
51
54
  stateManager: GestureStateManager | undefined,
52
55
  ) => {
53
56
  "worklet";
54
- const { participation, policy } = resolvePanRuntime(
57
+ const { participation } = resolvePanRuntime(
55
58
  runtime.get(),
56
59
  screenOptions.get(),
57
60
  );
58
61
 
59
- if (
60
- !participation.canTrackGesture ||
61
- !policy.enabled ||
62
- event.numberOfTouches !== 1
63
- ) {
62
+ if (!participation.canTrackGesture) {
64
63
  gestureActivationState.set(GestureActivationState.FAILED);
65
64
  stateManager?.fail();
66
65
  return;
@@ -82,6 +81,16 @@ export const usePanActivation = ({
82
81
  runtime.get(),
83
82
  screenOptions.get(),
84
83
  );
84
+
85
+ if (
86
+ gestureCompositionActivation.get() === "pinch" &&
87
+ resolvedRuntime.participation.canTrackGesture &&
88
+ event.numberOfTouches === 2
89
+ ) {
90
+ stateManager.activate();
91
+ return;
92
+ }
93
+
85
94
  const decision = resolvePanActivationMoveDecision({
86
95
  event,
87
96
  runtime: resolvedRuntime,
@@ -113,6 +122,7 @@ export const usePanActivation = ({
113
122
  gestures.direction.set(decision.direction);
114
123
  }
115
124
 
125
+ gestureCompositionActivation.set("pan");
116
126
  stateManager.activate();
117
127
  },
118
128
  [
@@ -125,6 +135,7 @@ export const usePanActivation = ({
125
135
  runtime,
126
136
  screenOptions,
127
137
  scrollState,
138
+ gestureCompositionActivation,
128
139
  ],
129
140
  );
130
141
 
@@ -1,18 +1,19 @@
1
- import { clamp, runOnJS } from "react-native-reanimated";
2
- import { EPSILON, FALSE, TRUE } from "../../../../constants";
3
- import { animateToProgress } from "../../../../utils/animation/animate-to-progress";
4
- import { emit } from "../../../../utils/animation/emit";
1
+ import { clamp, runOnJS, type SharedValue } from "react-native-reanimated";
2
+ import { EPSILON, FALSE, TRUE } from "../../../../../constants";
3
+ import { animateToProgress } from "../../../../../utils/animation/animate-to-progress";
4
+ import { emit } from "../../../../../utils/animation/emit";
5
5
  import {
6
6
  normalizeGestureTranslation,
7
7
  resolveGestureVelocity,
8
- } from "../shared/physics";
8
+ } from "../../shared/physics";
9
9
  import type {
10
+ GestureCompositionActivation,
10
11
  GestureDimensions,
11
12
  PanGestureEvent,
12
13
  PanGestureRuntime,
13
14
  PanReleaseResult,
14
15
  PanTrackState,
15
- } from "../types";
16
+ } from "../../types";
16
17
  import { buildPanReleasePlan } from "./pan-release";
17
18
  import { resetPanGestureValues } from "./pan-reset";
18
19
 
@@ -26,7 +27,9 @@ export const startPanBase = (runtime: PanGestureRuntime) => {
26
27
  const wasSettling = gestures.settling.get();
27
28
  const hasResidualGesture =
28
29
  Math.abs(gestures.normX.get()) > EPSILON ||
29
- Math.abs(gestures.normY.get()) > EPSILON;
30
+ Math.abs(gestures.normY.get()) > EPSILON ||
31
+ Math.abs(gestures.normScale.get()) > EPSILON ||
32
+ Math.abs(gestures.rotation.get()) > EPSILON;
30
33
 
31
34
  if (!wasSettling || !hasResidualGesture) {
32
35
  emit(animations.willAnimate, TRUE, FALSE);
@@ -40,10 +43,18 @@ export const startPanBase = (runtime: PanGestureRuntime) => {
40
43
  gestures.normX.set(0);
41
44
  gestures.normY.set(0);
42
45
  gestures.velocity.set(0);
46
+ gestures.scale.set(1);
47
+ gestures.normScale.set(0);
48
+ gestures.focalX.set(0);
49
+ gestures.focalY.set(0);
50
+ gestures.rotation.set(0);
43
51
  gestures.raw.x.set(0);
44
52
  gestures.raw.y.set(0);
45
53
  gestures.raw.normX.set(0);
46
54
  gestures.raw.normY.set(0);
55
+ gestures.raw.scale.set(1);
56
+ gestures.raw.normScale.set(0);
57
+ gestures.raw.rotation.set(0);
47
58
  gestureProgressBaseline.set(animations.progress.get());
48
59
  };
49
60
 
@@ -98,12 +109,34 @@ export const finalizePanRelease = (
98
109
  dimensions: GestureDimensions,
99
110
  rawEvent: PanGestureEvent,
100
111
  requestDismiss?: () => void,
112
+ gestureCompositionActivation?: SharedValue<GestureCompositionActivation>,
101
113
  ) => {
102
114
  "worklet";
103
115
  const {
116
+ policy,
104
117
  stores: { gestures, animations, system },
105
118
  } = runtime;
106
- const plan = buildPanReleasePlan(release, runtime, dimensions, rawEvent);
119
+
120
+ const canDriveRelease =
121
+ !gestureCompositionActivation ||
122
+ gestureCompositionActivation.get() === "pan";
123
+
124
+ const plan = buildPanReleasePlan(
125
+ canDriveRelease
126
+ ? release
127
+ : {
128
+ target: animations.progress.get(),
129
+ shouldDismiss: false,
130
+ initialVelocity: 0,
131
+ resetNormalizedValuesImmediately:
132
+ policy.gestureProgressMode === "progress-driven",
133
+ transitionSpec: undefined,
134
+ resetSpec: policy.transitionSpec?.open,
135
+ },
136
+ runtime,
137
+ dimensions,
138
+ rawEvent,
139
+ );
107
140
 
108
141
  if (typeof plan.commitProgress === "number") {
109
142
  animations.progress.set(plan.commitProgress);
@@ -122,8 +155,13 @@ export const finalizePanRelease = (
122
155
  resetNormalizedValues: plan.resetNormalizedValues,
123
156
  resetNormalizedValuesImmediately: plan.resetNormalizedValuesImmediately,
124
157
  preserveRawValues: plan.preserveRawValues,
158
+ updateLifecycle: canDriveRelease,
125
159
  });
126
160
 
161
+ if (!canDriveRelease) {
162
+ return;
163
+ }
164
+
127
165
  const progressAlreadyAtTarget =
128
166
  Math.abs(animations.progress.get() - plan.target) <= EPSILON;
129
167
 
@@ -2,28 +2,28 @@ import { clamp } from "react-native-reanimated";
2
2
  import {
3
3
  getPanSnapAxisConfigForDirection,
4
4
  isResolvedPanGestureDirection,
5
- } from "../shared/directions";
5
+ } from "../../shared/directions";
6
6
  import {
7
7
  getPanReleaseHandoffVelocity,
8
8
  getPanReleaseProgressVelocity,
9
9
  resolveGestureVelocity,
10
- } from "../shared/physics";
10
+ } from "../../shared/physics";
11
11
  import {
12
12
  getProgressVelocityTowardTarget,
13
13
  resolveGestureSnapTransitionSpec,
14
- } from "../shared/release";
14
+ } from "../../shared/release";
15
15
  import {
16
16
  primeRuntimeSnapPoint,
17
17
  resolveRuntimeGestureSnapPoints,
18
- } from "../shared/snap-points";
19
- import { determineDismissal, determineSnapTarget } from "../shared/targets";
18
+ } from "../../shared/snap-points";
19
+ import { determineDismissal, determineSnapTarget } from "../../shared/targets";
20
20
  import type {
21
21
  GestureDimensions,
22
22
  PanGestureEvent,
23
23
  PanGestureRuntime,
24
24
  PanReleasePlan,
25
25
  PanReleaseResult,
26
- } from "../types";
26
+ } from "../../types";
27
27
 
28
28
  const resolvePanReleaseVelocity = (
29
29
  runtime: PanGestureRuntime,
@@ -1,11 +1,11 @@
1
- import { EPSILON, FALSE, TRUE } from "../../../../constants";
2
- import type { GestureStoreMap } from "../../../../stores/gesture.store";
3
- import type { AnimationConfig } from "../../../../types/animation.types";
1
+ import { EPSILON, FALSE, TRUE } from "../../../../../constants";
2
+ import type { GestureStoreMap } from "../../../../../stores/gesture.store";
3
+ import type { AnimationConfig } from "../../../../../types/animation.types";
4
4
  import {
5
5
  animateResetValue,
6
6
  clearGestureSettlingIfResting,
7
7
  getGestureResetSpec,
8
- } from "../shared/reset";
8
+ } from "../../shared/reset";
9
9
 
10
10
  interface ResetPanGestureValuesProps {
11
11
  spec?: AnimationConfig;
@@ -19,6 +19,7 @@ interface ResetPanGestureValuesProps {
19
19
  resetNormalizedValues?: boolean;
20
20
  resetNormalizedValuesImmediately?: boolean;
21
21
  preserveRawValues?: boolean;
22
+ updateLifecycle?: boolean;
22
23
  }
23
24
 
24
25
  const clearPanSettlingIfResting = (gestures: GestureStoreMap) => {
@@ -47,8 +48,15 @@ export const resetPanGestureValues = ({
47
48
  resetNormalizedValues = true,
48
49
  resetNormalizedValuesImmediately = false,
49
50
  preserveRawValues = shouldDismiss,
51
+ updateLifecycle = true,
50
52
  }: ResetPanGestureValuesProps) => {
51
53
  "worklet";
54
+ const clearSettlingIfNeeded = () => {
55
+ "worklet";
56
+ if (updateLifecycle) {
57
+ clearPanSettlingIfResting(gestures);
58
+ }
59
+ };
52
60
 
53
61
  if (!preserveRawValues) {
54
62
  gestures.raw.x.set(0);
@@ -57,16 +65,18 @@ export const resetPanGestureValues = ({
57
65
  gestures.raw.normY.set(0);
58
66
  }
59
67
 
60
- gestures.dragging.set(FALSE);
61
- gestures.dismissing.set(shouldDismiss ? TRUE : FALSE);
62
- gestures.settling.set(shouldDismiss ? FALSE : TRUE);
68
+ if (updateLifecycle) {
69
+ gestures.dragging.set(FALSE);
70
+ gestures.dismissing.set(shouldDismiss ? TRUE : FALSE);
71
+ gestures.settling.set(shouldDismiss ? FALSE : TRUE);
72
+ }
63
73
  gestures.velocity.set(shouldDismiss ? (releaseVelocity ?? 0) : 0);
64
74
 
65
75
  animateResetValue(gestures.x, 0, getGestureResetSpec(spec, velocityX), () =>
66
- clearPanSettlingIfResting(gestures),
76
+ clearSettlingIfNeeded(),
67
77
  );
68
78
  animateResetValue(gestures.y, 0, getGestureResetSpec(spec, velocityY), () =>
69
- clearPanSettlingIfResting(gestures),
79
+ clearSettlingIfNeeded(),
70
80
  );
71
81
 
72
82
  if (!resetNormalizedValues) {
@@ -76,7 +86,7 @@ export const resetPanGestureValues = ({
76
86
  if (resetNormalizedValuesImmediately) {
77
87
  gestures.normX.set(0);
78
88
  gestures.normY.set(0);
79
- clearPanSettlingIfResting(gestures);
89
+ clearSettlingIfNeeded();
80
90
  return;
81
91
  }
82
92
 
@@ -84,12 +94,12 @@ export const resetPanGestureValues = ({
84
94
  gestures.normX,
85
95
  0,
86
96
  getGestureResetSpec(spec, velocityNormX),
87
- () => clearPanSettlingIfResting(gestures),
97
+ () => clearSettlingIfNeeded(),
88
98
  );
89
99
  animateResetValue(
90
100
  gestures.normY,
91
101
  0,
92
102
  getGestureResetSpec(spec, velocityNormY),
93
- () => clearPanSettlingIfResting(gestures),
103
+ () => clearSettlingIfNeeded(),
94
104
  );
95
105
  };
@@ -1,15 +1,16 @@
1
1
  import { useCallback, useMemo } from "react";
2
2
  import type { SharedValue } from "react-native-reanimated";
3
- import { useNavigationHelpers } from "../../../../hooks/navigation/use-navigation-helpers";
4
- import type { ScreenOptionsContextValue } from "../../options";
5
- import { usePanGestureSensitivity } from "../hooks/use-gesture-sensitivity";
6
- import { resolvePanRuntime } from "../shared/runtime";
3
+ import { useNavigationHelpers } from "../../../../../hooks/navigation/use-navigation-helpers";
4
+ import type { ScreenOptionsContextValue } from "../../../options";
5
+ import { usePanGestureSensitivity } from "../../hooks/use-gesture-sensitivity";
6
+ import { resolvePanRuntime } from "../../shared/runtime";
7
7
  import type {
8
+ GestureCompositionActivation,
8
9
  GestureDimensions,
9
10
  PanBehavior,
10
11
  PanGestureEvent,
11
12
  PanGestureRuntime,
12
- } from "../types";
13
+ } from "../../types";
13
14
  import {
14
15
  finalizePanRelease,
15
16
  startPanBase,
@@ -25,6 +26,7 @@ export const usePanBehavior = (
25
26
  runtime: SharedValue<PanGestureRuntime>,
26
27
  screenOptions: ScreenOptionsContextValue,
27
28
  dimensions: GestureDimensions,
29
+ gestureCompositionActivation: SharedValue<GestureCompositionActivation>,
28
30
  ): PanBehavior => {
29
31
  const { dismissScreen, requestDismiss } = useNavigationHelpers();
30
32
  const { withSensitivity, resetSensitivity } =
@@ -33,12 +35,27 @@ export const usePanBehavior = (
33
35
  const onStart = useCallback(() => {
34
36
  "worklet";
35
37
  const latestRuntime = resolvePanRuntime(runtime.get(), screenOptions.get());
38
+ if (gestureCompositionActivation.get() === "pinch") {
39
+ const { gestures } = latestRuntime.stores;
40
+ gestures.x.set(0);
41
+ gestures.y.set(0);
42
+ gestures.normX.set(0);
43
+ gestures.normY.set(0);
44
+ gestures.velocity.set(0);
45
+ gestures.raw.x.set(0);
46
+ gestures.raw.y.set(0);
47
+ gestures.raw.normX.set(0);
48
+ gestures.raw.normY.set(0);
49
+ resetSensitivity();
50
+ return;
51
+ }
52
+
36
53
  if (latestRuntime.participation.effectiveSnapPoints.hasSnapPoints) {
37
54
  primeSnapPanRelease(latestRuntime);
38
55
  }
39
56
  startPanBase(latestRuntime);
40
57
  resetSensitivity();
41
- }, [runtime, screenOptions, resetSensitivity]);
58
+ }, [runtime, screenOptions, resetSensitivity, gestureCompositionActivation]);
42
59
 
43
60
  const onUpdate = useCallback(
44
61
  (rawEvent: PanGestureEvent) => {
@@ -66,10 +83,20 @@ export const usePanBehavior = (
66
83
  screenOptions.get(),
67
84
  );
68
85
  const event = withSensitivity(rawEvent);
69
- const release = latestRuntime.participation.effectiveSnapPoints
70
- .hasSnapPoints
71
- ? resolveSnapPanRelease(event, latestRuntime, dimensions)
72
- : resolvePanRelease(event, latestRuntime, dimensions);
86
+
87
+ const release = !latestRuntime.policy.enabled
88
+ ? {
89
+ target: latestRuntime.stores.animations.progress.get(),
90
+ shouldDismiss: false,
91
+ initialVelocity: 0,
92
+ transitionSpec: undefined,
93
+ resetSpec: latestRuntime.policy.transitionSpec?.open,
94
+ }
95
+ : latestRuntime.participation.effectiveSnapPoints.hasSnapPoints
96
+ ? resolveSnapPanRelease(event, latestRuntime, dimensions)
97
+ : resolvePanRelease(event, latestRuntime, dimensions);
98
+ const isPanComposition = gestureCompositionActivation.get() === "pan";
99
+
73
100
  finalizePanRelease(
74
101
  release,
75
102
  latestRuntime,
@@ -77,7 +104,12 @@ export const usePanBehavior = (
77
104
  dimensions,
78
105
  rawEvent,
79
106
  requestDismiss,
107
+ gestureCompositionActivation,
80
108
  );
109
+
110
+ if (isPanComposition) {
111
+ gestureCompositionActivation.set(null);
112
+ }
81
113
  },
82
114
  [
83
115
  runtime,
@@ -86,6 +118,7 @@ export const usePanBehavior = (
86
118
  dismissScreen,
87
119
  requestDismiss,
88
120
  withSensitivity,
121
+ gestureCompositionActivation,
89
122
  ],
90
123
  );
91
124
 
@@ -7,24 +7,27 @@ import { useGestureBuilderState } from "../hooks/use-gesture-builder-state";
7
7
  import { useStableRuntimeConfig } from "../hooks/use-stable-runtime-config";
8
8
  import type {
9
9
  DirectionClaimMap,
10
+ GestureCompositionActivation,
10
11
  PanGesture,
11
12
  ScreenGestureConfig,
12
13
  ScrollGestureState,
13
14
  } from "../types";
14
- import { usePanActivation } from "./pan-activation";
15
- import { usePanBehavior } from "./use-pan-behavior";
15
+ import { usePanActivation } from "./activation/use-pan-activation";
16
+ import { usePanBehavior } from "./behavior/use-pan-behavior";
16
17
 
17
- interface BuildPanGestureHookProps {
18
+ interface UseBuildPanGestureProps {
18
19
  scrollState: SharedValue<ScrollGestureState | null>;
19
20
  gestureConfig: ScreenGestureConfig;
20
21
  childDirectionClaims: SharedValue<DirectionClaimMap>;
22
+ gestureCompositionActivation: SharedValue<GestureCompositionActivation>;
21
23
  }
22
24
 
23
25
  export const useBuildPanGesture = ({
24
26
  scrollState,
25
27
  gestureConfig,
26
28
  childDirectionClaims,
27
- }: BuildPanGestureHookProps): PanGesture => {
29
+ gestureCompositionActivation,
30
+ }: UseBuildPanGestureProps): PanGesture => {
28
31
  const dimensions = useWindowDimensions();
29
32
  const { participation, pan: policy } = gestureConfig;
30
33
  const screenOptions = useScreenOptionsContext();
@@ -45,15 +48,21 @@ export const useBuildPanGesture = ({
45
48
  runtime,
46
49
  screenOptions,
47
50
  dimensions,
51
+ gestureCompositionActivation,
48
52
  });
49
53
 
50
- const behavior = usePanBehavior(runtime, screenOptions, dimensions);
54
+ const behavior = usePanBehavior(
55
+ runtime,
56
+ screenOptions,
57
+ dimensions,
58
+ gestureCompositionActivation,
59
+ );
51
60
 
52
61
  const panGesture = useMemo(() => {
53
62
  return Gesture.Pan()
54
63
  .enabled(true)
55
64
  .manualActivation(true)
56
- .maxPointers(1)
65
+ .averageTouches(true)
57
66
  .onTouchesDown(activation.onTouchesDown)
58
67
  .onTouchesMove(activation.onTouchesMove)
59
68
  .onStart(behavior.onStart)
@@ -4,18 +4,23 @@ import type {
4
4
  GestureTouchEvent,
5
5
  } from "react-native-gesture-handler";
6
6
  import type { SharedValue } from "react-native-reanimated";
7
- import type { ScreenOptionsContextValue } from "../../options";
8
- import { resolvePinchRuntime } from "../shared/runtime";
9
- import type { PinchGestureRuntime } from "../types";
7
+ import type { ScreenOptionsContextValue } from "../../../options";
8
+ import { resolvePinchRuntime } from "../../shared/runtime";
9
+ import type {
10
+ GestureCompositionActivation,
11
+ PinchGestureRuntime,
12
+ } from "../../types";
10
13
 
11
14
  interface UsePinchActivationProps {
12
15
  runtime: SharedValue<PinchGestureRuntime>;
13
16
  screenOptions: ScreenOptionsContextValue;
17
+ gestureCompositionActivation: SharedValue<GestureCompositionActivation>;
14
18
  }
15
19
 
16
20
  export const usePinchActivation = ({
17
21
  runtime,
18
22
  screenOptions,
23
+ gestureCompositionActivation,
19
24
  }: UsePinchActivationProps) => {
20
25
  const onTouchesDown = useCallback(
21
26
  (
@@ -28,12 +33,18 @@ export const usePinchActivation = ({
28
33
  screenOptions.get(),
29
34
  );
30
35
 
36
+ if (gestureCompositionActivation.get() === "pan") {
37
+ stateManager?.fail();
38
+ return;
39
+ }
40
+
31
41
  if (!participation.canTrackGesture || !policy.enabled) {
32
42
  stateManager?.fail();
33
43
  return;
34
44
  }
35
45
 
36
46
  if (event.numberOfTouches === 2) {
47
+ gestureCompositionActivation.set("pinch");
37
48
  stateManager?.activate();
38
49
  return;
39
50
  }
@@ -42,7 +53,7 @@ export const usePinchActivation = ({
42
53
  stateManager?.fail();
43
54
  }
44
55
  },
45
- [runtime, screenOptions],
56
+ [runtime, screenOptions, gestureCompositionActivation],
46
57
  );
47
58
 
48
59
  const onTouchesMove = useCallback(
@@ -59,13 +70,14 @@ export const usePinchActivation = ({
59
70
  }
60
71
 
61
72
  if (event.numberOfTouches === 2) {
73
+ gestureCompositionActivation.set("pinch");
62
74
  stateManager.activate();
63
75
  return;
64
76
  }
65
77
 
66
78
  stateManager.fail();
67
79
  },
68
- [runtime, screenOptions],
80
+ [runtime, screenOptions, gestureCompositionActivation],
69
81
  );
70
82
 
71
83
  return useMemo(
@@ -1,14 +1,14 @@
1
1
  import { clamp, runOnJS } from "react-native-reanimated";
2
- import { EPSILON, FALSE, TRUE } from "../../../../constants";
3
- import { animateToProgress } from "../../../../utils/animation/animate-to-progress";
4
- import { emit } from "../../../../utils/animation/emit";
5
- import { normalizePinchScale } from "../shared/physics";
2
+ import { EPSILON, FALSE, TRUE } from "../../../../../constants";
3
+ import { animateToProgress } from "../../../../../utils/animation/animate-to-progress";
4
+ import { emit } from "../../../../../utils/animation/emit";
5
+ import { normalizePinchScale } from "../../shared/physics";
6
6
  import type {
7
7
  PinchGestureEvent,
8
8
  PinchGestureRuntime,
9
9
  PinchReleaseResult,
10
10
  PinchTrackState,
11
- } from "../types";
11
+ } from "../../types";
12
12
  import { resetPinchGestureValues } from "./pinch-reset";
13
13
 
14
14
  export const startPinchBase = (
@@ -22,7 +22,9 @@ export const startPinchBase = (
22
22
  } = runtime;
23
23
 
24
24
  const wasSettling = gestures.settling.get();
25
- const hasResidualGesture = Math.abs(gestures.normScale.get()) > EPSILON;
25
+ const hasResidualGesture =
26
+ Math.abs(gestures.normScale.get()) > EPSILON ||
27
+ Math.abs(gestures.rotation.get()) > EPSILON;
26
28
 
27
29
  if (!wasSettling || !hasResidualGesture) {
28
30
  emit(animations.willAnimate, TRUE, FALSE);
@@ -36,8 +38,10 @@ export const startPinchBase = (
36
38
  gestures.velocity.set(0);
37
39
  gestures.scale.set(1);
38
40
  gestures.normScale.set(0);
41
+ gestures.rotation.set(0);
39
42
  gestures.raw.scale.set(1);
40
43
  gestures.raw.normScale.set(0);
44
+ gestures.raw.rotation.set(0);
41
45
  gestures.focalX.set(event.focalX);
42
46
  gestures.focalY.set(event.focalY);
43
47
  gestureProgressBaseline.set(animations.progress.get());
@@ -56,8 +60,6 @@ export const trackPinchGesture = (
56
60
 
57
61
  gestures.scale.set(scale);
58
62
  gestures.normScale.set(normScale);
59
- gestures.focalX.set(event.focalX);
60
- gestures.focalY.set(event.focalY);
61
63
  gestures.raw.scale.set(rawScale);
62
64
  gestures.raw.normScale.set(rawNormScale);
63
65
  gestures.active.set(
@@ -3,21 +3,21 @@ import {
3
3
  getPinchReleaseHandoffVelocity,
4
4
  normalizePinchScale,
5
5
  shouldDismissFromPinch,
6
- } from "../shared/physics";
6
+ } from "../../shared/physics";
7
7
  import {
8
8
  getProgressVelocityTowardTarget,
9
9
  resolveGestureSnapTransitionSpec,
10
- } from "../shared/release";
10
+ } from "../../shared/release";
11
11
  import {
12
12
  primeRuntimeSnapPoint,
13
13
  resolveRuntimeGestureSnapPoints,
14
- } from "../shared/snap-points";
15
- import { determineSnapTarget } from "../shared/targets";
14
+ } from "../../shared/snap-points";
15
+ import { determineSnapTarget } from "../../shared/targets";
16
16
  import type {
17
17
  PinchGestureEvent,
18
18
  PinchGestureRuntime,
19
19
  PinchReleaseResult,
20
- } from "../types";
20
+ } from "../../types";
21
21
 
22
22
  const getPinchSnapDirection = (normalizedScale: number) => {
23
23
  "worklet";
@@ -1,11 +1,11 @@
1
- import { EPSILON, FALSE, TRUE } from "../../../../constants";
2
- import type { GestureStoreMap } from "../../../../stores/gesture.store";
3
- import type { AnimationConfig } from "../../../../types/animation.types";
1
+ import { EPSILON, FALSE, TRUE } from "../../../../../constants";
2
+ import type { GestureStoreMap } from "../../../../../stores/gesture.store";
3
+ import type { AnimationConfig } from "../../../../../types/animation.types";
4
4
  import {
5
5
  animateResetValue,
6
6
  clearGestureSettlingIfResting,
7
7
  getGestureResetSpec,
8
- } from "../shared/reset";
8
+ } from "../../shared/reset";
9
9
 
10
10
  interface ResetPinchGestureValuesProps {
11
11
  spec?: AnimationConfig;
@@ -21,7 +21,8 @@ const clearPinchSettlingIfResting = (gestures: GestureStoreMap) => {
21
21
  !gestures.dragging.get() &&
22
22
  !gestures.dismissing.get() &&
23
23
  Math.abs(gestures.scale.get() - 1) <= EPSILON &&
24
- Math.abs(gestures.normScale.get()) <= EPSILON;
24
+ Math.abs(gestures.normScale.get()) <= EPSILON &&
25
+ Math.abs(gestures.rotation.get()) <= EPSILON;
25
26
 
26
27
  if (isResting) {
27
28
  gestures.focalX.set(0);
@@ -43,6 +44,7 @@ export const resetPinchGestureValues = ({
43
44
  if (!shouldDismiss) {
44
45
  gestures.raw.scale.set(1);
45
46
  gestures.raw.normScale.set(0);
47
+ gestures.raw.rotation.set(0);
46
48
  }
47
49
 
48
50
  gestures.dragging.set(FALSE);
@@ -52,6 +54,7 @@ export const resetPinchGestureValues = ({
52
54
  if (resetValuesImmediately) {
53
55
  gestures.scale.set(1);
54
56
  gestures.normScale.set(0);
57
+ gestures.rotation.set(0);
55
58
  clearPinchSettlingIfResting(gestures);
56
59
  return;
57
60
  }
@@ -62,4 +65,7 @@ export const resetPinchGestureValues = ({
62
65
  animateResetValue(gestures.normScale, 0, resetSpec, () =>
63
66
  clearPinchSettlingIfResting(gestures),
64
67
  );
68
+ animateResetValue(gestures.rotation, 0, resetSpec, () =>
69
+ clearPinchSettlingIfResting(gestures),
70
+ );
65
71
  };