react-native-screen-transitions 3.9.0-beta.2 → 3.9.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 (262) hide show
  1. package/lib/commonjs/shared/components/boundary/components/boundary-target.js +19 -14
  2. package/lib/commonjs/shared/components/boundary/components/boundary-target.js.map +1 -1
  3. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +14 -7
  4. package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
  5. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/components/host.js +1 -0
  6. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/components/host.js.map +1 -1
  7. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +32 -2
  8. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  9. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/index.js +4 -3
  10. package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
  11. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/host.js +3 -2
  12. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  13. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +4 -3
  14. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
  15. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js +2 -3
  16. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +1 -1
  17. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +1 -0
  18. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  19. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/index.js +1 -3
  20. package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
  21. package/lib/commonjs/shared/components/boundary/portal/teleport.js +2 -1
  22. package/lib/commonjs/shared/components/boundary/portal/teleport.js.map +1 -1
  23. package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js +4 -1
  24. package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js.map +1 -1
  25. package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js +16 -3
  26. package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
  27. package/lib/commonjs/shared/configs/index.js +2 -1
  28. package/lib/commonjs/shared/configs/index.js.map +1 -1
  29. package/lib/commonjs/shared/configs/specs.js +23 -1
  30. package/lib/commonjs/shared/configs/specs.js.map +1 -1
  31. package/lib/commonjs/shared/constants.js +4 -0
  32. package/lib/commonjs/shared/constants.js.map +1 -1
  33. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -0
  34. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  35. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +10 -10
  36. package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  37. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +10 -2
  38. package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -1
  39. package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +1 -1
  40. package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  41. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +25 -3
  42. package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  43. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +4 -6
  44. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  45. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js +2 -2
  46. package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -1
  47. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +6 -1
  48. package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  49. package/lib/commonjs/shared/providers/screen/gestures/shared/snapshot.js +2 -0
  50. package/lib/commonjs/shared/providers/screen/gestures/shared/snapshot.js.map +1 -1
  51. package/lib/commonjs/shared/providers/screen/gestures/shared/values.js +2 -0
  52. package/lib/commonjs/shared/providers/screen/gestures/shared/values.js.map +1 -1
  53. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +11 -0
  54. package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  55. package/lib/commonjs/shared/stores/gesture.store.js +8 -0
  56. package/lib/commonjs/shared/stores/gesture.store.js.map +1 -1
  57. package/lib/commonjs/shared/utils/animation/animate-to-progress.js +24 -7
  58. package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
  59. package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js +5 -2
  60. package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
  61. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +184 -314
  62. package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  63. package/lib/commonjs/shared/utils/bounds/navigation/zoom/config.js +13 -18
  64. package/lib/commonjs/shared/utils/bounds/navigation/zoom/config.js.map +1 -1
  65. package/lib/commonjs/shared/utils/bounds/navigation/zoom/drag.js +196 -0
  66. package/lib/commonjs/shared/utils/bounds/navigation/zoom/drag.js.map +1 -0
  67. package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js +97 -108
  68. package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  69. package/lib/commonjs/shared/utils/bounds/navigation/zoom/mask.js +73 -0
  70. package/lib/commonjs/shared/utils/bounds/navigation/zoom/mask.js.map +1 -0
  71. package/lib/commonjs/shared/utils/bounds/navigation/zoom/targets.js +90 -0
  72. package/lib/commonjs/shared/utils/bounds/navigation/zoom/targets.js.map +1 -0
  73. package/lib/module/shared/components/boundary/components/boundary-target.js +20 -15
  74. package/lib/module/shared/components/boundary/components/boundary-target.js.map +1 -1
  75. package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +14 -7
  76. package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
  77. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/components/host.js +2 -1
  78. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/components/host.js.map +1 -1
  79. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +32 -2
  80. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
  81. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/index.js +5 -4
  82. package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
  83. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/host.js +3 -2
  84. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
  85. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +5 -4
  86. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
  87. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js +3 -4
  88. package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +1 -1
  89. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +1 -0
  90. package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
  91. package/lib/module/shared/components/boundary/portal/components/boundary-portal/index.js +1 -3
  92. package/lib/module/shared/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
  93. package/lib/module/shared/components/boundary/portal/teleport.js +1 -0
  94. package/lib/module/shared/components/boundary/portal/teleport.js.map +1 -1
  95. package/lib/module/shared/components/boundary/portal/utils/ownership.js +4 -1
  96. package/lib/module/shared/components/boundary/portal/utils/ownership.js.map +1 -1
  97. package/lib/module/shared/components/boundary/providers/boundary-root.provider.js +17 -4
  98. package/lib/module/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
  99. package/lib/module/shared/configs/index.js +3 -2
  100. package/lib/module/shared/configs/index.js.map +1 -1
  101. package/lib/module/shared/configs/specs.js +22 -0
  102. package/lib/module/shared/configs/specs.js.map +1 -1
  103. package/lib/module/shared/constants.js +4 -0
  104. package/lib/module/shared/constants.js.map +1 -1
  105. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -0
  106. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
  107. package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +10 -10
  108. package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
  109. package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +10 -2
  110. package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -1
  111. package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +1 -1
  112. package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
  113. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +23 -2
  114. package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
  115. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +4 -6
  116. package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
  117. package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js +2 -2
  118. package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -1
  119. package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +6 -1
  120. package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
  121. package/lib/module/shared/providers/screen/gestures/shared/snapshot.js +2 -0
  122. package/lib/module/shared/providers/screen/gestures/shared/snapshot.js.map +1 -1
  123. package/lib/module/shared/providers/screen/gestures/shared/values.js +2 -0
  124. package/lib/module/shared/providers/screen/gestures/shared/values.js.map +1 -1
  125. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +11 -0
  126. package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
  127. package/lib/module/shared/stores/gesture.store.js +8 -0
  128. package/lib/module/shared/stores/gesture.store.js.map +1 -1
  129. package/lib/module/shared/types/bounds.types.js +26 -0
  130. package/lib/module/shared/types/bounds.types.js.map +1 -1
  131. package/lib/module/shared/utils/animation/animate-to-progress.js +24 -7
  132. package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
  133. package/lib/module/shared/utils/bounds/navigation/reveal/math.js +5 -2
  134. package/lib/module/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
  135. package/lib/module/shared/utils/bounds/navigation/zoom/build.js +188 -318
  136. package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
  137. package/lib/module/shared/utils/bounds/navigation/zoom/config.js +12 -17
  138. package/lib/module/shared/utils/bounds/navigation/zoom/config.js.map +1 -1
  139. package/lib/module/shared/utils/bounds/navigation/zoom/drag.js +184 -0
  140. package/lib/module/shared/utils/bounds/navigation/zoom/drag.js.map +1 -0
  141. package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js +94 -102
  142. package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
  143. package/lib/module/shared/utils/bounds/navigation/zoom/mask.js +68 -0
  144. package/lib/module/shared/utils/bounds/navigation/zoom/mask.js.map +1 -0
  145. package/lib/module/shared/utils/bounds/navigation/zoom/targets.js +84 -0
  146. package/lib/module/shared/utils/bounds/navigation/zoom/targets.js.map +1 -0
  147. package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts +3 -1
  148. package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts.map +1 -1
  149. package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts.map +1 -1
  150. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/components/host.d.ts.map +1 -1
  151. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts.map +1 -1
  152. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/index.d.ts +1 -3
  153. package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/index.d.ts.map +1 -1
  154. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/host.d.ts.map +1 -1
  155. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.d.ts.map +1 -1
  156. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts +2 -3
  157. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts.map +1 -1
  158. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts.map +1 -1
  159. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/index.d.ts +2 -3
  160. package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/index.d.ts.map +1 -1
  161. package/lib/typescript/shared/components/boundary/portal/teleport.d.ts +1 -0
  162. package/lib/typescript/shared/components/boundary/portal/teleport.d.ts.map +1 -1
  163. package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts.map +1 -1
  164. package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts +1 -0
  165. package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
  166. package/lib/typescript/shared/configs/index.d.ts +16 -0
  167. package/lib/typescript/shared/configs/index.d.ts.map +1 -1
  168. package/lib/typescript/shared/configs/specs.d.ts +19 -0
  169. package/lib/typescript/shared/configs/specs.d.ts.map +1 -1
  170. package/lib/typescript/shared/constants.d.ts.map +1 -1
  171. package/lib/typescript/shared/index.d.ts +17 -1
  172. package/lib/typescript/shared/index.d.ts.map +1 -1
  173. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
  174. package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts +2 -0
  175. package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -1
  176. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts +2 -1
  177. package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts.map +1 -1
  178. package/lib/typescript/shared/providers/screen/gestures/pan/use-build-pan-gesture.d.ts.map +1 -1
  179. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts +2 -0
  180. package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts.map +1 -1
  181. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts +1 -1
  182. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -1
  183. package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.d.ts.map +1 -1
  184. package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.d.ts.map +1 -1
  185. package/lib/typescript/shared/providers/screen/gestures/shared/snapshot.d.ts.map +1 -1
  186. package/lib/typescript/shared/providers/screen/gestures/shared/values.d.ts.map +1 -1
  187. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +4 -0
  188. package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
  189. package/lib/typescript/shared/stores/gesture.store.d.ts +4 -0
  190. package/lib/typescript/shared/stores/gesture.store.d.ts.map +1 -1
  191. package/lib/typescript/shared/types/bounds.types.d.ts +115 -88
  192. package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
  193. package/lib/typescript/shared/types/gesture.types.d.ts +10 -0
  194. package/lib/typescript/shared/types/gesture.types.d.ts.map +1 -1
  195. package/lib/typescript/shared/types/index.d.ts +1 -1
  196. package/lib/typescript/shared/types/index.d.ts.map +1 -1
  197. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
  198. package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts +3 -1
  199. package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts.map +1 -1
  200. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts +1 -1
  201. package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
  202. package/lib/typescript/shared/utils/bounds/navigation/zoom/config.d.ts +7 -17
  203. package/lib/typescript/shared/utils/bounds/navigation/zoom/config.d.ts.map +1 -1
  204. package/lib/typescript/shared/utils/bounds/navigation/zoom/drag.d.ts +55 -0
  205. package/lib/typescript/shared/utils/bounds/navigation/zoom/drag.d.ts.map +1 -0
  206. package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts +33 -34
  207. package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts.map +1 -1
  208. package/lib/typescript/shared/utils/bounds/navigation/zoom/mask.d.ts +27 -0
  209. package/lib/typescript/shared/utils/bounds/navigation/zoom/mask.d.ts.map +1 -0
  210. package/lib/typescript/shared/utils/bounds/navigation/zoom/targets.d.ts +22 -0
  211. package/lib/typescript/shared/utils/bounds/navigation/zoom/targets.d.ts.map +1 -0
  212. package/lib/typescript/shared/utils/bounds/navigation/zoom/types.d.ts +1 -1
  213. package/lib/typescript/shared/utils/bounds/navigation/zoom/types.d.ts.map +1 -1
  214. package/package.json +2 -2
  215. package/src/shared/components/boundary/components/boundary-target.tsx +37 -26
  216. package/src/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.ts +16 -13
  217. package/src/shared/components/boundary/portal/components/boundary-content-portal/components/host.tsx +6 -2
  218. package/src/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +46 -3
  219. package/src/shared/components/boundary/portal/components/boundary-content-portal/index.tsx +8 -5
  220. package/src/shared/components/boundary/portal/components/boundary-portal/components/host.tsx +3 -2
  221. package/src/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.tsx +5 -4
  222. package/src/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.tsx +4 -5
  223. package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +5 -1
  224. package/src/shared/components/boundary/portal/components/boundary-portal/index.tsx +1 -4
  225. package/src/shared/components/boundary/portal/teleport.ts +1 -0
  226. package/src/shared/components/boundary/portal/utils/ownership.ts +5 -1
  227. package/src/shared/components/boundary/providers/boundary-root.provider.tsx +23 -3
  228. package/src/shared/configs/index.ts +2 -1
  229. package/src/shared/configs/specs.ts +23 -0
  230. package/src/shared/constants.ts +4 -0
  231. package/src/shared/index.ts +2 -0
  232. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/index.ts +8 -0
  233. package/src/shared/providers/screen/gestures/pan/activation/use-pan-activation.ts +16 -7
  234. package/src/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.ts +18 -1
  235. package/src/shared/providers/screen/gestures/pan/use-build-pan-gesture.ts +1 -0
  236. package/src/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.ts +40 -2
  237. package/src/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +7 -11
  238. package/src/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.ts +12 -15
  239. package/src/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.ts +6 -1
  240. package/src/shared/providers/screen/gestures/shared/snapshot.ts +2 -0
  241. package/src/shared/providers/screen/gestures/shared/values.ts +2 -0
  242. package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +14 -1
  243. package/src/shared/stores/gesture.store.ts +12 -0
  244. package/src/shared/types/bounds.types.ts +119 -90
  245. package/src/shared/types/gesture.types.ts +10 -0
  246. package/src/shared/types/index.ts +2 -0
  247. package/src/shared/utils/animation/animate-to-progress.ts +23 -7
  248. package/src/shared/utils/bounds/navigation/reveal/math.ts +6 -1
  249. package/src/shared/utils/bounds/navigation/zoom/build.ts +231 -411
  250. package/src/shared/utils/bounds/navigation/zoom/config.ts +16 -18
  251. package/src/shared/utils/bounds/navigation/zoom/drag.ts +327 -0
  252. package/src/shared/utils/bounds/navigation/zoom/helpers.ts +127 -184
  253. package/src/shared/utils/bounds/navigation/zoom/mask.ts +133 -0
  254. package/src/shared/utils/bounds/navigation/zoom/targets.ts +132 -0
  255. package/src/shared/utils/bounds/navigation/zoom/types.ts +1 -1
  256. package/lib/commonjs/shared/utils/bounds/navigation/zoom/math.js +0 -25
  257. package/lib/commonjs/shared/utils/bounds/navigation/zoom/math.js.map +0 -1
  258. package/lib/module/shared/utils/bounds/navigation/zoom/math.js +0 -20
  259. package/lib/module/shared/utils/bounds/navigation/zoom/math.js.map +0 -1
  260. package/lib/typescript/shared/utils/bounds/navigation/zoom/math.d.ts +0 -8
  261. package/lib/typescript/shared/utils/bounds/navigation/zoom/math.d.ts.map +0 -1
  262. package/src/shared/utils/bounds/navigation/zoom/math.ts +0 -25
@@ -8,370 +8,240 @@ var _reactNativeReanimated = require("react-native-reanimated");
8
8
  var _constants = require("../../../../constants");
9
9
  var _createBoundsAccessorCore = require("../../helpers/create-bounds-accessor-core");
10
10
  var _helpers = require("../helpers");
11
- var _math = require("../math");
12
- var _math2 = require("../reveal/math");
11
+ var _math = require("../reveal/math");
13
12
  var _config = require("./config");
13
+ var _drag = require("./drag");
14
14
  var _helpers2 = require("./helpers");
15
- var _math3 = require("./math");
16
- const IDENTITY_DRAG_SCALE_OUTPUT = [1, 1];
17
- function resolveZoomGestureOptions({
18
- rawDrag,
19
- maxSensitivity
20
- }) {
21
- "worklet";
22
-
23
- const {
24
- gestureSensitivity,
25
- gestureReleaseVelocityScale
26
- } = (0, _math2.resolveRevealGestureHandoff)({
27
- rawDrag,
28
- maxSensitivity
29
- });
30
- return {
31
- gestureSensitivity,
32
- gestureReleaseVelocityScale
33
- };
34
- }
35
-
36
- /* -------------------------------------------------------------------------- */
37
- /* BUILD ZOOM STYLES */
38
- /* -------------------------------------------------------------------------- */
39
-
15
+ var _mask = require("./mask");
16
+ var _targets = require("./targets");
40
17
  function buildZoomStyles({
41
18
  tag,
42
- zoomOptions,
43
- props
19
+ props,
20
+ zoomOptions
44
21
  }) {
45
22
  "worklet";
46
23
 
47
24
  if (!tag) {
48
25
  return {};
49
26
  }
50
-
51
- /* ------------------------------ Shared Setup ------------------------------ */
52
-
53
27
  const target = zoomOptions?.target;
28
+ const keepFocusedVisible = zoomOptions?.keepFocusedVisible === true;
29
+ const expandedBorderRadius = Math.max(0, zoomOptions?.borderRadius ?? _mask.ZOOM_NAVIGATION_MASK_BORDER_RADIUS);
30
+ const backgroundScale = zoomOptions?.backgroundScale ?? _config.ZOOM_BACKGROUND_SCALE;
31
+ const backdropColor = zoomOptions?.backdropColor ?? "black";
32
+ const maxBackdropOpacity = zoomOptions?.backdropOpacity ?? _config.ZOOM_BACKDROP_MAX_OPACITY;
54
33
  const {
34
+ active,
35
+ current,
55
36
  focused,
37
+ transitionProgress,
56
38
  layouts: {
57
39
  screen: screenLayout
58
40
  }
59
41
  } = props;
60
- const transitionProgress = props.current.transitionProgress + (props.next?.transitionProgress ?? 0);
61
- const activeTransitionProgress = props.active.transitionProgress;
62
- const zoomAnchor = target === "bound" ? "center" : _config.ZOOM_SHARED_OPTIONS.anchor;
42
+ const activeTransitionProgress = active.transitionProgress;
63
43
  const bounds = (0, _createBoundsAccessorCore.createBoundsAccessorCore)({
64
44
  getProps: () => props
65
45
  });
66
46
  const scopedBounds = bounds(tag);
67
47
  const link = scopedBounds.link();
68
- if (!link) return {};
69
- const baseRawOptions = {
70
- scaleMode: _config.ZOOM_SHARED_OPTIONS.scaleMode
71
- };
72
- const buildEffectiveTag = link.id;
73
- const sourceBorderRadius = (0, _helpers.getSourceBorderRadius)(link);
74
- const targetBorderRadius = zoomOptions?.borderRadius ?? sourceBorderRadius;
75
- const focusedElementOpacity = {
76
- open: (0, _math.resolveOpacityRangeTuple)({
77
- value: zoomOptions?.focusedElementOpacity?.open,
78
- fallback: _config.ZOOM_FOCUSED_ELEMENT_OPEN_OPACITY_RANGE
79
- }),
80
- close: (0, _math.resolveOpacityRangeTuple)({
81
- value: zoomOptions?.focusedElementOpacity?.close,
82
- fallback: _config.ZOOM_FOCUSED_ELEMENT_CLOSE_OPACITY_RANGE
83
- })
84
- };
85
- const unfocusedElementOpacity = {
86
- open: (0, _math.resolveOpacityRangeTuple)({
87
- value: zoomOptions?.unfocusedElementOpacity?.open,
88
- fallback: _config.ZOOM_UNFOCUSED_ELEMENT_OPEN_OPACITY_RANGE
89
- }),
90
- close: (0, _math.resolveOpacityRangeTuple)({
91
- value: zoomOptions?.unfocusedElementOpacity?.close,
92
- fallback: _config.ZOOM_UNFOCUSED_ELEMENT_CLOSE_OPACITY_RANGE
93
- })
94
- };
95
- const sourceVisibilityStyle = {
96
- [buildEffectiveTag]: {
97
- style: _constants.VISIBLE_STYLE
48
+ const sourceBounds = link?.source?.bounds;
49
+ if (!link || !sourceBounds) {
50
+ if (target !== "bound") {
51
+ scopedBounds.values({
52
+ scaleMode: _config.ZOOM_SHARED_OPTIONS.scaleMode,
53
+ anchor: _config.ZOOM_SHARED_OPTIONS.anchor,
54
+ method: "content",
55
+ target: target ?? "fullscreen",
56
+ progress: transitionProgress
57
+ });
98
58
  }
99
- };
100
- const navigationMaskEnabled = props.current.options.navigationMaskEnabled;
101
- const maxSensitivity = zoomOptions?.maxSensitivity ?? 0.8;
102
- const velocityDepth = zoomOptions?.velocityDepth ?? _config.ZOOM_DISMISS_SCALE_ORBIT_DEPTH;
103
-
104
- /* --------------------------- Gesture / Drag Values ------------------------- */
105
-
106
- const liveGesture = props.active.gesture;
107
- const gestureHandoff = liveGesture.handoff;
108
- const normX = gestureHandoff.normX;
109
- const normY = gestureHandoff.normY;
110
- const initialGesture = (0, _helpers2.resolveZoomPanGestureDirection)({
111
- active: gestureHandoff.active,
112
- direction: gestureHandoff.direction,
113
- normX,
114
- normY,
115
- rawNormX: gestureHandoff.raw.normX,
116
- rawNormY: gestureHandoff.raw.normY
59
+ return {};
60
+ }
61
+ const zoomContentTarget = (0, _targets.getZoomContentTarget)({
62
+ explicitTarget: target,
63
+ screenLayout,
64
+ link
117
65
  });
118
- const isHorizontalDismiss = initialGesture === "horizontal" || initialGesture === "horizontal-inverted";
119
- const isVerticalDismiss = initialGesture === "vertical" || initialGesture === "vertical-inverted";
120
- const rawDrag = isHorizontalDismiss ? Math.abs(gestureHandoff.raw.normX) : isVerticalDismiss ? Math.abs(gestureHandoff.raw.normY) : 0;
121
- const horizontalDragTranslation = (0, _helpers2.resolveDragTranslationTuple)(zoomOptions?.horizontalDragTranslation);
122
- const verticalDragTranslation = (0, _helpers2.resolveDragTranslationTuple)(zoomOptions?.verticalDragTranslation);
123
- const dragX = (0, _math3.resolveDirectionalDragTranslation)({
124
- translation: liveGesture.x,
125
- dimension: screenLayout.width,
126
- negativeMax: horizontalDragTranslation.negativeMax,
127
- positiveMax: horizontalDragTranslation.positiveMax,
128
- exponent: horizontalDragTranslation.exponent
66
+ const zoomContentAnchor = (0, _targets.getZoomContentAnchor)({
67
+ explicitTarget: target,
68
+ screenLayout,
69
+ link
129
70
  });
130
- const dragY = (0, _math3.resolveDirectionalDragTranslation)({
131
- translation: liveGesture.y,
132
- dimension: screenLayout.height,
133
- negativeMax: verticalDragTranslation.negativeMax,
134
- positiveMax: verticalDragTranslation.positiveMax,
135
- exponent: verticalDragTranslation.exponent
71
+ const trackingContentTarget = (0, _targets.resolveZoomTrackingContentTarget)({
72
+ contentTarget: zoomContentTarget,
73
+ link,
74
+ screenLayout
136
75
  });
137
- const horizontalDragScale = (0, _helpers2.resolveDragScaleTuple)(zoomOptions?.horizontalDragScale);
138
- const verticalDragScale = (0, _helpers2.resolveDragScaleTuple)(zoomOptions?.verticalDragScale);
139
- const backgroundScale = (0, _helpers2.resolveBackgroundScale)(zoomOptions?.backgroundScale);
140
- const dragXScale = isHorizontalDismiss ? (0, _math.resolveDirectionalDragScale)({
141
- normalized: normX,
142
- dismissDirection: initialGesture === "horizontal-inverted" ? "negative" : "positive",
143
- shrinkMin: horizontalDragScale.shrinkMin,
144
- growMax: horizontalDragScale.growMax,
145
- exponent: horizontalDragScale.exponent
146
- }) : IDENTITY_DRAG_SCALE_OUTPUT[0];
147
- const dragYScale = isVerticalDismiss ? (0, _math.resolveDirectionalDragScale)({
148
- normalized: normY,
149
- dismissDirection: initialGesture === "vertical-inverted" ? "negative" : "positive",
150
- shrinkMin: verticalDragScale.shrinkMin,
151
- growMax: verticalDragScale.growMax,
152
- exponent: verticalDragScale.exponent
153
- }) : IDENTITY_DRAG_SCALE_OUTPUT[1];
154
- const dragScale = (0, _math.combineScales)(dragXScale, dragYScale);
155
- const handoffDragScale = props.active.gesture.dismissing ? (0, _math2.resolveDismissScaleHandoff)({
156
- progress: activeTransitionProgress,
157
- releaseScale: dragScale,
158
- targetScale: 1,
159
- velocity: gestureHandoff.velocity,
160
- velocityDepth
161
- }) : dragScale;
162
- const zoomGestureOptions = resolveZoomGestureOptions({
163
- rawDrag,
164
- maxSensitivity
76
+ if (!trackingContentTarget) {
77
+ return {};
78
+ }
79
+ const drag = (0, _drag.resolveZoomDragState)({
80
+ gesture: active.gesture,
81
+ activeTransitionProgress,
82
+ screenLayout,
83
+ sourceBounds,
84
+ trackingContentTarget,
85
+ dragOptions: zoomOptions?.drag
165
86
  });
166
-
167
- /* ----------------------------- Focused Screen ----------------------------- */
168
-
87
+ const trackedGestureScale = (0, _drag.resolveZoomTrackedGestureScale)({
88
+ drag,
89
+ activeTransitionProgress,
90
+ screenLayout,
91
+ sourceBounds,
92
+ trackingContentTarget
93
+ });
94
+ const focalGesture = drag.isDismissing ? active.gesture.handoff : active.gesture;
95
+ const focalProgress = drag.isDismissing ? activeTransitionProgress : 1;
96
+ const pinchFocalOffset = active.gesture.handoff.active === "pinch-in" ? (0, _helpers2.resolveZoomPinchFocalOffset)({
97
+ gestureScale: drag.isDismissing ? focalGesture.scale : trackedGestureScale,
98
+ pinchOriginX: focalGesture.pinchOriginX,
99
+ pinchOriginY: focalGesture.pinchOriginY,
100
+ progress: focalProgress,
101
+ rotation: drag.isDismissing ? focalGesture.rotation : drag.rotation,
102
+ screenLayout
103
+ }) : {
104
+ x: 0,
105
+ y: 0
106
+ };
169
107
  if (focused) {
170
- const focusedContentTarget = (0, _helpers2.getZoomContentTarget)({
171
- explicitTarget: target,
172
- screenLayout,
173
- anchor: _config.ZOOM_SHARED_OPTIONS.anchor,
174
- link
108
+ const sourceBorderRadius = (0, _helpers.getSourceBorderRadius)(link);
109
+ const navigationMaskEnabled = current.options.navigationMaskEnabled;
110
+ const backdropOpacity = (0, _helpers2.resolveZoomBackdropOpacity)({
111
+ transitionProgress,
112
+ dismissalDrag: drag.dismissNorm,
113
+ fadeEnd: _config.ZOOM_SCREEN_A_FADE_END,
114
+ maxOpacity: maxBackdropOpacity
175
115
  });
176
116
  const contentRaw = scopedBounds.values({
177
- ...baseRawOptions,
178
- anchor: zoomAnchor,
117
+ scaleMode: _config.ZOOM_SHARED_OPTIONS.scaleMode,
118
+ anchor: zoomContentAnchor,
179
119
  method: "content",
180
- target: focusedContentTarget,
120
+ target: zoomContentTarget,
181
121
  progress: transitionProgress
182
122
  });
183
- const maskRaw = scopedBounds.values({
184
- ...baseRawOptions,
185
- anchor: _config.ZOOM_SHARED_OPTIONS.anchor,
186
- method: "size",
187
- space: "absolute",
188
- target: "fullscreen",
189
- progress: transitionProgress
190
- });
191
- const focusedFade = props.active?.closing ? (0, _helpers2.interpolateOpacityRange)({
192
- progress: transitionProgress,
193
- range: focusedElementOpacity.close
194
- }) : (0, _helpers2.interpolateOpacityRange)({
195
- progress: transitionProgress,
196
- range: focusedElementOpacity.open
197
- });
198
-
199
- /**
200
- * This is also how swiftui handles their navigation zoom.
201
- * They remove clipping as soon as the screen stops animating
202
- */
203
- const shouldRemoveClipping = !props.active.animating;
204
- const focusedMaskBorderRadius = (0, _reactNativeReanimated.interpolate)(transitionProgress, [0, 1], [sourceBorderRadius, shouldRemoveClipping ? 0 : targetBorderRadius], "clamp");
205
- const {
206
- top,
207
- right,
208
- bottom,
209
- left
210
- } = _config.ZOOM_MASK_OUTSET;
211
- const maskWidth = Math.max(1, (0, _helpers.toNumber)(maskRaw.width) + left + right);
212
- const maskHeight = Math.max(1, (0, _helpers.toNumber)(maskRaw.height) + top + bottom);
213
- const contentBaseTranslateX = (0, _helpers.toNumber)(contentRaw.translateX);
214
- const contentBaseTranslateY = (0, _helpers.toNumber)(contentRaw.translateY);
215
- const contentBaseScale = (0, _helpers.toNumber)(contentRaw.scale, 1);
216
- const safeContentBaseScale = Math.abs(contentBaseScale) > _constants.EPSILON ? contentBaseScale : 1;
217
- const contentTranslateX = contentBaseTranslateX + dragX;
218
- const contentTranslateY = contentBaseTranslateY + dragY;
219
- const contentScale = contentBaseScale * handoffDragScale;
220
- const maskBaseTranslateX = (0, _helpers.toNumber)(maskRaw.translateX) - left;
221
- const maskBaseTranslateY = (0, _helpers.toNumber)(maskRaw.translateY) - top;
222
- const maskCenterX = maskWidth / 2;
223
- const maskCenterY = maskHeight / 2;
224
- const contentCenterX = screenLayout.width / 2;
225
- const contentCenterY = screenLayout.height / 2;
226
- const compensatedMaskTranslateX = (maskBaseTranslateX - contentBaseTranslateX + (1 - contentBaseScale) * (maskCenterX - contentCenterX)) / safeContentBaseScale;
227
- const compensatedMaskTranslateY = (maskBaseTranslateY - contentBaseTranslateY + (1 - contentBaseScale) * (maskCenterY - contentCenterY)) / safeContentBaseScale;
228
- const compensatedMaskScale = 1 / safeContentBaseScale;
229
- const focusedContentStyle = {
230
- opacity: zoomOptions?.debug ? 0.5 : focusedFade,
231
- transform: [{
232
- translateX: contentTranslateX
233
- }, {
234
- translateY: contentTranslateY
235
- }, {
236
- scale: contentScale
237
- }],
238
- ...(navigationMaskEnabled ? {} : {
239
- borderRadius: focusedMaskBorderRadius,
240
- overflow: "hidden"
241
- })
242
- };
243
- const focusedStyles = {
244
- content: {
245
- style: focusedContentStyle
123
+ const focusedOpacityRange = active.closing ? _config.ZOOM_FOCUSED_ELEMENT_CLOSE_OPACITY_RANGE : _config.ZOOM_FOCUSED_ELEMENT_OPEN_OPACITY_RANGE;
124
+ const focusedFade = (0, _reactNativeReanimated.interpolate)(transitionProgress, [focusedOpacityRange[0], focusedOpacityRange[1]], [focusedOpacityRange[2], focusedOpacityRange[3]], "clamp");
125
+ const contentBaseTranslateX = contentRaw.translateX;
126
+ const contentBaseTranslateY = contentRaw.translateY;
127
+ const contentBaseScale = contentRaw.scale;
128
+ const contentTranslateX = contentBaseTranslateX + drag.dragX + pinchFocalOffset.x * contentBaseScale;
129
+ const contentTranslateY = contentBaseTranslateY + drag.dragY + pinchFocalOffset.y * contentBaseScale;
130
+ const contentScale = drag.isDismissing ? drag.dismissContentScale : contentBaseScale * drag.gestureScale;
131
+ return {
132
+ options: {
133
+ gestureReleaseVelocityScale: 0.5
246
134
  },
247
- ...sourceVisibilityStyle
248
- };
249
- if (navigationMaskEnabled) {
250
- focusedStyles[_constants.NAVIGATION_MASK_ELEMENT_STYLE_ID] = {
135
+ backdrop: {
251
136
  style: {
252
- width: maskWidth,
253
- height: maskHeight,
254
- borderRadius: focusedMaskBorderRadius,
137
+ backgroundColor: backdropColor,
138
+ opacity: backdropOpacity
139
+ }
140
+ },
141
+ content: {
142
+ style: {
143
+ ...(keepFocusedVisible ? {} : {
144
+ opacity: focusedFade
145
+ }),
255
146
  transform: [{
256
- translateX: compensatedMaskTranslateX
147
+ translateX: contentTranslateX
148
+ }, {
149
+ translateY: contentTranslateY
257
150
  }, {
258
- translateY: compensatedMaskTranslateY
151
+ scale: contentScale
259
152
  }, {
260
- scale: compensatedMaskScale
261
- }]
153
+ rotateZ: `${drag.rotation}rad`
154
+ }],
155
+ borderRadius: (0, _reactNativeReanimated.interpolate)(transitionProgress, [0, 1], [sourceBorderRadius, active.animating ? expandedBorderRadius : 0], "clamp"),
156
+ overflow: "hidden"
262
157
  }
263
- };
158
+ },
159
+ [_constants.NAVIGATION_MASK_ELEMENT_STYLE_ID]: navigationMaskEnabled ? (0, _mask.resolveZoomNavigationMaskStyle)({
160
+ scopedBounds,
161
+ link,
162
+ sourceBounds,
163
+ screenLayout,
164
+ transitionProgress,
165
+ drag,
166
+ contentTransform: contentRaw,
167
+ sourceBorderRadius,
168
+ expandedBorderRadius,
169
+ active,
170
+ anchor: zoomContentAnchor
171
+ }) : {}
172
+ };
173
+ }
174
+ const unfocusedOpacityRange = active.closing ? _config.ZOOM_UNFOCUSED_ELEMENT_CLOSE_OPACITY_RANGE : _config.ZOOM_UNFOCUSED_ELEMENT_OPEN_OPACITY_RANGE;
175
+ const unfocusedFade = (0, _reactNativeReanimated.interpolate)(transitionProgress, [unfocusedOpacityRange[0], unfocusedOpacityRange[1]], [unfocusedOpacityRange[2], unfocusedOpacityRange[3]], "clamp");
176
+ const unfocusedScale = (0, _reactNativeReanimated.interpolate)(transitionProgress, [1, 2], [1, backgroundScale], "clamp");
177
+ const shouldHideSource = !active.closing && unfocusedFade <= _constants.EPSILON;
178
+ const unfocusedContentScale = active.settled ? 1 : unfocusedScale;
179
+ const unfocusedContent = {
180
+ style: {
181
+ transform: [{
182
+ scale: unfocusedContentScale
183
+ }]
264
184
  }
185
+ };
186
+
187
+ // To avoid measuring a component from a bad position,
188
+ // we'll want to hide + reset this component when the animation has reached a visual settling point
189
+ if (shouldHideSource || active.settled) {
265
190
  return {
266
- options: zoomGestureOptions,
267
- ...focusedStyles
191
+ content: unfocusedContent,
192
+ [link.id]: {
193
+ style: {
194
+ transform: [{
195
+ translateX: 0
196
+ }, {
197
+ translateY: 0
198
+ }, {
199
+ scaleX: 1
200
+ }, {
201
+ scaleY: 1
202
+ }],
203
+ opacity: shouldHideSource ? 0 : unfocusedFade
204
+ }
205
+ }
268
206
  };
269
207
  }
270
-
271
- /* ---------------------------- Unfocused Screen ---------------------------- */
272
-
273
- const unfocusedFade = props.active?.closing ? (0, _helpers2.interpolateOpacityRange)({
274
- progress: transitionProgress,
275
- range: unfocusedElementOpacity.close
276
- }) : (0, _helpers2.interpolateOpacityRange)({
277
- progress: transitionProgress,
278
- range: unfocusedElementOpacity.open
279
- });
280
- const unfocusedScale = (0, _reactNativeReanimated.interpolate)(transitionProgress, [1, 2], [1, backgroundScale], "clamp");
281
- const didSourceComponentVisiblyHide = !props.active.closing && unfocusedFade <= _constants.EPSILON;
282
- const shouldHideUnfocusedElement = !props.active.closing && didSourceComponentVisiblyHide;
283
- const unfocusedElementTarget = (0, _helpers2.getZoomContentTarget)({
284
- explicitTarget: target,
208
+ const trackedContentBaseScale = (0, _math.resolveRevealContentBaseTransform)({
209
+ progress: activeTransitionProgress,
210
+ sourceBounds,
211
+ destinationBounds: trackingContentTarget,
212
+ screenLayout
213
+ }).scale;
214
+ const trackedDragX = drag.dragX + pinchFocalOffset.x * trackedContentBaseScale;
215
+ const trackedDragY = drag.dragY + pinchFocalOffset.y * trackedContentBaseScale;
216
+ const trackedSourceElement = (0, _helpers2.resolveZoomTrackedSourceTransform)({
217
+ progress: activeTransitionProgress,
218
+ sourceBounds,
219
+ destinationBounds: trackingContentTarget,
285
220
  screenLayout,
286
- anchor: _config.ZOOM_SHARED_OPTIONS.anchor,
287
- link
288
- });
289
- const elementRaw = scopedBounds.values({
290
- ...baseRawOptions,
291
- anchor: zoomAnchor,
292
- method: "transform",
293
- space: "relative",
294
- target: unfocusedElementTarget,
295
- progress: transitionProgress
296
- });
297
- const boundTargetCenterX = target === "bound" && link.destination?.bounds ? link.destination.bounds.pageX + link.destination.bounds.width / 2 : undefined;
298
- const boundTargetCenterY = target === "bound" && link.destination?.bounds ? link.destination.bounds.pageY + link.destination.bounds.height / 2 : undefined;
299
- const elementCenterX = boundTargetCenterX ?? (typeof unfocusedElementTarget === "object" ? unfocusedElementTarget.pageX + unfocusedElementTarget.width / 2 : screenLayout.width / 2);
300
- const elementCenterY = boundTargetCenterY ?? (typeof unfocusedElementTarget === "object" ? unfocusedElementTarget.pageY + unfocusedElementTarget.height / 2 : screenLayout.height / 2);
301
- const unfocusedContentScale = props.active.settled ? 1 : unfocusedScale;
302
- const shouldTrackGestureTranslation = !props.active.settled;
303
- const shouldTrackGestureScale = !props.active.settled;
304
- const elementGestureScale = shouldTrackGestureScale ? handoffDragScale : 1;
305
- const elementGestureX = shouldTrackGestureTranslation ? dragX : 0;
306
- const elementGestureY = shouldTrackGestureTranslation ? dragY : 0;
307
- const safeUnfocusedContentScale = Math.max(Math.abs(unfocusedContentScale), _constants.EPSILON);
308
- // A naturally settled close can leave this as the last emitted style frame,
309
- // so drop temporary stacking here instead of waiting for a later reset pass.
310
- const shouldElevateUnfocusedElement = !props.active.closing || !props.active.settled;
311
- const scaleShiftX = (0, _math.computeCenterScaleShift)({
312
- center: elementCenterX,
313
- containerCenter: screenLayout.width / 2,
314
- scale: elementGestureScale
315
- });
316
- const scaleShiftY = (0, _math.computeCenterScaleShift)({
317
- center: elementCenterY,
318
- containerCenter: screenLayout.height / 2,
319
- scale: elementGestureScale
320
- });
321
- const compensatedGestureX = (0, _math.composeCompensatedTranslation)({
322
- gesture: elementGestureX,
323
- parentScale: unfocusedContentScale,
324
- centerShift: scaleShiftX,
325
- epsilon: _constants.EPSILON
326
- });
327
- const compensatedGestureY = (0, _math.composeCompensatedTranslation)({
328
- gesture: elementGestureY,
221
+ dragX: trackedDragX,
222
+ dragY: trackedDragY,
223
+ gestureScale: trackedGestureScale,
329
224
  parentScale: unfocusedContentScale,
330
- centerShift: scaleShiftY,
331
- epsilon: _constants.EPSILON
225
+ rotation: drag.rotation,
226
+ anchor: zoomContentAnchor
332
227
  });
333
- const elementTranslateX = (0, _helpers.toNumber)(elementRaw.translateX) + compensatedGestureX;
334
- const elementTranslateY = (0, _helpers.toNumber)(elementRaw.translateY) + compensatedGestureY;
335
- const elementScaleX = (0, _helpers.toNumber)(elementRaw.scaleX, 1) * elementGestureScale / safeUnfocusedContentScale;
336
- const elementScaleY = (0, _helpers.toNumber)(elementRaw.scaleY, 1) * elementGestureScale / safeUnfocusedContentScale;
337
- const resolvedElementStyle = shouldHideUnfocusedElement ? {
338
- transform: [{
339
- translateX: 0
340
- }, {
341
- translateY: 0
342
- }, {
343
- scaleX: 1
344
- }, {
345
- scaleY: 1
346
- }],
347
- opacity: zoomOptions?.debug ? 1 : 0,
348
- zIndex: 0,
349
- elevation: 0
350
- } : {
351
- transform: [{
352
- translateX: elementTranslateX
353
- }, {
354
- translateY: elementTranslateY
355
- }, {
356
- scaleX: elementScaleX
357
- }, {
358
- scaleY: elementScaleY
359
- }],
360
- opacity: zoomOptions?.debug ? 1 : unfocusedFade,
361
- zIndex: shouldElevateUnfocusedElement ? 9999 : 0,
362
- elevation: shouldElevateUnfocusedElement ? 9999 : 0
363
- };
364
228
  return {
365
- options: zoomGestureOptions,
366
- content: {
229
+ content: unfocusedContent,
230
+ [link.id]: {
367
231
  style: {
368
232
  transform: [{
369
- scale: unfocusedContentScale
370
- }]
233
+ translateX: trackedSourceElement.translateX
234
+ }, {
235
+ translateY: trackedSourceElement.translateY
236
+ }, {
237
+ rotateZ: `${drag.rotation}rad`
238
+ }, {
239
+ scaleX: trackedSourceElement.scaleX
240
+ }, {
241
+ scaleY: trackedSourceElement.scaleY
242
+ }],
243
+ opacity: unfocusedFade
371
244
  }
372
- },
373
- [buildEffectiveTag]: {
374
- style: resolvedElementStyle
375
245
  }
376
246
  };
377
247
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeReanimated","require","_constants","_createBoundsAccessorCore","_helpers","_math","_math2","_config","_helpers2","_math3","IDENTITY_DRAG_SCALE_OUTPUT","resolveZoomGestureOptions","rawDrag","maxSensitivity","gestureSensitivity","gestureReleaseVelocityScale","resolveRevealGestureHandoff","buildZoomStyles","tag","zoomOptions","props","target","focused","layouts","screen","screenLayout","transitionProgress","current","next","activeTransitionProgress","active","zoomAnchor","ZOOM_SHARED_OPTIONS","anchor","bounds","createBoundsAccessorCore","getProps","scopedBounds","link","baseRawOptions","scaleMode","buildEffectiveTag","id","sourceBorderRadius","getSourceBorderRadius","targetBorderRadius","borderRadius","focusedElementOpacity","open","resolveOpacityRangeTuple","value","fallback","ZOOM_FOCUSED_ELEMENT_OPEN_OPACITY_RANGE","close","ZOOM_FOCUSED_ELEMENT_CLOSE_OPACITY_RANGE","unfocusedElementOpacity","ZOOM_UNFOCUSED_ELEMENT_OPEN_OPACITY_RANGE","ZOOM_UNFOCUSED_ELEMENT_CLOSE_OPACITY_RANGE","sourceVisibilityStyle","style","VISIBLE_STYLE","navigationMaskEnabled","options","velocityDepth","ZOOM_DISMISS_SCALE_ORBIT_DEPTH","liveGesture","gesture","gestureHandoff","handoff","normX","normY","initialGesture","resolveZoomPanGestureDirection","direction","rawNormX","raw","rawNormY","isHorizontalDismiss","isVerticalDismiss","Math","abs","horizontalDragTranslation","resolveDragTranslationTuple","verticalDragTranslation","dragX","resolveDirectionalDragTranslation","translation","x","dimension","width","negativeMax","positiveMax","exponent","dragY","y","height","horizontalDragScale","resolveDragScaleTuple","verticalDragScale","backgroundScale","resolveBackgroundScale","dragXScale","resolveDirectionalDragScale","normalized","dismissDirection","shrinkMin","growMax","dragYScale","dragScale","combineScales","handoffDragScale","dismissing","resolveDismissScaleHandoff","progress","releaseScale","targetScale","velocity","zoomGestureOptions","focusedContentTarget","getZoomContentTarget","explicitTarget","contentRaw","values","method","maskRaw","space","focusedFade","closing","interpolateOpacityRange","range","shouldRemoveClipping","animating","focusedMaskBorderRadius","interpolate","top","right","bottom","left","ZOOM_MASK_OUTSET","maskWidth","max","toNumber","maskHeight","contentBaseTranslateX","translateX","contentBaseTranslateY","translateY","contentBaseScale","scale","safeContentBaseScale","EPSILON","contentTranslateX","contentTranslateY","contentScale","maskBaseTranslateX","maskBaseTranslateY","maskCenterX","maskCenterY","contentCenterX","contentCenterY","compensatedMaskTranslateX","compensatedMaskTranslateY","compensatedMaskScale","focusedContentStyle","opacity","debug","transform","overflow","focusedStyles","content","NAVIGATION_MASK_ELEMENT_STYLE_ID","unfocusedFade","unfocusedScale","didSourceComponentVisiblyHide","shouldHideUnfocusedElement","unfocusedElementTarget","elementRaw","boundTargetCenterX","destination","pageX","undefined","boundTargetCenterY","pageY","elementCenterX","elementCenterY","unfocusedContentScale","settled","shouldTrackGestureTranslation","shouldTrackGestureScale","elementGestureScale","elementGestureX","elementGestureY","safeUnfocusedContentScale","shouldElevateUnfocusedElement","scaleShiftX","computeCenterScaleShift","center","containerCenter","scaleShiftY","compensatedGestureX","composeCompensatedTranslation","parentScale","centerShift","epsilon","compensatedGestureY","elementTranslateX","elementTranslateY","elementScaleX","scaleX","elementScaleY","scaleY","resolvedElementStyle","zIndex","elevation"],"sourceRoot":"../../../../../../../src","sources":["shared/utils/bounds/navigation/zoom/build.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeReanimated","require","_constants","_createBoundsAccessorCore","_helpers","_math","_config","_drag","_helpers2","_mask","_targets","buildZoomStyles","tag","props","zoomOptions","target","keepFocusedVisible","expandedBorderRadius","Math","max","borderRadius","ZOOM_NAVIGATION_MASK_BORDER_RADIUS","backgroundScale","ZOOM_BACKGROUND_SCALE","backdropColor","maxBackdropOpacity","backdropOpacity","ZOOM_BACKDROP_MAX_OPACITY","active","current","focused","transitionProgress","layouts","screen","screenLayout","activeTransitionProgress","bounds","createBoundsAccessorCore","getProps","scopedBounds","link","sourceBounds","source","values","scaleMode","ZOOM_SHARED_OPTIONS","anchor","method","progress","zoomContentTarget","getZoomContentTarget","explicitTarget","zoomContentAnchor","getZoomContentAnchor","trackingContentTarget","resolveZoomTrackingContentTarget","contentTarget","drag","resolveZoomDragState","gesture","dragOptions","trackedGestureScale","resolveZoomTrackedGestureScale","focalGesture","isDismissing","handoff","focalProgress","pinchFocalOffset","resolveZoomPinchFocalOffset","gestureScale","scale","pinchOriginX","pinchOriginY","rotation","x","y","sourceBorderRadius","getSourceBorderRadius","navigationMaskEnabled","options","resolveZoomBackdropOpacity","dismissalDrag","dismissNorm","fadeEnd","ZOOM_SCREEN_A_FADE_END","maxOpacity","contentRaw","focusedOpacityRange","closing","ZOOM_FOCUSED_ELEMENT_CLOSE_OPACITY_RANGE","ZOOM_FOCUSED_ELEMENT_OPEN_OPACITY_RANGE","focusedFade","interpolate","contentBaseTranslateX","translateX","contentBaseTranslateY","translateY","contentBaseScale","contentTranslateX","dragX","contentTranslateY","dragY","contentScale","dismissContentScale","gestureReleaseVelocityScale","backdrop","style","backgroundColor","opacity","content","transform","rotateZ","animating","overflow","NAVIGATION_MASK_ELEMENT_STYLE_ID","resolveZoomNavigationMaskStyle","contentTransform","unfocusedOpacityRange","ZOOM_UNFOCUSED_ELEMENT_CLOSE_OPACITY_RANGE","ZOOM_UNFOCUSED_ELEMENT_OPEN_OPACITY_RANGE","unfocusedFade","unfocusedScale","shouldHideSource","EPSILON","unfocusedContentScale","settled","unfocusedContent","id","scaleX","scaleY","trackedContentBaseScale","resolveRevealContentBaseTransform","destinationBounds","trackedDragX","trackedDragY","trackedSourceElement","resolveZoomTrackedSourceTransform","parentScale"],"sourceRoot":"../../../../../../../src","sources":["shared/utils/bounds/navigation/zoom/build.ts"],"mappings":"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","ignoreList":[]}