react-native-screen-transitions 3.7.0-beta.2 → 3.8.0-alpha.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 (643) 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/options.js +37 -9
  6. package/lib/commonjs/shared/adapters/with-screen-transitions/options.js.map +1 -1
  7. package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js +1 -10
  8. package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
  9. package/lib/commonjs/shared/components/overlay/variations/float-overlay.js +1 -3
  10. package/lib/commonjs/shared/components/overlay/variations/float-overlay.js.map +1 -1
  11. package/lib/commonjs/shared/components/scene-view.js +1 -1
  12. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +7 -7
  13. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  14. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js +2 -2
  15. package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  16. package/lib/commonjs/shared/components/screen-lifecycle/index.js +2 -2
  17. package/lib/commonjs/shared/components/screen-lifecycle/index.js.map +1 -1
  18. package/lib/commonjs/shared/constants.js +3 -13
  19. package/lib/commonjs/shared/constants.js.map +1 -1
  20. package/lib/commonjs/shared/hooks/navigation/use-screen-state.js +1 -3
  21. package/lib/commonjs/shared/hooks/navigation/use-screen-state.js.map +1 -1
  22. package/lib/commonjs/shared/hooks/navigation/use-stack.js.map +1 -1
  23. package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +15 -12
  24. package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  25. package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js +2 -6
  26. package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -1
  27. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js.map +1 -1
  28. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +6 -23
  29. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  30. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +1 -1
  31. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  32. package/lib/commonjs/shared/providers/screen/animation/helpers/selected-interpolator-options.js +14 -1
  33. package/lib/commonjs/shared/providers/screen/animation/helpers/selected-interpolator-options.js.map +1 -1
  34. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js +1 -1
  35. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  36. package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js +21 -8
  37. package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
  38. package/lib/commonjs/shared/providers/screen/gestures/ownership/compute-claimed-directions.js +2 -1
  39. package/lib/commonjs/shared/providers/screen/gestures/ownership/compute-claimed-directions.js.map +1 -1
  40. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-activation-decision.js → activation/pan-activation-decision.js} +5 -5
  41. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js.map +1 -0
  42. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-activation-rules.js → activation/pan-activation-rules.js} +12 -9
  43. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/pan-activation-rules.js.map +1 -0
  44. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-activation.js → activation/use-pan-activation.js} +15 -10
  45. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -0
  46. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-lifecycle.js → behavior/pan-lifecycle.js} +29 -8
  47. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -0
  48. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-release.js → behavior/pan-release.js} +5 -5
  49. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-release.js.map +1 -0
  50. package/lib/commonjs/shared/providers/screen/gestures/pan/{pan-reset.js → behavior/pan-reset.js} +21 -11
  51. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -0
  52. package/lib/commonjs/shared/providers/screen/gestures/pan/{use-pan-behavior.js → behavior/use-pan-behavior.js} +34 -8
  53. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -0
  54. package/lib/commonjs/shared/providers/screen/gestures/pan/{build-pan-gesture.js → use-build-pan-gesture.js} +10 -8
  55. package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -0
  56. package/lib/commonjs/shared/providers/screen/gestures/pinch/{pinch-activation.js → activation/use-pinch-activation.js} +12 -5
  57. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -0
  58. package/lib/commonjs/shared/providers/screen/gestures/pinch/{pinch-lifecycle.js → behavior/pinch-lifecycle.js} +7 -7
  59. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -0
  60. package/lib/commonjs/shared/providers/screen/gestures/pinch/{pinch-release.js → behavior/pinch-release.js} +4 -4
  61. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -0
  62. package/lib/commonjs/shared/providers/screen/gestures/pinch/{pinch-reset.js → behavior/pinch-reset.js} +6 -3
  63. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -0
  64. package/lib/commonjs/shared/providers/screen/gestures/pinch/{use-pinch-behavior.js → behavior/use-pinch-behavior.js} +6 -5
  65. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -0
  66. package/lib/commonjs/shared/providers/screen/gestures/pinch/{build-pinch-gesture.js → use-build-pinch-gesture.js} +9 -7
  67. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -0
  68. package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +62 -0
  69. package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +1 -0
  70. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +21 -0
  71. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +1 -0
  72. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +29 -0
  73. package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +1 -0
  74. package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +45 -0
  75. package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +1 -0
  76. package/lib/commonjs/shared/providers/screen/gestures/shared/directions.js +17 -5
  77. package/lib/commonjs/shared/providers/screen/gestures/shared/directions.js.map +1 -1
  78. package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js +67 -2
  79. package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js.map +1 -1
  80. package/lib/commonjs/shared/providers/screen/gestures/shared/reset.js +3 -12
  81. package/lib/commonjs/shared/providers/screen/gestures/shared/reset.js.map +1 -1
  82. package/lib/commonjs/shared/providers/screen/gestures/shared/runtime.js +1 -10
  83. package/lib/commonjs/shared/providers/screen/gestures/shared/runtime.js.map +1 -1
  84. package/lib/commonjs/shared/providers/screen/gestures/shared/snap-points.js +1 -1
  85. package/lib/commonjs/shared/providers/screen/gestures/shared/snap-points.js.map +1 -1
  86. package/lib/commonjs/shared/providers/screen/gestures/types.js +2 -0
  87. package/lib/commonjs/shared/providers/screen/gestures/types.js.map +1 -1
  88. package/lib/commonjs/shared/providers/screen/options/helpers.js +60 -24
  89. package/lib/commonjs/shared/providers/screen/options/helpers.js.map +1 -1
  90. package/lib/commonjs/shared/providers/screen/styles/components/{maybe-floating-container.js → floating-overlay-layer.js} +5 -5
  91. package/lib/commonjs/shared/providers/screen/styles/components/floating-overlay-layer.js.map +1 -0
  92. package/lib/commonjs/shared/providers/screen/styles/styles.provider.js +3 -3
  93. package/lib/commonjs/shared/providers/screen/styles/styles.provider.js.map +1 -1
  94. package/lib/commonjs/shared/providers/stack/{helpers/managed-stack-state/managed-stack-controller.js → blank-stack-state/blank-stack-controller.js} +11 -11
  95. package/lib/commonjs/shared/providers/stack/blank-stack-state/blank-stack-controller.js.map +1 -0
  96. 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
  97. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -0
  98. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.js +58 -0
  99. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.js.map +1 -0
  100. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/navigation/compose-descriptors.js.map +1 -0
  101. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/navigation/resolve-scene-neighbors.js.map +1 -0
  102. package/lib/commonjs/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/sync-routes-with-removed.js +6 -23
  103. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/navigation/sync-routes-with-removed.js.map +1 -0
  104. 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
  105. 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
  106. package/lib/commonjs/shared/providers/stack/{helpers/managed-stack-state/helpers/helpers.js → blank-stack-state/helpers/state-equality.js} +1 -1
  107. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/state-equality.js.map +1 -0
  108. package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/types.js.map +1 -0
  109. package/lib/commonjs/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/index.js +5 -5
  110. package/lib/commonjs/shared/providers/stack/blank-stack-state/index.js.map +1 -0
  111. package/lib/commonjs/shared/providers/stack/{managed.provider.js → blank-stack.provider.js} +20 -27
  112. package/lib/commonjs/shared/providers/stack/blank-stack.provider.js.map +1 -0
  113. package/lib/commonjs/shared/providers/stack/direct.provider.js +3 -13
  114. package/lib/commonjs/shared/providers/stack/direct.provider.js.map +1 -1
  115. package/lib/commonjs/shared/stores/animation.store.js +2 -0
  116. package/lib/commonjs/shared/stores/animation.store.js.map +1 -1
  117. package/lib/commonjs/shared/stores/gesture.store.js +5 -1
  118. package/lib/commonjs/shared/stores/gesture.store.js.map +1 -1
  119. package/lib/commonjs/shared/stores/system.store.js +1 -4
  120. package/lib/commonjs/shared/stores/system.store.js.map +1 -1
  121. package/lib/commonjs/shared/types/animation.types.js.map +1 -1
  122. package/lib/commonjs/shared/types/gesture.types.js.map +1 -1
  123. package/lib/commonjs/shared/types/providers/blank-stack-provider.types.js +6 -0
  124. package/lib/commonjs/shared/types/providers/blank-stack-provider.types.js.map +1 -0
  125. package/lib/commonjs/shared/utils/animation/animate-to-progress.js +10 -4
  126. package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
  127. package/lib/commonjs/shared/utils/animation/animate.js +22 -5
  128. package/lib/commonjs/shared/utils/animation/animate.js.map +1 -1
  129. package/lib/commonjs/shared/utils/animation/spring/index.js +13 -0
  130. package/lib/commonjs/shared/utils/animation/spring/index.js.map +1 -0
  131. package/lib/commonjs/shared/utils/animation/spring/spring.js +244 -0
  132. package/lib/commonjs/shared/utils/animation/spring/spring.js.map +1 -0
  133. package/lib/commonjs/shared/{types/providers/managed-stack.types.js → utils/animation/spring/springConfigs.js} +1 -1
  134. package/lib/commonjs/shared/utils/animation/spring/springConfigs.js.map +1 -0
  135. package/lib/commonjs/shared/utils/animation/spring/springUtils.js +313 -0
  136. package/lib/commonjs/shared/utils/animation/spring/springUtils.js.map +1 -0
  137. package/lib/commonjs/shared/utils/animation/state.js +2 -0
  138. package/lib/commonjs/shared/utils/animation/state.js.map +1 -0
  139. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js +5 -5
  140. package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  141. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +4 -4
  142. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  143. package/lib/module/blank-stack/components/stack-view.js +2 -2
  144. package/lib/module/blank-stack/components/stack-view.js.map +1 -1
  145. package/lib/module/component-stack/components/stack-view.js +2 -2
  146. package/lib/module/component-stack/components/stack-view.js.map +1 -1
  147. package/lib/module/shared/adapters/with-screen-transitions/options.js +37 -9
  148. package/lib/module/shared/adapters/with-screen-transitions/options.js.map +1 -1
  149. package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js +1 -10
  150. package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
  151. package/lib/module/shared/components/overlay/variations/float-overlay.js +1 -3
  152. package/lib/module/shared/components/overlay/variations/float-overlay.js.map +1 -1
  153. package/lib/module/shared/components/scene-view.js +1 -1
  154. package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +7 -7
  155. package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
  156. package/lib/module/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js +2 -2
  157. package/lib/module/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
  158. package/lib/module/shared/components/screen-lifecycle/index.js +2 -2
  159. package/lib/module/shared/components/screen-lifecycle/index.js.map +1 -1
  160. package/lib/module/shared/constants.js +2 -12
  161. package/lib/module/shared/constants.js.map +1 -1
  162. package/lib/module/shared/hooks/navigation/use-screen-state.js +1 -3
  163. package/lib/module/shared/hooks/navigation/use-screen-state.js.map +1 -1
  164. package/lib/module/shared/hooks/navigation/use-stack.js.map +1 -1
  165. package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +15 -12
  166. package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
  167. package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js +2 -6
  168. package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -1
  169. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js.map +1 -1
  170. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +7 -24
  171. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  172. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +1 -1
  173. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  174. package/lib/module/shared/providers/screen/animation/helpers/selected-interpolator-options.js +14 -1
  175. package/lib/module/shared/providers/screen/animation/helpers/selected-interpolator-options.js.map +1 -1
  176. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js +1 -1
  177. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  178. package/lib/module/shared/providers/screen/gestures/gestures.provider.js +19 -6
  179. package/lib/module/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
  180. package/lib/module/shared/providers/screen/gestures/ownership/compute-claimed-directions.js +2 -1
  181. package/lib/module/shared/providers/screen/gestures/ownership/compute-claimed-directions.js.map +1 -1
  182. package/lib/module/shared/providers/screen/gestures/pan/{pan-activation-decision.js → activation/pan-activation-decision.js} +5 -5
  183. package/lib/module/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js.map +1 -0
  184. package/lib/module/shared/providers/screen/gestures/pan/{pan-activation-rules.js → activation/pan-activation-rules.js} +12 -9
  185. package/lib/module/shared/providers/screen/gestures/pan/activation/pan-activation-rules.js.map +1 -0
  186. package/lib/module/shared/providers/screen/gestures/pan/{pan-activation.js → activation/use-pan-activation.js} +15 -10
  187. package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -0
  188. package/lib/module/shared/providers/screen/gestures/pan/{pan-lifecycle.js → behavior/pan-lifecycle.js} +29 -8
  189. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -0
  190. package/lib/module/shared/providers/screen/gestures/pan/{pan-release.js → behavior/pan-release.js} +5 -5
  191. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-release.js.map +1 -0
  192. package/lib/module/shared/providers/screen/gestures/pan/{pan-reset.js → behavior/pan-reset.js} +21 -11
  193. package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -0
  194. package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +75 -0
  195. package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -0
  196. package/lib/module/shared/providers/screen/gestures/pan/{build-pan-gesture.js → use-build-pan-gesture.js} +9 -7
  197. package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -0
  198. package/lib/module/shared/providers/screen/gestures/pinch/{pinch-activation.js → activation/use-pinch-activation.js} +12 -5
  199. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -0
  200. package/lib/module/shared/providers/screen/gestures/pinch/{pinch-lifecycle.js → behavior/pinch-lifecycle.js} +7 -7
  201. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -0
  202. package/lib/module/shared/providers/screen/gestures/pinch/{pinch-release.js → behavior/pinch-release.js} +4 -4
  203. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -0
  204. package/lib/module/shared/providers/screen/gestures/pinch/{pinch-reset.js → behavior/pinch-reset.js} +6 -3
  205. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -0
  206. package/lib/module/shared/providers/screen/gestures/pinch/{use-pinch-behavior.js → behavior/use-pinch-behavior.js} +6 -5
  207. package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -0
  208. package/lib/module/shared/providers/screen/gestures/pinch/{build-pinch-gesture.js → use-build-pinch-gesture.js} +8 -6
  209. package/lib/module/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -0
  210. package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +57 -0
  211. package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +1 -0
  212. package/lib/module/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +15 -0
  213. package/lib/module/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +1 -0
  214. package/lib/module/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +24 -0
  215. package/lib/module/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +1 -0
  216. package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +40 -0
  217. package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +1 -0
  218. package/lib/module/shared/providers/screen/gestures/shared/directions.js +14 -4
  219. package/lib/module/shared/providers/screen/gestures/shared/directions.js.map +1 -1
  220. package/lib/module/shared/providers/screen/gestures/shared/policy.js +68 -3
  221. package/lib/module/shared/providers/screen/gestures/shared/policy.js.map +1 -1
  222. package/lib/module/shared/providers/screen/gestures/shared/reset.js +4 -13
  223. package/lib/module/shared/providers/screen/gestures/shared/reset.js.map +1 -1
  224. package/lib/module/shared/providers/screen/gestures/shared/runtime.js +1 -10
  225. package/lib/module/shared/providers/screen/gestures/shared/runtime.js.map +1 -1
  226. package/lib/module/shared/providers/screen/gestures/shared/snap-points.js +1 -1
  227. package/lib/module/shared/providers/screen/gestures/shared/snap-points.js.map +1 -1
  228. package/lib/module/shared/providers/screen/gestures/types.js +2 -0
  229. package/lib/module/shared/providers/screen/gestures/types.js.map +1 -1
  230. package/lib/module/shared/providers/screen/options/helpers.js +60 -24
  231. package/lib/module/shared/providers/screen/options/helpers.js.map +1 -1
  232. package/lib/module/shared/providers/screen/styles/components/{maybe-floating-container.js → floating-overlay-layer.js} +4 -4
  233. package/lib/module/shared/providers/screen/styles/components/floating-overlay-layer.js.map +1 -0
  234. package/lib/module/shared/providers/screen/styles/styles.provider.js +3 -3
  235. package/lib/module/shared/providers/screen/styles/styles.provider.js.map +1 -1
  236. package/lib/module/shared/providers/stack/{helpers/managed-stack-state/managed-stack-controller.js → blank-stack-state/blank-stack-controller.js} +9 -9
  237. package/lib/module/shared/providers/stack/blank-stack-state/blank-stack-controller.js.map +1 -0
  238. 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
  239. package/lib/module/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -0
  240. 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
  241. package/lib/module/shared/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.js.map +1 -0
  242. package/lib/module/shared/providers/stack/blank-stack-state/helpers/navigation/compose-descriptors.js.map +1 -0
  243. package/lib/module/shared/providers/stack/blank-stack-state/helpers/navigation/resolve-scene-neighbors.js.map +1 -0
  244. package/lib/module/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/sync-routes-with-removed.js +6 -23
  245. package/lib/module/shared/providers/stack/blank-stack-state/helpers/navigation/sync-routes-with-removed.js.map +1 -0
  246. 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
  247. package/lib/module/shared/providers/stack/blank-stack-state/helpers/reconcile-blank-stack-routes.js.map +1 -0
  248. package/lib/module/shared/providers/stack/{helpers/managed-stack-state/helpers/helpers.js → blank-stack-state/helpers/state-equality.js} +1 -1
  249. package/lib/module/shared/providers/stack/blank-stack-state/helpers/state-equality.js.map +1 -0
  250. package/lib/module/shared/providers/stack/blank-stack-state/helpers/types.js.map +1 -0
  251. package/lib/module/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/index.js +3 -3
  252. package/lib/module/shared/providers/stack/blank-stack-state/index.js.map +1 -0
  253. package/lib/module/shared/providers/stack/{managed.provider.js → blank-stack.provider.js} +19 -26
  254. package/lib/module/shared/providers/stack/blank-stack.provider.js.map +1 -0
  255. package/lib/module/shared/providers/stack/direct.provider.js +3 -13
  256. package/lib/module/shared/providers/stack/direct.provider.js.map +1 -1
  257. package/lib/module/shared/stores/animation.store.js +2 -0
  258. package/lib/module/shared/stores/animation.store.js.map +1 -1
  259. package/lib/module/shared/stores/gesture.store.js +5 -1
  260. package/lib/module/shared/stores/gesture.store.js.map +1 -1
  261. package/lib/module/shared/stores/system.store.js +1 -4
  262. package/lib/module/shared/stores/system.store.js.map +1 -1
  263. package/lib/module/shared/types/animation.types.js.map +1 -1
  264. package/lib/module/shared/types/gesture.types.js.map +1 -1
  265. package/lib/module/shared/types/providers/blank-stack-provider.types.js +4 -0
  266. package/lib/module/shared/types/providers/blank-stack-provider.types.js.map +1 -0
  267. package/lib/module/shared/utils/animation/animate-to-progress.js +11 -5
  268. package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
  269. package/lib/module/shared/utils/animation/animate.js +21 -5
  270. package/lib/module/shared/utils/animation/animate.js.map +1 -1
  271. package/lib/module/shared/utils/animation/spring/index.js +4 -0
  272. package/lib/module/shared/utils/animation/spring/index.js.map +1 -0
  273. package/lib/module/shared/utils/animation/spring/spring.js +239 -0
  274. package/lib/module/shared/utils/animation/spring/spring.js.map +1 -0
  275. package/lib/module/shared/utils/animation/spring/springConfigs.js +4 -0
  276. package/lib/module/shared/utils/animation/spring/springConfigs.js.map +1 -0
  277. package/lib/module/shared/utils/animation/spring/springUtils.js +300 -0
  278. package/lib/module/shared/utils/animation/spring/springUtils.js.map +1 -0
  279. package/lib/module/shared/utils/animation/state.js +2 -0
  280. package/lib/module/shared/utils/animation/state.js.map +1 -0
  281. package/lib/module/shared/utils/bounds/navigation/reveal/build.js +5 -5
  282. package/lib/module/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
  283. package/lib/module/shared/utils/bounds/navigation/zoom/build.js +4 -4
  284. package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  285. package/lib/typescript/blank-stack/components/stack-view.d.ts +1 -1
  286. package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
  287. package/lib/typescript/component-stack/components/stack-view.d.ts +1 -1
  288. package/lib/typescript/component-stack/components/stack-view.d.ts.map +1 -1
  289. package/lib/typescript/shared/adapters/with-screen-transitions/options.d.ts.map +1 -1
  290. package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -1
  291. package/lib/typescript/shared/components/overlay/variations/float-overlay.d.ts.map +1 -1
  292. package/lib/typescript/shared/components/scene-view.d.ts +1 -1
  293. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts +1 -1
  294. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts.map +1 -1
  295. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-transition-start-controller.d.ts +2 -2
  296. package/lib/typescript/shared/components/screen-lifecycle/hooks/use-transition-start-controller.d.ts.map +1 -1
  297. package/lib/typescript/shared/constants.d.ts +0 -9
  298. package/lib/typescript/shared/constants.d.ts.map +1 -1
  299. package/lib/typescript/shared/hooks/navigation/use-screen-state.d.ts.map +1 -1
  300. package/lib/typescript/shared/hooks/navigation/use-stack.d.ts +0 -2
  301. package/lib/typescript/shared/hooks/navigation/use-stack.d.ts.map +1 -1
  302. package/lib/typescript/shared/index.d.ts +12 -12
  303. package/lib/typescript/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.d.ts.map +1 -1
  304. package/lib/typescript/shared/providers/screen/animation/helpers/build-screen-transition-options.d.ts.map +1 -1
  305. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
  306. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts +1 -6
  307. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts.map +1 -1
  308. package/lib/typescript/shared/providers/screen/animation/helpers/selected-interpolator-options.d.ts.map +1 -1
  309. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts +1 -1
  310. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts.map +1 -1
  311. package/lib/typescript/shared/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
  312. package/lib/typescript/shared/providers/screen/gestures/ownership/compute-claimed-directions.d.ts +2 -2
  313. package/lib/typescript/shared/providers/screen/gestures/ownership/compute-claimed-directions.d.ts.map +1 -1
  314. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-activation-decision.d.ts → activation/pan-activation-decision.d.ts} +3 -3
  315. package/lib/typescript/shared/providers/screen/gestures/pan/activation/pan-activation-decision.d.ts.map +1 -0
  316. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-activation-rules.d.ts → activation/pan-activation-rules.d.ts} +11 -11
  317. package/lib/typescript/shared/providers/screen/gestures/pan/activation/pan-activation-rules.d.ts.map +1 -0
  318. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-activation.d.ts → activation/use-pan-activation.d.ts} +5 -4
  319. package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -0
  320. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-lifecycle.d.ts → behavior/pan-lifecycle.d.ts} +3 -2
  321. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts.map +1 -0
  322. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-release.d.ts → behavior/pan-release.d.ts} +1 -1
  323. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-release.d.ts.map +1 -0
  324. package/lib/typescript/shared/providers/screen/gestures/pan/{pan-reset.d.ts → behavior/pan-reset.d.ts} +4 -3
  325. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-reset.d.ts.map +1 -0
  326. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts +5 -0
  327. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts.map +1 -0
  328. package/lib/typescript/shared/providers/screen/gestures/pan/use-build-pan-gesture.d.ts +11 -0
  329. package/lib/typescript/shared/providers/screen/gestures/pan/use-build-pan-gesture.d.ts.map +1 -0
  330. package/lib/typescript/shared/providers/screen/gestures/pinch/{pinch-activation.d.ts → activation/use-pinch-activation.d.ts} +5 -4
  331. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts.map +1 -0
  332. package/lib/typescript/shared/providers/screen/gestures/pinch/{pinch-lifecycle.d.ts → behavior/pinch-lifecycle.d.ts} +1 -1
  333. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -0
  334. package/lib/typescript/shared/providers/screen/gestures/pinch/{pinch-release.d.ts → behavior/pinch-release.d.ts} +1 -1
  335. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-release.d.ts.map +1 -0
  336. package/lib/typescript/shared/providers/screen/gestures/pinch/{pinch-reset.d.ts → behavior/pinch-reset.d.ts} +2 -2
  337. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts.map +1 -0
  338. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.d.ts +5 -0
  339. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.d.ts.map +1 -0
  340. package/lib/typescript/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.d.ts +9 -0
  341. package/lib/typescript/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.d.ts.map +1 -0
  342. package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts +15 -0
  343. package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts.map +1 -0
  344. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts +4 -0
  345. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts.map +1 -0
  346. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts +5 -0
  347. package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts.map +1 -0
  348. package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts +9 -0
  349. package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts.map +1 -0
  350. package/lib/typescript/shared/providers/screen/gestures/shared/directions.d.ts +8 -6
  351. package/lib/typescript/shared/providers/screen/gestures/shared/directions.d.ts.map +1 -1
  352. package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts +2 -2
  353. package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts.map +1 -1
  354. package/lib/typescript/shared/providers/screen/gestures/shared/reset.d.ts.map +1 -1
  355. package/lib/typescript/shared/providers/screen/gestures/shared/runtime.d.ts.map +1 -1
  356. package/lib/typescript/shared/providers/screen/gestures/types.d.ts +14 -4
  357. package/lib/typescript/shared/providers/screen/gestures/types.d.ts.map +1 -1
  358. package/lib/typescript/shared/providers/screen/options/helpers.d.ts +2 -2
  359. package/lib/typescript/shared/providers/screen/options/helpers.d.ts.map +1 -1
  360. package/lib/typescript/shared/providers/screen/options/types.d.ts +4 -3
  361. package/lib/typescript/shared/providers/screen/options/types.d.ts.map +1 -1
  362. package/lib/typescript/shared/providers/screen/styles/components/floating-overlay-layer.d.ts +7 -0
  363. package/lib/typescript/shared/providers/screen/styles/components/floating-overlay-layer.d.ts.map +1 -0
  364. package/lib/typescript/shared/providers/stack/blank-stack-state/blank-stack-controller.d.ts +13 -0
  365. package/lib/typescript/shared/providers/stack/blank-stack-state/blank-stack-controller.d.ts.map +1 -0
  366. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.d.ts +13 -0
  367. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.d.ts.map +1 -0
  368. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.d.ts +12 -0
  369. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/derive-blank-stack-state.d.ts.map +1 -0
  370. package/lib/typescript/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/compose-descriptors.d.ts +1 -1
  371. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/navigation/compose-descriptors.d.ts.map +1 -0
  372. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/navigation/resolve-scene-neighbors.d.ts.map +1 -0
  373. package/lib/typescript/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/sync-routes-with-removed.d.ts +2 -4
  374. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/navigation/sync-routes-with-removed.d.ts.map +1 -0
  375. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/reconcile-blank-stack-routes.d.ts +12 -0
  376. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/reconcile-blank-stack-routes.d.ts.map +1 -0
  377. package/lib/typescript/shared/providers/stack/{helpers/managed-stack-state/helpers/helpers.d.ts → blank-stack-state/helpers/state-equality.d.ts} +4 -4
  378. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/state-equality.d.ts.map +1 -0
  379. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/types.d.ts +39 -0
  380. package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/types.d.ts.map +1 -0
  381. package/lib/typescript/shared/providers/stack/blank-stack-state/index.d.ts +12 -0
  382. package/lib/typescript/shared/providers/stack/blank-stack-state/index.d.ts.map +1 -0
  383. package/lib/typescript/shared/providers/stack/blank-stack.provider.d.ts +8 -0
  384. package/lib/typescript/shared/providers/stack/blank-stack.provider.d.ts.map +1 -0
  385. package/lib/typescript/shared/providers/stack/direct.provider.d.ts.map +1 -1
  386. package/lib/typescript/shared/stores/animation.store.d.ts +1 -0
  387. package/lib/typescript/shared/stores/animation.store.d.ts.map +1 -1
  388. package/lib/typescript/shared/stores/gesture.store.d.ts +2 -0
  389. package/lib/typescript/shared/stores/gesture.store.d.ts.map +1 -1
  390. package/lib/typescript/shared/stores/system.store.d.ts +1 -5
  391. package/lib/typescript/shared/stores/system.store.d.ts.map +1 -1
  392. package/lib/typescript/shared/types/animation.types.d.ts +12 -10
  393. package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
  394. package/lib/typescript/shared/types/bounds.types.d.ts +1 -1
  395. package/lib/typescript/shared/types/gesture.types.d.ts +24 -0
  396. package/lib/typescript/shared/types/gesture.types.d.ts.map +1 -1
  397. package/lib/typescript/shared/types/index.d.ts +1 -1
  398. package/lib/typescript/shared/types/index.d.ts.map +1 -1
  399. package/lib/typescript/shared/types/providers/{managed-stack.types.d.ts → blank-stack-provider.types.d.ts} +11 -11
  400. package/lib/typescript/shared/types/providers/blank-stack-provider.types.d.ts.map +1 -0
  401. package/lib/typescript/shared/types/screen.types.d.ts +7 -2
  402. package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
  403. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
  404. package/lib/typescript/shared/utils/animation/animate.d.ts +8 -3
  405. package/lib/typescript/shared/utils/animation/animate.d.ts.map +1 -1
  406. package/lib/typescript/shared/utils/animation/spring/index.d.ts +3 -0
  407. package/lib/typescript/shared/utils/animation/spring/index.d.ts.map +1 -0
  408. package/lib/typescript/shared/utils/animation/spring/spring.d.ts +24 -0
  409. package/lib/typescript/shared/utils/animation/spring/spring.d.ts.map +1 -0
  410. package/lib/typescript/shared/utils/animation/spring/springConfigs.d.ts +46 -0
  411. package/lib/typescript/shared/utils/animation/spring/springConfigs.d.ts.map +1 -0
  412. package/lib/typescript/shared/utils/animation/spring/springUtils.d.ts +68 -0
  413. package/lib/typescript/shared/utils/animation/spring/springUtils.d.ts.map +1 -0
  414. package/lib/typescript/shared/utils/animation/state.d.ts +6 -0
  415. package/lib/typescript/shared/utils/animation/state.d.ts.map +1 -0
  416. package/lib/typescript/shared/utils/bounds/navigation/reveal/build.d.ts.map +1 -1
  417. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  418. package/package.json +1 -1
  419. package/src/blank-stack/components/stack-view.tsx +2 -2
  420. package/src/component-stack/components/stack-view.tsx +2 -2
  421. package/src/shared/adapters/with-screen-transitions/options.ts +86 -19
  422. package/src/shared/adapters/with-screen-transitions/stack-layout.tsx +0 -14
  423. package/src/shared/components/overlay/variations/float-overlay.tsx +1 -7
  424. package/src/shared/components/scene-view.tsx +1 -1
  425. package/src/shared/components/screen-lifecycle/hooks/use-close-transition-intent.ts +11 -8
  426. package/src/shared/components/screen-lifecycle/hooks/use-transition-start-controller.ts +4 -4
  427. package/src/shared/components/screen-lifecycle/index.tsx +2 -2
  428. package/src/shared/constants.ts +1 -11
  429. package/src/shared/hooks/navigation/use-screen-state.ts +1 -7
  430. package/src/shared/hooks/navigation/use-stack.tsx +0 -2
  431. package/src/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +19 -16
  432. package/src/shared/providers/screen/animation/helpers/build-screen-transition-options.ts +2 -17
  433. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.ts +3 -3
  434. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/index.ts +9 -51
  435. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/types.ts +1 -7
  436. package/src/shared/providers/screen/animation/helpers/pipeline.ts +1 -1
  437. package/src/shared/providers/screen/animation/helpers/selected-interpolator-options.ts +24 -1
  438. package/src/shared/providers/screen/animation/helpers/use-build-transition-state.ts +2 -5
  439. package/src/shared/providers/screen/gestures/gestures.provider.tsx +21 -4
  440. package/src/shared/providers/screen/gestures/ownership/compute-claimed-directions.ts +6 -9
  441. package/src/shared/providers/screen/gestures/pan/{pan-activation-decision.ts → activation/pan-activation-decision.ts} +7 -7
  442. package/src/shared/providers/screen/gestures/pan/{pan-activation-rules.ts → activation/pan-activation-rules.ts} +32 -25
  443. package/src/shared/providers/screen/gestures/pan/{pan-activation.ts → activation/use-pan-activation.ts} +23 -12
  444. package/src/shared/providers/screen/gestures/pan/{pan-lifecycle.ts → behavior/pan-lifecycle.ts} +46 -8
  445. package/src/shared/providers/screen/gestures/pan/{pan-release.ts → behavior/pan-release.ts} +6 -6
  446. package/src/shared/providers/screen/gestures/pan/{pan-reset.ts → behavior/pan-reset.ts} +22 -12
  447. package/src/shared/providers/screen/gestures/pan/{use-pan-behavior.ts → behavior/use-pan-behavior.ts} +43 -10
  448. package/src/shared/providers/screen/gestures/pan/{build-pan-gesture.ts → use-build-pan-gesture.ts} +15 -6
  449. package/src/shared/providers/screen/gestures/pinch/{pinch-activation.ts → activation/use-pinch-activation.ts} +17 -5
  450. package/src/shared/providers/screen/gestures/pinch/{pinch-lifecycle.ts → behavior/pinch-lifecycle.ts} +10 -8
  451. package/src/shared/providers/screen/gestures/pinch/{pinch-release.ts → behavior/pinch-release.ts} +5 -5
  452. package/src/shared/providers/screen/gestures/pinch/{pinch-reset.ts → behavior/pinch-reset.ts} +11 -5
  453. package/src/shared/providers/screen/gestures/pinch/{use-pinch-behavior.ts → behavior/use-pinch-behavior.ts} +16 -6
  454. package/src/shared/providers/screen/gestures/pinch/{build-pinch-gesture.ts → use-build-pinch-gesture.ts} +18 -6
  455. package/src/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.ts +87 -0
  456. package/src/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.ts +19 -0
  457. package/src/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.ts +47 -0
  458. package/src/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.ts +55 -0
  459. package/src/shared/providers/screen/gestures/shared/directions.ts +27 -13
  460. package/src/shared/providers/screen/gestures/shared/policy.ts +99 -5
  461. package/src/shared/providers/screen/gestures/shared/reset.ts +9 -17
  462. package/src/shared/providers/screen/gestures/shared/runtime.ts +1 -14
  463. package/src/shared/providers/screen/gestures/shared/snap-points.ts +1 -1
  464. package/src/shared/providers/screen/gestures/types.ts +20 -3
  465. package/src/shared/providers/screen/options/helpers.ts +85 -30
  466. package/src/shared/providers/screen/options/types.ts +6 -5
  467. package/src/shared/providers/screen/styles/components/{maybe-floating-container.tsx → floating-overlay-layer.tsx} +6 -6
  468. package/src/shared/providers/screen/styles/styles.provider.tsx +3 -3
  469. package/src/shared/providers/stack/{helpers/managed-stack-state/managed-stack-controller.ts → blank-stack-state/blank-stack-controller.ts} +22 -20
  470. 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
  471. 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
  472. package/src/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/compose-descriptors.ts +1 -1
  473. package/src/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/sync-routes-with-removed.ts +8 -40
  474. 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
  475. package/src/shared/providers/stack/{helpers/managed-stack-state/helpers/helpers.ts → blank-stack-state/helpers/state-equality.ts} +4 -4
  476. package/src/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/helpers/types.ts +16 -15
  477. package/src/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/index.ts +9 -9
  478. package/src/shared/providers/stack/blank-stack.provider.tsx +118 -0
  479. package/src/shared/providers/stack/direct.provider.tsx +38 -54
  480. package/src/shared/stores/animation.store.ts +3 -0
  481. package/src/shared/stores/gesture.store.ts +6 -0
  482. package/src/shared/stores/system.store.ts +1 -9
  483. package/src/shared/types/animation.types.ts +12 -14
  484. package/src/shared/types/bounds.types.ts +1 -1
  485. package/src/shared/types/gesture.types.ts +33 -0
  486. package/src/shared/types/index.ts +4 -0
  487. package/src/shared/types/providers/{managed-stack.types.ts → blank-stack-provider.types.ts} +10 -10
  488. package/src/shared/types/screen.types.ts +7 -2
  489. package/src/shared/utils/animation/animate-to-progress.ts +18 -7
  490. package/src/shared/utils/animation/animate.ts +44 -21
  491. package/src/shared/utils/animation/spring/index.ts +2 -0
  492. package/src/shared/utils/animation/spring/spring.ts +343 -0
  493. package/src/shared/utils/animation/spring/springConfigs.ts +46 -0
  494. package/src/shared/utils/animation/spring/springUtils.ts +418 -0
  495. package/src/shared/utils/animation/state.ts +6 -0
  496. package/src/shared/utils/bounds/navigation/reveal/build.ts +5 -9
  497. package/src/shared/utils/bounds/navigation/zoom/build.ts +4 -6
  498. package/lib/commonjs/shared/hooks/navigation/use-closing-route-keys.js +0 -61
  499. package/lib/commonjs/shared/hooks/navigation/use-closing-route-keys.js.map +0 -1
  500. package/lib/commonjs/shared/hooks/navigation/use-optimistic-focused-index.js +0 -20
  501. package/lib/commonjs/shared/hooks/navigation/use-optimistic-focused-index.js.map +0 -1
  502. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js +0 -29
  503. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js.map +0 -1
  504. package/lib/commonjs/shared/providers/screen/gestures/pan/build-pan-gesture.js.map +0 -1
  505. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation-decision.js.map +0 -1
  506. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation-rules.js.map +0 -1
  507. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation.js.map +0 -1
  508. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +0 -1
  509. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-release.js.map +0 -1
  510. package/lib/commonjs/shared/providers/screen/gestures/pan/pan-reset.js.map +0 -1
  511. package/lib/commonjs/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +0 -1
  512. package/lib/commonjs/shared/providers/screen/gestures/pinch/build-pinch-gesture.js.map +0 -1
  513. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-activation.js.map +0 -1
  514. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +0 -1
  515. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-release.js.map +0 -1
  516. package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-reset.js.map +0 -1
  517. package/lib/commonjs/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +0 -1
  518. package/lib/commonjs/shared/providers/screen/styles/components/maybe-floating-container.js.map +0 -1
  519. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js.map +0 -1
  520. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js +0 -58
  521. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js.map +0 -1
  522. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js.map +0 -1
  523. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/types.js.map +0 -1
  524. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/index.js.map +0 -1
  525. package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js.map +0 -1
  526. package/lib/commonjs/shared/providers/stack/helpers/use-closing-route-map.js +0 -30
  527. package/lib/commonjs/shared/providers/stack/helpers/use-closing-route-map.js.map +0 -1
  528. package/lib/commonjs/shared/providers/stack/helpers/use-processed-routes.js +0 -58
  529. package/lib/commonjs/shared/providers/stack/helpers/use-processed-routes.js.map +0 -1
  530. package/lib/commonjs/shared/providers/stack/helpers/use-stack-derived.js +0 -27
  531. package/lib/commonjs/shared/providers/stack/helpers/use-stack-derived.js.map +0 -1
  532. package/lib/commonjs/shared/providers/stack/managed.provider.js.map +0 -1
  533. package/lib/commonjs/shared/types/providers/managed-stack.types.js.map +0 -1
  534. package/lib/commonjs/shared/utils/navigation/compose-descriptors.js.map +0 -1
  535. package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js.map +0 -1
  536. package/lib/commonjs/shared/utils/navigation/sync-routes-with-removed.js.map +0 -1
  537. package/lib/module/shared/hooks/navigation/use-closing-route-keys.js +0 -55
  538. package/lib/module/shared/hooks/navigation/use-closing-route-keys.js.map +0 -1
  539. package/lib/module/shared/hooks/navigation/use-optimistic-focused-index.js +0 -17
  540. package/lib/module/shared/hooks/navigation/use-optimistic-focused-index.js.map +0 -1
  541. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js +0 -22
  542. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js.map +0 -1
  543. package/lib/module/shared/providers/screen/gestures/pan/build-pan-gesture.js.map +0 -1
  544. package/lib/module/shared/providers/screen/gestures/pan/pan-activation-decision.js.map +0 -1
  545. package/lib/module/shared/providers/screen/gestures/pan/pan-activation-rules.js.map +0 -1
  546. package/lib/module/shared/providers/screen/gestures/pan/pan-activation.js.map +0 -1
  547. package/lib/module/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +0 -1
  548. package/lib/module/shared/providers/screen/gestures/pan/pan-release.js.map +0 -1
  549. package/lib/module/shared/providers/screen/gestures/pan/pan-reset.js.map +0 -1
  550. package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js +0 -49
  551. package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +0 -1
  552. package/lib/module/shared/providers/screen/gestures/pinch/build-pinch-gesture.js.map +0 -1
  553. package/lib/module/shared/providers/screen/gestures/pinch/pinch-activation.js.map +0 -1
  554. package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +0 -1
  555. package/lib/module/shared/providers/screen/gestures/pinch/pinch-release.js.map +0 -1
  556. package/lib/module/shared/providers/screen/gestures/pinch/pinch-reset.js.map +0 -1
  557. package/lib/module/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +0 -1
  558. package/lib/module/shared/providers/screen/styles/components/maybe-floating-container.js.map +0 -1
  559. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js.map +0 -1
  560. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js.map +0 -1
  561. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js.map +0 -1
  562. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js.map +0 -1
  563. package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/types.js.map +0 -1
  564. package/lib/module/shared/providers/stack/helpers/managed-stack-state/index.js.map +0 -1
  565. package/lib/module/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js.map +0 -1
  566. package/lib/module/shared/providers/stack/helpers/use-closing-route-map.js +0 -25
  567. package/lib/module/shared/providers/stack/helpers/use-closing-route-map.js.map +0 -1
  568. package/lib/module/shared/providers/stack/helpers/use-processed-routes.js +0 -54
  569. package/lib/module/shared/providers/stack/helpers/use-processed-routes.js.map +0 -1
  570. package/lib/module/shared/providers/stack/helpers/use-stack-derived.js +0 -23
  571. package/lib/module/shared/providers/stack/helpers/use-stack-derived.js.map +0 -1
  572. package/lib/module/shared/providers/stack/managed.provider.js.map +0 -1
  573. package/lib/module/shared/types/providers/managed-stack.types.js +0 -4
  574. package/lib/module/shared/types/providers/managed-stack.types.js.map +0 -1
  575. package/lib/module/shared/utils/navigation/compose-descriptors.js.map +0 -1
  576. package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js.map +0 -1
  577. package/lib/module/shared/utils/navigation/sync-routes-with-removed.js.map +0 -1
  578. package/lib/typescript/shared/hooks/navigation/use-closing-route-keys.d.ts +0 -8
  579. package/lib/typescript/shared/hooks/navigation/use-closing-route-keys.d.ts.map +0 -1
  580. package/lib/typescript/shared/hooks/navigation/use-optimistic-focused-index.d.ts +0 -7
  581. package/lib/typescript/shared/hooks/navigation/use-optimistic-focused-index.d.ts.map +0 -1
  582. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.d.ts +0 -5
  583. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.d.ts.map +0 -1
  584. package/lib/typescript/shared/providers/screen/gestures/pan/build-pan-gesture.d.ts +0 -10
  585. package/lib/typescript/shared/providers/screen/gestures/pan/build-pan-gesture.d.ts.map +0 -1
  586. package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation-decision.d.ts.map +0 -1
  587. package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation-rules.d.ts.map +0 -1
  588. package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation.d.ts.map +0 -1
  589. package/lib/typescript/shared/providers/screen/gestures/pan/pan-lifecycle.d.ts.map +0 -1
  590. package/lib/typescript/shared/providers/screen/gestures/pan/pan-release.d.ts.map +0 -1
  591. package/lib/typescript/shared/providers/screen/gestures/pan/pan-reset.d.ts.map +0 -1
  592. package/lib/typescript/shared/providers/screen/gestures/pan/use-pan-behavior.d.ts +0 -5
  593. package/lib/typescript/shared/providers/screen/gestures/pan/use-pan-behavior.d.ts.map +0 -1
  594. package/lib/typescript/shared/providers/screen/gestures/pinch/build-pinch-gesture.d.ts +0 -7
  595. package/lib/typescript/shared/providers/screen/gestures/pinch/build-pinch-gesture.d.ts.map +0 -1
  596. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-activation.d.ts.map +0 -1
  597. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-lifecycle.d.ts.map +0 -1
  598. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-release.d.ts.map +0 -1
  599. package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-reset.d.ts.map +0 -1
  600. package/lib/typescript/shared/providers/screen/gestures/pinch/use-pinch-behavior.d.ts +0 -5
  601. package/lib/typescript/shared/providers/screen/gestures/pinch/use-pinch-behavior.d.ts.map +0 -1
  602. package/lib/typescript/shared/providers/screen/styles/components/maybe-floating-container.d.ts +0 -7
  603. package/lib/typescript/shared/providers/screen/styles/components/maybe-floating-container.d.ts.map +0 -1
  604. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.d.ts +0 -13
  605. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.d.ts.map +0 -1
  606. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.d.ts +0 -12
  607. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.d.ts.map +0 -1
  608. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.d.ts.map +0 -1
  609. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.d.ts +0 -12
  610. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.d.ts.map +0 -1
  611. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/types.d.ts +0 -39
  612. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/types.d.ts.map +0 -1
  613. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/index.d.ts +0 -12
  614. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/index.d.ts.map +0 -1
  615. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.d.ts +0 -13
  616. package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.d.ts.map +0 -1
  617. package/lib/typescript/shared/providers/stack/helpers/use-closing-route-map.d.ts +0 -7
  618. package/lib/typescript/shared/providers/stack/helpers/use-closing-route-map.d.ts.map +0 -1
  619. package/lib/typescript/shared/providers/stack/helpers/use-processed-routes.d.ts +0 -17
  620. package/lib/typescript/shared/providers/stack/helpers/use-processed-routes.d.ts.map +0 -1
  621. package/lib/typescript/shared/providers/stack/helpers/use-stack-derived.d.ts +0 -18
  622. package/lib/typescript/shared/providers/stack/helpers/use-stack-derived.d.ts.map +0 -1
  623. package/lib/typescript/shared/providers/stack/managed.provider.d.ts +0 -8
  624. package/lib/typescript/shared/providers/stack/managed.provider.d.ts.map +0 -1
  625. package/lib/typescript/shared/types/providers/managed-stack.types.d.ts.map +0 -1
  626. package/lib/typescript/shared/utils/navigation/compose-descriptors.d.ts.map +0 -1
  627. package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts.map +0 -1
  628. package/lib/typescript/shared/utils/navigation/sync-routes-with-removed.d.ts.map +0 -1
  629. package/src/shared/hooks/navigation/use-closing-route-keys.ts +0 -60
  630. package/src/shared/hooks/navigation/use-optimistic-focused-index.ts +0 -19
  631. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.ts +0 -41
  632. package/src/shared/providers/stack/helpers/use-closing-route-map.ts +0 -28
  633. package/src/shared/providers/stack/helpers/use-processed-routes.ts +0 -85
  634. package/src/shared/providers/stack/helpers/use-stack-derived.ts +0 -34
  635. package/src/shared/providers/stack/managed.provider.tsx +0 -126
  636. /package/lib/commonjs/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/compose-descriptors.js +0 -0
  637. /package/lib/commonjs/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/resolve-scene-neighbors.js +0 -0
  638. /package/lib/commonjs/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/helpers/types.js +0 -0
  639. /package/lib/module/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/compose-descriptors.js +0 -0
  640. /package/lib/module/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/resolve-scene-neighbors.js +0 -0
  641. /package/lib/module/shared/providers/stack/{helpers/managed-stack-state → blank-stack-state}/helpers/types.js +0 -0
  642. /package/lib/typescript/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/resolve-scene-neighbors.d.ts +0 -0
  643. /package/src/shared/{utils → providers/stack/blank-stack-state/helpers}/navigation/resolve-scene-neighbors.ts +0 -0
@@ -1,14 +1,11 @@
1
1
  import type { TextStyle, ViewStyle } from "react-native";
2
- import type {
3
- StyleProps,
4
- WithSpringConfig,
5
- WithTimingConfig,
6
- } from "react-native-reanimated";
2
+ import type { StyleProps } from "react-native-reanimated";
7
3
  import type { EdgeInsets } from "react-native-safe-area-context";
8
4
  import {
9
5
  NAVIGATION_MASK_CONTAINER_STYLE_ID,
10
6
  NAVIGATION_MASK_ELEMENT_STYLE_ID,
11
7
  } from "../constants";
8
+ import type { ScreenAnimationConfig } from "../utils/animation/animate";
12
9
  import type { BoundsAccessor } from "./bounds.types";
13
10
  import type { GestureValues } from "./gesture.types";
14
11
  import type { ScreenLayouts, ScreenTransitionConfig } from "./screen.types";
@@ -90,18 +87,19 @@ export type ScreenTransitionState = {
90
87
  animating: number;
91
88
 
92
89
  /**
93
- * Whether this screen is fully settled (not transitioning and not dismissing).
94
- * - `0`: Transition/gesture is active or dismissing
95
- * - `1`: Screen is fully settled/idle
90
+ * Whether this screen is visually settled for choreography purposes.
91
+ * - `0`: The screen is still meaningfully away from its animation target
92
+ * - `1`: The screen is close enough to its target to be treated as done
93
+ *
94
+ * This may become `1` while `animating` is still `1`, since the animation
95
+ * driver can keep physically settling after the transition is visually done.
96
96
  */
97
97
  settled: number;
98
98
 
99
99
  /**
100
- * Whether this screen is logically complete for choreography purposes.
101
- * - `0`: The screen is still meaningfully away from its animation target
102
- * - `1`: The screen is visually close enough to its target to be treated as done
100
+ * Deprecated alias for `settled`.
103
101
  *
104
- * Unlike `settled`, this may become `1` before the underlying spring fully stops.
102
+ * @deprecated Use `settled` instead.
105
103
  */
106
104
  logicallySettled: number;
107
105
 
@@ -233,7 +231,7 @@ export interface ScreenInterpolationProps {
233
231
  * Whether the active transition is visually close enough to its target to be
234
232
  * treated as complete, even if the animation is still physically settling.
235
233
  *
236
- * @deprecated Use `active.logicallySettled` instead. Screen settlement state
234
+ * @deprecated Use `active.settled` instead. Screen settlement state
237
235
  * belongs on the screen state object.
238
236
  */
239
237
  logicallySettled: number;
@@ -372,7 +370,7 @@ export type TransitionInterpolatedStyle = {
372
370
  /**
373
371
  * A Reanimated animation configuration object.
374
372
  */
375
- export type AnimationConfig = WithSpringConfig | WithTimingConfig;
373
+ export type AnimationConfig = ScreenAnimationConfig;
376
374
 
377
375
  /**
378
376
  * Defines separate animation configurations for screen transitions and snap point changes.
@@ -240,7 +240,7 @@ export type BoundsNavigationRevealOptions = {
240
240
  backgroundScale?: number;
241
241
  /**
242
242
  * Whether reveal should reset the unfocused background content scale once the
243
- * transition is logically settled.
243
+ * transition is visually settled.
244
244
  *
245
245
  * By default, reveal restores the background to scale `1` after settle so the
246
246
  * next drag or programmatic dismiss starts from a fresh, unmodified layout
@@ -60,12 +60,40 @@ export type SideActivation = {
60
60
  bottom?: ActivationArea;
61
61
  };
62
62
 
63
+ export type GestureDirectionActivationArea = ActivationArea | number;
64
+
65
+ export type GestureDirectionConfig = {
66
+ gesture: GestureDirection;
67
+ /**
68
+ * Pan-only activation area for this gesture direction. Pinch directions
69
+ * ignore this field.
70
+ *
71
+ * A number means an edge distance in points.
72
+ */
73
+ area?: GestureDirectionActivationArea;
74
+ };
75
+
76
+ export type GestureDirectionEntry = GestureDirection | GestureDirectionConfig;
77
+
78
+ export type GestureDirectionOption =
79
+ | GestureDirectionEntry
80
+ | GestureDirectionEntry[];
81
+
63
82
  export enum GestureActivationState {
64
83
  PENDING,
65
84
  PASSED,
66
85
  FAILED,
67
86
  }
68
87
 
88
+ export type ResolvedGestureActivationArea =
89
+ | GestureDirectionActivationArea
90
+ | {
91
+ left?: GestureDirectionActivationArea;
92
+ right?: GestureDirectionActivationArea;
93
+ top?: GestureDirectionActivationArea;
94
+ bottom?: GestureDirectionActivationArea;
95
+ };
96
+
69
97
  export type GestureActivationArea = ActivationArea | SideActivation;
70
98
 
71
99
  /**
@@ -86,6 +114,7 @@ export type RawGestureValues = {
86
114
  normY: number;
87
115
  scale: number;
88
116
  normScale: number;
117
+ rotation: number;
89
118
  };
90
119
 
91
120
  export type GestureValues = {
@@ -129,6 +158,10 @@ export type GestureValues = {
129
158
  * The live pinch focal point y-position in screen coordinates.
130
159
  */
131
160
  focalY: number;
161
+ /**
162
+ * The live two-finger rotation in radians.
163
+ */
164
+ rotation: number;
132
165
  /**
133
166
  * Physical gesture values before `gestureSensitivity` is applied.
134
167
  */
@@ -29,6 +29,10 @@ export type {
29
29
  ActivationArea,
30
30
  GestureActivationArea,
31
31
  GestureDirection,
32
+ GestureDirectionActivationArea,
33
+ GestureDirectionConfig,
34
+ GestureDirectionEntry,
35
+ GestureDirectionOption,
32
36
  GestureValues,
33
37
  PanGestureDirection,
34
38
  PinchGestureDirection,
@@ -9,10 +9,10 @@ import type {
9
9
  } from "../stack.types";
10
10
 
11
11
  /**
12
- * Props for managed stack - generic over descriptor and navigation types.
12
+ * Props for blank stack - generic over descriptor and navigation types.
13
13
  * Defaults to base types for backward compatibility.
14
14
  */
15
- export interface ManagedStackProps<
15
+ export interface BlankStackProviderProps<
16
16
  TDescriptor extends BaseStackDescriptor = BaseStackDescriptor,
17
17
  TNavigation extends BaseStackNavigation = BaseStackNavigation,
18
18
  > {
@@ -26,18 +26,18 @@ export interface ManagedStackProps<
26
26
  }
27
27
 
28
28
  /**
29
- * Context value for managed stack — only fields unique to managed lifecycle.
29
+ * Context value for blank stack — only fields unique to blank stack lifecycle.
30
30
  * Shared fields (routes, scenes, etc.) live in StackContext.
31
31
  */
32
- export interface ManagedStackContextValue {
32
+ export interface BlankStackProviderContextValue {
33
33
  handleCloseRoute: (payload: { route: BaseStackRoute }) => void;
34
34
  }
35
35
 
36
36
  /**
37
- * Props passed to the render child of `withManagedStack`.
37
+ * Props passed to the render child of `withBlankStack`.
38
38
  * Only the fields that stack-view components actually consume.
39
39
  */
40
- export interface ManagedStackRenderProps<
40
+ export interface BlankStackProviderRenderProps<
41
41
  TDescriptor extends BaseStackDescriptor = BaseStackDescriptor,
42
42
  > {
43
43
  scenes: BaseStackScene<TDescriptor>[];
@@ -46,12 +46,12 @@ export interface ManagedStackRenderProps<
46
46
  }
47
47
 
48
48
  /**
49
- * Internal result shape returned by useManagedStackValue.
49
+ * Internal result shape returned by useBlankStackProviderValue.
50
50
  */
51
- export interface ManagedStackResult<
51
+ export interface BlankStackProviderResult<
52
52
  TDescriptor extends BaseStackDescriptor = BaseStackDescriptor,
53
53
  > {
54
54
  stackContextValue: StackContextValue;
55
- managedContextValue: ManagedStackContextValue;
56
- renderProps: ManagedStackRenderProps<TDescriptor>;
55
+ blankStackProviderContextValue: BlankStackProviderContextValue;
56
+ renderProps: BlankStackProviderRenderProps<TDescriptor>;
57
57
  }
@@ -5,7 +5,7 @@ import type {
5
5
  } from "./animation.types";
6
6
  import type {
7
7
  GestureActivationArea,
8
- GestureDirection,
8
+ GestureDirectionOption,
9
9
  GestureProgressMode,
10
10
  } from "./gesture.types";
11
11
  import type { OverlayProps } from "./overlay.types";
@@ -174,8 +174,11 @@ export type ScreenTransitionConfig = {
174
174
  *
175
175
  * Supports pan directions (`horizontal`, `vertical`, etc.) and pinch
176
176
  * directions (`pinch-in`, `pinch-out`).
177
+ *
178
+ * Pan directions may be configured with an activation area:
179
+ * `[{ gesture: "vertical", area: "edge" }]`.
177
180
  */
178
- gestureDirection?: GestureDirection | GestureDirection[];
181
+ gestureDirection?: GestureDirectionOption;
179
182
 
180
183
  /**
181
184
  * Controls how directly live gesture movement maps into transition progress
@@ -251,6 +254,8 @@ export type ScreenTransitionConfig = {
251
254
 
252
255
  /**
253
256
  * The area of the screen where the gesture is activated.
257
+ *
258
+ * @deprecated Use `gestureDirection` entries with per-direction `area`.
254
259
  */
255
260
  gestureActivationArea?: GestureActivationArea;
256
261
 
@@ -2,7 +2,7 @@ import { runOnJS, type SharedValue } from "react-native-reanimated";
2
2
  import { FALSE, TRUE } from "../../constants";
3
3
  import type { AnimationStoreMap } from "../../stores/animation.store";
4
4
  import type { TransitionSpec } from "../../types/animation.types";
5
- import { animate } from "./animate";
5
+ import { animate, isSpringAnimationConfig } from "./animate";
6
6
 
7
7
  interface AnimateToProgressProps {
8
8
  /**
@@ -60,15 +60,20 @@ export const animateToProgress = ({
60
60
  // Select spec based on direction (closing uses close spec, otherwise open)
61
61
  const config = isClosing ? spec?.close : spec?.open;
62
62
 
63
- const isSpringConfig =
64
- !!config && !("duration" in config) && !("easing" in config);
63
+ const isSpringConfig = isSpringAnimationConfig(config);
65
64
 
66
65
  const effectiveConfig =
67
66
  isSpringConfig && typeof initialVelocity === "number"
68
67
  ? { ...config, velocity: initialVelocity }
69
68
  : config;
70
69
 
71
- const { progress, willAnimate, progressAnimating, entering } = animations;
70
+ const {
71
+ progress,
72
+ willAnimate,
73
+ progressAnimating,
74
+ progressSettled,
75
+ entering,
76
+ } = animations;
72
77
 
73
78
  const startAnimation = () => {
74
79
  "worklet";
@@ -81,6 +86,7 @@ export const animateToProgress = ({
81
86
 
82
87
  if (!config) {
83
88
  progressAnimating.set(FALSE);
89
+ progressSettled.set(TRUE);
84
90
  progress.set(value);
85
91
  if (shouldClearEnteringOnFinish) {
86
92
  entering.set(FALSE);
@@ -93,17 +99,22 @@ export const animateToProgress = ({
93
99
  }
94
100
 
95
101
  progressAnimating.set(TRUE); //<-- Do not move this into the callback
102
+ progressSettled.set(FALSE);
96
103
  progress.set(
97
- animate(value, effectiveConfig, (finished) => {
104
+ animate(value, effectiveConfig, (state) => {
98
105
  "worklet";
99
- if (!finished) return;
106
+ if (state.settled) {
107
+ progressSettled.set(TRUE);
108
+ }
109
+
110
+ if (!state.finished) return;
100
111
 
101
112
  if (shouldClearEnteringOnFinish) {
102
113
  entering.set(FALSE);
103
114
  }
104
115
 
105
116
  if (onAnimationFinish) {
106
- runOnJS(onAnimationFinish)(finished);
117
+ runOnJS(onAnimationFinish)(state.finished);
107
118
  }
108
119
 
109
120
  // Delay clearing progress animation by one frame to ensure final frame is painted
@@ -1,28 +1,51 @@
1
- import {
2
- type WithSpringConfig,
3
- type WithTimingConfig,
4
- withSpring,
5
- withTiming,
6
- } from "react-native-reanimated";
7
- import type {
8
- AnimatableValue,
9
- AnimationCallback,
10
- } from "react-native-reanimated/lib/typescript/commonTypes";
1
+ import type { WithTimingConfig } from "react-native-reanimated";
2
+ import { withTiming } from "react-native-reanimated";
3
+ import { type SpringConfig, withInternalSpring } from "./spring";
4
+ import type { AnimationStateCallback } from "./state";
11
5
 
12
- export const animate = <T extends AnimatableValue>(
13
- toValue: T,
14
- config?: WithSpringConfig | WithTimingConfig,
15
- callback?: AnimationCallback,
6
+ export type TimingAnimationConfig = WithTimingConfig;
7
+ export type SpringAnimationConfig = SpringConfig;
8
+ export type ScreenAnimationConfig =
9
+ | SpringAnimationConfig
10
+ | TimingAnimationConfig;
11
+
12
+ export const isSpringAnimationConfig = (
13
+ config: ScreenAnimationConfig | undefined,
14
+ ): config is SpringAnimationConfig => {
15
+ "worklet";
16
+ if (typeof config !== "object" || config === null) {
17
+ return false;
18
+ }
19
+
20
+ return (
21
+ "stiffness" in config ||
22
+ "damping" in config ||
23
+ "mass" in config ||
24
+ "velocity" in config ||
25
+ "overshootClamping" in config ||
26
+ "energyThreshold" in config ||
27
+ "dampingRatio" in config ||
28
+ "clamp" in config
29
+ );
30
+ };
31
+
32
+ export const animate = (
33
+ toValue: number,
34
+ config?: ScreenAnimationConfig,
35
+ callback?: AnimationStateCallback,
16
36
  ) => {
17
37
  "worklet";
18
- const isSpring =
19
- typeof config === "object" &&
20
- !("duration" in config) &&
21
- !("easing" in config);
22
38
 
23
- if (!isSpring) {
24
- return withTiming(toValue, config, callback);
39
+ if (!isSpringAnimationConfig(config)) {
40
+ return withTiming(toValue, config, (finished) => {
41
+ "worklet";
42
+ const didFinish = finished === true;
43
+ callback?.({
44
+ finished: didFinish,
45
+ settled: didFinish,
46
+ });
47
+ });
25
48
  }
26
49
 
27
- return withSpring(toValue, config, callback);
50
+ return withInternalSpring(toValue, config, callback);
28
51
  };
@@ -0,0 +1,2 @@
1
+ export { withInternalSpring } from "./spring";
2
+ export type { SpringConfig } from "./springConfigs";