react-native-screen-transitions 3.0.0-rc.4 → 3.0.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 (121) hide show
  1. package/README.md +228 -96
  2. package/lib/commonjs/blank-stack/components/overlay.js +1 -1
  3. package/lib/commonjs/blank-stack/components/overlay.js.map +1 -1
  4. package/lib/commonjs/blank-stack/components/screens.js +6 -2
  5. package/lib/commonjs/blank-stack/components/screens.js.map +1 -1
  6. package/lib/commonjs/blank-stack/components/stack-view.js +2 -5
  7. package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -1
  8. package/lib/commonjs/blank-stack/utils/with-stack-navigation/index.js +11 -10
  9. package/lib/commonjs/blank-stack/utils/with-stack-navigation/index.js.map +1 -1
  10. package/lib/commonjs/shared/components/controllers/native-stack-lifecycle.js +2 -0
  11. package/lib/commonjs/shared/components/controllers/native-stack-lifecycle.js.map +1 -1
  12. package/lib/commonjs/shared/components/create-transition-aware-component.js +2 -0
  13. package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
  14. package/lib/commonjs/shared/hooks/animation/use-screen-animation.js +8 -4
  15. package/lib/commonjs/shared/hooks/animation/use-screen-animation.js.map +1 -1
  16. package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js +29 -5
  17. package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js.map +1 -1
  18. package/lib/commonjs/shared/hooks/gestures/use-screen-gesture.js +26 -0
  19. package/lib/commonjs/shared/hooks/gestures/use-screen-gesture.js.map +1 -0
  20. package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.js +32 -60
  21. package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.js.map +1 -1
  22. package/lib/commonjs/shared/index.js +7 -0
  23. package/lib/commonjs/shared/index.js.map +1 -1
  24. package/lib/commonjs/shared/providers/gestures.provider.js +21 -42
  25. package/lib/commonjs/shared/providers/gestures.provider.js.map +1 -1
  26. package/lib/commonjs/shared/utils/bounds/helpers/interpolate-style.js +30 -0
  27. package/lib/commonjs/shared/utils/bounds/helpers/interpolate-style.js.map +1 -0
  28. package/lib/commonjs/shared/utils/bounds/index.js +29 -1
  29. package/lib/commonjs/shared/utils/bounds/index.js.map +1 -1
  30. package/lib/commonjs/shared/utils/create-provider.js +16 -0
  31. package/lib/commonjs/shared/utils/create-provider.js.map +1 -1
  32. package/lib/commonjs/shared/utils/gesture/check-gesture-activation.js +4 -0
  33. package/lib/commonjs/shared/utils/gesture/check-gesture-activation.js.map +1 -1
  34. package/lib/module/blank-stack/components/overlay.js +1 -1
  35. package/lib/module/blank-stack/components/overlay.js.map +1 -1
  36. package/lib/module/blank-stack/components/screens.js +6 -2
  37. package/lib/module/blank-stack/components/screens.js.map +1 -1
  38. package/lib/module/blank-stack/components/stack-view.js +2 -5
  39. package/lib/module/blank-stack/components/stack-view.js.map +1 -1
  40. package/lib/module/blank-stack/utils/with-stack-navigation/index.js +11 -10
  41. package/lib/module/blank-stack/utils/with-stack-navigation/index.js.map +1 -1
  42. package/lib/module/shared/components/controllers/native-stack-lifecycle.js +1 -0
  43. package/lib/module/shared/components/controllers/native-stack-lifecycle.js.map +1 -1
  44. package/lib/module/shared/components/create-transition-aware-component.js +2 -0
  45. package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
  46. package/lib/module/shared/hooks/animation/use-screen-animation.js +8 -4
  47. package/lib/module/shared/hooks/animation/use-screen-animation.js.map +1 -1
  48. package/lib/module/shared/hooks/gestures/use-build-gestures.js +30 -6
  49. package/lib/module/shared/hooks/gestures/use-build-gestures.js.map +1 -1
  50. package/lib/module/shared/hooks/gestures/use-screen-gesture.js +22 -0
  51. package/lib/module/shared/hooks/gestures/use-screen-gesture.js.map +1 -0
  52. package/lib/module/shared/hooks/gestures/use-scroll-registry.js +32 -60
  53. package/lib/module/shared/hooks/gestures/use-scroll-registry.js.map +1 -1
  54. package/lib/module/shared/index.js +1 -0
  55. package/lib/module/shared/index.js.map +1 -1
  56. package/lib/module/shared/providers/gestures.provider.js +19 -41
  57. package/lib/module/shared/providers/gestures.provider.js.map +1 -1
  58. package/lib/module/shared/utils/bounds/helpers/interpolate-style.js +26 -0
  59. package/lib/module/shared/utils/bounds/helpers/interpolate-style.js.map +1 -0
  60. package/lib/module/shared/utils/bounds/index.js +29 -1
  61. package/lib/module/shared/utils/bounds/index.js.map +1 -1
  62. package/lib/module/shared/utils/create-provider.js +17 -1
  63. package/lib/module/shared/utils/create-provider.js.map +1 -1
  64. package/lib/module/shared/utils/gesture/check-gesture-activation.js +4 -4
  65. package/lib/module/shared/utils/gesture/check-gesture-activation.js.map +1 -1
  66. package/lib/typescript/blank-stack/components/screens.d.ts +1 -3
  67. package/lib/typescript/blank-stack/components/screens.d.ts.map +1 -1
  68. package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
  69. package/lib/typescript/blank-stack/types.d.ts +2 -14
  70. package/lib/typescript/blank-stack/types.d.ts.map +1 -1
  71. package/lib/typescript/blank-stack/utils/with-stack-navigation/index.d.ts.map +1 -1
  72. package/lib/typescript/shared/components/controllers/native-stack-lifecycle.d.ts.map +1 -1
  73. package/lib/typescript/shared/components/create-transition-aware-component.d.ts +1 -0
  74. package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
  75. package/lib/typescript/shared/hooks/animation/use-screen-animation.d.ts.map +1 -1
  76. package/lib/typescript/shared/hooks/gestures/use-build-gestures.d.ts +1 -0
  77. package/lib/typescript/shared/hooks/gestures/use-build-gestures.d.ts.map +1 -1
  78. package/lib/typescript/shared/hooks/gestures/use-screen-gesture.d.ts +15 -0
  79. package/lib/typescript/shared/hooks/gestures/use-screen-gesture.d.ts.map +1 -0
  80. package/lib/typescript/shared/hooks/gestures/use-scroll-registry.d.ts +1 -0
  81. package/lib/typescript/shared/hooks/gestures/use-scroll-registry.d.ts.map +1 -1
  82. package/lib/typescript/shared/index.d.ts +4 -2
  83. package/lib/typescript/shared/index.d.ts.map +1 -1
  84. package/lib/typescript/shared/providers/gestures.provider.d.ts +6 -13
  85. package/lib/typescript/shared/providers/gestures.provider.d.ts.map +1 -1
  86. package/lib/typescript/shared/types/animation.types.d.ts +44 -0
  87. package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
  88. package/lib/typescript/shared/types/bounds.types.d.ts +6 -0
  89. package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
  90. package/lib/typescript/shared/types/core.types.d.ts +7 -0
  91. package/lib/typescript/shared/types/core.types.d.ts.map +1 -1
  92. package/lib/typescript/shared/utils/bounds/helpers/interpolate-style.d.ts +17 -0
  93. package/lib/typescript/shared/utils/bounds/helpers/interpolate-style.d.ts.map +1 -0
  94. package/lib/typescript/shared/utils/bounds/index.d.ts.map +1 -1
  95. package/lib/typescript/shared/utils/create-provider.d.ts +5 -1
  96. package/lib/typescript/shared/utils/create-provider.d.ts.map +1 -1
  97. package/lib/typescript/shared/utils/gesture/check-gesture-activation.d.ts +49 -1
  98. package/lib/typescript/shared/utils/gesture/check-gesture-activation.d.ts.map +1 -1
  99. package/package.json +1 -1
  100. package/src/blank-stack/components/overlay.tsx +1 -1
  101. package/src/blank-stack/components/screens.tsx +4 -4
  102. package/src/blank-stack/components/stack-view.tsx +4 -11
  103. package/src/blank-stack/types.ts +2 -15
  104. package/src/blank-stack/utils/with-stack-navigation/index.tsx +17 -3
  105. package/src/shared/__tests__/derivations.test.ts +155 -0
  106. package/src/shared/__tests__/gesture-activation.test.ts +251 -0
  107. package/src/shared/components/controllers/native-stack-lifecycle.tsx +4 -2
  108. package/src/shared/components/create-transition-aware-component.tsx +2 -1
  109. package/src/shared/hooks/animation/use-screen-animation.tsx +8 -2
  110. package/src/shared/hooks/gestures/use-build-gestures.tsx +35 -8
  111. package/src/shared/hooks/gestures/use-screen-gesture.ts +19 -0
  112. package/src/shared/hooks/gestures/use-scroll-registry.tsx +39 -59
  113. package/src/shared/index.ts +2 -0
  114. package/src/shared/providers/gestures.provider.tsx +35 -75
  115. package/src/shared/types/animation.types.ts +49 -0
  116. package/src/shared/types/bounds.types.ts +11 -0
  117. package/src/shared/types/core.types.ts +8 -0
  118. package/src/shared/utils/bounds/helpers/interpolate-style.ts +38 -0
  119. package/src/shared/utils/bounds/index.ts +31 -1
  120. package/src/shared/utils/create-provider.tsx +31 -1
  121. package/src/shared/utils/gesture/check-gesture-activation.ts +4 -4
@@ -42,17 +42,18 @@ const {
42
42
  shouldShowFloatOverlay
43
43
  };
44
44
  }, [state.routes, state.descriptors]);
45
+ const value = (0, _react.useMemo)(() => ({
46
+ routes: state.routes,
47
+ focusedIndex: props.state.index,
48
+ descriptors: state.descriptors,
49
+ closingRouteKeysShared: closingRouteKeys.shared,
50
+ activeScreensLimit,
51
+ handleCloseRoute,
52
+ scenes,
53
+ shouldShowFloatOverlay
54
+ }), [state.routes, state.descriptors, props.state.index, closingRouteKeys.shared, activeScreensLimit, handleCloseRoute, scenes, shouldShowFloatOverlay]);
45
55
  return {
46
- value: {
47
- routes: state.routes,
48
- focusedIndex: props.state.index,
49
- descriptors: state.descriptors,
50
- closingRouteKeysShared: closingRouteKeys.shared,
51
- activeScreensLimit,
52
- handleCloseRoute,
53
- scenes,
54
- shouldShowFloatOverlay
55
- }
56
+ value
56
57
  };
57
58
  });
58
59
  exports.useStackNavigationContext = useStackNavigationContext;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_createProvider","_interopRequireDefault","_calculateActiveScreensLimit","_useStackNavigationState","e","__esModule","default","withStackNavigationProvider","useStackNavigationContext","createProvider","props","state","handleCloseRoute","closingRouteKeys","useStackNavigationState","scenes","activeScreensLimit","shouldShowFloatOverlay","useMemo","route","routes","descriptor","descriptors","key","push","options","overlayMode","overlayShown","calculateActiveScreensLimit","value","focusedIndex","index","closingRouteKeysShared","shared","exports"],"sourceRoot":"../../../../../src","sources":["blank-stack/utils/with-stack-navigation/index.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,4BAAA,GAAAH,OAAA;AACA,IAAAI,wBAAA,GAAAJ,OAAA;AAA6E,SAAAE,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAM7E,MAAM;EAAEG,2BAA2B;EAAEC;AAA0B,CAAC,GAC/D,IAAAC,uBAAc,EAAC,iBAAiB,CAAC,CAG9BC,KAAK,IAAK;EACZ,MAAM;IAAEC,KAAK;IAAEC,gBAAgB;IAAEC;EAAiB,CAAC,GAClD,IAAAC,gDAAuB,EAACJ,KAAK,CAAC;EAE/B,MAAM;IAAEK,MAAM;IAAEC,kBAAkB;IAAEC;EAAuB,CAAC,GAC3D,IAAAC,cAAO,EAAC,MAAM;IACb,MAAMH,MAAyB,GAAG,EAAE;IACpC,IAAIE,sBAAsB,GAAG,KAAK;IAElC,KAAK,MAAME,KAAK,IAAIR,KAAK,CAACS,MAAM,EAAE;MACjC,MAAMC,UAAU,GAAGV,KAAK,CAACW,WAAW,CAACH,KAAK,CAACI,GAAG,CAAC;MAC/CR,MAAM,CAACS,IAAI,CAAC;QAAEL,KAAK;QAAEE;MAAW,CAAC,CAAC;MAElC,IAAI,CAACJ,sBAAsB,EAAE;QAC5B,MAAMQ,OAAO,GAAGJ,UAAU,EAAEI,OAAO;QACnCR,sBAAsB,GACrBQ,OAAO,EAAEC,WAAW,KAAK,OAAO,IAChCD,OAAO,EAAEE,YAAY,KAAK,IAAI;MAChC;IACD;IAEA,OAAO;MACNZ,MAAM;MACNC,kBAAkB,EAAE,IAAAY,wDAA2B,EAC9CjB,KAAK,CAACS,MAAM,EACZT,KAAK,CAACW,WACP,CAAC;MACDL;IACD,CAAC;EACF,CAAC,EAAE,CAACN,KAAK,CAACS,MAAM,EAAET,KAAK,CAACW,WAAW,CAAC,CAAC;EAEtC,OAAO;IACNO,KAAK,EAAE;MACNT,MAAM,EAAET,KAAK,CAACS,MAAM;MACpBU,YAAY,EAAEpB,KAAK,CAACC,KAAK,CAACoB,KAAK;MAC/BT,WAAW,EAAEX,KAAK,CAACW,WAAW;MAC9BU,sBAAsB,EAAEnB,gBAAgB,CAACoB,MAAM;MAC/CjB,kBAAkB;MAClBJ,gBAAgB;MAChBG,MAAM;MACNE;IACD;EACD,CAAC;AACF,CAAC,CAAC;AAACiB,OAAA,CAAA1B,yBAAA,GAAAA,yBAAA;AAAA0B,OAAA,CAAA3B,2BAAA,GAAAA,2BAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_createProvider","_interopRequireDefault","_calculateActiveScreensLimit","_useStackNavigationState","e","__esModule","default","withStackNavigationProvider","useStackNavigationContext","createProvider","props","state","handleCloseRoute","closingRouteKeys","useStackNavigationState","scenes","activeScreensLimit","shouldShowFloatOverlay","useMemo","route","routes","descriptor","descriptors","key","push","options","overlayMode","overlayShown","calculateActiveScreensLimit","value","focusedIndex","index","closingRouteKeysShared","shared","exports"],"sourceRoot":"../../../../../src","sources":["blank-stack/utils/with-stack-navigation/index.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,4BAAA,GAAAH,OAAA;AACA,IAAAI,wBAAA,GAAAJ,OAAA;AAA6E,SAAAE,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAM7E,MAAM;EAAEG,2BAA2B;EAAEC;AAA0B,CAAC,GAC/D,IAAAC,uBAAc,EAAC,iBAAiB,CAAC,CAG9BC,KAAK,IAAK;EACZ,MAAM;IAAEC,KAAK;IAAEC,gBAAgB;IAAEC;EAAiB,CAAC,GAClD,IAAAC,gDAAuB,EAACJ,KAAK,CAAC;EAE/B,MAAM;IAAEK,MAAM;IAAEC,kBAAkB;IAAEC;EAAuB,CAAC,GAC3D,IAAAC,cAAO,EAAC,MAAM;IACb,MAAMH,MAAyB,GAAG,EAAE;IACpC,IAAIE,sBAAsB,GAAG,KAAK;IAElC,KAAK,MAAME,KAAK,IAAIR,KAAK,CAACS,MAAM,EAAE;MACjC,MAAMC,UAAU,GAAGV,KAAK,CAACW,WAAW,CAACH,KAAK,CAACI,GAAG,CAAC;MAC/CR,MAAM,CAACS,IAAI,CAAC;QAAEL,KAAK;QAAEE;MAAW,CAAC,CAAC;MAElC,IAAI,CAACJ,sBAAsB,EAAE;QAC5B,MAAMQ,OAAO,GAAGJ,UAAU,EAAEI,OAAO;QACnCR,sBAAsB,GACrBQ,OAAO,EAAEC,WAAW,KAAK,OAAO,IAChCD,OAAO,EAAEE,YAAY,KAAK,IAAI;MAChC;IACD;IAEA,OAAO;MACNZ,MAAM;MACNC,kBAAkB,EAAE,IAAAY,wDAA2B,EAC9CjB,KAAK,CAACS,MAAM,EACZT,KAAK,CAACW,WACP,CAAC;MACDL;IACD,CAAC;EACF,CAAC,EAAE,CAACN,KAAK,CAACS,MAAM,EAAET,KAAK,CAACW,WAAW,CAAC,CAAC;EAEtC,MAAMO,KAAK,GAAG,IAAAX,cAAO,EACpB,OAAO;IACNE,MAAM,EAAET,KAAK,CAACS,MAAM;IACpBU,YAAY,EAAEpB,KAAK,CAACC,KAAK,CAACoB,KAAK;IAC/BT,WAAW,EAAEX,KAAK,CAACW,WAAW;IAC9BU,sBAAsB,EAAEnB,gBAAgB,CAACoB,MAAM;IAC/CjB,kBAAkB;IAClBJ,gBAAgB;IAChBG,MAAM;IACNE;EACD,CAAC,CAAC,EACF,CACCN,KAAK,CAACS,MAAM,EACZT,KAAK,CAACW,WAAW,EACjBZ,KAAK,CAACC,KAAK,CAACoB,KAAK,EACjBlB,gBAAgB,CAACoB,MAAM,EACvBjB,kBAAkB,EAClBJ,gBAAgB,EAChBG,MAAM,EACNE,sBAAsB,CAExB,CAAC;EAED,OAAO;IACNY;EACD,CAAC;AACF,CAAC,CAAC;AAACK,OAAA,CAAA1B,yBAAA,GAAAA,yBAAA;AAAA0B,OAAA,CAAA3B,2BAAA,GAAAA,2BAAA","ignoreList":[]}
@@ -15,6 +15,8 @@ var _state = require("../../types/state.types");
15
15
  var _startScreenTransition = require("../../utils/animation/start-screen-transition");
16
16
  var _resetStoresForScreen = require("../../utils/reset-stores-for-screen");
17
17
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
+ /** biome-ignore-all lint/style/noNonNullAssertion: <Lifecycles are rendered right under the gesture provider> */
19
+
18
20
  /**
19
21
  * Lifecycle controller built out for Native Stack implementation.
20
22
  */
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNativeReanimated","_useSharedValueState","_useStableCallback","_interopRequireDefault","_gestures","_keys","_animation","_state","_startScreenTransition","_resetStoresForScreen","e","__esModule","default","NativeStackScreenLifecycleController","children","current","useKeys","ancestorContext","useGestureContext","isAncestorDismissingViaGesture","useSharedValueState","useDerivedValue","gestureAnimationValues","isDismissing","value","animations","AnimationStore","getAll","route","key","handleBeforeRemove","useStableCallback","isEnabled","options","enableTransitions","isFirstScreen","navigation","getState","index","closing","set","TRUE","resetStoresForScreen","preventDefault","onAnimationFinish","finished","dispatch","data","action","requestAnimationFrame","startScreenTransition","target","spec","transitionSpec","handleInitialize","useEffect","unsubscribe","addListener","useLayoutEffect","exports"],"sourceRoot":"../../../../../src","sources":["shared/components/controllers/native-stack-lifecycle.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_useSharedValueState","_useStableCallback","_interopRequireDefault","_gestures","_keys","_animation","_state","_startScreenTransition","_resetStoresForScreen","e","__esModule","default","NativeStackScreenLifecycleController","children","current","useKeys","ancestorContext","useGestureContext","isAncestorDismissingViaGesture","useSharedValueState","useDerivedValue","gestureAnimationValues","isDismissing","value","animations","AnimationStore","getAll","route","key","handleBeforeRemove","useStableCallback","isEnabled","options","enableTransitions","isFirstScreen","navigation","getState","index","closing","set","TRUE","resetStoresForScreen","preventDefault","onAnimationFinish","finished","dispatch","data","action","requestAnimationFrame","startScreenTransition","target","spec","transitionSpec","handleInitialize","useEffect","unsubscribe","addListener","useLayoutEffect","exports"],"sourceRoot":"../../../../../src","sources":["shared/components/controllers/native-stack-lifecycle.tsx"],"mappings":"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","ignoreList":[]}
@@ -13,6 +13,8 @@ var _gestures = require("../providers/gestures.provider");
13
13
  var _registerBounds = require("../providers/register-bounds.provider");
14
14
  var _jsxRuntime = require("react/jsx-runtime");
15
15
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
+ /** biome-ignore-all lint/style/noNonNullAssertion: <This helper is usually being used inside a transitionable stack> */
17
+
16
18
  function createTransitionAwareComponent(Wrapped, options = {}) {
17
19
  const {
18
20
  isScrollable = false
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNativeGestureHandler","_reactNativeReanimated","_interopRequireWildcard","_useAssociatedStyle","_useScrollRegistry","_gestures","_registerBounds","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","createTransitionAwareComponent","Wrapped","options","isScrollable","AnimatedComponent","Animated","createAnimatedComponent","ScrollableInner","forwardRef","props","ref","nativeGesture","useGestureContext","scrollHandler","onContentSizeChange","onLayout","useScrollRegistry","onScroll","jsx","GestureDetector","gesture","children","scrollEventThrottle","Inner","_","style","sharedBoundTag","styleId","onPress","rest","animatedRef","useAnimatedRef","associatedStyles","useAssociatedStyles","id","RegisterBoundsProvider","captureActiveOnPress","handleInitialLayout","runOnUI","collapsable","memo"],"sourceRoot":"../../../../src","sources":["shared/components/create-transition-aware-component.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeGestureHandler","_reactNativeReanimated","_interopRequireWildcard","_useAssociatedStyle","_useScrollRegistry","_gestures","_registerBounds","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","createTransitionAwareComponent","Wrapped","options","isScrollable","AnimatedComponent","Animated","createAnimatedComponent","ScrollableInner","forwardRef","props","ref","nativeGesture","useGestureContext","scrollHandler","onContentSizeChange","onLayout","useScrollRegistry","onScroll","jsx","GestureDetector","gesture","children","scrollEventThrottle","Inner","_","style","sharedBoundTag","styleId","onPress","rest","animatedRef","useAnimatedRef","associatedStyles","useAssociatedStyles","id","RegisterBoundsProvider","captureActiveOnPress","handleInitialLayout","runOnUI","collapsable","memo"],"sourceRoot":"../../../../src","sources":["shared/components/create-transition-aware-component.tsx"],"mappings":"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","ignoreList":[]}
@@ -18,7 +18,7 @@ var _gesture = require("../../stores/gesture.store");
18
18
  var _computeStackProgress = require("../../utils/animation/compute-stack-progress");
19
19
  var _derivations = require("../../utils/animation/derivations");
20
20
  var _bounds = require("../../utils/bounds");
21
- const createScreenTransitionState = route => ({
21
+ const createScreenTransitionState = (route, meta) => ({
22
22
  progress: 0,
23
23
  closing: 0,
24
24
  animating: 0,
@@ -31,7 +31,8 @@ const createScreenTransitionState = route => ({
31
31
  isDragging: 0,
32
32
  direction: null
33
33
  },
34
- route
34
+ route,
35
+ meta
35
36
  });
36
37
  const unwrapInto = s => {
37
38
  "worklet";
@@ -47,10 +48,12 @@ const unwrapInto = s => {
47
48
  out.gesture.isDismissing = s.gesture.isDismissing.value;
48
49
  out.gesture.isDragging = s.gesture.isDragging.value;
49
50
  out.gesture.direction = s.gesture.direction.value;
51
+ out.meta = s.meta;
50
52
  return out;
51
53
  };
52
54
  const useBuildScreenTransitionState = descriptor => {
53
55
  const key = descriptor?.route.key;
56
+ const meta = descriptor?.options?.meta;
54
57
  return (0, _react.useMemo)(() => {
55
58
  if (!key) return undefined;
56
59
  return {
@@ -59,9 +62,10 @@ const useBuildScreenTransitionState = descriptor => {
59
62
  animating: _animation.AnimationStore.getAnimation(key, "animating"),
60
63
  gesture: _gesture.GestureStore.getRouteGestures(key),
61
64
  route: descriptor.route,
62
- unwrapped: createScreenTransitionState(descriptor.route)
65
+ meta,
66
+ unwrapped: createScreenTransitionState(descriptor.route, meta)
63
67
  };
64
- }, [key, descriptor?.route]);
68
+ }, [key, descriptor?.route, meta]);
65
69
  };
66
70
  const hasTransitionsEnabled = (options, alwaysOn) => {
67
71
  "worklet";
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_reactNativeSafeAreaContext","_constants","_flags","_keys","_routes","_animation","_gesture","_computeStackProgress","_derivations","_bounds","createScreenTransitionState","route","progress","closing","animating","gesture","x","y","normalizedX","normalizedY","isDismissing","isDragging","direction","unwrapInto","s","out","unwrapped","value","useBuildScreenTransitionState","descriptor","key","useMemo","undefined","AnimationStore","getAnimation","GestureStore","getRouteGestures","hasTransitionsEnabled","options","alwaysOn","enableTransitions","_useScreenAnimation","dimensions","useWindowDimensions","insets","useSafeAreaInsets","flags","useFlagsContext","transitionsAlwaysOn","TRANSITIONS_ALWAYS_ON","current","currentDescriptor","next","nextDescriptor","previous","previousDescriptor","useKeys","currentAnimation","nextAnimation","prevAnimation","currentRouteKey","stackAnimationValues","useStackAnimationValues","screenInterpolatorProps","useDerivedValue","DEFAULT_SCREEN_TRANSITION_STATE","helpers","derivations","stackProgress","computeStackProgress","layouts","screen","nextInterpolator","screenStyleInterpolator","currentInterpolator","useScreenAnimation","props","bounds","createBounds"],"sourceRoot":"../../../../../src","sources":["shared/hooks/animation/use-screen-animation.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_reactNativeSafeAreaContext","_constants","_flags","_keys","_routes","_animation","_gesture","_computeStackProgress","_derivations","_bounds","createScreenTransitionState","route","meta","progress","closing","animating","gesture","x","y","normalizedX","normalizedY","isDismissing","isDragging","direction","unwrapInto","s","out","unwrapped","value","useBuildScreenTransitionState","descriptor","key","options","useMemo","undefined","AnimationStore","getAnimation","GestureStore","getRouteGestures","hasTransitionsEnabled","alwaysOn","enableTransitions","_useScreenAnimation","dimensions","useWindowDimensions","insets","useSafeAreaInsets","flags","useFlagsContext","transitionsAlwaysOn","TRANSITIONS_ALWAYS_ON","current","currentDescriptor","next","nextDescriptor","previous","previousDescriptor","useKeys","currentAnimation","nextAnimation","prevAnimation","currentRouteKey","stackAnimationValues","useStackAnimationValues","screenInterpolatorProps","useDerivedValue","DEFAULT_SCREEN_TRANSITION_STATE","helpers","derivations","stackProgress","computeStackProgress","layouts","screen","nextInterpolator","screenStyleInterpolator","currentInterpolator","useScreenAnimation","props","bounds","createBounds"],"sourceRoot":"../../../../../src","sources":["shared/hooks/animation/use-screen-animation.tsx"],"mappings":"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","ignoreList":[]}
@@ -35,6 +35,9 @@ const useBuildGestures = ({
35
35
  y: 0
36
36
  });
37
37
  const gestureOffsetState = (0, _reactNativeReanimated.useSharedValue)(_gesture2.GestureOffsetState.PENDING);
38
+
39
+ // Ref for external gesture coordination (e.g., swipeable lists)
40
+ const panGestureRef = (0, _react.useRef)(undefined);
38
41
  const gestureAnimationValues = _gesture.GestureStore.getRouteGestures(current.route.key);
39
42
  const animations = _animation.AnimationStore.getAll(current.route.key);
40
43
  const {
@@ -234,16 +237,37 @@ const useBuildGestures = ({
234
237
  initialVelocity
235
238
  });
236
239
  });
240
+
241
+ // Memoize gestures to keep stable references - critical for RNGH
242
+ // Child gestures reference ancestor's pan via requireExternalGestureToFail,
243
+ // so the pan gesture MUST be stable or children will reference stale objects
237
244
  return (0, _react.useMemo)(() => {
238
- const nativeGesture = _reactNativeGestureHandler.Gesture.Native();
239
- const panGesture = _reactNativeGestureHandler.Gesture.Pan().enabled(gestureEnabled).manualActivation(true).onTouchesDown(onTouchesDown).onTouchesMove(onTouchesMove).onStart(onStart).onUpdate(onUpdate).onEnd(onEnd).blocksExternalGesture(nativeGesture);
245
+ const panGesture = _reactNativeGestureHandler.Gesture.Pan().withRef(panGestureRef).enabled(gestureEnabled).manualActivation(true).onTouchesDown(onTouchesDown).onTouchesMove(onTouchesMove).onStart(onStart).onUpdate(onUpdate).onEnd(onEnd);
240
246
 
241
- // Allow ancestors to block child native gestures
242
- if (ancestorContext?.panGesture && nativeGesture) {
243
- ancestorContext.panGesture.blocksExternalGesture(nativeGesture);
247
+ // Native gesture setup depends on whether this screen has gestures
248
+ let nativeGesture;
249
+ if (gestureEnabled) {
250
+ // This screen has gestures - set up normal pan/native relationship
251
+ nativeGesture = _reactNativeGestureHandler.Gesture.Native().requireExternalGestureToFail(panGesture);
252
+ panGesture.blocksExternalGesture(nativeGesture);
253
+ } else {
254
+ // This screen has no gestures
255
+ // Find nearest ancestor with gestureEnabled=true (attached pan)
256
+ let activePanAncestor = ancestorContext;
257
+ while (activePanAncestor && !activePanAncestor.gestureEnabled) {
258
+ activePanAncestor = activePanAncestor.ancestorContext;
259
+ }
260
+ if (activePanAncestor?.panGesture) {
261
+ // Found an ancestor with enabled pan - wait for it
262
+ nativeGesture = _reactNativeGestureHandler.Gesture.Native().requireExternalGestureToFail(activePanAncestor.panGesture);
263
+ } else {
264
+ // No ancestor with enabled pan - plain native
265
+ nativeGesture = _reactNativeGestureHandler.Gesture.Native();
266
+ }
244
267
  }
245
268
  return {
246
269
  panGesture,
270
+ panGestureRef,
247
271
  nativeGesture,
248
272
  gestureAnimationValues
249
273
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_native","require","_react","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_constants","_keys","_animation","_gesture","_gesture2","_startScreenTransition","_checkGestureActivation","_determineDismissal","_mapGestureToProgress","_resetGestureValues","_velocity","_useStableCallbackValue","_interopRequireDefault","e","__esModule","default","useBuildGestures","scrollConfig","ancestorContext","dimensions","useWindowDimensions","current","useKeys","initialTouch","useSharedValue","x","y","gestureOffsetState","GestureOffsetState","PENDING","gestureAnimationValues","GestureStore","getRouteGestures","route","key","animations","AnimationStore","getAll","gestureDirection","DEFAULT_GESTURE_DIRECTION","gestureEnabled","DEFAULT_GESTURE_ENABLED","gestureVelocityImpact","GESTURE_VELOCITY_IMPACT","gestureDrivesProgress","DEFAULT_GESTURE_DRIVES_PROGRESS","gestureActivationArea","DEFAULT_GESTURE_ACTIVATION_AREA","gestureResponseDistance","transitionSpec","options","directions","useMemo","directionsArray","Array","isArray","isBidirectional","includes","vertical","verticalInverted","horizontal","horizontalInverted","handleDismiss","useCallback","isDismissing","value","state","navigation","getState","routeStillPresent","routes","some","dispatch","StackActions","pop","source","target","onTouchesDown","useStableCallbackValue","firstTouch","changedTouches","onTouchesMove","manager","FAILED","fail","touch","isSwipingDown","isSwipingUp","isSwipingRight","isSwipingLeft","applyOffsetRules","activationArea","responseDistance","isDragging","activate","maxScrollY","contentHeight","layoutHeight","maxScrollX","contentWidth","layoutWidth","recognizedDirection","scrollCfg","shouldActivate","activatedDirection","PASSED","direction","onStart","onUpdate","event","gestureProgress","translationX","translationY","width","height","normalizedX","Math","max","min","normalizedY","maxProgress","allowedDown","allowedUp","allowedRight","allowedLeft","currentProgress","mapGestureToProgress","progress","onEnd","shouldDismiss","determineDismissal","spec","close","open","resetGestureValues","gestures","initialVelocity","velocity","calculateProgressVelocity","startScreenTransition","onAnimationFinish","undefined","nativeGesture","Gesture","Native","panGesture","Pan","enabled","manualActivation","blocksExternalGesture","exports"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-build-gestures.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_native","require","_react","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_constants","_keys","_animation","_gesture","_gesture2","_startScreenTransition","_checkGestureActivation","_determineDismissal","_mapGestureToProgress","_resetGestureValues","_velocity","_useStableCallbackValue","_interopRequireDefault","e","__esModule","default","useBuildGestures","scrollConfig","ancestorContext","dimensions","useWindowDimensions","current","useKeys","initialTouch","useSharedValue","x","y","gestureOffsetState","GestureOffsetState","PENDING","panGestureRef","useRef","undefined","gestureAnimationValues","GestureStore","getRouteGestures","route","key","animations","AnimationStore","getAll","gestureDirection","DEFAULT_GESTURE_DIRECTION","gestureEnabled","DEFAULT_GESTURE_ENABLED","gestureVelocityImpact","GESTURE_VELOCITY_IMPACT","gestureDrivesProgress","DEFAULT_GESTURE_DRIVES_PROGRESS","gestureActivationArea","DEFAULT_GESTURE_ACTIVATION_AREA","gestureResponseDistance","transitionSpec","options","directions","useMemo","directionsArray","Array","isArray","isBidirectional","includes","vertical","verticalInverted","horizontal","horizontalInverted","handleDismiss","useCallback","isDismissing","value","state","navigation","getState","routeStillPresent","routes","some","dispatch","StackActions","pop","source","target","onTouchesDown","useStableCallbackValue","firstTouch","changedTouches","onTouchesMove","manager","FAILED","fail","touch","isSwipingDown","isSwipingUp","isSwipingRight","isSwipingLeft","applyOffsetRules","activationArea","responseDistance","isDragging","activate","maxScrollY","contentHeight","layoutHeight","maxScrollX","contentWidth","layoutWidth","recognizedDirection","scrollCfg","shouldActivate","activatedDirection","PASSED","direction","onStart","onUpdate","event","gestureProgress","translationX","translationY","width","height","normalizedX","Math","max","min","normalizedY","maxProgress","allowedDown","allowedUp","allowedRight","allowedLeft","currentProgress","mapGestureToProgress","progress","onEnd","shouldDismiss","determineDismissal","spec","close","open","resetGestureValues","gestures","initialVelocity","velocity","calculateProgressVelocity","startScreenTransition","onAnimationFinish","panGesture","Gesture","Pan","withRef","enabled","manualActivation","nativeGesture","Native","requireExternalGestureToFail","blocksExternalGesture","activePanAncestor","exports"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-build-gestures.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useScreenGesture = void 0;
7
+ var _gestures = require("../../providers/gestures.provider");
8
+ /**
9
+ * Returns a ref to the screen's navigation pan gesture.
10
+ * Use this to coordinate child gestures with the navigation gesture.
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * const screenGesture = useScreenGesture();
15
+ *
16
+ * const myPanGesture = Gesture.Pan()
17
+ * .waitFor(screenGesture) // Wait for navigation gesture to fail first
18
+ * .onUpdate(...);
19
+ * ```
20
+ */
21
+ const useScreenGesture = () => {
22
+ const ctx = (0, _gestures.useGestureContext)();
23
+ return ctx?.panGestureRef ?? null;
24
+ };
25
+ exports.useScreenGesture = useScreenGesture;
26
+ //# sourceMappingURL=use-screen-gesture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_gestures","require","useScreenGesture","ctx","useGestureContext","panGestureRef","exports"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-screen-gesture.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACrC,MAAMC,GAAG,GAAG,IAAAC,2BAAiB,EAAC,CAAC;EAC/B,OAAOD,GAAG,EAAEE,aAAa,IAAI,IAAI;AAClC,CAAC;AAACC,OAAA,CAAAJ,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -4,19 +4,34 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useScrollRegistry = void 0;
7
+ var _react = require("react");
7
8
  var _reactNativeReanimated = require("react-native-reanimated");
8
9
  var _gestures = require("../../providers/gestures.provider");
9
10
  var _useStableCallback = _interopRequireDefault(require("../use-stable-callback"));
10
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ /** biome-ignore-all lint/style/noNonNullAssertion: <Will always consume context from GestureProvider> */
13
+
11
14
  const useScrollRegistry = props => {
15
+ const context = (0, _gestures.useGestureContext)();
12
16
  const {
13
17
  scrollConfig,
14
18
  ancestorContext
15
- } = (0, _gestures.useGestureContext)();
19
+ } = context;
20
+ const ancestorScrollConfigs = (0, _react.useMemo)(() => {
21
+ const configs = [];
22
+ let current = ancestorContext;
23
+ while (current) {
24
+ if (current.scrollConfig) {
25
+ configs.push(current.scrollConfig);
26
+ }
27
+ current = current.ancestorContext;
28
+ }
29
+ return configs;
30
+ }, [ancestorContext]);
16
31
  const scrollHandler = (0, _reactNativeReanimated.useAnimatedScrollHandler)({
17
32
  onScroll: event => {
18
33
  props.onScroll?.(event);
19
- scrollConfig.modify(v => {
34
+ const updateScrollPosition = v => {
20
35
  "worklet";
21
36
 
22
37
  if (v === null) {
@@ -32,31 +47,18 @@ const useScrollRegistry = props => {
32
47
  v.x = event.contentOffset.x;
33
48
  v.y = event.contentOffset.y;
34
49
  return v;
35
- });
36
- if (ancestorContext?.scrollConfig) {
37
- ancestorContext.scrollConfig.modify(v => {
38
- "worklet";
50
+ };
51
+ scrollConfig.modify(updateScrollPosition);
39
52
 
40
- if (v === null) {
41
- return {
42
- x: event.contentOffset.x,
43
- y: event.contentOffset.y,
44
- contentHeight: 0,
45
- contentWidth: 0,
46
- layoutHeight: 0,
47
- layoutWidth: 0
48
- };
49
- }
50
- v.x = event.contentOffset.x;
51
- v.y = event.contentOffset.y;
52
- return v;
53
- });
53
+ // Sync to ALL ancestors, not just immediate parent
54
+ for (const ancestorConfig of ancestorScrollConfigs) {
55
+ ancestorConfig.modify(updateScrollPosition);
54
56
  }
55
57
  }
56
58
  });
57
59
  const onContentSizeChange = (0, _useStableCallback.default)((width, height) => {
58
60
  props.onContentSizeChange?.(width, height);
59
- scrollConfig.modify(v => {
61
+ const updateContentSize = v => {
60
62
  "worklet";
61
63
 
62
64
  if (v === null) {
@@ -72,25 +74,10 @@ const useScrollRegistry = props => {
72
74
  v.contentWidth = width;
73
75
  v.contentHeight = height;
74
76
  return v;
75
- });
76
- if (ancestorContext?.scrollConfig) {
77
- ancestorContext.scrollConfig.modify(v => {
78
- "worklet";
79
-
80
- if (v === null) {
81
- return {
82
- x: 0,
83
- y: 0,
84
- layoutHeight: 0,
85
- layoutWidth: 0,
86
- contentWidth: width,
87
- contentHeight: height
88
- };
89
- }
90
- v.contentWidth = width;
91
- v.contentHeight = height;
92
- return v;
93
- });
77
+ };
78
+ scrollConfig.modify(updateContentSize);
79
+ for (const ancestorConfig of ancestorScrollConfigs) {
80
+ ancestorConfig.modify(updateContentSize);
94
81
  }
95
82
  });
96
83
  const onLayout = (0, _useStableCallback.default)(event => {
@@ -99,7 +86,7 @@ const useScrollRegistry = props => {
99
86
  width,
100
87
  height
101
88
  } = event.nativeEvent.layout;
102
- scrollConfig.modify(v => {
89
+ const updateLayout = v => {
103
90
  "worklet";
104
91
 
105
92
  if (v === null) {
@@ -115,25 +102,10 @@ const useScrollRegistry = props => {
115
102
  v.layoutHeight = height;
116
103
  v.layoutWidth = width;
117
104
  return v;
118
- });
119
- if (ancestorContext?.scrollConfig) {
120
- ancestorContext.scrollConfig.modify(v => {
121
- "worklet";
122
-
123
- if (v === null) {
124
- return {
125
- x: 0,
126
- y: 0,
127
- contentHeight: 0,
128
- contentWidth: 0,
129
- layoutHeight: height,
130
- layoutWidth: width
131
- };
132
- }
133
- v.layoutHeight = height;
134
- v.layoutWidth = width;
135
- return v;
136
- });
105
+ };
106
+ scrollConfig.modify(updateLayout);
107
+ for (const ancestorConfig of ancestorScrollConfigs) {
108
+ ancestorConfig.modify(updateLayout);
137
109
  }
138
110
  });
139
111
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeReanimated","require","_gestures","_useStableCallback","_interopRequireDefault","e","__esModule","default","useScrollRegistry","props","scrollConfig","ancestorContext","useGestureContext","scrollHandler","useAnimatedScrollHandler","onScroll","event","modify","v","x","contentOffset","y","contentHeight","contentWidth","layoutHeight","layoutWidth","onContentSizeChange","useStableCallback","width","height","onLayout","nativeEvent","layout","exports"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-scroll-registry.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_gestures","_useStableCallback","_interopRequireDefault","e","__esModule","default","useScrollRegistry","props","context","useGestureContext","scrollConfig","ancestorContext","ancestorScrollConfigs","useMemo","configs","current","push","scrollHandler","useAnimatedScrollHandler","onScroll","event","updateScrollPosition","v","x","contentOffset","y","contentHeight","contentWidth","layoutHeight","layoutWidth","modify","ancestorConfig","onContentSizeChange","useStableCallback","width","height","updateContentSize","onLayout","nativeEvent","layout","updateLayout","exports"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-scroll-registry.tsx"],"mappings":"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","ignoreList":[]}
@@ -10,11 +10,18 @@ Object.defineProperty(exports, "useScreenAnimation", {
10
10
  return _useScreenAnimation.useScreenAnimation;
11
11
  }
12
12
  });
13
+ Object.defineProperty(exports, "useScreenGesture", {
14
+ enumerable: true,
15
+ get: function () {
16
+ return _useScreenGesture.useScreenGesture;
17
+ }
18
+ });
13
19
  var _reactNative = require("react-native");
14
20
  var _createTransitionAwareComponent = require("./components/create-transition-aware-component");
15
21
  var _maskedView = _interopRequireDefault(require("./components/integrations/masked-view"));
16
22
  var _configs = require("./configs");
17
23
  var _useScreenAnimation = require("./hooks/animation/use-screen-animation");
24
+ var _useScreenGesture = require("./hooks/gestures/use-screen-gesture");
18
25
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
26
  var _default = exports.default = {
20
27
  createTransitionAwareComponent: _createTransitionAwareComponent.createTransitionAwareComponent,
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_createTransitionAwareComponent","_maskedView","_interopRequireDefault","_configs","_useScreenAnimation","e","__esModule","default","_default","exports","createTransitionAwareComponent","View","Pressable","ScrollView","isScrollable","FlatList","MaskedView","Presets","Specs"],"sourceRoot":"../../../src","sources":["shared/index.ts"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,+BAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAiBA,IAAAK,mBAAA,GAAAL,OAAA;AAA4E,SAAAG,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAf7D;EACdG,8BAA8B,EAA9BA,8DAA8B;EAC9BC,IAAI,EAAE,IAAAD,8DAA8B,EAACC,iBAAI,CAAC;EAC1CC,SAAS,EAAE,IAAAF,8DAA8B,EAACE,sBAAS,CAAC;EACpDC,UAAU,EAAE,IAAAH,8DAA8B,EAACG,uBAAU,EAAE;IACtDC,YAAY,EAAE;EACf,CAAC,CAAC;EACFC,QAAQ,EAAE,IAAAL,8DAA8B,EAACK,qBAAQ,EAAE;IAClDD,YAAY,EAAE;EACf,CAAC,CAAC;EACFE,UAAU,EAAEA,mBAAU;EACtBC,OAAO,EAAPA,gBAAO;EACPC,KAAK,EAALA;AACD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_createTransitionAwareComponent","_maskedView","_interopRequireDefault","_configs","_useScreenAnimation","_useScreenGesture","e","__esModule","default","_default","exports","createTransitionAwareComponent","View","Pressable","ScrollView","isScrollable","FlatList","MaskedView","Presets","Specs"],"sourceRoot":"../../../src","sources":["shared/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,+BAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAiBA,IAAAK,mBAAA,GAAAL,OAAA;AACA,IAAAM,iBAAA,GAAAN,OAAA;AAAuE,SAAAG,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAhBxD;EACdG,8BAA8B,EAA9BA,8DAA8B;EAC9BC,IAAI,EAAE,IAAAD,8DAA8B,EAACC,iBAAI,CAAC;EAC1CC,SAAS,EAAE,IAAAF,8DAA8B,EAACE,sBAAS,CAAC;EACpDC,UAAU,EAAE,IAAAH,8DAA8B,EAACG,uBAAU,EAAE;IACtDC,YAAY,EAAE;EACf,CAAC,CAAC;EACFC,QAAQ,EAAE,IAAAL,8DAA8B,EAACK,qBAAQ,EAAE;IAClDD,YAAY,EAAE;EACf,CAAC,CAAC;EACFE,UAAU,EAAEA,mBAAU;EACtBC,OAAO,EAAPA,gBAAO;EACPC,KAAK,EAALA;AACD,CAAC","ignoreList":[]}