react-native-screen-transitions 3.2.0 → 3.3.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/README.md +1 -1
  2. package/lib/commonjs/shared/components/create-transition-aware-component.js +8 -2
  3. package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
  4. package/lib/commonjs/shared/components/{root-transition-aware.js → screen-container.js} +28 -12
  5. package/lib/commonjs/shared/components/screen-container.js.map +1 -0
  6. package/lib/commonjs/shared/configs/presets.js +3 -3
  7. package/lib/commonjs/shared/configs/presets.js.map +1 -1
  8. package/lib/commonjs/shared/configs/specs.js +6 -1
  9. package/lib/commonjs/shared/configs/specs.js.map +1 -1
  10. package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js +36 -188
  11. package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js.map +1 -1
  12. package/lib/commonjs/shared/hooks/gestures/use-screen-gesture-handlers.js +334 -0
  13. package/lib/commonjs/shared/hooks/gestures/use-screen-gesture-handlers.js.map +1 -0
  14. package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.js +47 -4
  15. package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.js.map +1 -1
  16. package/lib/commonjs/shared/hooks/lifecycle/use-close-transition.js +3 -3
  17. package/lib/commonjs/shared/hooks/lifecycle/use-close-transition.js.map +1 -1
  18. package/lib/commonjs/shared/hooks/lifecycle/use-open-transition.js +25 -3
  19. package/lib/commonjs/shared/hooks/lifecycle/use-open-transition.js.map +1 -1
  20. package/lib/commonjs/shared/hooks/navigation/use-screen-state.js +61 -2
  21. package/lib/commonjs/shared/hooks/navigation/use-screen-state.js.map +1 -1
  22. package/lib/commonjs/shared/hooks/use-backdrop-pointer-events.js +32 -0
  23. package/lib/commonjs/shared/hooks/use-backdrop-pointer-events.js.map +1 -0
  24. package/lib/commonjs/shared/providers/gestures.provider.js +4 -2
  25. package/lib/commonjs/shared/providers/gestures.provider.js.map +1 -1
  26. package/lib/commonjs/shared/providers/screen/screen-composer.js +2 -2
  27. package/lib/commonjs/shared/providers/screen/screen-composer.js.map +1 -1
  28. package/lib/commonjs/shared/providers/screen/styles.provider.js +41 -32
  29. package/lib/commonjs/shared/providers/screen/styles.provider.js.map +1 -1
  30. package/lib/commonjs/shared/utils/animation/{start-screen-transition.js → animate-to-progress.js} +11 -7
  31. package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -0
  32. package/lib/commonjs/shared/utils/gesture/check-gesture-activation.js +71 -0
  33. package/lib/commonjs/shared/utils/gesture/check-gesture-activation.js.map +1 -1
  34. package/lib/commonjs/shared/utils/gesture/determine-snap-target.js +56 -0
  35. package/lib/commonjs/shared/utils/gesture/determine-snap-target.js.map +1 -0
  36. package/lib/commonjs/shared/utils/gesture/validate-snap-points.js +31 -0
  37. package/lib/commonjs/shared/utils/gesture/validate-snap-points.js.map +1 -0
  38. package/lib/commonjs/shared/utils/gesture/velocity.js +11 -0
  39. package/lib/commonjs/shared/utils/gesture/velocity.js.map +1 -1
  40. package/lib/module/shared/components/create-transition-aware-component.js +8 -2
  41. package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
  42. package/lib/module/shared/components/screen-container.js +64 -0
  43. package/lib/module/shared/components/screen-container.js.map +1 -0
  44. package/lib/module/shared/configs/presets.js +3 -3
  45. package/lib/module/shared/configs/presets.js.map +1 -1
  46. package/lib/module/shared/configs/specs.js +5 -0
  47. package/lib/module/shared/configs/specs.js.map +1 -1
  48. package/lib/module/shared/hooks/gestures/use-build-gestures.js +36 -187
  49. package/lib/module/shared/hooks/gestures/use-build-gestures.js.map +1 -1
  50. package/lib/module/shared/hooks/gestures/use-screen-gesture-handlers.js +328 -0
  51. package/lib/module/shared/hooks/gestures/use-screen-gesture-handlers.js.map +1 -0
  52. package/lib/module/shared/hooks/gestures/use-scroll-registry.js +47 -4
  53. package/lib/module/shared/hooks/gestures/use-scroll-registry.js.map +1 -1
  54. package/lib/module/shared/hooks/lifecycle/use-close-transition.js +3 -3
  55. package/lib/module/shared/hooks/lifecycle/use-close-transition.js.map +1 -1
  56. package/lib/module/shared/hooks/lifecycle/use-open-transition.js +25 -3
  57. package/lib/module/shared/hooks/lifecycle/use-open-transition.js.map +1 -1
  58. package/lib/module/shared/hooks/navigation/use-screen-state.js +63 -4
  59. package/lib/module/shared/hooks/navigation/use-screen-state.js.map +1 -1
  60. package/lib/module/shared/hooks/use-backdrop-pointer-events.js +28 -0
  61. package/lib/module/shared/hooks/use-backdrop-pointer-events.js.map +1 -0
  62. package/lib/module/shared/providers/gestures.provider.js +4 -2
  63. package/lib/module/shared/providers/gestures.provider.js.map +1 -1
  64. package/lib/module/shared/providers/screen/screen-composer.js +2 -2
  65. package/lib/module/shared/providers/screen/screen-composer.js.map +1 -1
  66. package/lib/module/shared/providers/screen/styles.provider.js +41 -32
  67. package/lib/module/shared/providers/screen/styles.provider.js.map +1 -1
  68. package/lib/module/shared/utils/animation/{start-screen-transition.js → animate-to-progress.js} +9 -5
  69. package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -0
  70. package/lib/module/shared/utils/gesture/check-gesture-activation.js +70 -0
  71. package/lib/module/shared/utils/gesture/check-gesture-activation.js.map +1 -1
  72. package/lib/module/shared/utils/gesture/determine-snap-target.js +52 -0
  73. package/lib/module/shared/utils/gesture/determine-snap-target.js.map +1 -0
  74. package/lib/module/shared/utils/gesture/validate-snap-points.js +26 -0
  75. package/lib/module/shared/utils/gesture/validate-snap-points.js.map +1 -0
  76. package/lib/module/shared/utils/gesture/velocity.js +11 -0
  77. package/lib/module/shared/utils/gesture/velocity.js.map +1 -1
  78. package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
  79. package/lib/typescript/shared/components/screen-container.d.ts +6 -0
  80. package/lib/typescript/shared/components/screen-container.d.ts.map +1 -0
  81. package/lib/typescript/shared/configs/specs.d.ts +1 -0
  82. package/lib/typescript/shared/configs/specs.d.ts.map +1 -1
  83. package/lib/typescript/shared/hooks/gestures/use-build-gestures.d.ts +1 -1
  84. package/lib/typescript/shared/hooks/gestures/use-build-gestures.d.ts.map +1 -1
  85. package/lib/typescript/shared/hooks/gestures/use-screen-gesture-handlers.d.ts +34 -0
  86. package/lib/typescript/shared/hooks/gestures/use-screen-gesture-handlers.d.ts.map +1 -0
  87. package/lib/typescript/shared/hooks/gestures/use-scroll-registry.d.ts +5 -1
  88. package/lib/typescript/shared/hooks/gestures/use-scroll-registry.d.ts.map +1 -1
  89. package/lib/typescript/shared/hooks/lifecycle/use-open-transition.d.ts.map +1 -1
  90. package/lib/typescript/shared/hooks/navigation/use-screen-state.d.ts +14 -0
  91. package/lib/typescript/shared/hooks/navigation/use-screen-state.d.ts.map +1 -1
  92. package/lib/typescript/shared/hooks/use-backdrop-pointer-events.d.ts +15 -0
  93. package/lib/typescript/shared/hooks/use-backdrop-pointer-events.d.ts.map +1 -0
  94. package/lib/typescript/shared/providers/gestures.provider.d.ts +1 -0
  95. package/lib/typescript/shared/providers/gestures.provider.d.ts.map +1 -1
  96. package/lib/typescript/shared/providers/screen/styles.provider.d.ts.map +1 -1
  97. package/lib/typescript/shared/types/animation.types.d.ts +28 -2
  98. package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
  99. package/lib/typescript/shared/types/screen.types.d.ts +26 -0
  100. package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
  101. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts +19 -0
  102. package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -0
  103. package/lib/typescript/shared/utils/gesture/check-gesture-activation.d.ts +24 -0
  104. package/lib/typescript/shared/utils/gesture/check-gesture-activation.d.ts.map +1 -1
  105. package/lib/typescript/shared/utils/gesture/determine-snap-target.d.ts +26 -0
  106. package/lib/typescript/shared/utils/gesture/determine-snap-target.d.ts.map +1 -0
  107. package/lib/typescript/shared/utils/gesture/validate-snap-points.d.ts +13 -0
  108. package/lib/typescript/shared/utils/gesture/validate-snap-points.d.ts.map +1 -0
  109. package/lib/typescript/shared/utils/gesture/velocity.d.ts +1 -0
  110. package/lib/typescript/shared/utils/gesture/velocity.d.ts.map +1 -1
  111. package/package.json +29 -2
  112. package/src/shared/__tests__/determine-snap-target.test.ts +268 -0
  113. package/src/shared/__tests__/gesture-activation.test.ts +247 -0
  114. package/src/shared/__tests__/validate-snap-points.test.ts +125 -0
  115. package/src/shared/components/create-transition-aware-component.tsx +11 -1
  116. package/src/shared/components/screen-container.tsx +65 -0
  117. package/src/shared/configs/presets.ts +3 -3
  118. package/src/shared/configs/specs.ts +6 -0
  119. package/src/shared/hooks/gestures/use-build-gestures.tsx +33 -253
  120. package/src/shared/hooks/gestures/use-screen-gesture-handlers.ts +436 -0
  121. package/src/shared/hooks/gestures/use-scroll-registry.tsx +52 -1
  122. package/src/shared/hooks/lifecycle/use-close-transition.ts +3 -3
  123. package/src/shared/hooks/lifecycle/use-open-transition.ts +27 -3
  124. package/src/shared/hooks/navigation/use-screen-state.tsx +106 -2
  125. package/src/shared/hooks/use-backdrop-pointer-events.ts +32 -0
  126. package/src/shared/providers/gestures.provider.tsx +3 -2
  127. package/src/shared/providers/screen/screen-composer.tsx +2 -2
  128. package/src/shared/providers/screen/styles.provider.tsx +40 -34
  129. package/src/shared/types/animation.types.ts +29 -2
  130. package/src/shared/types/screen.types.ts +29 -0
  131. package/src/shared/utils/animation/{start-screen-transition.ts → animate-to-progress.ts} +19 -7
  132. package/src/shared/utils/gesture/check-gesture-activation.ts +78 -0
  133. package/src/shared/utils/gesture/determine-snap-target.ts +75 -0
  134. package/src/shared/utils/gesture/validate-snap-points.ts +37 -0
  135. package/src/shared/utils/gesture/velocity.ts +10 -0
  136. package/lib/commonjs/shared/components/root-transition-aware.js.map +0 -1
  137. package/lib/commonjs/shared/hooks/use-stack-pointer-events.js +0 -23
  138. package/lib/commonjs/shared/hooks/use-stack-pointer-events.js.map +0 -1
  139. package/lib/commonjs/shared/utils/animation/start-screen-transition.js.map +0 -1
  140. package/lib/module/shared/components/root-transition-aware.js +0 -48
  141. package/lib/module/shared/components/root-transition-aware.js.map +0 -1
  142. package/lib/module/shared/hooks/use-stack-pointer-events.js +0 -20
  143. package/lib/module/shared/hooks/use-stack-pointer-events.js.map +0 -1
  144. package/lib/module/shared/utils/animation/start-screen-transition.js.map +0 -1
  145. package/lib/typescript/shared/components/root-transition-aware.d.ts +0 -6
  146. package/lib/typescript/shared/components/root-transition-aware.d.ts.map +0 -1
  147. package/lib/typescript/shared/hooks/use-stack-pointer-events.d.ts +0 -10
  148. package/lib/typescript/shared/hooks/use-stack-pointer-events.d.ts.map +0 -1
  149. package/lib/typescript/shared/utils/animation/start-screen-transition.d.ts +0 -13
  150. package/lib/typescript/shared/utils/animation/start-screen-transition.d.ts.map +0 -1
  151. package/src/shared/components/root-transition-aware.tsx +0 -49
  152. package/src/shared/hooks/use-stack-pointer-events.ts +0 -15
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useDerivedValue","useKeys","useSharedValueState","useStack","useScreenState","routes","scenes","routeKeys","optimisticFocusedIndex","current","index","indexOf","route","key","focusedIndex","globalIndex","get","Math","max","min","length","focusedScene","options","descriptor","focusedRoute","meta","navigation"],"sourceRoot":"../../../../../src","sources":["shared/hooks/navigation/use-screen-state.tsx"],"mappings":";;AACA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAASC,eAAe,QAAQ,yBAAyB;AACzD,SAECC,OAAO,QACD,sCAAsC;AAG7C,SAASC,mBAAmB,QAAQ,sCAAsC;AAC1E,SAAiCC,QAAQ,QAAQ,aAAa;AAyC9D;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAAA,EAEA;EAC7B,MAAM;IAAEC,MAAM;IAAEC,MAAM;IAAEC,SAAS;IAAEC;EAAuB,CAAC,GAC1DL,QAAQ,CAAoB,CAAC;EAC9B,MAAM;IAAEM;EAAQ,CAAC,GAAGR,OAAO,CAAiB,CAAC;EAE7C,MAAMS,KAAK,GAAGX,OAAO,CACpB,MAAMQ,SAAS,CAACI,OAAO,CAACF,OAAO,CAACG,KAAK,CAACC,GAAG,CAAC,EAC1C,CAACN,SAAS,EAAEE,OAAO,CAACG,KAAK,CAACC,GAAG,CAC9B,CAAC;EAED,MAAMC,YAAY,GAAGZ,mBAAmB,CACvCF,eAAe,CAAC,MAAM;IACrB,MAAMe,WAAW,GAAGP,sBAAsB,CAACQ,GAAG,CAAC,CAAC;IAChD,OAAOC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAACJ,WAAW,EAAER,SAAS,CAACa,MAAM,GAAG,CAAC,CAAC,CAAC;EAChE,CAAC,CACF,CAAC;EAED,MAAMC,YAAY,GAAGtB,OAAO,CAAC,MAAM;IAClC,OAAOO,MAAM,CAACQ,YAAY,CAAC,IAAIR,MAAM,CAACA,MAAM,CAACc,MAAM,GAAG,CAAC,CAAC;EACzD,CAAC,EAAE,CAACd,MAAM,EAAEQ,YAAY,CAAC,CAAC;EAE1B,OAAOf,OAAO,CACb,OAAO;IACNW,KAAK;IACLY,OAAO,EAAED,YAAY,EAAEE,UAAU,EAAED,OAAO,IAAI,CAAC,CAAC;IAChDjB,MAAM;IACNmB,YAAY,EAAEH,YAAY,EAAET,KAAK,IAAIH,OAAO,CAACG,KAAK;IAClDE,YAAY;IACZW,IAAI,EAAEJ,YAAY,EAAEE,UAAU,EAAED,OAAO,EAAEG,IAAI;IAC7CC,UAAU,EAAEjB,OAAO,CAACiB;EACrB,CAAC,CAAC,EACF,CACChB,KAAK,EACLW,YAAY,EACZhB,MAAM,EACNS,YAAY,EACZL,OAAO,CAACiB,UAAU,EAClBjB,OAAO,CAACG,KAAK,CAEf,CAAC;AACF","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useMemo","runOnUI","useDerivedValue","DefaultSnapSpec","useKeys","AnimationStore","animateToProgress","useSharedValueState","useStack","useScreenState","routes","scenes","routeKeys","optimisticFocusedIndex","current","index","indexOf","route","key","focusedIndex","globalIndex","get","Math","max","min","length","focusedScene","currentOptions","options","snapPoints","animations","getAll","sortedSnapPoints","sort","a","b","animatedSnapIndex","progress","value","i","t","snapTo","targetIndex","console","warn","targetProgress","target","spec","open","descriptor","transitionSpec","expand","close","collapse","focusedRoute","meta","navigation"],"sourceRoot":"../../../../../src","sources":["shared/hooks/navigation/use-screen-state.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ import { useKeys } from "../providers/screen/keys.provider";
4
+ import { useStackCoreContext } from "../providers/stack/core.provider";
5
+ import { StackType } from "../types/stack.types";
6
+ /**
7
+ * Returns pointer events and backdrop behavior based on screen options.
8
+ *
9
+ * - Explicit `backdropBehavior` option takes precedence
10
+ * - Component stacks default to 'passthrough' (box-none)
11
+ * - Other stacks default to 'block' (undefined = normal touch handling)
12
+ */
13
+ export function useBackdropPointerEvents() {
14
+ const {
15
+ current
16
+ } = useKeys();
17
+ const {
18
+ flags
19
+ } = useStackCoreContext();
20
+ const isComponentStack = flags.STACK_TYPE === StackType.COMPONENT;
21
+ const backdropBehavior = current.options.backdropBehavior ?? (isComponentStack ? "passthrough" : "block");
22
+ const pointerEvents = backdropBehavior === "passthrough" ? "box-none" : undefined;
23
+ return {
24
+ pointerEvents,
25
+ backdropBehavior
26
+ };
27
+ }
28
+ //# sourceMappingURL=use-backdrop-pointer-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useKeys","useStackCoreContext","StackType","useBackdropPointerEvents","current","flags","isComponentStack","STACK_TYPE","COMPONENT","backdropBehavior","options","pointerEvents","undefined"],"sourceRoot":"../../../../src","sources":["shared/hooks/use-backdrop-pointer-events.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,mCAAmC;AAC3D,SAASC,mBAAmB,QAAQ,kCAAkC;AACtE,SAASC,SAAS,QAAQ,sBAAsB;AAShD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,wBAAwBA,CAAA,EAAgC;EACvE,MAAM;IAAEC;EAAQ,CAAC,GAAGJ,OAAO,CAAC,CAAC;EAC7B,MAAM;IAAEK;EAAM,CAAC,GAAGJ,mBAAmB,CAAC,CAAC;EAEvC,MAAMK,gBAAgB,GAAGD,KAAK,CAACE,UAAU,KAAKL,SAAS,CAACM,SAAS;EACjE,MAAMC,gBAAkC,GACvCL,OAAO,CAACM,OAAO,CAACD,gBAAgB,KAC/BH,gBAAgB,GAAG,aAAa,GAAG,OAAO,CAAC;EAE7C,MAAMK,aAAa,GAClBF,gBAAgB,KAAK,aAAa,GAAG,UAAU,GAAGG,SAAS;EAE5D,OAAO;IAAED,aAAa;IAAEF;EAAiB,CAAC;AAC3C","ignoreList":[]}
@@ -4,7 +4,7 @@ import { StyleSheet, View } from "react-native";
4
4
  import { GestureDetector } from "react-native-gesture-handler";
5
5
  import { useSharedValue } from "react-native-reanimated";
6
6
  import { useBuildGestures } from "../hooks/gestures/use-build-gestures";
7
- import { useStackPointerEvents } from "../hooks/use-stack-pointer-events";
7
+ import { useBackdropPointerEvents } from "../hooks/use-backdrop-pointer-events";
8
8
  import createProvider from "../utils/create-provider";
9
9
  import { useKeys } from "./screen/keys.provider";
10
10
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -19,9 +19,11 @@ export const {
19
19
  const {
20
20
  current
21
21
  } = useKeys();
22
- const pointerEvents = useStackPointerEvents();
23
22
  const ancestorContext = useGestureContext();
24
23
  const scrollConfig = useSharedValue(null);
24
+ const {
25
+ pointerEvents
26
+ } = useBackdropPointerEvents();
25
27
  const hasGestures = current.options.gestureEnabled === true;
26
28
  const {
27
29
  panGesture,
@@ -1 +1 @@
1
- {"version":3,"names":["StyleSheet","View","GestureDetector","useSharedValue","useBuildGestures","useStackPointerEvents","createProvider","useKeys","jsx","_jsx","ScreenGestureProvider","useScreenGestureContext","useGestureContext","guarded","children","current","pointerEvents","ancestorContext","scrollConfig","hasGestures","options","gestureEnabled","panGesture","panGestureRef","nativeGesture","gestureAnimationValues","value","gesture","style","styles","container","create","flex"],"sourceRoot":"../../../../src","sources":["shared/providers/gestures.provider.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SACCC,eAAe,QAET,8BAA8B;AAErC,SAASC,cAAc,QAAQ,yBAAyB;AACxD,SAASC,gBAAgB,QAAQ,sCAAsC;AACvE,SAASC,qBAAqB,QAAQ,mCAAmC;AAEzE,OAAOC,cAAc,MAAM,0BAA0B;AACrD,SAASC,OAAO,QAAQ,wBAAwB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAyBjD,OAAO,MAAM;EACZC,qBAAqB;EACrBC,uBAAuB,EAAEC;AAC1B,CAAC,GAAGN,cAAc,CAAC,eAAe,EAAE;EAAEO,OAAO,EAAE;AAAM,CAAC,CAAC,CAGrD,CAAC;EAAEC;AAAS,CAAC,KAAK;EACnB,MAAM;IAAEC;EAAQ,CAAC,GAAGR,OAAO,CAAC,CAAC;EAC7B,MAAMS,aAAa,GAAGX,qBAAqB,CAAC,CAAC;EAC7C,MAAMY,eAAe,GAAGL,iBAAiB,CAAC,CAAC;EAC3C,MAAMM,YAAY,GAAGf,cAAc,CAAsB,IAAI,CAAC;EAE9D,MAAMgB,WAAW,GAAGJ,OAAO,CAACK,OAAO,CAACC,cAAc,KAAK,IAAI;EAE3D,MAAM;IAAEC,UAAU;IAAEC,aAAa;IAAEC,aAAa;IAAEC;EAAuB,CAAC,GACzErB,gBAAgB,CAAC;IAChBc,YAAY;IACZD;EACD,CAAC,CAAC;EAEH,MAAMS,KAAyB,GAAG;IACjCJ,UAAU;IACVC,aAAa;IACbL,YAAY;IACZM,aAAa;IACbC,sBAAsB;IACtBR,eAAe;IACfI,cAAc,EAAEF;EACjB,CAAC;EAED,OAAO;IACNO,KAAK;IACLZ,QAAQ,eACPL,IAAA,CAACP,eAAe;MAACyB,OAAO,EAAEL,UAAW;MAAAR,QAAA,eACpCL,IAAA,CAACR,IAAI;QAAC2B,KAAK,EAAEC,MAAM,CAACC,SAAU;QAACd,aAAa,EAAEA,aAAc;QAAAF,QAAA,EAC1DA;MAAQ,CACJ;IAAC,CACS;EAEnB,CAAC;AACF,CAAC,CAAC;AAEF,MAAMe,MAAM,GAAG7B,UAAU,CAAC+B,MAAM,CAAC;EAChCD,SAAS,EAAE;IACVE,IAAI,EAAE;EACP;AACD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["StyleSheet","View","GestureDetector","useSharedValue","useBuildGestures","useBackdropPointerEvents","createProvider","useKeys","jsx","_jsx","ScreenGestureProvider","useScreenGestureContext","useGestureContext","guarded","children","current","ancestorContext","scrollConfig","pointerEvents","hasGestures","options","gestureEnabled","panGesture","panGestureRef","nativeGesture","gestureAnimationValues","value","gesture","style","styles","container","create","flex"],"sourceRoot":"../../../../src","sources":["shared/providers/gestures.provider.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SACCC,eAAe,QAET,8BAA8B;AAErC,SAASC,cAAc,QAAQ,yBAAyB;AACxD,SAASC,gBAAgB,QAAQ,sCAAsC;AACvE,SAASC,wBAAwB,QAAQ,sCAAsC;AAE/E,OAAOC,cAAc,MAAM,0BAA0B;AACrD,SAASC,OAAO,QAAQ,wBAAwB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AA0BjD,OAAO,MAAM;EACZC,qBAAqB;EACrBC,uBAAuB,EAAEC;AAC1B,CAAC,GAAGN,cAAc,CAAC,eAAe,EAAE;EAAEO,OAAO,EAAE;AAAM,CAAC,CAAC,CAGrD,CAAC;EAAEC;AAAS,CAAC,KAAK;EACnB,MAAM;IAAEC;EAAQ,CAAC,GAAGR,OAAO,CAAC,CAAC;EAC7B,MAAMS,eAAe,GAAGJ,iBAAiB,CAAC,CAAC;EAC3C,MAAMK,YAAY,GAAGd,cAAc,CAAsB,IAAI,CAAC;EAC9D,MAAM;IAAEe;EAAc,CAAC,GAAGb,wBAAwB,CAAC,CAAC;EAEpD,MAAMc,WAAW,GAAGJ,OAAO,CAACK,OAAO,CAACC,cAAc,KAAK,IAAI;EAE3D,MAAM;IAAEC,UAAU;IAAEC,aAAa;IAAEC,aAAa;IAAEC;EAAuB,CAAC,GACzErB,gBAAgB,CAAC;IAChBa,YAAY;IACZD;EACD,CAAC,CAAC;EAEH,MAAMU,KAAyB,GAAG;IACjCJ,UAAU;IACVC,aAAa;IACbN,YAAY;IACZO,aAAa;IACbC,sBAAsB;IACtBT,eAAe;IACfK,cAAc,EAAEF;EACjB,CAAC;EAED,OAAO;IACNO,KAAK;IACLZ,QAAQ,eACPL,IAAA,CAACP,eAAe;MAACyB,OAAO,EAAEL,UAAW;MAAAR,QAAA,eACpCL,IAAA,CAACR,IAAI;QAAC2B,KAAK,EAAEC,MAAM,CAACC,SAAU;QAACZ,aAAa,EAAEA,aAAc;QAAAJ,QAAA,EAC1DA;MAAQ,CACJ;IAAC,CACS;EAEnB,CAAC;AACF,CAAC,CAAC;AAEF,MAAMe,MAAM,GAAG7B,UAAU,CAAC+B,MAAM,CAAC;EAChCD,SAAS,EAAE;IACVE,IAAI,EAAE;EACP;AACD,CAAC,CAAC","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { RootTransitionAware } from "../../components/root-transition-aware";
3
+ import { ScreenContainer } from "../../components/screen-container";
4
4
  import { ScreenLifecycle } from "../../components/screen-lifecycle";
5
5
  import { ScreenGestureProvider } from "../gestures.provider";
6
6
  import { KeysProvider } from "./keys.provider";
@@ -21,7 +21,7 @@ export function ScreenComposer({
21
21
  next: next,
22
22
  children: /*#__PURE__*/_jsx(ScreenGestureProvider, {
23
23
  children: /*#__PURE__*/_jsx(ScreenStylesProvider, {
24
- children: /*#__PURE__*/_jsx(RootTransitionAware, {
24
+ children: /*#__PURE__*/_jsx(ScreenContainer, {
25
25
  children: children
26
26
  })
27
27
  })
@@ -1 +1 @@
1
- {"version":3,"names":["RootTransitionAware","ScreenLifecycle","ScreenGestureProvider","KeysProvider","ScreenStylesProvider","jsx","_jsx","ScreenComposer","previous","current","next","children"],"sourceRoot":"../../../../../src","sources":["shared/providers/screen/screen-composer.tsx"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,wCAAwC;AAC5E,SAASC,eAAe,QAAQ,mCAAmC;AACnE,SAASC,qBAAqB,QAAQ,sBAAsB;AAC5D,SAA8BC,YAAY,QAAQ,iBAAiB;AACnE,SAASC,oBAAoB,QAAQ,mBAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AASzD,OAAO,SAASC,cAAcA,CAAqC;EAClEC,QAAQ;EACRC,OAAO;EACPC,IAAI;EACJC;AACmB,CAAC,EAAE;EACtB,oBACCL,IAAA,CAACL,eAAe;IAACQ,OAAO,EAAEA,OAAQ;IAACD,QAAQ,EAAEA,QAAS;IAAAG,QAAA,eACrDL,IAAA,CAACH,YAAY;MAACK,QAAQ,EAAEA,QAAS;MAACC,OAAO,EAAEA,OAAQ;MAACC,IAAI,EAAEA,IAAK;MAAAC,QAAA,eAC9DL,IAAA,CAACJ,qBAAqB;QAAAS,QAAA,eACrBL,IAAA,CAACF,oBAAoB;UAAAO,QAAA,eACpBL,IAAA,CAACN,mBAAmB;YAAAW,QAAA,EAAEA;UAAQ,CAAsB;QAAC,CAChC;MAAC,CACD;IAAC,CACX;EAAC,CACC,CAAC;AAEpB","ignoreList":[]}
1
+ {"version":3,"names":["ScreenContainer","ScreenLifecycle","ScreenGestureProvider","KeysProvider","ScreenStylesProvider","jsx","_jsx","ScreenComposer","previous","current","next","children"],"sourceRoot":"../../../../../src","sources":["shared/providers/screen/screen-composer.tsx"],"mappings":";;AACA,SAASA,eAAe,QAAQ,mCAAmC;AACnE,SAASC,eAAe,QAAQ,mCAAmC;AACnE,SAASC,qBAAqB,QAAQ,sBAAsB;AAC5D,SAA8BC,YAAY,QAAQ,iBAAiB;AACnE,SAASC,oBAAoB,QAAQ,mBAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AASzD,OAAO,SAASC,cAAcA,CAAqC;EAClEC,QAAQ;EACRC,OAAO;EACPC,IAAI;EACJC;AACmB,CAAC,EAAE;EACtB,oBACCL,IAAA,CAACL,eAAe;IAACQ,OAAO,EAAEA,OAAQ;IAACD,QAAQ,EAAEA,QAAS;IAAAG,QAAA,eACrDL,IAAA,CAACH,YAAY;MAACK,QAAQ,EAAEA,QAAS;MAACC,OAAO,EAAEA,OAAQ;MAACC,IAAI,EAAEA,IAAK;MAAAC,QAAA,eAC9DL,IAAA,CAACJ,qBAAqB;QAAAS,QAAA,eACrBL,IAAA,CAACF,oBAAoB;UAAAO,QAAA,eACpBL,IAAA,CAACN,eAAe;YAAAW,QAAA,EAAEA;UAAQ,CAAkB;QAAC,CACxB;MAAC,CACD;IAAC,CACX;EAAC,CACC,CAAC;AAEpB","ignoreList":[]}
@@ -17,48 +17,57 @@ export function ScreenStylesProvider({
17
17
  currentInterpolator
18
18
  } = _useScreenAnimation();
19
19
 
20
- // Track when a gesture is triggered while another screen is closing
21
- const hasTriggeredGestureWhileInFlight = useSharedValue(false);
20
+ /**
21
+ * Tracks when user starts a gesture while another screen is still closing.
22
+ * This persists until both the gesture ends AND the closing animation completes.
23
+ */
24
+ const isGesturingDuringCloseAnimation = useSharedValue(false);
22
25
  const stylesMap = useDerivedValue(() => {
23
26
  "worklet";
24
27
 
25
28
  const props = screenInterpolatorProps.value;
26
- const bounds = createBounds(props);
27
-
28
- // Detect when user starts gesture on current screen while next screen is closing
29
- if (props.current.gesture.isDragging && props.next?.closing) {
30
- hasTriggeredGestureWhileInFlight.value = true;
29
+ const {
30
+ current,
31
+ next,
32
+ progress,
33
+ stackProgress
34
+ } = props;
35
+ const isDragging = current.gesture.isDragging;
36
+ const isNextClosing = !!next?.closing;
37
+ if (isDragging && isNextClosing) {
38
+ isGesturingDuringCloseAnimation.value = true;
31
39
  }
32
-
33
- // Reset the flag when no longer dragging and next screen is done closing
34
- if (!props.current.gesture.isDragging && !props.next?.closing && hasTriggeredGestureWhileInFlight.value) {
35
- hasTriggeredGestureWhileInFlight.value = false;
40
+ if (!isDragging && !isNextClosing) {
41
+ isGesturingDuringCloseAnimation.value = false;
36
42
  }
43
+ const isInGestureMode = isDragging || isGesturingDuringCloseAnimation.value;
44
+ const hasPushedScreenWhileClosing = !isInGestureMode && isNextClosing && stackProgress > progress;
37
45
 
38
- // Use current interpolator when gesture triggered while in-flight,
39
- // otherwise use next interpolator if available (normal case)
40
- const shouldUseCurrentInterpolator = props.current.gesture.isDragging || hasTriggeredGestureWhileInFlight.value;
41
- const interpolator = shouldUseCurrentInterpolator ? currentInterpolator : nextInterpolator ?? currentInterpolator;
46
+ // Select interpolator
47
+ // - If in gesture mode, use current screen's interpolator since we're driving
48
+ // the animation from this screen (dragging back to dismiss next).
49
+ const interpolator = isInGestureMode ? currentInterpolator : nextInterpolator ?? currentInterpolator;
50
+ if (!interpolator) return NO_STYLES;
42
51
 
43
- /**
44
- * Maintainer Note:
45
- * To avoid unnecessary jumps in off directions, we have to snap back to the currents progress.
46
- * While this still introduces a 'snap back' animation, it's still very rare that a user would encounter this unless
47
- * they're spamming things out. Not ideal, but this is the best way to go about dealing with fast rapid gestures.
48
- *
49
- * The alternative was preventing users from actually being able to drag back while animation was still in flight. But there was a significant delay
50
- * when waiting for gestures to register again.
51
- */
52
- const effectiveProps = shouldUseCurrentInterpolator ? {
53
- ...props,
54
- progress: props.current.progress,
55
- next: undefined
56
- } : props;
52
+ // Build effective props with corrected progress
53
+ // - Gesture mode: use current.progress only (avoids jumps during drag)
54
+ // - Pushed while closing: use stackProgress (includes new screen)
55
+ // - Normal: use derived progress as-is
56
+
57
+ let effectiveProgress = progress;
58
+ let effectiveNext = next;
59
+ if (isInGestureMode) {
60
+ effectiveProgress = current.progress;
61
+ effectiveNext = undefined;
62
+ } else if (hasPushedScreenWhileClosing) {
63
+ effectiveProgress = stackProgress;
64
+ }
57
65
  try {
58
- if (!interpolator) return NO_STYLES;
59
66
  return interpolator({
60
- ...effectiveProps,
61
- bounds
67
+ ...props,
68
+ progress: effectiveProgress,
69
+ next: effectiveNext,
70
+ bounds: createBounds(props)
62
71
  });
63
72
  } catch (err) {
64
73
  if (__DEV__) {
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useContext","useMemo","useDerivedValue","useSharedValue","NO_STYLES","_useScreenAnimation","createBounds","jsx","_jsx","ScreenStylesContext","ScreenStylesProvider","children","parentCtx","screenInterpolatorProps","nextInterpolator","currentInterpolator","hasTriggeredGestureWhileInFlight","stylesMap","props","value","bounds","current","gesture","isDragging","next","closing","shouldUseCurrentInterpolator","interpolator","effectiveProps","progress","undefined","err","__DEV__","console","warn","ancestorStylesMaps","Provider","useScreenStyles","ctx","Error"],"sourceRoot":"../../../../../src","sources":["shared/providers/screen/styles.provider.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAC1D,SAECC,eAAe,EACfC,cAAc,QACR,yBAAyB;AAChC,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,mBAAmB,QAAQ,4CAA4C;AAEhF,SAASC,YAAY,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAWlD,MAAMC,mBAAmB,gBAAGV,aAAa,CACxC,IACD,CAAC;AAED,OAAO,SAASW,oBAAoBA,CAAC;EAAEC;AAAgB,CAAC,EAAE;EACzD,MAAMC,SAAS,GAAGZ,UAAU,CAACS,mBAAmB,CAAC;EAEjD,MAAM;IAAEI,uBAAuB;IAAEC,gBAAgB;IAAEC;EAAoB,CAAC,GACvEV,mBAAmB,CAAC,CAAC;;EAEtB;EACA,MAAMW,gCAAgC,GAAGb,cAAc,CAAC,KAAK,CAAC;EAE9D,MAAMc,SAAS,GAAGf,eAAe,CAA8B,MAAM;IACpE,SAAS;;IACT,MAAMgB,KAAK,GAAGL,uBAAuB,CAACM,KAAK;IAC3C,MAAMC,MAAM,GAAGd,YAAY,CAACY,KAAK,CAAC;;IAElC;IACA,IAAIA,KAAK,CAACG,OAAO,CAACC,OAAO,CAACC,UAAU,IAAIL,KAAK,CAACM,IAAI,EAAEC,OAAO,EAAE;MAC5DT,gCAAgC,CAACG,KAAK,GAAG,IAAI;IAC9C;;IAEA;IACA,IACC,CAACD,KAAK,CAACG,OAAO,CAACC,OAAO,CAACC,UAAU,IACjC,CAACL,KAAK,CAACM,IAAI,EAAEC,OAAO,IACpBT,gCAAgC,CAACG,KAAK,EACrC;MACDH,gCAAgC,CAACG,KAAK,GAAG,KAAK;IAC/C;;IAEA;IACA;IACA,MAAMO,4BAA4B,GACjCR,KAAK,CAACG,OAAO,CAACC,OAAO,CAACC,UAAU,IAChCP,gCAAgC,CAACG,KAAK;IAEvC,MAAMQ,YAAY,GAAGD,4BAA4B,GAC9CX,mBAAmB,GAClBD,gBAAgB,IAAIC,mBAAoB;;IAE5C;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACE,MAAMa,cAAc,GAAGF,4BAA4B,GAChD;MAAE,GAAGR,KAAK;MAAEW,QAAQ,EAAEX,KAAK,CAACG,OAAO,CAACQ,QAAQ;MAAEL,IAAI,EAAEM;IAAU,CAAC,GAC/DZ,KAAK;IAER,IAAI;MACH,IAAI,CAACS,YAAY,EAAE,OAAOvB,SAAS;MACnC,OAAOuB,YAAY,CAAC;QACnB,GAAGC,cAAc;QACjBR;MACD,CAAC,CAAC;IACH,CAAC,CAAC,OAAOW,GAAG,EAAE;MACb,IAAIC,OAAO,EAAE;QACZC,OAAO,CAACC,IAAI,CACX,6EAA6E,EAC7EH,GACD,CAAC;MACF;MACA,OAAO3B,SAAS;IACjB;EACD,CAAC,CAAC;EAEF,MAAMe,KAAK,GAAGlB,OAAO,CAAC,MAAM;IAC3B;IACA,MAAMkC,kBAAkB,GAAGvB,SAAS,GACjC,CAACA,SAAS,CAACK,SAAS,EAAE,GAAGL,SAAS,CAACuB,kBAAkB,CAAC,GACtD,EAAE;IAEL,OAAO;MACNlB,SAAS;MACTkB;IACD,CAAC;EACF,CAAC,EAAE,CAAClB,SAAS,EAAEL,SAAS,CAAC,CAAC;EAE1B,oBACCJ,IAAA,CAACC,mBAAmB,CAAC2B,QAAQ;IAACjB,KAAK,EAAEA,KAAM;IAAAR,QAAA,EACzCA;EAAQ,CACoB,CAAC;AAEjC;AAEA,OAAO,SAAS0B,eAAeA,CAAA,EAAG;EACjC,MAAMC,GAAG,GAAGtC,UAAU,CAACS,mBAAmB,CAAC;EAC3C,IAAI,CAAC6B,GAAG,EAAE;IACT,MAAM,IAAIC,KAAK,CACd,4DACD,CAAC;EACF;EACA,OAAOD,GAAG;AACX","ignoreList":[]}
1
+ {"version":3,"names":["createContext","useContext","useMemo","useDerivedValue","useSharedValue","NO_STYLES","_useScreenAnimation","createBounds","jsx","_jsx","ScreenStylesContext","ScreenStylesProvider","children","parentCtx","screenInterpolatorProps","nextInterpolator","currentInterpolator","isGesturingDuringCloseAnimation","stylesMap","props","value","current","next","progress","stackProgress","isDragging","gesture","isNextClosing","closing","isInGestureMode","hasPushedScreenWhileClosing","interpolator","effectiveProgress","effectiveNext","undefined","bounds","err","__DEV__","console","warn","ancestorStylesMaps","Provider","useScreenStyles","ctx","Error"],"sourceRoot":"../../../../../src","sources":["shared/providers/screen/styles.provider.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAC1D,SAECC,eAAe,EACfC,cAAc,QACR,yBAAyB;AAChC,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,mBAAmB,QAAQ,4CAA4C;AAEhF,SAASC,YAAY,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAWlD,MAAMC,mBAAmB,gBAAGV,aAAa,CACxC,IACD,CAAC;AAED,OAAO,SAASW,oBAAoBA,CAAC;EAAEC;AAAgB,CAAC,EAAE;EACzD,MAAMC,SAAS,GAAGZ,UAAU,CAACS,mBAAmB,CAAC;EAEjD,MAAM;IAAEI,uBAAuB;IAAEC,gBAAgB;IAAEC;EAAoB,CAAC,GACvEV,mBAAmB,CAAC,CAAC;;EAEtB;AACD;AACA;AACA;EACC,MAAMW,+BAA+B,GAAGb,cAAc,CAAC,KAAK,CAAC;EAE7D,MAAMc,SAAS,GAAGf,eAAe,CAA8B,MAAM;IACpE,SAAS;;IACT,MAAMgB,KAAK,GAAGL,uBAAuB,CAACM,KAAK;IAC3C,MAAM;MAAEC,OAAO;MAAEC,IAAI;MAAEC,QAAQ;MAAEC;IAAc,CAAC,GAAGL,KAAK;IACxD,MAAMM,UAAU,GAAGJ,OAAO,CAACK,OAAO,CAACD,UAAU;IAC7C,MAAME,aAAa,GAAG,CAAC,CAACL,IAAI,EAAEM,OAAO;IAErC,IAAIH,UAAU,IAAIE,aAAa,EAAE;MAChCV,+BAA+B,CAACG,KAAK,GAAG,IAAI;IAC7C;IAEA,IAAI,CAACK,UAAU,IAAI,CAACE,aAAa,EAAE;MAClCV,+BAA+B,CAACG,KAAK,GAAG,KAAK;IAC9C;IAEA,MAAMS,eAAe,GAAGJ,UAAU,IAAIR,+BAA+B,CAACG,KAAK;IAE3E,MAAMU,2BAA2B,GAChC,CAACD,eAAe,IAAIF,aAAa,IAAIH,aAAa,GAAGD,QAAQ;;IAE9D;IACA;IACA;IACA,MAAMQ,YAAY,GAAGF,eAAe,GACjCb,mBAAmB,GAClBD,gBAAgB,IAAIC,mBAAoB;IAE5C,IAAI,CAACe,YAAY,EAAE,OAAO1B,SAAS;;IAEnC;IACA;IACA;IACA;;IAEA,IAAI2B,iBAAiB,GAAGT,QAAQ;IAChC,IAAIU,aAAa,GAAGX,IAAI;IAExB,IAAIO,eAAe,EAAE;MACpBG,iBAAiB,GAAGX,OAAO,CAACE,QAAQ;MACpCU,aAAa,GAAGC,SAAS;IAC1B,CAAC,MAAM,IAAIJ,2BAA2B,EAAE;MACvCE,iBAAiB,GAAGR,aAAa;IAClC;IAEA,IAAI;MACH,OAAOO,YAAY,CAAC;QACnB,GAAGZ,KAAK;QACRI,QAAQ,EAAES,iBAAiB;QAC3BV,IAAI,EAAEW,aAAa;QACnBE,MAAM,EAAE5B,YAAY,CAACY,KAAK;MAC3B,CAAC,CAAC;IACH,CAAC,CAAC,OAAOiB,GAAG,EAAE;MACb,IAAIC,OAAO,EAAE;QACZC,OAAO,CAACC,IAAI,CACX,6EAA6E,EAC7EH,GACD,CAAC;MACF;MACA,OAAO/B,SAAS;IACjB;EACD,CAAC,CAAC;EAEF,MAAMe,KAAK,GAAGlB,OAAO,CAAC,MAAM;IAC3B;IACA,MAAMsC,kBAAkB,GAAG3B,SAAS,GACjC,CAACA,SAAS,CAACK,SAAS,EAAE,GAAGL,SAAS,CAAC2B,kBAAkB,CAAC,GACtD,EAAE;IAEL,OAAO;MACNtB,SAAS;MACTsB;IACD,CAAC;EACF,CAAC,EAAE,CAACtB,SAAS,EAAEL,SAAS,CAAC,CAAC;EAE1B,oBACCJ,IAAA,CAACC,mBAAmB,CAAC+B,QAAQ;IAACrB,KAAK,EAAEA,KAAM;IAAAR,QAAA,EACzCA;EAAQ,CACoB,CAAC;AAEjC;AAEA,OAAO,SAAS8B,eAAeA,CAAA,EAAG;EACjC,MAAMC,GAAG,GAAG1C,UAAU,CAACS,mBAAmB,CAAC;EAC3C,IAAI,CAACiC,GAAG,EAAE;IACT,MAAM,IAAIC,KAAK,CACd,4DACD,CAAC;EACF;EACA,OAAOD,GAAG;AACX","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  import { runOnJS } from "react-native-reanimated";
4
4
  import { FALSE, TRUE } from "../../constants";
5
5
  import { animate } from "./animate";
6
- export const startScreenTransition = ({
6
+ export const animateToProgress = ({
7
7
  target,
8
8
  spec,
9
9
  onAnimationFinish,
@@ -12,8 +12,12 @@ export const startScreenTransition = ({
12
12
  }) => {
13
13
  "worklet";
14
14
 
15
- const value = target === "open" ? 1 : 0;
16
- const config = target === "open" ? spec?.open : spec?.close;
15
+ // Determine target value and direction
16
+ const isClosing = target === "close" || typeof target === "number" && target === 0;
17
+ const value = typeof target === "number" ? target : target === "open" ? 1 : 0;
18
+
19
+ // Select spec based on direction (closing uses close spec, otherwise open)
20
+ const config = isClosing ? spec?.close : spec?.open;
17
21
  const isSpringConfig = !!config && !("duration" in config) && !("easing" in config);
18
22
  const effectiveConfig = isSpringConfig && typeof initialVelocity === "number" ? {
19
23
  ...config,
@@ -25,7 +29,7 @@ export const startScreenTransition = ({
25
29
  closing,
26
30
  entering
27
31
  } = animations;
28
- if (target === "close") {
32
+ if (isClosing) {
29
33
  closing.set(TRUE);
30
34
  entering.set(FALSE);
31
35
  } else {
@@ -50,4 +54,4 @@ export const startScreenTransition = ({
50
54
  animating.set(FALSE);
51
55
  }));
52
56
  };
53
- //# sourceMappingURL=start-screen-transition.js.map
57
+ //# sourceMappingURL=animate-to-progress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["runOnJS","FALSE","TRUE","animate","animateToProgress","target","spec","onAnimationFinish","animations","initialVelocity","isClosing","value","config","close","open","isSpringConfig","effectiveConfig","velocity","progress","animating","closing","entering","set","finished"],"sourceRoot":"../../../../../src","sources":["shared/utils/animation/animate-to-progress.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,yBAAyB;AACjD,SAASC,KAAK,EAAEC,IAAI,QAAQ,iBAAiB;AAG7C,SAASC,OAAO,QAAQ,WAAW;AAiBnC,OAAO,MAAMC,iBAAiB,GAAGA,CAAC;EACjCC,MAAM;EACNC,IAAI;EACJC,iBAAiB;EACjBC,UAAU;EACVC;AACuB,CAAC,KAAK;EAC7B,SAAS;;EAET;EACA,MAAMC,SAAS,GACdL,MAAM,KAAK,OAAO,IAAK,OAAOA,MAAM,KAAK,QAAQ,IAAIA,MAAM,KAAK,CAAE;EACnE,MAAMM,KAAK,GAAG,OAAON,MAAM,KAAK,QAAQ,GAAGA,MAAM,GAAGA,MAAM,KAAK,MAAM,GAAG,CAAC,GAAG,CAAC;;EAE7E;EACA,MAAMO,MAAM,GAAGF,SAAS,GAAGJ,IAAI,EAAEO,KAAK,GAAGP,IAAI,EAAEQ,IAAI;EAEnD,MAAMC,cAAc,GACnB,CAAC,CAACH,MAAM,IAAI,EAAE,UAAU,IAAIA,MAAM,CAAC,IAAI,EAAE,QAAQ,IAAIA,MAAM,CAAC;EAE7D,MAAMI,eAAe,GACpBD,cAAc,IAAI,OAAON,eAAe,KAAK,QAAQ,GAClD;IAAE,GAAGG,MAAM;IAAEK,QAAQ,EAAER;EAAgB,CAAC,GACxCG,MAAM;EAEV,MAAM;IAAEM,QAAQ;IAAEC,SAAS;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGb,UAAU;EAE7D,IAAIE,SAAS,EAAE;IACdU,OAAO,CAACE,GAAG,CAACpB,IAAI,CAAC;IACjBmB,QAAQ,CAACC,GAAG,CAACrB,KAAK,CAAC;EACpB,CAAC,MAAM;IACNoB,QAAQ,CAACC,GAAG,CAACpB,IAAI,CAAC;EACnB;EAEA,IAAI,CAACU,MAAM,EAAE;IACZO,SAAS,CAACG,GAAG,CAACrB,KAAK,CAAC;IACpBiB,QAAQ,CAACI,GAAG,CAACX,KAAK,CAAC;IAEnB,IAAIJ,iBAAiB,EAAE;MACtBP,OAAO,CAACO,iBAAiB,CAAC,CAAC,IAAI,CAAC;IACjC;IACA;EACD;EAEAY,SAAS,CAACG,GAAG,CAACpB,IAAI,CAAC,CAAC,CAAC;EACrBgB,QAAQ,CAACI,GAAG,CACXnB,OAAO,CAACQ,KAAK,EAAEK,eAAe,EAAGO,QAAQ,IAAK;IAC7C,SAAS;;IACT,IAAI,CAACA,QAAQ,EAAE;IAEf,IAAIhB,iBAAiB,EAAE;MACtBP,OAAO,CAACO,iBAAiB,CAAC,CAACgB,QAAQ,CAAC;IACrC;IAEAJ,SAAS,CAACG,GAAG,CAACrB,KAAK,CAAC;EACrB,CAAC,CACF,CAAC;AACF,CAAC","ignoreList":[]}
@@ -223,4 +223,74 @@ export const applyOffsetRules = ({
223
223
  isSwipingLeft
224
224
  };
225
225
  };
226
+ /**
227
+ * Checks if a gesture should activate based on scroll position.
228
+ * Returns the direction to activate for, or null if activation should not occur.
229
+ */
230
+ export function checkScrollAwareActivation({
231
+ swipeInfo,
232
+ directions,
233
+ scrollX,
234
+ scrollY,
235
+ maxScrollX,
236
+ maxScrollY,
237
+ hasSnapPoints,
238
+ canExpandMore
239
+ }) {
240
+ "worklet";
241
+
242
+ const {
243
+ isSwipingDown,
244
+ isSwipingUp,
245
+ isSwipingRight,
246
+ isSwipingLeft
247
+ } = swipeInfo;
248
+ if (directions.vertical && isSwipingDown && scrollY <= 0) {
249
+ return {
250
+ shouldActivate: true,
251
+ direction: "vertical"
252
+ };
253
+ }
254
+ if (directions.horizontal && isSwipingRight && scrollX <= 0) {
255
+ return {
256
+ shouldActivate: true,
257
+ direction: "horizontal"
258
+ };
259
+ }
260
+ if (directions.verticalInverted && isSwipingUp && scrollY >= maxScrollY) {
261
+ return {
262
+ shouldActivate: true,
263
+ direction: "vertical-inverted"
264
+ };
265
+ }
266
+ if (directions.horizontalInverted && isSwipingLeft && scrollX >= maxScrollX) {
267
+ return {
268
+ shouldActivate: true,
269
+ direction: "horizontal-inverted"
270
+ };
271
+ }
272
+ if (hasSnapPoints && canExpandMore) {
273
+ // Vertical sheet: swipe up at scroll top → expand
274
+ const enabledYAxis = directions.vertical || directions.verticalInverted;
275
+ const enabledXAxis = directions.horizontal || directions.horizontalInverted;
276
+ if (enabledYAxis && isSwipingUp && scrollY <= 0) {
277
+ return {
278
+ shouldActivate: true,
279
+ direction: "vertical-inverted"
280
+ };
281
+ }
282
+
283
+ // Horizontal sheet: swipe left at scroll left → expand
284
+ if (enabledXAxis && isSwipingLeft && scrollX <= 0) {
285
+ return {
286
+ shouldActivate: true,
287
+ direction: "horizontal-inverted"
288
+ };
289
+ }
290
+ }
291
+ return {
292
+ shouldActivate: false,
293
+ direction: null
294
+ };
295
+ }
226
296
  //# sourceMappingURL=check-gesture-activation.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GestureOffsetState","GESTURE_ACTIVATION_THRESHOLD_X","GESTURE_ACTIVATION_THRESHOLD_Y","GESTURE_FAIL_TOLERANCE_X","GESTURE_FAIL_TOLERANCE_Y","DEFAULT_EDGE_DISTANCE_HORIZONTAL","DEFAULT_EDGE_DISTANCE_VERTICAL","DEFAULT_ACTIVATION_AREA","normalizeSides","area","mode","left","right","top","bottom","s","computeEdgeConstraints","initialTouch","dimensions","sides","responseDistance","xDist","yDist","horizontalRight","x","horizontalLeft","width","verticalDown","y","verticalUp","height","calculateSwipeDirs","deltaX","deltaY","isVerticalSwipe","Math","abs","isHorizontalSwipe","isSwipingDown","isSwipingUp","isSwipingRight","isSwipingLeft","shouldActivateOrFail","params","hasHorizontal","hasVertical","allowedRight","allowedLeft","allowedUp","allowedDown","horizontalGateRight","horizontalGateLeft","verticalGateUp","verticalGateDown","shouldActivate","shouldFail","hasEnoughHorizontalMovement","hasAcceptableVerticalDeviation","rightOk","leftOk","hasEnoughVerticalMovement","hasAcceptableHorizontalDeviation","upOk","downOk","applyOffsetRules","touch","directions","manager","gestureOffsetState","activationArea","vertical","verticalInverted","horizontal","horizontalInverted","value","PENDING","PASSED","FAILED","fail"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/check-gesture-activation.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["GestureOffsetState","GESTURE_ACTIVATION_THRESHOLD_X","GESTURE_ACTIVATION_THRESHOLD_Y","GESTURE_FAIL_TOLERANCE_X","GESTURE_FAIL_TOLERANCE_Y","DEFAULT_EDGE_DISTANCE_HORIZONTAL","DEFAULT_EDGE_DISTANCE_VERTICAL","DEFAULT_ACTIVATION_AREA","normalizeSides","area","mode","left","right","top","bottom","s","computeEdgeConstraints","initialTouch","dimensions","sides","responseDistance","xDist","yDist","horizontalRight","x","horizontalLeft","width","verticalDown","y","verticalUp","height","calculateSwipeDirs","deltaX","deltaY","isVerticalSwipe","Math","abs","isHorizontalSwipe","isSwipingDown","isSwipingUp","isSwipingRight","isSwipingLeft","shouldActivateOrFail","params","hasHorizontal","hasVertical","allowedRight","allowedLeft","allowedUp","allowedDown","horizontalGateRight","horizontalGateLeft","verticalGateUp","verticalGateDown","shouldActivate","shouldFail","hasEnoughHorizontalMovement","hasAcceptableVerticalDeviation","rightOk","leftOk","hasEnoughVerticalMovement","hasAcceptableHorizontalDeviation","upOk","downOk","applyOffsetRules","touch","directions","manager","gestureOffsetState","activationArea","vertical","verticalInverted","horizontal","horizontalInverted","value","PENDING","PASSED","FAILED","fail","checkScrollAwareActivation","swipeInfo","scrollX","scrollY","maxScrollX","maxScrollY","hasSnapPoints","canExpandMore","direction","enabledYAxis","enabledXAxis"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/check-gesture-activation.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Determines which snap point to animate to based on current progress and velocity.
5
+ *
6
+ * Logic: Snap to whichever point is closest, factoring in velocity.
7
+ * The "zones" between snap points are split at midpoints.
8
+ * Velocity can push you into the next zone.
9
+ */
10
+ export function determineSnapTarget({
11
+ currentProgress,
12
+ snapPoints,
13
+ velocity,
14
+ dimension,
15
+ velocityFactor = 0.15,
16
+ canDismiss = true
17
+ }) {
18
+ "worklet";
19
+
20
+ // Convert velocity to progress units (positive = toward dismiss = decreasing progress)
21
+ const velocityInProgress = velocity / dimension * velocityFactor;
22
+
23
+ // Project where we'd end up with velocity
24
+ const projectedProgress = currentProgress - velocityInProgress;
25
+
26
+ // Build all possible targets: dismiss (0) only if allowed, plus all snap points
27
+ const allTargets = canDismiss ? [0, ...snapPoints].sort((a, b) => a - b) : [...snapPoints].sort((a, b) => a - b);
28
+
29
+ // Find the target whose zone contains the projected progress
30
+ // Zones are split at midpoints between adjacent targets
31
+ let targetProgress = allTargets[0];
32
+ for (let i = 0; i < allTargets.length; i++) {
33
+ const current = allTargets[i];
34
+ const next = allTargets[i + 1];
35
+ if (next === undefined) {
36
+ // Last target - if we're above the midpoint to here, snap to it
37
+ targetProgress = current;
38
+ break;
39
+ }
40
+ const midpoint = (current + next) / 2;
41
+ if (projectedProgress < midpoint) {
42
+ targetProgress = current;
43
+ break;
44
+ }
45
+ targetProgress = next;
46
+ }
47
+ return {
48
+ targetProgress,
49
+ shouldDismiss: targetProgress === 0
50
+ };
51
+ }
52
+ //# sourceMappingURL=determine-snap-target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["determineSnapTarget","currentProgress","snapPoints","velocity","dimension","velocityFactor","canDismiss","velocityInProgress","projectedProgress","allTargets","sort","a","b","targetProgress","i","length","current","next","undefined","midpoint","shouldDismiss"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/determine-snap-target.ts"],"mappings":";;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,mBAAmBA,CAAC;EACnCC,eAAe;EACfC,UAAU;EACVC,QAAQ;EACRC,SAAS;EACTC,cAAc,GAAG,IAAI;EACrBC,UAAU,GAAG;AACY,CAAC,EAA6B;EACvD,SAAS;;EAET;EACA,MAAMC,kBAAkB,GAAIJ,QAAQ,GAAGC,SAAS,GAAIC,cAAc;;EAElE;EACA,MAAMG,iBAAiB,GAAGP,eAAe,GAAGM,kBAAkB;;EAE9D;EACA,MAAME,UAAU,GAAGH,UAAU,GAC1B,CAAC,CAAC,EAAE,GAAGJ,UAAU,CAAC,CAACQ,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC,GACxC,CAAC,GAAGV,UAAU,CAAC,CAACQ,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC;;EAExC;EACA;EACA,IAAIC,cAAc,GAAGJ,UAAU,CAAC,CAAC,CAAC;EAElC,KAAK,IAAIK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGL,UAAU,CAACM,MAAM,EAAED,CAAC,EAAE,EAAE;IAC3C,MAAME,OAAO,GAAGP,UAAU,CAACK,CAAC,CAAC;IAC7B,MAAMG,IAAI,GAAGR,UAAU,CAACK,CAAC,GAAG,CAAC,CAAC;IAE9B,IAAIG,IAAI,KAAKC,SAAS,EAAE;MACvB;MACAL,cAAc,GAAGG,OAAO;MACxB;IACD;IAEA,MAAMG,QAAQ,GAAG,CAACH,OAAO,GAAGC,IAAI,IAAI,CAAC;IAErC,IAAIT,iBAAiB,GAAGW,QAAQ,EAAE;MACjCN,cAAc,GAAGG,OAAO;MACxB;IACD;IAEAH,cAAc,GAAGI,IAAI;EACtB;EAEA,OAAO;IACNJ,cAAc;IACdO,aAAa,EAAEP,cAAc,KAAK;EACnC,CAAC;AACF","ignoreList":[]}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ export const validateSnapPoints = ({
4
+ snapPoints,
5
+ canDismiss
6
+ }) => {
7
+ if (!snapPoints) {
8
+ return {
9
+ hasSnapPoints: false,
10
+ snapPoints: [],
11
+ minSnapPoint: -1,
12
+ maxSnapPoint: -1
13
+ };
14
+ }
15
+ const sortedSnaps = snapPoints.slice().sort((a, b) => a - b);
16
+ // Clamp to snap point bounds (dismiss at 0 only if allowed)
17
+ const minProgress = canDismiss ? 0 : sortedSnaps[0];
18
+ const maxProgress = sortedSnaps[sortedSnaps.length - 1];
19
+ return {
20
+ hasSnapPoints: true,
21
+ snapPoints: sortedSnaps,
22
+ minSnapPoint: minProgress,
23
+ maxSnapPoint: maxProgress
24
+ };
25
+ };
26
+ //# sourceMappingURL=validate-snap-points.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["validateSnapPoints","snapPoints","canDismiss","hasSnapPoints","minSnapPoint","maxSnapPoint","sortedSnaps","slice","sort","a","b","minProgress","maxProgress","length"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/validate-snap-points.ts"],"mappings":";;AAYA,OAAO,MAAMA,kBAAkB,GAAGA,CAAC;EAClCC,UAAU;EACVC;AAC0B,CAAC,KAA+B;EAC1D,IAAI,CAACD,UAAU,EAAE;IAChB,OAAO;MACNE,aAAa,EAAE,KAAK;MACpBF,UAAU,EAAE,EAAE;MACdG,YAAY,EAAE,CAAC,CAAC;MAChBC,YAAY,EAAE,CAAC;IAChB,CAAC;EACF;EAEA,MAAMC,WAAW,GAAGL,UAAU,CAACM,KAAK,CAAC,CAAC,CAACC,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC;EAC5D;EACA,MAAMC,WAAW,GAAGT,UAAU,GAAG,CAAC,GAAGI,WAAW,CAAC,CAAC,CAAC;EACnD,MAAMM,WAAW,GAAGN,WAAW,CAACA,WAAW,CAACO,MAAM,GAAG,CAAC,CAAC;EAEvD,OAAO;IACNV,aAAa,EAAE,IAAI;IACnBF,UAAU,EAAEK,WAAW;IACvBF,YAAY,EAAEO,WAAW;IACzBN,YAAY,EAAEO;EACf,CAAC;AACF,CAAC","ignoreList":[]}
@@ -14,6 +14,16 @@ const normalize = (velocityPixelsPerSecond, screenSize) => {
14
14
  return clamp(velocityPixelsPerSecond / Math.max(1, screenSize), -MAX_VELOCITY_MAGNITUDE, MAX_VELOCITY_MAGNITUDE);
15
15
  };
16
16
 
17
+ /**
18
+ * Normalizes translation to -1...1 range (for gesture tracking).
19
+ * Used to convert pixel translation to normalized gesture values.
20
+ */
21
+ const normalizeTranslation = (translation, dimension) => {
22
+ "worklet";
23
+
24
+ return clamp(translation / Math.max(1, dimension), -1, 1);
25
+ };
26
+
17
27
  /**
18
28
  * Calculates a normalized velocity that moves the current value toward zero.
19
29
  * Used for spring-back animations when dismissing gestures.
@@ -78,6 +88,7 @@ const shouldPassDismissalThreshold = (translationPixels, velocityPixelsPerSecond
78
88
  };
79
89
  export const velocity = {
80
90
  normalize,
91
+ normalizeTranslation,
81
92
  calculateRestoreVelocity,
82
93
  calculateProgressVelocity,
83
94
  shouldPassDismissalThreshold
@@ -1 +1 @@
1
- {"version":3,"names":["clamp","MAX_VELOCITY_MAGNITUDE","NEAR_ZERO_THRESHOLD","normalize","velocityPixelsPerSecond","screenSize","Math","max","calculateRestoreVelocity","currentValueNormalized","baseVelocityNormalized","abs","directionTowardZero","sign","clampedVelocity","min","calculateProgressVelocity","animations","shouldDismiss","event","dimensions","directions","currentProgress","progress","value","targetProgress","progressDelta","progressDirection","normalizedVelocityX","velocityX","width","normalizedVelocityY","velocityY","height","normalizedTranslationX","translationX","normalizedTranslationY","translationY","supportsHorizontalGestures","horizontal","horizontalInverted","supportsVerticalGestures","vertical","verticalInverted","progressVelocityMagnitude","shouldPassDismissalThreshold","translationPixels","velocityWeight","normalizedTranslation","normalizedVelocity","projectedNormalizedPosition","exceedsThreshold","hasMovement","velocity"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/velocity.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clamp","MAX_VELOCITY_MAGNITUDE","NEAR_ZERO_THRESHOLD","normalize","velocityPixelsPerSecond","screenSize","Math","max","normalizeTranslation","translation","dimension","calculateRestoreVelocity","currentValueNormalized","baseVelocityNormalized","abs","directionTowardZero","sign","clampedVelocity","min","calculateProgressVelocity","animations","shouldDismiss","event","dimensions","directions","currentProgress","progress","value","targetProgress","progressDelta","progressDirection","normalizedVelocityX","velocityX","width","normalizedVelocityY","velocityY","height","normalizedTranslationX","translationX","normalizedTranslationY","translationY","supportsHorizontalGestures","horizontal","horizontalInverted","supportsVerticalGestures","vertical","verticalInverted","progressVelocityMagnitude","shouldPassDismissalThreshold","translationPixels","velocityWeight","normalizedTranslation","normalizedVelocity","projectedNormalizedPosition","exceedsThreshold","hasMovement","velocity"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/velocity.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"create-transition-aware-component.d.ts","sourceRoot":"","sources":["../../../../src/shared/components/create-transition-aware-component.tsx"],"names":[],"mappings":"AAAA,wHAAwH;AACxH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,OAAO,CAAC;AAU7D,UAAU,qCAAqC;IAC9C,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,8BAA8B,CAAC,CAAC,SAAS,MAAM,EAC9D,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EACzB,OAAO,GAAE,qCAA0C;;;;;;;;;;;;;sEAmFnD"}
1
+ {"version":3,"file":"create-transition-aware-component.d.ts","sourceRoot":"","sources":["../../../../src/shared/components/create-transition-aware-component.tsx"],"names":[],"mappings":"AAAA,wHAAwH;AACxH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,OAAO,CAAC;AAU7D,UAAU,qCAAqC;IAC9C,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,8BAA8B,CAAC,CAAC,SAAS,MAAM,EAC9D,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EACzB,OAAO,GAAE,qCAA0C;;;;;;;;;;;;;sEA6FnD"}
@@ -0,0 +1,6 @@
1
+ type Props = {
2
+ children: React.ReactNode;
3
+ };
4
+ export declare const ScreenContainer: import("react").MemoExoticComponent<({ children }: Props) => import("react/jsx-runtime").JSX.Element>;
5
+ export {};
6
+ //# sourceMappingURL=screen-container.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screen-container.d.ts","sourceRoot":"","sources":["../../../../src/shared/components/screen-container.tsx"],"names":[],"mappings":"AASA,KAAK,KAAK,GAAG;IACZ,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,eAAe,qDAAuB,KAAK,6CA0CtD,CAAC"}
@@ -1,3 +1,4 @@
1
1
  import type { WithSpringConfig } from "react-native-reanimated";
2
2
  export declare const DefaultSpec: WithSpringConfig;
3
+ export declare const DefaultSnapSpec: WithSpringConfig;
3
4
  //# sourceMappingURL=specs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"specs.d.ts","sourceRoot":"","sources":["../../../../src/shared/configs/specs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,eAAO,MAAM,WAAW,EAAE,gBAOzB,CAAC"}
1
+ {"version":3,"file":"specs.d.ts","sourceRoot":"","sources":["../../../../src/shared/configs/specs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,eAAO,MAAM,WAAW,EAAE,gBAOzB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,gBAI7B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { type GestureType } from "react-native-gesture-handler";
2
- import { type SharedValue } from "react-native-reanimated";
2
+ import type { SharedValue } from "react-native-reanimated";
3
3
  import type { GestureContextType, ScrollConfig } from "../../providers/gestures.provider";
4
4
  import { type GestureStoreMap } from "../../stores/gesture.store";
5
5
  interface BuildGesturesHookProps {
@@ -1 +1 @@
1
- {"version":3,"file":"use-build-gestures.d.ts","sourceRoot":"","sources":["../../../../../src/shared/hooks/gestures/use-build-gestures.tsx"],"names":[],"mappings":"AAGA,OAAO,EAIN,KAAK,WAAW,EAGhB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,yBAAyB,CAAC;AAO3E,OAAO,KAAK,EACX,kBAAkB,EAClB,YAAY,EACZ,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAgB,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAahF,UAAU,sBAAsB;IAC/B,YAAY,EAAE,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC/C,eAAe,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;CAC5C;AAED,eAAO,MAAM,gBAAgB,GAAI,oCAG9B,sBAAsB,KAAG;IAC3B,UAAU,EAAE,WAAW,CAAC;IACxB,aAAa,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IAC/D,aAAa,EAAE,WAAW,CAAC;IAC3B,sBAAsB,EAAE,eAAe,CAAC;CAsVxC,CAAC"}
1
+ {"version":3,"file":"use-build-gestures.d.ts","sourceRoot":"","sources":["../../../../../src/shared/hooks/gestures/use-build-gestures.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAW,KAAK,WAAW,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAO3D,OAAO,KAAK,EACX,kBAAkB,EAClB,YAAY,EACZ,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAgB,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAGhF,UAAU,sBAAsB;IAC/B,YAAY,EAAE,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC/C,eAAe,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;CAC5C;AAED,eAAO,MAAM,gBAAgB,GAAI,oCAG9B,sBAAsB,KAAG;IAC3B,UAAU,EAAE,WAAW,CAAC;IACxB,aAAa,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IAC/D,aAAa,EAAE,WAAW,CAAC;IAC3B,sBAAsB,EAAE,eAAe,CAAC;CA4IxC,CAAC"}
@@ -0,0 +1,34 @@
1
+ import type { GestureStateChangeEvent, GestureTouchEvent, GestureUpdateEvent, PanGestureHandlerEventPayload } from "react-native-gesture-handler";
2
+ import type { GestureStateManagerType } from "react-native-gesture-handler/lib/typescript/handlers/gestures/gestureStateManager";
3
+ import { type SharedValue } from "react-native-reanimated";
4
+ import type { ScrollConfig } from "../../providers/gestures.provider";
5
+ import type { AnimationStoreMap } from "../../stores/animation.store";
6
+ import type { GestureStoreMap } from "../../stores/gesture.store";
7
+ import type { TransitionSpec } from "../../types/animation.types";
8
+ import { type GestureActivationArea, type GestureDirection } from "../../types/gesture.types";
9
+ import type { Layout } from "../../types/screen.types";
10
+ interface UseScreenGestureHandlersProps {
11
+ dimensions: Layout;
12
+ animations: AnimationStoreMap;
13
+ gestureAnimationValues: GestureStoreMap;
14
+ gestureDirection: GestureDirection | GestureDirection[];
15
+ gestureDrivesProgress: boolean;
16
+ gestureVelocityImpact: number;
17
+ scrollConfig: SharedValue<ScrollConfig | null>;
18
+ gestureActivationArea: GestureActivationArea;
19
+ gestureResponseDistance?: number;
20
+ ancestorIsDismissing?: SharedValue<number> | null;
21
+ snapPoints?: number[];
22
+ canDismiss: boolean;
23
+ transitionSpec?: TransitionSpec;
24
+ handleDismiss: () => void;
25
+ }
26
+ export declare const useScreenGestureHandlers: ({ dimensions, animations, gestureAnimationValues, gestureDirection, gestureDrivesProgress, gestureVelocityImpact, scrollConfig, gestureActivationArea, gestureResponseDistance, ancestorIsDismissing, snapPoints: rawSnapPoints, canDismiss, transitionSpec, handleDismiss, }: UseScreenGestureHandlersProps) => {
27
+ onTouchesDown: (e: GestureTouchEvent) => void;
28
+ onTouchesMove: (e: GestureTouchEvent, manager: GestureStateManagerType) => void;
29
+ onStart: () => void;
30
+ onUpdate: (event: GestureUpdateEvent<PanGestureHandlerEventPayload>) => void;
31
+ onEnd: (event: GestureStateChangeEvent<PanGestureHandlerEventPayload>) => void;
32
+ };
33
+ export {};
34
+ //# sourceMappingURL=use-screen-gesture-handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-screen-gesture-handlers.d.ts","sourceRoot":"","sources":["../../../../../src/shared/hooks/gestures/use-screen-gesture-handlers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,EAClB,6BAA6B,EAC7B,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mFAAmF,CAAC;AACjI,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,yBAAyB,CAAC;AAG3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EACN,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EAErB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAcvD,UAAU,6BAA6B;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,sBAAsB,EAAE,eAAe,CAAC;IACxC,gBAAgB,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,CAAC;IACxD,qBAAqB,EAAE,OAAO,CAAC;IAC/B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,YAAY,EAAE,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC/C,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,oBAAoB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAClD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,aAAa,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,eAAO,MAAM,wBAAwB,GAAI,+QAetC,6BAA6B;;;;;;CAiX/B,CAAC"}