react-native-gesture-handler 2.22.1 → 2.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.kt +14 -0
- package/android/src/main/jni/cpp-adapter.cpp +19 -12
- package/apple/RNGestureHandler.mm +15 -8
- package/apple/RNGestureHandlerModule.mm +17 -5
- package/lib/commonjs/ActionType.js +3 -3
- package/lib/commonjs/ActionType.js.map +1 -1
- package/lib/commonjs/Directions.js +11 -8
- package/lib/commonjs/Directions.js.map +1 -1
- package/lib/commonjs/EnableNewWebImplementation.js +2 -10
- package/lib/commonjs/EnableNewWebImplementation.js.map +1 -1
- package/lib/commonjs/GestureHandlerRootViewContext.js +2 -7
- package/lib/commonjs/GestureHandlerRootViewContext.js.map +1 -1
- package/lib/commonjs/PlatformConstants.js +1 -6
- package/lib/commonjs/PlatformConstants.js.map +1 -1
- package/lib/commonjs/PlatformConstants.web.js +1 -3
- package/lib/commonjs/PlatformConstants.web.js.map +1 -1
- package/lib/commonjs/PointerType.js +3 -5
- package/lib/commonjs/PointerType.js.map +1 -1
- package/lib/commonjs/RNGestureHandlerModule.js +2 -6
- package/lib/commonjs/RNGestureHandlerModule.js.map +1 -1
- package/lib/commonjs/RNGestureHandlerModule.web.js +13 -39
- package/lib/commonjs/RNGestureHandlerModule.web.js.map +1 -1
- package/lib/commonjs/RNGestureHandlerModule.windows.js +22 -32
- package/lib/commonjs/RNGestureHandlerModule.windows.js.map +1 -1
- package/lib/commonjs/RNRenderer.js +1 -3
- package/lib/commonjs/RNRenderer.js.map +1 -1
- package/lib/commonjs/RNRenderer.web.js +1 -2
- package/lib/commonjs/RNRenderer.web.js.map +1 -1
- package/lib/commonjs/State.js +4 -3
- package/lib/commonjs/State.js.map +1 -1
- package/lib/commonjs/TouchEventType.js +3 -3
- package/lib/commonjs/TouchEventType.js.map +1 -1
- package/lib/commonjs/components/DrawerLayout.js +96 -115
- package/lib/commonjs/components/DrawerLayout.js.map +1 -1
- package/lib/commonjs/components/GestureButtons.js +36 -80
- package/lib/commonjs/components/GestureButtons.js.map +1 -1
- package/lib/commonjs/components/GestureButtonsProps.js.map +1 -1
- package/lib/commonjs/components/GestureComponents.js +26 -37
- package/lib/commonjs/components/GestureComponents.js.map +1 -1
- package/lib/commonjs/components/GestureComponents.web.js +13 -27
- package/lib/commonjs/components/GestureComponents.web.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerButton.js +2 -6
- package/lib/commonjs/components/GestureHandlerButton.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerButton.web.js +4 -12
- package/lib/commonjs/components/GestureHandlerButton.web.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerRootView.android.js +4 -15
- package/lib/commonjs/components/GestureHandlerRootView.android.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerRootView.js +4 -14
- package/lib/commonjs/components/GestureHandlerRootView.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerRootView.web.js +4 -13
- package/lib/commonjs/components/GestureHandlerRootView.web.js.map +1 -1
- package/lib/commonjs/components/Pressable/Pressable.js +46 -78
- package/lib/commonjs/components/Pressable/Pressable.js.map +1 -1
- package/lib/commonjs/components/Pressable/PressableProps.js.map +1 -1
- package/lib/commonjs/components/Pressable/index.js +1 -3
- package/lib/commonjs/components/Pressable/index.js.map +1 -1
- package/lib/commonjs/components/Pressable/utils.js +5 -20
- package/lib/commonjs/components/Pressable/utils.js.map +1 -1
- package/lib/commonjs/components/ReanimatedDrawerLayout.js +38 -76
- package/lib/commonjs/components/ReanimatedDrawerLayout.js.map +1 -1
- package/lib/commonjs/components/ReanimatedSwipeable.js +61 -59
- package/lib/commonjs/components/ReanimatedSwipeable.js.map +1 -1
- package/lib/commonjs/components/Swipeable.js +34 -75
- package/lib/commonjs/components/Swipeable.js.map +1 -1
- package/lib/commonjs/components/Text.js +18 -26
- package/lib/commonjs/components/Text.js.map +1 -1
- package/lib/commonjs/components/gestureHandlerRootHOC.js +5 -14
- package/lib/commonjs/components/gestureHandlerRootHOC.js.map +1 -1
- package/lib/commonjs/components/touchables/GenericTouchable.js +40 -76
- package/lib/commonjs/components/touchables/GenericTouchable.js.map +1 -1
- package/lib/commonjs/components/touchables/GenericTouchableProps.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableHighlight.js +20 -33
- package/lib/commonjs/components/touchables/TouchableHighlight.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js +17 -31
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.js +5 -4
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableNativeFeedbackProps.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableOpacity.js +17 -24
- package/lib/commonjs/components/touchables/TouchableOpacity.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js +12 -13
- package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js.map +1 -1
- package/lib/commonjs/components/touchables/index.js +7 -12
- package/lib/commonjs/components/touchables/index.js.map +1 -1
- package/lib/commonjs/findNodeHandle.js +1 -4
- package/lib/commonjs/findNodeHandle.js.map +1 -1
- package/lib/commonjs/findNodeHandle.web.js +9 -10
- package/lib/commonjs/findNodeHandle.web.js.map +1 -1
- package/lib/commonjs/getReactNativeVersion.js +1 -6
- package/lib/commonjs/getReactNativeVersion.js.map +1 -1
- package/lib/commonjs/getReactNativeVersion.web.js +0 -1
- package/lib/commonjs/getReactNativeVersion.web.js.map +1 -1
- package/lib/commonjs/getShadowNodeFromRef.js +13 -14
- package/lib/commonjs/getShadowNodeFromRef.js.map +1 -1
- package/lib/commonjs/getShadowNodeFromRef.web.js +0 -1
- package/lib/commonjs/getShadowNodeFromRef.web.js.map +1 -1
- package/lib/commonjs/ghQueueMicrotask.js +1 -2
- package/lib/commonjs/ghQueueMicrotask.js.map +1 -1
- package/lib/commonjs/handlers/FlingGestureHandler.js +16 -10
- package/lib/commonjs/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/ForceTouchGestureHandler.js +20 -23
- package/lib/commonjs/handlers/ForceTouchGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/GestureHandlerEventPayload.js.map +1 -1
- package/lib/commonjs/handlers/LongPressGestureHandler.js +16 -10
- package/lib/commonjs/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/NativeViewGestureHandler.js +17 -12
- package/lib/commonjs/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/PanGestureHandler.js +20 -31
- package/lib/commonjs/handlers/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/PinchGestureHandler.js +14 -8
- package/lib/commonjs/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/PressabilityDebugView.js +0 -1
- package/lib/commonjs/handlers/PressabilityDebugView.js.map +1 -1
- package/lib/commonjs/handlers/PressabilityDebugView.web.js +0 -1
- package/lib/commonjs/handlers/PressabilityDebugView.web.js.map +1 -1
- package/lib/commonjs/handlers/RotationGestureHandler.js +14 -8
- package/lib/commonjs/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/TapGestureHandler.js +16 -10
- package/lib/commonjs/handlers/TapGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/createHandler.js +55 -135
- package/lib/commonjs/handlers/createHandler.js.map +1 -1
- package/lib/commonjs/handlers/createNativeWrapper.js +17 -27
- package/lib/commonjs/handlers/createNativeWrapper.js.map +1 -1
- package/lib/commonjs/handlers/customDirectEventTypes.js +0 -1
- package/lib/commonjs/handlers/customDirectEventTypes.js.map +1 -1
- package/lib/commonjs/handlers/customDirectEventTypes.web.js +1 -2
- package/lib/commonjs/handlers/customDirectEventTypes.web.js.map +1 -1
- package/lib/commonjs/handlers/gestureHandlerCommon.js +9 -10
- 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 +5 -14
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.web.js +10 -20
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.web.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js +9 -29
- package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js +1 -10
- package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/index.js +12 -37
- package/lib/commonjs/handlers/gestures/GestureDetector/index.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/needsToReattach.js +0 -3
- package/lib/commonjs/handlers/gestures/GestureDetector/needsToReattach.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/types.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js +12 -24
- package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js +12 -48
- package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js +3 -13
- package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/useMountReactions.js +2 -9
- package/lib/commonjs/handlers/gestures/GestureDetector/useMountReactions.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js +8 -16
- package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/utils.js +28 -56
- package/lib/commonjs/handlers/gestures/GestureDetector/utils.js.map +1 -1
- package/lib/commonjs/handlers/gestures/eventReceiver.js +14 -46
- package/lib/commonjs/handlers/gestures/eventReceiver.js.map +1 -1
- package/lib/commonjs/handlers/gestures/flingGesture.js +5 -12
- package/lib/commonjs/handlers/gestures/flingGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js +8 -19
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gesture.js +44 -84
- package/lib/commonjs/handlers/gestures/gesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureComposition.js +17 -31
- package/lib/commonjs/handlers/gestures/gestureComposition.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureObjects.js +1 -27
- package/lib/commonjs/handlers/gestures/gestureObjects.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureStateManager.js +3 -9
- package/lib/commonjs/handlers/gestures/gestureStateManager.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js +2 -7
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js.map +1 -1
- package/lib/commonjs/handlers/gestures/hoverGesture.js +11 -25
- package/lib/commonjs/handlers/gestures/hoverGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/longPressGesture.js +6 -14
- package/lib/commonjs/handlers/gestures/longPressGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/manualGesture.js +0 -6
- package/lib/commonjs/handlers/gestures/manualGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/nativeGesture.js +5 -12
- package/lib/commonjs/handlers/gestures/nativeGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/panGesture.js +18 -43
- package/lib/commonjs/handlers/gestures/panGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/pinchGesture.js +2 -9
- package/lib/commonjs/handlers/gestures/pinchGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js +1 -8
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js.map +1 -1
- package/lib/commonjs/handlers/gestures/rotationGesture.js +2 -9
- package/lib/commonjs/handlers/gestures/rotationGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/tapGesture.js +10 -22
- package/lib/commonjs/handlers/gestures/tapGesture.js.map +1 -1
- package/lib/commonjs/handlers/getNextHandlerTag.js +0 -1
- package/lib/commonjs/handlers/getNextHandlerTag.js.map +1 -1
- package/lib/commonjs/handlers/handlersRegistry.js +11 -21
- package/lib/commonjs/handlers/handlersRegistry.js.map +1 -1
- package/lib/commonjs/handlers/utils.js +6 -26
- package/lib/commonjs/handlers/utils.js.map +1 -1
- package/lib/commonjs/index.js +75 -104
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/init.js +4 -11
- package/lib/commonjs/init.js.map +1 -1
- package/lib/commonjs/jestUtils/index.js +4 -5
- package/lib/commonjs/jestUtils/index.js.map +1 -1
- package/lib/commonjs/jestUtils/jestUtils.js +19 -83
- package/lib/commonjs/jestUtils/jestUtils.js.map +1 -1
- package/lib/commonjs/mocks.js +5 -15
- package/lib/commonjs/mocks.js.map +1 -1
- package/lib/commonjs/mountRegistry.js +3 -12
- package/lib/commonjs/mountRegistry.js.map +1 -1
- package/lib/commonjs/specs/NativeRNGestureHandlerModule.js +1 -5
- package/lib/commonjs/specs/NativeRNGestureHandlerModule.js.map +1 -1
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js +2 -7
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.js +2 -7
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.js.map +1 -1
- package/lib/commonjs/typeUtils.js.map +1 -1
- package/lib/commonjs/utils.js +15 -30
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/commonjs/web/Gestures.js +5 -23
- package/lib/commonjs/web/Gestures.js.map +1 -1
- package/lib/commonjs/web/constants.js +2 -4
- package/lib/commonjs/web/constants.js.map +1 -1
- package/lib/commonjs/web/detectors/RotationGestureDetector.js +26 -62
- package/lib/commonjs/web/detectors/RotationGestureDetector.js.map +1 -1
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js +36 -65
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js.map +1 -1
- package/lib/commonjs/web/handlers/FlingGestureHandler.js +12 -55
- package/lib/commonjs/web/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/GestureHandler.js +160 -273
- package/lib/commonjs/web/handlers/GestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/HoverGestureHandler.js +8 -21
- package/lib/commonjs/web/handlers/HoverGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/IGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js +12 -53
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/ManualGestureHandler.js +1 -11
- package/lib/commonjs/web/handlers/ManualGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +21 -62
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/PanGestureHandler.js +23 -138
- package/lib/commonjs/web/handlers/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/PinchGestureHandler.js +19 -56
- package/lib/commonjs/web/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/RotationGestureHandler.js +16 -54
- package/lib/commonjs/web/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/TapGestureHandler.js +10 -71
- package/lib/commonjs/web/handlers/TapGestureHandler.js.map +1 -1
- package/lib/commonjs/web/interfaces.js +9 -17
- package/lib/commonjs/web/interfaces.js.map +1 -1
- package/lib/commonjs/web/tools/CircularBuffer.js +17 -29
- package/lib/commonjs/web/tools/CircularBuffer.js.map +1 -1
- package/lib/commonjs/web/tools/EventManager.js +7 -41
- 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 +51 -118
- package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js.map +1 -1
- package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js +37 -58
- package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js.map +1 -1
- package/lib/commonjs/web/tools/InteractionManager.js +21 -40
- package/lib/commonjs/web/tools/InteractionManager.js.map +1 -1
- package/lib/commonjs/web/tools/KeyboardEventManager.js +4 -26
- package/lib/commonjs/web/tools/KeyboardEventManager.js.map +1 -1
- package/lib/commonjs/web/tools/LeastSquareSolver.js +30 -67
- package/lib/commonjs/web/tools/LeastSquareSolver.js.map +1 -1
- package/lib/commonjs/web/tools/NodeManager.js +9 -16
- package/lib/commonjs/web/tools/NodeManager.js.map +1 -1
- package/lib/commonjs/web/tools/PointerEventManager.js +10 -45
- package/lib/commonjs/web/tools/PointerEventManager.js.map +1 -1
- package/lib/commonjs/web/tools/PointerTracker.js +24 -60
- package/lib/commonjs/web/tools/PointerTracker.js.map +1 -1
- package/lib/commonjs/web/tools/Vector.js +3 -18
- package/lib/commonjs/web/tools/Vector.js.map +1 -1
- package/lib/commonjs/web/tools/VelocityTracker.js +10 -32
- package/lib/commonjs/web/tools/VelocityTracker.js.map +1 -1
- package/lib/commonjs/web/tools/WheelEventManager.js +4 -17
- package/lib/commonjs/web/tools/WheelEventManager.js.map +1 -1
- package/lib/commonjs/web/utils.js +26 -55
- package/lib/commonjs/web/utils.js.map +1 -1
- package/lib/commonjs/web_hammer/DiscreteGestureHandler.js +7 -19
- package/lib/commonjs/web_hammer/DiscreteGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/DraggingGestureHandler.js +3 -13
- package/lib/commonjs/web_hammer/DraggingGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/Errors.js +0 -3
- package/lib/commonjs/web_hammer/Errors.js.map +1 -1
- package/lib/commonjs/web_hammer/FlingGestureHandler.js +13 -44
- package/lib/commonjs/web_hammer/FlingGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/GestureHandler.js +55 -142
- package/lib/commonjs/web_hammer/GestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js +2 -11
- package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/LongPressGestureHandler.js +5 -19
- package/lib/commonjs/web_hammer/LongPressGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/NativeViewGestureHandler.js +16 -24
- package/lib/commonjs/web_hammer/NativeViewGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/NodeManager.js +9 -16
- package/lib/commonjs/web_hammer/NodeManager.js.map +1 -1
- package/lib/commonjs/web_hammer/PanGestureHandler.js +8 -49
- package/lib/commonjs/web_hammer/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/PinchGestureHandler.js +2 -11
- package/lib/commonjs/web_hammer/PinchGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/PressGestureHandler.js +15 -43
- package/lib/commonjs/web_hammer/PressGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/RotationGestureHandler.js +2 -13
- package/lib/commonjs/web_hammer/RotationGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/TapGestureHandler.js +33 -52
- package/lib/commonjs/web_hammer/TapGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/constants.js +13 -26
- package/lib/commonjs/web_hammer/constants.js.map +1 -1
- package/lib/commonjs/web_hammer/utils.js +4 -14
- package/lib/commonjs/web_hammer/utils.js.map +1 -1
- package/lib/module/ActionType.js +3 -1
- package/lib/module/ActionType.js.map +1 -1
- package/lib/module/Directions.js +9 -3
- package/lib/module/Directions.js.map +1 -1
- package/lib/module/EnableNewWebImplementation.js +2 -5
- package/lib/module/EnableNewWebImplementation.js.map +1 -1
- package/lib/module/GestureHandlerRootViewContext.js.map +1 -1
- package/lib/module/PlatformConstants.js +0 -1
- package/lib/module/PlatformConstants.js.map +1 -1
- package/lib/module/PlatformConstants.web.js +0 -1
- package/lib/module/PlatformConstants.web.js.map +1 -1
- package/lib/module/PointerType.js +3 -4
- package/lib/module/PointerType.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.js +1 -0
- package/lib/module/RNGestureHandlerModule.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.web.js +12 -22
- package/lib/module/RNGestureHandlerModule.web.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.windows.js +18 -17
- package/lib/module/RNGestureHandlerModule.windows.js.map +1 -1
- package/lib/module/RNRenderer.js.map +1 -1
- package/lib/module/RNRenderer.web.js.map +1 -1
- package/lib/module/State.js +4 -1
- package/lib/module/State.js.map +1 -1
- package/lib/module/TouchEventType.js +3 -1
- package/lib/module/TouchEventType.js.map +1 -1
- package/lib/module/components/DrawerLayout.js +87 -99
- package/lib/module/components/DrawerLayout.js.map +1 -1
- package/lib/module/components/GestureButtons.js +27 -55
- package/lib/module/components/GestureButtons.js.map +1 -1
- package/lib/module/components/GestureButtonsProps.js.map +1 -1
- package/lib/module/components/GestureComponents.js +17 -12
- package/lib/module/components/GestureComponents.js.map +1 -1
- package/lib/module/components/GestureComponents.web.js +4 -4
- package/lib/module/components/GestureComponents.web.js.map +1 -1
- package/lib/module/components/GestureHandlerButton.js.map +1 -1
- package/lib/module/components/GestureHandlerButton.web.js +1 -2
- package/lib/module/components/GestureHandlerButton.web.js.map +1 -1
- package/lib/module/components/GestureHandlerRootView.android.js +1 -2
- package/lib/module/components/GestureHandlerRootView.android.js.map +1 -1
- package/lib/module/components/GestureHandlerRootView.js +1 -2
- package/lib/module/components/GestureHandlerRootView.js.map +1 -1
- package/lib/module/components/GestureHandlerRootView.web.js +1 -2
- package/lib/module/components/GestureHandlerRootView.web.js.map +1 -1
- package/lib/module/components/Pressable/Pressable.js +44 -61
- package/lib/module/components/Pressable/Pressable.js.map +1 -1
- package/lib/module/components/Pressable/PressableProps.js.map +1 -1
- package/lib/module/components/Pressable/index.js.map +1 -1
- package/lib/module/components/Pressable/utils.js +4 -14
- package/lib/module/components/Pressable/utils.js.map +1 -1
- package/lib/module/components/ReanimatedDrawerLayout.js +34 -56
- package/lib/module/components/ReanimatedDrawerLayout.js.map +1 -1
- package/lib/module/components/ReanimatedSwipeable.js +57 -44
- package/lib/module/components/ReanimatedSwipeable.js.map +1 -1
- package/lib/module/components/Swipeable.js +28 -59
- package/lib/module/components/Swipeable.js.map +1 -1
- package/lib/module/components/Text.js +14 -13
- package/lib/module/components/Text.js.map +1 -1
- package/lib/module/components/gestureHandlerRootHOC.js +2 -2
- package/lib/module/components/gestureHandlerRootHOC.js.map +1 -1
- package/lib/module/components/touchables/GenericTouchable.js +34 -63
- package/lib/module/components/touchables/GenericTouchable.js.map +1 -1
- package/lib/module/components/touchables/GenericTouchableProps.js.map +1 -1
- package/lib/module/components/touchables/TouchableHighlight.js +16 -23
- package/lib/module/components/touchables/TouchableHighlight.js.map +1 -1
- package/lib/module/components/touchables/TouchableNativeFeedback.android.js +11 -19
- package/lib/module/components/touchables/TouchableNativeFeedback.android.js.map +1 -1
- package/lib/module/components/touchables/TouchableNativeFeedback.js +6 -1
- package/lib/module/components/touchables/TouchableNativeFeedback.js.map +1 -1
- package/lib/module/components/touchables/TouchableNativeFeedbackProps.js.map +1 -1
- package/lib/module/components/touchables/TouchableOpacity.js +13 -14
- package/lib/module/components/touchables/TouchableOpacity.js.map +1 -1
- package/lib/module/components/touchables/TouchableWithoutFeedback.js +9 -2
- package/lib/module/components/touchables/TouchableWithoutFeedback.js.map +1 -1
- package/lib/module/components/touchables/index.js.map +1 -1
- package/lib/module/findNodeHandle.js.map +1 -1
- package/lib/module/findNodeHandle.web.js +9 -8
- package/lib/module/findNodeHandle.web.js.map +1 -1
- package/lib/module/getReactNativeVersion.js.map +1 -1
- package/lib/module/getReactNativeVersion.web.js.map +1 -1
- package/lib/module/getShadowNodeFromRef.js +13 -13
- package/lib/module/getShadowNodeFromRef.js.map +1 -1
- package/lib/module/getShadowNodeFromRef.web.js.map +1 -1
- package/lib/module/ghQueueMicrotask.js.map +1 -1
- package/lib/module/handlers/FlingGestureHandler.js +13 -0
- package/lib/module/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/module/handlers/ForceTouchGestureHandler.js +16 -8
- package/lib/module/handlers/ForceTouchGestureHandler.js.map +1 -1
- package/lib/module/handlers/GestureHandlerEventPayload.js.map +1 -1
- package/lib/module/handlers/LongPressGestureHandler.js +13 -0
- package/lib/module/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/module/handlers/NativeViewGestureHandler.js +13 -0
- package/lib/module/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/module/handlers/PanGestureHandler.js +15 -19
- package/lib/module/handlers/PanGestureHandler.js.map +1 -1
- package/lib/module/handlers/PinchGestureHandler.js +13 -0
- package/lib/module/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/module/handlers/PressabilityDebugView.js.map +1 -1
- package/lib/module/handlers/PressabilityDebugView.web.js.map +1 -1
- package/lib/module/handlers/RotationGestureHandler.js +13 -0
- package/lib/module/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/module/handlers/TapGestureHandler.js +13 -0
- package/lib/module/handlers/TapGestureHandler.js.map +1 -1
- package/lib/module/handlers/createHandler.js +54 -108
- package/lib/module/handlers/createHandler.js.map +1 -1
- package/lib/module/handlers/createNativeWrapper.js +12 -17
- package/lib/module/handlers/createNativeWrapper.js.map +1 -1
- package/lib/module/handlers/customDirectEventTypes.js.map +1 -1
- package/lib/module/handlers/customDirectEventTypes.web.js.map +1 -1
- package/lib/module/handlers/gestureHandlerCommon.js +9 -4
- package/lib/module/handlers/gestureHandlerCommon.js.map +1 -1
- package/lib/module/handlers/gestureHandlerTypesCompat.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/Wrap.js +3 -4
- package/lib/module/handlers/gestures/GestureDetector/Wrap.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/Wrap.web.js +5 -6
- package/lib/module/handlers/gestures/GestureDetector/Wrap.web.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js +8 -16
- package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js +0 -1
- package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/index.js +9 -15
- package/lib/module/handlers/gestures/GestureDetector/index.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/needsToReattach.js +0 -2
- package/lib/module/handlers/gestures/GestureDetector/needsToReattach.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/types.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js +11 -14
- package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js +12 -39
- package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js +5 -5
- package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/useMountReactions.js +2 -6
- package/lib/module/handlers/gestures/GestureDetector/useMountReactions.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js +7 -9
- package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/utils.js +25 -30
- package/lib/module/handlers/gestures/GestureDetector/utils.js.map +1 -1
- package/lib/module/handlers/gestures/eventReceiver.js +14 -38
- package/lib/module/handlers/gestures/eventReceiver.js.map +1 -1
- package/lib/module/handlers/gestures/flingGesture.js +5 -9
- package/lib/module/handlers/gestures/flingGesture.js.map +1 -1
- package/lib/module/handlers/gestures/forceTouchGesture.js +8 -17
- package/lib/module/handlers/gestures/forceTouchGesture.js.map +1 -1
- package/lib/module/handlers/gestures/gesture.js +44 -73
- package/lib/module/handlers/gestures/gesture.js.map +1 -1
- package/lib/module/handlers/gestures/gestureComposition.js +16 -24
- package/lib/module/handlers/gestures/gestureComposition.js.map +1 -1
- package/lib/module/handlers/gestures/gestureObjects.js +1 -14
- package/lib/module/handlers/gestures/gestureObjects.js.map +1 -1
- package/lib/module/handlers/gestures/gestureStateManager.js +3 -4
- package/lib/module/handlers/gestures/gestureStateManager.js.map +1 -1
- package/lib/module/handlers/gestures/gestureStateManager.web.js +0 -1
- package/lib/module/handlers/gestures/gestureStateManager.web.js.map +1 -1
- package/lib/module/handlers/gestures/hoverGesture.js +9 -18
- package/lib/module/handlers/gestures/hoverGesture.js.map +1 -1
- package/lib/module/handlers/gestures/longPressGesture.js +6 -11
- package/lib/module/handlers/gestures/longPressGesture.js.map +1 -1
- package/lib/module/handlers/gestures/manualGesture.js +0 -4
- package/lib/module/handlers/gestures/manualGesture.js.map +1 -1
- package/lib/module/handlers/gestures/nativeGesture.js +5 -9
- package/lib/module/handlers/gestures/nativeGesture.js.map +1 -1
- package/lib/module/handlers/gestures/panGesture.js +18 -41
- package/lib/module/handlers/gestures/panGesture.js.map +1 -1
- package/lib/module/handlers/gestures/pinchGesture.js +2 -7
- package/lib/module/handlers/gestures/pinchGesture.js.map +1 -1
- package/lib/module/handlers/gestures/reanimatedWrapper.js +0 -5
- package/lib/module/handlers/gestures/reanimatedWrapper.js.map +1 -1
- package/lib/module/handlers/gestures/rotationGesture.js +2 -7
- package/lib/module/handlers/gestures/rotationGesture.js.map +1 -1
- package/lib/module/handlers/gestures/tapGesture.js +10 -19
- package/lib/module/handlers/gestures/tapGesture.js.map +1 -1
- package/lib/module/handlers/getNextHandlerTag.js.map +1 -1
- package/lib/module/handlers/handlersRegistry.js +6 -8
- package/lib/module/handlers/handlersRegistry.js.map +1 -1
- package/lib/module/handlers/utils.js +4 -13
- package/lib/module/handlers/utils.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/init.js +3 -2
- package/lib/module/init.js.map +1 -1
- package/lib/module/jestUtils/index.js.map +1 -1
- package/lib/module/jestUtils/jestUtils.js +20 -66
- package/lib/module/jestUtils/jestUtils.js.map +1 -1
- package/lib/module/mocks.js +3 -7
- package/lib/module/mocks.js.map +1 -1
- package/lib/module/mountRegistry.js +3 -10
- package/lib/module/mountRegistry.js.map +1 -1
- package/lib/module/specs/NativeRNGestureHandlerModule.js.map +1 -1
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.js.map +1 -1
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.js.map +1 -1
- package/lib/module/typeUtils.js.map +1 -1
- package/lib/module/utils.js +8 -13
- package/lib/module/utils.js.map +1 -1
- package/lib/module/web/Gestures.js +2 -1
- package/lib/module/web/Gestures.js.map +1 -1
- package/lib/module/web/constants.js.map +1 -1
- package/lib/module/web/detectors/RotationGestureDetector.js +26 -59
- package/lib/module/web/detectors/RotationGestureDetector.js.map +1 -1
- package/lib/module/web/detectors/ScaleGestureDetector.js +36 -61
- package/lib/module/web/detectors/ScaleGestureDetector.js.map +1 -1
- package/lib/module/web/handlers/FlingGestureHandler.js +11 -45
- package/lib/module/web/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/GestureHandler.js +159 -259
- package/lib/module/web/handlers/GestureHandler.js.map +1 -1
- package/lib/module/web/handlers/HoverGestureHandler.js +7 -13
- package/lib/module/web/handlers/HoverGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/IGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/LongPressGestureHandler.js +11 -46
- package/lib/module/web/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/ManualGestureHandler.js +0 -6
- package/lib/module/web/handlers/ManualGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/NativeViewGestureHandler.js +20 -54
- package/lib/module/web/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/PanGestureHandler.js +22 -129
- package/lib/module/web/handlers/PanGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/PinchGestureHandler.js +18 -48
- package/lib/module/web/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/RotationGestureHandler.js +15 -46
- package/lib/module/web/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/TapGestureHandler.js +9 -63
- package/lib/module/web/handlers/TapGestureHandler.js.map +1 -1
- package/lib/module/web/interfaces.js +9 -14
- package/lib/module/web/interfaces.js.map +1 -1
- package/lib/module/web/tools/CircularBuffer.js +17 -27
- package/lib/module/web/tools/CircularBuffer.js.map +1 -1
- package/lib/module/web/tools/EventManager.js +7 -39
- package/lib/module/web/tools/EventManager.js.map +1 -1
- package/lib/module/web/tools/GestureHandlerDelegate.js.map +1 -1
- package/lib/module/web/tools/GestureHandlerOrchestrator.js +50 -111
- package/lib/module/web/tools/GestureHandlerOrchestrator.js.map +1 -1
- package/lib/module/web/tools/GestureHandlerWebDelegate.js +36 -47
- package/lib/module/web/tools/GestureHandlerWebDelegate.js.map +1 -1
- package/lib/module/web/tools/InteractionManager.js +21 -35
- package/lib/module/web/tools/InteractionManager.js.map +1 -1
- package/lib/module/web/tools/KeyboardEventManager.js +3 -19
- package/lib/module/web/tools/KeyboardEventManager.js.map +1 -1
- package/lib/module/web/tools/LeastSquareSolver.js +30 -65
- package/lib/module/web/tools/LeastSquareSolver.js.map +1 -1
- package/lib/module/web/tools/NodeManager.js +9 -14
- package/lib/module/web/tools/NodeManager.js.map +1 -1
- package/lib/module/web/tools/PointerEventManager.js +9 -35
- package/lib/module/web/tools/PointerEventManager.js.map +1 -1
- package/lib/module/web/tools/PointerTracker.js +23 -54
- package/lib/module/web/tools/PointerTracker.js.map +1 -1
- package/lib/module/web/tools/Vector.js +3 -14
- package/lib/module/web/tools/Vector.js.map +1 -1
- package/lib/module/web/tools/VelocityTracker.js +9 -26
- package/lib/module/web/tools/VelocityTracker.js.map +1 -1
- package/lib/module/web/tools/WheelEventManager.js +3 -10
- package/lib/module/web/tools/WheelEventManager.js.map +1 -1
- package/lib/module/web/utils.js +21 -40
- package/lib/module/web/utils.js.map +1 -1
- package/lib/module/web_hammer/DiscreteGestureHandler.js +4 -13
- package/lib/module/web_hammer/DiscreteGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/DraggingGestureHandler.js +0 -5
- package/lib/module/web_hammer/DraggingGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/Errors.js +0 -1
- package/lib/module/web_hammer/Errors.js.map +1 -1
- package/lib/module/web_hammer/FlingGestureHandler.js +10 -35
- package/lib/module/web_hammer/FlingGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/GestureHandler.js +53 -130
- package/lib/module/web_hammer/GestureHandler.js.map +1 -1
- package/lib/module/web_hammer/IndiscreteGestureHandler.js +1 -6
- package/lib/module/web_hammer/IndiscreteGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/LongPressGestureHandler.js +2 -11
- package/lib/module/web_hammer/LongPressGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/NativeViewGestureHandler.js +12 -12
- package/lib/module/web_hammer/NativeViewGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/NodeManager.js +6 -8
- package/lib/module/web_hammer/NodeManager.js.map +1 -1
- package/lib/module/web_hammer/PanGestureHandler.js +6 -40
- package/lib/module/web_hammer/PanGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/PinchGestureHandler.js +0 -5
- package/lib/module/web_hammer/PinchGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/PressGestureHandler.js +13 -34
- package/lib/module/web_hammer/PressGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/RotationGestureHandler.js +0 -6
- package/lib/module/web_hammer/RotationGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/TapGestureHandler.js +31 -45
- package/lib/module/web_hammer/TapGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/constants.js +2 -1
- package/lib/module/web_hammer/constants.js.map +1 -1
- package/lib/module/web_hammer/utils.js +2 -2
- package/lib/module/web_hammer/utils.js.map +1 -1
- package/lib/typescript/components/DrawerLayout.d.ts +27 -0
- package/lib/typescript/components/GestureButtonsProps.d.ts +18 -2
- package/lib/typescript/components/Pressable/PressableProps.d.ts +3 -10
- package/lib/typescript/components/Pressable/index.d.ts +1 -1
- package/lib/typescript/components/ReanimatedSwipeable.d.ts +6 -0
- package/lib/typescript/components/touchables/TouchableHighlight.d.ts +5 -0
- package/lib/typescript/components/touchables/TouchableNativeFeedback.android.d.ts +2 -0
- package/lib/typescript/components/touchables/TouchableNativeFeedback.d.ts +5 -1
- package/lib/typescript/components/touchables/TouchableNativeFeedbackProps.d.ts +3 -0
- package/lib/typescript/components/touchables/TouchableOpacity.d.ts +5 -0
- package/lib/typescript/components/touchables/TouchableWithoutFeedback.d.ts +6 -0
- package/lib/typescript/handlers/FlingGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/ForceTouchGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/LongPressGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/NativeViewGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/PanGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/PinchGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/RotationGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/TapGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/handlersRegistry.d.ts +1 -0
- package/lib/typescript/index.d.ts +1 -1
- package/lib/typescript/utils.d.ts +1 -1
- package/lib/typescript/web/detectors/RotationGestureDetector.d.ts +7 -7
- package/lib/typescript/web/detectors/ScaleGestureDetector.d.ts +8 -8
- package/lib/typescript/web/handlers/GestureHandler.d.ts +33 -28
- package/lib/typescript/web/handlers/IGestureHandler.d.ts +12 -13
- package/lib/typescript/web/tools/CircularBuffer.d.ts +3 -3
- package/lib/typescript/web/tools/GestureHandlerDelegate.d.ts +1 -1
- package/lib/typescript/web/tools/GestureHandlerOrchestrator.d.ts +2 -2
- package/lib/typescript/web/tools/GestureHandlerWebDelegate.d.ts +3 -2
- package/lib/typescript/web/tools/InteractionManager.d.ts +2 -2
- package/lib/typescript/web/tools/NodeManager.d.ts +1 -1
- package/lib/typescript/web/tools/PointerTracker.d.ts +4 -4
- package/lib/typescript/web/tools/VelocityTracker.d.ts +1 -1
- package/package.json +2 -2
- package/src/RNGestureHandlerModule.web.ts +2 -2
- package/src/components/DrawerLayout.tsx +29 -0
- package/src/components/GestureButtons.tsx +13 -2
- package/src/components/GestureButtonsProps.ts +31 -2
- package/src/components/Pressable/Pressable.tsx +22 -5
- package/src/components/Pressable/PressableProps.tsx +4 -11
- package/src/components/Pressable/index.ts +4 -1
- package/src/components/ReanimatedSwipeable.tsx +97 -66
- package/src/components/Text.tsx +13 -4
- package/src/components/touchables/TouchableHighlight.tsx +5 -0
- package/src/components/touchables/TouchableNativeFeedback.android.tsx +2 -0
- package/src/components/touchables/TouchableNativeFeedback.tsx +6 -1
- package/src/components/touchables/TouchableNativeFeedbackProps.tsx +3 -0
- package/src/components/touchables/TouchableOpacity.tsx +5 -0
- package/src/components/touchables/TouchableWithoutFeedback.tsx +6 -0
- package/src/findNodeHandle.web.ts +6 -0
- package/src/handlers/FlingGestureHandler.ts +10 -0
- package/src/handlers/ForceTouchGestureHandler.ts +9 -0
- package/src/handlers/LongPressGestureHandler.ts +10 -0
- package/src/handlers/NativeViewGestureHandler.ts +10 -0
- package/src/handlers/PanGestureHandler.ts +10 -0
- package/src/handlers/PinchGestureHandler.ts +10 -0
- package/src/handlers/RotationGestureHandler.ts +10 -0
- package/src/handlers/TapGestureHandler.ts +10 -0
- package/src/handlers/createHandler.tsx +11 -4
- package/src/handlers/gestures/GestureDetector/index.tsx +2 -2
- package/src/handlers/gestures/GestureDetector/useViewRefHandler.ts +3 -3
- package/src/handlers/gestures/GestureDetector/utils.ts +2 -2
- package/src/handlers/handlersRegistry.ts +7 -3
- package/src/index.ts +4 -1
- package/src/utils.ts +2 -2
- package/src/web/detectors/RotationGestureDetector.ts +22 -22
- package/src/web/detectors/ScaleGestureDetector.ts +24 -24
- package/src/web/handlers/FlingGestureHandler.ts +6 -7
- package/src/web/handlers/GestureHandler.ts +115 -105
- package/src/web/handlers/HoverGestureHandler.ts +2 -2
- package/src/web/handlers/IGestureHandler.ts +12 -13
- package/src/web/handlers/LongPressGestureHandler.ts +7 -7
- package/src/web/handlers/NativeViewGestureHandler.ts +14 -19
- package/src/web/handlers/PanGestureHandler.ts +17 -17
- package/src/web/handlers/PinchGestureHandler.ts +17 -21
- package/src/web/handlers/RotationGestureHandler.ts +12 -12
- package/src/web/handlers/TapGestureHandler.ts +4 -6
- package/src/web/tools/CircularBuffer.ts +15 -15
- package/src/web/tools/GestureHandlerDelegate.ts +1 -1
- package/src/web/tools/GestureHandlerOrchestrator.ts +42 -42
- package/src/web/tools/GestureHandlerWebDelegate.ts +32 -13
- package/src/web/tools/InteractionManager.ts +16 -16
- package/src/web/tools/NodeManager.ts +2 -2
- package/src/web/tools/PointerTracker.ts +20 -20
- package/src/web/tools/Vector.ts +1 -1
- package/src/web/tools/VelocityTracker.ts +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { State } from '../../State';
|
|
2
2
|
import type IGestureHandler from '../handlers/IGestureHandler';
|
|
3
3
|
export default class GestureHandlerOrchestrator {
|
|
4
|
-
private static
|
|
4
|
+
private static _instance;
|
|
5
5
|
private gestureHandlers;
|
|
6
6
|
private awaitingHandlers;
|
|
7
7
|
private awaitingHandlersTags;
|
|
@@ -27,5 +27,5 @@ export default class GestureHandlerOrchestrator {
|
|
|
27
27
|
private checkOverlap;
|
|
28
28
|
private isFinished;
|
|
29
29
|
cancelMouseAndPenGestures(currentHandler: IGestureHandler): void;
|
|
30
|
-
static
|
|
30
|
+
static get instance(): GestureHandlerOrchestrator;
|
|
31
31
|
}
|
|
@@ -3,11 +3,10 @@ import { GestureHandlerDelegate, MeasureResult } from './GestureHandlerDelegate'
|
|
|
3
3
|
import { Config } from '../interfaces';
|
|
4
4
|
export declare class GestureHandlerWebDelegate implements GestureHandlerDelegate<HTMLElement, IGestureHandler> {
|
|
5
5
|
private isInitialized;
|
|
6
|
-
private
|
|
6
|
+
private _view;
|
|
7
7
|
private gestureHandler;
|
|
8
8
|
private eventManagers;
|
|
9
9
|
private defaultViewStyles;
|
|
10
|
-
getView(): HTMLElement;
|
|
11
10
|
init(viewRef: number, handler: IGestureHandler): void;
|
|
12
11
|
isPointerInBounds({ x, y }: {
|
|
13
12
|
x: number;
|
|
@@ -31,4 +30,6 @@ export declare class GestureHandlerWebDelegate implements GestureHandlerDelegate
|
|
|
31
30
|
onCancel(): void;
|
|
32
31
|
onFail(): void;
|
|
33
32
|
destroy(config: Config): void;
|
|
33
|
+
get view(): HTMLElement;
|
|
34
|
+
set view(value: HTMLElement);
|
|
34
35
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type IGestureHandler from '../handlers/IGestureHandler';
|
|
2
2
|
import { Config } from '../interfaces';
|
|
3
3
|
export default class InteractionManager {
|
|
4
|
-
private static
|
|
4
|
+
private static _instance;
|
|
5
5
|
private readonly waitForRelations;
|
|
6
6
|
private readonly simultaneousRelations;
|
|
7
7
|
private readonly blocksHandlersRelations;
|
|
@@ -13,5 +13,5 @@ export default class InteractionManager {
|
|
|
13
13
|
shouldHandlerBeCancelledBy(_handler: IGestureHandler, otherHandler: IGestureHandler): boolean;
|
|
14
14
|
dropRelationsForHandlerWithTag(handlerTag: number): void;
|
|
15
15
|
reset(): void;
|
|
16
|
-
static
|
|
16
|
+
static get instance(): InteractionManager;
|
|
17
17
|
}
|
|
@@ -6,7 +6,7 @@ export default abstract class NodeManager {
|
|
|
6
6
|
static getHandler(tag: number): IGestureHandler;
|
|
7
7
|
static createGestureHandler(handlerTag: number, handler: InstanceType<ValueOf<typeof Gestures>>): void;
|
|
8
8
|
static dropGestureHandler(handlerTag: number): void;
|
|
9
|
-
static
|
|
9
|
+
static get nodes(): {
|
|
10
10
|
[x: number]: import("../handlers/PanGestureHandler").default | import("../handlers/TapGestureHandler").default | import("../handlers/LongPressGestureHandler").default | import("../handlers/PinchGestureHandler").default | import("../handlers/RotationGestureHandler").default | import("../handlers/FlingGestureHandler").default | import("../handlers/NativeViewGestureHandler").default | import("../handlers/ManualGestureHandler").default | import("../handlers/HoverGestureHandler").default;
|
|
11
11
|
};
|
|
12
12
|
}
|
|
@@ -8,7 +8,7 @@ export interface TrackerElement {
|
|
|
8
8
|
}
|
|
9
9
|
export default class PointerTracker {
|
|
10
10
|
private velocityTracker;
|
|
11
|
-
private
|
|
11
|
+
private readonly _trackedPointers;
|
|
12
12
|
private touchEventsIds;
|
|
13
13
|
private lastMovedPointerId;
|
|
14
14
|
private cachedAbsoluteAverages;
|
|
@@ -42,9 +42,9 @@ export default class PointerTracker {
|
|
|
42
42
|
x: number;
|
|
43
43
|
y: number;
|
|
44
44
|
};
|
|
45
|
-
getTrackedPointersCount(): number;
|
|
46
|
-
getTrackedPointersID(): number[];
|
|
47
|
-
getData(): Map<number, TrackerElement>;
|
|
48
45
|
resetTracker(): void;
|
|
49
46
|
static shareCommonPointers(stPointers: number[], ndPointers: number[]): boolean;
|
|
47
|
+
get trackedPointersCount(): number;
|
|
48
|
+
get trackedPointersIDs(): number[];
|
|
49
|
+
get trackedPointers(): Map<number, TrackerElement>;
|
|
50
50
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-gesture-handler",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.23.0",
|
|
4
4
|
"description": "Declarative API exposing native platform touch and gesture system to React Native",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"prepare": "bob build && husky install",
|
|
@@ -99,7 +99,7 @@
|
|
|
99
99
|
"react": "18.3.1",
|
|
100
100
|
"react-native": "0.77.0-rc.3",
|
|
101
101
|
"react-native-builder-bob": "^0.17.1",
|
|
102
|
-
"react-native-reanimated": "^3.
|
|
102
|
+
"react-native-reanimated": "^3.16.3",
|
|
103
103
|
"react-test-renderer": "18.2.0",
|
|
104
104
|
"release-it": "^13.6.5",
|
|
105
105
|
"typescript": "5.0.4"
|
|
@@ -40,7 +40,7 @@ export default {
|
|
|
40
40
|
handlerTag,
|
|
41
41
|
new GestureClass(new GestureHandlerWebDelegate())
|
|
42
42
|
);
|
|
43
|
-
InteractionManager.
|
|
43
|
+
InteractionManager.instance.configureInteractions(
|
|
44
44
|
NodeManager.getHandler(handlerTag),
|
|
45
45
|
config as unknown as Config
|
|
46
46
|
);
|
|
@@ -93,7 +93,7 @@ export default {
|
|
|
93
93
|
if (isNewWebImplementationEnabled()) {
|
|
94
94
|
NodeManager.getHandler(handlerTag).updateGestureConfig(newConfig);
|
|
95
95
|
|
|
96
|
-
InteractionManager.
|
|
96
|
+
InteractionManager.instance.configureInteractions(
|
|
97
97
|
NodeManager.getHandler(handlerTag),
|
|
98
98
|
newConfig
|
|
99
99
|
);
|
|
@@ -44,20 +44,39 @@ const IDLE: DrawerState = 'Idle';
|
|
|
44
44
|
const DRAGGING: DrawerState = 'Dragging';
|
|
45
45
|
const SETTLING: DrawerState = 'Settling';
|
|
46
46
|
|
|
47
|
+
/**
|
|
48
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
49
|
+
*/
|
|
47
50
|
export type DrawerPosition = 'left' | 'right';
|
|
48
51
|
|
|
52
|
+
/**
|
|
53
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
54
|
+
*/
|
|
49
55
|
export type DrawerState = 'Idle' | 'Dragging' | 'Settling';
|
|
50
56
|
|
|
57
|
+
/**
|
|
58
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
59
|
+
*/
|
|
51
60
|
export type DrawerType = 'front' | 'back' | 'slide';
|
|
52
61
|
|
|
62
|
+
/**
|
|
63
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
64
|
+
*/
|
|
53
65
|
export type DrawerLockMode = 'unlocked' | 'locked-closed' | 'locked-open';
|
|
54
66
|
|
|
67
|
+
/**
|
|
68
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
69
|
+
*/
|
|
55
70
|
export type DrawerKeyboardDismissMode = 'none' | 'on-drag';
|
|
56
71
|
|
|
57
72
|
// Animated.AnimatedInterpolation has been converted to a generic type
|
|
58
73
|
// in @types/react-native 0.70. This way we can maintain compatibility
|
|
59
74
|
// with all versions of @types/react-native`
|
|
60
75
|
type AnimatedInterpolation = ReturnType<Animated.Value['interpolate']>;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
79
|
+
*/
|
|
61
80
|
export interface DrawerLayoutProps {
|
|
62
81
|
/**
|
|
63
82
|
* This attribute is present in the standard implementation already and is one
|
|
@@ -186,6 +205,9 @@ export interface DrawerLayoutProps {
|
|
|
186
205
|
enableContextMenu?: boolean;
|
|
187
206
|
}
|
|
188
207
|
|
|
208
|
+
/**
|
|
209
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
210
|
+
*/
|
|
189
211
|
export type DrawerLayoutState = {
|
|
190
212
|
dragX: Animated.Value;
|
|
191
213
|
touchX: Animated.Value;
|
|
@@ -195,10 +217,17 @@ export type DrawerLayoutState = {
|
|
|
195
217
|
drawerOpened: boolean;
|
|
196
218
|
};
|
|
197
219
|
|
|
220
|
+
/**
|
|
221
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
222
|
+
*/
|
|
198
223
|
export type DrawerMovementOption = {
|
|
199
224
|
velocity?: number;
|
|
200
225
|
speed?: number;
|
|
201
226
|
};
|
|
227
|
+
|
|
228
|
+
/**
|
|
229
|
+
* @deprecated use Reanimated version of DrawerLayout instead
|
|
230
|
+
*/
|
|
202
231
|
export default class DrawerLayout extends Component<
|
|
203
232
|
DrawerLayoutProps,
|
|
204
233
|
DrawerLayoutState
|
|
@@ -18,12 +18,15 @@ import type {
|
|
|
18
18
|
BorderlessButtonWithRefProps,
|
|
19
19
|
BorderlessButtonProps,
|
|
20
20
|
} from './GestureButtonsProps';
|
|
21
|
+
import { isFabric } from '../utils';
|
|
21
22
|
|
|
22
23
|
export const RawButton = createNativeWrapper(GestureHandlerButton, {
|
|
23
24
|
shouldCancelWhenOutside: false,
|
|
24
25
|
shouldActivateOnStart: false,
|
|
25
26
|
});
|
|
26
27
|
|
|
28
|
+
let IS_FABRIC: null | boolean = null;
|
|
29
|
+
|
|
27
30
|
class InnerBaseButton extends React.Component<BaseButtonWithRefProps> {
|
|
28
31
|
static defaultProps = {
|
|
29
32
|
delayLongPress: 600,
|
|
@@ -120,12 +123,20 @@ class InnerBaseButton extends React.Component<BaseButtonWithRefProps> {
|
|
|
120
123
|
};
|
|
121
124
|
|
|
122
125
|
render() {
|
|
123
|
-
const { rippleColor, style, ...rest } = this.props;
|
|
126
|
+
const { rippleColor: unprocessedRippleColor, style, ...rest } = this.props;
|
|
127
|
+
|
|
128
|
+
if (IS_FABRIC === null) {
|
|
129
|
+
IS_FABRIC = isFabric();
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
const rippleColor = IS_FABRIC
|
|
133
|
+
? unprocessedRippleColor
|
|
134
|
+
: processColor(unprocessedRippleColor ?? undefined);
|
|
124
135
|
|
|
125
136
|
return (
|
|
126
137
|
<RawButton
|
|
127
138
|
ref={this.props.innerRef}
|
|
128
|
-
rippleColor={
|
|
139
|
+
rippleColor={rippleColor}
|
|
129
140
|
style={[style, Platform.OS === 'ios' && { cursor: undefined }]}
|
|
130
141
|
{...rest}
|
|
131
142
|
onGestureEvent={this.onGestureEvent}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
AccessibilityProps,
|
|
4
|
+
ColorValue,
|
|
5
|
+
StyleProp,
|
|
6
|
+
ViewStyle,
|
|
7
|
+
} from 'react-native';
|
|
3
8
|
import type { NativeViewGestureHandlerProps } from '../handlers/NativeViewGestureHandler';
|
|
4
9
|
|
|
5
10
|
export interface RawButtonProps
|
|
@@ -16,7 +21,7 @@ export interface RawButtonProps
|
|
|
16
21
|
*
|
|
17
22
|
* Defines color of native ripple animation used since API level 21.
|
|
18
23
|
*/
|
|
19
|
-
rippleColor?:
|
|
24
|
+
rippleColor?: number | ColorValue | null;
|
|
20
25
|
|
|
21
26
|
/**
|
|
22
27
|
* Android only.
|
|
@@ -50,6 +55,30 @@ export interface RawButtonProps
|
|
|
50
55
|
* Style object, use it to set additional styles.
|
|
51
56
|
*/
|
|
52
57
|
style?: StyleProp<ViewStyle>;
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Used for testing-library compatibility, not passed to the native component.
|
|
61
|
+
*/
|
|
62
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
63
|
+
testOnly_onPress?: Function | null;
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Used for testing-library compatibility, not passed to the native component.
|
|
67
|
+
*/
|
|
68
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
69
|
+
testOnly_onPressIn?: Function | null;
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Used for testing-library compatibility, not passed to the native component.
|
|
73
|
+
*/
|
|
74
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
75
|
+
testOnly_onPressOut?: Function | null;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Used for testing-library compatibility, not passed to the native component.
|
|
79
|
+
*/
|
|
80
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
81
|
+
testOnly_onLongPress?: Function | null;
|
|
53
82
|
}
|
|
54
83
|
interface ButtonWithRefProps {
|
|
55
84
|
innerRef?: React.ForwardedRef<React.ComponentType<any>>;
|
|
@@ -20,9 +20,12 @@ import {
|
|
|
20
20
|
} from './utils';
|
|
21
21
|
import { PressabilityDebugView } from '../../handlers/PressabilityDebugView';
|
|
22
22
|
import { GestureTouchEvent } from '../../handlers/gestureHandlerCommon';
|
|
23
|
-
import { INT32_MAX } from '../../utils';
|
|
23
|
+
import { INT32_MAX, isFabric, isTestEnv } from '../../utils';
|
|
24
24
|
|
|
25
25
|
const DEFAULT_LONG_PRESS_DURATION = 500;
|
|
26
|
+
const IS_TEST_ENV = isTestEnv();
|
|
27
|
+
|
|
28
|
+
let IS_FABRIC: null | boolean = null;
|
|
26
29
|
|
|
27
30
|
export default function Pressable(props: PressableProps) {
|
|
28
31
|
const {
|
|
@@ -366,8 +369,6 @@ export default function Pressable(props: PressableProps) {
|
|
|
366
369
|
|
|
367
370
|
const gesture = Gesture.Simultaneous(...gestures);
|
|
368
371
|
|
|
369
|
-
const defaultRippleColor = android_ripple ? undefined : 'transparent';
|
|
370
|
-
|
|
371
372
|
// `cursor: 'pointer'` on `RNButton` crashes iOS
|
|
372
373
|
const pointerStyle: StyleProp<ViewStyle> =
|
|
373
374
|
Platform.OS === 'web' ? { cursor: 'pointer' } : {};
|
|
@@ -380,6 +381,18 @@ export default function Pressable(props: PressableProps) {
|
|
|
380
381
|
? children({ pressed: pressedState })
|
|
381
382
|
: children;
|
|
382
383
|
|
|
384
|
+
const rippleColor = useMemo(() => {
|
|
385
|
+
if (IS_FABRIC === null) {
|
|
386
|
+
IS_FABRIC = isFabric();
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
const defaultRippleColor = android_ripple ? undefined : 'transparent';
|
|
390
|
+
const unprocessedRippleColor = android_ripple?.color ?? defaultRippleColor;
|
|
391
|
+
return IS_FABRIC
|
|
392
|
+
? unprocessedRippleColor
|
|
393
|
+
: processColor(unprocessedRippleColor);
|
|
394
|
+
}, [android_ripple]);
|
|
395
|
+
|
|
383
396
|
return (
|
|
384
397
|
<GestureDetector gesture={gesture}>
|
|
385
398
|
<NativeButton
|
|
@@ -388,9 +401,13 @@ export default function Pressable(props: PressableProps) {
|
|
|
388
401
|
hitSlop={appliedHitSlop}
|
|
389
402
|
enabled={isPressableEnabled}
|
|
390
403
|
touchSoundDisabled={android_disableSound ?? undefined}
|
|
391
|
-
rippleColor={
|
|
404
|
+
rippleColor={rippleColor}
|
|
392
405
|
rippleRadius={android_ripple?.radius ?? undefined}
|
|
393
|
-
style={[pointerStyle, styleProp]}
|
|
406
|
+
style={[pointerStyle, styleProp]}
|
|
407
|
+
testOnly_onPress={IS_TEST_ENV ? onPress : undefined}
|
|
408
|
+
testOnly_onPressIn={IS_TEST_ENV ? onPressIn : undefined}
|
|
409
|
+
testOnly_onPressOut={IS_TEST_ENV ? onPressOut : undefined}
|
|
410
|
+
testOnly_onLongPress={IS_TEST_ENV ? onLongPress : undefined}>
|
|
394
411
|
{childrenProp}
|
|
395
412
|
{__DEV__ ? (
|
|
396
413
|
<PressabilityDebugView color="red" hitSlop={normalizedHitSlop} />
|
|
@@ -1,22 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
|
-
ColorValue,
|
|
3
2
|
AccessibilityProps,
|
|
4
3
|
ViewProps,
|
|
5
4
|
Insets,
|
|
6
5
|
StyleProp,
|
|
7
6
|
ViewStyle,
|
|
7
|
+
PressableStateCallbackType as RNPressableStateCallbackType,
|
|
8
|
+
PressableAndroidRippleConfig as RNPressableAndroidRippleConfig,
|
|
8
9
|
} from 'react-native';
|
|
9
10
|
|
|
10
|
-
export
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export interface PressableAndroidRippleConfig {
|
|
15
|
-
color?: null | ColorValue | undefined;
|
|
16
|
-
borderless?: null | boolean | undefined;
|
|
17
|
-
radius?: null | number | undefined;
|
|
18
|
-
foreground?: null | boolean | undefined;
|
|
19
|
-
}
|
|
11
|
+
export type PressableStateCallbackType = RNPressableStateCallbackType;
|
|
12
|
+
export type PressableAndroidRippleConfig = RNPressableAndroidRippleConfig;
|
|
20
13
|
|
|
21
14
|
export type InnerPressableEvent = {
|
|
22
15
|
changedTouches: InnerPressableEvent[];
|
|
@@ -9,6 +9,7 @@ import React, {
|
|
|
9
9
|
useImperativeHandle,
|
|
10
10
|
useMemo,
|
|
11
11
|
} from 'react';
|
|
12
|
+
import { GestureRef } from '../handlers/gestures/gesture';
|
|
12
13
|
import { GestureObjects as Gesture } from '../handlers/gestures/gestureObjects';
|
|
13
14
|
import { GestureDetector } from '../handlers/gestures/GestureDetector';
|
|
14
15
|
import {
|
|
@@ -202,6 +203,14 @@ export interface SwipeableProps
|
|
|
202
203
|
* apply `flex: 1`
|
|
203
204
|
*/
|
|
204
205
|
childrenContainerStyle?: StyleProp<ViewStyle>;
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* A gesture object or an array of gesture objects containing the configuration and callbacks to be
|
|
209
|
+
* used with the swipeable's gesture handler.
|
|
210
|
+
*/
|
|
211
|
+
simultaneousWithExternalGesture?:
|
|
212
|
+
| Exclude<GestureRef, number>
|
|
213
|
+
| Exclude<GestureRef, number>[];
|
|
205
214
|
}
|
|
206
215
|
|
|
207
216
|
export interface SwipeableMethods {
|
|
@@ -247,6 +256,7 @@ const Swipeable = forwardRef<SwipeableMethods, SwipeableProps>(
|
|
|
247
256
|
onSwipeableClose,
|
|
248
257
|
renderLeftActions,
|
|
249
258
|
renderRightActions,
|
|
259
|
+
simultaneousWithExternalGesture,
|
|
250
260
|
...remainingProps
|
|
251
261
|
} = props;
|
|
252
262
|
|
|
@@ -456,7 +466,7 @@ const Swipeable = forwardRef<SwipeableMethods, SwipeableProps>(
|
|
|
456
466
|
rightLayoutRef,
|
|
457
467
|
leftWidth,
|
|
458
468
|
rightWidth,
|
|
459
|
-
rowWidth
|
|
469
|
+
rowWidth,
|
|
460
470
|
]);
|
|
461
471
|
|
|
462
472
|
const swipeableMethods = useMemo<SwipeableMethods>(
|
|
@@ -635,73 +645,94 @@ const Swipeable = forwardRef<SwipeableMethods, SwipeableProps>(
|
|
|
635
645
|
|
|
636
646
|
const dragStarted = useSharedValue<boolean>(false);
|
|
637
647
|
|
|
638
|
-
const tapGesture = useMemo(
|
|
639
|
-
()
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
.
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
()
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
648
|
+
const tapGesture = useMemo(() => {
|
|
649
|
+
const tap = Gesture.Tap()
|
|
650
|
+
.shouldCancelWhenOutside(true)
|
|
651
|
+
.onStart(() => {
|
|
652
|
+
if (rowState.value !== 0) {
|
|
653
|
+
close();
|
|
654
|
+
}
|
|
655
|
+
});
|
|
656
|
+
|
|
657
|
+
if (!simultaneousWithExternalGesture) {
|
|
658
|
+
return tap;
|
|
659
|
+
}
|
|
660
|
+
|
|
661
|
+
if (Array.isArray(simultaneousWithExternalGesture)) {
|
|
662
|
+
tap.simultaneousWithExternalGesture(...simultaneousWithExternalGesture);
|
|
663
|
+
} else {
|
|
664
|
+
tap.simultaneousWithExternalGesture(simultaneousWithExternalGesture);
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
return tap;
|
|
668
|
+
}, [close, rowState, simultaneousWithExternalGesture]);
|
|
669
|
+
|
|
670
|
+
const panGesture = useMemo(() => {
|
|
671
|
+
const pan = Gesture.Pan()
|
|
672
|
+
.enabled(enabled !== false)
|
|
673
|
+
.enableTrackpadTwoFingerGesture(enableTrackpadTwoFingerGesture)
|
|
674
|
+
.activeOffsetX([-dragOffsetFromRightEdge, dragOffsetFromLeftEdge])
|
|
675
|
+
.onStart(updateElementWidths)
|
|
676
|
+
.onUpdate(
|
|
677
|
+
(event: GestureUpdateEvent<PanGestureHandlerEventPayload>) => {
|
|
678
|
+
userDrag.value = event.translationX;
|
|
679
|
+
|
|
680
|
+
const direction =
|
|
681
|
+
rowState.value === -1
|
|
682
|
+
? SwipeDirection.RIGHT
|
|
683
|
+
: rowState.value === 1
|
|
684
|
+
? SwipeDirection.LEFT
|
|
685
|
+
: event.translationX > 0
|
|
686
|
+
? SwipeDirection.RIGHT
|
|
687
|
+
: SwipeDirection.LEFT;
|
|
688
|
+
|
|
689
|
+
if (!dragStarted.value) {
|
|
690
|
+
dragStarted.value = true;
|
|
691
|
+
if (rowState.value === 0 && onSwipeableOpenStartDrag) {
|
|
692
|
+
runOnJS(onSwipeableOpenStartDrag)(direction);
|
|
693
|
+
} else if (onSwipeableCloseStartDrag) {
|
|
694
|
+
runOnJS(onSwipeableCloseStartDrag)(direction);
|
|
677
695
|
}
|
|
678
|
-
|
|
679
|
-
updateAnimatedEvent();
|
|
680
|
-
}
|
|
681
|
-
)
|
|
682
|
-
.onEnd(
|
|
683
|
-
(event: GestureStateChangeEvent<PanGestureHandlerEventPayload>) => {
|
|
684
|
-
handleRelease(event);
|
|
685
696
|
}
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
697
|
+
|
|
698
|
+
updateAnimatedEvent();
|
|
699
|
+
}
|
|
700
|
+
)
|
|
701
|
+
.onEnd(
|
|
702
|
+
(event: GestureStateChangeEvent<PanGestureHandlerEventPayload>) => {
|
|
703
|
+
handleRelease(event);
|
|
704
|
+
}
|
|
705
|
+
)
|
|
706
|
+
.onFinalize(() => {
|
|
707
|
+
dragStarted.value = false;
|
|
708
|
+
});
|
|
709
|
+
|
|
710
|
+
if (!simultaneousWithExternalGesture) {
|
|
711
|
+
return pan;
|
|
712
|
+
}
|
|
713
|
+
|
|
714
|
+
if (Array.isArray(simultaneousWithExternalGesture)) {
|
|
715
|
+
pan.simultaneousWithExternalGesture(...simultaneousWithExternalGesture);
|
|
716
|
+
} else {
|
|
717
|
+
pan.simultaneousWithExternalGesture(simultaneousWithExternalGesture);
|
|
718
|
+
}
|
|
719
|
+
|
|
720
|
+
return pan;
|
|
721
|
+
}, [
|
|
722
|
+
dragOffsetFromLeftEdge,
|
|
723
|
+
dragOffsetFromRightEdge,
|
|
724
|
+
dragStarted,
|
|
725
|
+
enableTrackpadTwoFingerGesture,
|
|
726
|
+
enabled,
|
|
727
|
+
handleRelease,
|
|
728
|
+
onSwipeableCloseStartDrag,
|
|
729
|
+
onSwipeableOpenStartDrag,
|
|
730
|
+
rowState,
|
|
731
|
+
updateAnimatedEvent,
|
|
732
|
+
updateElementWidths,
|
|
733
|
+
userDrag,
|
|
734
|
+
simultaneousWithExternalGesture,
|
|
735
|
+
]);
|
|
705
736
|
|
|
706
737
|
useImperativeHandle(ref, () => swipeableMethods, [swipeableMethods]);
|
|
707
738
|
|
package/src/components/Text.tsx
CHANGED
|
@@ -11,11 +11,13 @@ import {
|
|
|
11
11
|
TextProps as RNTextProps,
|
|
12
12
|
} from 'react-native';
|
|
13
13
|
|
|
14
|
-
import { Gesture
|
|
14
|
+
import { GestureObjects as Gesture } from '../handlers/gestures/gestureObjects';
|
|
15
|
+
import { GestureDetector } from '../handlers/gestures/GestureDetector';
|
|
15
16
|
|
|
16
17
|
export const Text = forwardRef(
|
|
17
18
|
(props: RNTextProps, ref: ForwardedRef<RNText>) => {
|
|
18
|
-
const { onPress, ...rest } = props;
|
|
19
|
+
const { onPress, onLongPress, ...rest } = props;
|
|
20
|
+
|
|
19
21
|
const textRef = useRef<RNText | null>(null);
|
|
20
22
|
const native = Gesture.Native().runOnJS(true);
|
|
21
23
|
|
|
@@ -49,10 +51,17 @@ export const Text = forwardRef(
|
|
|
49
51
|
);
|
|
50
52
|
}, []);
|
|
51
53
|
|
|
52
|
-
return (
|
|
54
|
+
return onPress || onLongPress ? (
|
|
53
55
|
<GestureDetector gesture={native}>
|
|
54
|
-
<RNText
|
|
56
|
+
<RNText
|
|
57
|
+
onPress={onPress}
|
|
58
|
+
onLongPress={onLongPress}
|
|
59
|
+
ref={refHandler}
|
|
60
|
+
{...rest}
|
|
61
|
+
/>
|
|
55
62
|
</GestureDetector>
|
|
63
|
+
) : (
|
|
64
|
+
<RNText ref={ref} {...rest} />
|
|
56
65
|
);
|
|
57
66
|
}
|
|
58
67
|
);
|
|
@@ -19,10 +19,15 @@ interface State {
|
|
|
19
19
|
};
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated TouchableHighlight will be removed in the future version of Gesture Handler.
|
|
24
|
+
*/
|
|
22
25
|
export type TouchableHighlightProps = RNTouchableHighlightProps &
|
|
23
26
|
GenericTouchableProps;
|
|
24
27
|
|
|
25
28
|
/**
|
|
29
|
+
* @deprecated TouchableHighlight will be removed in the future version of Gesture Handler.
|
|
30
|
+
*
|
|
26
31
|
* TouchableHighlight follows RN's implementation
|
|
27
32
|
*/
|
|
28
33
|
export default class TouchableHighlight extends Component<
|
|
@@ -8,6 +8,8 @@ import {
|
|
|
8
8
|
} from './TouchableNativeFeedbackProps';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
+
* @deprecated TouchableNativeFeedback will be removed in the future version of Gesture Handler.
|
|
12
|
+
*
|
|
11
13
|
* TouchableNativeFeedback behaves slightly different than RN's TouchableNativeFeedback.
|
|
12
14
|
* There's small difference with handling long press ripple since RN's implementation calls
|
|
13
15
|
* ripple animation via bridge. This solution leaves all animations' handling for native components so
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
-
import { TouchableNativeFeedback } from 'react-native';
|
|
1
|
+
import { TouchableNativeFeedback as RNTouchableNativeFeedback } from 'react-native';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated TouchableNativeFeedback will be removed in the future version of Gesture Handler.
|
|
5
|
+
*/
|
|
6
|
+
const TouchableNativeFeedback = RNTouchableNativeFeedback;
|
|
2
7
|
|
|
3
8
|
export default TouchableNativeFeedback;
|