@amazon-devices/react-native-gesture-handler 2.0.1759135970 → 4.0.0-rn-83
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +70 -0
- package/RNGestureHandler.podspec +22 -21
- package/ReanimatedDrawerLayout/package.json +6 -0
- package/ReanimatedSwipeable/package.json +6 -0
- package/SystemBundles/e82012a422f9e1059c6cee278b1f8d0bcc98609171576a84702a68ac119f1947.bundle +14670 -0
- package/SystemBundles/e82012a422f9e1059c6cee278b1f8d0bcc98609171576a84702a68ac119f1947.map +5041 -0
- package/SystemModules/amzn__react-native-gesture-handler-4.modules.txt +79 -0
- package/SystemModules/amzn__react-native-gesture-handler-4.private.modules.txt +67 -0
- package/SystemModules/keplerscript-system-bundle-config.json +3 -3
- package/android/build.gradle +104 -57
- package/android/{src/fabric → fabric/src/main}/java/com/swmansion/gesturehandler/ReactContextExtensions.kt +2 -0
- package/android/gradle.properties +3 -3
- package/android/noreanimated/src/main/java/com/swmansion/gesturehandler/ReanimatedEventDispatcher.kt +3 -1
- package/android/nosvg/src/main/java/com/swmansion/gesturehandler/RNSVGHitTester.kt +13 -0
- package/android/{src/paper → paper/src/main}/java/com/facebook/react/viewmanagers/RNGestureHandlerButtonManagerDelegate.java +19 -9
- package/android/{src/paper → paper/src/main}/java/com/facebook/react/viewmanagers/RNGestureHandlerButtonManagerInterface.java +5 -1
- package/android/{src/paper → paper/src/main}/java/com/facebook/react/viewmanagers/RNGestureHandlerRootViewManagerDelegate.java +3 -2
- package/android/{src/paper → paper/src/main}/java/com/facebook/react/viewmanagers/RNGestureHandlerRootViewManagerInterface.java +2 -1
- package/android/paper/src/main/java/com/swmansion/gesturehandler/NativeRNGestureHandlerModuleSpec.java +67 -0
- package/android/{src/paper → paper/src/main}/java/com/swmansion/gesturehandler/ReactContextExtensions.kt +4 -1
- package/android/reanimated/src/main/java/com/swmansion/gesturehandler/ReanimatedEventDispatcher.kt +1 -1
- package/android/src/main/AndroidManifest.xml +1 -3
- package/android/src/main/java/com/swmansion/gesturehandler/RNGestureHandlerPackage.kt +67 -8
- package/android/src/main/java/com/swmansion/gesturehandler/core/DiagonalDirections.kt +8 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/FlingGestureHandler.kt +90 -25
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandler.kt +347 -141
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerInteractionController.kt +4 -4
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerOrchestrator.kt +197 -137
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerRegistry.kt +1 -1
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureUtils.kt +15 -2
- package/android/src/main/java/com/swmansion/gesturehandler/core/HoverGestureHandler.kt +36 -6
- package/android/src/main/java/com/swmansion/gesturehandler/core/LongPressGestureHandler.kt +127 -17
- package/android/src/main/java/com/swmansion/gesturehandler/core/ManualGestureHandler.kt +12 -1
- package/android/src/main/java/com/swmansion/gesturehandler/core/NativeViewGestureHandler.kt +137 -46
- package/android/src/main/java/com/swmansion/gesturehandler/core/OnTouchEventListener.kt +3 -3
- package/android/src/main/java/com/swmansion/gesturehandler/core/PanGestureHandler.kt +200 -93
- package/android/src/main/java/com/swmansion/gesturehandler/core/PinchGestureHandler.kt +21 -14
- package/android/src/main/java/com/swmansion/gesturehandler/core/PointerEventsConfig.kt +1 -1
- package/android/src/main/java/com/swmansion/gesturehandler/core/RotationGestureDetector.kt +56 -12
- package/android/src/main/java/com/swmansion/gesturehandler/core/RotationGestureHandler.kt +12 -5
- package/android/src/main/java/com/swmansion/gesturehandler/core/ScaleGestureDetector.java +10 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/StylusData.kt +103 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/TapGestureHandler.kt +62 -36
- package/android/src/main/java/com/swmansion/gesturehandler/core/Vector.kt +61 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/Extensions.kt +1 -1
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.kt +200 -50
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEnabledRootView.kt +9 -4
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEvent.kt +25 -27
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEventDispatcher.kt +189 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerFactoryUtil.kt +34 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerInteractionManager.kt +18 -11
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.kt +70 -645
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRegistry.kt +8 -14
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootHelper.kt +38 -19
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootView.kt +16 -13
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootViewManager.kt +2 -4
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerStateChangeEvent.kt +34 -28
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerTouchEvent.kt +11 -10
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNViewConfigurationHelper.kt +15 -12
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/FlingGestureHandlerEventDataBuilder.kt +31 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/GestureHandlerEventDataBuilder.kt +25 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/HoverGestureHandlerEventDataBuilder.kt +38 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/LongPressGestureHandlerEventDataBuilder.kt +34 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/ManualGestureHandlerEventDataBuilder.kt +6 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/NativeGestureHandlerEventDataBuilder.kt +19 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/PanGestureHandlerEventDataBuilder.kt +50 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/PinchGestureHandlerEventDataBuilder.kt +31 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/RotationGestureHandlerEventDataBuilder.kt +31 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/TapGestureHandlerEventDataBuilder.kt +31 -0
- package/android/src/main/jni/CMakeLists.txt +22 -6
- package/android/src/main/jni/cpp-adapter.cpp +39 -30
- package/android/svg/src/main/java/com/swmansion/gesturehandler/RNSVGHitTester.kt +65 -0
- package/{ios → apple}/Handlers/RNFlingHandler.h +1 -0
- package/apple/Handlers/RNFlingHandler.m +313 -0
- package/{ios → apple}/Handlers/RNForceTouchHandler.m +29 -8
- package/{ios → apple}/Handlers/RNHoverHandler.m +84 -15
- package/apple/Handlers/RNLongPressHandler.m +290 -0
- package/{ios → apple}/Handlers/RNManualHandler.m +58 -13
- package/{ios → apple}/Handlers/RNNativeViewHandler.mm +77 -28
- package/{ios → apple}/Handlers/RNPanHandler.m +166 -21
- package/apple/Handlers/RNPinchHandler.m +186 -0
- package/apple/Handlers/RNRotationHandler.m +169 -0
- package/{ios → apple}/Handlers/RNTapHandler.m +100 -27
- package/apple/RNGHStylusData.h +77 -0
- package/apple/RNGHStylusData.m +37 -0
- package/apple/RNGHUIKit.h +29 -0
- package/apple/RNGHVector.h +31 -0
- package/apple/RNGHVector.m +67 -0
- package/{ios → apple}/RNGestureHandler.h +23 -3
- package/{ios/RNGestureHandler.m → apple/RNGestureHandler.mm} +199 -21
- package/apple/RNGestureHandlerButton.h +39 -0
- package/apple/RNGestureHandlerButton.mm +214 -0
- package/{ios → apple}/RNGestureHandlerButtonComponentView.h +6 -1
- package/apple/RNGestureHandlerButtonComponentView.mm +219 -0
- package/{ios/RNGestureHandlerButtonManager.m → apple/RNGestureHandlerButtonManager.mm} +5 -3
- package/apple/RNGestureHandlerDirection.h +33 -0
- package/{ios → apple}/RNGestureHandlerEvents.h +21 -10
- package/{ios → apple}/RNGestureHandlerEvents.m +39 -13
- package/{ios → apple}/RNGestureHandlerManager.h +7 -2
- package/{ios → apple}/RNGestureHandlerManager.mm +84 -18
- package/apple/RNGestureHandlerModule.h +19 -0
- package/{ios → apple}/RNGestureHandlerModule.mm +88 -73
- package/{ios → apple}/RNGestureHandlerPointerTracker.h +5 -5
- package/{ios → apple}/RNGestureHandlerPointerTracker.m +21 -14
- package/apple/RNGestureHandlerPointerType.h +8 -0
- package/{ios → apple}/RNGestureHandlerRegistry.h +1 -1
- package/{ios → apple}/RNGestureHandlerRegistry.m +1 -1
- package/{ios → apple}/RNManualActivationRecognizer.h +8 -0
- package/{ios → apple}/RNManualActivationRecognizer.m +28 -7
- package/{ios → apple}/RNRootViewGestureRecognizer.m +77 -4
- package/jestSetup.js +22 -3
- package/kepler-compatibility.json +2 -3
- package/lib/commonjs/ActionType.js.map +1 -1
- package/lib/commonjs/Directions.js +21 -5
- package/lib/commonjs/Directions.js.map +1 -1
- package/lib/commonjs/EnableNewWebImplementation.js +11 -0
- package/lib/commonjs/EnableNewWebImplementation.js.map +1 -1
- package/lib/commonjs/GestureHandlerRootViewContext.js.map +1 -1
- package/lib/commonjs/PlatformConstants.js +1 -2
- package/lib/commonjs/PlatformConstants.js.map +1 -1
- package/lib/commonjs/PlatformConstants.kepler.js +12 -0
- package/lib/commonjs/PlatformConstants.kepler.js.map +1 -0
- package/lib/commonjs/PlatformConstants.web.js.map +1 -1
- package/lib/commonjs/PointerType.js +15 -0
- package/lib/commonjs/PointerType.js.map +1 -0
- package/lib/commonjs/RNGestureHandlerModule.js +5 -16
- package/lib/commonjs/RNGestureHandlerModule.js.map +1 -1
- package/lib/commonjs/RNGestureHandlerModule.kepler.js +4 -5
- package/lib/commonjs/RNGestureHandlerModule.kepler.js.map +1 -1
- package/lib/commonjs/RNGestureHandlerModule.web.js +25 -53
- package/lib/commonjs/RNGestureHandlerModule.web.js.map +1 -1
- package/lib/commonjs/RNGestureHandlerModule.windows.js +16 -81
- package/lib/commonjs/RNGestureHandlerModule.windows.js.map +1 -1
- package/lib/commonjs/RNRenderer.js.map +1 -1
- package/lib/commonjs/RNRenderer.web.js.map +1 -1
- package/lib/commonjs/State.js.map +1 -1
- package/lib/commonjs/TouchEventType.js.map +1 -1
- package/lib/commonjs/components/DrawerLayout.js +421 -385
- package/lib/commonjs/components/DrawerLayout.js.map +1 -1
- package/lib/commonjs/components/GestureButtons.js +138 -120
- package/lib/commonjs/components/GestureButtons.js.map +1 -1
- package/lib/commonjs/components/GestureButtonsProps.js +6 -0
- package/lib/commonjs/components/GestureButtonsProps.js.map +1 -0
- package/lib/commonjs/components/GestureComponents.js +16 -14
- package/lib/commonjs/components/GestureComponents.js.map +1 -1
- package/lib/commonjs/components/GestureComponents.web.js +10 -9
- package/lib/commonjs/components/GestureComponents.web.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerButton.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerButton.web.js +6 -6
- package/lib/commonjs/components/GestureHandlerButton.web.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerRootView.android.js +20 -7
- package/lib/commonjs/components/GestureHandlerRootView.android.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerRootView.js +19 -7
- package/lib/commonjs/components/GestureHandlerRootView.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerRootView.kepler.js +9 -6
- package/lib/commonjs/components/GestureHandlerRootView.kepler.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerRootView.web.js +18 -6
- package/lib/commonjs/components/GestureHandlerRootView.web.js.map +1 -1
- package/lib/commonjs/components/Pressable/Pressable.js +274 -0
- package/lib/commonjs/components/Pressable/Pressable.js.map +1 -0
- package/lib/commonjs/components/Pressable/PressableProps.js +6 -0
- package/lib/commonjs/components/Pressable/PressableProps.js.map +1 -0
- package/lib/commonjs/components/Pressable/StateMachine.js +44 -0
- package/lib/commonjs/components/Pressable/StateMachine.js.map +1 -0
- package/lib/commonjs/components/Pressable/index.js +14 -0
- package/lib/commonjs/components/Pressable/index.js.map +1 -0
- package/lib/commonjs/components/Pressable/stateDefinitions.js +88 -0
- package/lib/commonjs/components/Pressable/stateDefinitions.js.map +1 -0
- package/lib/commonjs/components/Pressable/utils.js +92 -0
- package/lib/commonjs/components/Pressable/utils.js.map +1 -0
- package/lib/commonjs/components/ReanimatedDrawerLayout.js +357 -0
- package/lib/commonjs/components/ReanimatedDrawerLayout.js.map +1 -0
- package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeable.js +337 -0
- package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeable.js.map +1 -0
- package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +12 -0
- package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js.map +1 -0
- package/lib/commonjs/components/ReanimatedSwipeable/index.js +21 -0
- package/lib/commonjs/components/ReanimatedSwipeable/index.js.map +1 -0
- package/lib/commonjs/components/Swipeable.js +286 -261
- package/lib/commonjs/components/Swipeable.js.map +1 -1
- package/lib/commonjs/components/Text.js +60 -0
- package/lib/commonjs/components/Text.js.map +1 -0
- package/lib/commonjs/components/gestureHandlerRootHOC.js +12 -6
- package/lib/commonjs/components/gestureHandlerRootHOC.js.map +1 -1
- package/lib/commonjs/components/touchables/ExtraButtonProps.js +2 -0
- package/lib/commonjs/components/touchables/ExtraButtonProps.js.map +1 -0
- package/lib/commonjs/components/touchables/GenericTouchable.js +83 -91
- package/lib/commonjs/components/touchables/GenericTouchable.js.map +1 -1
- package/lib/commonjs/components/touchables/GenericTouchableProps.js +6 -0
- package/lib/commonjs/components/touchables/GenericTouchableProps.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableHighlight.js +51 -48
- package/lib/commonjs/components/touchables/TouchableHighlight.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js +35 -35
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.js +5 -1
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableNativeFeedbackProps.js +6 -0
- package/lib/commonjs/components/touchables/TouchableNativeFeedbackProps.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableOpacity.js +39 -38
- package/lib/commonjs/components/touchables/TouchableOpacity.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js +22 -7
- package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js.map +1 -1
- package/lib/commonjs/components/touchables/index.js.map +1 -1
- package/lib/commonjs/components/utils.js +17 -0
- package/lib/commonjs/components/utils.js.map +1 -0
- package/lib/commonjs/findNodeHandle.js +9 -0
- package/lib/commonjs/findNodeHandle.js.map +1 -0
- package/lib/commonjs/findNodeHandle.web.js +39 -0
- package/lib/commonjs/findNodeHandle.web.js.map +1 -0
- package/lib/commonjs/getShadowNodeFromRef.js +28 -4
- package/lib/commonjs/getShadowNodeFromRef.js.map +1 -1
- package/lib/commonjs/getShadowNodeFromRef.web.js.map +1 -1
- package/lib/commonjs/ghQueueMicrotask.js +10 -0
- package/lib/commonjs/ghQueueMicrotask.js.map +1 -0
- package/lib/commonjs/handlers/FlingGestureHandler.js +13 -0
- package/lib/commonjs/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/ForceTouchGestureHandler.js +15 -6
- package/lib/commonjs/handlers/ForceTouchGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/GestureHandlerEventPayload.js +6 -0
- package/lib/commonjs/handlers/GestureHandlerEventPayload.js.map +1 -0
- package/lib/commonjs/handlers/LongPressGestureHandler.js +14 -1
- package/lib/commonjs/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/NativeViewGestureHandler.js +13 -0
- package/lib/commonjs/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/PanGestureHandler.js +13 -0
- package/lib/commonjs/handlers/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/PinchGestureHandler.js +12 -0
- package/lib/commonjs/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/PressabilityDebugView.js.map +1 -1
- package/lib/commonjs/handlers/PressabilityDebugView.web.js.map +1 -1
- package/lib/commonjs/handlers/RotationGestureHandler.js +12 -0
- package/lib/commonjs/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/TapGestureHandler.js +13 -0
- package/lib/commonjs/handlers/TapGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/createHandler.js +145 -142
- package/lib/commonjs/handlers/createHandler.js.map +1 -1
- package/lib/commonjs/handlers/createNativeWrapper.js +19 -16
- package/lib/commonjs/handlers/createNativeWrapper.js.map +1 -1
- package/lib/commonjs/handlers/customDirectEventTypes.js +13 -0
- package/lib/commonjs/handlers/customDirectEventTypes.js.map +1 -0
- package/lib/commonjs/handlers/customDirectEventTypes.web.js +10 -0
- package/lib/commonjs/handlers/customDirectEventTypes.web.js.map +1 -0
- package/lib/commonjs/handlers/gestureHandlerCommon.js +13 -72
- package/lib/commonjs/handlers/gestureHandlerCommon.js.map +1 -1
- package/lib/commonjs/handlers/gestureHandlerTypesCompat.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js +32 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.web.js +41 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.web.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js +67 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js +20 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/index.js +125 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/index.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/needsToReattach.js +22 -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 +66 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js +143 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js +47 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useMountReactions.js +41 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useMountReactions.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js +45 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/utils.js +143 -0
- package/lib/commonjs/handlers/gestures/GestureDetector/utils.js.map +1 -0
- package/lib/commonjs/handlers/gestures/eventReceiver.js +15 -23
- package/lib/commonjs/handlers/gestures/eventReceiver.js.map +1 -1
- package/lib/commonjs/handlers/gestures/flingGesture.js +14 -4
- package/lib/commonjs/handlers/gestures/flingGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js +30 -4
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gesture.js +162 -20
- package/lib/commonjs/handlers/gestures/gesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureComposition.js +9 -9
- package/lib/commonjs/handlers/gestures/gestureComposition.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureObjects.js +59 -0
- package/lib/commonjs/handlers/gestures/gestureObjects.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureStateManager.js +50 -40
- package/lib/commonjs/handlers/gestures/gestureStateManager.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js +2 -1
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js.map +1 -1
- package/lib/commonjs/handlers/gestures/hoverGesture.js +2 -5
- package/lib/commonjs/handlers/gestures/hoverGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/longPressGesture.js +22 -4
- package/lib/commonjs/handlers/gestures/longPressGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/manualGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/nativeGesture.js +11 -4
- package/lib/commonjs/handlers/gestures/nativeGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/panGesture.js +77 -4
- package/lib/commonjs/handlers/gestures/panGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/pinchGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js +1 -2
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js.map +1 -1
- package/lib/commonjs/handlers/gestures/rotationGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/tapGesture.js +43 -4
- package/lib/commonjs/handlers/gestures/tapGesture.js.map +1 -1
- package/lib/commonjs/handlers/getNextHandlerTag.js +11 -0
- package/lib/commonjs/handlers/getNextHandlerTag.js.map +1 -0
- package/lib/commonjs/handlers/handlersRegistry.js +7 -9
- package/lib/commonjs/handlers/handlersRegistry.js.map +1 -1
- package/lib/commonjs/handlers/utils.js +69 -0
- package/lib/commonjs/handlers/utils.js.map +1 -0
- package/lib/commonjs/index.js +28 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/init.js +1 -1
- package/lib/commonjs/init.js.map +1 -1
- package/lib/commonjs/jestUtils/index.js.map +1 -1
- package/lib/commonjs/jestUtils/jestUtils.js +18 -14
- package/lib/commonjs/jestUtils/jestUtils.js.map +1 -1
- package/lib/commonjs/mocks/Pressable.js +13 -0
- package/lib/commonjs/mocks/Pressable.js.map +1 -0
- package/lib/commonjs/mocks/mocks.js +70 -0
- package/lib/commonjs/mocks/mocks.js.map +1 -0
- package/lib/commonjs/mocks.js.map +1 -1
- package/lib/commonjs/mountRegistry.js +37 -0
- package/lib/commonjs/mountRegistry.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/specs/NativeRNGestureHandlerModule.js +9 -0
- package/lib/commonjs/specs/NativeRNGestureHandlerModule.js.map +1 -0
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.kepler.js.map +1 -1
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.ts +24 -0
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.kepler.js +17 -0
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.kepler.js.map +1 -0
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.ts +7 -0
- package/lib/commonjs/typeUtils.js.map +1 -1
- package/lib/commonjs/utils.js +47 -16
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/commonjs/web/Gestures.js +48 -0
- package/lib/commonjs/web/Gestures.js.map +1 -0
- package/lib/commonjs/web/constants.js +2 -7
- package/lib/commonjs/web/constants.js.map +1 -1
- package/lib/commonjs/web/detectors/RotationGestureDetector.js +35 -40
- package/lib/commonjs/web/detectors/RotationGestureDetector.js.map +1 -1
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js +30 -46
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js.map +1 -1
- package/lib/commonjs/web/handlers/FlingGestureHandler.js +50 -34
- package/lib/commonjs/web/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/GestureHandler.js +218 -197
- package/lib/commonjs/web/handlers/GestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/HoverGestureHandler.js +12 -15
- package/lib/commonjs/web/handlers/HoverGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/IGestureHandler.js +2 -0
- package/lib/commonjs/web/handlers/IGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js +57 -30
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/ManualGestureHandler.js +1 -12
- package/lib/commonjs/web/handlers/ManualGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +42 -41
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/PanGestureHandler.js +117 -65
- package/lib/commonjs/web/handlers/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/PinchGestureHandler.js +36 -50
- package/lib/commonjs/web/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/RotationGestureHandler.js +32 -49
- package/lib/commonjs/web/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/TapGestureHandler.js +39 -43
- package/lib/commonjs/web/handlers/TapGestureHandler.js.map +1 -1
- package/lib/commonjs/web/interfaces.js +6 -18
- package/lib/commonjs/web/interfaces.js.map +1 -1
- package/lib/commonjs/web/tools/CircularBuffer.js +12 -19
- package/lib/commonjs/web/tools/CircularBuffer.js.map +1 -1
- package/lib/commonjs/web/tools/EventManager.js +7 -8
- package/lib/commonjs/web/tools/EventManager.js.map +1 -1
- package/lib/commonjs/web/tools/GestureHandlerDelegate.js.map +1 -1
- package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js +121 -159
- package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js.map +1 -1
- package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js +102 -30
- package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js.map +1 -1
- package/lib/commonjs/web/tools/InteractionManager.js +44 -47
- package/lib/commonjs/web/tools/InteractionManager.js.map +1 -1
- package/lib/commonjs/web/tools/KeyboardEventManager.js +108 -0
- package/lib/commonjs/web/tools/KeyboardEventManager.js.map +1 -0
- package/lib/commonjs/web/tools/LeastSquareSolver.js +22 -30
- package/lib/commonjs/web/tools/LeastSquareSolver.js.map +1 -1
- package/lib/commonjs/web/tools/NodeManager.js +5 -7
- package/lib/commonjs/web/tools/NodeManager.js.map +1 -1
- package/lib/commonjs/web/tools/PointerEventManager.js +148 -130
- package/lib/commonjs/web/tools/PointerEventManager.js.map +1 -1
- package/lib/commonjs/web/tools/PointerTracker.js +97 -107
- package/lib/commonjs/web/tools/PointerTracker.js.map +1 -1
- package/lib/commonjs/web/tools/Vector.js +37 -0
- package/lib/commonjs/web/tools/Vector.js.map +1 -0
- package/lib/commonjs/web/tools/VelocityTracker.js +11 -15
- package/lib/commonjs/web/tools/VelocityTracker.js.map +1 -1
- package/lib/commonjs/web/tools/WheelEventManager.js +55 -0
- package/lib/commonjs/web/tools/WheelEventManager.js.map +1 -0
- package/lib/commonjs/web/utils.js +221 -0
- package/lib/commonjs/web/utils.js.map +1 -1
- package/lib/commonjs/web_hammer/DiscreteGestureHandler.js +1 -1
- package/lib/commonjs/web_hammer/DiscreteGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/DraggingGestureHandler.js +1 -1
- package/lib/commonjs/web_hammer/DraggingGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/Errors.js.map +1 -1
- package/lib/commonjs/web_hammer/FlingGestureHandler.js +1 -1
- package/lib/commonjs/web_hammer/FlingGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/GestureHandler.js +122 -129
- package/lib/commonjs/web_hammer/GestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/LongPressGestureHandler.js +1 -1
- package/lib/commonjs/web_hammer/LongPressGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/NativeViewGestureHandler.js +1 -2
- package/lib/commonjs/web_hammer/NativeViewGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/NodeManager.js +2 -1
- package/lib/commonjs/web_hammer/NodeManager.js.map +1 -1
- package/lib/commonjs/web_hammer/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/PinchGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/PressGestureHandler.js +2 -9
- package/lib/commonjs/web_hammer/PressGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/RotationGestureHandler.js +1 -2
- package/lib/commonjs/web_hammer/RotationGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/TapGestureHandler.js +19 -27
- package/lib/commonjs/web_hammer/TapGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/constants.js.map +1 -1
- package/lib/commonjs/web_hammer/utils.js.map +1 -1
- package/lib/module/ActionType.js +2 -0
- package/lib/module/ActionType.js.map +1 -1
- package/lib/module/Directions.js +22 -4
- package/lib/module/Directions.js.map +1 -1
- package/lib/module/EnableNewWebImplementation.js +13 -0
- package/lib/module/EnableNewWebImplementation.js.map +1 -1
- package/lib/module/GestureHandlerRootViewContext.js +2 -0
- package/lib/module/GestureHandlerRootViewContext.js.map +1 -1
- package/lib/module/PlatformConstants.js +3 -2
- package/lib/module/PlatformConstants.js.map +1 -1
- package/lib/module/PlatformConstants.kepler.js +8 -0
- package/lib/module/PlatformConstants.kepler.js.map +1 -0
- package/lib/module/PlatformConstants.web.js +2 -0
- package/lib/module/PlatformConstants.web.js.map +1 -1
- package/lib/module/PointerType.js +11 -0
- package/lib/module/PointerType.js.map +1 -0
- package/lib/module/RNGestureHandlerModule.js +6 -15
- package/lib/module/RNGestureHandlerModule.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.kepler.js +5 -3
- package/lib/module/RNGestureHandlerModule.kepler.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.web.js +22 -46
- package/lib/module/RNGestureHandlerModule.web.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.windows.js +16 -78
- package/lib/module/RNGestureHandlerModule.windows.js.map +1 -1
- package/lib/module/RNRenderer.js +2 -0
- package/lib/module/RNRenderer.js.map +1 -1
- package/lib/module/RNRenderer.web.js +2 -0
- package/lib/module/RNRenderer.web.js.map +1 -1
- package/lib/module/State.js +2 -0
- package/lib/module/State.js.map +1 -1
- package/lib/module/TouchEventType.js +2 -0
- package/lib/module/TouchEventType.js.map +1 -1
- package/lib/module/components/DrawerLayout.js +420 -383
- package/lib/module/components/DrawerLayout.js.map +1 -1
- package/lib/module/components/GestureButtons.js +139 -115
- package/lib/module/components/GestureButtons.js.map +1 -1
- package/lib/module/components/GestureButtonsProps.js +4 -0
- package/lib/module/components/GestureButtonsProps.js.map +1 -0
- package/lib/module/components/GestureComponents.js +17 -12
- package/lib/module/components/GestureComponents.js.map +1 -1
- package/lib/module/components/GestureComponents.web.js +11 -7
- package/lib/module/components/GestureComponents.web.js.map +1 -1
- package/lib/module/components/GestureHandlerButton.js +2 -0
- package/lib/module/components/GestureHandlerButton.js.map +1 -1
- package/lib/module/components/GestureHandlerButton.web.js +7 -4
- package/lib/module/components/GestureHandlerButton.web.js.map +1 -1
- package/lib/module/components/GestureHandlerRootView.android.js +21 -5
- package/lib/module/components/GestureHandlerRootView.android.js.map +1 -1
- package/lib/module/components/GestureHandlerRootView.js +21 -6
- package/lib/module/components/GestureHandlerRootView.js.map +1 -1
- package/lib/module/components/GestureHandlerRootView.kepler.js +10 -4
- package/lib/module/components/GestureHandlerRootView.kepler.js.map +1 -1
- package/lib/module/components/GestureHandlerRootView.web.js +20 -5
- package/lib/module/components/GestureHandlerRootView.web.js.map +1 -1
- package/lib/module/components/Pressable/Pressable.js +268 -0
- package/lib/module/components/Pressable/Pressable.js.map +1 -0
- package/lib/module/components/Pressable/PressableProps.js +4 -0
- package/lib/module/components/Pressable/PressableProps.js.map +1 -0
- package/lib/module/components/Pressable/StateMachine.js +40 -0
- package/lib/module/components/Pressable/StateMachine.js.map +1 -0
- package/lib/module/components/Pressable/index.js +4 -0
- package/lib/module/components/Pressable/index.js.map +1 -0
- package/lib/module/components/Pressable/stateDefinitions.js +83 -0
- package/lib/module/components/Pressable/stateDefinitions.js.map +1 -0
- package/lib/module/components/Pressable/utils.js +84 -0
- package/lib/module/components/Pressable/utils.js.map +1 -0
- package/lib/module/components/ReanimatedDrawerLayout.js +352 -0
- package/lib/module/components/ReanimatedDrawerLayout.js.map +1 -0
- package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeable.js +332 -0
- package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeable.js.map +1 -0
- package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +8 -0
- package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js.map +1 -0
- package/lib/module/components/ReanimatedSwipeable/index.js +5 -0
- package/lib/module/components/ReanimatedSwipeable/index.js.map +1 -0
- package/lib/module/components/Swipeable.js +285 -259
- package/lib/module/components/Swipeable.js.map +1 -1
- package/lib/module/components/Text.js +55 -0
- package/lib/module/components/Text.js.map +1 -0
- package/lib/module/components/gestureHandlerRootHOC.js +14 -3
- package/lib/module/components/gestureHandlerRootHOC.js.map +1 -1
- package/lib/module/components/touchables/ExtraButtonProps.js +2 -0
- package/lib/module/components/touchables/ExtraButtonProps.js.map +1 -0
- package/lib/module/components/touchables/GenericTouchable.js +84 -89
- package/lib/module/components/touchables/GenericTouchable.js.map +1 -1
- package/lib/module/components/touchables/GenericTouchableProps.js +4 -0
- package/lib/module/components/touchables/GenericTouchableProps.js.map +1 -0
- package/lib/module/components/touchables/TouchableHighlight.js +52 -46
- package/lib/module/components/touchables/TouchableHighlight.js.map +1 -1
- package/lib/module/components/touchables/TouchableNativeFeedback.android.js +36 -33
- package/lib/module/components/touchables/TouchableNativeFeedback.android.js.map +1 -1
- package/lib/module/components/touchables/TouchableNativeFeedback.js +8 -1
- package/lib/module/components/touchables/TouchableNativeFeedback.js.map +1 -1
- package/lib/module/components/touchables/TouchableNativeFeedbackProps.js +4 -0
- package/lib/module/components/touchables/TouchableNativeFeedbackProps.js.map +1 -0
- package/lib/module/components/touchables/TouchableOpacity.js +40 -36
- package/lib/module/components/touchables/TouchableOpacity.js.map +1 -1
- package/lib/module/components/touchables/TouchableWithoutFeedback.js +23 -5
- package/lib/module/components/touchables/TouchableWithoutFeedback.js.map +1 -1
- package/lib/module/components/touchables/index.js +2 -0
- package/lib/module/components/touchables/index.js.map +1 -1
- package/lib/module/components/utils.js +13 -0
- package/lib/module/components/utils.js.map +1 -0
- package/lib/module/findNodeHandle.js +5 -0
- package/lib/module/findNodeHandle.js.map +1 -0
- package/lib/module/findNodeHandle.web.js +35 -0
- package/lib/module/findNodeHandle.web.js.map +1 -0
- package/lib/module/getShadowNodeFromRef.js +30 -4
- package/lib/module/getShadowNodeFromRef.js.map +1 -1
- package/lib/module/getShadowNodeFromRef.web.js +2 -0
- package/lib/module/getShadowNodeFromRef.web.js.map +1 -1
- package/lib/module/ghQueueMicrotask.js +6 -0
- package/lib/module/ghQueueMicrotask.js.map +1 -0
- package/lib/module/handlers/FlingGestureHandler.js +15 -0
- package/lib/module/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/module/handlers/ForceTouchGestureHandler.js +17 -6
- package/lib/module/handlers/ForceTouchGestureHandler.js.map +1 -1
- package/lib/module/handlers/GestureHandlerEventPayload.js +4 -0
- package/lib/module/handlers/GestureHandlerEventPayload.js.map +1 -0
- package/lib/module/handlers/LongPressGestureHandler.js +16 -1
- package/lib/module/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/module/handlers/NativeViewGestureHandler.js +15 -0
- package/lib/module/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/module/handlers/PanGestureHandler.js +15 -0
- package/lib/module/handlers/PanGestureHandler.js.map +1 -1
- package/lib/module/handlers/PinchGestureHandler.js +15 -0
- package/lib/module/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/module/handlers/PressabilityDebugView.js +2 -0
- package/lib/module/handlers/PressabilityDebugView.js.map +1 -1
- package/lib/module/handlers/PressabilityDebugView.web.js +2 -0
- package/lib/module/handlers/PressabilityDebugView.web.js.map +1 -1
- package/lib/module/handlers/RotationGestureHandler.js +15 -0
- package/lib/module/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/module/handlers/TapGestureHandler.js +15 -0
- package/lib/module/handlers/TapGestureHandler.js.map +1 -1
- package/lib/module/handlers/createHandler.js +138 -134
- package/lib/module/handlers/createHandler.js.map +1 -1
- package/lib/module/handlers/createNativeWrapper.js +19 -12
- package/lib/module/handlers/createNativeWrapper.js.map +1 -1
- package/lib/module/handlers/customDirectEventTypes.js +5 -0
- package/lib/module/handlers/customDirectEventTypes.js.map +1 -0
- package/lib/module/handlers/customDirectEventTypes.web.js +7 -0
- package/lib/module/handlers/customDirectEventTypes.web.js.map +1 -0
- package/lib/module/handlers/gestureHandlerCommon.js +15 -65
- package/lib/module/handlers/gestureHandlerCommon.js.map +1 -1
- package/lib/module/handlers/gestureHandlerTypesCompat.js +2 -0
- package/lib/module/handlers/gestureHandlerTypesCompat.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/Wrap.web.js +36 -0
- package/lib/module/handlers/gestures/GestureDetector/Wrap.web.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js +62 -0
- package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js +15 -0
- package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/index.js +117 -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 +4 -0
- package/lib/module/handlers/gestures/GestureDetector/types.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js +61 -0
- package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js +139 -0
- package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js +43 -0
- package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/useMountReactions.js +37 -0
- package/lib/module/handlers/gestures/GestureDetector/useMountReactions.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js +40 -0
- package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector/utils.js +134 -0
- package/lib/module/handlers/gestures/GestureDetector/utils.js.map +1 -0
- package/lib/module/handlers/gestures/eventReceiver.js +17 -23
- package/lib/module/handlers/gestures/eventReceiver.js.map +1 -1
- package/lib/module/handlers/gestures/flingGesture.js +16 -4
- package/lib/module/handlers/gestures/flingGesture.js.map +1 -1
- package/lib/module/handlers/gestures/forceTouchGesture.js +33 -4
- package/lib/module/handlers/gestures/forceTouchGesture.js.map +1 -1
- package/lib/module/handlers/gestures/gesture.js +163 -19
- package/lib/module/handlers/gestures/gesture.js.map +1 -1
- package/lib/module/handlers/gestures/gestureComposition.js +11 -9
- package/lib/module/handlers/gestures/gestureComposition.js.map +1 -1
- package/lib/module/handlers/gestures/gestureObjects.js +62 -0
- package/lib/module/handlers/gestures/gestureObjects.js.map +1 -1
- package/lib/module/handlers/gestures/gestureStateManager.js +52 -40
- package/lib/module/handlers/gestures/gestureStateManager.js.map +1 -1
- package/lib/module/handlers/gestures/gestureStateManager.web.js +4 -1
- package/lib/module/handlers/gestures/gestureStateManager.web.js.map +1 -1
- package/lib/module/handlers/gestures/hoverGesture.js +4 -5
- package/lib/module/handlers/gestures/hoverGesture.js.map +1 -1
- package/lib/module/handlers/gestures/longPressGesture.js +24 -4
- package/lib/module/handlers/gestures/longPressGesture.js.map +1 -1
- package/lib/module/handlers/gestures/manualGesture.js +2 -0
- package/lib/module/handlers/gestures/manualGesture.js.map +1 -1
- package/lib/module/handlers/gestures/nativeGesture.js +13 -4
- package/lib/module/handlers/gestures/nativeGesture.js.map +1 -1
- package/lib/module/handlers/gestures/panGesture.js +79 -4
- package/lib/module/handlers/gestures/panGesture.js.map +1 -1
- package/lib/module/handlers/gestures/pinchGesture.js +2 -0
- package/lib/module/handlers/gestures/pinchGesture.js.map +1 -1
- package/lib/module/handlers/gestures/reanimatedWrapper.js +3 -2
- package/lib/module/handlers/gestures/reanimatedWrapper.js.map +1 -1
- package/lib/module/handlers/gestures/rotationGesture.js +2 -0
- package/lib/module/handlers/gestures/rotationGesture.js.map +1 -1
- package/lib/module/handlers/gestures/tapGesture.js +45 -4
- package/lib/module/handlers/gestures/tapGesture.js.map +1 -1
- package/lib/module/handlers/getNextHandlerTag.js +7 -0
- package/lib/module/handlers/getNextHandlerTag.js.map +1 -0
- package/lib/module/handlers/handlersRegistry.js +9 -9
- package/lib/module/handlers/handlersRegistry.js.map +1 -1
- package/lib/module/handlers/utils.js +61 -0
- package/lib/module/handlers/utils.js.map +1 -0
- package/lib/module/index.js +6 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/init.js +3 -1
- package/lib/module/init.js.map +1 -1
- package/lib/module/jestUtils/index.js +2 -0
- package/lib/module/jestUtils/index.js.map +1 -1
- package/lib/module/jestUtils/jestUtils.js +20 -14
- package/lib/module/jestUtils/jestUtils.js.map +1 -1
- package/lib/module/mocks/Pressable.js +4 -0
- package/lib/module/mocks/Pressable.js.map +1 -0
- package/lib/module/mocks/mocks.js +64 -0
- package/lib/module/mocks/mocks.js.map +1 -0
- package/lib/module/mocks.js +2 -0
- package/lib/module/mocks.js.map +1 -1
- package/lib/module/mountRegistry.js +32 -0
- package/lib/module/mountRegistry.js.map +1 -0
- package/lib/module/specs/NativeRNGestureHandlerModule.js +5 -0
- package/lib/module/specs/NativeRNGestureHandlerModule.js.map +1 -0
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.kepler.js +2 -0
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.kepler.js.map +1 -1
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.ts +24 -0
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.kepler.js +11 -0
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.kepler.js.map +1 -0
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.ts +7 -0
- package/lib/module/typeUtils.js +1 -1
- package/lib/module/typeUtils.js.map +1 -1
- package/lib/module/utils.js +45 -14
- package/lib/module/utils.js.map +1 -1
- package/lib/module/web/Gestures.js +42 -0
- package/lib/module/web/Gestures.js.map +1 -0
- package/lib/module/web/constants.js +3 -6
- package/lib/module/web/constants.js.map +1 -1
- package/lib/module/web/detectors/RotationGestureDetector.js +37 -40
- package/lib/module/web/detectors/RotationGestureDetector.js.map +1 -1
- package/lib/module/web/detectors/ScaleGestureDetector.js +32 -46
- package/lib/module/web/detectors/ScaleGestureDetector.js.map +1 -1
- package/lib/module/web/handlers/FlingGestureHandler.js +52 -34
- package/lib/module/web/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/GestureHandler.js +218 -197
- package/lib/module/web/handlers/GestureHandler.js.map +1 -1
- package/lib/module/web/handlers/HoverGestureHandler.js +14 -15
- package/lib/module/web/handlers/HoverGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/IGestureHandler.js +2 -0
- package/lib/module/web/handlers/IGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/LongPressGestureHandler.js +59 -30
- package/lib/module/web/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/ManualGestureHandler.js +3 -12
- package/lib/module/web/handlers/ManualGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/NativeViewGestureHandler.js +44 -41
- package/lib/module/web/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/PanGestureHandler.js +119 -65
- package/lib/module/web/handlers/PanGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/PinchGestureHandler.js +38 -50
- package/lib/module/web/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/RotationGestureHandler.js +34 -49
- package/lib/module/web/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/TapGestureHandler.js +41 -43
- package/lib/module/web/handlers/TapGestureHandler.js.map +1 -1
- package/lib/module/web/interfaces.js +7 -17
- package/lib/module/web/interfaces.js.map +1 -1
- package/lib/module/web/tools/CircularBuffer.js +14 -19
- package/lib/module/web/tools/CircularBuffer.js.map +1 -1
- package/lib/module/web/tools/EventManager.js +9 -8
- package/lib/module/web/tools/EventManager.js.map +1 -1
- package/lib/module/web/tools/GestureHandlerDelegate.js +2 -0
- package/lib/module/web/tools/GestureHandlerDelegate.js.map +1 -1
- package/lib/module/web/tools/GestureHandlerOrchestrator.js +123 -159
- package/lib/module/web/tools/GestureHandlerOrchestrator.js.map +1 -1
- package/lib/module/web/tools/GestureHandlerWebDelegate.js +103 -29
- package/lib/module/web/tools/GestureHandlerWebDelegate.js.map +1 -1
- package/lib/module/web/tools/InteractionManager.js +46 -47
- package/lib/module/web/tools/InteractionManager.js.map +1 -1
- package/lib/module/web/tools/KeyboardEventManager.js +102 -0
- package/lib/module/web/tools/KeyboardEventManager.js.map +1 -0
- package/lib/module/web/tools/LeastSquareSolver.js +24 -30
- package/lib/module/web/tools/LeastSquareSolver.js.map +1 -1
- package/lib/module/web/tools/NodeManager.js +7 -7
- package/lib/module/web/tools/NodeManager.js.map +1 -1
- package/lib/module/web/tools/PointerEventManager.js +151 -131
- package/lib/module/web/tools/PointerEventManager.js.map +1 -1
- package/lib/module/web/tools/PointerTracker.js +99 -107
- package/lib/module/web/tools/PointerTracker.js.map +1 -1
- package/lib/module/web/tools/Vector.js +32 -0
- package/lib/module/web/tools/Vector.js.map +1 -0
- package/lib/module/web/tools/VelocityTracker.js +13 -15
- package/lib/module/web/tools/VelocityTracker.js.map +1 -1
- package/lib/module/web/tools/WheelEventManager.js +49 -0
- package/lib/module/web/tools/WheelEventManager.js.map +1 -0
- package/lib/module/web/utils.js +215 -0
- package/lib/module/web/utils.js.map +1 -1
- package/lib/module/web_hammer/DiscreteGestureHandler.js +3 -1
- package/lib/module/web_hammer/DiscreteGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/DraggingGestureHandler.js +3 -1
- package/lib/module/web_hammer/DraggingGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/Errors.js +2 -0
- package/lib/module/web_hammer/Errors.js.map +1 -1
- package/lib/module/web_hammer/FlingGestureHandler.js +3 -1
- package/lib/module/web_hammer/FlingGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/GestureHandler.js +121 -128
- package/lib/module/web_hammer/GestureHandler.js.map +1 -1
- package/lib/module/web_hammer/IndiscreteGestureHandler.js +2 -0
- package/lib/module/web_hammer/IndiscreteGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/LongPressGestureHandler.js +3 -1
- package/lib/module/web_hammer/LongPressGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/NativeViewGestureHandler.js +2 -0
- package/lib/module/web_hammer/NativeViewGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/NodeManager.js +3 -1
- package/lib/module/web_hammer/NodeManager.js.map +1 -1
- package/lib/module/web_hammer/PanGestureHandler.js +2 -0
- package/lib/module/web_hammer/PanGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/PinchGestureHandler.js +2 -0
- package/lib/module/web_hammer/PinchGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/PressGestureHandler.js +4 -9
- package/lib/module/web_hammer/PressGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/RotationGestureHandler.js +3 -2
- package/lib/module/web_hammer/RotationGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/TapGestureHandler.js +21 -27
- package/lib/module/web_hammer/TapGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/constants.js +2 -0
- package/lib/module/web_hammer/constants.js.map +1 -1
- package/lib/module/web_hammer/utils.js +2 -0
- package/lib/module/web_hammer/utils.js.map +1 -1
- package/lib/typescript/ActionType.d.ts +2 -1
- package/lib/typescript/ActionType.d.ts.map +1 -0
- package/lib/typescript/Directions.d.ts +9 -1
- package/lib/typescript/Directions.d.ts.map +1 -0
- package/lib/typescript/EnableNewWebImplementation.d.ts +7 -0
- package/lib/typescript/EnableNewWebImplementation.d.ts.map +1 -0
- package/lib/typescript/GestureHandlerRootViewContext.d.ts +1 -0
- package/lib/typescript/GestureHandlerRootViewContext.d.ts.map +1 -0
- package/lib/typescript/PlatformConstants.d.ts +1 -0
- package/lib/typescript/PlatformConstants.d.ts.map +1 -0
- package/lib/typescript/PlatformConstants.kepler.d.ts +5 -0
- package/lib/typescript/PlatformConstants.kepler.d.ts.map +1 -0
- package/lib/typescript/PlatformConstants.web.d.ts +1 -0
- package/lib/typescript/PlatformConstants.web.d.ts.map +1 -0
- package/lib/typescript/PointerType.d.ts +8 -0
- package/lib/typescript/PointerType.d.ts.map +1 -0
- package/lib/typescript/RNGestureHandlerModule.d.ts +3 -13
- package/lib/typescript/RNGestureHandlerModule.d.ts.map +1 -0
- package/lib/typescript/RNGestureHandlerModule.kepler.d.ts +1 -0
- package/lib/typescript/RNGestureHandlerModule.kepler.d.ts.map +1 -0
- package/lib/typescript/RNGestureHandlerModule.web.d.ts +5 -39
- package/lib/typescript/RNGestureHandlerModule.web.d.ts.map +1 -0
- package/lib/typescript/RNGestureHandlerModule.windows.d.ts +6 -21
- package/lib/typescript/RNGestureHandlerModule.windows.d.ts.map +1 -0
- package/lib/typescript/RNRenderer.d.ts +1 -0
- package/lib/typescript/RNRenderer.d.ts.map +1 -0
- package/lib/typescript/RNRenderer.web.d.ts +1 -0
- package/lib/typescript/RNRenderer.web.d.ts.map +1 -0
- package/lib/typescript/State.d.ts +2 -1
- package/lib/typescript/State.d.ts.map +1 -0
- package/lib/typescript/TouchEventType.d.ts +2 -1
- package/lib/typescript/TouchEventType.d.ts.map +1 -0
- package/lib/typescript/components/DrawerLayout.d.ts +39 -1
- package/lib/typescript/components/DrawerLayout.d.ts.map +1 -0
- package/lib/typescript/components/GestureButtons.d.ts +6 -119
- package/lib/typescript/components/GestureButtons.d.ts.map +1 -0
- package/lib/typescript/components/GestureButtonsProps.d.ts +124 -0
- package/lib/typescript/components/GestureButtonsProps.d.ts.map +1 -0
- package/lib/typescript/components/GestureComponents.d.ts +4 -3
- package/lib/typescript/components/GestureComponents.d.ts.map +1 -0
- package/lib/typescript/components/GestureComponents.web.d.ts +1 -0
- package/lib/typescript/components/GestureComponents.web.d.ts.map +1 -0
- package/lib/typescript/components/GestureHandlerButton.d.ts +2 -1
- package/lib/typescript/components/GestureHandlerButton.d.ts.map +1 -0
- package/lib/typescript/components/GestureHandlerButton.web.d.ts +1 -0
- package/lib/typescript/components/GestureHandlerButton.web.d.ts.map +1 -0
- package/lib/typescript/components/GestureHandlerRootView.android.d.ts +2 -1
- package/lib/typescript/components/GestureHandlerRootView.android.d.ts.map +1 -0
- package/lib/typescript/components/GestureHandlerRootView.d.ts +2 -1
- package/lib/typescript/components/GestureHandlerRootView.d.ts.map +1 -0
- package/lib/typescript/components/GestureHandlerRootView.kepler.d.ts +1 -0
- package/lib/typescript/components/GestureHandlerRootView.kepler.d.ts.map +1 -0
- package/lib/typescript/components/GestureHandlerRootView.web.d.ts +2 -1
- package/lib/typescript/components/GestureHandlerRootView.web.d.ts.map +1 -0
- package/lib/typescript/components/Pressable/Pressable.d.ts +5 -0
- package/lib/typescript/components/Pressable/Pressable.d.ts.map +1 -0
- package/lib/typescript/components/Pressable/PressableProps.d.ts +137 -0
- package/lib/typescript/components/Pressable/PressableProps.d.ts.map +1 -0
- package/lib/typescript/components/Pressable/StateMachine.d.ts +16 -0
- package/lib/typescript/components/Pressable/StateMachine.d.ts.map +1 -0
- package/lib/typescript/components/Pressable/index.d.ts +3 -0
- package/lib/typescript/components/Pressable/index.d.ts.map +1 -0
- package/lib/typescript/components/Pressable/stateDefinitions.d.ts +11 -0
- package/lib/typescript/components/Pressable/stateDefinitions.d.ts.map +1 -0
- package/lib/typescript/components/Pressable/utils.d.ts +11 -0
- package/lib/typescript/components/Pressable/utils.d.ts.map +1 -0
- package/lib/typescript/components/ReanimatedDrawerLayout.d.ts +168 -0
- package/lib/typescript/components/ReanimatedDrawerLayout.d.ts.map +1 -0
- package/lib/typescript/components/ReanimatedSwipeable/ReanimatedSwipeable.d.ts +6 -0
- package/lib/typescript/components/ReanimatedSwipeable/ReanimatedSwipeable.d.ts.map +1 -0
- package/lib/typescript/components/ReanimatedSwipeable/ReanimatedSwipeableProps.d.ts +150 -0
- package/lib/typescript/components/ReanimatedSwipeable/ReanimatedSwipeableProps.d.ts.map +1 -0
- package/lib/typescript/components/ReanimatedSwipeable/index.d.ts +3 -0
- package/lib/typescript/components/ReanimatedSwipeable/index.d.ts.map +1 -0
- package/lib/typescript/components/Swipeable.d.ts +14 -0
- package/lib/typescript/components/Swipeable.d.ts.map +1 -0
- package/lib/typescript/components/Text.d.ts +5 -0
- package/lib/typescript/components/Text.d.ts.map +1 -0
- package/lib/typescript/components/gestureHandlerRootHOC.d.ts +6 -1
- package/lib/typescript/components/gestureHandlerRootHOC.d.ts.map +1 -0
- package/lib/typescript/components/touchables/ExtraButtonProps.d.ts +8 -0
- package/lib/typescript/components/touchables/ExtraButtonProps.d.ts.map +1 -0
- package/lib/typescript/components/touchables/GenericTouchable.d.ts +4 -16
- package/lib/typescript/components/touchables/GenericTouchable.d.ts.map +1 -0
- package/lib/typescript/components/touchables/GenericTouchableProps.d.ts +17 -0
- package/lib/typescript/components/touchables/GenericTouchableProps.d.ts.map +1 -0
- package/lib/typescript/components/touchables/TouchableHighlight.d.ts +7 -1
- package/lib/typescript/components/touchables/TouchableHighlight.d.ts.map +1 -0
- package/lib/typescript/components/touchables/TouchableNativeFeedback.android.d.ts +6 -10
- package/lib/typescript/components/touchables/TouchableNativeFeedback.android.d.ts.map +1 -0
- package/lib/typescript/components/touchables/TouchableNativeFeedback.d.ts +6 -1
- package/lib/typescript/components/touchables/TouchableNativeFeedback.d.ts.map +1 -0
- package/lib/typescript/components/touchables/TouchableNativeFeedbackProps.d.ts +9 -0
- package/lib/typescript/components/touchables/TouchableNativeFeedbackProps.d.ts.map +1 -0
- package/lib/typescript/components/touchables/TouchableOpacity.d.ts +7 -1
- package/lib/typescript/components/touchables/TouchableOpacity.d.ts.map +1 -0
- package/lib/typescript/components/touchables/TouchableWithoutFeedback.d.ts +11 -3
- package/lib/typescript/components/touchables/TouchableWithoutFeedback.d.ts.map +1 -0
- package/lib/typescript/components/touchables/index.d.ts +1 -0
- package/lib/typescript/components/touchables/index.d.ts.map +1 -0
- package/lib/typescript/components/utils.d.ts +5 -0
- package/lib/typescript/components/utils.d.ts.map +1 -0
- package/lib/typescript/findNodeHandle.d.ts +3 -0
- package/lib/typescript/findNodeHandle.d.ts.map +1 -0
- package/lib/typescript/findNodeHandle.web.d.ts +3 -0
- package/lib/typescript/findNodeHandle.web.d.ts.map +1 -0
- package/lib/typescript/getShadowNodeFromRef.d.ts +2 -1
- package/lib/typescript/getShadowNodeFromRef.d.ts.map +1 -0
- package/lib/typescript/getShadowNodeFromRef.web.d.ts +1 -0
- package/lib/typescript/getShadowNodeFromRef.web.d.ts.map +1 -0
- package/lib/typescript/ghQueueMicrotask.d.ts +2 -0
- package/lib/typescript/ghQueueMicrotask.d.ts.map +1 -0
- package/lib/typescript/handlers/FlingGestureHandler.d.ts +11 -6
- package/lib/typescript/handlers/FlingGestureHandler.d.ts.map +1 -0
- package/lib/typescript/handlers/ForceTouchGestureHandler.d.ts +11 -10
- package/lib/typescript/handlers/ForceTouchGestureHandler.d.ts.map +1 -0
- package/lib/typescript/handlers/GestureHandlerEventPayload.d.ts +198 -0
- package/lib/typescript/handlers/GestureHandlerEventPayload.d.ts.map +1 -0
- package/lib/typescript/handlers/LongPressGestureHandler.d.ts +16 -36
- package/lib/typescript/handlers/LongPressGestureHandler.d.ts.map +1 -0
- package/lib/typescript/handlers/NativeViewGestureHandler.d.ts +12 -7
- package/lib/typescript/handlers/NativeViewGestureHandler.d.ts.map +1 -0
- package/lib/typescript/handlers/PanGestureHandler.d.ts +16 -55
- package/lib/typescript/handlers/PanGestureHandler.d.ts.map +1 -0
- package/lib/typescript/handlers/PinchGestureHandler.d.ts +11 -23
- package/lib/typescript/handlers/PinchGestureHandler.d.ts.map +1 -0
- package/lib/typescript/handlers/PressabilityDebugView.d.ts +1 -0
- package/lib/typescript/handlers/PressabilityDebugView.d.ts.map +1 -0
- package/lib/typescript/handlers/PressabilityDebugView.web.d.ts +1 -0
- package/lib/typescript/handlers/PressabilityDebugView.web.d.ts.map +1 -0
- package/lib/typescript/handlers/RotationGestureHandler.d.ts +11 -23
- package/lib/typescript/handlers/RotationGestureHandler.d.ts.map +1 -0
- package/lib/typescript/handlers/TapGestureHandler.d.ts +11 -6
- package/lib/typescript/handlers/TapGestureHandler.d.ts.map +1 -0
- package/lib/typescript/handlers/createHandler.d.ts +1 -0
- package/lib/typescript/handlers/createHandler.d.ts.map +1 -0
- package/lib/typescript/handlers/createNativeWrapper.d.ts +1 -0
- package/lib/typescript/handlers/createNativeWrapper.d.ts.map +1 -0
- package/lib/typescript/handlers/customDirectEventTypes.d.ts +2 -0
- package/lib/typescript/handlers/customDirectEventTypes.d.ts.map +1 -0
- package/lib/typescript/handlers/customDirectEventTypes.web.d.ts +3 -0
- package/lib/typescript/handlers/customDirectEventTypes.web.d.ts.map +1 -0
- package/lib/typescript/handlers/gestureHandlerCommon.d.ts +20 -8
- package/lib/typescript/handlers/gestureHandlerCommon.d.ts.map +1 -0
- package/lib/typescript/handlers/gestureHandlerTypesCompat.d.ts +20 -9
- package/lib/typescript/handlers/gestureHandlerTypesCompat.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/Wrap.d.ts +14 -0
- package/lib/typescript/handlers/gestures/GestureDetector/Wrap.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/Wrap.web.d.ts +8 -0
- package/lib/typescript/handlers/gestures/GestureDetector/Wrap.web.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/attachHandlers.d.ts +14 -0
- package/lib/typescript/handlers/gestures/GestureDetector/attachHandlers.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/dropHandlers.d.ts +3 -0
- package/lib/typescript/handlers/gestures/GestureDetector/dropHandlers.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/index.d.ts +50 -0
- package/lib/typescript/handlers/gestures/GestureDetector/index.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/needsToReattach.d.ts +4 -0
- package/lib/typescript/handlers/gestures/GestureDetector/needsToReattach.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/types.d.ts +21 -0
- package/lib/typescript/handlers/gestures/GestureDetector/types.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/updateHandlers.d.ts +5 -0
- package/lib/typescript/handlers/gestures/GestureDetector/updateHandlers.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/useAnimatedGesture.d.ts +3 -0
- package/lib/typescript/handlers/gestures/GestureDetector/useAnimatedGesture.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/useDetectorUpdater.d.ts +6 -0
- package/lib/typescript/handlers/gestures/GestureDetector/useDetectorUpdater.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/useMountReactions.d.ts +3 -0
- package/lib/typescript/handlers/gestures/GestureDetector/useMountReactions.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/useViewRefHandler.d.ts +4 -0
- package/lib/typescript/handlers/gestures/GestureDetector/useViewRefHandler.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/GestureDetector/utils.d.ts +13 -0
- package/lib/typescript/handlers/gestures/GestureDetector/utils.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/eventReceiver.d.ts +1 -0
- package/lib/typescript/handlers/gestures/eventReceiver.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/flingGesture.d.ts +14 -1
- package/lib/typescript/handlers/gestures/flingGesture.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/forceTouchGesture.d.ts +26 -1
- package/lib/typescript/handlers/gestures/forceTouchGesture.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/gesture.d.ts +121 -11
- package/lib/typescript/handlers/gestures/gesture.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/gestureComposition.d.ts +1 -0
- package/lib/typescript/handlers/gestures/gestureComposition.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/gestureObjects.d.ts +60 -0
- package/lib/typescript/handlers/gestures/gestureObjects.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/gestureStateManager.d.ts +6 -1
- package/lib/typescript/handlers/gestures/gestureStateManager.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/gestureStateManager.web.d.ts +1 -0
- package/lib/typescript/handlers/gestures/gestureStateManager.web.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/hoverGesture.d.ts +3 -7
- package/lib/typescript/handlers/gestures/hoverGesture.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/longPressGesture.d.ts +18 -1
- package/lib/typescript/handlers/gestures/longPressGesture.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/manualGesture.d.ts +1 -0
- package/lib/typescript/handlers/gestures/manualGesture.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/nativeGesture.d.ts +11 -1
- package/lib/typescript/handlers/gestures/nativeGesture.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/panGesture.d.ts +70 -5
- package/lib/typescript/handlers/gestures/panGesture.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/pinchGesture.d.ts +2 -1
- package/lib/typescript/handlers/gestures/pinchGesture.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/reanimatedWrapper.d.ts +2 -1
- package/lib/typescript/handlers/gestures/reanimatedWrapper.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/rotationGesture.d.ts +2 -1
- package/lib/typescript/handlers/gestures/rotationGesture.d.ts.map +1 -0
- package/lib/typescript/handlers/gestures/tapGesture.d.ts +38 -1
- package/lib/typescript/handlers/gestures/tapGesture.d.ts.map +1 -0
- package/lib/typescript/handlers/getNextHandlerTag.d.ts +2 -0
- package/lib/typescript/handlers/getNextHandlerTag.d.ts.map +1 -0
- package/lib/typescript/handlers/handlersRegistry.d.ts +3 -2
- package/lib/typescript/handlers/handlersRegistry.d.ts.map +1 -0
- package/lib/typescript/handlers/utils.d.ts +8 -0
- package/lib/typescript/handlers/utils.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +16 -9
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/init.d.ts +1 -0
- package/lib/typescript/init.d.ts.map +1 -0
- package/lib/typescript/jestUtils/index.d.ts +1 -0
- package/lib/typescript/jestUtils/index.d.ts.map +1 -0
- package/lib/typescript/jestUtils/jestUtils.d.ts +10 -8
- package/lib/typescript/jestUtils/jestUtils.d.ts.map +1 -0
- package/lib/typescript/mocks/Pressable.d.ts +2 -0
- package/lib/typescript/mocks/Pressable.d.ts.map +1 -0
- package/lib/typescript/mocks/mocks.d.ts +47 -0
- package/lib/typescript/mocks/mocks.d.ts.map +1 -0
- package/lib/typescript/mocks.d.ts +4 -3
- package/lib/typescript/mocks.d.ts.map +1 -0
- package/lib/typescript/mountRegistry.d.ts +17 -0
- package/lib/typescript/mountRegistry.d.ts.map +1 -0
- package/lib/typescript/specs/NativeRNGestureHandlerModule.d.ts +15 -0
- package/lib/typescript/specs/NativeRNGestureHandlerModule.d.ts.map +1 -0
- package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.d.ts +5 -2
- package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.d.ts.map +1 -0
- package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.kepler.d.ts +2 -0
- package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.kepler.d.ts.map +1 -0
- package/lib/typescript/specs/RNGestureHandlerRootViewNativeComponent.d.ts +1 -1
- package/lib/typescript/specs/RNGestureHandlerRootViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/specs/RNGestureHandlerRootViewNativeComponent.kepler.d.ts +7 -0
- package/lib/typescript/specs/RNGestureHandlerRootViewNativeComponent.kepler.d.ts.map +1 -0
- package/lib/typescript/typeUtils.d.ts +1 -0
- package/lib/typescript/typeUtils.d.ts.map +1 -0
- package/lib/typescript/utils.d.ts +14 -5
- package/lib/typescript/utils.d.ts.map +1 -0
- package/lib/typescript/web/Gestures.d.ts +37 -0
- package/lib/typescript/web/Gestures.d.ts.map +1 -0
- package/lib/typescript/web/constants.d.ts +2 -6
- package/lib/typescript/web/constants.d.ts.map +1 -0
- package/lib/typescript/web/detectors/RotationGestureDetector.d.ts +8 -7
- package/lib/typescript/web/detectors/RotationGestureDetector.d.ts.map +1 -0
- package/lib/typescript/web/detectors/ScaleGestureDetector.d.ts +9 -8
- package/lib/typescript/web/detectors/ScaleGestureDetector.d.ts.map +1 -0
- package/lib/typescript/web/handlers/FlingGestureHandler.d.ts +4 -4
- package/lib/typescript/web/handlers/FlingGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web/handlers/GestureHandler.d.ts +50 -37
- package/lib/typescript/web/handlers/GestureHandler.d.ts.map +1 -0
- package/lib/typescript/web/handlers/HoverGestureHandler.d.ts +4 -3
- package/lib/typescript/web/handlers/HoverGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web/handlers/IGestureHandler.d.ts +38 -0
- package/lib/typescript/web/handlers/IGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web/handlers/LongPressGestureHandler.d.ts +5 -0
- package/lib/typescript/web/handlers/LongPressGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web/handlers/ManualGestureHandler.d.ts +2 -3
- package/lib/typescript/web/handlers/ManualGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web/handlers/NativeViewGestureHandler.d.ts +3 -1
- package/lib/typescript/web/handlers/NativeViewGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web/handlers/PanGestureHandler.d.ts +11 -2
- package/lib/typescript/web/handlers/PanGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web/handlers/PinchGestureHandler.d.ts +2 -2
- package/lib/typescript/web/handlers/PinchGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web/handlers/RotationGestureHandler.d.ts +2 -3
- package/lib/typescript/web/handlers/RotationGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web/handlers/TapGestureHandler.d.ts +2 -1
- package/lib/typescript/web/handlers/TapGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web/interfaces.d.ts +40 -22
- package/lib/typescript/web/interfaces.d.ts.map +1 -0
- package/lib/typescript/web/tools/CircularBuffer.d.ts +4 -3
- package/lib/typescript/web/tools/CircularBuffer.d.ts.map +1 -0
- package/lib/typescript/web/tools/EventManager.d.ts +20 -14
- package/lib/typescript/web/tools/EventManager.d.ts.map +1 -0
- package/lib/typescript/web/tools/GestureHandlerDelegate.d.ts +7 -4
- package/lib/typescript/web/tools/GestureHandlerDelegate.d.ts.map +1 -0
- package/lib/typescript/web/tools/GestureHandlerOrchestrator.d.ts +10 -8
- package/lib/typescript/web/tools/GestureHandlerOrchestrator.d.ts.map +1 -0
- package/lib/typescript/web/tools/GestureHandlerWebDelegate.d.ts +20 -5
- package/lib/typescript/web/tools/GestureHandlerWebDelegate.d.ts.map +1 -0
- package/lib/typescript/web/tools/InteractionManager.d.ts +10 -8
- package/lib/typescript/web/tools/InteractionManager.d.ts.map +1 -0
- package/lib/typescript/web/tools/KeyboardEventManager.d.ts +17 -0
- package/lib/typescript/web/tools/KeyboardEventManager.d.ts.map +1 -0
- package/lib/typescript/web/tools/LeastSquareSolver.d.ts +1 -0
- package/lib/typescript/web/tools/LeastSquareSolver.d.ts.map +1 -0
- package/lib/typescript/web/tools/NodeManager.d.ts +6 -4
- package/lib/typescript/web/tools/NodeManager.d.ts.map +1 -0
- package/lib/typescript/web/tools/PointerEventManager.d.ts +14 -2
- package/lib/typescript/web/tools/PointerEventManager.d.ts.map +1 -0
- package/lib/typescript/web/tools/PointerTracker.d.ts +33 -35
- package/lib/typescript/web/tools/PointerTracker.d.ts.map +1 -0
- package/lib/typescript/web/tools/Vector.d.ts +16 -0
- package/lib/typescript/web/tools/Vector.d.ts.map +1 -0
- package/lib/typescript/web/tools/VelocityTracker.d.ts +2 -1
- package/lib/typescript/web/tools/VelocityTracker.d.ts.map +1 -0
- package/lib/typescript/web/tools/WheelEventManager.d.ts +12 -0
- package/lib/typescript/web/tools/WheelEventManager.d.ts.map +1 -0
- package/lib/typescript/web/utils.d.ts +15 -4
- package/lib/typescript/web/utils.d.ts.map +1 -0
- package/lib/typescript/web_hammer/DiscreteGestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/DiscreteGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/DraggingGestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/DraggingGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/Errors.d.ts +1 -0
- package/lib/typescript/web_hammer/Errors.d.ts.map +1 -0
- package/lib/typescript/web_hammer/FlingGestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/FlingGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/GestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/GestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/IndiscreteGestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/IndiscreteGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/LongPressGestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/LongPressGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/NativeViewGestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/NativeViewGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/NodeManager.d.ts +5 -5
- package/lib/typescript/web_hammer/NodeManager.d.ts.map +1 -0
- package/lib/typescript/web_hammer/PanGestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/PanGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/PinchGestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/PinchGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/PressGestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/PressGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/RotationGestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/RotationGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/TapGestureHandler.d.ts +1 -0
- package/lib/typescript/web_hammer/TapGestureHandler.d.ts.map +1 -0
- package/lib/typescript/web_hammer/constants.d.ts +1 -0
- package/lib/typescript/web_hammer/constants.d.ts.map +1 -0
- package/lib/typescript/web_hammer/utils.d.ts +1 -0
- package/lib/typescript/web_hammer/utils.d.ts.map +1 -0
- package/oss-attribution/attribution.txt +0 -0
- package/oss-attribution/licenseInfos.json +1 -0
- package/package.json +151 -1
- package/react-native.config.js +27 -0
- package/scripts/gesture_handler_utils.rb +25 -0
- package/src/ActionType.ts +1 -1
- package/src/Directions.ts +22 -5
- package/src/EnableNewWebImplementation.ts +18 -0
- package/src/PlatformConstants.kepler.ts +5 -0
- package/src/PointerType.ts +7 -0
- package/src/RNGestureHandlerModule.kepler.ts +3 -3
- package/src/RNGestureHandlerModule.ts +4 -49
- package/src/RNGestureHandlerModule.web.ts +29 -51
- package/src/RNGestureHandlerModule.windows.ts +18 -100
- package/src/State.ts +1 -1
- package/src/TouchEventType.ts +2 -1
- package/src/components/DrawerLayout.tsx +58 -13
- package/src/components/GestureButtons.tsx +61 -123
- package/src/components/GestureButtonsProps.ts +156 -0
- package/src/components/GestureComponents.tsx +11 -11
- package/src/components/GestureComponents.web.tsx +1 -1
- package/src/components/GestureHandlerButton.tsx +1 -1
- package/src/components/GestureHandlerButton.web.tsx +3 -3
- package/src/components/GestureHandlerRootView.android.tsx +15 -7
- package/src/components/GestureHandlerRootView.kepler.tsx +3 -2
- package/src/components/GestureHandlerRootView.tsx +12 -7
- package/src/components/GestureHandlerRootView.web.tsx +11 -6
- package/src/components/Pressable/Pressable.tsx +401 -0
- package/src/components/Pressable/PressableProps.tsx +174 -0
- package/src/components/Pressable/StateMachine.tsx +57 -0
- package/src/components/Pressable/index.ts +5 -0
- package/src/components/Pressable/stateDefinitions.ts +126 -0
- package/src/components/Pressable/utils.ts +140 -0
- package/src/components/ReanimatedDrawerLayout.tsx +754 -0
- package/src/components/ReanimatedSwipeable/ReanimatedSwipeable.tsx +607 -0
- package/src/components/ReanimatedSwipeable/ReanimatedSwipeableProps.ts +199 -0
- package/src/components/ReanimatedSwipeable/index.ts +6 -0
- package/src/components/Swipeable.tsx +59 -15
- package/src/components/Text.tsx +77 -0
- package/src/components/gestureHandlerRootHOC.tsx +7 -6
- package/src/components/touchables/ExtraButtonProps.ts +7 -0
- package/src/components/touchables/GenericTouchable.tsx +15 -41
- package/src/components/touchables/GenericTouchableProps.ts +28 -0
- package/src/components/touchables/TouchableHighlight.tsx +7 -4
- package/src/components/touchables/TouchableNativeFeedback.android.tsx +10 -18
- package/src/components/touchables/TouchableNativeFeedback.tsx +6 -1
- package/src/components/touchables/TouchableNativeFeedbackProps.tsx +10 -0
- package/src/components/touchables/TouchableOpacity.tsx +8 -5
- package/src/components/touchables/TouchableWithoutFeedback.tsx +31 -6
- package/src/components/utils.ts +26 -0
- package/src/findNodeHandle.ts +3 -0
- package/src/findNodeHandle.web.ts +41 -0
- package/src/getShadowNodeFromRef.ts +35 -7
- package/src/ghQueueMicrotask.ts +8 -0
- package/src/handlers/FlingGestureHandler.ts +11 -6
- package/src/handlers/ForceTouchGestureHandler.ts +10 -12
- package/src/handlers/GestureHandlerEventPayload.ts +229 -0
- package/src/handlers/LongPressGestureHandler.ts +17 -40
- package/src/handlers/NativeViewGestureHandler.ts +11 -7
- package/src/handlers/PanGestureHandler.ts +19 -62
- package/src/handlers/PinchGestureHandler.ts +11 -27
- package/src/handlers/RotationGestureHandler.ts +11 -27
- package/src/handlers/TapGestureHandler.ts +11 -6
- package/src/handlers/createHandler.tsx +97 -58
- package/src/handlers/createNativeWrapper.tsx +7 -3
- package/src/handlers/customDirectEventTypes.ts +2 -0
- package/src/handlers/customDirectEventTypes.web.ts +5 -0
- package/src/handlers/gestureHandlerCommon.ts +50 -83
- package/src/handlers/gestureHandlerTypesCompat.ts +25 -30
- package/src/handlers/gestures/GestureDetector/Wrap.tsx +35 -0
- package/src/handlers/gestures/GestureDetector/Wrap.web.tsx +42 -0
- package/src/handlers/gestures/GestureDetector/attachHandlers.ts +112 -0
- package/src/handlers/gestures/GestureDetector/dropHandlers.ts +17 -0
- package/src/handlers/gestures/GestureDetector/index.tsx +191 -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 +92 -0
- package/src/handlers/gestures/GestureDetector/useAnimatedGesture.ts +209 -0
- package/src/handlers/gestures/GestureDetector/useDetectorUpdater.ts +69 -0
- package/src/handlers/gestures/GestureDetector/useMountReactions.ts +51 -0
- package/src/handlers/gestures/GestureDetector/useViewRefHandler.ts +58 -0
- package/src/handlers/gestures/GestureDetector/utils.ts +181 -0
- package/src/handlers/gestures/eventReceiver.ts +6 -5
- package/src/handlers/gestures/flingGesture.ts +13 -4
- package/src/handlers/gestures/forceTouchGesture.ts +25 -4
- package/src/handlers/gestures/gesture.ts +151 -20
- package/src/handlers/gestures/gestureComposition.ts +5 -3
- package/src/handlers/gestures/gestureObjects.ts +59 -0
- package/src/handlers/gestures/gestureStateManager.ts +55 -41
- package/src/handlers/gestures/gestureStateManager.web.ts +3 -1
- package/src/handlers/gestures/hoverGesture.ts +2 -8
- package/src/handlers/gestures/longPressGesture.ts +21 -4
- package/src/handlers/gestures/nativeGesture.ts +10 -4
- package/src/handlers/gestures/panGesture.ts +77 -8
- package/src/handlers/gestures/pinchGesture.ts +1 -1
- package/src/handlers/gestures/reanimatedWrapper.ts +18 -17
- package/src/handlers/gestures/rotationGesture.ts +1 -1
- package/src/handlers/gestures/tapGesture.ts +37 -4
- package/src/handlers/getNextHandlerTag.ts +5 -0
- package/src/handlers/handlersRegistry.ts +7 -9
- package/src/handlers/utils.ts +76 -0
- package/src/index.ts +31 -36
- package/src/init.ts +1 -1
- package/src/jestUtils/jestUtils.ts +30 -22
- package/src/mocks/Pressable.tsx +1 -0
- package/src/mocks/mocks.tsx +70 -0
- package/src/mountRegistry.ts +51 -0
- package/src/specs/NativeRNGestureHandlerModule.ts +26 -0
- package/src/specs/RNGestureHandlerButtonNativeComponent.ts +4 -0
- package/src/specs/RNGestureHandlerRootViewNativeComponent.kepler.ts +21 -0
- package/src/utils.ts +58 -13
- package/src/web/Gestures.ts +41 -0
- package/src/web/constants.ts +1 -7
- package/src/web/detectors/RotationGestureDetector.ts +31 -29
- package/src/web/detectors/ScaleGestureDetector.ts +34 -35
- package/src/web/handlers/FlingGestureHandler.ts +73 -38
- package/src/web/handlers/GestureHandler.ts +224 -193
- package/src/web/handlers/HoverGestureHandler.ts +16 -10
- package/src/web/handlers/IGestureHandler.ts +49 -0
- package/src/web/handlers/LongPressGestureHandler.ts +68 -18
- package/src/web/handlers/ManualGestureHandler.ts +3 -9
- package/src/web/handlers/NativeViewGestureHandler.ts +44 -36
- package/src/web/handlers/PanGestureHandler.ts +123 -37
- package/src/web/handlers/PinchGestureHandler.ts +20 -26
- package/src/web/handlers/RotationGestureHandler.ts +15 -21
- package/src/web/handlers/TapGestureHandler.ts +26 -25
- package/src/web/interfaces.ts +46 -22
- package/src/web/tools/CircularBuffer.ts +15 -15
- package/src/web/tools/EventManager.ts +24 -20
- package/src/web/tools/GestureHandlerDelegate.ts +7 -4
- package/src/web/tools/GestureHandlerOrchestrator.ts +183 -189
- package/src/web/tools/GestureHandlerWebDelegate.ts +139 -27
- package/src/web/tools/InteractionManager.ts +62 -50
- package/src/web/tools/KeyboardEventManager.ts +133 -0
- package/src/web/tools/LeastSquareSolver.ts +18 -18
- package/src/web/tools/NodeManager.ts +11 -6
- package/src/web/tools/PointerEventManager.ts +177 -144
- package/src/web/tools/PointerTracker.ts +94 -106
- package/src/web/tools/Vector.ts +59 -0
- package/src/web/tools/VelocityTracker.ts +7 -7
- package/src/web/tools/WheelEventManager.ts +48 -0
- package/src/web/utils.ts +289 -4
- package/src/web_hammer/DiscreteGestureHandler.ts +1 -1
- package/src/web_hammer/DraggingGestureHandler.ts +1 -1
- package/src/web_hammer/FlingGestureHandler.ts +1 -1
- package/src/web_hammer/GestureHandler.ts +5 -3
- package/src/web_hammer/LongPressGestureHandler.ts +1 -1
- package/src/web_hammer/NodeManager.ts +2 -11
- package/src/web_hammer/PressGestureHandler.ts +7 -4
- package/README.kepler.md +0 -167
- package/SystemBundles/94837b5e706b3cc0138b2ee460c5e7c9c0ae02fcab7709d9bd0845d4a59b1c43.bundle +0 -67496
- package/SystemBundles/94837b5e706b3cc0138b2ee460c5e7c9c0ae02fcab7709d9bd0845d4a59b1c43.map +0 -1
- package/SystemModules/amzn__react-native-gesture-handler-2.modules.txt +0 -338
- package/SystemModules/amzn__react-native-gesture-handler-2.private.modules.txt +0 -96
- package/THIRD_PARTY_NOTICES.txt +0 -24
- package/ios/Handlers/RNFlingHandler.m +0 -152
- package/ios/Handlers/RNLongPressHandler.m +0 -183
- package/ios/Handlers/RNPinchHandler.m +0 -95
- package/ios/Handlers/RNRotationHandler.m +0 -93
- package/ios/RNGestureHandlerButton.h +0 -19
- package/ios/RNGestureHandlerButton.m +0 -77
- package/ios/RNGestureHandlerButtonComponentView.mm +0 -62
- package/ios/RNGestureHandlerDirection.h +0 -8
- package/ios/RNGestureHandlerModule.h +0 -7
- package/lib/commonjs/RNGestureHandlerModule.macos.js +0 -113
- package/lib/commonjs/RNGestureHandlerModule.macos.js.map +0 -1
- package/lib/commonjs/handlers/gestures/GestureDetector.js +0 -548
- package/lib/commonjs/handlers/gestures/GestureDetector.js.map +0 -1
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js +0 -11
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js.map +0 -1
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.js +0 -11
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.js.map +0 -1
- package/lib/commonjs/web/tools/TouchEventManager.js +0 -126
- package/lib/commonjs/web/tools/TouchEventManager.js.map +0 -1
- package/lib/module/RNGestureHandlerModule.macos.js +0 -104
- package/lib/module/RNGestureHandlerModule.macos.js.map +0 -1
- package/lib/module/handlers/gestures/GestureDetector.js +0 -538
- package/lib/module/handlers/gestures/GestureDetector.js.map +0 -1
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.js +0 -4
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.js.map +0 -1
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.js +0 -4
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.js.map +0 -1
- package/lib/module/web/tools/TouchEventManager.js +0 -118
- package/lib/module/web/tools/TouchEventManager.js.map +0 -1
- package/lib/typescript/RNGestureHandlerModule.macos.d.ts +0 -47
- package/lib/typescript/handlers/gestures/GestureDetector.d.ts +0 -19
- package/lib/typescript/web/tools/TouchEventManager.d.ts +0 -6
- package/src/RNGestureHandlerModule.macos.ts +0 -133
- package/src/handlers/gestures/GestureDetector.tsx +0 -818
- package/src/web/tools/TouchEventManager.ts +0 -167
- /package/android/{src/fabric → fabric/src/main}/java/com/swmansion/gesturehandler/RNGestureHandlerComponentsRegistry.java +0 -0
- /package/android/{common → noreanimated}/src/main/java/com/swmansion/common/GestureHandlerStateManager.kt +0 -0
- /package/{ios → apple}/Handlers/RNForceTouchHandler.h +0 -0
- /package/{ios → apple}/Handlers/RNHoverHandler.h +0 -0
- /package/{ios → apple}/Handlers/RNLongPressHandler.h +0 -0
- /package/{ios → apple}/Handlers/RNManualHandler.h +0 -0
- /package/{ios → apple}/Handlers/RNNativeViewHandler.h +0 -0
- /package/{ios → apple}/Handlers/RNPanHandler.h +0 -0
- /package/{ios → apple}/Handlers/RNPinchHandler.h +0 -0
- /package/{ios → apple}/Handlers/RNRotationHandler.h +0 -0
- /package/{ios → apple}/Handlers/RNTapHandler.h +0 -0
- /package/{ios → apple}/RNGHTouchEventType.h +0 -0
- /package/{ios → apple}/RNGestureHandler.xcodeproj/project.pbxproj +0 -0
- /package/{ios → apple}/RNGestureHandler.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -0
- /package/{ios → apple}/RNGestureHandlerActionType.h +0 -0
- /package/{ios → apple}/RNGestureHandlerButtonManager.h +0 -0
- /package/{ios → apple}/RNGestureHandlerRootViewComponentView.mm +0 -0
- /package/{ios → apple}/RNGestureHandlerState.h +0 -0
- /package/{ios → apple}/RNGestureHandlerStateManager.h +0 -0
- /package/{ios → apple}/RNRootViewGestureRecognizer.h +0 -0
|
@@ -1,55 +1,41 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type {
|
|
2
2
|
BaseButtonProps,
|
|
3
3
|
BorderlessButtonProps,
|
|
4
4
|
RawButtonProps,
|
|
5
5
|
RectButtonProps,
|
|
6
|
-
} from '../components/
|
|
6
|
+
} from '../components/GestureButtonsProps';
|
|
7
7
|
import {
|
|
8
8
|
GestureEvent,
|
|
9
9
|
GestureEventPayload,
|
|
10
10
|
HandlerStateChangeEvent,
|
|
11
11
|
HandlerStateChangeEventPayload,
|
|
12
12
|
} from './gestureHandlerCommon';
|
|
13
|
-
import {
|
|
13
|
+
import type { FlingGestureHandlerProps } from './FlingGestureHandler';
|
|
14
|
+
import type {
|
|
14
15
|
FlingGestureHandlerEventPayload,
|
|
15
|
-
FlingGestureHandlerProps,
|
|
16
|
-
} from './FlingGestureHandler';
|
|
17
|
-
import {
|
|
18
16
|
ForceTouchGestureHandlerEventPayload,
|
|
19
|
-
ForceTouchGestureHandlerProps,
|
|
20
|
-
} from './ForceTouchGestureHandler';
|
|
21
|
-
import {
|
|
22
17
|
LongPressGestureHandlerEventPayload,
|
|
23
|
-
LongPressGestureHandlerProps,
|
|
24
|
-
} from './LongPressGestureHandler';
|
|
25
|
-
import {
|
|
26
18
|
PanGestureHandlerEventPayload,
|
|
27
|
-
PanGestureHandlerProps,
|
|
28
|
-
} from './PanGestureHandler';
|
|
29
|
-
import {
|
|
30
19
|
PinchGestureHandlerEventPayload,
|
|
31
|
-
PinchGestureHandlerProps,
|
|
32
|
-
} from './PinchGestureHandler';
|
|
33
|
-
import {
|
|
34
20
|
RotationGestureHandlerEventPayload,
|
|
35
|
-
RotationGestureHandlerProps,
|
|
36
|
-
} from './RotationGestureHandler';
|
|
37
|
-
import {
|
|
38
21
|
TapGestureHandlerEventPayload,
|
|
39
|
-
TapGestureHandlerProps,
|
|
40
|
-
} from './TapGestureHandler';
|
|
41
|
-
import {
|
|
42
22
|
NativeViewGestureHandlerPayload,
|
|
43
|
-
|
|
44
|
-
} from './
|
|
23
|
+
} from './GestureHandlerEventPayload';
|
|
24
|
+
import type { ForceTouchGestureHandlerProps } from './ForceTouchGestureHandler';
|
|
25
|
+
import type { LongPressGestureHandlerProps } from './LongPressGestureHandler';
|
|
26
|
+
import type { PanGestureHandlerProps } from './PanGestureHandler';
|
|
27
|
+
import type { PinchGestureHandlerProps } from './PinchGestureHandler';
|
|
28
|
+
import type { RotationGestureHandlerProps } from './RotationGestureHandler';
|
|
29
|
+
import type { TapGestureHandlerProps } from './TapGestureHandler';
|
|
30
|
+
import type { NativeViewGestureHandlerProps } from './NativeViewGestureHandler';
|
|
45
31
|
|
|
46
|
-
//
|
|
32
|
+
// Events
|
|
47
33
|
export type GestureHandlerGestureEventNativeEvent = GestureEventPayload;
|
|
48
34
|
export type GestureHandlerStateChangeNativeEvent =
|
|
49
35
|
HandlerStateChangeEventPayload;
|
|
50
36
|
export type GestureHandlerGestureEvent = GestureEvent;
|
|
51
37
|
export type GestureHandlerStateChangeEvent = HandlerStateChangeEvent;
|
|
52
|
-
//
|
|
38
|
+
// Gesture handlers events
|
|
53
39
|
export type NativeViewGestureHandlerGestureEvent =
|
|
54
40
|
GestureEvent<NativeViewGestureHandlerPayload>;
|
|
55
41
|
export type NativeViewGestureHandlerStateChangeEvent =
|
|
@@ -60,8 +46,14 @@ export type TapGestureHandlerGestureEvent =
|
|
|
60
46
|
export type TapGestureHandlerStateChangeEvent =
|
|
61
47
|
HandlerStateChangeEvent<TapGestureHandlerEventPayload>;
|
|
62
48
|
|
|
49
|
+
/**
|
|
50
|
+
* @deprecated ForceTouchGestureHandler is deprecated and will be removed in the future.
|
|
51
|
+
*/
|
|
63
52
|
export type ForceTouchGestureHandlerGestureEvent =
|
|
64
53
|
GestureEvent<ForceTouchGestureHandlerEventPayload>;
|
|
54
|
+
/**
|
|
55
|
+
* @deprecated ForceTouchGestureHandler is deprecated and will be removed in the future.
|
|
56
|
+
*/
|
|
65
57
|
export type ForceTouchGestureHandlerStateChangeEvent =
|
|
66
58
|
HandlerStateChangeEvent<ForceTouchGestureHandlerEventPayload>;
|
|
67
59
|
|
|
@@ -90,7 +82,7 @@ export type FlingGestureHandlerGestureEvent =
|
|
|
90
82
|
export type FlingGestureHandlerStateChangeEvent =
|
|
91
83
|
HandlerStateChangeEvent<FlingGestureHandlerEventPayload>;
|
|
92
84
|
|
|
93
|
-
//
|
|
85
|
+
// Handlers properties
|
|
94
86
|
export type NativeViewGestureHandlerProperties = NativeViewGestureHandlerProps;
|
|
95
87
|
export type TapGestureHandlerProperties = TapGestureHandlerProps;
|
|
96
88
|
export type LongPressGestureHandlerProperties = LongPressGestureHandlerProps;
|
|
@@ -98,8 +90,11 @@ export type PanGestureHandlerProperties = PanGestureHandlerProps;
|
|
|
98
90
|
export type PinchGestureHandlerProperties = PinchGestureHandlerProps;
|
|
99
91
|
export type RotationGestureHandlerProperties = RotationGestureHandlerProps;
|
|
100
92
|
export type FlingGestureHandlerProperties = FlingGestureHandlerProps;
|
|
93
|
+
/**
|
|
94
|
+
* @deprecated ForceTouch gesture is deprecated and will be removed in the future.
|
|
95
|
+
*/
|
|
101
96
|
export type ForceTouchGestureHandlerProperties = ForceTouchGestureHandlerProps;
|
|
102
|
-
//
|
|
97
|
+
// Button props
|
|
103
98
|
export type RawButtonProperties = RawButtonProps;
|
|
104
99
|
export type BaseButtonProperties = BaseButtonProps;
|
|
105
100
|
export type RectButtonProperties = RectButtonProps;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Reanimated } from '../reanimatedWrapper';
|
|
3
|
+
import { tagMessage } from '../../../utils';
|
|
4
|
+
|
|
5
|
+
export class Wrap extends React.Component<{
|
|
6
|
+
onGestureHandlerEvent?: unknown;
|
|
7
|
+
// Implicit `children` prop has been removed in @types/react^18.0.0
|
|
8
|
+
children?: React.ReactNode;
|
|
9
|
+
}> {
|
|
10
|
+
render() {
|
|
11
|
+
try {
|
|
12
|
+
// I don't think that fighting with types over such a simple function is worth it
|
|
13
|
+
// The only thing it does is add 'collapsable: false' to the child component
|
|
14
|
+
// to make sure it is in the native view hierarchy so the detector can find
|
|
15
|
+
// correct viewTag to attach to.
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
17
|
+
const child: any = React.Children.only(this.props.children);
|
|
18
|
+
return React.cloneElement(
|
|
19
|
+
child,
|
|
20
|
+
{ collapsable: false },
|
|
21
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
22
|
+
child.props.children
|
|
23
|
+
);
|
|
24
|
+
} catch (e) {
|
|
25
|
+
throw new Error(
|
|
26
|
+
tagMessage(
|
|
27
|
+
`GestureDetector got more than one view as a child. If you want the gesture to work on multiple views, wrap them with a common parent and attach the gesture to that view.`
|
|
28
|
+
)
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export const AnimatedWrap =
|
|
35
|
+
Reanimated?.default?.createAnimatedComponent(Wrap) ?? Wrap;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import React, { forwardRef } from 'react';
|
|
2
|
+
import type { LegacyRef, PropsWithChildren } from 'react';
|
|
3
|
+
import { tagMessage } from '../../../utils';
|
|
4
|
+
import { isRNSVGNode } from '../../../web/utils';
|
|
5
|
+
|
|
6
|
+
export const Wrap = forwardRef<HTMLDivElement, PropsWithChildren<{}>>(
|
|
7
|
+
({ children }, ref) => {
|
|
8
|
+
try {
|
|
9
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
10
|
+
const child: any = React.Children.only(children);
|
|
11
|
+
|
|
12
|
+
if (isRNSVGNode(child)) {
|
|
13
|
+
const clone = React.cloneElement(
|
|
14
|
+
child,
|
|
15
|
+
{ ref },
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
17
|
+
child.props.children
|
|
18
|
+
);
|
|
19
|
+
|
|
20
|
+
return clone;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
return (
|
|
24
|
+
<div
|
|
25
|
+
ref={ref as LegacyRef<HTMLDivElement>}
|
|
26
|
+
style={{ display: 'contents' }}>
|
|
27
|
+
{child}
|
|
28
|
+
</div>
|
|
29
|
+
);
|
|
30
|
+
} catch (e) {
|
|
31
|
+
throw new Error(
|
|
32
|
+
tagMessage(
|
|
33
|
+
`GestureDetector got more than one view as a child. If you want the gesture to work on multiple views, wrap them with a common parent and attach the gesture to that view.`
|
|
34
|
+
)
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
// On web we never take a path with Reanimated,
|
|
41
|
+
// therefore we can simply export Wrap
|
|
42
|
+
export const AnimatedWrap = Wrap;
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { GestureType, HandlerCallbacks } from '../gesture';
|
|
3
|
+
import { registerHandler } from '../../handlersRegistry';
|
|
4
|
+
import RNGestureHandlerModule from '../../../RNGestureHandlerModule';
|
|
5
|
+
import { filterConfig, scheduleFlushOperations } from '../../utils';
|
|
6
|
+
import { ComposedGesture } from '../gestureComposition';
|
|
7
|
+
import { ActionType } from '../../../ActionType';
|
|
8
|
+
import { Platform } from 'react-native';
|
|
9
|
+
import type RNGestureHandlerModuleWeb from '../../../RNGestureHandlerModule.web';
|
|
10
|
+
import { ghQueueMicrotask } from '../../../ghQueueMicrotask';
|
|
11
|
+
import { AttachedGestureState, WebEventHandler } from './types';
|
|
12
|
+
import {
|
|
13
|
+
extractGestureRelations,
|
|
14
|
+
checkGestureCallbacksForWorklets,
|
|
15
|
+
ALLOWED_PROPS,
|
|
16
|
+
} from './utils';
|
|
17
|
+
import { MountRegistry } from '../../../mountRegistry';
|
|
18
|
+
|
|
19
|
+
interface AttachHandlersConfig {
|
|
20
|
+
preparedGesture: AttachedGestureState;
|
|
21
|
+
gestureConfig: ComposedGesture | GestureType;
|
|
22
|
+
gesturesToAttach: GestureType[];
|
|
23
|
+
viewTag: number;
|
|
24
|
+
webEventHandlersRef: React.RefObject<WebEventHandler>;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export function attachHandlers({
|
|
28
|
+
preparedGesture,
|
|
29
|
+
gestureConfig,
|
|
30
|
+
gesturesToAttach,
|
|
31
|
+
viewTag,
|
|
32
|
+
webEventHandlersRef,
|
|
33
|
+
}: AttachHandlersConfig) {
|
|
34
|
+
gestureConfig.initialize();
|
|
35
|
+
|
|
36
|
+
// Use queueMicrotask to extract handlerTags, because all refs should be initialized
|
|
37
|
+
// when it's ran
|
|
38
|
+
ghQueueMicrotask(() => {
|
|
39
|
+
if (!preparedGesture.isMounted) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
gestureConfig.prepare();
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
for (const handler of gesturesToAttach) {
|
|
46
|
+
checkGestureCallbacksForWorklets(handler);
|
|
47
|
+
RNGestureHandlerModule.createGestureHandler(
|
|
48
|
+
handler.handlerName,
|
|
49
|
+
handler.handlerTag,
|
|
50
|
+
filterConfig(handler.config, ALLOWED_PROPS)
|
|
51
|
+
);
|
|
52
|
+
|
|
53
|
+
registerHandler(handler.handlerTag, handler, handler.config.testId);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// Use queueMicrotask to extract handlerTags, because all refs should be initialized
|
|
57
|
+
// when it's ran
|
|
58
|
+
ghQueueMicrotask(() => {
|
|
59
|
+
if (!preparedGesture.isMounted) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
for (const handler of gesturesToAttach) {
|
|
63
|
+
RNGestureHandlerModule.updateGestureHandler(
|
|
64
|
+
handler.handlerTag,
|
|
65
|
+
filterConfig(
|
|
66
|
+
handler.config,
|
|
67
|
+
ALLOWED_PROPS,
|
|
68
|
+
extractGestureRelations(handler)
|
|
69
|
+
)
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
scheduleFlushOperations();
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
for (const gesture of gesturesToAttach) {
|
|
77
|
+
const actionType = gesture.shouldUseReanimated
|
|
78
|
+
? ActionType.REANIMATED_WORKLET
|
|
79
|
+
: ActionType.JS_FUNCTION_NEW_API;
|
|
80
|
+
|
|
81
|
+
if (Platform.OS === 'web') {
|
|
82
|
+
(
|
|
83
|
+
RNGestureHandlerModule.attachGestureHandler as typeof RNGestureHandlerModuleWeb.attachGestureHandler
|
|
84
|
+
)(
|
|
85
|
+
gesture.handlerTag,
|
|
86
|
+
viewTag,
|
|
87
|
+
ActionType.JS_FUNCTION_OLD_API, // Ignored on web
|
|
88
|
+
webEventHandlersRef
|
|
89
|
+
);
|
|
90
|
+
} else {
|
|
91
|
+
RNGestureHandlerModule.attachGestureHandler(
|
|
92
|
+
gesture.handlerTag,
|
|
93
|
+
viewTag,
|
|
94
|
+
actionType
|
|
95
|
+
);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
MountRegistry.gestureWillMount(gesture);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
preparedGesture.attachedGestures = gesturesToAttach;
|
|
102
|
+
|
|
103
|
+
if (preparedGesture.animatedHandlers) {
|
|
104
|
+
const isAnimatedGesture = (g: GestureType) => g.shouldUseReanimated;
|
|
105
|
+
|
|
106
|
+
preparedGesture.animatedHandlers.value = gesturesToAttach
|
|
107
|
+
.filter(isAnimatedGesture)
|
|
108
|
+
.map((g) => g.handlers) as unknown as HandlerCallbacks<
|
|
109
|
+
Record<string, unknown>
|
|
110
|
+
>[];
|
|
111
|
+
}
|
|
112
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { unregisterHandler } from '../../handlersRegistry';
|
|
2
|
+
import RNGestureHandlerModule from '../../../RNGestureHandlerModule';
|
|
3
|
+
import { scheduleFlushOperations } from '../../utils';
|
|
4
|
+
import { AttachedGestureState } from './types';
|
|
5
|
+
import { MountRegistry } from '../../../mountRegistry';
|
|
6
|
+
|
|
7
|
+
export function dropHandlers(preparedGesture: AttachedGestureState) {
|
|
8
|
+
for (const handler of preparedGesture.attachedGestures) {
|
|
9
|
+
RNGestureHandlerModule.dropGestureHandler(handler.handlerTag);
|
|
10
|
+
|
|
11
|
+
unregisterHandler(handler.handlerTag, handler.config.testId);
|
|
12
|
+
|
|
13
|
+
MountRegistry.gestureWillUnmount(handler);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
scheduleFlushOperations();
|
|
17
|
+
}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
/* eslint-disable react/no-unused-prop-types */
|
|
2
|
+
import React, {
|
|
3
|
+
useContext,
|
|
4
|
+
useEffect,
|
|
5
|
+
useLayoutEffect,
|
|
6
|
+
useMemo,
|
|
7
|
+
useRef,
|
|
8
|
+
} from 'react';
|
|
9
|
+
import { Platform } from 'react-native';
|
|
10
|
+
import findNodeHandle from '../../../findNodeHandle';
|
|
11
|
+
import { GestureType } from '../gesture';
|
|
12
|
+
import { UserSelect, TouchAction } from '../../gestureHandlerCommon';
|
|
13
|
+
import { ComposedGesture } from '../gestureComposition';
|
|
14
|
+
import { isTestEnv } from '../../../utils';
|
|
15
|
+
|
|
16
|
+
import GestureHandlerRootViewContext from '../../../GestureHandlerRootViewContext';
|
|
17
|
+
import { AttachedGestureState, GestureDetectorState } from './types';
|
|
18
|
+
import { useAnimatedGesture } from './useAnimatedGesture';
|
|
19
|
+
import { attachHandlers } from './attachHandlers';
|
|
20
|
+
import { needsToReattach } from './needsToReattach';
|
|
21
|
+
import { dropHandlers } from './dropHandlers';
|
|
22
|
+
import { useWebEventHandlers } from './utils';
|
|
23
|
+
import { Wrap, AnimatedWrap } from './Wrap';
|
|
24
|
+
import { useDetectorUpdater } from './useDetectorUpdater';
|
|
25
|
+
import { useViewRefHandler } from './useViewRefHandler';
|
|
26
|
+
import { useMountReactions } from './useMountReactions';
|
|
27
|
+
|
|
28
|
+
function propagateDetectorConfig(
|
|
29
|
+
props: GestureDetectorProps,
|
|
30
|
+
gesture: ComposedGesture | GestureType
|
|
31
|
+
) {
|
|
32
|
+
const keysToPropagate: (keyof GestureDetectorProps)[] = [
|
|
33
|
+
'userSelect',
|
|
34
|
+
'enableContextMenu',
|
|
35
|
+
'touchAction',
|
|
36
|
+
];
|
|
37
|
+
|
|
38
|
+
for (const key of keysToPropagate) {
|
|
39
|
+
const value = props[key];
|
|
40
|
+
if (value === undefined) {
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
for (const g of gesture.toGestureArray()) {
|
|
45
|
+
const config = g.config as { [key: string]: unknown };
|
|
46
|
+
config[key] = value;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
interface GestureDetectorProps {
|
|
52
|
+
children?: React.ReactNode;
|
|
53
|
+
/**
|
|
54
|
+
* A gesture object containing the configuration and callbacks.
|
|
55
|
+
* Can be any of:
|
|
56
|
+
* - base gestures (`Tap`, `Pan`, ...)
|
|
57
|
+
* - `ComposedGesture` (`Race`, `Simultaneous`, `Exclusive`)
|
|
58
|
+
*/
|
|
59
|
+
gesture: ComposedGesture | GestureType;
|
|
60
|
+
/**
|
|
61
|
+
* #### Web only
|
|
62
|
+
* This parameter allows to specify which `userSelect` property should be applied to underlying view.
|
|
63
|
+
* Possible values are `"none" | "auto" | "text"`. Default value is set to `"none"`.
|
|
64
|
+
*/
|
|
65
|
+
userSelect?: UserSelect;
|
|
66
|
+
/**
|
|
67
|
+
* #### Web only
|
|
68
|
+
* Specifies whether context menu should be enabled after clicking on underlying view with right mouse button.
|
|
69
|
+
* Default value is set to `false`.
|
|
70
|
+
*/
|
|
71
|
+
enableContextMenu?: boolean;
|
|
72
|
+
/**
|
|
73
|
+
* #### Web only
|
|
74
|
+
* This parameter allows to specify which `touchAction` property should be applied to underlying view.
|
|
75
|
+
* Supports all CSS touch-action values (e.g. `"none"`, `"pan-y"`). Default value is set to `"none"`.
|
|
76
|
+
*/
|
|
77
|
+
touchAction?: TouchAction;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* `GestureDetector` is responsible for creating and updating native gesture handlers based on the config of provided gesture.
|
|
82
|
+
*
|
|
83
|
+
* ### Props
|
|
84
|
+
* - `gesture`
|
|
85
|
+
* - `userSelect` (**Web only**)
|
|
86
|
+
* - `enableContextMenu` (**Web only**)
|
|
87
|
+
* - `touchAction` (**Web only**)
|
|
88
|
+
*
|
|
89
|
+
* ### Remarks
|
|
90
|
+
* - Gesture Detector will use first native view in its subtree to recognize gestures, however if this view is used only to group its children it may get automatically collapsed.
|
|
91
|
+
* - Using the same instance of a gesture across multiple Gesture Detectors is not possible.
|
|
92
|
+
*
|
|
93
|
+
* @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/gesture-detector
|
|
94
|
+
*/
|
|
95
|
+
export const GestureDetector = (props: GestureDetectorProps) => {
|
|
96
|
+
const rootViewContext = useContext(GestureHandlerRootViewContext);
|
|
97
|
+
if (__DEV__ && !rootViewContext && !isTestEnv() && Platform.OS !== 'web') {
|
|
98
|
+
throw new Error(
|
|
99
|
+
'GestureDetector must be used as a descendant of GestureHandlerRootView. Otherwise the gestures will not be recognized. See https://docs.swmansion.com/react-native-gesture-handler/docs/fundamentals/installation for more details.'
|
|
100
|
+
);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
// Gesture config should be wrapped with useMemo to prevent unnecessary re-renders
|
|
104
|
+
const gestureConfig = props.gesture;
|
|
105
|
+
propagateDetectorConfig(props, gestureConfig);
|
|
106
|
+
|
|
107
|
+
const gesturesToAttach = useMemo(
|
|
108
|
+
() => gestureConfig.toGestureArray(),
|
|
109
|
+
[gestureConfig]
|
|
110
|
+
);
|
|
111
|
+
const shouldUseReanimated = gesturesToAttach.some(
|
|
112
|
+
(g) => g.shouldUseReanimated
|
|
113
|
+
);
|
|
114
|
+
|
|
115
|
+
const webEventHandlersRef = useWebEventHandlers();
|
|
116
|
+
// Store state in ref to prevent unnecessary renders
|
|
117
|
+
const state = useRef<GestureDetectorState>({
|
|
118
|
+
firstRender: true,
|
|
119
|
+
viewRef: null,
|
|
120
|
+
previousViewTag: -1,
|
|
121
|
+
forceRebuildReanimatedEvent: false,
|
|
122
|
+
}).current;
|
|
123
|
+
|
|
124
|
+
const preparedGesture = React.useRef<AttachedGestureState>({
|
|
125
|
+
attachedGestures: [],
|
|
126
|
+
animatedEventHandler: null,
|
|
127
|
+
animatedHandlers: null,
|
|
128
|
+
shouldUseReanimated: shouldUseReanimated,
|
|
129
|
+
isMounted: false,
|
|
130
|
+
}).current;
|
|
131
|
+
|
|
132
|
+
const updateAttachedGestures = useDetectorUpdater(
|
|
133
|
+
state,
|
|
134
|
+
preparedGesture,
|
|
135
|
+
gesturesToAttach,
|
|
136
|
+
gestureConfig,
|
|
137
|
+
webEventHandlersRef
|
|
138
|
+
);
|
|
139
|
+
|
|
140
|
+
const refHandler = useViewRefHandler(state, updateAttachedGestures);
|
|
141
|
+
|
|
142
|
+
// Reanimated event should be rebuilt only when gestures are reattached, otherwise
|
|
143
|
+
// config update will be enough as all necessary items are stored in shared values anyway
|
|
144
|
+
const needsToRebuildReanimatedEvent =
|
|
145
|
+
state.firstRender ||
|
|
146
|
+
state.forceRebuildReanimatedEvent ||
|
|
147
|
+
needsToReattach(preparedGesture, gesturesToAttach);
|
|
148
|
+
state.forceRebuildReanimatedEvent = false;
|
|
149
|
+
|
|
150
|
+
useAnimatedGesture(preparedGesture, needsToRebuildReanimatedEvent);
|
|
151
|
+
|
|
152
|
+
useLayoutEffect(() => {
|
|
153
|
+
const viewTag = findNodeHandle(state.viewRef) as number;
|
|
154
|
+
preparedGesture.isMounted = true;
|
|
155
|
+
|
|
156
|
+
attachHandlers({
|
|
157
|
+
preparedGesture,
|
|
158
|
+
gestureConfig,
|
|
159
|
+
gesturesToAttach,
|
|
160
|
+
webEventHandlersRef,
|
|
161
|
+
viewTag,
|
|
162
|
+
});
|
|
163
|
+
|
|
164
|
+
return () => {
|
|
165
|
+
preparedGesture.isMounted = false;
|
|
166
|
+
dropHandlers(preparedGesture);
|
|
167
|
+
};
|
|
168
|
+
}, []);
|
|
169
|
+
|
|
170
|
+
useEffect(() => {
|
|
171
|
+
if (state.firstRender) {
|
|
172
|
+
state.firstRender = false;
|
|
173
|
+
} else {
|
|
174
|
+
updateAttachedGestures();
|
|
175
|
+
}
|
|
176
|
+
}, [props]);
|
|
177
|
+
|
|
178
|
+
useMountReactions(updateAttachedGestures, preparedGesture);
|
|
179
|
+
|
|
180
|
+
if (shouldUseReanimated) {
|
|
181
|
+
return (
|
|
182
|
+
<AnimatedWrap
|
|
183
|
+
ref={refHandler}
|
|
184
|
+
onGestureHandlerEvent={preparedGesture.animatedEventHandler}>
|
|
185
|
+
{props.children}
|
|
186
|
+
</AnimatedWrap>
|
|
187
|
+
);
|
|
188
|
+
} else {
|
|
189
|
+
return <Wrap ref={refHandler}>{props.children}</Wrap>;
|
|
190
|
+
}
|
|
191
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { GestureType } from '../gesture';
|
|
2
|
+
import { AttachedGestureState } from './types';
|
|
3
|
+
|
|
4
|
+
// Checks whether the gesture should be reattached to the view, this will happen when:
|
|
5
|
+
// - The number of gestures in the preparedGesture is different than the number of gestures in the gesture
|
|
6
|
+
// - The handlerName is different in any of the gestures
|
|
7
|
+
// - At least one of the gestures changed the thread it runs on
|
|
8
|
+
export function needsToReattach(
|
|
9
|
+
preparedGesture: AttachedGestureState,
|
|
10
|
+
newGestures: GestureType[]
|
|
11
|
+
) {
|
|
12
|
+
if (newGestures.length !== preparedGesture.attachedGestures.length) {
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
for (let i = 0; i < newGestures.length; i++) {
|
|
16
|
+
if (
|
|
17
|
+
newGestures[i].handlerName !==
|
|
18
|
+
preparedGesture.attachedGestures[i].handlerName ||
|
|
19
|
+
newGestures[i].shouldUseReanimated !==
|
|
20
|
+
preparedGesture.attachedGestures[i].shouldUseReanimated
|
|
21
|
+
) {
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { GestureType, HandlerCallbacks } from '../gesture';
|
|
2
|
+
import { SharedValue } from '../reanimatedWrapper';
|
|
3
|
+
import { HandlerStateChangeEvent } from '../../gestureHandlerCommon';
|
|
4
|
+
|
|
5
|
+
export interface AttachedGestureState {
|
|
6
|
+
// Array of gestures that should be attached to the view under that gesture detector
|
|
7
|
+
attachedGestures: GestureType[];
|
|
8
|
+
// Event handler for the gesture, returned by `useEvent` from Reanimated
|
|
9
|
+
animatedEventHandler: unknown;
|
|
10
|
+
// Shared value that's responsible for transferring the callbacks to the UI thread handler
|
|
11
|
+
animatedHandlers: SharedValue<
|
|
12
|
+
HandlerCallbacks<Record<string, unknown>>[] | null
|
|
13
|
+
> | null;
|
|
14
|
+
// Whether `useAnimatedGesture` should be called inside detector
|
|
15
|
+
shouldUseReanimated: boolean;
|
|
16
|
+
// Whether the GestureDetector is mounted
|
|
17
|
+
isMounted: boolean;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export interface GestureDetectorState {
|
|
21
|
+
firstRender: boolean;
|
|
22
|
+
viewRef: React.Component | null;
|
|
23
|
+
previousViewTag: number;
|
|
24
|
+
forceRebuildReanimatedEvent: boolean;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export interface WebEventHandler {
|
|
28
|
+
onGestureHandlerEvent: (event: HandlerStateChangeEvent<unknown>) => void;
|
|
29
|
+
onGestureHandlerStateChange?: (
|
|
30
|
+
event: HandlerStateChangeEvent<unknown>
|
|
31
|
+
) => void;
|
|
32
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { GestureType, HandlerCallbacks } from '../gesture';
|
|
2
|
+
import { registerHandler } from '../../handlersRegistry';
|
|
3
|
+
import RNGestureHandlerModule from '../../../RNGestureHandlerModule';
|
|
4
|
+
import { filterConfig, scheduleFlushOperations } from '../../utils';
|
|
5
|
+
import { ComposedGesture } from '../gestureComposition';
|
|
6
|
+
import { ghQueueMicrotask } from '../../../ghQueueMicrotask';
|
|
7
|
+
import { AttachedGestureState } from './types';
|
|
8
|
+
import {
|
|
9
|
+
extractGestureRelations,
|
|
10
|
+
checkGestureCallbacksForWorklets,
|
|
11
|
+
ALLOWED_PROPS,
|
|
12
|
+
} from './utils';
|
|
13
|
+
|
|
14
|
+
export function updateHandlers(
|
|
15
|
+
preparedGesture: AttachedGestureState,
|
|
16
|
+
gestureConfig: ComposedGesture | GestureType,
|
|
17
|
+
newGestures: GestureType[]
|
|
18
|
+
) {
|
|
19
|
+
gestureConfig.prepare();
|
|
20
|
+
|
|
21
|
+
for (let i = 0; i < newGestures.length; i++) {
|
|
22
|
+
const handler = preparedGesture.attachedGestures[i];
|
|
23
|
+
checkGestureCallbacksForWorklets(handler);
|
|
24
|
+
|
|
25
|
+
// Only update handlerTag when it's actually different, it may be the same
|
|
26
|
+
// if gesture config object is wrapped with useMemo
|
|
27
|
+
if (newGestures[i].handlerTag !== handler.handlerTag) {
|
|
28
|
+
newGestures[i].handlerTag = handler.handlerTag;
|
|
29
|
+
newGestures[i].handlers.handlerTag = handler.handlerTag;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
// Store attached gestures to avoid crash when gestures changed after queueing micro task
|
|
34
|
+
const attachedGestures = preparedGesture.attachedGestures;
|
|
35
|
+
|
|
36
|
+
// Use queueMicrotask to extract handlerTags, because when it's ran, all refs should be updated
|
|
37
|
+
// and handlerTags in BaseGesture references should be updated in the loop above (we need to wait
|
|
38
|
+
// in case of external relations)
|
|
39
|
+
ghQueueMicrotask(() => {
|
|
40
|
+
if (!preparedGesture.isMounted) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
// Stop if attached gestures changed after queueing micro task
|
|
45
|
+
if (attachedGestures !== preparedGesture.attachedGestures) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
// If amount of gesture configs changes, we need to update the callbacks in shared value
|
|
50
|
+
let shouldUpdateSharedValueIfUsed =
|
|
51
|
+
attachedGestures.length !== newGestures.length;
|
|
52
|
+
|
|
53
|
+
for (let i = 0; i < newGestures.length; i++) {
|
|
54
|
+
const handler = attachedGestures[i];
|
|
55
|
+
|
|
56
|
+
// If the gestureId is different (gesture isn't wrapped with useMemo or its dependencies changed),
|
|
57
|
+
// we need to update the shared value, assuming the gesture runs on UI thread or the thread changed
|
|
58
|
+
if (
|
|
59
|
+
handler.handlers.gestureId !== newGestures[i].handlers.gestureId &&
|
|
60
|
+
(newGestures[i].shouldUseReanimated || handler.shouldUseReanimated)
|
|
61
|
+
) {
|
|
62
|
+
shouldUpdateSharedValueIfUsed = true;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
handler.config = newGestures[i].config;
|
|
66
|
+
handler.handlers = newGestures[i].handlers;
|
|
67
|
+
|
|
68
|
+
RNGestureHandlerModule.updateGestureHandler(
|
|
69
|
+
handler.handlerTag,
|
|
70
|
+
filterConfig(
|
|
71
|
+
handler.config,
|
|
72
|
+
ALLOWED_PROPS,
|
|
73
|
+
extractGestureRelations(handler)
|
|
74
|
+
)
|
|
75
|
+
);
|
|
76
|
+
|
|
77
|
+
registerHandler(handler.handlerTag, handler, handler.config.testId);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
if (preparedGesture.animatedHandlers && shouldUpdateSharedValueIfUsed) {
|
|
81
|
+
const newHandlersValue = attachedGestures
|
|
82
|
+
.filter((g) => g.shouldUseReanimated) // Ignore gestures that shouldn't run on UI
|
|
83
|
+
.map((g) => g.handlers) as unknown as HandlerCallbacks<
|
|
84
|
+
Record<string, unknown>
|
|
85
|
+
>[];
|
|
86
|
+
|
|
87
|
+
preparedGesture.animatedHandlers.value = newHandlersValue;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
scheduleFlushOperations();
|
|
91
|
+
});
|
|
92
|
+
}
|