react-native-gesture-handler 2.16.0 → 2.16.1
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +1 -0
- package/lib/commonjs/RNGestureHandlerModule.js +97 -4
- package/lib/commonjs/RNGestureHandlerModule.js.map +1 -1
- package/lib/commonjs/RNGestureHandlerModule.native.js +16 -0
- package/lib/commonjs/RNGestureHandlerModule.native.js.map +1 -0
- package/lib/commonjs/RNRenderer.js +5 -10
- package/lib/commonjs/RNRenderer.js.map +1 -1
- package/lib/commonjs/RNRenderer.native.js +16 -0
- package/lib/commonjs/RNRenderer.native.js.map +1 -0
- package/lib/commonjs/components/GestureComponents.js +19 -82
- package/lib/commonjs/components/GestureComponents.js.map +1 -1
- package/lib/commonjs/components/GestureComponents.native.js +115 -0
- package/lib/commonjs/components/GestureComponents.native.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerButton.js +13 -3
- package/lib/commonjs/components/GestureHandlerButton.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerButton.native.js +14 -0
- package/lib/commonjs/components/GestureHandlerButton.native.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerRootView.js +0 -6
- package/lib/commonjs/components/GestureHandlerRootView.js.map +1 -1
- package/lib/commonjs/components/{GestureHandlerRootView.web.js → GestureHandlerRootView.native.js} +7 -1
- package/lib/commonjs/components/GestureHandlerRootView.native.js.map +1 -0
- package/lib/commonjs/getReactNativeVersion.js +1 -12
- package/lib/commonjs/getReactNativeVersion.js.map +1 -1
- package/lib/commonjs/getReactNativeVersion.native.js +22 -0
- package/lib/commonjs/getReactNativeVersion.native.js.map +1 -0
- package/lib/commonjs/getShadowNodeFromRef.js +5 -34
- package/lib/commonjs/getShadowNodeFromRef.js.map +1 -1
- package/lib/commonjs/getShadowNodeFromRef.native.js +44 -0
- package/lib/commonjs/getShadowNodeFromRef.native.js.map +1 -0
- package/lib/commonjs/handlers/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/PressabilityDebugView.js +5 -7
- package/lib/commonjs/handlers/PressabilityDebugView.js.map +1 -1
- package/lib/commonjs/handlers/PressabilityDebugView.native.js +14 -0
- package/lib/commonjs/handlers/PressabilityDebugView.native.js.map +1 -0
- package/lib/commonjs/handlers/createHandler.js +9 -3
- package/lib/commonjs/handlers/createHandler.js.map +1 -1
- package/lib/commonjs/handlers/customDirectEventTypes.js +5 -8
- package/lib/commonjs/handlers/customDirectEventTypes.js.map +1 -1
- package/lib/commonjs/handlers/customDirectEventTypes.native.js +14 -0
- package/lib/commonjs/handlers/customDirectEventTypes.native.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector.js +15 -0
- package/lib/commonjs/handlers/gestures/GestureDetector.js.map +1 -1
- package/lib/commonjs/handlers/gestures/flingGesture.js +13 -0
- package/lib/commonjs/handlers/gestures/flingGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js +17 -0
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gesture.js +135 -0
- package/lib/commonjs/handlers/gestures/gesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureObjects.js +66 -0
- package/lib/commonjs/handlers/gestures/gestureObjects.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js +1 -1
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js.map +1 -1
- package/lib/commonjs/handlers/gestures/hoverGesture.js +1 -1
- package/lib/commonjs/handlers/gestures/hoverGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/longPressGesture.js +12 -0
- package/lib/commonjs/handlers/gestures/longPressGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/nativeGesture.js +10 -0
- package/lib/commonjs/handlers/gestures/nativeGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/panGesture.js +76 -0
- package/lib/commonjs/handlers/gestures/panGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/tapGesture.js +42 -0
- package/lib/commonjs/handlers/gestures/tapGesture.js.map +1 -1
- package/lib/commonjs/utils.js +5 -1
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/commonjs/web/handlers/GestureHandler.js +7 -7
- package/lib/commonjs/web/handlers/GestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/PanGestureHandler.js +3 -1
- package/lib/commonjs/web/handlers/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/web/interfaces.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.js +84 -4
- package/lib/module/RNGestureHandlerModule.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.native.js +5 -0
- package/lib/module/RNGestureHandlerModule.native.js.map +1 -0
- package/lib/module/RNRenderer.js +3 -3
- package/lib/module/RNRenderer.js.map +1 -1
- package/lib/module/RNRenderer.native.js +4 -0
- package/lib/module/RNRenderer.native.js.map +1 -0
- package/lib/module/components/GestureComponents.js +18 -80
- package/lib/module/components/GestureComponents.js.map +1 -1
- package/lib/module/components/GestureComponents.native.js +90 -0
- package/lib/module/components/GestureComponents.native.js.map +1 -0
- package/lib/module/components/GestureHandlerButton.js +8 -2
- package/lib/module/components/GestureHandlerButton.js.map +1 -1
- package/lib/module/components/GestureHandlerButton.native.js +3 -0
- package/lib/module/components/GestureHandlerButton.native.js.map +1 -0
- package/lib/module/components/GestureHandlerRootView.js +0 -5
- package/lib/module/components/GestureHandlerRootView.js.map +1 -1
- package/lib/module/components/{GestureHandlerRootView.web.js → GestureHandlerRootView.native.js} +6 -1
- package/lib/module/components/GestureHandlerRootView.native.js.map +1 -0
- package/lib/module/getReactNativeVersion.js +1 -7
- package/lib/module/getReactNativeVersion.js.map +1 -1
- package/lib/module/getReactNativeVersion.native.js +10 -0
- package/lib/module/getReactNativeVersion.native.js.map +1 -0
- package/lib/module/getShadowNodeFromRef.js +4 -33
- package/lib/module/getShadowNodeFromRef.js.map +1 -1
- package/lib/module/getShadowNodeFromRef.native.js +37 -0
- package/lib/module/getShadowNodeFromRef.native.js.map +1 -0
- package/lib/module/handlers/PanGestureHandler.js.map +1 -1
- package/lib/module/handlers/PressabilityDebugView.js +4 -2
- package/lib/module/handlers/PressabilityDebugView.js.map +1 -1
- package/lib/module/handlers/PressabilityDebugView.native.js +3 -0
- package/lib/module/handlers/PressabilityDebugView.native.js.map +1 -0
- package/lib/module/handlers/createHandler.js +9 -3
- package/lib/module/handlers/createHandler.js.map +1 -1
- package/lib/module/handlers/customDirectEventTypes.js +4 -2
- package/lib/module/handlers/customDirectEventTypes.js.map +1 -1
- package/lib/module/handlers/customDirectEventTypes.native.js +3 -0
- package/lib/module/handlers/customDirectEventTypes.native.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector.js +15 -0
- package/lib/module/handlers/gestures/GestureDetector.js.map +1 -1
- package/lib/module/handlers/gestures/flingGesture.js +13 -0
- package/lib/module/handlers/gestures/flingGesture.js.map +1 -1
- package/lib/module/handlers/gestures/forceTouchGesture.js +17 -0
- package/lib/module/handlers/gestures/forceTouchGesture.js.map +1 -1
- package/lib/module/handlers/gestures/gesture.js +135 -0
- package/lib/module/handlers/gestures/gesture.js.map +1 -1
- package/lib/module/handlers/gestures/gestureObjects.js +67 -0
- package/lib/module/handlers/gestures/gestureObjects.js.map +1 -1
- package/lib/module/handlers/gestures/gestureStateManager.web.js +1 -1
- package/lib/module/handlers/gestures/gestureStateManager.web.js.map +1 -1
- package/lib/module/handlers/gestures/hoverGesture.js +1 -1
- package/lib/module/handlers/gestures/hoverGesture.js.map +1 -1
- package/lib/module/handlers/gestures/longPressGesture.js +12 -0
- package/lib/module/handlers/gestures/longPressGesture.js.map +1 -1
- package/lib/module/handlers/gestures/nativeGesture.js +10 -0
- package/lib/module/handlers/gestures/nativeGesture.js.map +1 -1
- package/lib/module/handlers/gestures/panGesture.js +76 -0
- package/lib/module/handlers/gestures/panGesture.js.map +1 -1
- package/lib/module/handlers/gestures/tapGesture.js +42 -0
- package/lib/module/handlers/gestures/tapGesture.js.map +1 -1
- package/lib/module/utils.js +5 -1
- package/lib/module/utils.js.map +1 -1
- package/lib/module/web/handlers/GestureHandler.js +7 -7
- package/lib/module/web/handlers/GestureHandler.js.map +1 -1
- package/lib/module/web/handlers/PanGestureHandler.js +3 -1
- package/lib/module/web/handlers/PanGestureHandler.js.map +1 -1
- package/lib/module/web/interfaces.js.map +1 -1
- package/lib/typescript/RNGestureHandlerModule.d.ts +15 -2
- package/lib/typescript/RNGestureHandlerModule.native.d.ts +2 -0
- package/lib/typescript/RNRenderer.d.ts +3 -1
- package/lib/typescript/RNRenderer.native.d.ts +1 -0
- package/lib/typescript/components/GestureComponents.d.ts +7 -21
- package/lib/typescript/components/GestureComponents.native.d.ts +22 -0
- package/lib/typescript/components/GestureHandlerButton.d.ts +3 -3
- package/lib/typescript/components/GestureHandlerButton.native.d.ts +4 -0
- package/lib/typescript/getReactNativeVersion.d.ts +1 -4
- package/lib/typescript/getReactNativeVersion.native.d.ts +4 -0
- package/lib/typescript/getShadowNodeFromRef.d.ts +1 -1
- package/lib/typescript/getShadowNodeFromRef.native.d.ts +1 -0
- package/lib/typescript/handlers/PanGestureHandler.d.ts +4 -4
- package/lib/typescript/handlers/PressabilityDebugView.d.ts +1 -1
- package/lib/typescript/handlers/PressabilityDebugView.native.d.ts +1 -0
- package/lib/typescript/handlers/customDirectEventTypes.d.ts +2 -1
- package/lib/typescript/handlers/customDirectEventTypes.native.d.ts +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector.d.ts +36 -0
- package/lib/typescript/handlers/gestures/flingGesture.d.ts +11 -0
- package/lib/typescript/handlers/gestures/forceTouchGesture.d.ts +14 -0
- package/lib/typescript/handlers/gestures/gesture.d.ts +113 -0
- package/lib/typescript/handlers/gestures/gestureObjects.d.ts +57 -0
- package/lib/typescript/handlers/gestures/hoverGesture.d.ts +1 -1
- package/lib/typescript/handlers/gestures/longPressGesture.d.ts +10 -0
- package/lib/typescript/handlers/gestures/nativeGesture.d.ts +8 -0
- package/lib/typescript/handlers/gestures/panGesture.d.ts +67 -4
- package/lib/typescript/handlers/gestures/tapGesture.d.ts +35 -0
- package/lib/typescript/web/handlers/GestureHandler.d.ts +2 -2
- package/lib/typescript/web/handlers/IGestureHandler.d.ts +1 -1
- package/lib/typescript/web/interfaces.d.ts +1 -0
- package/package.json +3 -2
- package/src/RNGestureHandlerModule.native.ts +5 -0
- package/src/RNGestureHandlerModule.ts +104 -4
- package/src/RNRenderer.native.ts +3 -0
- package/src/RNRenderer.ts +3 -3
- package/src/components/GestureComponents.native.tsx +148 -0
- package/src/components/GestureComponents.tsx +24 -131
- package/src/components/GestureHandlerButton.native.tsx +5 -0
- package/src/components/GestureHandlerButton.tsx +5 -4
- package/src/components/{GestureHandlerRootView.web.tsx → GestureHandlerRootView.native.tsx} +6 -0
- package/src/components/GestureHandlerRootView.tsx +0 -6
- package/src/getReactNativeVersion.native.ts +11 -0
- package/src/getReactNativeVersion.ts +1 -9
- package/src/getShadowNodeFromRef.native.ts +44 -0
- package/src/getShadowNodeFromRef.ts +4 -41
- package/src/handlers/PanGestureHandler.ts +8 -4
- package/src/handlers/PressabilityDebugView.native.tsx +2 -0
- package/src/handlers/PressabilityDebugView.tsx +4 -2
- package/src/handlers/createHandler.tsx +14 -10
- package/src/handlers/customDirectEventTypes.native.ts +2 -0
- package/src/handlers/customDirectEventTypes.ts +5 -2
- package/src/handlers/gestures/GestureDetector.tsx +47 -4
- package/src/handlers/gestures/flingGesture.ts +11 -0
- package/src/handlers/gestures/forceTouchGesture.ts +14 -0
- package/src/handlers/gestures/gesture.ts +113 -0
- package/src/handlers/gestures/gestureObjects.ts +57 -0
- package/src/handlers/gestures/gestureStateManager.web.ts +1 -1
- package/src/handlers/gestures/hoverGesture.ts +1 -1
- package/src/handlers/gestures/longPressGesture.ts +10 -0
- package/src/handlers/gestures/nativeGesture.ts +8 -0
- package/src/handlers/gestures/panGesture.ts +75 -4
- package/src/handlers/gestures/tapGesture.ts +35 -0
- package/src/utils.ts +9 -2
- package/src/web/handlers/GestureHandler.ts +9 -9
- package/src/web/handlers/IGestureHandler.ts +1 -1
- package/src/web/handlers/PanGestureHandler.ts +4 -0
- package/src/web/interfaces.ts +1 -0
- package/lib/commonjs/RNGestureHandlerModule.web.js +0 -109
- package/lib/commonjs/RNGestureHandlerModule.web.js.map +0 -1
- package/lib/commonjs/RNRenderer.web.js +0 -11
- package/lib/commonjs/RNRenderer.web.js.map +0 -1
- package/lib/commonjs/components/GestureComponents.web.js +0 -52
- package/lib/commonjs/components/GestureComponents.web.js.map +0 -1
- package/lib/commonjs/components/GestureHandlerButton.web.js +0 -24
- package/lib/commonjs/components/GestureHandlerButton.web.js.map +0 -1
- package/lib/commonjs/components/GestureHandlerRootView.web.js.map +0 -1
- package/lib/commonjs/getReactNativeVersion.web.js +0 -11
- package/lib/commonjs/getReactNativeVersion.web.js.map +0 -1
- package/lib/commonjs/getShadowNodeFromRef.web.js +0 -15
- package/lib/commonjs/getShadowNodeFromRef.web.js.map +0 -1
- package/lib/commonjs/handlers/PressabilityDebugView.web.js +0 -12
- package/lib/commonjs/handlers/PressabilityDebugView.web.js.map +0 -1
- package/lib/commonjs/handlers/customDirectEventTypes.web.js +0 -11
- package/lib/commonjs/handlers/customDirectEventTypes.web.js.map +0 -1
- package/lib/module/RNGestureHandlerModule.web.js +0 -85
- package/lib/module/RNGestureHandlerModule.web.js.map +0 -1
- package/lib/module/RNRenderer.web.js +0 -4
- package/lib/module/RNRenderer.web.js.map +0 -1
- package/lib/module/components/GestureComponents.web.js +0 -28
- package/lib/module/components/GestureComponents.web.js.map +0 -1
- package/lib/module/components/GestureHandlerButton.web.js +0 -9
- package/lib/module/components/GestureHandlerButton.web.js.map +0 -1
- package/lib/module/components/GestureHandlerRootView.web.js.map +0 -1
- package/lib/module/getReactNativeVersion.web.js +0 -4
- package/lib/module/getReactNativeVersion.web.js.map +0 -1
- package/lib/module/getShadowNodeFromRef.web.js +0 -8
- package/lib/module/getShadowNodeFromRef.web.js.map +0 -1
- package/lib/module/handlers/PressabilityDebugView.web.js +0 -5
- package/lib/module/handlers/PressabilityDebugView.web.js.map +0 -1
- package/lib/module/handlers/customDirectEventTypes.web.js +0 -5
- package/lib/module/handlers/customDirectEventTypes.web.js.map +0 -1
- package/lib/typescript/RNGestureHandlerModule.web.d.ts +0 -15
- package/lib/typescript/RNRenderer.web.d.ts +0 -3
- package/lib/typescript/components/GestureComponents.web.d.ts +0 -8
- package/lib/typescript/components/GestureHandlerButton.web.d.ts +0 -4
- package/lib/typescript/getReactNativeVersion.web.d.ts +0 -1
- package/lib/typescript/getShadowNodeFromRef.web.d.ts +0 -1
- package/lib/typescript/handlers/PressabilityDebugView.web.d.ts +0 -1
- package/lib/typescript/handlers/customDirectEventTypes.web.d.ts +0 -2
- package/src/RNGestureHandlerModule.web.ts +0 -105
- package/src/RNRenderer.web.ts +0 -3
- package/src/components/GestureComponents.web.tsx +0 -41
- package/src/components/GestureHandlerButton.web.tsx +0 -6
- package/src/getReactNativeVersion.web.ts +0 -3
- package/src/getShadowNodeFromRef.web.ts +0 -7
- package/src/handlers/PressabilityDebugView.web.tsx +0 -4
- package/src/handlers/customDirectEventTypes.web.ts +0 -5
- /package/lib/typescript/components/{GestureHandlerRootView.web.d.ts → GestureHandlerRootView.native.d.ts} +0 -0
@@ -15,43 +15,97 @@ import { NativeGesture } from './nativeGesture';
|
|
15
15
|
import { ManualGesture } from './manualGesture';
|
16
16
|
import { HoverGesture } from './hoverGesture';
|
17
17
|
|
18
|
+
/**
|
19
|
+
* `Gesture` is the object that allows you to create and compose gestures.
|
20
|
+
*
|
21
|
+
* ### Remarks
|
22
|
+
* - Consider wrapping your gesture configurations with `useMemo`, as it will reduce the amount of work Gesture Handler has to do under the hood when updating gestures.
|
23
|
+
*
|
24
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/gesture
|
25
|
+
*/
|
18
26
|
export const GestureObjects = {
|
27
|
+
/**
|
28
|
+
* A discrete gesture that recognizes one or many taps.
|
29
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/tap-gesture
|
30
|
+
*/
|
19
31
|
Tap: () => {
|
20
32
|
return new TapGesture();
|
21
33
|
},
|
22
34
|
|
35
|
+
/**
|
36
|
+
* A continuous gesture that can recognize a panning (dragging) gesture and track its movement.
|
37
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/pan-gesture
|
38
|
+
*/
|
23
39
|
Pan: () => {
|
24
40
|
return new PanGesture();
|
25
41
|
},
|
26
42
|
|
43
|
+
/**
|
44
|
+
* A continuous gesture that recognizes pinch gesture. It allows for tracking the distance between two fingers and use that information to scale or zoom your content.
|
45
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/pinch-gesture
|
46
|
+
*/
|
27
47
|
Pinch: () => {
|
28
48
|
return new PinchGesture();
|
29
49
|
},
|
30
50
|
|
51
|
+
/**
|
52
|
+
* A continuous gesture that can recognize rotation and track its movement.
|
53
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/rotation-gesture
|
54
|
+
*/
|
31
55
|
Rotation: () => {
|
32
56
|
return new RotationGesture();
|
33
57
|
},
|
34
58
|
|
59
|
+
/**
|
60
|
+
* A discrete gesture that activates when the movement is sufficiently fast.
|
61
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/fling-gesture
|
62
|
+
*/
|
35
63
|
Fling: () => {
|
36
64
|
return new FlingGesture();
|
37
65
|
},
|
38
66
|
|
67
|
+
/**
|
68
|
+
* A discrete gesture that activates when the corresponding view is pressed for a sufficiently long time.
|
69
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/long-press-gesture
|
70
|
+
*/
|
39
71
|
LongPress: () => {
|
40
72
|
return new LongPressGesture();
|
41
73
|
},
|
42
74
|
|
75
|
+
/**
|
76
|
+
* #### iOS only
|
77
|
+
* A continuous gesture that recognizes force of a touch. It allows for tracking pressure of touch on some iOS devices.
|
78
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/force-touch-gesture
|
79
|
+
*/
|
43
80
|
ForceTouch: () => {
|
44
81
|
return new ForceTouchGesture();
|
45
82
|
},
|
46
83
|
|
84
|
+
/**
|
85
|
+
* A gesture that allows other touch handling components to participate in RNGH's gesture system.
|
86
|
+
* When used, the other component should be the direct child of a `GestureDetector`.
|
87
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/native-gesture
|
88
|
+
*/
|
47
89
|
Native: () => {
|
48
90
|
return new NativeGesture();
|
49
91
|
},
|
50
92
|
|
93
|
+
/**
|
94
|
+
* A plain gesture that has no specific activation criteria nor event data set.
|
95
|
+
* Its state has to be controlled manually using a state manager.
|
96
|
+
* It will not fail when all the pointers are lifted from the screen.
|
97
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/manual-gesture
|
98
|
+
*/
|
51
99
|
Manual: () => {
|
52
100
|
return new ManualGesture();
|
53
101
|
},
|
54
102
|
|
103
|
+
/**
|
104
|
+
* A continuous gesture that can recognize hovering above the view it's attached to.
|
105
|
+
* The hover effect may be activated by moving a mouse or a stylus over the view.
|
106
|
+
*
|
107
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/hover-gesture
|
108
|
+
*/
|
55
109
|
Hover: () => {
|
56
110
|
return new HoverGesture();
|
57
111
|
},
|
@@ -59,6 +113,7 @@ export const GestureObjects = {
|
|
59
113
|
/**
|
60
114
|
* Builds a composed gesture consisting of gestures provided as parameters.
|
61
115
|
* The first one that becomes active cancels the rest of gestures.
|
116
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/fundamentals/gesture-composition/#race
|
62
117
|
*/
|
63
118
|
Race: (...gestures: Gesture[]) => {
|
64
119
|
return new ComposedGesture(...gestures);
|
@@ -66,6 +121,7 @@ export const GestureObjects = {
|
|
66
121
|
|
67
122
|
/**
|
68
123
|
* Builds a composed gesture that allows all base gestures to run simultaneously.
|
124
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/fundamentals/gesture-composition/#simultaneous
|
69
125
|
*/
|
70
126
|
Simultaneous(...gestures: Gesture[]) {
|
71
127
|
return new SimultaneousGesture(...gestures);
|
@@ -77,6 +133,7 @@ export const GestureObjects = {
|
|
77
133
|
* than the second one, second one has higher priority than the third one, and so on.
|
78
134
|
* For example, to make a gesture that recognizes both single and double tap you need
|
79
135
|
* to call Exclusive(doubleTap, singleTap).
|
136
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/fundamentals/gesture-composition/#exclusive
|
80
137
|
*/
|
81
138
|
Exclusive(...gestures: Gesture[]) {
|
82
139
|
return new ExclusiveGesture(...gestures);
|
@@ -14,11 +14,21 @@ export class LongPressGesture extends BaseGesture<LongPressGestureHandlerEventPa
|
|
14
14
|
this.shouldCancelWhenOutside(true);
|
15
15
|
}
|
16
16
|
|
17
|
+
/**
|
18
|
+
* Minimum time, expressed in milliseconds, that a finger must remain pressed on the corresponding view.
|
19
|
+
* The default value is 500.
|
20
|
+
* @param duration
|
21
|
+
*/
|
17
22
|
minDuration(duration: number) {
|
18
23
|
this.config.minDurationMs = duration;
|
19
24
|
return this;
|
20
25
|
}
|
21
26
|
|
27
|
+
/**
|
28
|
+
* Maximum distance, expressed in points, that defines how far the finger is allowed to travel during a long press gesture.
|
29
|
+
* @param distance
|
30
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/long-press-gesture#maxdistancevalue-number
|
31
|
+
*/
|
22
32
|
maxDistance(distance: number) {
|
23
33
|
this.config.maxDist = distance;
|
24
34
|
return this;
|
@@ -13,11 +13,19 @@ export class NativeGesture extends BaseGesture<NativeViewGestureHandlerPayload>
|
|
13
13
|
this.handlerName = 'NativeViewGestureHandler';
|
14
14
|
}
|
15
15
|
|
16
|
+
/**
|
17
|
+
* When true, underlying handler will activate unconditionally when in `BEGAN` or `UNDETERMINED` state.
|
18
|
+
* @param value
|
19
|
+
*/
|
16
20
|
shouldActivateOnStart(value: boolean) {
|
17
21
|
this.config.shouldActivateOnStart = value;
|
18
22
|
return this;
|
19
23
|
}
|
20
24
|
|
25
|
+
/**
|
26
|
+
* When true, cancels all other gesture handlers when this `NativeViewGestureHandler` receives an `ACTIVE` state event.
|
27
|
+
* @param value
|
28
|
+
*/
|
21
29
|
disallowInterruption(value: boolean) {
|
22
30
|
this.config.disallowInterruption = value;
|
23
31
|
return this;
|
@@ -43,7 +43,14 @@ export class PanGesture extends ContinousBaseGesture<
|
|
43
43
|
this.handlerName = 'PanGestureHandler';
|
44
44
|
}
|
45
45
|
|
46
|
-
|
46
|
+
/**
|
47
|
+
* Range along Y axis (in points) where fingers travels without activation of gesture.
|
48
|
+
* @param offset
|
49
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/pan-gesture#activeoffsetyvalue-number--number
|
50
|
+
*/
|
51
|
+
activeOffsetY(
|
52
|
+
offset: number | [activeOffsetYStart: number, activeOffsetYEnd: number]
|
53
|
+
) {
|
47
54
|
if (Array.isArray(offset)) {
|
48
55
|
this.config.activeOffsetYStart = offset[0];
|
49
56
|
this.config.activeOffsetYEnd = offset[1];
|
@@ -55,7 +62,14 @@ export class PanGesture extends ContinousBaseGesture<
|
|
55
62
|
return this;
|
56
63
|
}
|
57
64
|
|
58
|
-
|
65
|
+
/**
|
66
|
+
* Range along X axis (in points) where fingers travels without activation of gesture.
|
67
|
+
* @param offset
|
68
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/pan-gesture#activeoffsetxvalue-number--number
|
69
|
+
*/
|
70
|
+
activeOffsetX(
|
71
|
+
offset: number | [activeOffsetXStart: number, activeOffsetXEnd: number]
|
72
|
+
) {
|
59
73
|
if (Array.isArray(offset)) {
|
60
74
|
this.config.activeOffsetXStart = offset[0];
|
61
75
|
this.config.activeOffsetXEnd = offset[1];
|
@@ -67,7 +81,14 @@ export class PanGesture extends ContinousBaseGesture<
|
|
67
81
|
return this;
|
68
82
|
}
|
69
83
|
|
70
|
-
|
84
|
+
/**
|
85
|
+
* When the finger moves outside this range (in points) along Y axis and gesture hasn't yet activated it will fail recognizing the gesture.
|
86
|
+
* @param offset
|
87
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/pan-gesture#failoffsetyvalue-number--number
|
88
|
+
*/
|
89
|
+
failOffsetY(
|
90
|
+
offset: number | [failOffsetYStart: number, failOffsetYEnd: number]
|
91
|
+
) {
|
71
92
|
if (Array.isArray(offset)) {
|
72
93
|
this.config.failOffsetYStart = offset[0];
|
73
94
|
this.config.failOffsetYEnd = offset[1];
|
@@ -79,7 +100,14 @@ export class PanGesture extends ContinousBaseGesture<
|
|
79
100
|
return this;
|
80
101
|
}
|
81
102
|
|
82
|
-
|
103
|
+
/**
|
104
|
+
* When the finger moves outside this range (in points) along X axis and gesture hasn't yet activated it will fail recognizing the gesture.
|
105
|
+
* @param offset
|
106
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/pan-gesture#failoffsetxvalue-number--number
|
107
|
+
*/
|
108
|
+
failOffsetX(
|
109
|
+
offset: number | [failOffsetXStart: number, failOffsetXEnd: number]
|
110
|
+
) {
|
83
111
|
if (Array.isArray(offset)) {
|
84
112
|
this.config.failOffsetXStart = offset[0];
|
85
113
|
this.config.failOffsetXEnd = offset[1];
|
@@ -91,46 +119,89 @@ export class PanGesture extends ContinousBaseGesture<
|
|
91
119
|
return this;
|
92
120
|
}
|
93
121
|
|
122
|
+
/**
|
123
|
+
* A number of fingers that is required to be placed before gesture can activate. Should be a higher or equal to 0 integer.
|
124
|
+
* @param minPointers
|
125
|
+
*/
|
94
126
|
minPointers(minPointers: number) {
|
95
127
|
this.config.minPointers = minPointers;
|
96
128
|
return this;
|
97
129
|
}
|
98
130
|
|
131
|
+
/**
|
132
|
+
* When the given number of fingers is placed on the screen and gesture hasn't yet activated it will fail recognizing the gesture.
|
133
|
+
* Should be a higher or equal to 0 integer.
|
134
|
+
* @param maxPointers
|
135
|
+
*/
|
99
136
|
maxPointers(maxPointers: number) {
|
100
137
|
this.config.maxPointers = maxPointers;
|
101
138
|
return this;
|
102
139
|
}
|
103
140
|
|
141
|
+
/**
|
142
|
+
* Minimum distance the finger (or multiple finger) need to travel before the gesture activates.
|
143
|
+
* Expressed in points.
|
144
|
+
* @param distance
|
145
|
+
*/
|
104
146
|
minDistance(distance: number) {
|
105
147
|
this.config.minDist = distance;
|
106
148
|
return this;
|
107
149
|
}
|
108
150
|
|
151
|
+
/**
|
152
|
+
* Minimum velocity the finger has to reach in order to activate handler.
|
153
|
+
* @param velocity
|
154
|
+
*/
|
109
155
|
minVelocity(velocity: number) {
|
110
156
|
this.config.minVelocity = velocity;
|
111
157
|
return this;
|
112
158
|
}
|
113
159
|
|
160
|
+
/**
|
161
|
+
* Minimum velocity along X axis the finger has to reach in order to activate handler.
|
162
|
+
* @param velocity
|
163
|
+
*/
|
114
164
|
minVelocityX(velocity: number) {
|
115
165
|
this.config.minVelocityX = velocity;
|
116
166
|
return this;
|
117
167
|
}
|
118
168
|
|
169
|
+
/**
|
170
|
+
* Minimum velocity along Y axis the finger has to reach in order to activate handler.
|
171
|
+
* @param velocity
|
172
|
+
*/
|
119
173
|
minVelocityY(velocity: number) {
|
120
174
|
this.config.minVelocityY = velocity;
|
121
175
|
return this;
|
122
176
|
}
|
123
177
|
|
178
|
+
/**
|
179
|
+
* #### Android only
|
180
|
+
* Android, by default, will calculate translation values based on the position of the leading pointer (the first one that was placed on the screen).
|
181
|
+
* This modifier allows that behavior to be changed to the one that is default on iOS - the averaged position of all active pointers will be used to calculate the translation values.
|
182
|
+
* @param value
|
183
|
+
*/
|
124
184
|
averageTouches(value: boolean) {
|
125
185
|
this.config.avgTouches = value;
|
126
186
|
return this;
|
127
187
|
}
|
128
188
|
|
189
|
+
/**
|
190
|
+
* #### iOS only
|
191
|
+
* Enables two-finger gestures on supported devices, for example iPads with trackpads.
|
192
|
+
* @param value
|
193
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/pan-gesture/#enabletrackpadtwofingergesturevalue-boolean-ios-only
|
194
|
+
*/
|
129
195
|
enableTrackpadTwoFingerGesture(value: boolean) {
|
130
196
|
this.config.enableTrackpadTwoFingerGesture = value;
|
131
197
|
return this;
|
132
198
|
}
|
133
199
|
|
200
|
+
/**
|
201
|
+
* Duration in milliseconds of the LongPress gesture before Pan is allowed to activate.
|
202
|
+
* @param duration
|
203
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/pan-gesture/#activateafterlongpressduration-number
|
204
|
+
*/
|
134
205
|
activateAfterLongPress(duration: number) {
|
135
206
|
this.config.activateAfterLongPress = duration;
|
136
207
|
return this;
|
@@ -14,36 +14,71 @@ export class TapGesture extends BaseGesture<TapGestureHandlerEventPayload> {
|
|
14
14
|
this.shouldCancelWhenOutside(true);
|
15
15
|
}
|
16
16
|
|
17
|
+
/**
|
18
|
+
* Minimum number of pointers (fingers) required to be placed before the gesture activates.
|
19
|
+
* Should be a positive integer. The default value is 1.
|
20
|
+
* @param minPointers
|
21
|
+
*/
|
17
22
|
minPointers(minPointers: number) {
|
18
23
|
this.config.minPointers = minPointers;
|
19
24
|
return this;
|
20
25
|
}
|
21
26
|
|
27
|
+
/**
|
28
|
+
* Number of tap gestures required to activate the gesture.
|
29
|
+
* The default value is 1.
|
30
|
+
* @param count
|
31
|
+
*/
|
22
32
|
numberOfTaps(count: number) {
|
23
33
|
this.config.numberOfTaps = count;
|
24
34
|
return this;
|
25
35
|
}
|
26
36
|
|
37
|
+
/**
|
38
|
+
* Maximum distance, expressed in points, that defines how far the finger is allowed to travel during a tap gesture.
|
39
|
+
* @param maxDist
|
40
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/tap-gesture#maxdistancevalue-number
|
41
|
+
*/
|
27
42
|
maxDistance(maxDist: number) {
|
28
43
|
this.config.maxDist = maxDist;
|
29
44
|
return this;
|
30
45
|
}
|
31
46
|
|
47
|
+
/**
|
48
|
+
* Maximum time, expressed in milliseconds, that defines how fast a finger must be released after a touch.
|
49
|
+
* The default value is 500.
|
50
|
+
* @param duration
|
51
|
+
*/
|
32
52
|
maxDuration(duration: number) {
|
33
53
|
this.config.maxDurationMs = duration;
|
34
54
|
return this;
|
35
55
|
}
|
36
56
|
|
57
|
+
/**
|
58
|
+
* Maximum time, expressed in milliseconds, that can pass before the next tap — if many taps are required.
|
59
|
+
* The default value is 500.
|
60
|
+
* @param delay
|
61
|
+
*/
|
37
62
|
maxDelay(delay: number) {
|
38
63
|
this.config.maxDelayMs = delay;
|
39
64
|
return this;
|
40
65
|
}
|
41
66
|
|
67
|
+
/**
|
68
|
+
* Maximum distance, expressed in points, that defines how far the finger is allowed to travel along the X axis during a tap gesture.
|
69
|
+
* @param delta
|
70
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/tap-gesture#maxdeltaxvalue-number
|
71
|
+
*/
|
42
72
|
maxDeltaX(delta: number) {
|
43
73
|
this.config.maxDeltaX = delta;
|
44
74
|
return this;
|
45
75
|
}
|
46
76
|
|
77
|
+
/**
|
78
|
+
* Maximum distance, expressed in points, that defines how far the finger is allowed to travel along the Y axis during a tap gesture.
|
79
|
+
* @param delta
|
80
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/tap-gesture#maxdeltayvalue-number
|
81
|
+
*/
|
47
82
|
maxDeltaY(delta: number) {
|
48
83
|
this.config.maxDeltaY = delta;
|
49
84
|
return this;
|
package/src/utils.ts
CHANGED
@@ -18,7 +18,10 @@ export function withPrevAndCurrent<T, Transformed>(
|
|
18
18
|
const currentArr = [...array];
|
19
19
|
const transformedArr: Transformed[] = [];
|
20
20
|
currentArr.forEach((current, i) => {
|
21
|
-
|
21
|
+
// This type cast is fine and solves problem mentioned in https://github.com/software-mansion/react-native-gesture-handler/pull/2867 (namely that `previous` can be undefined).
|
22
|
+
// Unfortunately, linter on our CI does not allow this type of casting as it is unnecessary. To bypass that we use eslint-disable.
|
23
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
|
24
|
+
const previous = previousArr[i] as Transformed | null;
|
22
25
|
const transformed = mapFn(previous, current);
|
23
26
|
previousArr.push(transformed);
|
24
27
|
transformedArr.push(transformed);
|
@@ -50,5 +53,9 @@ export function isFabric(): boolean {
|
|
50
53
|
export function isRemoteDebuggingEnabled(): boolean {
|
51
54
|
// react-native-reanimated checks if in remote debugging in the same way
|
52
55
|
// @ts-ignore global is available but node types are not included
|
53
|
-
|
56
|
+
const localGlobal = global as any;
|
57
|
+
return (
|
58
|
+
(!localGlobal.nativeCallSyncHook || !!localGlobal.__REMOTEDEV__) &&
|
59
|
+
!localGlobal.RN$Bridgeless
|
60
|
+
);
|
54
61
|
}
|
@@ -23,7 +23,7 @@ export default abstract class GestureHandler implements IGestureHandler {
|
|
23
23
|
private lastSentState: State | null = null;
|
24
24
|
protected currentState: State = State.UNDETERMINED;
|
25
25
|
|
26
|
-
protected
|
26
|
+
protected shouldCancelWhenOutside = false;
|
27
27
|
protected hasCustomActivationCriteria = false;
|
28
28
|
protected enabled = false;
|
29
29
|
|
@@ -176,13 +176,13 @@ export default abstract class GestureHandler implements IGestureHandler {
|
|
176
176
|
}
|
177
177
|
}
|
178
178
|
|
179
|
-
public activate(
|
179
|
+
public activate(force = false) {
|
180
180
|
if (
|
181
|
-
this.
|
182
|
-
this.currentState === State.
|
181
|
+
(this.config.manualActivation !== true || force) &&
|
182
|
+
(this.currentState === State.UNDETERMINED ||
|
183
|
+
this.currentState === State.BEGAN)
|
183
184
|
) {
|
184
185
|
this.delegate.onActivate();
|
185
|
-
|
186
186
|
this.moveToState(State.ACTIVE);
|
187
187
|
}
|
188
188
|
}
|
@@ -317,7 +317,7 @@ export default abstract class GestureHandler implements IGestureHandler {
|
|
317
317
|
}
|
318
318
|
}
|
319
319
|
protected onPointerLeave(event: AdaptedEvent): void {
|
320
|
-
if (this.
|
320
|
+
if (this.shouldCancelWhenOutside) {
|
321
321
|
switch (this.currentState) {
|
322
322
|
case State.ACTIVE:
|
323
323
|
this.cancel();
|
@@ -362,7 +362,7 @@ export default abstract class GestureHandler implements IGestureHandler {
|
|
362
362
|
if (
|
363
363
|
this.enabled &&
|
364
364
|
this.active &&
|
365
|
-
(!out || (out && !this.
|
365
|
+
(!out || (out && !this.shouldCancelWhenOutside))
|
366
366
|
) {
|
367
367
|
this.sendEvent(this.currentState, this.currentState);
|
368
368
|
}
|
@@ -805,11 +805,11 @@ export default abstract class GestureHandler implements IGestureHandler {
|
|
805
805
|
}
|
806
806
|
|
807
807
|
protected setShouldCancelWhenOutside(shouldCancel: boolean) {
|
808
|
-
this.
|
808
|
+
this.shouldCancelWhenOutside = shouldCancel;
|
809
809
|
}
|
810
810
|
|
811
811
|
protected getShouldCancelWhenOutside(): boolean {
|
812
|
-
return this.
|
812
|
+
return this.shouldCancelWhenOutside;
|
813
813
|
}
|
814
814
|
|
815
815
|
public getPointerType(): PointerType {
|
@@ -20,6 +20,7 @@ export default class PanGestureHandler extends GestureHandler {
|
|
20
20
|
'failOffsetYEnd',
|
21
21
|
'minVelocityX',
|
22
22
|
'minVelocityY',
|
23
|
+
'minVelocity',
|
23
24
|
];
|
24
25
|
|
25
26
|
public velocityX = 0;
|
@@ -221,6 +222,9 @@ export default class PanGestureHandler extends GestureHandler {
|
|
221
222
|
this.lastX = this.tracker.getLastAvgX();
|
222
223
|
this.lastY = this.tracker.getLastAvgY();
|
223
224
|
|
225
|
+
this.startX = this.lastX;
|
226
|
+
this.startY = this.lastY;
|
227
|
+
|
224
228
|
this.tryBegin(event);
|
225
229
|
this.checkBegan();
|
226
230
|
}
|
package/src/web/interfaces.ts
CHANGED
@@ -1,109 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.default = void 0;
|
7
|
-
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
9
|
-
|
10
|
-
var _EnableNewWebImplementation = require("./EnableNewWebImplementation");
|
11
|
-
|
12
|
-
var _Gestures = require("./web/Gestures");
|
13
|
-
|
14
|
-
var _InteractionManager = _interopRequireDefault(require("./web/tools/InteractionManager"));
|
15
|
-
|
16
|
-
var _NodeManager = _interopRequireDefault(require("./web/tools/NodeManager"));
|
17
|
-
|
18
|
-
var HammerNodeManager = _interopRequireWildcard(require("./web_hammer/NodeManager"));
|
19
|
-
|
20
|
-
var _GestureHandlerWebDelegate = require("./web/tools/GestureHandlerWebDelegate");
|
21
|
-
|
22
|
-
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
23
|
-
|
24
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
25
|
-
|
26
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
27
|
-
|
28
|
-
var _default = {
|
29
|
-
handleSetJSResponder(tag, blockNativeResponder) {
|
30
|
-
console.warn('handleSetJSResponder: ', tag, blockNativeResponder);
|
31
|
-
},
|
32
|
-
|
33
|
-
handleClearJSResponder() {
|
34
|
-
console.warn('handleClearJSResponder: ');
|
35
|
-
},
|
36
|
-
|
37
|
-
createGestureHandler(handlerName, handlerTag, config) {
|
38
|
-
if ((0, _EnableNewWebImplementation.isNewWebImplementationEnabled)()) {
|
39
|
-
if (!(handlerName in _Gestures.Gestures)) {
|
40
|
-
throw new Error(`react-native-gesture-handler: ${handlerName} is not supported on web.`);
|
41
|
-
}
|
42
|
-
|
43
|
-
const GestureClass = _Gestures.Gestures[handlerName];
|
44
|
-
|
45
|
-
_NodeManager.default.createGestureHandler(handlerTag, new GestureClass(new _GestureHandlerWebDelegate.GestureHandlerWebDelegate()));
|
46
|
-
|
47
|
-
_InteractionManager.default.getInstance().configureInteractions(_NodeManager.default.getHandler(handlerTag), config);
|
48
|
-
} else {
|
49
|
-
if (!(handlerName in _Gestures.HammerGestures)) {
|
50
|
-
throw new Error(`react-native-gesture-handler: ${handlerName} is not supported on web.`);
|
51
|
-
} // @ts-ignore If it doesn't exist, the error is thrown
|
52
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
53
|
-
|
54
|
-
|
55
|
-
const GestureClass = _Gestures.HammerGestures[handlerName]; // eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
56
|
-
|
57
|
-
HammerNodeManager.createGestureHandler(handlerTag, new GestureClass());
|
58
|
-
}
|
59
|
-
|
60
|
-
this.updateGestureHandler(handlerTag, config);
|
61
|
-
},
|
62
|
-
|
63
|
-
attachGestureHandler(handlerTag, // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
64
|
-
newView, _actionType, propsRef) {
|
65
|
-
if (!(newView instanceof HTMLElement || newView instanceof _react.default.Component)) {
|
66
|
-
return;
|
67
|
-
}
|
68
|
-
|
69
|
-
if ((0, _EnableNewWebImplementation.isNewWebImplementationEnabled)()) {
|
70
|
-
//@ts-ignore Types should be HTMLElement or React.Component
|
71
|
-
_NodeManager.default.getHandler(handlerTag).init(newView, propsRef);
|
72
|
-
} else {
|
73
|
-
//@ts-ignore Types should be HTMLElement or React.Component
|
74
|
-
HammerNodeManager.getHandler(handlerTag).setView(newView, propsRef);
|
75
|
-
}
|
76
|
-
},
|
77
|
-
|
78
|
-
updateGestureHandler(handlerTag, newConfig) {
|
79
|
-
if ((0, _EnableNewWebImplementation.isNewWebImplementationEnabled)()) {
|
80
|
-
_NodeManager.default.getHandler(handlerTag).updateGestureConfig(newConfig);
|
81
|
-
|
82
|
-
_InteractionManager.default.getInstance().configureInteractions(_NodeManager.default.getHandler(handlerTag), newConfig);
|
83
|
-
} else {
|
84
|
-
HammerNodeManager.getHandler(handlerTag).updateGestureConfig(newConfig);
|
85
|
-
}
|
86
|
-
},
|
87
|
-
|
88
|
-
getGestureHandlerNode(handlerTag) {
|
89
|
-
if ((0, _EnableNewWebImplementation.isNewWebImplementationEnabled)()) {
|
90
|
-
return _NodeManager.default.getHandler(handlerTag);
|
91
|
-
} else {
|
92
|
-
return HammerNodeManager.getHandler(handlerTag);
|
93
|
-
}
|
94
|
-
},
|
95
|
-
|
96
|
-
dropGestureHandler(handlerTag) {
|
97
|
-
if ((0, _EnableNewWebImplementation.isNewWebImplementationEnabled)()) {
|
98
|
-
_NodeManager.default.dropGestureHandler(handlerTag);
|
99
|
-
} else {
|
100
|
-
HammerNodeManager.dropGestureHandler(handlerTag);
|
101
|
-
}
|
102
|
-
},
|
103
|
-
|
104
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
105
|
-
flushOperations() {}
|
106
|
-
|
107
|
-
};
|
108
|
-
exports.default = _default;
|
109
|
-
//# sourceMappingURL=RNGestureHandlerModule.web.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["RNGestureHandlerModule.web.ts"],"names":["handleSetJSResponder","tag","blockNativeResponder","console","warn","handleClearJSResponder","createGestureHandler","handlerName","handlerTag","config","Gestures","Error","GestureClass","NodeManager","GestureHandlerWebDelegate","InteractionManager","getInstance","configureInteractions","getHandler","HammerGestures","HammerNodeManager","updateGestureHandler","attachGestureHandler","newView","_actionType","propsRef","HTMLElement","React","Component","init","setView","newConfig","updateGestureConfig","getGestureHandlerNode","dropGestureHandler","flushOperations"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport type { ActionType } from './ActionType';\nimport { isNewWebImplementationEnabled } from './EnableNewWebImplementation';\nimport { Gestures, HammerGestures } from './web/Gestures';\nimport type { Config } from './web/interfaces';\nimport InteractionManager from './web/tools/InteractionManager';\nimport NodeManager from './web/tools/NodeManager';\nimport * as HammerNodeManager from './web_hammer/NodeManager';\nimport { GestureHandlerWebDelegate } from './web/tools/GestureHandlerWebDelegate';\n\nexport default {\n handleSetJSResponder(tag: number, blockNativeResponder: boolean) {\n console.warn('handleSetJSResponder: ', tag, blockNativeResponder);\n },\n handleClearJSResponder() {\n console.warn('handleClearJSResponder: ');\n },\n createGestureHandler<T>(\n handlerName: keyof typeof Gestures,\n handlerTag: number,\n config: T\n ) {\n if (isNewWebImplementationEnabled()) {\n if (!(handlerName in Gestures)) {\n throw new Error(\n `react-native-gesture-handler: ${handlerName} is not supported on web.`\n );\n }\n\n const GestureClass = Gestures[handlerName];\n NodeManager.createGestureHandler(\n handlerTag,\n new GestureClass(new GestureHandlerWebDelegate())\n );\n InteractionManager.getInstance().configureInteractions(\n NodeManager.getHandler(handlerTag),\n config as unknown as Config\n );\n } else {\n if (!(handlerName in HammerGestures)) {\n throw new Error(\n `react-native-gesture-handler: ${handlerName} is not supported on web.`\n );\n }\n\n // @ts-ignore If it doesn't exist, the error is thrown\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n const GestureClass = HammerGestures[handlerName];\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n HammerNodeManager.createGestureHandler(handlerTag, new GestureClass());\n }\n\n this.updateGestureHandler(handlerTag, config as unknown as Config);\n },\n attachGestureHandler(\n handlerTag: number,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n newView: any,\n _actionType: ActionType,\n propsRef: React.RefObject<unknown>\n ) {\n if (\n !(newView instanceof HTMLElement || newView instanceof React.Component)\n ) {\n return;\n }\n\n if (isNewWebImplementationEnabled()) {\n //@ts-ignore Types should be HTMLElement or React.Component\n NodeManager.getHandler(handlerTag).init(newView, propsRef);\n } else {\n //@ts-ignore Types should be HTMLElement or React.Component\n HammerNodeManager.getHandler(handlerTag).setView(newView, propsRef);\n }\n },\n updateGestureHandler(handlerTag: number, newConfig: Config) {\n if (isNewWebImplementationEnabled()) {\n NodeManager.getHandler(handlerTag).updateGestureConfig(newConfig);\n\n InteractionManager.getInstance().configureInteractions(\n NodeManager.getHandler(handlerTag),\n newConfig\n );\n } else {\n HammerNodeManager.getHandler(handlerTag).updateGestureConfig(newConfig);\n }\n },\n getGestureHandlerNode(handlerTag: number) {\n if (isNewWebImplementationEnabled()) {\n return NodeManager.getHandler(handlerTag);\n } else {\n return HammerNodeManager.getHandler(handlerTag);\n }\n },\n dropGestureHandler(handlerTag: number) {\n if (isNewWebImplementationEnabled()) {\n NodeManager.dropGestureHandler(handlerTag);\n } else {\n HammerNodeManager.dropGestureHandler(handlerTag);\n }\n },\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n flushOperations() {},\n};\n"]}
|
@@ -1,11 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.RNRenderer = void 0;
|
7
|
-
const RNRenderer = {
|
8
|
-
findHostInstance_DEPRECATED: _ref => null
|
9
|
-
};
|
10
|
-
exports.RNRenderer = RNRenderer;
|
11
|
-
//# sourceMappingURL=RNRenderer.web.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["RNRenderer.web.ts"],"names":["RNRenderer","findHostInstance_DEPRECATED","_ref"],"mappings":";;;;;;AAAO,MAAMA,UAAU,GAAG;AACxBC,EAAAA,2BAA2B,EAAGC,IAAD,IAAe;AADpB,CAAnB","sourcesContent":["export const RNRenderer = {\n findHostInstance_DEPRECATED: (_ref: any) => null,\n};\n"]}
|