react-native-gesture-handler 2.16.1 → 2.17.0
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +9 -3
- package/android/build.gradle +105 -0
- package/android/gradle.properties +7 -0
- package/android/paper/src/main/java/com/facebook/react/viewmanagers/RNGestureHandlerButtonManagerDelegate.java +7 -7
- package/android/src/main/java/com/swmansion/gesturehandler/core/NativeViewGestureHandler.kt +16 -8
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.kt +9 -5
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerInteractionManager.kt +4 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootHelper.kt +1 -1
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerTouchEvent.kt +1 -0
- package/apple/RNGestureHandlerButtonComponentView.mm +10 -0
- package/apple/RNGestureHandlerModule.mm +2 -3
- package/lib/commonjs/RNGestureHandlerModule.js +4 -97
- package/lib/commonjs/RNGestureHandlerModule.js.map +1 -1
- package/lib/commonjs/RNGestureHandlerModule.web.js +109 -0
- package/lib/commonjs/RNGestureHandlerModule.web.js.map +1 -0
- package/lib/commonjs/RNRenderer.js +10 -5
- package/lib/commonjs/RNRenderer.js.map +1 -1
- package/lib/commonjs/RNRenderer.web.js +11 -0
- package/lib/commonjs/RNRenderer.web.js.map +1 -0
- package/lib/commonjs/components/GestureButtons.js +27 -12
- package/lib/commonjs/components/GestureButtons.js.map +1 -1
- package/lib/commonjs/components/GestureComponents.js +82 -19
- package/lib/commonjs/components/GestureComponents.js.map +1 -1
- package/lib/commonjs/components/GestureComponents.web.js +52 -0
- package/lib/commonjs/components/GestureComponents.web.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerButton.js +3 -13
- package/lib/commonjs/components/GestureHandlerButton.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerButton.web.js +24 -0
- package/lib/commonjs/components/GestureHandlerButton.web.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerRootView.js +6 -0
- package/lib/commonjs/components/GestureHandlerRootView.js.map +1 -1
- package/lib/commonjs/components/{GestureHandlerRootView.native.js → GestureHandlerRootView.web.js} +1 -7
- package/lib/commonjs/components/GestureHandlerRootView.web.js.map +1 -0
- package/lib/commonjs/getReactNativeVersion.js +12 -1
- package/lib/commonjs/getReactNativeVersion.js.map +1 -1
- package/lib/commonjs/getReactNativeVersion.web.js +11 -0
- package/lib/commonjs/getReactNativeVersion.web.js.map +1 -0
- package/lib/commonjs/getShadowNodeFromRef.js +34 -5
- package/lib/commonjs/getShadowNodeFromRef.js.map +1 -1
- package/lib/commonjs/getShadowNodeFromRef.web.js +15 -0
- package/lib/commonjs/getShadowNodeFromRef.web.js.map +1 -0
- package/lib/commonjs/handlers/PressabilityDebugView.js +7 -5
- package/lib/commonjs/handlers/PressabilityDebugView.js.map +1 -1
- package/lib/commonjs/handlers/PressabilityDebugView.web.js +12 -0
- package/lib/commonjs/handlers/PressabilityDebugView.web.js.map +1 -0
- package/lib/commonjs/handlers/createHandler.js +1 -3
- package/lib/commonjs/handlers/createHandler.js.map +1 -1
- package/lib/commonjs/handlers/customDirectEventTypes.js +8 -5
- package/lib/commonjs/handlers/customDirectEventTypes.js.map +1 -1
- package/lib/commonjs/handlers/customDirectEventTypes.web.js +11 -0
- package/lib/commonjs/handlers/customDirectEventTypes.web.js.map +1 -0
- package/lib/commonjs/handlers/gestureHandlerCommon.js +3 -3
- package/lib/commonjs/handlers/gestureHandlerCommon.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js +42 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js +83 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js +25 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/index.js +143 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/index.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/needsToReattach.js +25 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/needsToReattach.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/types.js +6 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/types.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js +80 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js +180 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js +55 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js +47 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/utils.js +176 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/utils.js.map +1 -0
- package/lib/commonjs/handlers/gestures/gestureComposition.js +3 -1
- package/lib/commonjs/handlers/gestures/gestureComposition.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureStateManager.js +8 -0
- package/lib/commonjs/handlers/gestures/gestureStateManager.js.map +1 -1
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js.map +1 -1
- package/lib/commonjs/utils.js +36 -0
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/commonjs/web/detectors/RotationGestureDetector.js +6 -8
- package/lib/commonjs/web/detectors/RotationGestureDetector.js.map +1 -1
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js +5 -6
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js.map +1 -1
- package/lib/commonjs/web/handlers/FlingGestureHandler.js +1 -0
- package/lib/commonjs/web/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/GestureHandler.js +56 -64
- package/lib/commonjs/web/handlers/GestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js +1 -0
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/ManualGestureHandler.js +1 -0
- package/lib/commonjs/web/handlers/ManualGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +7 -4
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/PanGestureHandler.js +28 -18
- package/lib/commonjs/web/handlers/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/PinchGestureHandler.js +1 -0
- package/lib/commonjs/web/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/RotationGestureHandler.js +1 -0
- package/lib/commonjs/web/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/TapGestureHandler.js +18 -12
- package/lib/commonjs/web/handlers/TapGestureHandler.js.map +1 -1
- package/lib/commonjs/web/interfaces.js.map +1 -1
- package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js +1 -6
- package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js.map +1 -1
- package/lib/commonjs/web/tools/PointerEventManager.js +7 -2
- package/lib/commonjs/web/tools/PointerEventManager.js.map +1 -1
- package/lib/commonjs/web/tools/PointerTracker.js +89 -57
- package/lib/commonjs/web/tools/PointerTracker.js.map +1 -1
- package/lib/commonjs/web/tools/TouchEventManager.js +6 -2
- package/lib/commonjs/web/tools/TouchEventManager.js.map +1 -1
- package/lib/commonjs/web/tools/Vector.js +2 -1
- package/lib/commonjs/web/tools/Vector.js.map +1 -1
- package/lib/commonjs/web/utils.js +31 -0
- package/lib/commonjs/web/utils.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.js +4 -84
- package/lib/module/RNGestureHandlerModule.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.web.js +85 -0
- package/lib/module/RNGestureHandlerModule.web.js.map +1 -0
- package/lib/module/RNRenderer.js +3 -3
- package/lib/module/RNRenderer.js.map +1 -1
- package/lib/module/RNRenderer.web.js +4 -0
- package/lib/module/RNRenderer.web.js.map +1 -0
- package/lib/module/components/GestureButtons.js +24 -6
- package/lib/module/components/GestureButtons.js.map +1 -1
- package/lib/module/components/GestureComponents.js +80 -18
- package/lib/module/components/GestureComponents.js.map +1 -1
- package/lib/module/components/GestureComponents.web.js +28 -0
- package/lib/module/components/GestureComponents.web.js.map +1 -0
- package/lib/module/components/GestureHandlerButton.js +2 -8
- package/lib/module/components/GestureHandlerButton.js.map +1 -1
- package/lib/module/components/GestureHandlerButton.web.js +9 -0
- package/lib/module/components/GestureHandlerButton.web.js.map +1 -0
- package/lib/module/components/GestureHandlerRootView.js +5 -0
- package/lib/module/components/GestureHandlerRootView.js.map +1 -1
- package/lib/module/components/{GestureHandlerRootView.native.js → GestureHandlerRootView.web.js} +1 -6
- package/lib/module/components/GestureHandlerRootView.web.js.map +1 -0
- package/lib/module/getReactNativeVersion.js +7 -1
- package/lib/module/getReactNativeVersion.js.map +1 -1
- package/lib/module/getReactNativeVersion.web.js +4 -0
- package/lib/module/getReactNativeVersion.web.js.map +1 -0
- package/lib/module/getShadowNodeFromRef.js +33 -4
- package/lib/module/getShadowNodeFromRef.js.map +1 -1
- package/lib/module/getShadowNodeFromRef.web.js +8 -0
- package/lib/module/getShadowNodeFromRef.web.js.map +1 -0
- package/lib/module/handlers/PressabilityDebugView.js +2 -4
- package/lib/module/handlers/PressabilityDebugView.js.map +1 -1
- package/lib/module/handlers/PressabilityDebugView.web.js +5 -0
- package/lib/module/handlers/PressabilityDebugView.web.js.map +1 -0
- package/lib/module/handlers/createHandler.js +2 -4
- package/lib/module/handlers/createHandler.js.map +1 -1
- package/lib/module/handlers/customDirectEventTypes.js +2 -4
- package/lib/module/handlers/customDirectEventTypes.js.map +1 -1
- package/lib/module/handlers/customDirectEventTypes.web.js +5 -0
- package/lib/module/handlers/customDirectEventTypes.web.js.map +1 -0
- package/lib/module/handlers/gestureHandlerCommon.js +1 -1
- package/lib/module/handlers/gestureHandlerCommon.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/Wrap.js +26 -0
- package/lib/module/handlers/gestures/GestureDetector/Wrap.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js +65 -0
- package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js +12 -0
- package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/index.js +115 -0
- package/lib/module/handlers/gestures/GestureDetector/index.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/needsToReattach.js +18 -0
- package/lib/module/handlers/gestures/GestureDetector/needsToReattach.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/types.js +2 -0
- package/lib/module/handlers/gestures/GestureDetector/types.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js +64 -0
- package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js +165 -0
- package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js +41 -0
- package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js +36 -0
- package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/utils.js +142 -0
- package/lib/module/handlers/gestures/GestureDetector/utils.js.map +1 -0
- package/lib/module/handlers/gestures/gestureComposition.js +3 -1
- package/lib/module/handlers/gestures/gestureComposition.js.map +1 -1
- package/lib/module/handlers/gestures/gestureStateManager.js +8 -0
- package/lib/module/handlers/gestures/gestureStateManager.js.map +1 -1
- package/lib/module/handlers/gestures/reanimatedWrapper.js.map +1 -1
- package/lib/module/utils.js +34 -0
- package/lib/module/utils.js.map +1 -1
- package/lib/module/web/detectors/RotationGestureDetector.js +6 -8
- package/lib/module/web/detectors/RotationGestureDetector.js.map +1 -1
- package/lib/module/web/detectors/ScaleGestureDetector.js +5 -6
- package/lib/module/web/detectors/ScaleGestureDetector.js.map +1 -1
- package/lib/module/web/handlers/FlingGestureHandler.js +1 -0
- package/lib/module/web/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/GestureHandler.js +56 -64
- package/lib/module/web/handlers/GestureHandler.js.map +1 -1
- package/lib/module/web/handlers/LongPressGestureHandler.js +1 -0
- package/lib/module/web/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/ManualGestureHandler.js +1 -0
- package/lib/module/web/handlers/ManualGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/NativeViewGestureHandler.js +7 -4
- package/lib/module/web/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/PanGestureHandler.js +28 -18
- package/lib/module/web/handlers/PanGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/PinchGestureHandler.js +1 -0
- package/lib/module/web/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/RotationGestureHandler.js +1 -0
- package/lib/module/web/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/TapGestureHandler.js +18 -12
- package/lib/module/web/handlers/TapGestureHandler.js.map +1 -1
- package/lib/module/web/interfaces.js.map +1 -1
- package/lib/module/web/tools/GestureHandlerOrchestrator.js +1 -6
- package/lib/module/web/tools/GestureHandlerOrchestrator.js.map +1 -1
- package/lib/module/web/tools/PointerEventManager.js +8 -3
- package/lib/module/web/tools/PointerEventManager.js.map +1 -1
- package/lib/module/web/tools/PointerTracker.js +89 -57
- package/lib/module/web/tools/PointerTracker.js.map +1 -1
- package/lib/module/web/tools/TouchEventManager.js +7 -3
- package/lib/module/web/tools/TouchEventManager.js.map +1 -1
- package/lib/module/web/tools/Vector.js +2 -1
- package/lib/module/web/tools/Vector.js.map +1 -1
- package/lib/module/web/utils.js +29 -0
- package/lib/module/web/utils.js.map +1 -1
- package/lib/typescript/RNGestureHandlerModule.d.ts +2 -15
- package/lib/typescript/RNGestureHandlerModule.web.d.ts +15 -0
- package/lib/typescript/RNRenderer.d.ts +1 -3
- package/lib/typescript/RNRenderer.web.d.ts +3 -0
- package/lib/typescript/components/GestureButtons.d.ts +3 -34
- package/lib/typescript/components/GestureComponents.d.ts +21 -7
- package/lib/typescript/components/GestureComponents.web.d.ts +8 -0
- package/lib/typescript/components/GestureHandlerButton.d.ts +3 -3
- package/lib/typescript/components/GestureHandlerButton.web.d.ts +4 -0
- package/lib/typescript/getReactNativeVersion.d.ts +4 -1
- package/lib/typescript/getReactNativeVersion.web.d.ts +1 -0
- package/lib/typescript/getShadowNodeFromRef.d.ts +1 -1
- package/lib/typescript/getShadowNodeFromRef.web.d.ts +1 -0
- package/lib/typescript/handlers/PressabilityDebugView.d.ts +1 -1
- package/lib/typescript/handlers/PressabilityDebugView.web.d.ts +1 -0
- package/lib/typescript/handlers/customDirectEventTypes.d.ts +1 -2
- package/lib/typescript/handlers/customDirectEventTypes.web.d.ts +2 -0
- package/lib/typescript/handlers/gestureHandlerCommon.d.ts +3 -2
- package/lib/typescript/handlers/gestures/GestureDetector/Wrap.d.ts +13 -0
- package/lib/typescript/handlers/gestures/GestureDetector/attachHandlers.d.ts +13 -0
- package/lib/typescript/handlers/gestures/GestureDetector/dropHandlers.d.ts +2 -0
- package/lib/typescript/handlers/gestures/{GestureDetector.d.ts → GestureDetector/index.d.ts} +4 -12
- package/lib/typescript/handlers/gestures/GestureDetector/needsToReattach.d.ts +3 -0
- package/lib/typescript/handlers/gestures/GestureDetector/types.d.ts +20 -0
- package/lib/typescript/handlers/gestures/GestureDetector/updateHandlers.d.ts +4 -0
- package/lib/typescript/handlers/gestures/GestureDetector/useAnimatedGesture.d.ts +2 -0
- package/lib/typescript/handlers/gestures/GestureDetector/useDetectorUpdater.d.ts +5 -0
- package/lib/typescript/handlers/gestures/GestureDetector/useViewRefHandler.d.ts +3 -0
- package/lib/typescript/handlers/gestures/GestureDetector/utils.d.ts +12 -0
- package/lib/typescript/handlers/gestures/reanimatedWrapper.d.ts +1 -1
- package/lib/typescript/utils.d.ts +10 -0
- package/lib/typescript/web/handlers/GestureHandler.d.ts +1 -0
- package/lib/typescript/web/interfaces.d.ts +1 -0
- package/lib/typescript/web/tools/PointerTracker.d.ts +34 -31
- package/lib/typescript/web/utils.d.ts +4 -0
- package/package.json +5 -5
- package/src/RNGestureHandlerModule.ts +4 -104
- package/src/RNGestureHandlerModule.web.ts +105 -0
- package/src/RNRenderer.ts +3 -3
- package/src/RNRenderer.web.ts +3 -0
- package/src/components/GestureButtons.tsx +36 -4
- package/src/components/GestureComponents.tsx +131 -24
- package/src/components/GestureComponents.web.tsx +41 -0
- package/src/components/GestureHandlerButton.tsx +4 -5
- package/src/components/GestureHandlerButton.web.tsx +6 -0
- package/src/components/GestureHandlerRootView.tsx +6 -0
- package/src/components/{GestureHandlerRootView.native.tsx → GestureHandlerRootView.web.tsx} +0 -6
- package/src/getReactNativeVersion.ts +9 -1
- package/src/getReactNativeVersion.web.ts +3 -0
- package/src/getShadowNodeFromRef.ts +41 -4
- package/src/getShadowNodeFromRef.web.ts +7 -0
- package/src/handlers/PressabilityDebugView.tsx +2 -4
- package/src/handlers/PressabilityDebugView.web.tsx +4 -0
- package/src/handlers/createHandler.tsx +1 -3
- package/src/handlers/customDirectEventTypes.ts +2 -5
- package/src/handlers/customDirectEventTypes.web.ts +5 -0
- package/src/handlers/gestureHandlerCommon.ts +4 -1
- package/src/handlers/gestures/GestureDetector/Wrap.tsx +35 -0
- package/src/handlers/gestures/GestureDetector/attachHandlers.ts +112 -0
- package/src/handlers/gestures/GestureDetector/dropHandlers.ts +14 -0
- package/src/handlers/gestures/GestureDetector/index.tsx +187 -0
- package/src/handlers/gestures/GestureDetector/needsToReattach.ts +27 -0
- package/src/handlers/gestures/GestureDetector/types.ts +32 -0
- package/src/handlers/gestures/GestureDetector/updateHandlers.ts +94 -0
- package/src/handlers/gestures/GestureDetector/useAnimatedGesture.ts +206 -0
- package/src/handlers/gestures/GestureDetector/useDetectorUpdater.ts +69 -0
- package/src/handlers/gestures/GestureDetector/useViewRefHandler.ts +54 -0
- package/src/handlers/gestures/GestureDetector/utils.ts +185 -0
- package/src/handlers/gestures/gestureComposition.ts +2 -0
- package/src/handlers/gestures/gestureStateManager.ts +12 -4
- package/src/handlers/gestures/reanimatedWrapper.ts +19 -17
- package/src/utils.ts +39 -0
- package/src/web/detectors/RotationGestureDetector.ts +6 -8
- package/src/web/detectors/ScaleGestureDetector.ts +5 -6
- package/src/web/handlers/FlingGestureHandler.ts +2 -0
- package/src/web/handlers/GestureHandler.ts +53 -62
- package/src/web/handlers/LongPressGestureHandler.ts +2 -0
- package/src/web/handlers/ManualGestureHandler.ts +2 -0
- package/src/web/handlers/NativeViewGestureHandler.ts +8 -4
- package/src/web/handlers/PanGestureHandler.ts +32 -19
- package/src/web/handlers/PinchGestureHandler.ts +2 -0
- package/src/web/handlers/RotationGestureHandler.ts +2 -0
- package/src/web/handlers/TapGestureHandler.ts +20 -12
- package/src/web/interfaces.ts +1 -0
- package/src/web/tools/GestureHandlerOrchestrator.ts +1 -7
- package/src/web/tools/PointerEventManager.ts +10 -3
- package/src/web/tools/PointerTracker.ts +81 -74
- package/src/web/tools/TouchEventManager.ts +5 -3
- package/src/web/tools/Vector.ts +2 -4
- package/src/web/utils.ts +34 -0
- package/lib/commonjs/RNGestureHandlerModule.native.js +0 -16
- package/lib/commonjs/RNGestureHandlerModule.native.js.map +0 -1
- package/lib/commonjs/RNRenderer.native.js +0 -16
- package/lib/commonjs/RNRenderer.native.js.map +0 -1
- package/lib/commonjs/components/GestureComponents.native.js +0 -115
- package/lib/commonjs/components/GestureComponents.native.js.map +0 -1
- package/lib/commonjs/components/GestureHandlerButton.native.js +0 -14
- package/lib/commonjs/components/GestureHandlerButton.native.js.map +0 -1
- package/lib/commonjs/components/GestureHandlerRootView.native.js.map +0 -1
- package/lib/commonjs/getReactNativeVersion.native.js +0 -22
- package/lib/commonjs/getReactNativeVersion.native.js.map +0 -1
- package/lib/commonjs/getShadowNodeFromRef.native.js +0 -44
- package/lib/commonjs/getShadowNodeFromRef.native.js.map +0 -1
- package/lib/commonjs/handlers/PressabilityDebugView.native.js +0 -14
- package/lib/commonjs/handlers/PressabilityDebugView.native.js.map +0 -1
- package/lib/commonjs/handlers/customDirectEventTypes.native.js +0 -14
- package/lib/commonjs/handlers/customDirectEventTypes.native.js.map +0 -1
- package/lib/commonjs/handlers/gestures/GestureDetector.js +0 -704
- package/lib/commonjs/handlers/gestures/GestureDetector.js.map +0 -1
- package/lib/module/RNGestureHandlerModule.native.js +0 -5
- package/lib/module/RNGestureHandlerModule.native.js.map +0 -1
- package/lib/module/RNRenderer.native.js +0 -4
- package/lib/module/RNRenderer.native.js.map +0 -1
- package/lib/module/components/GestureComponents.native.js +0 -90
- package/lib/module/components/GestureComponents.native.js.map +0 -1
- package/lib/module/components/GestureHandlerButton.native.js +0 -3
- package/lib/module/components/GestureHandlerButton.native.js.map +0 -1
- package/lib/module/components/GestureHandlerRootView.native.js.map +0 -1
- package/lib/module/getReactNativeVersion.native.js +0 -10
- package/lib/module/getReactNativeVersion.native.js.map +0 -1
- package/lib/module/getShadowNodeFromRef.native.js +0 -37
- package/lib/module/getShadowNodeFromRef.native.js.map +0 -1
- package/lib/module/handlers/PressabilityDebugView.native.js +0 -3
- package/lib/module/handlers/PressabilityDebugView.native.js.map +0 -1
- package/lib/module/handlers/customDirectEventTypes.native.js +0 -3
- package/lib/module/handlers/customDirectEventTypes.native.js.map +0 -1
- package/lib/module/handlers/gestures/GestureDetector.js +0 -654
- package/lib/module/handlers/gestures/GestureDetector.js.map +0 -1
- package/lib/typescript/RNGestureHandlerModule.native.d.ts +0 -2
- package/lib/typescript/RNRenderer.native.d.ts +0 -1
- package/lib/typescript/components/GestureComponents.native.d.ts +0 -22
- package/lib/typescript/components/GestureHandlerButton.native.d.ts +0 -4
- package/lib/typescript/getReactNativeVersion.native.d.ts +0 -4
- package/lib/typescript/getShadowNodeFromRef.native.d.ts +0 -1
- package/lib/typescript/handlers/PressabilityDebugView.native.d.ts +0 -1
- package/lib/typescript/handlers/customDirectEventTypes.native.d.ts +0 -1
- package/src/RNGestureHandlerModule.native.ts +0 -5
- package/src/RNRenderer.native.ts +0 -3
- package/src/components/GestureComponents.native.tsx +0 -148
- package/src/components/GestureHandlerButton.native.tsx +0 -5
- package/src/getReactNativeVersion.native.ts +0 -11
- package/src/getShadowNodeFromRef.native.ts +0 -44
- package/src/handlers/PressabilityDebugView.native.tsx +0 -2
- package/src/handlers/customDirectEventTypes.native.ts +0 -2
- package/src/handlers/gestures/GestureDetector.tsx +0 -894
- /package/lib/typescript/components/{GestureHandlerRootView.native.d.ts → GestureHandlerRootView.web.d.ts} +0 -0
package/README.md
CHANGED
@@ -27,13 +27,11 @@ If you want to play with the API but don't feel like trying it on a real app, yo
|
|
27
27
|
yarn install
|
28
28
|
```
|
29
29
|
|
30
|
-
If you are running on ios, run `pod install` in the ios folder
|
31
|
-
|
32
30
|
Run `yarn start` to start the metro bundler
|
33
31
|
|
34
32
|
Run `yarn android` or `yarn ios` (depending on which platform you want to run the example app on).
|
35
33
|
|
36
|
-
You will need to have an Android or iOS device or emulator connected
|
34
|
+
You will need to have an Android or iOS device or emulator connected.
|
37
35
|
|
38
36
|
## React Native Support
|
39
37
|
|
@@ -61,3 +59,11 @@ This project has been build and is maintained thanks to the support from [Shopif
|
|
61
59
|
[![shopify](https://avatars1.githubusercontent.com/u/8085?v=3&s=100 'Shopify.com')](https://shopify.com)
|
62
60
|
[![expo](https://avatars2.githubusercontent.com/u/12504344?v=3&s=100 'Expo.io')](https://expo.io)
|
63
61
|
[![swm](https://logo.swmansion.com/logo?color=white&variant=desktop&width=150&tag=react-native-reanimated-github 'Software Mansion')](https://swmansion.com)
|
62
|
+
|
63
|
+
## Community Discord
|
64
|
+
|
65
|
+
[Join the Software Mansion Community Discord](https://discord.swmansion.com) to chat about Gesture Handler or other Software Mansion libraries.
|
66
|
+
|
67
|
+
## Gesture Handler is created by Software Mansion
|
68
|
+
|
69
|
+
Since 2012 [Software Mansion](https://swmansion.com) is a software agency with experience in building web and mobile apps. We are Core React Native Contributors and experts in dealing with all kinds of React Native issues. We can help you build your next dream product – [Hire us](https://swmansion.com/contact/projects?utm_source=gesture-handler&utm_medium=readme).
|
package/android/build.gradle
CHANGED
@@ -207,3 +207,108 @@ dependencies {
|
|
207
207
|
implementation "androidx.core:core-ktx:1.6.0"
|
208
208
|
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
209
209
|
}
|
210
|
+
|
211
|
+
def isGHExampleApp() {
|
212
|
+
return project.hasProperty('isGHExampleApp') && project.property('isGHExampleApp') == "true"
|
213
|
+
}
|
214
|
+
|
215
|
+
def getAbsoluteCodegenArtifactsPaperDestination() {
|
216
|
+
if (!project.hasProperty('codegenArtifactsPaperDestination')) {
|
217
|
+
throw new Exception('[react-native-gesture-handler] Please fill codegenArtifactsPaperDestination variable in android/gradle.properties to point to the correct path to generated specs for paper')
|
218
|
+
}
|
219
|
+
|
220
|
+
return "${project.rootDir}/../../${project.property('codegenArtifactsPaperDestination')}"
|
221
|
+
}
|
222
|
+
|
223
|
+
def getAbsoluteCodegenArtifactsSource() {
|
224
|
+
if (!project.hasProperty('codegenArtifactsSource')) {
|
225
|
+
throw new Exception('[react-native-gesture-handler] Please fill codegenArtifactsSource variable in android/gradle.properties to point to the correct path to codegenerated artifacts')
|
226
|
+
}
|
227
|
+
|
228
|
+
return "${project.rootDir}/../../${project.property('codegenArtifactsSource')}"
|
229
|
+
}
|
230
|
+
|
231
|
+
|
232
|
+
tasks.register('copyCodegenArtifacts') {
|
233
|
+
group 'After build tasks'
|
234
|
+
description 'Task which copies codegen artifacts to paper architecture'
|
235
|
+
|
236
|
+
if (!isGHExampleApp() || !isNewArchitectureEnabled()) {
|
237
|
+
return
|
238
|
+
}
|
239
|
+
|
240
|
+
dependsOn tasks.generateCodegenArtifactsFromSchema
|
241
|
+
|
242
|
+
doLast {
|
243
|
+
|
244
|
+
def absoluteCodegenArtifactsPaperDestination = getAbsoluteCodegenArtifactsPaperDestination()
|
245
|
+
def absoluteCodegenArtifactsSource = getAbsoluteCodegenArtifactsSource()
|
246
|
+
|
247
|
+
def existingFiles = fileTree(absoluteCodegenArtifactsPaperDestination).matching {
|
248
|
+
include '**/*.java'
|
249
|
+
}
|
250
|
+
|
251
|
+
def generatedFiles = fileTree(absoluteCodegenArtifactsSource).matching {
|
252
|
+
include '**/*.java'
|
253
|
+
}
|
254
|
+
|
255
|
+
def existingFilesMap = [:]
|
256
|
+
|
257
|
+
existingFiles.forEach { existingFile ->
|
258
|
+
println existingFile
|
259
|
+
existingFilesMap[existingFile.name] = 1
|
260
|
+
}
|
261
|
+
|
262
|
+
generatedFiles.forEach { generatedFile ->
|
263
|
+
if (!existingFilesMap.containsKey(generatedFile.name)) {
|
264
|
+
logger.warn("[react-native-gesture-handler] ${generatedFile.name} not found in paper dir, if it's used on Android you need to copy it manually and implement yourself before using auto-copy feature.")
|
265
|
+
}
|
266
|
+
}
|
267
|
+
|
268
|
+
if (existingFiles.size() == 0) {
|
269
|
+
logger.warn("[react-native-gesture-handler] Paper destination with codegen interfaces is empty. This might be okay if you don't have any interfaces/delegates used on Android, but if that's not the case please check if codegenArtifactsPaperDestination property in android/gradle.properties is correct.")
|
270
|
+
}
|
271
|
+
|
272
|
+
existingFiles.forEach { existingFile ->
|
273
|
+
def generatedFile = new File("${absoluteCodegenArtifactsSource}/${existingFile.name}")
|
274
|
+
|
275
|
+
if (!generatedFile.exists()) {
|
276
|
+
logger.warn("[react-native-gesture-handler] ${existingFile.name} file does not exist in codegen artifacts source destination. Please check if you still need this interface/delagete.")
|
277
|
+
}
|
278
|
+
}
|
279
|
+
|
280
|
+
copy {
|
281
|
+
from absoluteCodegenArtifactsSource
|
282
|
+
include existingFiles.collect { it.name }
|
283
|
+
into absoluteCodegenArtifactsPaperDestination
|
284
|
+
}
|
285
|
+
}
|
286
|
+
}
|
287
|
+
|
288
|
+
if (isGHExampleApp() && isNewArchitectureEnabled() && !project.hasProperty('skipCodegenCopyTask')) {
|
289
|
+
tasks.generateCodegenArtifactsFromSchema.finalizedBy('copyCodegenArtifacts')
|
290
|
+
}
|
291
|
+
|
292
|
+
tasks.register('checkIntegrityBetweenArchitectures') {
|
293
|
+
group 'Verification tasks'
|
294
|
+
description 'Task to check integrity between fabric and paper architecture in terms of codegen generated interfaces/delegates'
|
295
|
+
|
296
|
+
if (isGHExampleApp()) {
|
297
|
+
return
|
298
|
+
}
|
299
|
+
|
300
|
+
def absoluteCodegenArtifactsPaperDestination = "../${project.property('codegenArtifactsPaperDestination')}"
|
301
|
+
def absoluteCodegenArtifactsSource = "../${project.property('codegenArtifactsSource')}"
|
302
|
+
|
303
|
+
def existingFiles = fileTree(absoluteCodegenArtifactsPaperDestination).matching {
|
304
|
+
include '**/*.java'
|
305
|
+
}
|
306
|
+
|
307
|
+
existingFiles.forEach { existingFile ->
|
308
|
+
def generatedFile = new File("${absoluteCodegenArtifactsSource}/${existingFile.name}")
|
309
|
+
|
310
|
+
if (existingFile.text != generatedFile.text) {
|
311
|
+
throw new RuntimeException("[react-native-gesture-handler] The source of ${existingFile.name} does not match with the one generated by codegen. Please check if you commited changes produced by copyCodegenArtifacts task.")
|
312
|
+
}
|
313
|
+
}
|
314
|
+
}
|
@@ -17,3 +17,10 @@ org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemor
|
|
17
17
|
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
|
18
18
|
# org.gradle.parallel=true
|
19
19
|
RNGH_kotlinVersion=1.6.21
|
20
|
+
|
21
|
+
# Path to codegen output directory with this library view managers' interfaces & delegates. Used by `copyCodegenArtifacts` task that helps to synchronize newly generated files with their Paper counterparts.
|
22
|
+
codegenArtifactsSource=android/build/generated/source/codegen/java/com/facebook/react/viewmanagers
|
23
|
+
|
24
|
+
# Path to directory with view managers' interfaces & delegates used while running on Paper architecture. This property is used as the output path for `copyCodegenArtifacts` task.
|
25
|
+
# Used by copyCodegenArtifacts task that automates copying those interfaces/delegates after codegen is run.
|
26
|
+
codegenArtifactsPaperDestination=android/paper/src/main/java/com/facebook/react/viewmanagers
|
@@ -1,11 +1,11 @@
|
|
1
1
|
/**
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
2
|
+
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
3
|
+
*
|
4
|
+
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
5
|
+
* once the code is regenerated.
|
6
|
+
*
|
7
|
+
* @generated by codegen project: GeneratePropsJavaDelegate.js
|
8
|
+
*/
|
9
9
|
|
10
10
|
package com.facebook.react.viewmanagers;
|
11
11
|
|
@@ -83,11 +83,21 @@ class NativeViewGestureHandler : GestureHandler<NativeViewGestureHandler>() {
|
|
83
83
|
override fun onHandle(event: MotionEvent, sourceEvent: MotionEvent) {
|
84
84
|
val view = view!!
|
85
85
|
if (event.actionMasked == MotionEvent.ACTION_UP) {
|
86
|
-
|
87
|
-
|
88
|
-
|
86
|
+
if (state == STATE_UNDETERMINED && !hook.canBegin(event)) {
|
87
|
+
cancel()
|
88
|
+
} else {
|
89
|
+
view.onTouchEvent(event)
|
90
|
+
if ((state == STATE_UNDETERMINED || state == STATE_BEGAN) && view.isPressed) {
|
91
|
+
activate()
|
92
|
+
}
|
93
|
+
|
94
|
+
if (state == STATE_UNDETERMINED) {
|
95
|
+
cancel()
|
96
|
+
} else {
|
97
|
+
end()
|
98
|
+
}
|
89
99
|
}
|
90
|
-
|
100
|
+
|
91
101
|
hook.afterGestureEnd(event)
|
92
102
|
} else if (state == STATE_UNDETERMINED || state == STATE_BEGAN) {
|
93
103
|
when {
|
@@ -104,10 +114,8 @@ class NativeViewGestureHandler : GestureHandler<NativeViewGestureHandler>() {
|
|
104
114
|
hook.handleEventBeforeActivation(event)
|
105
115
|
}
|
106
116
|
state != STATE_BEGAN -> {
|
107
|
-
if (hook.canBegin()) {
|
117
|
+
if (hook.canBegin(event)) {
|
108
118
|
begin()
|
109
|
-
} else {
|
110
|
-
cancel()
|
111
119
|
}
|
112
120
|
}
|
113
121
|
}
|
@@ -144,7 +152,7 @@ class NativeViewGestureHandler : GestureHandler<NativeViewGestureHandler>() {
|
|
144
152
|
* @return Boolean value signalling whether the handler can transition to the BEGAN state. If false
|
145
153
|
* the gesture will be cancelled.
|
146
154
|
*/
|
147
|
-
fun canBegin() = true
|
155
|
+
fun canBegin(event: MotionEvent) = true
|
148
156
|
|
149
157
|
/**
|
150
158
|
* Called after the gesture transitions to the END state.
|
@@ -270,15 +270,15 @@ class RNGestureHandlerButtonViewManager : ViewGroupManager<ButtonViewGroup>(), R
|
|
270
270
|
* [com.swmansion.gesturehandler.NativeViewGestureHandler.onHandle] */
|
271
271
|
@SuppressLint("ClickableViewAccessibility")
|
272
272
|
override fun onTouchEvent(event: MotionEvent): Boolean {
|
273
|
+
val eventTime = event.eventTime
|
274
|
+
val action = event.action
|
275
|
+
|
273
276
|
if (event.action == MotionEvent.ACTION_CANCEL) {
|
274
277
|
tryFreeingResponder()
|
275
|
-
return super.onTouchEvent(event)
|
276
278
|
}
|
277
279
|
|
278
|
-
val eventTime = event.eventTime
|
279
|
-
val action = event.action
|
280
280
|
// always true when lastEventTime or lastAction have default value (-1)
|
281
|
-
if (lastEventTime != eventTime || lastAction != action) {
|
281
|
+
if (lastEventTime != eventTime || lastAction != action || action == MotionEvent.ACTION_CANCEL) {
|
282
282
|
lastEventTime = eventTime
|
283
283
|
lastAction = action
|
284
284
|
return super.onTouchEvent(event)
|
@@ -384,7 +384,11 @@ class RNGestureHandlerButtonViewManager : ViewGroupManager<ButtonViewGroup>(), R
|
|
384
384
|
}
|
385
385
|
}
|
386
386
|
|
387
|
-
override fun canBegin(): Boolean {
|
387
|
+
override fun canBegin(event: MotionEvent): Boolean {
|
388
|
+
if (event.action == MotionEvent.ACTION_CANCEL || event.action == MotionEvent.ACTION_UP || event.actionMasked == MotionEvent.ACTION_POINTER_UP) {
|
389
|
+
return false
|
390
|
+
}
|
391
|
+
|
388
392
|
val isResponder = tryGrabbingResponder()
|
389
393
|
if (isResponder) {
|
390
394
|
isTouched = true
|
@@ -54,6 +54,10 @@ class RNGestureHandlerInteractionManager : GestureHandlerInteractionController {
|
|
54
54
|
return otherHandler.disallowInterruption
|
55
55
|
}
|
56
56
|
|
57
|
+
if (otherHandler is RNGestureHandlerRootHelper.RootViewGestureHandler) {
|
58
|
+
return true
|
59
|
+
}
|
60
|
+
|
57
61
|
return false
|
58
62
|
}
|
59
63
|
override fun shouldRecognizeSimultaneously(
|
package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootHelper.kt
CHANGED
@@ -57,7 +57,7 @@ class RNGestureHandlerRootHelper(private val context: ReactContext, wrappedView:
|
|
57
57
|
}
|
58
58
|
}
|
59
59
|
|
60
|
-
|
60
|
+
internal inner class RootViewGestureHandler : GestureHandler<RootViewGestureHandler>() {
|
61
61
|
override fun onHandle(event: MotionEvent, sourceEvent: MotionEvent) {
|
62
62
|
val currentState = state
|
63
63
|
// we shouldn't stop intercepting events when there is an active handler already, which could happen when
|
package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerTouchEvent.kt
CHANGED
@@ -49,6 +49,7 @@ class RNGestureHandlerTouchEvent private constructor() : Event<RNGestureHandlerT
|
|
49
49
|
putInt("state", handler.state)
|
50
50
|
putInt("numberOfTouches", handler.trackedPointersCount)
|
51
51
|
putInt("eventType", handler.touchEventType)
|
52
|
+
putInt("pointerType", handler.pointerType)
|
52
53
|
|
53
54
|
handler.consumeChangedTouchesPayload()?.let {
|
54
55
|
putArray("changedTouches", it)
|
@@ -34,6 +34,16 @@ using namespace facebook::react;
|
|
34
34
|
return self;
|
35
35
|
}
|
36
36
|
|
37
|
+
- (void)mountChildComponentView:(UIView<RCTComponentViewProtocol> *)childComponentView index:(NSInteger)index
|
38
|
+
{
|
39
|
+
[_buttonView mountChildComponentView:childComponentView index:index];
|
40
|
+
}
|
41
|
+
|
42
|
+
- (void)unmountChildComponentView:(UIView<RCTComponentViewProtocol> *)childComponentView index:(NSInteger)index
|
43
|
+
{
|
44
|
+
[_buttonView unmountChildComponentView:childComponentView index:index];
|
45
|
+
}
|
46
|
+
|
37
47
|
#pragma mark - RCTComponentViewProtocol
|
38
48
|
|
39
49
|
+ (ComponentDescriptorProvider)componentDescriptorProvider
|
@@ -53,7 +53,6 @@ typedef void (^GestureHandlerOperation)(RNGestureHandlerManager *manager);
|
|
53
53
|
|
54
54
|
#ifdef RCT_NEW_ARCH_ENABLED
|
55
55
|
@synthesize viewRegistry_DEPRECATED = _viewRegistry_DEPRECATED;
|
56
|
-
@synthesize bridge = _bridge;
|
57
56
|
@synthesize dispatchToJSThread = _dispatchToJSThread;
|
58
57
|
#endif // RCT_NEW_ARCH_ENABLED
|
59
58
|
|
@@ -133,14 +132,14 @@ void decorateRuntime(jsi::Runtime &runtime)
|
|
133
132
|
RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(install)
|
134
133
|
{
|
135
134
|
dispatch_block_t block = ^{
|
136
|
-
RCTCxxBridge *cxxBridge = (RCTCxxBridge *)
|
135
|
+
RCTCxxBridge *cxxBridge = (RCTCxxBridge *)self.bridge;
|
137
136
|
auto runtime = (jsi::Runtime *)cxxBridge.runtime;
|
138
137
|
decorateRuntime(*runtime);
|
139
138
|
};
|
140
139
|
if (_dispatchToJSThread) {
|
141
140
|
_dispatchToJSThread(block);
|
142
141
|
} else {
|
143
|
-
[
|
142
|
+
[self.bridge dispatchBlock:block queue:RCTJSThread];
|
144
143
|
}
|
145
144
|
|
146
145
|
return @true;
|
@@ -5,105 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.default = void 0;
|
7
7
|
|
8
|
-
var
|
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; }
|
8
|
+
var _NativeRNGestureHandlerModule = _interopRequireDefault(require("./specs/NativeRNGestureHandlerModule"));
|
25
9
|
|
26
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
27
11
|
|
28
|
-
|
29
|
-
|
30
|
-
|
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
|
-
};
|
12
|
+
// Reexport the native module spec used by codegen. The relevant files are inluded on Android
|
13
|
+
// to ensure the compatibility with the old arch, while iOS doesn't require those at all.
|
14
|
+
var _default = _NativeRNGestureHandlerModule.default;
|
108
15
|
exports.default = _default;
|
109
16
|
//# sourceMappingURL=RNGestureHandlerModule.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["RNGestureHandlerModule.ts"],"names":["
|
1
|
+
{"version":3,"sources":["RNGestureHandlerModule.ts"],"names":["Module"],"mappings":";;;;;;;AAGA;;;;AAHA;AACA;eAGeA,qC","sourcesContent":["// Reexport the native module spec used by codegen. The relevant files are inluded on Android\n// to ensure the compatibility with the old arch, while iOS doesn't require those at all.\n\nimport Module from './specs/NativeRNGestureHandlerModule';\nexport default Module;\n"]}
|
@@ -0,0 +1,109 @@
|
|
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
|
@@ -0,0 +1 @@
|
|
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":";;;;;;;AAAA;;AAGA;;AACA;;AAEA;;AACA;;AACA;;AACA;;;;;;;;eAEe;AACbA,EAAAA,oBAAoB,CAACC,GAAD,EAAcC,oBAAd,EAA6C;AAC/DC,IAAAA,OAAO,CAACC,IAAR,CAAa,wBAAb,EAAuCH,GAAvC,EAA4CC,oBAA5C;AACD,GAHY;;AAIbG,EAAAA,sBAAsB,GAAG;AACvBF,IAAAA,OAAO,CAACC,IAAR,CAAa,0BAAb;AACD,GANY;;AAObE,EAAAA,oBAAoB,CAClBC,WADkB,EAElBC,UAFkB,EAGlBC,MAHkB,EAIlB;AACA,QAAI,gEAAJ,EAAqC;AACnC,UAAI,EAAEF,WAAW,IAAIG,kBAAjB,CAAJ,EAAgC;AAC9B,cAAM,IAAIC,KAAJ,CACH,iCAAgCJ,WAAY,2BADzC,CAAN;AAGD;;AAED,YAAMK,YAAY,GAAGF,mBAASH,WAAT,CAArB;;AACAM,2BAAYP,oBAAZ,CACEE,UADF,EAEE,IAAII,YAAJ,CAAiB,IAAIE,oDAAJ,EAAjB,CAFF;;AAIAC,kCAAmBC,WAAnB,GAAiCC,qBAAjC,CACEJ,qBAAYK,UAAZ,CAAuBV,UAAvB,CADF,EAEEC,MAFF;AAID,KAhBD,MAgBO;AACL,UAAI,EAAEF,WAAW,IAAIY,wBAAjB,CAAJ,EAAsC;AACpC,cAAM,IAAIR,KAAJ,CACH,iCAAgCJ,WAAY,2BADzC,CAAN;AAGD,OALI,CAOL;AACA;;;AACA,YAAMK,YAAY,GAAGO,yBAAeZ,WAAf,CAArB,CATK,CAUL;;AACAa,MAAAA,iBAAiB,CAACd,oBAAlB,CAAuCE,UAAvC,EAAmD,IAAII,YAAJ,EAAnD;AACD;;AAED,SAAKS,oBAAL,CAA0Bb,UAA1B,EAAsCC,MAAtC;AACD,GA3CY;;AA4Cba,EAAAA,oBAAoB,CAClBd,UADkB,EAElB;AACAe,EAAAA,OAHkB,EAIlBC,WAJkB,EAKlBC,QALkB,EAMlB;AACA,QACE,EAAEF,OAAO,YAAYG,WAAnB,IAAkCH,OAAO,YAAYI,eAAMC,SAA7D,CADF,EAEE;AACA;AACD;;AAED,QAAI,gEAAJ,EAAqC;AACnC;AACAf,2BAAYK,UAAZ,CAAuBV,UAAvB,EAAmCqB,IAAnC,CAAwCN,OAAxC,EAAiDE,QAAjD;AACD,KAHD,MAGO;AACL;AACAL,MAAAA,iBAAiB,CAACF,UAAlB,CAA6BV,UAA7B,EAAyCsB,OAAzC,CAAiDP,OAAjD,EAA0DE,QAA1D;AACD;AACF,GAhEY;;AAiEbJ,EAAAA,oBAAoB,CAACb,UAAD,EAAqBuB,SAArB,EAAwC;AAC1D,QAAI,gEAAJ,EAAqC;AACnClB,2BAAYK,UAAZ,CAAuBV,UAAvB,EAAmCwB,mBAAnC,CAAuDD,SAAvD;;AAEAhB,kCAAmBC,WAAnB,GAAiCC,qBAAjC,CACEJ,qBAAYK,UAAZ,CAAuBV,UAAvB,CADF,EAEEuB,SAFF;AAID,KAPD,MAOO;AACLX,MAAAA,iBAAiB,CAACF,UAAlB,CAA6BV,UAA7B,EAAyCwB,mBAAzC,CAA6DD,SAA7D;AACD;AACF,GA5EY;;AA6EbE,EAAAA,qBAAqB,CAACzB,UAAD,EAAqB;AACxC,QAAI,gEAAJ,EAAqC;AACnC,aAAOK,qBAAYK,UAAZ,CAAuBV,UAAvB,CAAP;AACD,KAFD,MAEO;AACL,aAAOY,iBAAiB,CAACF,UAAlB,CAA6BV,UAA7B,CAAP;AACD;AACF,GAnFY;;AAoFb0B,EAAAA,kBAAkB,CAAC1B,UAAD,EAAqB;AACrC,QAAI,gEAAJ,EAAqC;AACnCK,2BAAYqB,kBAAZ,CAA+B1B,UAA/B;AACD,KAFD,MAEO;AACLY,MAAAA,iBAAiB,CAACc,kBAAlB,CAAqC1B,UAArC;AACD;AACF,GA1FY;;AA2Fb;AACA2B,EAAAA,eAAe,GAAG,CAAE;;AA5FP,C","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"]}
|
@@ -3,9 +3,14 @@
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
4
4
|
value: true
|
5
5
|
});
|
6
|
-
exports
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
6
|
+
Object.defineProperty(exports, "RNRenderer", {
|
7
|
+
enumerable: true,
|
8
|
+
get: function () {
|
9
|
+
return _ReactNative.default;
|
10
|
+
}
|
11
|
+
});
|
12
|
+
|
13
|
+
var _ReactNative = _interopRequireDefault(require("react-native/Libraries/Renderer/shims/ReactNative"));
|
14
|
+
|
15
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
11
16
|
//# sourceMappingURL=RNRenderer.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["RNRenderer.ts"],"names":[
|
1
|
+
{"version":3,"sources":["RNRenderer.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA","sourcesContent":["// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nexport { default as RNRenderer } from 'react-native/Libraries/Renderer/shims/ReactNative';\n"]}
|
@@ -0,0 +1,11 @@
|
|
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
|
@@ -0,0 +1 @@
|
|
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"]}
|